Altitude-hold drone

Buongiorno! Sono alle prese con l'implementazione di un codice per far volare un drone e sono decisamente a buon punto. Mi manca però un controllo d'altezza: spulciando e smontando un drone giocattolo ho trovato un modulo imu con piedinatura a 4 tipica dell'i2c. C'é il classico mpu6050 e un barometro su cui però non c'è incisa alcuna informazione !
con i2c_scanner so solo che ha indirizzo 0x6C. Qualcuno di voi sa che modello è sapendo l'indirizzo?! Così che possa sfruttarne un datasheet?
Altrimenti non è un problema ahah ne comprerò uno: ho letto che il BMP280 è molto preciso: ma riesco a fare un controllo PID (su cosa? Altezza assoluta,velocità o accelerazione lungo z?) con questo sensore?

Scusate per le tante domande addensate, ma volevo fare un post bello compatto. Grazie mille

Ciao, se vuoi un barometro prova il BMP085 o BMP180. Sennò specifica cosa vuoi sapere

EDIT: non avevo letto il tuo edit

doppiozero:
Ciao, se vuoi un barometro prova il BMP085 o BMP180. Sennò specifica cosa vuoi sapere

Ciao doppiozero, grazie per la risposta! Ecco per l'appunto il BMP085 già l'ho provato tempo fa e ricordo che capitavano differenze di un metro tra due misurazioni successive, che mi fa pensare che un controllo su questa base sia improbabile!
A tal proposito, bisogna filtrare il segnale in qualche modo (tramite settaggi a livello hardware o a livello software)?

(Perdonami, per errore mio avevo postato solo metà del messaggio)

Non ho mai filtrato nulla, però potresti provare a fare una media di più letture per appiattire eventuali errori.

lucaacquati:
....

Altrimenti non è un problema ahah ne comprerò uno: ho letto che il BMP280 è molto preciso: ma riesco a fare un controllo PID (su cosa? Altezza assoluta,velocità o accelerazione lungo z?) con questo sensore?

Scusate per le tante domande addensate, ma volevo fare un post bello compatto. Grazie mille

Un "barometro" o misuratore di pressione, lo puoi usare solo per misurare la differenza di pressione a terra (QFE) e in volo, in modo da stabilire, con una certa approssimazione, l'altezza da terra a cui stai volando.
In questo caso si chiama ALTIMETRO.

Per misurare la velocità dovresti metterlo in una specie di "tubo di pitot" e poi tararlo adeguatamente facendo delle prove di percorrenza a velocità fissa di un certo spazio: per esempio hai un campo di 200 metri (misurati!!!) , lo percorri in x secondi e vedi cosa ti misura il tubo di pitot. Naturalmente devi percorrerlo anche al contrario per eliminare eventuali errori dovuti al vento in coda oppure in prua.

La velocità verticale la misuri sempre con l'ALTIMETRO, controllando la sua variazione in un certo periodo di tempo. In questo caso hai un VARIOMETRO e misuri in metri/secondo, negativi (se scendi) o positivi (se sali), e non è una accelerazione ma una velocità.

Ricordo sempre l'uso responsabile dei droni, specie se superiori a 900 gr. (che in questo caso si chiamano SAPR e devono sottostare alle norme ENAC come qualsiasi oggetto volante).

Per qualsiasi cosa, chiedi pure.

steve-cr:
Per misurare la velocità dovresti metterlo in una specie di "tubo di pitot" e poi tararlo adeguatamente facendo delle prove di percorrenza a velocità fissa di un certo spazio: per esempio hai un campo di 200 metri (misurati!!!) , lo percorri in x secondi e vedi cosa ti misura il tubo di pitot.

