O Nestua H743 é expedido com o ArduPilot (ArduCopter) instalado e funciona com Mission Planner, QGroundControl e MAVProxy. A configuração é uma configuração ArduPilot normal. Esta página trata das particularidades desta placa: o que está em cada pad, que número SERIALn tem cada UART e os poucos parâmetros em que é fácil errar.
- A bateria liga ao ESC. O FC recebe a tensão da bateria pelo cabo de 8 pinos do ESC e gera os seus próprios 5 V e 3,3 V.
- O USB alimenta apenas o domínio de 3,3 V. GPS, recetor e VTX nos pads de 5 V precisam de uma bateria ligada.
- O registo é feito na NAND integrada: mantenha
LOG_BACKEND_TYPE = 4. - Sem bússola na placa. Use um GPS/bússola externo por I2C ou DroneCAN.
- Impossível de inutilizar: mantenha BOOT premido ao ligar o USB para aceder ao bootloader em ROM.
Antes de começar
Precisa de um ESC 4-em-1 com o conector padrão JST-SH 1,0 mm de 8 pinos, um cabo USB-C, uma estação de terra (Mission Planner em Windows, ou QGroundControl em Windows, macOS e Linux) e, para os modos GPS, um módulo GPS/bússola externo. Mantenha as hélices retiradas em todos os passos desta página até ao teste de motores.
Monte a placa com a seta serigrafada a apontar para a frente. Com essa orientação, AHRS_ORIENTATION mantém o valor predefinido 0. A furação é de 30,5 × 30,5 mm com furos de Ø4 mm, por isso use grommets antivibração M3.
Ligar o ESC 4-em-1
O cabo do ESC transporta a tensão da bateria, quatro sinais de motor, a telemetria do ESC e o sinal de medição de corrente. Não existe pino de 5 V, porque o FC não precisa dos 5 V do ESC.
| Pino | Sinal | No FC | ArduPilot |
|---|---|---|---|
| 1 | GND | Massa | — |
| 2 | VBAT | Entrada do BEC de 5 V integrado e medição de tensão | Tensão da bateria |
| 3 | M1 | Saída 1 (DShot) | SERVO1 |
| 4 | M2 | Saída 2 | SERVO2 |
| 5 | M3 | Saída 3 | SERVO3 |
| 6 | M4 | Saída 4 | SERVO4 |
| 7 | TLM | UART7 RX (só receção) | SERIAL5 |
| 8 | CUR | Entrada analógica de corrente | Corrente da bateria |
Verifique a ordem dos pinos antes de ligar. Esta ordem é comum nos ESC 4-em-1, mas algumas marcas diferem. Se o pino VBAT do seu ESC calhar num pino de sinal, a placa fica danificada. Compare a serigrafia ou o manual do ESC com a tabela acima e reorganize os pinos do cabo, se necessário.
A gama de entrada é 2–6S (7–25,2 V). A entrada tem proteção contra inversão de polaridade e um díodo TVS de 600 W, e o BEC de 5 V tem uma corrente nominal de 2 A. Os fios de fase dos motores e o cabo da bateria são soldados ao ESC. Ao FC chegam apenas sinais de baixa corrente.
Primeira ligação
- Só USB. Ligue o USB-C. O LED verde (3,3 V) acende e o LED âmbar (5 V) fica apagado. Está correto: o USB alimenta apenas o processador, os sensores e a flash de registos. A placa é reconhecida como
NestuaH743. - Ligue a estação de terra. O Mission Planner ou o QGroundControl detetam o heartbeat MAVLink na porta USB.
- Bateria. Sem hélices, ligue a bateria ao ESC. O LED âmbar de 5 V acende e o GPS, o recetor e o VTX nos pads de 5 V ligam-se. O USB e a bateria podem estar ligados em simultâneo.
Os outros dois LED são os LED de estado do ArduPilot (azul e vermelho). Para um alarme de localização do modelo perdido, solde um buzzer ativo de 5 V aos pads BZ+ e BZ−. O transístor de comando e o díodo de roda livre já estão na placa.
Pads UART e números SERIAL
Cada porta de periféricos é um grupo de pads de soldadura identificados, com os seus próprios pads 5V e G ao lado. O ArduPilot numera as portas pela sua própria ordem, por isso use a coluna da direita ao definir os parâmetros.
| Pads (serigrafia) | UART | Utilização prevista | Porta ArduPilot | Definir |
|---|---|---|---|---|
| USB-C | USB | Estação de terra | SERIAL0 | — |
T1 R1 + SDA SCL | UART1 + I2C2 | GPS + bússola externa | SERIAL1 | SERIAL1_PROTOCOL = 5 |
T2 R2 | UART2 | VTX digital / OSD | SERIAL2 | SERIAL2_PROTOCOL = 42 |
T3 R3 | UART3 | Rádio de telemetria | SERIAL3 | SERIAL3_PROTOCOL = 2 |
T4 R4 | UART4 | Livre (p. ex. computador de bordo) | SERIAL4 | conforme necessário |
| Pino 7 do ESC | UART7 RX | Telemetria do ESC | SERIAL5 | SERIAL5_PROTOCOL = 16 |
T8 R8 | UART8 | Livre | SERIAL6 | conforme necessário |
T6 R6 | UART6 | Recetor RC (CRSF/ELRS) | SERIAL7 | SERIAL7_PROTOCOL = 23 |
Lembre-se de cruzar as linhas de dados: o TX do dispositivo liga ao pad R do FC e o RX do dispositivo ao pad T do FC. Reinicie a placa depois de alterar qualquer SERIALn_PROTOCOL.
Recetor RC
Para recetores CRSF ou ELRS, ligue o recetor a T6 R6 e defina SERIAL7_PROTOCOL = 23 (RCIN). O ArduPilot deteta o protocolo automaticamente. Como o recetor é alimentado a 5 V, ligue uma bateria ao emparelhar e verifique os canais na página de calibração do rádio.
GPS e bússola
Ligue um módulo GPS/bússola ao grupo de pads GPS: os dados do GPS a T1 R1 e a bússola do módulo aos pads SDA/SCL ao lado (barramento I2C externo, com resistências pull-up de 4,7 k na placa). Defina SERIAL1_PROTOCOL = 5. O ArduPilot deteta automaticamente a velocidade do GPS e a bússola externa.
A placa não tem bússola propositadamente. Uma bússola montada num controlador de voo fica a centímetros da corrente da bateria e dos motores e interpreta-a como campo magnético. Monte o GPS/bússola num mastro ou tão longe da cablagem de potência quanto a estrutura permitir e, em seguida, faça a calibração da bússola.
Periféricos DroneCAN
A porta CAN está nos pads CH/CL, com 5V e G ao lado. Tem um transceptor NXP TJA1057, proteção ESD e uma terminação fixa de 120 Ω, porque o controlador de voo é sempre uma das extremidades do barramento. Termine também a extremidade oposta do barramento e deixe os nós intermédios sem terminação.
CAN_P1_DRIVER = 1 # enable CAN port 1
CAN_D1_PROTOCOL = 1 # DroneCAN
GPS1_TYPE = 9 # DroneCAN GPS (GPS_TYPE on older firmware)
As bússolas, os sensores de velocidade do ar e os telémetros DroneCAN são detetados assim que o driver é ativado. Aparecem no Mission Planner em Setup → Optional Hardware → DroneCAN/UAVCAN.
OSD digital (DJI, HDZero, Walksnail)
O H743 não tem chip de OSD analógico. Controla o OSD dos sistemas de vídeo digital via MSP DisplayPort. Ligue a UART da unidade aérea a T2 R2 e defina:
SERIAL2_PROTOCOL = 42 # DisplayPort
OSD_TYPE = 5 # MSP DisplayPort
Algumas unidades aéreas também precisam de ter MSP ou DisplayPort ativado do seu lado. Consulte a documentação do seu sistema de vídeo.
Estrutura, motores e telemetria do ESC
FRAME_CLASS = 1 # quad
FRAME_TYPE = 1 # X
MOT_PWM_TYPE = 6 # DShot600 (5 = DShot300)
SERIAL5_PROTOCOL = 16 # ESC telemetry on the ESC connector
SERVO_BLH_AUTO = 1 # request telemetry from the DShot motor outputs
O DShot não precisa de calibração do ESC. A ordem quad X do ArduCopter é motor 1 à frente à direita, 2 atrás à esquerda, 3 à frente à esquerda, 4 atrás à direita. As posições M1–M4 de um ESC 4-em-1 dependem da forma como é montado, por isso execute o Motor Test no Mission Planner (sem hélices) e reatribua SERVO1_FUNCTION–SERVO4_FUNCTION (33–36 = motores 1–4) até cada motor rodar no sítio certo. Corrija o sentido de rotação no configurador do ESC ou trocando dois fios do motor.
As saídas 5–8 estão nos pads M5–M8, para um octocóptero, servos ou um segundo ESC. As saídas 1–4 e 5–8 são grupos de temporizadores separados, pelo que cada grupo de quatro pode usar um protocolo ou frequência diferente.
Tensão e corrente da bateria
A monitorização de tensão vem configurada de origem: BATT_MONITOR = 4 (tensão e corrente analógicas) com um divisor de tensão dimensionado para 6S (BATT_VOLT_MULT cerca de 11,0). Compare a leitura com um multímetro e ajuste o multiplicador, se necessário.
A corrente vem do sensor de corrente do seu ESC no pino 8. A escala depende do ESC, por isso defina BATT_AMP_PERVLT (e BATT_AMP_OFFSET, se necessário) a partir da documentação do ESC e, depois, calibre-a comparando os mAh consumidos num voo com o que o carregador volta a carregar.
Calibração e primeiro voo
- Acelerómetro: calibração em seis posições e, depois, nivelamento.
- Bússola: calibração a bordo com o módulo externo montado na posição final.
- Rádio: calibração dos canais e interruptor de modos de voo.
- Failsafes: failsafe do rádio, failsafe da bateria e (com GPS) geofence.
- Teste de motores sem hélices e, depois, um primeiro voo estacionário em Stabilize ou AltHold numa área aberta.
Para a afinação, os guias do próprio ArduPilot e o ArduPilot Methodic Configurator funcionam sem alterações nesta placa.
Caixa negra: registo e transferência de registos
Os registos de voo são guardados em 256 MB de SPI NAND soldados na placa. Não há cartão SD que se solte com as vibrações. O registo funciona de origem. A única definição a conhecer:
LOG_BACKEND_TYPE = 4 # block logger on the onboard NAND (default)
LOG_DISARMED = 0 # set to 1 only for bench debugging
LOG_BACKEND_TYPE é uma máscara de bits: 1 = sistema de ficheiros, 2 = MAVLink, 4 = blocos. Esta placa não tem sistema de ficheiros, pelo que defini-lo como 1 desativa o registo sem qualquer mensagem de erro. Se os registos desaparecerem, verifique primeiro este parâmetro.
Para transferir os registos, ligue o USB e use DataFlash Logs → Download DataFlash Log Via Mavlink no Mission Planner, ou o ecrã de transferência de registos no QGroundControl. Na nossa bancada, um registo de 1,17 MB foi transferido por USB a cerca de 730 KB/s sem nenhum byte em falta. Os registos abrem no Mission Planner, no UAV Log Viewer ou em qualquer ferramenta de registos ArduPilot.
Atualizações de firmware e recuperação
As placas são expedidas com o firmware gravado e testadas. Fornecemos as atualizações de firmware como ficheiro .apj, que se carrega via USB-C com Load custom firmware no Mission Planner ou com a opção de firmware personalizado no QGroundControl. Os seus parâmetros são mantidos.
Se uma atualização for interrompida, a placa não fica inutilizada. O STM32H743 tem um bootloader em ROM:
- Mantenha o botão BOOT premido e ligue o USB-C.
- A placa aparece como
DFU in FS Mode(USB ID 0483:DF11). - Grave a imagem completa (bootloader + firmware) com o STM32CubeProgrammer ou com
dfu-util -a 0 -s 0x08000000:leave -D firmware_with_bl.bin.
O dfu-util pode mostrar um erro depois de "File downloaded successfully". É uma particularidade inofensiva: a placa já reiniciou com o novo firmware.
As identificações dos pads, os valores predefinidos e os detalhes de firmware desta página descrevem a revisão atual da placa e podem mudar antes do lote de produção. Dúvidas? hello@nestua.net.