Design and implementation of a low cost quadcopter

È passato un po’ di tempo dall’ultimo articolo, da ottobre ho iniziato la specialistica a Pisa e non ho avuto più la possibilità di giocare con arduino e co.

Fortunatamente però per un esame ho potuto portare il mio quadricottero e presentarlo come progetto.

Ed ecco che ho scritto un elaborato in inglese su ciò che concerne l’elettronica di questi multirotori. Naturalmente si tratta di informazioni complementari alla guida che trovate sul resto del blog, ma mi fa piacere se qualcuno troverà qualche risposta qui dentro..

Qui sotto trovate il pdf, alla prossima.

IMAG0095

Design and implementation of a low cost quadcopter – Luca Silvestri

Come costruire un quadricottero. Parte VII

Passiamo alla configurazione del quadricottero, per prima cosa dobbiamo scaricare il software multiwii che possiamo trovare qui.

Il file scaricato comprende sia lo sketch di arduino che l’applicazione per la sua configurazione da pc, apriamo multiwii.ino con l’ide arduino per modificare alcuni valori.

In particolare dobbiamo andare nella scheda config e mettere o togliere i define in base alla nostra configurazione.

Qui la parte più difficile sarà il max e min throttle su cui torneremo dopo.

Quindi carichiamo lo sketch nel modo in cui siamo abituati ( io uso un convertitore ftdi serial che trovate qui).

Colleghiamo il quad al pc e apriamo il MultiWiiConf, per prima cosa dobbiamo selezionare la porta com relativa al quad e poi premere il pulsante start.

Da questo momento dovremmo vedere il grafico del quad muoversi coerentemente con il quad stesso, se non è così ricontrollate i valori che avete inserito nello sketch e l’orientamento della imu.

Controllate che il radiocomando controlli i canali giuste e se necessario fate il reverse di quelli opposti.

Per la regolazione degli stick dovete prima di tutto entrare nel setup del vostro radiocomando e impostare la massima escursione possibile per ogni canale (vi rimando al vostro manuale), dettò ciò bisogna fare in modo che ogni canale sia al minimo 1000, a metà 1500 e al massimo 2000. Per fare questo dovete trovare la giusta combinazione di trim e max e min throttle nel codice.

Se avete dubbi sull’uso del vostro radiocomando consultate il manuale o siti specializzati come baronerosso.

La prossima configurazione riguarda i sensori, posizionate il quad su una superficie piana e cliccate su CALIB_ACC, in questo modo verranno calibrati gli accelerometri, poi premete CALIB_MAG e dovrete girare il quad a 360° su ogni asse entro 10 secondi per calibrare il magnetometro. Premete WRITE e il gioco è fatto.

Ora che avete configurato correttamente il quad è il momento di montare le eliche.

Mi raccomando prestate sempre la massima attenzione quando il quad ha le eliche montate, ricordate che basta poco per farsi seriamente del male.

Ricordate che le eliche che avete sono controrotanti quindi devono girare come illustrato dal grafico di MultiWiiConf.

Per invertire il senso di rotazione di un motore brushless basta prendere due fili qualsiasi del motore e invertirli.

Ora siete pronti a spiccare il volo, caricate la batteria, trovate un luogo con ampi spazi aperti e sperate che non si schianti tutto al primo colpo 😛

quad

Come costruire un quadricottero. Parte I

Dopo molti slittamenti e impegni vari ho finalmente trovato il periodo giusto per cominciare a costruire sul serio un quadricottero. (per chi non l’avesse ancora capito si tratta di una specie di elicottero con 4 rotori).
A lungo ho cercato nei meandri della rete un buon posto dove acquistare il materiale necessario, evitando i tempi biblici delle spedizioni cinesi, e cercando di acquistare tutto nello stesso sito.
La mia scelta è ricaduta su giantshark sito inglese e con prezzi abbastanza competitivi. ( altre possibilità erano hobbyking o sdmodel).
Devo dire che ho cercato di spendere il meno possibile cercando comunque di avere un buon compromesso qualitativo per chi è alle prime armi.

Ecco quindi la lista della spesa:

# 4 motori: Keda 20-50S 8A 1088kv


Per la scelta dei motori dovete affidarvi un po’ a quello che leggete in giro, ricordate solo che un basso kv permette di avere un modello più stabile e meno nervoso (l’ideale è sui 800-900 kv)

# 4 eliche: 0845 CW CCW


La dimensione delle eliche è normalmente consigliata nella descrizione del motore, in caso contrario fate sempre riferimento a configurazioni già funzionanti. Attenzione al fatto che a noi servono eliche rotanti e controrotanti (CW e CCW)

# 4 esc: HobbyWing Pentium 12A


Nella scelta degli esc ( i regolatori dei motori) dovete prestare attenzione al fatto che devono avere più ampere di quanti ne assorbano i motori.

# batteria: Gens Ace 2200 3S 40C


Il tipo di batteria viene solitamente indicato nella descrizione dei motori (in questo caso 3s), la cappacità di scarica deve superare l’assorbimento dei motori (40C), e deve avere un buon compromesso capacità/peso al fine di aumentare la durata del volo (2200 mah).

# frame:

Esistono in commercio molti tipi di frame già pronti all’uso, io ho deciso che lo costruirò con dei profilati da 1cm di lato presi al brico, giusto per risparmiare qualche soldo. Userò poi dei quadrelli in legno, vetronite o alluminio per costruire una croce robusta.

# IMU: IMU 10DOF LLC