Hm, vorrei una conferma, per la precisione in ambito aeronautico la velocità (intesa come "velocità dell'aria", che poi è il parametro principale per la portanza) si misura con DUE sensori di pressione sul pitot, uno in asse col muso del velivolo (totale), ed uno invece laterale (statica), usato come riferimento.
La velocità la si misura calcolando la differenza tra le due pressioni, quindi al nostro amico non basterebbe un sensore.
Ma nel caso dei droni le eliche generano turbolenze che credo diano fastidio, per cui l'unica misura di velocità che mi viene in mente tra quelle "proponibili" è quella con il GPS, che tra l'altro consente anche la misurazione dell'altitudine (per misurazioni di precisione nei pressi del terreno mi pare che i droni utilizzino un sensore ad ultrasuoni, confermi?).
Esatto?

Esatto docdoc, vedo che sei informato.
Come dici tu, però, la velocità serve per la portanza, quindi mi serve la velocità riferita all'aria (tubo di pitot) e non al suolo (gps).
Nel caso dei droni, però, la portanza è quella creata dalle sole eliche dato che non hanno "superfici portanti" come l'ala di un aereo, quindi la velocità orizzontale in riferimento all'aria è meno importante per il sostentamento del drone ma serve per conoscere la componente vento frontale o laterale e per conoscere il suo rendimento in una massa d'aria (per esempio se devi fare una gara con un altro drone devi sapere la sua massima velocità all'aria).

steve-cr:
ma serve per conoscere la componente vento frontale o laterale e per conoscere il suo rendimento in una massa d'aria (per esempio se devi fare una gara con un altro drone devi sapere la sua massima velocità all'aria).

Scusa ma non ho capito. Un tubo di pitot su un drone è a mio avviso improponibile ad iniziare proprio dai flussi d'aria e le turbolenze generati dalle eliche, quindi che misura si può ottenere ovvero quale affidabilità potrebbe offrire?

Non credo che si possa conoscere la massima velocità all'aria a meno di installare il pitot sufficientemente lontano dalle eliche (direi sopra). Ma anche in questo caso poiché i droni non hanno un assetto orizzontale ma varia enormemente (i loro movimenti sono su tutte e tre gli assi, pitch, roll e yaw peggio di un elicottero classico) dato che il pitot esprime una misura lungo una precisa direzione, o ne metti 3 ortogonali (!) posizionati su un'asta alta almeno un metro sopra al drone stesso (!!), o secondo me è proprio lo strumento sbagliato per calcolare la velocità di un drone.

In alternativa al GPS vedrei solo un calcolo basato su navigazione inerziale, con un giroscopio a 3 assi e calcolo delle accelerazioni. Poi, più di questo non mi viene in mente...

Assolutamente NO.
Ad oggi nessuna strumentazione aerea si basa su dati inerziali per conoscere la velocità all'aria. Basta vedere i tubi di pitot con tanto di de-icing posizionati su qualsiasi aeromobile di trasporto passeggeri oppure militare.

Se un drone crea turbolenza in un tubo di pitot pur avendo le eliche verso l'alto che turbolenza dovrei avere sul mio aereo che ha una elica frontale e il tubo di pitot a metà dell'ala destra, dietro al flusso dell'elica?

E poi parliamo di un tubo da 8, 10 o 12 mm di diametro, quindi lettura rigorosamente frontale.

Va messo nella direzione del moto e cioè leggermente verso l'alto (il drone non viaggia mai in orizzontale) e poi ci sarà tutto un programma di interpretazione dei dati.

Poi se cerchi "tubo pitot elicottero" su google, vedrai tutte le foto di dove è posizionato (proprio sotto al flusso di aria delle pale).

Comunque penso che a lucaacquati interessi solo l'altitudine

Esattamente doppiozero, effettivamente mi serve un semplice altimetro ahah

Grazie comunque a docdoc e steve cr per le risposte, però non ho risolto il mio dubbio.

Con un barometro da pochi euro, riesco a fare un controllo in altezza?! La risposta è sicuramente si perché su droni giocattoli che ho smontato i moduli che vedo sono molto simili (se non gli stessi) a quelli che ho visto su internet, come per esempio il BMP280.

Ma come sfruttarlo per trovare l'altezza? Nel senso, ho gia visto che ci sono algoritmi e formule empiriche per ricavare l'altezza. Ma su un raggio di 0-10 metri da terra le differenze di misurazioni sono così stabili e attendibili da poter fare un controllo?!

