First Bot Project
Studio teorico/pratico


| <--Indietro | Inizio | Avanti--> |

Lunedì 12-2-2001
Prova manuale del modulatore PWM.
Per verificare il funzionamento del modulatore PWM ad amplificatori operazionali ho realizzato il seguente circuito:

Con i valori riportati la frequenza dell'oscillatore e' di circa 4670 Hz, l'onda triangolare e' centrata sullo zero ed ha un' ampiezza di 6Vpp. Gli operazionali sono tutti contenuti in un TL084. Il BD677A e' un darlington 45V 4A.

Il circuito funziona, pero' come temevo la rotazione del motore e' fortemente influenzata dal carico che gli si applica. Questo significa che sarebbe difficile far andare alla stessa velocita' anche due motori identici, figuriamoci poi usandone due con rapporto di riduzione differente.... qualcosa mi dice che ancora prima di partire gia' le cose si complicano, e mi sa che devo considerare la possibilita' del controllo ad anello chiuso sulla velocita' della ruota.

L'unico modo alla mia portata per realizzare un encoder di velocita' e' stampare un bel cerchio a settori da applicare sul lato interno delle ruote da leggere otticamente tramite una coppia led/fotodiodo (shaft encoder):


Picture by http://mechatronics.mech.northwestern.edu/mechatronics/design_ref/sensors/reflectors.html

Il segnale rilevato dal fotodiodo va amplificato e squadrato in modo da ottenere degli impulsi di transizione di frequenza proporzionale alla velocita'. Questi impulsi, se sono troppo stretti, vanno inviati a un timer per essere allargati, seguito poi da un passa basso per ottenerne il valore medio. La tensione cosi' ottenuta e' il segnale di retroazione da inviare all'amplificatore di errore che comanda il modulatore PWM.

Con un sistema come questo dovrebbe essere possibile fare in modo che entrambe le ruote si muovano alla stessa velocita' sotto qualsiasi condizione di carico... pero' e' necessario che le ruote siano gia' pronte con l'encoder ottico, e qui siamo all'altra meta' del problema, cioe' la realizzazione meccanica che e' ancora di piu' in alto mare.

Giovedì 15-2-2001

Ho provato a realizzare l'alimentatore da +12 a +-8 ma con la tensione negativa non ci siamo. Ho pertanto deciso di alimentare gli operazionali a +-5V con il seguente circuito:

Con i componenti riportati il 555 oscilla a circa 7Khz e all'entrata del 7905 ci sono -8,6V (con il carico applicato).


Per quanto riguarda le ruote, prendendo idea dalla figura seguente, ho provato a realizzarne una in compensato da 4 mm di spessore e 3,5 cm di diametro..... ma il risultato non mi piace per niente, tra l'altro senza tornio fare un cerchio perfetto non e' semplicissimo.... Inoltre le vorrei da almeno 5 cm di diametro ma purtroppo mi risulta che non ci sono guarnizioni o-ring cosi' grandi... ho pensato a un'alternativa, ma il risultato sarebbe quello di una gomma sgonfia per cui lascio perdere... prima o poi mi capiteranno tra le mani delle ruote "vere" e se ne riparlera'. Poi ho preso la batteria al piombo... e quella da sola pesa gia' piu' di mezzo chilo.... mi sa che non solo le ruote devono avere un minimo di robustezza, ma che anche lo sforzo sui perni dei motori non e' indifferente....


Picture by http://www.seattlerobotics.org/encoder/200002/easywheels.html

Venerdì 16-2-2001
Lettura ottica shaft encoder
Per provare la lettura ottica di un disco a settori mi sono procurato un diodo led all'infrarosso (TSUS5202) e un fotodiodo pin con filtro per l'infrarosso (BP104). Ho inoltre scritto un programma Delphi per stampare i settori, il cerchio di carta l'ho fatto di 7 cm di diametro, con 60 settori neri larghi circa quanto il fotodiodo. Il cerchio l'ho poi  incollato a un secondo cerchio di cartoncino montato sul servomotore.

Pensavo che la schermatura contro la luce ambiente fosse molto piu' forte.... invece si rilevano benissimo lo stesso i 50 Hz delle luci a incandescenza e i passaggi di un fascio di luce prodotto con una torcia elettrica. Poi ero convinto che il fotodiodo dovesse guardare i settori da molto vicino con un'illuminazione infrarossa diffusa posta a poca distanza, invece e' risultato piu' efficace illuminare i settori con il led da molto vicino, e rilevare il segnale riflesso con il fotodiodo anche da piu' distante....

Ho saldato i diodi su un rimasuglio di basetta millefori fissandola poi con del fil di ferro al servomotore e facendo in modo che il disco si trovasse a pochi mm dai diodi. Su Vout ho misurato un segnale grossolanamente sinusoidale di circa 0,6 Vpp, affetto pero' da rumore a 50Hz e altri disturbi dovuti soprattutto all'asse di rotazione del disco leggermente storto e alla sua geometria non perfetta (il famoso rumble dei dischi in vinile).

Da quello che ho visto mi sa che la semplice misura del segnale riflesso non e' un sistema valido, o si mette un passabanda di ordine elevato per il rumble (ma i 50 Hz continuano a dar fastidio perche' cadono nella banda utile), oppure si ricorre alla modulazione del led.... con relativa necessita' di un circuito di demodulazione dopo il fotodiodo..... mi pareva troppo semplice...

In attesa di trovare delle ruote adatte potrei intanto studiarmi la modulazione/demodulazione IR... che servira' poi in modo pesante per l'obstacle avoidance....... (che pero' visto dalle difficolta' di adesso sembra sempre piu' lontano nel futuro.....). Per lo shaft encoder si potrebbero in realta' anche studiare soluzioni piu' "meccaniche", come dischi scanalati o sensori a effetto Hall, ma rimando questa decisione a dopo aver visto come funziona la modulazione.
 
 

| <--Indietro | Inizio | Avanti--> |


Pagina realizzata da Claudio Fin  -  Ultimo aggiornamento 14-2-2002