Go Down

Topic: Official topic: multicotteri con arduino! (Read 359247 times) previous topic - next topic

lestofante



io so che se x = y devo ruotare di 45° se y = 0 devo ruotarmi di 90 e cosi via...


La nuova risposta "alla domanda fondamentale sulla vita, l'universo e tutto quanto"  è 6371  :)
Per il momento di più non ti dico, vediamo se ci arrivi da solo a cosa significa quel numero che è indispensabile per il nostro calcolo.


dico la mia, alle nostre latitudini, 1° = 6371metri... ho vinto qualcosa?

Quote
Io sono riuscito a svitarle usando un piccolo cacciavite a lama piatta inserendolo in uno solo dei tre tagli, non serve molta forza per girarle.


io non ci sono riuscito, ho trapanato via la testa delle viti e poi con un pò di leva il gioco è fatto. delicatamente eh...


si ma io la "lunghezza dei cateti" la so in base alla differenza delle coordinate, a me serve sapere di quanto devo ruotarmi, per trovarmi rivolto verso il target


una volta che hai l'angolo in gradi a cui dovresti essere (rispetto al nord) e la tua angolazione rispetto nord (data dal magnetometro) è una semplice sottrazione. Però poi per girarsi ci sono 2 modi: uno fisicamente, calcolando l'inerzia angolare, l'altro tramite il classico PID.


Navigazione Ortodromica e Lossodromica.....
Sono queste qui le equazioni da implementare ?
http://www.betasom.it/forum/index.php?showtopic=28367

ad occhio direi che le formule son quelle, non capisco però se tiene conto dell'altezza. Infatti i mari/oceani sono quasi tutti alla stessa altezza, non credo che ci sia mai più di una decina di metri di differenza. MA sulla terra ferma, anche in pianura puoi tranquillamente essere a 100/200 metri sul livello del mare, e questo sfasa molto i conti... (EDIT: atsrobeed mi ha preceduto)


infine una piccola domanda, di nuovo su WMP e nunchuck... le resistenze di pull up dovrei metterle anche tra WMP e nunchuck o solo tra WMP e arduino?
Guida per principianti http://playground.arduino.cc/Italiano/newbie
Unoffical Telegram group https://t.me/genuino

astrobeed


beh ma scusate ardupilot riesce a gestire il GPS senza problemi con tutte le navigazioni possibili ma è basato su un mega  :smiley-eek-blue:


Ardupilot non è in grado di fare la navigazione autonoma, fa le stesse cose del MultiWii con la differenza che si avvale di una sofisticata telemetria e un pc a terra per eseguire i calcoli per i waypoint, fornisce le informazioni per raggiungerli al pilota.
Al momento l'unico multicottero che è in grado di tornare da solo al punto di partenza, o di raggiungere una serie di waypoint, è il MikroKopter dotato della sua elettronica al completo che da sola costa quasi 1000 Euro e per la navigazione GPS utilizza un ARM9 dedicato, poi ci sono altri vari processori per le altre funzionalità.
Scientia potentia est

astrobeed

Un update, ho appena scaricato Arducopter, una evoluzione di Ardupilot dedicata ai multicotteri ancora in fase di sviluppo, tra le varie modalità di volo c'è anche quella che simula l'autopilota di un aereo, cioè la capacità di volare mantenendo una certa rotta, in base alla bussola magnetica, ad una velocità costante.
Questa modalità non è difficile da implementare, non richiede calcoli complessi e nemmeno serve il GPS salvo usarlo come conferma della rotta o come bussola e indicatore della velocità.
Arducopter usa una Mega 2560, compilato sono oltre 120kByte, dispone di una GUI fatta molto bene.

Scientia potentia est

superlol

allora iniziamo a riscrivere un'altro software partendo da multiwii e ardupilot come base?
magari intanto perfezioniamo multiwii, consiglio le dev perchè hanno cambiato le equazioni sul calcolo dell'angolo, poi pensiamo che arrivato settembgre uscirà un ufficiale arduino a 32 bit e si vedrà  8)
http://www.aug-altogarda.it/ <- Il nuovo AUG per basso trentino e dintorni!

ratto93


Un update, ho appena scaricato Arducopter, una evoluzione di Ardupilot dedicata ai multicotteri ancora in fase di sviluppo, tra le varie modalità di volo c'è anche quella che simula l'autopilota di un aereo, cioè la capacità di volare mantenendo una certa rotta, in base alla bussola magnetica, ad una velocità costante.
Questa modalità non è difficile da implementare, non richiede calcoli complessi e nemmeno serve il GPS salvo usarlo come conferma della rotta o come bussola e indicatore della velocità.
Arducopter usa una Mega 2560, compilato sono oltre 120kByte, dispone di una GUI fatta molto bene.



