Go Down

Topic: 3 External Interrupt per misurare velocità rotazione di 3 assali - Quale Arduino (Read 127 times) previous topic - next topic

Salve a Tutti!

Un mio Amico mi ha chiesto se era possibile acquisire la velocità di rotazione di 3 assali in contemporanea (e confrontare tali letture tra di loro).  Dalla mia limitata esperienza sul tema, ho pensato di usare gli Interrupt esterni, ma ho solo Arduino UNO R3 (una versione SMD, una DIL e un PCB plug-in con il più prestante Atmega1284P che si inserisce al posto del 328P DIL) e che io sappia, il 328P ha solo INT0 e INT1 come pin interrupt esterni.

Ho visto che la MICRO (che usa un Atmega16/32U4) ne ha ben 4, ma INT2 e INT3 sono condivisi con RX e TX della seriale, quindi se dovessi "reclutare" uno di questi pin, perderei il relativo pin Seriale. Non sarebbe un problema perdere RX, mentre TX e indispensabile, ma ovviamente, sarebbe meglio non perdere la seriale affatto, non si sa mai di doverne avere bisogno.

Quindi a questo punto, non mi resta che la MEGA2560, che però per questa applicazione, mi sembra esagerata! ma di pin Interrupt esterni ne ha ben 6.

La mia domanda (ho molti dubbi in testa) mi conviene usare la MICRO e sacrificare RX o meglio non rischiare e prendere una MEGA2560? 

Esistono alternative "Arduinesche" facili da implementare e a costo abbordabile che non ho valutato?

La frequenza di campionamento massima e di meno di 300 Hz, quindi pienamente all'altezza anche della UNO R3, per cui non credo sia un problema, semmai, lo sarà impostare i prescaler giusti che mi consentiranno di misurare gli intervalli di tempo tra segnali in tutto l'arco di giri di questi assali, giusto?


Grazie in Anticipo a Tutti
"The only way to do great work is to love what you do. If you haven't found it yet, keep looking. Don't settle" Steve Jobs

"Se gommo tiene, io vince gara. Se gommo non tiene, io come bomba dentro montagna." Markku Alen

gpb01

Esistono alternative "Arduinesche" facili da implementare e a costo abbordabile che non ho valutato?
Esiste, QUESTA ... hai i tuoi 3 int (IN0, INT1 ed INT2) e , anche utilizzandoli tutti, comunque una delle due seriali (TX0 e RX0) ti resta utilizzabile ... ::)

Guglielmo
Search is Your friend ... or I am Your enemy !

Grazie Guglielmo!!

Mi hai dato una splendida notizia! io ho una scheda che si inserisce in una UNO R3 (ma anche Duemilanove e Diecimila se non sbaglio) al posto del Atmega328P e onboard ha un Atmega1284! Sto studiando i dati disponibili per capire, se hanno tirato fuori tutti i pin hardware disponibili (se non ricordo male, si), questa è la scheda in questione, credi che potrebbe funzionare? :)

Avevo proprio perso di vista INT2, ed infatti, mi ricordo che la presi per testare proprio delle cose che avrebbero richiesto molti INT esterni (per progetti ormai arenati da anni :smiley-confuse: ).

Comunque, perfetta idea mi hai dato, così magari posso sviluppare una prima versione sul mio hardware (Arduino UNO*PRO la chiamano :) ) e poi ordino quella che mi hai indicato, la vedo più indicata per il progettino che mi hanno "affibbiato" :D

Grazie Mille!

Antonio
"The only way to do great work is to love what you do. If you haven't found it yet, keep looking. Don't settle" Steve Jobs

"Se gommo tiene, io vince gara. Se gommo non tiene, io come bomba dentro montagna." Markku Alen

Go Up