Use o dispositivo de caractere sobre o ssh

4

Eu tenho procurado uma boa resposta para essa pergunta há algum tempo.

Estou tentando controlar remotamente um robô com um controle do Xbox. O desafio é que o controlador seja conectado a uma estação de controle e não ao computador de bordo do robô. O computador de bordo está executando o Ubuntu e o ROS (Sistema Operacional Robótico) e requer acesso ao dispositivo de caractere como se ele estivesse conectado diretamente.

Estou procurando um caminho para o ssh no computador de bordo e encaminhar os eventos do dispositivo de caractere da estação de controle. Atualizações em tempo real são necessárias. Qual é a melhor abordagem? É mesmo possível?

    
por Slippers 10.02.2018 / 15:47

2 respostas

4

Dê uma olhada no CUSE (dispositivo de caractere no espaço do usuário).

Encaminhe os eventos do dispositivo para / de uma porta UDP, faça com que o ssh encaminhe o fluxo UDP.

Isso é apenas "tempo real" para valores um tanto pequenos de "tempo real", porque você tem uma quantidade considerável de atraso inerente às suas necessidades.

    
por 10.02.2018 / 17:18
1

Se você estiver usando um SystemOnAChip (como RPi, BananaPi, OrangePi, ODroid ... ) e executando algum sistema operacional ( Ubuntu neste caso ), mesmo se é um sabor RT (RealTime) de qualquer distribuição, "atualizações em tempo real são necessárias" não é possível. Basta lembrar que o sistema operacional está longe de ser o RealTime, eles têm toneladas de serviços em execução em segundo plano. Isso não significa que o que você está tentando fazer é impossível, mas não estará em RT realmente.

Mas é possível o que você quer fazer, basta comprar (se o computador de bordo não for fornecido) um dongle USB WiFi, conecte-se ao computador de bordo, conecte-o na mesma rede em que você a estação de controle , instale openssh-server no computador de bordo e, assim que ambas as placas estiverem na mesma rede, tente conectar através de SSH .

E se você me permitir, eu poderia recomendar outra plataforma que acabei de usar: ESP32 , é um microcontrolador com Wi-Fi e o Blutooth incorporado, e se você comprá-lo do AliExpress custa apenas cerca de 3 $, você pode programá-lo com o IDE do Arduino.

Btw, seu projeto é interessante !!!

    
por 10.02.2018 / 17:00