ni :slight_smile:

meglio se fai una media di una serie di letture.... anche se ti portano via un po di tempo

lucaacquati:
Esattamente doppiozero, effettivamente mi serve un semplice altimetro ahah

Grazie comunque a docdoc e steve cr per le risposte, però non ho risolto il mio dubbio.

Con un barometro da pochi euro, riesco a fare un controllo in altezza?! La risposta è sicuramente si perché su droni giocattoli che ho smontato i moduli che vedo sono molto simili (se non gli stessi) a quelli che ho visto su internet, come per esempio il BMP280.

Ma come sfruttarlo per trovare l'altezza? Nel senso, ho gia visto che ci sono algoritmi e formule empiriche per ricavare l'altezza. Ma su un raggio di 0-10 metri da terra le differenze di misurazioni sono così stabili e attendibili da poter fare un controllo?!

Il barometro E' UN ALTIMETRO perché la pressione scende con l'altezza dal suolo.

Non hai bisogno di algoritmi o formule empiriche (non conosco nessuno strumento meccanico che esegua algoritmi in tempo reale solo con leve e ingranaggi...) ma solo di sapere che :

"La pressione atmosferica varia con la quota. Fino a circa 500 m (slm) decresce di circa 0.125 h/Pascal per metro di altezza; oltre i 500 m (slm) il gradiente tende a diminuire: intorno a 5500 m (slm) è circa la metà (0.062 hP/m). A questa quota la pressione è dimezzata rispetto a quella a livello del mare"

Semplice, no? Ancora più semplice per un barometro che passa da Arduino dove puoi avere, appunto, delle tabelle e far fare i calcoli a lui. In aeronautica invece c'è ... una manopola (!!!) che serve ad azzerare la lancetta del barometro/altimetro oppure per regolarla una volta arrivato alla "altitudine di transizione" (intorno ai 3000 feet).

