Esperimenti con logiche programmabili
Tutorial Arduino

Arduino e multiwii, costruire la scheda di controllo quadricottero

Arduino e Multiwii, come costruire una scheda di controllo volo

Tutti i componenti che abbiamo assemblato nello scorso articolo devono essere controllati da una centralina elettronica che elabori i segnali provenienti dal radiocomando e quelli provenienti dai sensori inerziali.
In commercio esistono soluzioni già pronte semplici da installare e con impostazioni e calibrazioni pronte al volo. Nel nostro caso utilizzeremo invece una scheda Arduino Mini e un sistema inerziale a nove assi.

La parte software che girerà su Arduino Mini è un progetto open source molto popolare che ha riscosso nel tempo diversi successi, MultiWii. Essendo un progetto open abbiamo la possibilità di vedere gli algoritmi che gestiscono il quadricottero, opportunità sicuramente interessante e formativa.

Tutte le informazioni riguardo il montaggio e il caricamento del software sono disponibili sul sito ufficiale MultiWii.com e su MultiWii.it. In questo tutorial illustrerò questi passaggi in modo semplice affinché gli utenti con poca esperienza possano riuscire nella realizzazione di questo progetto.
Possiamo usare diverse schede Arduino, ma quella che consiglio è la Mini, questo perchè ha dimensioni e peso contenuti, l’unico inconveniente, se cosi si può definire è che dobbiamo utilizzare il convertitore usb2serial light per effettuarne la programmazione.


Lo schema elettrico della scheda di controllo del quadricottero è riportato di seguito:

Il ricevitore del radiocomando possiede diversi canali, a seconda del modello, con segnale PWM in uscita. Il posizionamento dei canali dipende dal modello che stiamo usando, nel datasheet del telecomando in vostro possesso otterrete tutte le indicazioni necessarie.
I canali che sono indispensabili (e tipici) sono:

I segnali provenienti dal ricevitore devono essere collegati ai relativi pin di Arduino Mini, quindi:

Questi segnali vengono elaborati in base ai dati che giungono del sistema inerziale (IMU GY80). La scheda GY80 comunica i dati utilizzando il protocollo I2C. Il collegamento fisico avviene collegando:

da notare la presenza delle resistenze di pull-up R che, in taluni casi non sono necessarie, consiglio di inserirle per evitare errori di comunicazione tra Arduino Mini e GY80.

Il risultato degli algoritmi del software MultiWii viene restituito sotto forma di segnale PWM che viene inviato ai regolatori (ESC) collegati ai pin 3, 9, 10 e 11 di Arduino Mini.
I segnali PWM andranno a variare in modo intelligente le velocità dei motori in funzione dei comandi che arrivano dal telecomando e ai dati restituiti dalla piattaforma inerziale GY80.

Nei precedenti tutorial abbiamo appreso che il verso di rotazione dei motori dipende dal modo in cui esso è collegato al regolatore di velocità (ESC), i motori M1 e M4 gireranno in senso orario mentre i motori M2 e M3 in senso antiorario. Nello schema notiamo che i motori M2 e M4 sono collegati in modo differente dai motori M1 e M3. Sulla carta non possiamo stabilire il verso di rotazione ma esso dovrà essere verificato in fase di prima accensione. Nel caso in cui ad esempio il motore M1 gira in senso antiorario sarà sufficiente invertire  il collegamento di due fili per farlo girare in senso orario.

La batteria LiPo fornisce direttamente l’energia agli ESC mentre tutti gli altri componenti vengono alimentati attraverso un regolatore che livella la tensione a 5Vdc.

La Arduino Mini viene programmata utilizzando il convertitore usb seriale Usb2Serial Light, questo componente non è fisicamente montato sul quadricottero ma viene utilizzato solamente in fase di programmazione e calibrazione.

 

Related posts

Come usare il ponte H integrato TLE5205-2

Marco Lai
8 anni ago

Webduino recuperare parametri da un URL

Marco Lai
13 anni ago

Assemblare i componenti del quadricottero

Marco Lai
11 anni ago
Exit mobile version