Introdução

Nessa etapa do desenvolvimento do projeto foram desenvolvidos os drivers dos componentes que serão conectados a unidade de processamento auxiliar do robô. Foi feita uma busca na internet dos drivers já existentes e feitas as devidas alterações para o correto funcionamento dos mesmos no projeto.
Os pinos de comunicação da Jetson Nano, que é a unidade principal de processamento do robô Hunter aonde estará operando o ROS, funcionam para níveis de tensão de até 3,3 V. Para o correto funcionamento do sensor ultrassônico HCSR-04 e o driver ponte H dupla L9110s, que alimenta os motores, é necessário que os pinos de comunicação funcionem para um nível de tensão de até 5 V. Como solução, foi decidido utilizar uma placa Arduino Pro Mini, mostrada na figura abaixo, como unidade de processamento auxiliar, pois ela possui pinos de comunicação que operam para uma tensão de até 5 V, aonde estarão conectados o sonar e a ponte H.

img1

Integração do ROS com Arduino

Para estabelecer a comunicação entre as duas unidades de processamento, é necessário utilizar um pacote chamado rosserial, que permite que o Arduino se comunique com o ROS operando na placa Jetson Nano através da comunicação serial. A conexão entre as duas placas se da através de um  conversor FTDI, mostrado na figura abaixo. A partir disso é possível que o Arduino publique e se subscreva em tópicos. Os tópicos de comando de velocidade que o Arduino se subscreve e o tópico de distância medida pelo sensor ultrassônico  que o Arduino publica se encontram no mesmo nó, por isso é necessário que a programação do sensor ultrassônico seja feita de tal forma que não ocorra interrupção, como acontece com a função delay, encontrada na maioria das bibliotecas disponíveis.

img2

Resultados

Para testar o funcionamento do driver do motor junto ao sensor ultrassônico, foi conectado um joystick ao Jetson Nano e através da publicação dos comandos de velocidade vindos do controle no tópico foi possível observar o robô se deslocando de acordo com os movimentos esperados e publicando as medidas de distância calculadas. Com este teste descrito foi verificado o correto funcionamento tanto do driver do motor como do driver do sonar.

img3




Autor


mateusseixas
Mateus Seixas
Pesquisador Jr. do projeto
Engenheiro Eletricista