Se giochi con i 10 metri non puoi essere sicuro di una altezza con altimetro perché la pressione è anche variabile da zona a zona (se guardi le previsioni del tempo vedrai le cartine con le "isobare" e cioè quelle linee che dividono una zona con una certa pressione con un'altra di pressione differente) e poi devi sapere quanto è preciso il tuo barometro.

Per un "ritorno a casa" dei droni di ultima generazione penso che utilizzino diversi dati che provengono da gps, da piattaforma inerziale e da altimetro...

steve-cr:
Se giochi con i 10 metri non puoi essere sicuro di una altezza con altimetro perché la pressione è anche variabile da zona a zona (se guardi le previsioni del tempo vedrai le cartine con le "isobare" e cioè quelle linee che dividono una zona con una certa pressione con un'altra di pressione differente) e poi devi sapere quanto è preciso il tuo barometro.

Credo che tutti i droni, anche quelli più economici, quando arrivano sotto una certa quiota, usano due capsule ad ultrasuoni poste sotto il drone ... proprio per i problemi di precisione degli altri sensori basati sulla pressione atmosferica (un errore di un solo metro può fare un bel danno :smiley:)

Guglielmo

gpb01:
Credo che tutti i droni, anche quelli più economici, quando arrivano sotto una certa quiota, usano due capsule ad ultrasuoni poste sotto il drone ... proprio per i problemi di precisione degli altri sensori basati sulla pressione atmosferica (un errore di un solo metro può fare un bel danno :smiley:)

Guglielmo

Vero, le ho viste anche io.

gpb01:
Credo che tutti i droni, anche quelli più economici, quando arrivano sotto una certa quiota, usano due capsule ad ultrasuoni poste sotto il drone ...

Eh infatti, immaginavo (mi auto-quoto: "...per misurazioni di precisione nei pressi del terreno mi pare che i droni utilizzino un sensore ad ultrasuoni") :wink:

Per l'affidabilità del sensore barometrico basterebbe calibrarlo prima del volo, ossia quando è a terra premi un tasto e lui legge il valore corrente (come detto, fa alcune misurazioni e calcola la media). Da quel momento ad ogni lettura (sempre comunque "mediata" un minimo) calcola la differenza di pressione e da lì STIMA l'altezza.
Per migliorare la precisione il sensore dovrebbe essere in una zona poco influenzata dalle turbolenze delle eliche (diciamo centralmente, nella parte inferiore).
Ma io ne metterei DUE, uno sopra ed uno sotto, per cercare di rendere più affidabile la lettura anche durante il volo (il sensore inferiore registrerà sempre un valore minore mentre quello superiore uno maggiore per via del moto): facendo la media delle due singole letture contemporanee e quindi mediando alcune di queste letture "combinate", dovresti avere un valore relativamete affidabile.
Quanto sia la precisione dipende da quante turbolenze ci sono e quanto sono precisi i sensori, non vedo altra soluzione se non sperimentare acquistando i sensori e volando (un programmino che registra le letture su una SD ad esempio, i cui dati analizzerai poi a terra).

steve-cr:
Se un drone crea turbolenza in un tubo di pitot pur avendo le eliche verso l'alto che turbolenza dovrei avere sul mio aereo che ha una elica frontale e il tubo di pitot a metà dell'ala destra, dietro al flusso dell'elica?

Scusa steve, non prendertela, ma non mi hai convinto, :wink: non credo proprio che su un aereo il tubo di Pitot sia posizionato all'interno del flusso dell'elica ma appunto almeno a metà del bordo di attacco dell'ala dove le turbolenze dell'elica sono quasi ininfluenti.
Su un drone poi ti ricordo che hai QUATTRO eliche, nessuna superficie portante, e direzione del moto non predeterminata, quindi un tubo di pitot può essere posizionato ad esempio sulla parte superiore, e SE VA BENE ti misura la velocità in una sola direzione (ovvero la sua componente lungo quell'asse). Per cui se vuoi misurare la reale velocità e non solo quella frontale, teoricamente te ne servono almeno DUE ortogonali.

Poi se cerchi "tubo pitot elicottero" su google, vedrai tutte le foto di dove è posizionato (proprio sotto al flusso di aria delle pale).

Si ma a parte il fatto che non ci sono molti punti dove posizionarlo, se ci fai caso si trova nel punto più lontano possibile, probabilmente prima dell'estremità delle pale in un punto dove, da uno studio della fluidodinamica dell'aeromobile, i vortici d'estremità sono minimi ed il flusso verticale non influenza la lettura frontale. Ma un drone è quasi totalmente differente...

Comunque sia, la misurazione della velocità è un argomento superato perché all'OP interessa l'altitudine, per cui lascerei cadere l'argomento se sei d'accordo. :wink:
Al massimo possiamo proseguire in MP, magari chiedo conferme a mio figlio che è al terzo anno di Ingegneria Aerospaziale...:wink:

docdoc:
Eh infatti, immaginavo (mi auto-quoto: "...per misurazioni di precisione nei pressi del terreno mi pare che i droni utilizzino un sensore ad ultrasuoni") :wink:

Anche una telecamera

Si, sono d'accordo a lasciar cadere l'argomento, anche se io vorrei sapere che velocità all'aria fa il mio drone nel caso dovessi partecipare ad una gara di velocità contro altri droni (e succede spesso). Anzi, sono curioso se c'è qualche drone che sa questa velocità.
Poi ti posso assicurare che il tubo di pitot non viene minimamente influenzato dal flusso dell'aria delle eliche di un elicottero (se ci fai caso potevano metterlo sotto la pancia dell'elicottero, al riparo dall'elica, ma non lo fanno perché non serve) o di un drone dato che è perpendicolare al flusso, e negli aerei con elica traente sono invece nella stessa direzione del flusso e qualcosa potrebbe sempre entrare (ma in pratica non entra dato che è un tubo piccolino)

E metterlo sopra alle eliche, come dici tu, non cambierebbe nulla perchè se sotto hai un flusso in pressione, sopra avresti un flusso in "aspirazione".

Io lo metterei, piccolino, appiccicato sotto la pancia: meglio che provarlo non ce n'è.

P.S. non chiedere a tuo figlio, potrebbe smentirti! ;D