BaroneRosso.it - Forum Modellismo

BaroneRosso.it - Forum Modellismo (https://www.baronerosso.it/forum/)
-   Radiocomandi (https://www.baronerosso.it/forum/radiocomandi/)
-   -   Progetto Tx e Rx digitale 2,4Ghz con microcontrollore (https://www.baronerosso.it/forum/radiocomandi/169199-progetto-tx-e-rx-digitale-2-4ghz-con-microcontrollore.html)

RonGraham 03 aprile 10 18:57

Progetto Tx e Rx digitale 2,4Ghz con microcontrollore
 
Ciao a tutti,

Mi sono appena iscritto su questo forum, però ho sempre avuto la passione per gli aerei radiocomandati e quindi ho sempre seguito questo e altri forum...

Finalmente ho deciso di comprare il mio primo aeromodello, però essendo uno di quelli che si preferisce costruire una cosa piuttosto che comprarla già fatta e visto che l'elettronica è il mio campo, mi sono un'attimo bloccato sul discorso radio...


LA MIA IDEA: (spero di non aver detto un mucchio di caXXate :fiu:)

Le normali radio per aerei RC, sia quelle FM sia quelle a 2,4Ghz hanno un numero limitato di canali di controllo...la mia idea è nata dal voler costruire un aeromodello con molte funzioni ma il problema è il costo di una radio con tanti canali...

Il mio progetto prevede di avere a bordo dell'aereo varie strumentazioni e sensori tra cui anche una microcamera, accelerometri, giroscopi ecc... e vorrei che da terra sia possibile comunicare con questi sensori.

Quindi l'idea che mi è venuta in mente è di realizzare un trasmettitore e ricevitore con frequenza 2,4Ghz basato su microcontrollori (PIC della microchip) e come modulo transceiver uno zigbee standard IEEE 802.15.4 per reti wireless a breve-medio raggio (tipo MRF24J40 della Microchip o altri moduli della Nordic) Questi sono moduli low cost (10euro l'uno circa) e possono trasmettere e ricevere quindi avremmo un aereo che ci invia dati. Inoltre il protocollo di comunicazione è personalizzabile, in pratica decido che tipo di messaggio inviare/ricevere!

Quindi montando un pic+mrf24j40 sull'aeromodello e utilizzando un pic+mrf24j40 come radiocomando io posso inviare e ricevere byte generici, quindi invece di controllare solo dei canali prefissati, io invio messaggi di qualunque genere avendo quindi un numero infinito di canali di controllo.

Esempio io mando il messaggio "aumenta velocità motore" e il pic sull'aereo aumenta il duty cycle del pwm che comanda il motore.
Oppure chiedo di leggere i dati dall'accelerometro e lui mi invia i dati...

Problemi di interferenza non ce ne sono, in quanto il protocollo di comunicazione prevede un ID per ogni transceiver quindi la comunicazione avviene solo tra i dispositivi che hanno quell'ID!
Ho visto che ora sono in vendita dei radiocomandi a 2,4Ghz, ma ho visto che hanno comunque un numero limitato di canali di controllo, quindi non risolvono il problema...dovrò costruirmi tutto da solo :D (spero di farcela)



I PROBLEMI E LE SOLUZIONI:

-Di base i chip che ho citato prima hanno range limitato a 100-150metri, ma il problema si risolve aggiungendo un circuito di amplificazione, aumentando la portata a 1300m senza problemi!


-Questi circuiti sono già progettati per consumare il minimo possibile, in quanto sono progettati per lavorare con alimentazione a batteria, in ogni modo è possibile minimizzare ancora di più il consumo gestendo tramite firmware la modalità di funzionamento dei chip: in funzione, spento, in standby (sleep).

-Il motore elettrico si pilota in PWM, il motore a scoppio non so come viene pilotato a livello elettronico, però credo che non ci sia problema...

-I servo motori si controllano direttamente con il PIC


Che ne dite? ho scritto un mare di cavolate? si può fare un cosa del genere?

Grazie a tutti per l'interessamento!

Ciao
Luca

LONGFLYER 03 aprile 10 19:34

Citazione:

Originalmente inviato da RonGraham (Messaggio 2004498)
Ciao a tutti,

Mi sono appena iscritto su questo forum, però ho sempre avuto la passione per gli aerei radiocomandati e quindi ho sempre seguito questo e altri forum...

Finalmente ho deciso di comprare il mio primo aeromodello, però essendo uno di quelli che si preferisce costruire una cosa piuttosto che comprarla già fatta e visto che l'elettronica è il mio campo, mi sono un'attimo bloccato sul discorso radio...


LA MIA IDEA: (spero di non aver detto un mucchio di caXXate :fiu:)

Le normali radio per aerei RC, sia quelle FM sia quelle a 2,4Ghz hanno un numero limitato di canali di controllo...la mia idea è nata dal voler costruire un aeromodello con molte funzioni ma il problema è il costo di una radio con tanti canali...

Il mio progetto prevede di avere a bordo dell'aereo varie strumentazioni e sensori tra cui anche una microcamera, accelerometri, giroscopi ecc... e vorrei che da terra sia possibile comunicare con questi sensori.

Quindi l'idea che mi è venuta in mente è di realizzare un trasmettitore e ricevitore con frequenza 2,4Ghz basato su microcontrollori (PIC della microchip) e come modulo transceiver uno zigbee standard IEEE 802.15.4 per reti wireless a breve-medio raggio (tipo MRF24J40 della Microchip o altri moduli della Nordic) Questi sono moduli low cost (10euro l'uno circa) e possono trasmettere e ricevere quindi avremmo un aereo che ci invia dati. Inoltre il protocollo di comunicazione è personalizzabile, in pratica decido che tipo di messaggio inviare/ricevere!

Quindi montando un pic+mrf24j40 sull'aeromodello e utilizzando un pic+mrf24j40 come radiocomando io posso inviare e ricevere byte generici, quindi invece di controllare solo dei canali prefissati, io invio messaggi di qualunque genere avendo quindi un numero infinito di canali di controllo.

Esempio io mando il messaggio "aumenta velocità motore" e il pic sull'aereo aumenta il duty cycle del pwm che comanda il motore.
Oppure chiedo di leggere i dati dall'accelerometro e lui mi invia i dati...

Problemi di interferenza non ce ne sono, in quanto il protocollo di comunicazione prevede un ID per ogni transceiver quindi la comunicazione avviene solo tra i dispositivi che hanno quell'ID!
Ho visto che ora sono in vendita dei radiocomandi a 2,4Ghz, ma ho visto che hanno comunque un numero limitato di canali di controllo, quindi non risolvono il problema...dovrò costruirmi tutto da solo :D (spero di farcela)



I PROBLEMI E LE SOLUZIONI:

-Di base i chip che ho citato prima hanno range limitato a 100-150metri, ma il problema si risolve aggiungendo un circuito di amplificazione, aumentando la portata a 1300m senza problemi!


-Questi circuiti sono già progettati per consumare il minimo possibile, in quanto sono progettati per lavorare con alimentazione a batteria, in ogni modo è possibile minimizzare ancora di più il consumo gestendo tramite firmware la modalità di funzionamento dei chip: in funzione, spento, in standby (sleep).

-Il motore elettrico si pilota in PWM, il motore a scoppio non so come viene pilotato a livello elettronico, però credo che non ci sia problema...

-I servo motori si controllano direttamente con il PIC


Che ne dite? ho scritto un mare di cavolate? si può fare un cosa del genere?

Grazie a tutti per l'interessamento!

Ciao
Luca

Certamente un ottimo esercizio ed a riguardo puoi verificare in questo sito francese (tradotto con google) cosa hanno già realizzato .. Google Traduci
Tieni presente però che le radio normalmente acquistabili presentano oltre ad una infrastruttura hardware anche una infrastruttura software ampiamente collaudate per una affidabilità d'integrazione ai massimi livelli nel caso di marchi blasonati ..
Normalmente in volo ci sono alcuni pericolosi chili ed a volte dai costi esagerati ..

Ciò non toglie che esiste una fetta di appassionati che costruisce per il se, addirittura, il proprio aeroplano full-size ma è pur vero che lo fanno seguendo pedissequamente un progetto garantito ..

Suggerimento:
- impara a volare ed a divertirti con una radio dal costo economico ma grande versatilità (Hitec Optic 6 2.4Ghz che compresa di spedizione ha un costo inferiore a 159€ .. semmai ti dico dove ..), nel frattempo la conversione alla telemetria integrata di tutti i link 2.4Ghz sul mercato sarà completata e tu potrai decidere se passare all'autocostruzione di un sistema radio e conseguente complesso software, oppure, scegliere uno dei tanti link 2.4Ghz possibili ..:wink:

PS. I link 2.4Ghz già telemetrici sono JETI, WEATRONIC, HITEC e MULTIPLEX (degli ultimi due dovrebbero entrare in commercio fra non molto il parco sensori e relativa modalità di ricezione di cui ancora si sa poco ..)

RonGraham 03 aprile 10 20:25

ciao, ti ringrazio per la risposta...è proprio quello che voglio fare io

sul sito che mi hai linkato ho visto che hanno costruito altimetro, variometro e tachimetro.

loro usano l' Xbee che è una versione più potente dello zigbee e credo che con soltanto quel modulo comandino l'aereo e leggano i dati dai sensori

Certo comunque hai ragione, per iniziare compro una radio già fatta e nel frattempo inizio a fare un po' di prove con qualche chip della microchip, tanto già li uso e ci metto poco a scrivere un firmware per i sensori, per quanto riguarda il controllo dell'aereo la parte che mi preoccupa di più è comandare in modo preciso i servomotori...

chiaramente prima di raggiungere un risultato decente e utilizzabile ci vorrà un po' di tempo, però io non la vedo tanto incasinata la cosa...senza dubbio il software è la parte più complessa, però secondo me è meno difficile di quanto sembra...poi magari mi sbaglio e la cosa diventa infattibile :icon_rofl

per quanto riguarda le radio 2,4Ghz in commercio oggi, tu sai che modulazione usano? sono sempre FM come le normali radio?

un po' di OFF TOPIC: :P

Senti tu come punto di partenza cosa mi consigli, lasciando stare per un attimo telemetria e cose varie? sui vari forum consigliano come primo aereo l'easystar e come prezzo in effetti va benissimo...l'ho trovato anche a 220€ con motore, servi e radio 4ch zebra pronto al volo...

tu mi sconsigli di iniziare con il motore a scoppio?

LONGFLYER 03 aprile 10 20:40

Citazione:

Originalmente inviato da RonGraham (Messaggio 2004630)
ciao, ti ringrazio per la risposta...è proprio quello che voglio fare io

sul sito che mi hai linkato ho visto che hanno costruito altimetro, variometro e tachimetro.

loro usano l' Xbee che è una versione più potente dello zigbee e credo che con soltanto quel modulo comandino l'aereo e leggano i dati dai sensori

Certo comunque hai ragione, per iniziare compro una radio già fatta e nel frattempo inizio a fare un po' di prove con qualche chip della microchip, tanto già li uso e ci metto poco a scrivere un firmware per i sensori, per quanto riguarda il controllo dell'aereo la parte che mi preoccupa di più è comandare in modo preciso i servomotori...

chiaramente prima di raggiungere un risultato decente e utilizzabile ci vorrà un po' di tempo, però io non la vedo tanto incasinata la cosa...senza dubbio il software è la parte più complessa, però secondo me è meno difficile di quanto sembra...poi magari mi sbaglio e la cosa diventa infattibile :icon_rofl

per quanto riguarda le radio 2,4Ghz in commercio oggi, tu sai che modulazione usano? sono sempre FM come le normali radio?

un po' di OFF TOPIC: :P

Senti tu come punto di partenza cosa mi consigli, lasciando stare per un attimo telemetria e cose varie? sui vari forum consigliano come primo aereo l'easystar e come prezzo in effetti va benissimo...l'ho trovato anche a 220€ con motore, servi e radio 4ch zebra pronto al volo...

tu mi sconsigli di iniziare con il motore a scoppio?

Oggi esiste l'elettrico che presenta davvero molti vantaggi per un neofita e se poi lo scoppio non è mai stato un desiderio è difficile che lo diventi in seguito.

L'elettrico è silenzioso, non inquina, è riaccendibile all'occorrenza, è comodo (nessuna miscela e pulizia finale) e con l'elica a pale ripiegabili non hai bisogno di usare le costose pinne estraibili .. per contro devi comprare più batterie se vuoi volare mentre le precedenti sono in carica e quindi necessitano di un carica batterie da campo con alimentatore casalingo per la produzione dei 12V (che al campo puoi ottenere in automobile ..).
Lascia perdere una radio non computerizzata, sono soldi al vento, meglio una radio come quella indicata che ti durerà davvero molto prima di sentire l'esigenza del cambio.
Ottimi come primi modelli quelli in "espanso" (che espanso non sono ma materiali brevettati): lo EasyStar non ha alettoni mentre lo EasyGlider Si, quindi dal controllo più completo .. fatti un giro al campo che magari trovi entrambi.

RonGraham 03 aprile 10 20:48

si infatti, pensavo di andare al campo di volo qui a bologna e vedere dal vivo quello che succede...

per il super radio comando digitale vedo di mettermi all'opera appena mi arrivano gli altri chip mrf24j40 e vedo prima di tutto qual'è l'effettivo range di funzionamento e poi potrei fare le prime prove comandando l'aereo con il radio comando e utilzzando il microcontrollore con mrf24 solo per leggere i dati dai sensori...

lucriz 03 aprile 10 23:08

molto interessante il discorso radio.
Avevo un'idea simile alla tua, solo che più focalizzata su lato software (faccio il programmatore, quindi....).
La mia idea era di sfruttare un modulo ppm esistente, in modo da avere la parte RF pronta e funzionante, in questo modo potrei concentrarmi sullo sviluppo del software della radio, che poi è la parte più complessa.
L'idea di partire da zero anche per la parte RF va bene, ma prima di volare in sicurezza credo che impiegherai un bel po di tempo.

Poi se vuoi pure controllare il motore con elettronica tua i tempi si allungheranno ancora, io per mettere a punto un ESC brushed ci ho messo quasi un mese dopo il termine della costruzione.
Per un brushless poi non so proprio.

Comunque auguri e tienici informati sugli sviluppi.

RonGraham 04 aprile 10 00:21

grazie, ancora il progetto non è stato definito e non ho nemmeno una bozza... devo ancora documentarmi per bene sui motori brushless e su come controllarli, in ogni modo pensavo di fare un passo alla volta partendo dai sensori (altimetro, accelerometro, tachimetro, giroscopio e microcamera) poi verrà il momento del controllo dell'aereo quindi brushless e servomotori.

I servomotori li ho già usati molto tempo fa e per quello che mi ricordo vengono controllati del tutto in digitale, mentre i brushless non li ho mai usati, so soltanto che bisogna controllare tutti gli elettromagneti del motore per invertire il campo magnetico e sincronizzare il tutto con un sensore effetto hall...credo però che questo lavoro sia svolto da una scheda interna al motore, e per controllare questa scheda credo basti inviare un segnale pwm al motore...cmq questo problema lo affronterò dopo aver sistemato i sensori a bordo del velivolo :D

lucriz 05 aprile 10 10:00

Motor Control Design Center

per i brushless e i pic microchip puoi partire certamente da li.
niente sensori di hall però, misuri la back emf dell'avvolgimentyo non alimentato e individui il passaggio per lo zero, quindi cambi l'alimentazione degli avvoglimenti in base a una tabella.
c'è pure un utente su questo forum, che ha seguito il progetto ed è riuscito a far muovere un brushless.

I servi sono una bazzecola, un impulso da 0,75 a 2.25 ms ogni 22 ms.

RonGraham 05 aprile 10 17:01

si chiaramente essendo senza sensore il motore lo controllo come dici tu...
comunque quella è la parte secondaria... in pratica il vero scopo di questo progetto è avere un sistema di controllo con l'aereo del tutto digitale, in modo da mandargli da terra dei comandi sotto forma di byte, insomma quasi come fosse un robot per internderci... all'inizio quindi userò sicuramente il regolatore originale per il motore...diciamo che il primo passo è sostituire trasmettitore e ricevitore con due moduli wireless 802.15.4 tipo zigbee e basta...

tornando al discorso motore...se uso un normale regolatore comprato in negozio posso controllarlo con un normalissimo segnale pwm vero?

scusate se faccio domande magari molto ovvie per voi aeromodellisti, ma ancora non so bene come funzionano i circuiti usati nell'aeromodellismo e mi sto documentando :wink:

LONGFLYER 05 aprile 10 17:12

Citazione:

Originalmente inviato da RonGraham (Messaggio 2006738)
si chiaramente essendo senza sensore il motore lo controllo come dici tu...
comunque quella è la parte secondaria... in pratica il vero scopo di questo progetto è avere un sistema di controllo con l'aereo del tutto digitale, in modo da mandargli da terra dei comandi sotto forma di byte, insomma quasi come fosse un robot per internderci... all'inizio quindi userò sicuramente il regolatore originale per il motore...diciamo che il primo passo è sostituire trasmettitore e ricevitore con due moduli wireless 802.15.4 tipo zigbee e basta...

tornando al discorso motore...se uso un normale regolatore comprato in negozio posso controllarlo con un normalissimo segnale pwm vero?

scusate se faccio domande magari molto ovvie per voi aeromodellisti, ma ancora non so bene come funzionano i circuiti usati nell'aeromodellismo e mi sto documentando :wink:

Per un sistema davvero digitale .. guarda lo S.BUS della Futaba (pag.14) http://downloads.hobbico.com/catalog...ba-catalog.pdf .. e prendere così un esempio di connessione digitale rx-servo .. :wink:
Buon lavoro !!!

RonGraham 05 aprile 10 18:16

guarda al momento sono con una connessione schifosa e non riesco a scaricare il pdf, comunque per i servi dovrei avere dei manuali anch'io da qualche parte perchè li ho usati 4-5 anni fa e ora non mi ricordo più niente...

Comunque ora ho iniziato a fare una bozza del progetto e piano piano stanno uscendo fuori un casino di funzioni da implementare sulla radio, ad esempio non avevo pensato al fatto che in fase di test la connessione digitale potrebbe cadere (può facilmente succedere) e al velivolo che succede??? si dovrebbe implementare una funzione che fa andare dritto l'aereo e lo mantiene a quota stabile finchè poi non si riprende la connessione, o addirittura sarebbe meglio che l'aereo virasse e tornasse indietro... qui c'è da divertirsi con l'accelerometro... ora posto un piccolo schema del progetto

LONGFLYER 05 aprile 10 18:26

Citazione:

Originalmente inviato da RonGraham (Messaggio 2006786)
guarda al momento sono con una connessione schifosa e non riesco a scaricare il pdf, comunque per i servi dovrei avere dei manuali anch'io da qualche parte perchè li ho usati 4-5 anni fa e ora non mi ricordo più niente...

Comunque ora ho iniziato a fare una bozza del progetto e piano piano stanno uscendo fuori un casino di funzioni da implementare sulla radio, ad esempio non avevo pensato al fatto che in fase di test la connessione digitale potrebbe cadere (può facilmente succedere) e al velivolo che succede??? si dovrebbe implementare una funzione che fa andare dritto l'aereo e lo mantiene a quota stabile finchè poi non si riprende la connessione, o addirittura sarebbe meglio che l'aereo virasse e tornasse indietro... qui c'è da divertirsi con l'accelerometro... ora posto un piccolo schema del progetto

Normalmente si programma una funzionalità definita fail-safe.
Questa funzionalità può offrire l'ultimo comando ricevuto come buono o applicarne uno diverso nel caso la ricevente riconosca un disturbo ..
Ovviamente, meglio sarebbe se il velvolo avesse l'intelligenza sufficiente per non perdere l'assetto ma obbligherebbe ad una sorta di computer di bordo che aggiungerebbe peso ma soprattutto costi.
A riguardo, si può aggiungere che statisticamente le interferenze sono di tipo breve e sporadico e non l'opposto: lunghe e frequenti da obbligare appunto la scelta costosa sopracitata ..

RonGraham 05 aprile 10 18:59

si esatto... solo che questo avviene con i normali radiocomandi che trasmettono in FM... il problema con gli zigbee e che la connessione che si stabilisce è una connessione "tipo internet" quindi se la connessione cade (magari la distanza è troppa e il segnale è perso) bisogna ristabilire la connessione tra TX e RX il che richiede un po' di secondi...

per quanto riguarda l'intelligenza artificiale il computer di bordo c'è già: è il pic che gestisce la radio e i sensori che è sufficiente per leggere dall'accelerometro e gestire i motori tutto in automatico...chiaramente poi il lato software non è così semplice come il lato hardware

LONGFLYER 05 aprile 10 19:04

Citazione:

Originalmente inviato da RonGraham (Messaggio 2006814)
si esatto... solo che questo avviene con i normali radiocomandi che trasmettono in FM(-PCM!)... il problema con gli zigbee e che la connessione che si stabilisce è una connessione "tipo internet" quindi se la connessione cade (magari la distanza è troppa e il segnale è perso) bisogna ristabilire la connessione tra TX e RX il che richiede un po' di secondi...

per quanto riguarda l'intelligenza artificiale il computer di bordo c'è già: è il pic che gestisce la radio e i sensori (intendi la ricevete?) che è sufficiente per leggere dall'accelerometro e gestire i motori tutto in automatico...chiaramente poi il lato software non è così semplice come il lato hardware

Infatti! Credo che troppo software dovrai realizzare prima di ottenere uno stato accettabile .. :wink:

RonGraham 05 aprile 10 19:05

ah senza dubbio...poi la fase di test sarà tragica mi sa...

LONGFLYER 05 aprile 10 19:07

Citazione:

Originalmente inviato da RonGraham (Messaggio 2006820)
ah senza dubbio...poi la fase di test sarà tragica mi sa...

Cmq. di certo sarebbe una bella esperienza che se presa senza fretta potrebbe anche portare a qualcosa di "rivendibile" .. oggi inizia a prendere piede anche l'hardware open .. oltre al più conosciuto open-source per il software ..

RonGraham 05 aprile 10 19:37

be'...prima di brevettare e vendere qualcosa bisogna fare un lavoro con i fiocchi... ne so qualcosa visto che questo è il mio lavoro (sono un ing. elettronico) quindi mi "accontento" ( :D ) di realizzare un qualcosa di funzionante e di mettere il progetto a disposizione di altri... sto ancora lavorando sulla bozza del progetto così la posto...

LONGFLYER 05 aprile 10 19:43

Citazione:

Originalmente inviato da RonGraham (Messaggio 2006849)
be'...prima di brevettare e vendere qualcosa bisogna fare un lavoro con i fiocchi... ne so qualcosa visto che questo è il mio lavoro (sono un ing. elettronico) quindi mi "accontento" ( :D ) di realizzare un qualcosa di funzionante e di mettere il progetto a disposizione di altri... sto ancora lavorando sulla bozza del progetto così la posto...

Che tu fossi una persona per nulla sprovveduta (il fatto di essere ing. non è sufficiente a fare un progettista ma certamente aiuta .. la passione è l'altro imprescindibile ingrediente ..) me ne ero accorto, eventuali tue "lacune informative" sono a mio avviso normalissime e colmabili anche in tempi brevi da gente "allenata" .. :wink:

Brevettare .. No No! Non era questo il mio intendimento, semmai proprio quello di raggiungere un obiettivo da poter rivolgere verso altri interessati .. in campo sw. LINUX nacque da simili proponimenti .. :)

Ripeto .. buon lavoro e complimenti .. :wink:

RonGraham 05 aprile 10 20:15

1 Allegato/i
si certo, infatti dicendo che sono un ingegnere elettronico non intendevo dire che sono in grado di brevettare un qualcosa in 10 minuti, anzi proprio il contrario, cioè di quanto sia difficile brevettare qualcosa del genere! In ogni modo la passione per l'elettronica ce l'ho da sempre quindi è quello il mio punto forte! e comunque le lacune informative ci sono e come, perchè si che sono un ing elettronico, però non mi sono mai documentato sull'elettronica degli aeromodelli (cosa che sto facendo in questi giorni) :wink:, quindi ogni vostro consiglio e spiegazione su come funziona l'elettronica a bordo degli aerei per me è importantissimo.

torniamo al progetto :D

Il microcontroller sarà un PIC32 o PIC18 (si deciderà in base al rapporto consumo prestazioni...).
[EDIT]
I PIC32 consumano parecchio, sono orientato verso un PIC18f87J50, forse si potrebbe prendere in considerazione un Digital Signal Processor, ma direi che consuma molto più del PIC18..
[/EDIT]

La comunicazione wireless è affidata al chip MRF24J40 della Microchip.

I sensori analogici (temperatura e accelerometro) si interfacciano tramite l'ADC, mentre per i motori (servi e motore principale) userò il PWM, in realtà controllerò lo speed controller del motore, non il motore direttamente.

Poi stavo pensando come leggere altezza e velocità... ho visto che i sensori di pressione costano un po' (una decina di euro) e volendo fare un calcolo preciso dovrei usare anche un sensore di temperatura e tenendo conto che un giorno vorrei fare anche FPV ho pensato di prendere subito un GPS così risolvo il problema, tanto ormai te li tirano dietro i gps

LONGFLYER 05 aprile 10 20:27

Citazione:

Originalmente inviato da RonGraham (Messaggio 2006898)
si certo, infatti dicendo che sono un ingegnere elettronico non intendevo dire che sono in grado di brevettare un qualcosa in 10 minuti, anzi proprio il contrario, cioè di quanto sia difficile brevettare qualcosa del genere! In ogni modo la passione per l'elettronica ce l'ho da sempre quindi è quello il mio punto forte! e comunque le lacune informative ci sono e come, perchè si che sono un ing elettronico, però non mi sono mai documentato sull'elettronica degli aeromodelli (cosa che sto facendo in questi giorni) :wink:, quindi ogni vostro consiglio e spiegazione su come funziona l'elettronica a bordo degli aerei per me è importantissimo.

torniamo al progetto :D

Il microcontroller sarà un PIC32 o PIC18 (si deciderà in base al rapporto consumo prestazioni...). La comunicazione wireless è affidata al chip MRF24J40 della Microchip.

I sensori analogici (temperatura e accelerometro) si interfacciano tramite l'ADC, mentre per i motori (servi e motore principale) userò il PWM, in realtà controllerò lo speed controller del motore, non il motore direttamente.

Poi stavo pensando come leggere altezza e velocità... ho visto che i sensori di pressione costano un po' (una decina di euro) e volendo fare un calcolo preciso dovrei usare anche un sensore di temperatura e tenendo conto che un giorno vorrei fare anche FPV ho pensato di prendere subito un GPS così risolvo il problema, tanto ormai te li tirano dietro i gps

Una curiosità: hai pensato anche alla bidirezionalità del link 2.4Ghz?
Immagino che lo sia di base e quindi intendo la sua gestione, non conoscendo nello specifico il PIC non vorrei possa essere insufficiente e quindi poi riferirsi a qualche ARM ..
Ad es. il log dei dati letti avviene sulla Tx o sulla Rx?
Immagino si possa pensare direttamente sulla Tx giacchè bidirezionale, però bisogna vedere se i dati che arrivano alla Tx possono considerarsi in "tempo reale" e quindi poi anche archiviati o solo appena sufficienti per aggiornare degli strumenti digitali su schermo Tx e quindi il log avviene sulla Rx senza alcuna perdita dati e con un'alta frequenza di registrazione .. ovviamente su supporto esterno, quale una SD ..

RonGraham 05 aprile 10 20:31

Il radiocomando che utilizzerà l'operatore è semplicemente un PIC con collegato il modulo wireless MRF24J40MA.

I PIC18/32 hanno interfaccia USB, quindi si collegano al PC senza problemi e dunque in teoria si potrebbe controllore l'aereo direttamente dal PC, come fosse un videogame...chiaramente si perde tutto il gusto... in ogni modo la mia idea è di controllare i movimenti dell'aereo con una radio normale, magari svuotata e riempita con i nuovi componenti; poi si utilizza il PC per inviare all'aereo comandi speciali scritti a riga di comando, ad esempio per settare le impostazioni dell'accelerometro e cose simili.

LONGFLYER 05 aprile 10 20:37

Citazione:

Originalmente inviato da RonGraham (Messaggio 2006918)
Il radiocomando che utilizzerà l'operatore è semplicemente un PIC con collegato il modulo wireless MRF24J40MA.

I PIC18/32 hanno interfaccia USB, quindi si collegano al PC senza problemi e dunque in teoria si potrebbe controllore l'aereo direttamente dal PC, come fosse un videogame...chiaramente si perde tutto il gusto... in ogni modo la mia idea è di controllare i movimenti dell'aereo con una radio normale, magari svuotata e riempita con i nuovi componenti; poi si utilizza il PC per inviare all'aereo comandi speciali scritti a riga di comando, ad esempio per settare le impostazioni dell'accelerometro e cose simili.

mmhhh .. vedo un pò di accrocchi se me lo consenti .. ma non potrebbe essere altrimenti, sei nella fase embrionale del progetto e le idee crescono e muoiono per dare posto ad altre più forti e precise .. :wink:

Tanto per aggiungerne una in più .. semmai se ne sentisse la mancanza .. la Apple ha presentato una idea (rappresentata anche qui sul forum) di controllo di un velivolo più vicino ad un elicottero ma che elicottero non è e controllabile dal un IPHONE attraverso dei movimenti nello spazio del medesimo e con la particolarità di vedere all'interno sempre del medesimo ciò che una telecamera posta sul velivolo vede .. pare sia una nuova piattaforma giochi .. ovviamente volanti :)
Se vuoi cerco il link e te lo passo ..

PS. nel frattempo vola anche con un radiocomando tradizionale in 2.4Ghz tipo Hitec Optic 6 che tra l'altro è già bidirezionale .. cosicchè provare di persona necessità e limiti .. di cui far tesoro .. :wink: (o anche Aurora 9 ..)

RonGraham 05 aprile 10 20:40

Citazione:

Originalmente inviato da LONGFLYER (Messaggio 2006909)
Una curiosità: hai pensato anche alla bidirezionalità del link 2.4Ghz?
Immagino che lo sia di base e quindi intendo la sua gestione, non conoscendo nello specifico il PIC non vorrei possa essere insufficiente e quindi poi riferirsi a qualche ARM ..
Ad es. il log dei dati letti avviene sulla Tx o sulla Rx?
Immagino si possa pensare direttamente sulla Tx giacchè bidirezionale, però bisogna vedere se i dati che arrivano alla Tx possono considerarsi in "tempo reale" e quindi poi anche archiviati o solo appena sufficienti per aggiornare degli strumenti digitali su schermo Tx e quindi il log avviene sulla Rx senza alcuna perdita dati e con un'alta frequenza di registrazione .. ovviamente su supporto esterno, quale una SD ..

Si, i moduli MRF24J40 sono bidirezionali. I PIC32 sono micro a 32 bit con frequenza di funzionamento a 80Mhz, sicuramente ci sono ARM più potenti, però non li ho mai usati, in ogni modo credo che un PIC dovrebbe bastare, anche un PIC18 andrà bene (spero).

Sinceramente la funzione di "scatola nera" pensavo di implementarla a terra, magari direttamente sul PC. In ogni modo il micro a bordo legge le informazioni dai sensori e fa quello che deve fare a bordo (tipo stabilizzazioni e simili) e poi invia in tempo reale su temperatura, altezza ecc.. con una frequenza non altissima. In realtà quello che farà il micro a bordo è inviare dati solo quando il nuovo dato campionato è diverso dal precedente inviato (es.: l'aereo invia temp=27,0°, se per 1 minuto la temp rimane entro 27,5° e 26,5° non c'è bisogno che mi invia di nuovo il dato per 100 volte...).

LONGFLYER 05 aprile 10 20:44

Citazione:

Originalmente inviato da RonGraham (Messaggio 2006929)
Si, i moduli MRF24J40 sono bidirezionali. I PIC32 sono micro a 32 bit con frequenza di funzionamento a 80Mhz, sicuramente ci sono ARM più potenti, però non li ho mai usati, in ogni modo credo che un PIC dovrebbe bastare, anche un PIC18 andrà bene (spero).

Sinceramente la funzione di "scatola nera" pensavo di implementarla a terra, magari direttamente sul PC. In ogni modo il micro a bordo legge le informazioni dai sensori e fa quello che deve fare a bordo (tipo stabilizzazioni e simili) e poi invia in tempo reale su temperatura, altezza ecc.. con una frequenza non altissima. In realtà quello che farà il micro a bordo è inviare dati solo quando il nuovo dato campionato è diverso dal precedente inviato (es.: l'aereo invia temp=27,0°, se per 1 minuto la temp rimane entro 27,5° e 26,5° non c'è bisogno che mi invia di nuovo il dato per 100 volte...).

Giusto! L'importante è mandare l'evento che a quel punto deve essere riferito ad un timestamp ..
Io cmq. dividerei in due macro funzionamenti: senza autocontrollo di bordo (come gli attuali sistemi commerciali) e con, se predisposto ..

RonGraham 05 aprile 10 20:44

si certo...all'inizio volerò con l'elettronica standard e piano piano aggiungo cose :D

Ora ho aperto un 3d in principianti per un po' di consigli per gli acquisti...

LONGFLYER 05 aprile 10 20:45

Citazione:

Originalmente inviato da RonGraham (Messaggio 2006937)
si certo...all'inizio volerò con l'elettronica standard e piano piano aggiungo cose :D

Ora ho aperto un 3d in principianti per un po' di consigli per gli acquisti...

Non tralasciare la sezione FPV .. :wink:

RonGraham 05 aprile 10 20:47

Citazione:

Originalmente inviato da LONGFLYER (Messaggio 2006935)
Giusto! L'importante è mandare l'evento che a quel punto deve essere riferito ad un timestamp ..
Io cmq. dividerei in due macro funzionamenti: senza autocontrollo di bordo (come gli attuali sistemi commerciali) e con, se predisposto ..

si esatto, l'autocontrollo parte nel caso in cui si perda il segnale (come ti dicevo prima) o se per esempio volessi stabilizzare il velivolo prima dell'atterraggio o volessi volare con il pilota automatico... altrimenti il velivolo lo controllo solo io da terra.

Tutto ciò si implementa via software e si possono fare tantissime prove senza problemi, perchè a livello software equivale a creare funzioni da chiamare oppure no...



EDIT:
Si per quanto riguarda l'FPV devo dire che mi sono appassionato moltissimo infatti sto seguendo vari forum, tra cui un forum spagnolo di FPV (non so se posso postare il link della concorrenza :D) dove ci sono dei tipi che volano a 7-8km di distanza e 1km di altezza...

LONGFLYER 05 aprile 10 20:54

Citazione:

Originalmente inviato da RonGraham (Messaggio 2006945)
si esatto, l'autocontrollo parte nel caso in cui si perda il segnale (come ti dicevo prima) o se per esempio volessi stabilizzare il velivolo prima dell'atterraggio o volessi volare con il pilota automatico... altrimenti il velivolo lo controllo solo io da terra.

Tutto ciò si implementa via software e si possono fare tantissime prove senza problemi, perchè a livello software equivale a creare funzioni da chiamare oppure no...

Ok! Guarda qui qualche idea ..
http://www.baronerosso.it/forum/elim...ml#post1871486
AR Drone Parrot. Il drone-elicottero con videocamera… | Il tuo iPhone 3G 3GS

:)