No, questa volta non è colpa di Monti, l’acronimo inglese sta per unità di misura inerziale, e consiste in una serie di sensori che permettono al controllore di sapere la posizione del modello e le forze agenti su di esso.
Ciò che vi serve è almeno un giroscopio e un accelerometro agenti su tre assi, quindi potete spendere anche meno usando le 6dof che ci sono in quel sito o addirittura i sensori dei telecomandi della wii. (vedi articolo)

NB: se userete un micro controllore a 5V vi servirà un LLC cioè un convertitore di livelli logici perchè la IMU funziona a 3.3V.

# MCU:

Questo è il vero cervello del modello, deve leggere i dati della IMU, usare un algoritmo per la comprensione di questi dati e comunicare ai motori il da farsi. Esistono varie schede in commercio con vari software allegati, per quanto mi riguarda ho deciso che la produrrò in casa con il mio bromografo creando una scheda Arduino-like e utilizzerò il software Multiwii per programmarla. Un’alternativa è usare direttamente una Arduino Pro Mini.

# radioSpektrum DX6i

Questa radio mi è stata regalata ed è veramente un ottimo modello, se volete spendere di meno e la userete solo per il quadricottero esistono alternative più convenienti specie su hobbyking.

opzionali

# scheda di programmazione: Hobbywing Program Card


Molti esc sono programmabili, ed in particolar modo è possibile precisare il loro comportamento in particolari condizioni come ad esempio l’improvvisa mancanza di alimentazione.

# fili vari: Wire 20AWG


Serviranno vari fili della giusta sezione.

Naturalmente a questa lista bisogna aggiungere tutta una serie di viteria e bulloneria che immagino non sarà difficile recuperare.
Il prossimo appuntamento vergerà sulla messa a punto dei motori e in particolare sull’inversione dell’albero motore.
Se avete domande o consigli su come migliorare questa guida non esitate a commentare 🙂

MultiWii: piccole novità

Grazie al forum di Arduino e in particolar modo all’utente Astrobeed si sono evidenziate alcune dimenticanze/imprecisioni sui tutorial presenti sul sito di multiwii.

Ho sperimentato la nuova configurazione e sembra che le cose siano leggermente migliorate, perciò fate caso anche a questi due particolari:

  • Alimentazione: questi dispositivi i2c vanno alimentati a 3.3 volt, e quindi non direttamente dal pin 12. Le soluzioni sono due, attaccarsi all’uscita 3.3v di arduino o mettere in serie al pin 12 due diodi in modo da abbassare la tensione.
    (NB: in questo caso saremmo anche protetti da eventuali freeze del wm+).
  • Resistenze di pullup: per aiutare il funzionamento del protocollo i2c bisogna prevedere due resistenze di pullup di adeguata dimensione, dai calcoli che ha effettuato Astrobeed risulta che servono due resistenze da 1.5k ohm da mettere tra i bus SDA e SCL e l’alimentazione. (In pratica i pin A4 e A5 devono essere collegati al 3.3 volt con le resistenze)

Se ci saranno altre novità non esiterò a citarle, intanto ecco il video con la nuova configurazione:

MultiWii: come collegare il nunchuck e il Wii motion plus ad Arduino

Dopo aver provato ad utilizzare i giroscopi e gli accelerometri presenti nei sensori della wii all’interno dei loro case, è giunto il momento di estrarli e collegarli direttamente.

Per far ciò ho preferito saldare direttamente i fili già presenti invece di saldare direttamente sui pcb a causa delle dimensioni degli stessi, quando avrò una stazione saldante più seria mi cimenterò anche in queste saldature più piccole.

Si tratta solo di collegare i fili giusti, quindi la difficoltà non è altissima..

Per il collegamento basta seguire queste due immagini (io ho usato un arduino Uno)

Per ulteriori dubbi o perplessità vi rimando al video in cui vi mostro come ho smontato e collegato i due sensori, e il loro funzionamento attraverso il software MultiWii.

 

EDIT: come richiesto metto una foto che mostra dove va il filo verde citato nel video

Primi passi con Arduino e un giroscopio

Ecco i miei primi passi verso il mio primo quadrotore..

Il Wii Motion Plus (giroscopio a 3 assi) ed Arduino Uno.

Nell’utilizzo di MultiWii citano l’utilizzo di Arduino pro mini, ma a quanto pare non è facilissimo da trovare.. Quindi prima di disperarmi ho deciso di provare se poteva andare anche con la Uno..

Sembra vada tutto bene :):)

Il filmato non è il massimo ma era solo per provare, più avanti metterò video migliori..

Il software di arduino è quello di Multiwii, come anche la GUI che vedete sullo schermo, ma se volete provare a collegare per la prima volta il Wii Motion Plus ad Arduino vi consiglio quest’ottima guida.

ArduKal I: il mio primo robot

Scusate se ultimamente sono stato un pò assente, ma non vi preoccupate perchè oltre agli esami ho fatto anche altro..

è da un pò che sto lavorando al mio primo robot, ArduKal I.

Per il momento è ancora in costruzione, ma sinceramente non ho saputo resistere, quindi beccatevi sto video.. (scusate l’audio, non sapevo che il radiocomando disturbasse la registrazione..)

Come potete vedere ho utilizzato due microservi modificati per la rotazione continua, (forse metterò anche il video di come li ho modificati più avanti), una batteria lipo e il ricevitore del radiocomando..

Ovviamente il prossimo passo sarà quello di integrare arduino per far diventare il robot autonomo.. e magari trovare delle ruote migliori..

che ve ne pare? :):)