Pensato per essere una macchina completamente autonoma, il robot si basa su una raspberry Pi 3.
In questo modo, il robot è in grado di essere programmato ed eseguire il proprio software senza l'ausilio di elaboratori esterni.
Questa scelta garantisce inoltre la portabilità su qualunque altro sistema Linux-based per progetti futuri.
Videocamera che rende possibile il riconoscimento degli oggetti e dei punti d'interesse dell'ambiente circostante.
La versione 1.3 è quella che, nei nostri scenari di utilizzo, garantisce la miglior resa in rapporto al costo.
L'interfaccia software tra il robot e la telecamera è basata sulle librerie OpenCV 3.
Due ruote, ciascuna gestita da un motore DC, sono sufficienti per gestire i movimenti del robot basati su rotazioni e spostamenti in linea retta.
Poiché motori di questo tipo hanno solo due stati (alto e spento), per dosare la velocità sono necessarie tecniche di PWM (Pulse Width Modulation).
L'utilizzo di due sole ruote motrici migliora i consumi e snellisce la componentistica necessaria.
Il ball caster è impiegato come terzo punto d'appoggio nei robot con 2 ruote. É composto da una piccola sfera d'acciaio che ruota all'interno di una struttura di plastica.
A differenza delle soluzioni basate su ruotino passivo, una soluzione di questo tipo minimizza gli errori di traiettoria dovuti alla posizione iniziale e a irregolarità del suolo.
Sensori che rilevano ostacoli a brevi distanze grazie all'azione combinata di un trasmettitore IR, che invia un segnale a infrarossi, e un ricevitore IR, il quale ha il compito di rilevarlo.
Data la loro imprecisione e il costo esiguo, ne sono presenti diverse unità.
La distanza è compresa tra 2 e 30cm e si imposta regolando un potenziometro.
Sensore che rileva ostacoli a una distanza compresa tra 2 e 400cm.
Il sonar emette onde sonore e misura il tempo che impiegano a ritornare dopo aver incontrato un ostacolo che le riflette. In questo modo misura anche la distanza stessa con una precisione di 3 cm.
Rispetto agli IR, questi sensori sono più lenti e devono essere utilizzati da fermi.
Questo componente permette di alimentare e controllare i motori senza utilizzare direttamente i pin della Raspberry.
Esso invia i segnali di controllo ai motori e consente di invertire la polarità in modo tale da scegliere il senso di marcia.
Un solo driver può controllare contemporaneamente 2 motori.
Magnetometro digitale a 3 assi progettato per basso campo di rilevamento magnetico. Il sensore ha una precisione fino a 5 milli-Gauss.
Il sensore verrà utilizzato come bussola, per consentire al robot di conoscere il proprio orientamento nello spazio.
La comunicazione con il sensore è effettuata tramite un'interfaccia I2C.
Motori per azionare le parti in movimento.
Alimentati in corrente continua, vi si applica un segnale PWM per determinare la rotazione dell'aletta.
Sono stati utilizzati per gestire inclinazione e rotazione della testa e il movimento del braccio meccanico.
Dotata di due gradi di libertà grazie all'uso di altrettanti servomotori, consente di effettuare misurazioni in direzioni diverse con un unico sonar.
Inoltre consente di ampliare il campo visivo della fotocamera.
Per realizzare collegamenti e circuiti elettrici rapidamente e senza saldature.
Una powerbank con due uscite permette di alimentare allo stesso tempo la raspberry e il comparto motori.
La prima è alimentata tramite l'uscita da 2A, mentre il driver con l'uscita da 1A.
L'elevata capienza (15000 mah) ha consentito di gestire un ampio numero di sensori mantenendo un'autonomia elevata.