PS. .. posta .. posta ..

RonGraham 05 aprile 10 21:10

Codice:

COSA DEVE FARE IL COMPUTER DI BORDO:

->        Il modulo 2,4Ghz TX/RX:
        di base è impostato in modalità di ricezione per ricevere i comandi da terra.

->        Il micro nel suo ciclo di funzionamento legge il comando preso dal modulo tx/rx
        e a seconda del comando esegue un'operazione e legge i dati dai sensori

      ESECUZIONE COMANDI (comando : operazione)
     
        ->Aumenta velocità : aumenta il duty cyclePWM che controlla lo speed controller
   
              ->Diminuisci velocità : diminuisce il duty del PWM

              ->Controlli di virata : controlla in PWM i servi

              ->Sgancia missile : innesca il missile (altra mia passione :D)
 
              ->Comandi particolari per settaggi vari (arrivano dal PC)

      LETTURA SENSOSRI

              -> Il micro legge i tutti i sensori

                -> in memoria ha delle soglie in base alle quali invia o meno i dati
                  a terra (se la temperatura è variata di 0,2° dal precedente invio
                  a terra, non c'è bisogno di riinviare il dato e risparmiamo risorse :D )

                -> se necessario effettua in automatico delle operazioni ("intelligenza
                  artificiale") di stabilizzazione di diminuzione motore se la temp
                  è troppo alta ecc...

      IL CICLO RICOMINCIA CON LA LETTURA DEI COMANDI DAL MRF24J40


dtruffo 05 aprile 10 21:20

Citazione:

Originalmente inviato da RonGraham (Messaggio 2006898)
si certo, infatti dicendo che sono un ingegnere elettronico non intendevo dire che sono in grado di brevettare un qualcosa in 10 minuti, anzi proprio il contrario, cioè di quanto sia difficile brevettare qualcosa del genere! In ogni modo la passione per l'elettronica ce l'ho da sempre quindi è quello il mio punto forte! e comunque le lacune informative ci sono e come, perchè si che sono un ing elettronico, però non mi sono mai documentato sull'elettronica degli aeromodelli (cosa che sto facendo in questi giorni) :wink:, quindi ogni vostro consiglio e spiegazione su come funziona l'elettronica a bordo degli aerei per me è importantissimo.

torniamo al progetto :D

Il microcontroller sarà un PIC32 o PIC18 (si deciderà in base al rapporto consumo prestazioni...).
[EDIT]
I PIC32 consumano parecchio, sono orientato verso un PIC18f87J50, forse si potrebbe prendere in considerazione un Digital Signal Processor, ma direi che consuma molto più del PIC18..
[/EDIT]

La comunicazione wireless è affidata al chip MRF24J40 della Microchip.

I sensori analogici (temperatura e accelerometro) si interfacciano tramite l'ADC, mentre per i motori (servi e motore principale) userò il PWM, in realtà controllerò lo speed controller del motore, non il motore direttamente.

Poi stavo pensando come leggere altezza e velocità... ho visto che i sensori di pressione costano un po' (una decina di euro) e volendo fare un calcolo preciso dovrei usare anche un sensore di temperatura e tenendo conto che un giorno vorrei fare anche FPV ho pensato di prendere subito un GPS così risolvo il problema, tanto ormai te li tirano dietro i gps

Mi spiace, ma stai partendo col piede sbagliato. Come ing dovresti sapere che un GPS non e' assolutamente affidabile sulla quota e in piu' il suo margine di errore, considerate le quote a cui vola un modello, e' assultamente troppo elevato. Inoltre la velocita' che serve conoscere di un mezzo volante non e' quella rispetto al suolo ma quella rispetto all'aria. Quindi ... GPS bocciato. Fontamentale un Pitot per la velocita' e un barometrico (compensato) per quota e vario.....

Il progetto puo' essere molto interessante, ma ti consiglio di partire prima dalla dinamica del volo....


Tutti gli orari sono GMT +2. Adesso sono le 18:19.

Basato su: vBulletin versione 3.8.11
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
E' vietata la riproduzione, anche solo in parte, di contenuti e grafica. Copyright 1998/2019 - K-Bits P.I. 09395831002