TIMER MINIMO
omblau@gmail.com
omblau@gmail.com
Descrizione di un TIMER elettronico basato su Arduino per caratterizzare orologi a pendolo.
La funzione primaria di questo timer basato sulla piattaforma ARDUINO Leonardo e' quella di misurare il periodo del pendolo con una risoluzione di 4 μs, con l'accuratezza del quarzo del microprocessore (si consiglia il modello Leonardo, ARDUINO UNO non e' adatto, non utilizza un quarzo come clock). La determinazione assoluta del periodo e' tipicamente entro +- 10 μs, e' pero' facile tarare il timer con un oscillatore esterno piu' preciso di quello di Arduino portandola quindi a 4 μs. Non e' difficile ridurre la risoluzione al limite del periodo del clock (60 ns, sperimentata con successo dall'autore, o superiore con modelli Arduino ad alta velocita' di clock), per rendere il codice di piu' facile lettura s'e' preferito mantenerla a 4 μs.
La determinazione del periodo e' ottenuta registrando i tempi dell'interruzione della luce di un LED da parte di un corpo opaco di dimensioni opportune (tipicamente 2-3 mm). Detto ostacolo dev'essere solidale con la lente del pendolo e durante l'oscillazione si inserisce fra i due bracci del photointerrupter.
Oltre al periodo di puo' misurare la velocità massima del pendolo ( precisione =.01% ), e dalla velocita' si puo' derivare l'ampiezza massima dell'oscillazione e il Q del pendolo.
Lo stesso processore puo' acquisire contemporaneamente anche temperatura (+ - 0.1 ° C) e pressione atmosfericala (+ - 2mb). Non è necessaria alcuna esperienza precedente con la programmazione di Arduino.
Come fotointerruttore si consiglia l'ultilizzo di PHOTOINTERRUPT DETECTOR + PHOTOINTERRUPTER BOARD che, alimentato dallo stesso arduino, fornisce in uscita un segnale digitale compatibile con Arduino.
COMPONENTI :
1) ARDUINO LEONARDO + cavo USB
2) PHOTOINTERRUPT DETECTOR + PHOTOINTERRUPTER BOARD consigliati + cavi per Arduino
3) SENSORE TEMPERATURA E PRESSIONE (opzionale) consigliato SPARKFUN MS5637 + cavi per Arduino
4) SET di PROGRAMMI ARDUINO:
a) LEO_Blink - per verificare l' installazione corretta di Arduino
b) LEO_BAROM_MS56237 - per verificare l' installazione corretta dei sensori di temperatura e pressione
c) LEO_PERIOD&SPEED - la sola sezione timer
d) LEO_ENCHILADA - timer + temperatura e pressione
5) Istallazione ARDUINO IDE per la gestione/programmazione del microproessore (gratuito)
6) Installazione di software per dialogare con la porta seriale di Arduino, consigliato TERATERM (gratuito)
7) software per manipolazione e grafica dei dati, consigliato LIBREOFFICE CALC (gratuito)
OPERAZIONE DEL TIMER
Collegare col cavo USB Arduino al PC, caricare il programma LEO_Blink su Arduino attraverso l'Arduino IDE e verificarne il funzionamento regolare descritto nei commenti all'inizio del testo del programma (IDE).
Dopo aver cablato Arduino con il fotointerruttore* descritto sopra al punto 2
*In order to stabilize power supply line, connect a by-pass capacitor of more than 0.01μF between VCC and GND near the device.
caricare attraverso l'Arduino IDE il programma LEO_PERIOD_SPEED, verificarne il funzionamento con un ostacolo qualsiasi che interrompa il fascio del foto-interruttore, visualizzando i dati sul Monitor Seriale (115200 baud) dell'Arduino IDE.
Nella figura qui sopra la prima colonna rappresenta il time stamp, comunicato dal PC se l'opzione "show timestamp" e' stata selezionata nel Monitor seriale, la seconda colonna mostra il semi-periodo dell oscillazione in μs, la terza il tempo dell'interruzione del segnale ottico in μs.
Posizionare il sensore in modo che l'ostacolo sia centrato sul fascio ottico a pendolo fermo, attivando il pendolo misurare i semi-periodi ed il tempo di interruzione con il pendolo in moto.
TERATERM e ACQUISIZIONE DATI SU UN DOCUMENTO DI TESTO
Lanciare Teraterm, chiudere il monitor seriale di Arduino IDE, verificare sull'IDE la porta alla quale e' collegato Arduino, vedi sotto
verificate la regolare connessione di Teraterm con Arduino
le misure devono apparire, periodo per periodo, sullo schermo nero di Teraterm
Creare il log di teraterm per dare un nome al documento nel quale inserire i dati raccolti e scegliere la cartella dove salvarlo:
Come per il monitor seriale di Arduino, selezionare nel Log la presenza del time stamp nel documento.
Il documento sara' di tipo .csv, dati sono separati da una virgola (il separatore decimale di arduino e' un punto).
Il documento appena creato puo' essere aperto da un programma di pagina elettronica o spreadsheet, come Libreoffice CALC
Nella selezione dell'importazione di CALC tra i separatori selezionare Comma, Space e la parantesi quadra chiusa ( ] ) verificando nella finestra in basso che i dati compaiano separati in colonne diverse
Alla pagina ANALISI DATI DEL TIMER si forniscono alcuni esempi di possibili quantita' fisiche che possono essere calcolate a partire dai dati raccolti da questo Timer.