Eletrônica

A parte eletrônica do veleiro Nboat é composta por:

  • Placa central para o driver dos atuadores;
  • Driver dos atuadores dual-vnh5019-motor-shield (acoplado ao arduino uno);
  • Um arduino Mega;
  • Um arduino Uno;
  • Potenciômetro da vela;
  • Potenciômetro do leme;
  • Sensores do vento;
  • Pixhawk 2.4.6
    • GPS
    • IMU
    • Telemetria 433 MHz
  • Raspberry Pi;
  • Modem wifi;
  • Ubiquiti UNIFI AC MESH;
  • Buzina;
  • Transmissor e receptor Rádio R7;

Uma breve explicação sobre cada componente é dada a seguir.

Placa central

A placa central conecta e alimenta todos os componentes dos drivers: os potenciômetros, os arduinos e o dual-vnh5019-motor-shield, além de interfacear com a pixhawk. Ela fica localizada dentro da caixa preta no compartimento 3 e a ideia é que os sinais de dados que vêm dos outros compartimentos são conectados a essa placa usando cabos de rede rj45.

Shield atuadores

O dual-vnh5019-motor-shield manda sinais de PWM para os atuadores. Possui limite de corrente de 12A com picos de 30A por canal, sendo dois canais de saída, um para o guincho da vela e outro para o atuador linear do leme.

Arduinos

O arduino mega recebe sinal de PWM (faixa de 1000 a 2000), traduz esse sinal para valores de ângulos de atuador ([-90, 90] graus) e envia por I2C para o arduino uno.

O arduino uno está conectado ao shield dual-vnh5019-motor-shield e nele está o controle PID de posição dos atuadores. Este controle lê o valor do potenciômetro da porta analógica [0, 1023] (10 bits), traduz para valor de ângulo de atuador e compara com o ângulo enviado pelo arduino mega, gerando um erro. Neste erro são aplicados os ganhos P e I e então este valor é passado como velocidade para o atuador ([-400, 400]) usando a função md.setM1Speed(velocidade) como exemplo de velocidade para o canal M1.

Potenciômetros

Os potenciômetros da vela e do leme servem para dar ao controlador de posição dos atuadores um retorno sobre a posição atual do atuador. O pot do leme é montado na parte superior do leme, que fica dentro do compartimento 4 e gira junto com o leme, mapeando sua posição. O pot da vela está no compartimento 2. A impressora 3d foi usada para fazer uma peça que encaixa no eixo do guincho e, a medida que ele gira, também gira o potenciômetro que está acoplado na base.

Sensores de vento

Os sensores de vento ficam na proa do nboat. No momento temos um que mede a velocidade (speed) e o outro mede a direção. Essas informações do vento são usadas pela Pixhawk para calcular a posição da vela para que o veleiro ganhe velocidade.

Pixhawk

A pixhawk é o processador central de baixo nível. Nela ficam os controles de movimento do nboat e o planejamento da missão, além da coleta dos dados dos sensores. O kit Pixhawk vem com um IMU e um GPS, e a pixhawk faz toda a parte de filtragem dos dados, estimação do estado e navegação (no sentido Fossen). A pixhawk roda Ardupilot Ardurover com configuração específica para veleiro. O firmware e os parâmetros podem ser encontrados neste branch.

Raspberry Pi

A Raspberry Pi fica com o processamento de alto nível, que é o processamento de imagem ou outra operação mais exija mais processamento e memória. Ela também serve de interface wifi com o mundo externo, já que se conecta a Pixhawk e consegue ler seus valores usando o MAVROS.

WiFi

O Ubiquiti UNIFI AC MESH serve para extender o sinal wifi gerado pelo nboat e permitir comunicação de alta velocidade com a estação base.

O modem wifi cria e gerencia a rede interna, que conecta o Ubiquiti UNIFI AC MESH e a raspberry.