Home

PSRF - Sensors bar prototypeP.S.R.F. - Sensor bar

Il robot presentato nella prima puntata è un line follower, pertanto affinché si comporti come tale deve essere dotato di un sensore adatto allo scopo. Indentificare (e seguire) una linea significa creare un percorso, sul quale far scorrere il sensore, dove tra il fondo del terreno e la linea si crei un forte contrasto. Per questo motivo la scelta ricade spesso (sempre?) su linee bianche su pavimenti neri o linee nere su pavimenti bianchi. L'importante è riuscire a creare un percorso con un netto contrasto, così da riuscire ad essere sicuri che la linea non sfugga...

Il sensore

La scelta del sensore è stata dettata da alcune caratteristiche tra le quali quelle meccaniche. Dopo essermi confrontato con la letteratura ho optato per il CNY70, costituito da un foto emettitore ed un foto rilevatore a infrarosso, incapsulati in un contenitore parallelipepdo. Un grosso vantaggio, insomma: è tutto a disposizione in uno spazio, tutto sommato, veramente ridotto. Inoltre la disposizione dei pin agevola anche l'utilizzo di una millefori.

PSRF - CNY70 layout (Vishay)

Figura 1. Il sensore a infrarosso CNY70 (Vishay)

Questo tipo di sensori ha una sensibilità buona quando la distanza rispetto al piano di lavoro è compresa nell'intervallo [0, 5] mm. Ciò implica che i sensori "leggono bene" se strisciano sul piano. Per ovvie ragioni, non è possibile mettere i sensori a contatto con il piano del terreno, pertanto è indispensabile mantenerli sollevati ma ad una distanza la più bassa possibile.

Per finire, il costo. Il CNY70 non ha un prezzo proibitivo, soprattutto se si considera il fatto che è un sensore inscatolato e con una piedinatura comoda per la saldatura anche su piastra millefori

Il circuito

Lo schema è quello che si vede in figura, ed è molto semplice. È costituito da 8 moduli identici: una resistenza limitatrice della corrente per il fotodiodo ed una resistenza di pull-up per il segnale dell'emettitore. Oltre algi 8 segnali, alla scheda giunge anche l'alimentazione, a 5V, direttamente fornita dalla scheda madre.

 

PSRF - Sensor bar simple schematich

Figura 2. Schema di collegamento di CNY70 alla porta PORTD di Pierin PIC18


Per il prototipo ho pensato di impiegare delle resistenze SMD al fine di ridurre le dimensioni della scheda, dimensioni in parte "imposte" dalla batteria di sensori, affiancati uno all'altro. Tramite una pin strip i segnali sono poi portati alla scheda madre.

Cura ed attenzione vanno adottate per il montaggio dei sensori. Un disallineamento sul piano verticale compromette senza ombra di dubbio il funzionamento della barra. Ad ognuno il metodo che si preferisce, io ho adottato il seguente: dop oaver montato la sezione SMD, ho inserito tutti i sensori prestando attenzione all'orientamento. Prima di procedere con la saldatura ho inserito sotto alla fila di sensori un piccolo cavo a sezione 0.35mm2. Con qualche manovra, aiutandomi con una morsa, ho poi bloccato il pacchetto dei sensori in posizione ed ho saldato il tutto. Al termine, ho sfilato il cavetto che fungeva da distanziale.

 

PSRF - Sensors bar prototype

Figura 3. Il prototipo montato.

 

Come funziona

Il funzionamento della barra a sensori è semplice: quando il sensore si trova ad illuminare una superficie bianca il segnale logico presente sull'emettitore è presente un segnale logico alto. Il segnale diventa basso quando il sensore illumina una linea nera.

PSRF - Sensors signal are LOW: the floor is white

Figura 4. I segnali provenienti dai sensori sono tutti "bassi": il pavimento è bianco.

 

PSRF - Sensors signal are HIGH: the floor is black

Figura 5. I segnali provenienti dai sensori sono tutti "alti": il pavimento è nero.

 

PSRF - Some sensors signals are HIGH, other are "LOW"

Figura 6. Alcuni segnali provenienti dai sensori sono "alti", alti sono "bassi"

 

La scheda ed il PIERIN

Come detto, i segnali degli otto sensori sono portati dalla scheda dei sensori alla scheda madre del robot, fino a giungere alla PORTD di Pierin PIC18.

Per come è realizzato il Pierin e per le esigenze di PSRF è necessario modificare parzialmente la scheda Pierin PIC18. In particolare, osservando lo schema di Pierin PIC18 si nota che su PORTD sono connessi i pulsanti P0 e P1 ed anche i LD1 e LD2. È pertanto necessario escludere le connessioni di pulsanti e LED, per permettere il corretto funzionamento della barra a sensori: ciò lo si ottiene facilmente rimuovendo le resistenze R2, R3, R5, R7.

 

PSRF - Resistors R2, R3, R5, R7 located on original Pierin PIC18 schematich
Figura 7. Le resistenze R2, R3, R5, R7 sullo schema di Pierin PIC18

 

PSRF - Resistors R2, R3, R5, R7 as original

Figura 8. Le resistenze R2, R3, R5, R7 sulla scheda di Pierin PIC18 prima di essere rimosse

 

PSRF - Resistors R2, R3, R5, R7 have been removed
Figura 9. Le resistenze R2, R3, R5, R7 sulla scheda di Pierin PIC18 dopo essere state rimosse

 

Il montaggio meccanico

Ho realizzato una semplice piastra in legno compensato da 5 mm di spessore; in alternativa è possibile impiegare anche del PVC o dell'ABS. L'importante è che la struttura non vada a gravare con massa "inutile". La piastra da un lato sostiene la scheda, dall'altro è dotata di foratura con passo corrispondente a quello della piastra di base del robot, così da poterla fissare direttamente sul muso del robot. L'uso di distanziali e spessori adatti permette di regolare a piacimento l'altezza dei sensori rispetto al piano del pavimento.

 

PSRF - Mechanical assembly

Figura 10. Assemblaggio meccanico della scheda sulla piastra con i distanziali

 

In conclusione

Ci si potrebbe chiedere quale motivo mi abbia suggerito di adottare 8 sensori, quando probabilmente con 4 o 6 si poteva ugualmente realizzare una barra sensori più piccola e meno costosa. Leggendo qua e là, ho notato che spesso chi si cimenta in questo tipo di robot impiega una barra sufficientemente ricca di sensori, questo per varie ragioni tra le quali quella di poter ridurre l'incertezza della identificazione della linea a terra. Inoltre 8 sono proprio i pin di PORTD del Pierin PIC18 e questo agevola e non poco il firmware.

Infine: la modifica alla scheda fa perdere di funzionalità al bootloader che va attivato in altro modo. Per questo problema sto valutando come procedere.

 

File di progetto

La barra, come detto, è facilmente realizzabile anche con una piastra millefori. Chi volesse invece adottare la soluzione a circuito stampato, può scaricare qui i file PDF di schema e PCB.

 

Licenza

Questo articolo e gli schemi pubblicati rientrano nell'ambito della licenza CREATIVE COMMONS BY-NC-ND Italia 3.0, secondo quanto indicato nelle note legali qui riportate.

 

  Sintesi delle note legali (italiano)
Creative Common License Note legali (italiano)
  Legal Code (international)
  Commons deed (international)

 

Riferimenti

Licenza Creative Commons
Questa opera viene distribuita con licenza Creative Commons Attribuzione - Non commerciale - Non opere derivate 3.0 Unported.
ShoppingASEhandelASErhvervIndexDKServiceIndexDK