A questo punto non resta che decidere se riscrivere un nuovo ambiente come dice superlol oppure orientarsi su qualcos altro... io per le modeste cose che posso fare se posso dare una mano ci sono ;)
Se corri veloce come un fulmine, ti schianterai come un tuono.

astrobeed


A questo punto non resta che decidere se riscrivere un nuovo ambiente come dice superlol oppure orientarsi su qualcos altro... io per le modeste cose che posso fare se posso dare una mano ci sono ;)


Personalmente sono per la scrittura di un nuovo software, utilizzando come base il meglio del MultiWii e di altri programmi similari, che mettersi a modificare programmi che sono già al limite oppure sono recenti e ancora pieni di bug.
Comunque il primo step in assoluto è definire un hardware ben preciso, sopratutto per la IMU, un grosso errore è cercare a tutti i costi di permettere molte varianti hardware, ti complichi la vita e non avrai mai un sistema ottimizzato.
La soluzione ottimale è quella utilizzata dal MikroKopter, guarda caso, un micro dedicato al flight control, è sufficiente una buona MCU da 8 bit, un micro dedicato alla navigazione e funzionalità UAV, loro usano un ARM 9.
Scientia potentia est

lestofante

visto che per la piattaforma ci conviene aspettare le news di arduino a settembre(?) iniziamo a decidere i sensori (approvo l'idea di usare tutti lo stesso hardware, però deve essere economico e di facile reperibilità)

Per esempio un italiano sta sviluppando una imu con 9 gradi di libertà (accelerometro, gyro e magnetometro, opzionalmente anche il barometro) chiamato freeIMU, tra l'altro pensato per i quadrirotori e arduino.

FreeIMU 0.3.5 usa: BMA180 accelerometer, the ITG3200 gyroscope and the HMC5883L magnetometer.
la FreeIMU 0.3.5_MS usa il MS5611-01BA, sensore di pressione ad alta risoluzione
la FreeIMU 0.3.5_BMP usa il BMP085, sempre sensore di pressione

regolatore di tensione da 3.3 a 16V integrato, come le pull-up da 2.2K, ma non ha il regolatore di livelli logici (la versione 0.2 lo aveva). In oltre ha dei pin che lanciano un segnale alto quando un dato è pronto per essere letto, per ogni sensore.

vantaggio: openhardware e librerie già pronte, lo sviluppatore bazzica nel forum
svantaggio: è ancora prodotto in piccole quantità, quindi i costi sono sui 60 euri al pezzo (senza barometro)

edit: dimenticavo il link http://www.varesano.net/topic/freeimu
Guida per principianti http://playground.arduino.cc/Italiano/newbie
Unoffical Telegram group https://t.me/genuino

superlol

direi la freeIMU 0.3.5_MS perchè lo sviluppatore è anche su questo forum ed ha seguito la conversazione  ;)

io direi di iniziare a buttare giù le prime equazioni e schizzi di codice

riguardo alla navigazione per GPS direi di iniziare a scrivere equazioni ma aspettare le schede di settembre
http://www.aug-altogarda.it/ <- Il nuovo AUG per basso trentino e dintorni!

astrobeed


direi la freeIMU 0.3.5_MS perchè lo sviluppatore è anche su questo forum ed ha seguito la conversazione  ;)


Io invece dico di no, non perché non sia valida, ma perché non è un prodotto commerciale facilmente reperibile ed è impossibile, per la maggior parte delle persone, autocostruirsela.
Un progetto rivolto ad una comunità come prima caratteristica deve avere la facile reperibilità di tutti i componenti, altrimenti è solo un progetto personale tagliato su misura per chi l'ha sviluppato.
Parliamoci con franchezza, chi è che si mette a realizzare un progetto che alla fine costa qualche centinaio di Euro se c'è l'incertezza della reperibilità delle parti sia per costruirlo che come eventuali ricambi domani ?
Scientia potentia est

superlol

allora bisogna usare le breakout board di sparkfun (o watterott o chi le distribuisce).

diciamo:
http://www.sparkfun.com/products/10724 che è una IMU completa ad un prezzo abbordabile a tutti, ma manca il barometro.

la particolarità della freeIMU credo proprio che riesca a tenere il prezzo più basso col maggior numero di sensori ad una buona qualità (avevo chiesto un preventivo anche io  ;) )
http://www.aug-altogarda.it/ <- Il nuovo AUG per basso trentino e dintorni!

FEDERICO

Federico - Sideralis
Arduino &C: http://www.sideralis.org
Foto: http://blackman.amicofigo.com

ratto93

Mi pare sui 25-30 euro... ma sul sito c'erano i prezzi....

