I ragazzi del sito Elettronica Open Source hanno pubblicato la traduzione della guida (pubblicata da tre studenti dell’università americana Cornell) per la realizzazione di una macchina telecomandata che riesce a muoversi da sola ed evitare scontri. Un progeto imperdibile per tutti i modellisti appassionati di robotica.
“Partiamo dal software di controllo del sensore di prossimità. Tutto il codice relativo a tale funzionalità è contenuto nella funzione speedTask, il link per scaricare il codice è alla fine dell’articolo. Anche in questo caso bisogna sacrificare la precisione in nome della rapidità di risposta. L’analisi dai dati, che include conversione da analogico a digitale ed interpretazione degli stessi per capire se la macchia è troppo vicina ad un ostacolo devono essere svolti molto rapidamente.
Effettuando una conversione AD utilizzando il convertitore del microcontrollore i dati ottenuti sono processati con un comparatore di soglia. Se il segnale convertito in digitale proveniente dal sensore è sotto la soglia allora non ci sono ostacoli in prossimità, altrimenti per evitare lo scontro contro un ostacolo si rallenta fino a fermare completamente il modellino.
La scelta della soglia è un punto critico poiché dovrà essere tale da permettere di fermare in tempo la macchina ma non dovrà intervenire troppo presto a seguito di ostacoli che non costituisco un problema immediato poiché distanti.
Per quanto riguarda la gestione della telecamera invece, buona parte del codice è dedicato alla gestione dei segnali di controllo di questa, avendo risolto il problema della elaborazione dei dati provenienti dalla telecamera nel precedente articoli in hardware per ottimizzare al meglio i tempi di esecuzione.
L’algoritmo per il riconoscimento del percorso partendo dai dati forniti dalla telecamera è un punto cruciale per la gestione dell’intero sistema. Infatti per convertire il flusso di dati proveniente dalla telecamera in tempi rapidi, come visto nel precedente articolo, abbiamo dovuto sacrificare l’accuratezza del risultato. In pratica i dati a disposizione del microcontrollore od il modo in cui il microcontrollore “vede” il percorso è mostrato nella figura sottostante, in cui si possono distinguere le linee del percorso da seguire sullo sfondo nero.
Continua a leggere l’articolo su Elettronica Open Source.
Per codice, schemi e info aggiuntive clicca qui.
Lascia un commento