Arianna e i suoi fratelli, sperimentare soluzioni

Arianna e i suoi fratelli

Tre sono i prototipi in corso di costruzione, servono a provare in campo diverse soluzioni di motorizzazione e guida.

Arianna 00 ha come base una macchinina giocattolo, ha un motore DC posteriore per il movimento e il classico sterzo anteriore a due ruote come le automobili. Lo sterzo è stato modificato sostituendo l’esistente che ammetteva solo tre possibili direzioni dritto, tutto sinistra, tutta destra con un servomotore che regola a piacere la direzione.
Arianna 01, detta anche Ambros, è invece un tre ruote. Due motrici comandate da due separati motori DC e una terza piroettante anteriore. In questo caso la direzione viene cambiata regolando le velocità dei due motori. Con questa soluzione è possibile ottenere qualunque angolo di sterzata, anche ruotando su se stessa.
Ultima è 02, questa ha la stessa struttura di 01 eccetto che usa motori stepper.

ari-01-20161202-wa0004

Arianna 01 detta “Ambros”

Con gli stepper siamo in grado di imporre una rotazione nota delle ruote, possiamo quindi imporre la traslazione e rotazione del robot senza usare sensori sui motori. Con il motore dc per conoscere lo spostamento delle ruote abbiamo bisogno di un sensore di rotazione posto sull’albero del motore.

chi guida?

Fatta la macchina occorre il guidatore che a sua volta necessità di occhi bene aperti. Il nostro comune guidare l’auto è a ben vedere composto da diverse guide sovrapposte:
una prima è quella che ci fa seguire la strada evitando muri, marciapiedi e altri ostacoli, un controllo sugli elementi locali, la chiameremo guida locale.
Un livello superiore è quello che ci fa capire dove siamo e quale percorso fare per giungere a destinazione, diamogli il nome di navigazione e posizionamento.

La guida locale, valutazione e misura

I questo momento stiamo lavorando sulla guida locale. Il primo test di guida  in corso  è quello di percorre l’intero scaffale diritto con una velocità ragionevolmente elevata e un andamento elegante e sicuro, il test è detto “della libreria”.
Questi due parametri sono il criterio di misura e valutazione del risultato. La velocità deve essere paragonabile a una persona che cammina in un locale, l’abbiamo stimata ragionevole tra i 0.25-0.5 m/s pari a circa 1-2 km/h. L’incedere deve essere lineare senza bruschi cambi di direzione e neppure oscillate a mo’ di ubriaco. Un moto di questo tipo è prevedibile e ben accetto, è conforme alle attese di chi ci segue.

Nei video vediamo una demo di Arianna 00 con risultati promettenti.

 

 

 

Sensori

Per correre lungo la libreria dobbiamo sapere dove questa si trova, tramite dei sensori posti sul lato del veicolo otteniamo l’informazione. In questo modello abbiamo usato sensori a infrarossi della Pololu 2579 – Pololu 38 kHz IR Proximity Sensor.

ir38khz

Questi sono previsti per indicare la presenza o assenza di un ostacolo in un range tra i 30-40 cm. Hanno una banda di incertezza di 10-20 cm dove la loro uscita è instabile.
Abbiamo voluto sperimentare se fosse possibile sfruttare questa banda di incertezza per avere una informazione continua sulla distanza, lo facciamo misurando il tempo in cui il segnale rimane a uno sul tempo di lettura totale.
Usando sia il rapporto Ton/Tmisura che il numero di transizioni abbiamo ottenuto una misura utile nel passaggio tra presenza e assenza.
La funzione ha dato buoni risultati. Il grafico mostra una misura fatta con un oggetto che si avvicina al sensore. La linea rossa con asse a sinistra mostra la variazione tra ostacolo assente, valore uno, a ostacolo presente, valore zero. Nella regione di transizione viene restituita una informazione significativa. In blu riferito all’asse destro c’è il contatore dello stato del sensore.

misurair_excel

misurazione ricavata nel campo di incertezza del sensore

Il contatore valore viene incrementato a tempo secondo il suo stato e serve a capire se siamo vicini alla zona di lettura stabile. I queste zone non possiamo estrarre ulteriori informazioni.

1
2
if (digitalRead(SIDE_IR))   sideIRcnt++;
else                        sideIRcnt--;

 

disponiamo quindi di un’informazione continua che ci dice che siamo tra i 30-50 cm dalla libreria, e che siamo oltre i 50 o al disotto dei 30 cm. Questa è la nostra visione del mondo. sottraendo uno 0.5 abbiamo normalizzato questo numero tra +/- 0.5.

Il guidatore ovvero il sistema di controllo

Noi vogliamo che Arianna viaggi a una distanza dalla libreria che vale 0.5. Per fare questo utlizziamo un regolatore proporzionale. La distanza misurata viene sottrata a 0.5, il valore ottenuto è l’errore, usiamo questo numero per pilotare l’angolo dello sterzo.
Con errore 0 andiamo diritti.
Quando ci allontaniamo curviamo verso destra per avvicinarci, quando ci avviciniamo andiamo a sinistra.
Questi continui aggiustamenti ci mantengono sulla retta via. Così come quando impariamo a guidare dobbiamo imparare a dosare la curva per non avere una traiettoria ondeggiante da ubriaco. Più veloci andiamo più dobbiamo essere dolci. Il guadagno proporzionale del nostro anello è quello che ci serve tarare.

Attualmente il sistema in assenza di ostacolo si muove verso destra cercando la libreria.

Prossimi passi

Le varie attività proseguono in parallelo a seconda delle difficoltà e disponibilità di tempo delle persone. Non c’è quindi un cronoprogamma rigoroso, c’è invece un lavoro flessibile e guidato dalle opportunità. Possiamo però indicare le previsioni a breve.

Appena pronti anche gli altri prototipo saranno sottoposti al test della libreria. Abbiamo visto che il sensore frontale deve avere un raggio di azione di almeno un paio di metri e lo sostituiremo con uno a ultrasuoni. Possiamo iniziare a definire una strategia di utilizzo dei sensori per navigare in assenza di informazioni, in altre parole se i miei sensori non vedano nulla dove vado? Il tema si chiama posizionamento all’interno di locali (indoor positioning).

Questo è un tema che sperimenteremo partendo dalla triangolazione con mappatura di tre access point WiFi. Probabilmente useremo un Raspberry. Nella prossima sessione inizieremo le misure.

Se volete partecipare non abbiate preoccupazioni, superate l’imbarazzo e venite. Una mail a infostuffcube@gmail.com è utile per essere certi dei nostri orari.

 

 

Annunci

2 pensieri su “Arianna e i suoi fratelli, sperimentare soluzioni

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...