ma.. non son sufficienti 6 Gradi di libertà?
così
http://www.sparkfun.com/products/10121
solo che non ha il magnetometro....
Se corri veloce come un fulmine, ti schianterai come un tuono.

astrobeed


Mi pare sui 25-30 euro... ma sul sito c'erano i prezzi....


Lesto, che dovrebbe averne una, dice 60 Euro senza sensore barometrico.
Quanti d.o.f. e quanti sensori dipende da cosa vuoi ottenere, se interessa solo stabilizzare basta il solo giroscopio a 3 assi, oppure si usano tre giroscopi per elicotteri, se vuoi anche l'autolivellamento serve l'accelerometro.
Salendo di livello si aggiunge il magnetometro che viene utilizzato sia come inclinometro assoluto, non influenzato dalle accelerazioni del mezzo, che come bussola, questa funzione è abbastanza delicata da implementare perché la misura del nord magnetico è fortemente influenzata dall'inclinazione del magnetometro, cioè dovrebbe essere fatta con il sensore in bolla oppure compensando in funzione dell'inclinazione.
Lo step successivo è il sensore barometrico che si utilizza per conoscere l'altezza raggiunta, non ci si può fare affidamento per il mantenimento dell'hovering a bassa quota, 1-2 metri dal suolo, dove è meglio utilizzare un sensore assoluto di diverso tipo, solitamente uno ultrasonico ad alta frequenza (200 kHz).
La IMU 9 d.o.f. , in realtà sono tre rindondanti e tre estrapolati per un totale di 6, di Sparkfun va benissimo perché è un prodotto commerciale facilmente reperibile, è modulare grazie alla versione ridotta a 6 d.o.f. e la disponibilità di tutti i sensori singolarmente, ha in comune con la freeimu il giroscopio e il magnetometro, per l'eventuale sensore di pressione c'è il modulo con il BMP085 che è comunque un ottimo sensore di pressione che va benissimo per questa applicazione.
Per il ragionamento già fatto che è inutile complicarsi la vita con un hardware fortemente variabile si può congelare il discorso sensori IMU con queste tipologie:

Versione minimale solo giroscopio:
ITG 3200 o WMP

Versione con autolivellamento:
ITG 3200 o WMP con aggiunto ADXL345

Versione con autolivellamento migliorato e automantenimeto del punto fisso (hovering stabile)
ITG3200, ADXL345, HMC5883L (magnetometro)

Versione full, aggiunge la misura della quota.
ITG3200, ADXL345, HMC5883L, BMP085

In aggiunta a quanto sopra prevederei pure una release del software specifica, e ottimizzata, per la FreIMU della quale dovrebbe arrivare a breve la versione 0.4, magari Fabio ci può dare qualche notizia in merito anche se non credo se ne parli prima di Settembre.

Scientia potentia est

superlol

la freeimu con barometro a me l'ha proposta sugli 80€ ma immagino sia variabile con la richiesta che ha.

io direi di fare tutto basandoci su soli 2 hardware:
FreeIMU nella sua ultima versione e sensori di sparkfun come lo stick che avevo proposto.

io direi di lasciar perdere il WMP in quanto ha bassa risoluzione.

per quanto riguarda il GPS può attendere, direi intando di mettere giù qualche equazione per ottimizzarla e completarla. purtroppo in questo campo sono completamente nabbo quindi lascio fare a voi  XD

magari chi ha creato da se il suo software può postarlo (se vuole) che gli diamo un occhio anche se non è completo ed ottimizzato così per avere uno spunto  ;)
http://www.aug-altogarda.it/ <- Il nuovo AUG per basso trentino e dintorni!

astrobeed


la freeimu con barometro a me l'ha proposta sugli 80€ ma immagino sia variabile con la richiesta che ha.


Quella di sparkfun costa circa 80 Euro senza il barometro, aggiungendolo sotto forma di breakout board viene a costare 15 Euro in più portando il totale a circa 95-100 Euro.

Quote

io direi di lasciar perdere il WMP in quanto ha bassa risoluzione.


Forse ti stai confondendo con il Nunchuk, il WMP utilizza due giroscopi, un IDG600 a doppio asse (roll e pitch) e un Epson XV3500 a singolo asse (jaw).
Dal WMP ottieni i tre assi giroscopici in I2C con una risoluzione a 14 bit, già filtrata, che basta e avanza per il nostro scopo.

Quote

per quanto riguarda il GPS può attendere, direi intando di mettere giù qualche equazione per ottimizzarla e completarla. purtroppo in questo campo sono completamente nabbo quindi lascio fare a voi  XD


Infatti il GPS è l'ultimo dei pensieri.
Scientia potentia est

Go Up