Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

62
Le capsule ad ultrasuoni devono essere perfettamente allineate con una distanza minima fra loro, in modo che non producano interferenze. La capsula di emissione invia un segna/e che dopo aver rimbalzato su un ostacolo torna alla capsula di ricezione. Se I'allineamento non e adeguato e la distanza fra le capsule diversa da 5 centimetri, il sensore non si comporterà correttamente Realizziamo un esercizio con la scheda dei sensori per veificare se è stafa montata correttamente e per familiarizzare con i sensori prima di gestire i loro segnali dal microcontroller. La prima cosa da fare sara alimentare Ia scheda tramite la scheda di potenza, la quale a sua volLa sara collegata con la scheda di controllo. GIi ingressi 1 (5 V) e 2 (massa) del connettore Jl si collegheranno con l'uscita 2 (5 V) e 1 (massa) della morsettiera J3 della scheda di potenza. Con il jumper lMPl selezioneremo se la sezione di trasmissione del rilevatore di movimento deve essere sempre attiva, o se /a sua attivazione o disattivazione sono seguite dal mtcrocontroller. Che I'attivazione sia controllata puÒ essere interessante per quelle applicazioni in cui il robot si sta muovendo in continuazione, e a un determinato momento si ferma per rilevare un movimento. ln questo istante attiveremo la sezione di emissione. Comunque, per realizzare questo esercizio dobbiamo Iavorare con l'emettitore sempre attivo, ponendo il jumper JMP| a massa, come si vede nell'immagine. Gonsigli pratici

description

Tutta la raccolta in versione torrent al link: http://www.tntvillage.scambioetico.org/index.php?act=showrelease&id=192104 Su Issuu c'è la raccolta completa. Cerca "Monty Peruzzo Editore".

Transcript of Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Page 1: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Le capsule ad ultrasuoni devono essere perfettamenteallineate con una distanza minima fra loro,in modo che non producano interferenze.La capsula di emissione invia un segna/e che dopoaver rimbalzato su un ostacolo torna allacapsula di ricezione. Se I'allineamento non e adeguatoe la distanza fra le capsule diversa da 5centimetri, il sensore non si comporterà correttamente

Realizziamo un esercizio con la scheda dei sensoriper veificare se è stafa montata correttamentee per familiarizzare con i sensori prima di gestire i lorosegnali dal microcontroller. La prima cosa da fare sara

alimentare Ia scheda tramite la scheda di potenza, laquale a sua volLa sara collegata con la scheda dicontrollo. GIi ingressi 1 (5 V) e 2 (massa) delconnettore Jl si collegheranno con l'uscita 2 (5 V) e

1 (massa) della morsettiera J3 della scheda di potenza.

Con il jumper lMPl selezioneremo se la sezionedi trasmissione del rilevatore di movimento deveessere sempre attiva, o se /a sua attivazioneo disattivazione sono seguite dal mtcrocontroller.Che I'attivazione sia controllata puÒ essere

interessante per quelle applicazioni in cui il robot sista muovendo in continuazione, e a un determinatomomento si ferma per rilevare un movimento.ln questo istante attiveremo la sezione di emissione.Comunque, per realizzare questo esercizio dobbiamoIavorare con l'emettitore sempre attivo, ponendoil jumper JMP| a massa, come si vede nell'immagine.

Gonsigli pratici

Page 2: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Ora passeremo la mano o un oggetto davantiai sensori ad ultrasuoni e osserveremo come siillumina il diodo D7 ogni volta che c'è un movimento.Dovremo modificare la posizione del potenziometroper variare la sensibilità del rilevatore e studiarneil comportamento. Ogni volta che si illumina il LED,

si invia un segnale logico "0" alla connessione 4della morsettiera Jl (OUTI), e quindi arriverà finoal microcontroller. lnoltre dobbiamo regolareil potenziometro R31 sino a che il comportamentodel sensore sarà totalmente soddisfacente.

Quesfo e il potenziometro che regolala vibrazione della capsula ad ultrasuoni a 40 KHz.

Per verificare Ia rilevazione del suono dobbiamomantenere la tensione di alimentazione all'ingressodel connetLore Jl tramite le morsettiere.Modificando il valore del potenziometro R30 variamo Ia sensibilità del rilevatore. Batteremole mani per provare il rilevatore.Con maggiore sensibilità, il rilevatore si attiveràcon suoni piu bassi e a maggiore distanza.

Per verificare come si attiva il rilevatore possiamousdre un tester lo regoleremo per la misuradi tensione con le morsetttere, come si vedenell'immagine; il puntale nero a massa, e quello rossoal collegamento 5 della morsettiera Jl(OUT2). Ogni volta che il rilevatore si attiva, sul testervisualizzeremo 5 V. Quando è a riposo 0 V.

Quesro sarà il segnale che arriveraal microcontroller, quando collegheremo questamorsettiera alla scheda di potenza.

Gonsigli prctici

Page 3: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo
Page 4: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo
Page 5: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

ln questo esercizio controlleremo la scheda dei senson

tramite il microcontroller. Ogni volta che

utilizziamo la scheda dei sensori utilizzeremo anche

la scheda di potenza, dato che la prima si collega

trdmite questd. A sua volLa la scheda di potenza si

collega mediante il Pic-bus alla

scheda di controllo dove si trova il microcontroller.

ll programma consste nel rivelare il movimento e

il livello del suono, in modo che entrambi gli eventiservano a far eseguire delle azionial microcontroller. Abbiamo un motore collegato alla

scheda di potenza, il quale rimarrainattivo fino a che i sensori ad ultrasuoni rileverannoun movimento. A questo punto tl motoresi metterà in marcia, e non si fermerà fino a quando

il microfono non rileverà un suono. Nell'immaginevediamo la configurazione classica delle porte di llO.

Questa è la parte principale del programma, come sipuò osservare è simile ai programmiche abbiamo realizzato con la scheda di ingressi e

uscite, quindi lo tratteremo allo stesso mododi tutti gli altri programmi. L'unica differenza consr'ste

nel fatto che gli ingressie le uscite, invece che essere interruttori e diodi LED,

saranno sensori di diversi tipi e motori.

Consigli prgfici

Page 6: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Dopo aver scritto il programma e averlo compilatosenza errori, procederemo alla programmazionedel microcontroller. Per fare questo utilizzeremoil cavo parallelo e collegheremo la schedadi controllo al computer. L'intenuttore della schedadi controllo deve essere in posizione PROG.

Una volta programmato il chip, collegheremo la schedadi controllo a quella di potenza tramite il Pic-bus.

Dobbiamo collegare un motore alla morsettieraJ11 della scheda di potenza (motore 1),

e fornire I'alimentazione al medesimo medìantela morsettiera 113. Collegheremo la schedadi potenza con quella dei sensori tramitei cavi e i morsetti, per cui utilizzeremo due cavi perl'alimentazione e altri due per ottenerei segnali dei sensori. L'uscita OUTI degli ultrasuoni(collegamento 4 della morsettiera J1)

deye essere unita con la RB4 (collegamento 1 dellamorsettiera J6 della scheda di potenza).ua Pat Lc )ua t u)ltLo vv I z

del microfono (connessrone 5 della morsettiera J1)si porterà a RB5 (collegamento 1

della morsetliera J7 della scheda di potenza).

Possiamo provare il programma fissando le duecapsule ad ultrasuoni in una posizione determinata.ln seguito passeremo un oggetto davanti al rilevatoread ultrasuoni e il motore si metterà in marcia.Dopo di che genereremo un suono che superi lasoglia del microfono e osserveremo che il motoresi fermerà. Possiamo modificare la sensibilitàdi entrambi i rilevatori, muovendoi potenziometri R30 e R31 della scheda dei sensori.

Consigli protici

Page 7: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Montcrggio pcrsso cr pcrsso

Page 8: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

.#.@1-,#Í*

,#

'5531"S:+Èr . ,I1 i.

rt'{emÈoEgÈe pess+ ff pcss

Page 9: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

lnófqn/inmatri R11a R1l <antirennn nar rannlara

la sensibilità del Robot alla luce chericeve. ln questo modo, in funzione dell'applicazioneche realizzeremo, potremo dttivdrei sensori a livelli di luce diversi.

I livelli sì impostano girando questi potenziometri.

Ouesta e la scheda dei sensori di luce, gia montatae prepardta nei fascicoli precedenti, per funzionareall'interno del sistema di controllo di Monty.La scheda è stata progettata per rilevare i livelli di lucetramite i due sensori indipendenti. Ogni voltache si attiva uno dei due sensorÌ,

arilverà un segnale TTL al microcontroller,e si illuminerà un diodo LED rosso sulla scheda stessa

Per realizzare le regolazioni utilizzeremo un cacciavitecon cui muovere facrlmente il cursoredi ogni potenziometro in entrambe le direzioni.Potremo fare ombra con la mano per trovarequal è il punto tn cui il diodo LED si illumina e fissareil punto in cui vogliamo che Io faccia. Se il LED

si illumina significa che il sensore si è attivato,e che un segnale logico TTL arilva al microprocessore.

Gonsigli prertici

Page 10: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Q2

BCg8

R3

330

D1LED

lsx:1I ll*u/ at ll3K3I Bcs4B TtlI -.i-i

10K

IID3 l8ru40 |

isENsoR2 |

R1

JO

R13l00K

ii

i-l

Questo è Io schema elettrico che vale per entrambii sensori di cui è dotata la scheda delle luci.

Questo schema fa si che il sensore funzionidigitalmente, in modo che produca uno zero logicoalla sua uscita raggiungendo un determinatolivello di luce. In funzione della quantità di luceche arriva a D3 e del valore di Rl3,si applica una tensione su Ql, che quando sara

sufficiente, polarizzerà il transistor e attiveràil circuito digitalizzatore formato da Q2. Si trattain realtà di un circuito a scatto o "Schmitt- Triqqer".

La scheda delle luci si collega tramiteIa scheda di potenza, allo stesso modo della schedadei sensori. È necessario fornire i 5 Vdi alimentazione e la massa. Come si può vedere

nell'ìnmagine, nella prima posizione dellamorsettiera l1 iniziando da sinistra collegheremoi 5 V e nel secondo la massa. Negli altridue morsetti abbiamo i segnali TTL

di uscita corrispondenti ai due sensori di luce.

Per verificare il corretto funzionamento della scheda,la alimenteremo tramite la scheda di potenza.A questo punto collegheremo il tester, regolato permisurare la tensione continua sulla scala 20 Vfra uno dei due morsetti di uscita e la massa. Ognivolta che si attiva il sensore, cioè quandosi illumina il LED, dovremo vedere sul morsettoil corrispondente segnale TTL di uscita. Questosegnale sarà circa 0 V o +5 V a seconda che il sensorericeva piu o meno /uce. Queste uscite si possono

collegare con gli ingressi della scheda di controlloche sono disponibili (come J6, J7, .lB o J9),

secondo I'applicazione che stiamo realizzando.

Consisli prcrtici

Page 11: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Monterggio persso ar lrctsso

Page 12: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

ll/lonteiggio pcrsso cl pcrsso

Page 13: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

tl#

s

#

\

s&

La velocità di rotazione di un motore a correntecontinua è funzione della tensione di alimentazioneche applichiamo ai suoi capi. Tanto maggiore sara

la tensione applicata, quanto maggioresarà la velocità del motore. Se parliamodei motori che controllano le ruote del robot, quantapiù tensione applicheremo ad esse (all'internodi un limite massimo fissato dal motore), maggioresarà la velocità di spostamento del robot.La velocità inoltre puo essere controllatameccanicamente se il motore dispone di un riduttorea ingranaggi come quello dell'immagine.

Ci sono diverse tecniche per ottenere quesLi cambidi velocità, la più semplice consiste nell'applicare diversilivelli di tensione esterna con pile diverse,n hstfaria rnma nt talla

mostrate nella figura. Questa è una soluzione hardware

Potremo anche impiegare soluzioni software permodificare la velocità di rotazione del motore.È una proprietà molto interessante, con cui potremomodificare dinamicamente la velocità delmotore lungo il programma, mantenendolo semprealimentato con /o stesso pacchetto di batterie.Per ottenere questo sfrutteremo I'effettodella tensione media risultante da un treno di impulstCon un segnale che varia tra 5 e 0 Vcome quello mostrato nell'immagine, il valore dellatensione media finale sarà di 2.5 V.

rurH@ffi

v5V

2,5V

OV

;,"*.

Gonsigli prertici

Page 14: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Modulozione di Freguenzo

Esiste un'altra tecnica denominata regolazionedi tensione mediante la modulaztone dell'ampiezzadegli impulsi. Consiste nell' utilizzare differentitreni di impulsi per ottenere i valori medi di tensioneche possono essere applicati a un motore.ll microcontroller sara incaricarc di generare questitreni di impulsr, e pertanto sarà quello che controlleràla velocità di rotazione del motore. Nell'immaginesono moslrate diverse modulazioni di ampiezadegli impulsi basate sulla frequenza, cioè, vaiandoil tempo fra un'onda e la successiva (tl e t2).

Modifico del Ciclo di Lovoro

' Y '- '''''

v

Oltre alla varidzione di frequenza, un'altra tecnicamolto comune consste nel modificarequello che viene chtamato ciclo di lavoro. Si utilizzauna forma d'onda a frequenza costante,e si modifica solo la parte positiva dell'onda. Tantopiù dura il semiciclo positivo, tanto più altasarà la tensione media finale che si applica al motore

Un microcontroller come quello dell'immagineè un dispositivo intelligente. Grazie ad esso potremogenerare diverse forma d'onda, i cui valori medici serviranno per modificare la tensione da applicareal motore e quindi modifícarne la velocità.

Questa caratteristica è molto interessante, perchepotremo fare si che la velocità del robot sia più bassa

nelle curve, e raggiunga il massìmo nei rettilinei.

Consigli prcrtici

Page 15: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Montcrggio passo er p.rsso

Page 16: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

"i

i+

Ij=

É

llllontoggio pcsso cr pcrsso

Page 17: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Realizzeremo un esercizio pratico in cuimodificheremo la velocità di rotazione del motoremediante la modulazione dell' ampiezzadegli impulsi; utilizzeremo il microcontroller pergenerare il lreno di impulsi.Come tutti i programmi, inizieremo definendo il tipodi dispositivo e Ie etichette che vogliamoimpiegare. Definramo anche il vector di Reset.

Questa è la routine di ritardo che utrlizzeremo nelnostro programma, per generare tl trenodi impulsi e modificare il valore della tensione mediache si applica al motore. Realizziamo unamodulazione di ampiezza di impulsi, che modificheràl^ {-^^,,^^-- )^l +-^^^td I I cquct lzd uet LI ct tu,

per generare distinti valori medi di tensione.

La pilma cosa che faremo nel programma sono leconfigurazioni. ln questo caso configureremo la portaA come uscita, dato che dobbiamo gestireil motore Ml collegato a Jl 1 della scheda di potenza.Assegniamo un prescaler al Timer),operazione che si realizzerà nel registro OPTION

del banco 1.

Gonsigli prcrtici

Page 18: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

A seconda del valore che introdurremo nella variabile' '-' ^.'-;VELOCITA, laremo si che tl motore e muova d

maggiore o minore velocità. Tanto maggiore sarà ilvalore di questa variabile, più rapido girerà

il motore. Dobbiamo ripetere I'esercizio modificando ivalori di questa variabile, osservandoe comprendendo quale sia il comportamento delmotore tn ognt caso.

Questo è il ciclo principale del programma. Consistenell'accendere il motore, realizzarela temporizzazrone corrispondente, funzione della

' ' 'I ' '-, ^.'-;variabile VELOCITA, e in seguito tornared spegnere tl motore, temportzzare e npeterenuovamente il ciclo.

La connessione del motore si realizza tramite la

scheda di potenza, come abbiamo fatto con gli altriesercizi. A sua volta la scheda di potenzadeve essere collegata alla scheda di controllo, dove sitrova il chip programmato. ll lettorepuo fare pratica effettuando un controllo dellavelocità di rotazione del motoremediante modifica del ciclo di lavoro del trenodi impulsi, invece di modificare Ia frequenza.

Consigli prctici

Page 19: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Monlerateiio neisso ar lrqsso.J

Page 20: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Monterggio pcrsso er pcrsso

Page 21: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

La scheda di controllo di Monty è costituita da unponte ad H di transistor che permettono di realizzareil controllo dei motorr, tanto per I'accensione e Iospegnimento, quanto per il senso di rotazione.Oltre a questa soluzione hardwareper il controllo dei motori, esrfono chips specializzatiche permettono di realizzare il controllo di piccolimoton a corrente conttnua.Sono i drivers per motori, che incorporanoall'interno del proprio chip tutte le funzionÌ dei dueponti ad H di transrstor.

Questa e la piedinatura del driver per motori 12938.

Questo tipo di chip è consigliato perquei lettori che vorranno potenziare le funzioni diMonty, aggiungendo dei motori in più,

dato che con solo due chip se ne possono pilotare didiversi. ll circuito 1293b permette inoltre diapplicare al motore una tensione di lavoro totalmenteindipendente dalla tensione di alimentazione,che si introduce tramite il Pin B del chip (V9.

LI -O

l-;

La figura mostra i differenti tipi di collegamentitra il driver L2938 e il motore a corrente continua.Mediante i segnali di Enable (Enx), si abilita o

disabilita il drivec controllandone la possibilità diaccenderlo e spegnerlo. GIi lnx collegano,o meno, il motore assoclato ad ogni singolo canale.

Un motore può essere associato a due canali. lnquesto modo si può decidere il verso del giro. Per farequesto i corrispondenti ingressi lnxdevono avere un valore complementato (1 -0 o 0-1).

Tutti questi segnali si governanocon livelli TTL direttamente dal microcontroller.

DtPtó-1293B

cHtP ENABLE r F;! Vss

INPUT 4

OUTPUT 4

GND

GND

OUTPUT 3

INPUT 3

CHIP ENABLE 2

TNPUT | $*,,

ouTPUT I F*:l

GND*

cNDf

ouTPUT 2 f

TNPUT 2 r

v'F

Gonsigli protici

Page 22: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

lLr/lu=300 mA

ll driver che si vede nell'immagine è l'1298. Questochip ha il doppio della potenza dell'12938,sopportando fino a 4 A per canale. È particolarmenteraccomandato se vogliamo aggiungere a Montyun altro motore in grado di realizzare una funzÌoneche richieda alti consumi, come sollevare oggettipiuttosto pesanti. ln questa situazioneil motore richiede un alto consumo ed è quindinecessario utilizzare diver soeciali ad alta aotenza.

Questi d river sono particolarmenteutili per la gestione dei motori passo a passo (PAP).

Questi motori hanno piit bobtnedei motoil CC convenzionali, quindi richiedono comeminimo quattro ponti ad H di transistor.lnvece se utilizziamo un drive7 abbiamo in un solochip lutte le funzionalita necessarieper la gestione di questo tipo di motori. Nella figurasi vede il modo dicollegare un motore PAP al driver 12938.

La figura ilporta la piedinatura di questo driver. Comepossiamo vedere è simile all'12938. Abbiamo uningresso per la tensione di alimentazione dei motori,i n d i pendente da I la tensionedi alimentazione. lnoltre disponiamo di doppi canali,

^òr At tò m^t^r; .. ^ ,,^ nOtOre PAP,

segnali di Enable (Enx) per fermare o attivareil motore; segnali di lnxper controllare il senso di rotazione del medesimo.

CURRENT SENSING B

OUTPUT 4OUTPUT 3INPUT 4ENABTE B

INPUT 3TOGIC SUPPtY VOTTAGE

GNDINPUT 2ENABTE AINPUT ISUPPTY VOTTAGE VsOUTPUT 2OUTPUT ICURRENT SENSING A

Gonsigli prctici

Page 23: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Montcrggio pnsso ar pcrsso

Page 24: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Pt lo4nNî|!lffim!)

t.'PÈ

, ..i.,,.6._,..::,r:,,,

.4&

;, .:{1'1;.,',,,.é

i:.]o4" t

s

ee

q\-

Page 25: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Realizzeremo una visione di insieme delle schede di cuidisponiamo fino a questo momento,e di come collegaile fra loro per eseguire gli esercizie approfittare di tutte Ie funzionalitàdel robot. Disponiamo della scheda di controllo,di potenza, di ingressi e uscite,

di sensori di luce, e in seguito, costruiremo la schedadi controllo della pinza.

La scheda di controllo è la principale, dato chern essa sl trova il microcontroller. Questa è la scheda che<i cnlleoa rnn il PC ncr rcalizzare la scritturadel chip, e deye essere sempre presente per qualsiasi

esercizio che realizzeremo. La schedadi l/a, anch'essa mostrata nell'immagine, è una schedadi valutazione indipendente per impararea gestire il microcontroller, pero non fa parte delleschede che incorpora Monty.

La scheda di potenza è una scheda fondamentale,dato che tramite questa si colleganodirettamente i sensori ottici e meccanici del robot,cosi come i motori di direzione del robot.Questa comunica con la scheda di controllo tramiteil cavo PIC-bus. lnoltre, è una schedaindispensabile per qualsiasi esercizio con il robot;tramite questa, collegheremo il resto delle schede.

Gonsigli prcltici

Page 26: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

La scheda delle luci, come quella dei sensori e dicontrollo della pinza, è una schedache aggiunge funzionalità extra al robot. Cosi come lealtre schede, è sempre collegata al sistematramite la scheda di potenza, collegando l'alimentazioneal segriale di controllo. 5i possono utilizzaregli ingressi liberi della scheda di potenza (morsetti J6, J7,

lB, J9) per realizzare questi collegamenti.

La scheda dei sensori è un optional. Aggiunge al robotle funzioni di ultrasuoni e di rilevazionedei livelli sonori. Si collega tramite Ia scheda di potenza,dato che non puo essere collegatadirettamente alla scheda di controllo. Si alimenta tramitei morsetti della scheda di potenzae i segnali si gestiscono tramite Ie linee di l/O presentisu questi morsetti. Possiamo utilizzaregli ingressi liberi della scheda di potenza (morsetti J6, J7,

JB, J9) per realrzzare questi collegamenti.Nell'immagine si mostra un esempio di collegamento.

Nell'immagine sono mostrate Ie schede di cuidisponiamo fino a questo momento, montate, per lagestione del robot. Si può vedere comei motori e i sensori ottici e meccanici si collegano allascheda di potenza e come le schededei sensori e delle luci siano collegate insieme,alimentate e controllate tramite le prese dei morsettiIiberi nella scheda di potenza.

Consigli pratici

Page 27: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Monlaggio pcsso c p.rslso

Page 28: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Montaggio pcrsso cr pcrsso

Page 29: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Ouesta e la flnrc di cui sara dotato il robol in unodei suoi bracci. Sarà comandata da un motorea corrente continua, e servirà per raccogliere oggettie depositarli dove voglnmo. Per controllareI'apertura e la chiusura della pinza sarà

necessaria una scheda speciale,che governr il senso di rotazione di queslo motore.

u1UA78LO5

L'immagine mostra lo schema di collegamento dellascheda di controllo alla ptnza. Questo si realizza tramiteil mnr<cltn 11 ann inicdini 1 e 2 Si inlrOduCe unatensione di +9 Vcc, con la quale si alimenta il motore.Questa tensione si applica anche al regolatore 78105 (U1),

da cui si otttene una tensione di +5 Vcc per alimentare ilPlCl 2C50BA, incaricato delle funzioni di controllo.Tramite il piedino 3 della stessa morsettrera si applica,dalla scheda di controllo e tramitequella di potenza, tl segnale di apertura e di chtusura.

Per la gesl.ione del motore della pinza utilizziamoun ponte ad H, simile a quello della scheda di potenzaper il controllo dei motoi di direzrone del robot.Questo ponte ad H sarà incaricato di amplificare i segnalie alimentare il motore. Tramite questo pontepotremo governare sia I' accensioneche lo spegnimento del motore e anche il senso dirotazione con cui la pinza si apre o si chiude.

Gonsigli prqtici

Page 30: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Q6 Q7BD135 8D135

JÀrP1: Chruso modo lempori/?ato JUt\,ipFRjAperto modo confol alo

ll ponte ad H che controlla il motorer"lolla ninzz à nílatsfn

da un PlCl2C50B, cosi come si vedenell'immagine.

Q uesto m icrocontro | | er vl enep rog ram m ato con prog ram marli confrolln I sponali GP5 e GP4

sono le uscite che terminano alponte ad H, facendo sì che il motoregiri in un verso o nell altra.ln <taln rlcl ittmner lA/lP1 determtnadue forme di funzionamento:in modo controllato (umper dpertoJe in modotem porizzato (j u m per ch i uso).

Nell'immagine vediamo lo schema globaledel controller della pinza del robot.Ogni volta che si collega I'alimentazione, la

pinza tende a chiudersi per default.Nel mòdo controllato, un fronte di salitaapplicato al pìn 3 del morsetto Jl produceI'apertura, un secondo fronte, la chiusura.Nel modo l.emporizzato I'aperLura si producecon fronte di salita e la chiusura è automatica,dopo un tempo di 2" circa.

ll motore si collega mediante tl morsetto J2.

Segnale di contollo:a ogn fronle d salilasi agrsce sul molore,aprendo o chiudendoin modo sequenziale

Come si può vedere nell'immagine, la pinza di Montypuò sostenere carichi leggert. Possiamo solo pensare adapplicazioni per cui il robot possa essere ulile,e programmarlo perche prenda gli oggetti che vogliamo

Consietli prcrtici*mm=*|#m.',|À@'i,1m,]r],lw;aNiw@:1sffii1ss!WiwW'w'*l*ww

Page 31: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Monlcreinio nasso ct lrqsso]rrrrr1Èrr*ÈÈ*E.*@u*twi!ù[!]i1!]!1!]!]!r!liirir!r!ir!r;r;1rrrrrrrrrrrrrrrrrrrrrrr@;ij]!1wMt{giilf!!''Wtw _r ',#

Page 32: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo
Page 33: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Nel seguente esercizio combineremo la scheda dipotenza, quella dei sensoi e quelladelle luci. L'esercizio consste nell'implementare unrobot guardiano. Quando si fa notte,il robot inizia a girare all'interno dell'abitazione, inpedustrazione alla ricerca di rumori sospetti,fermandosi quando sente un rumore e rimanendo inattesa per rilevare qualche movimento.5e rileva movimento, attiva l'altoparlante a modo diallarme. Nell'immagine si osserva

la sequenza abituale dell'Ìnizio del programma.

Utilizzeremo tre ingressi digitali della porta B: RB5

per collegare gli ultrasuoni(rivelazione d i movi mento), R84 (rivelatore giorno/ notte)per il sensore di luce, e RB6 peril rivelatore di suono. Come uscita per la gestionedei motori configureremo la porta A.All'inizio spegneremo I'altoparlante che si trovasu RB7, e fermeremo i motoi: il robot è fermo.ll robot inizia a muoversi quando il segnaledel sensore di luce indica che è notte.

Quando il robot è in movimento e si produceun suono, un ordinedi fermata spegnerà i motori e il robot si ferma.

Da questo momento attenderemo un segnale chearilva dagli ultrasuoni tramite I'ingresso RB5.

Se si rÌleva un movimento si attiverà l'altoparlante inmodo allarme, inviando un 1 sull'uscita RB7. Questasituazione si mantiene in modo indefinito. L'utentepuo e deve modificareil programma per adattarlo alle sue necessità.

Consigli prcrtici

Page 34: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Questi sono i collegamenti che dobbiamo fare con lascheda di potenza. I due motori si colleganoin 111 e J12, e la tensione di alimentazione degli stessi

nel morsetto Jl3. L'altoparlantesi collegherà tramite il morsetto J10. Dobbiamotenere il jumper lMPl chiuso,per fare in modo che l'altoparlante possa suonare.

Dobbiamo collegare le due schede dei sensori tramitela scheda di potenza. Utilizzeremoi morsetti J6, J7 e JB, che sono quelli ancora liberisulla scheda di potenza, per il collegamentodei sensori esterni. I morsetti J6, J7 e .lB fannoriferimento rispettivamente ai pin RB4, RB5 e RB6 delmicrocontroller PlC. ln J6 introdurremoil segnale di luce che arriva dal pin 3 (OUTI) delmorsetto JMPl della scheda dei sensori di luce. ln J7il segàale di ultrasuoni che si ottienedal pin 4 del morsetto Jl della scheda dei sensori.lnfine in JB collegheremo i segnali

del rivelatore di suono che è disponibile sul pin 5 di J1

della scheda dei sensori.

ln questa immagine si mostrano tutte le schedecollegate e il circuito in funzione. Tramite i sensoridobbiamo provocare una sequenzadi segnali di ingresso appropriata, per verificare cheI' esercizio funzioni correttamente.Regoleremo la sensibilità del microfono con R30 perfare in modo che sia bassa, e nonsia influenzata dal rumore dei motori in funzione. Si

propone al lettore di ripetere l'esercizio,facendo però in modo che il robot segua, mediantedue sensori ottici, una linea nerasul pavimento (che chiuderà un circuito), mentrericerca suon i sospefti.

Consiqli prcrlici

Page 35: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

il*,*,*tr-gg*:.?-,,,g,**s*,f.99**

Page 36: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo
Page 37: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

ln questo esercizio combineremo la schedadi controllo, quella di potenza, e quella dei sensoridi luce, con l'obbttivo di implementare unrobot l.osaerba. ll robot attendera che sia giornoper iniziare il suo lavoro. Possiede due sensorimeccanici mediante i quali rileva le collisioni. Quandourta, gira e continua il suo cammino. Con unbattere di mani, o un suono forte, possiamo parlareal robot. Nell' immagineè mostrata la sequenza tipica di inizio.

Configureremo la porta A come uscita per lada<t;onl rlpi mnforí |dt p sensori meccanici incaricatidi rilevare le collisioni del robot si trovano in RB2 e

R83. ll rilevatore di livello luminoso che indicaal robot quando è giorno si trova in RB4, e ilrilevatore sonoro per fermare il robot in RB6. Quandosarà giorno inizieremo a muovere il robotcontrollando che non urti e non si producanodei suoni che lo fermino.

Se si produce un suono come un battere di mani,il robot si arresterà e rimarrà fermofino a che resetteremo il sistema. Possiamo regolarela sensibilità del microfono conil corrispondente potenziometro della scheda deisensori. 5e il robot urta qualcosa,

faremo in modo che giri su di un lato per un

secondo. Trascorso questo tempo torneremo alciclo principale del programma. Se l'ostacoloè stato schivato il robot continuerà il suo cammino,

altrimenti continuerà a gtrare.

Page 38: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Questa e una routine di Ritardo di 1 secondo, checonsrte nel chtamare 100 volteuna routine di temporizzazione di 10 millisecondi.Lavora con un prescaler da 256che e stato configurato all'inizio del programma nelregistro OPTION. Durante il tempodi attesa il mtcrorobot continua a girare al fine dievitare l'ostacolo.

='-;

+

Ìr+,'r'f+

=

= -

j

=,]

j

i.l

:::

Questi sono i collegamenti dei motori e deisensori meccanici (fine corsa) alla schedadi potenza, nelle morsettiere J3 e J4 RB2 e RB3)

lnolLre dobbiamo introdurre tramiteil morsetto J13 la tensione di alimentazione per imotori, che collegheremo in J1 1 e J12.

L'immagine ci mostra questi collegamenti.

Questa e un'immagine globale di tutto l'esercizio,collegato e funzionante. Dobbiamo collegarela scheda delle luci e dei sensori mediante la scheda.J; ^^+^--- ^-

,,^ /-+^ -^ut poLenzd. Dd un tdLO tùetleremo

l'alimentazione per entambe le schede, oltre agliopportuni segnali di rngresso. ll segnalerlel sensore rlellc luci nin 3 di lMPl della scheda detsensori, entrerà tramite il pin 2del morsetto J6 RB4\, e il segnale del sensore disuono, pin 4 di l1 della scheda dei sensori,entrerà sul pin 2 del morsetto 17 (RB5) della schedadi potenza.

Consigli prqtici

Page 39: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Montcrggio posso cr p.rsso

Page 40: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Monlcrggio pcrsso cr pctsso

Page 41: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

ln ouesto caaitolo offriremo una visione d'insiemedelle diverse schede elettronrche di cui è composto ilrobot, e la loro corretta collocazione all'interno dellostesso. // robot contiene le schede di controllo, dipotenza, dei sensori, di luce e di controllodella pinza. lnoltre abbiamo montato una schedadi ingressi e uscite che ci e servita perimparare a programmare il microcontroller, e arealizzare gli esercizi base, però questa

scheda non fa parte della struttura finale di Monty.

Sul telaio del motore dobbiamo inserire le quattrobarre filettate da 3 mm come si vede nell'immagine;queste barre vi sono state fornite tempo fa.

5u queste barre monteremo, come una torre, lediverse schede del robot mediante le quali sirealizzano tutte le funzioni. Vi è stato fornito. inoltre.un tubo di PVC che, debitamente tagliato in pezzi,

aermette di seaarare le diverse schede fra loro.Le dimensioni dei pezzi intermedÌ di tubo saranno:4 da 25 mm (indicati in PL 48) e B da 16 mm.

La prima scheda che monteremo sul telaio del robotè quella di controllo. Deye essere incastrata sulla base

del medesimo, inserendo successivamente i 4tubi da 25 mm, cosi come è mostrato nell'immagine.È importante che questa prima scheda sia benposizionata, dato che dispone di diversi connettoriverso I'esterno come il DB25 per Ia

aorta aarallela o il connettore di alimentazione.

Monteiggio fincrle

Page 42: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Ora inseriremo su questa struttura le diverse schede.La seconda scheda che dobbiamomontare è quella di potenza. ln seguito collocheremola scheda dei sensori e infine la schedadi controllo della pinza. I pezzi di plastica tagliati allalunghezza di 16 mm saranno introdottinelle quattro barre filettate, fra scheda e scheda.Una volta terminata la struttura awiteremo i bulloniagli estremi delle barre filettate.

La scheda delle luci non va montata nellastruttura principale del robot, ma all'tnterno della

testa di Monty. Deve essere rncasfrata come si vede

nell'immagine, ben posizionata, e con i due diodie i du,e sensori ottici inseriti nei fori della testa

del robot, come vi abbiamo spiegato in precedenza.

Nell'immagine si mostrano le due metà che formanoil corpo di Monty. Come già spiegato nei fascicoliprecedenti, nei punti previsti e su entrambe le metà,

bisognerà aver realizzato le corrispondenti apertureche danno accesso ai connettori della schedadi controllo, e permettono di alloggiare le capsulead ultrasuoni. lnoltre si supponeche siano già state decorate con gli appositi adesivi.

Monlerssio finole

Page 43: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

:,,rr{ ì\,ieri:.*..,,,1$ontaggio pcrs,**, *,,,,,,n#fi*g,

Page 44: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo
Page 45: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Come si vede nell'immagine, la parte posterioredel corpo di Monty permette /'accessoal connettore DB25 della scheda di controllo.Tramite questo connettore si realizza la connessionecon il PC, in modo da poter programmaresul PIC i numerosi programmi di applicazione senzaaprire Ia struttura del robot.

Per fare in modo che entrambi i pezzi del corpo diMonty restino uniti in modo sicurofra loro, è necessarlo tncastrarli debitamente sul telaioe utilizzare le clips che sono statefornite nei numeri precedenti. Nell'immagine si mostrauna clip che unisce le due metà del corpo.

I sensori meccanici o fine corsa vanno montatisul telaio del robot, con i terminali posizionati comemostrato nell' immagine. Questi sensorisi incastrano sui due terminali di plastica di cuidispone il telaio, dove resterannoperfettamente fissati se verrà fusa la parte superiore.Nell'immagine, inoltre, si può vedere ilposizionamento dell'altoparlante che sarà fissato conuna goccia di adesivo. Vi è stato fornitoun pezzo di cavo da 40 cm, che tagliato in due, verrà

saldato sull'altoparlante nel caso in cuiquelli attuali siano troppo corti.

flllonlcrggio finclle

Page 46: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

I due sensori ottici a riflessione che servono percontrollare la direzione del robot,vanno anch'essi fissati sul telaio. Sulla parte anterioredel teldio, a laLo dei fine corsa, si trovanodue aperture quadrate su cui verranno incastratiquesti sensori. Li introdurremoe li fisseremo. Potremo mettere qualche goccia diadesivo per maggiore sicurezza.Si puo migliorare la risposta del robot limandoI'apertura per awicinare i sensori al suolo.

ii

É

Queste sono le ruote di trazione del robot.Disponiamo di due gomme che sono montate sulleruote come un pneumatico. Nell'immaginesi mostra il montaggio delle ruotesu uno degli assi del motori. Vanno inserite apressione. Potremo battereleggermente (ad esempio col manico di un cacciavite)sul ceitro della ruota perché si incastriperfettamente, appoggiando l'altro estremo dell'asse<t t t tnz <t tnarfiria r'lt trs

Nell'immagine possiamo vedere i fori praticati sui latiinferiori della metà anteriore del corpodi Monty. Si realizzano sulla zona predisposta,

utilizzando un oggetto appuntito come abbiamo giàfatto altre volte. Con una lima si eliminanole sbavature che potrebbero rimanere. Tramitequesta apertura fuoriescono i fine corsa o sensorimeccanici. lnoltre si può vedere comele due capsule a ulLrasuoni appaiono su//a stessa

metà anteriore del corpodi Monty Queste capsule possono essere

fissate con qualsiasi tipo di adesivo.

Montcggio finole

Page 47: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Fff-

Mo nf a g# g F.'fifi,R,,,,,,,t,,,,,,fm*?

Page 48: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Monlnggio pcrsso ar pcrsso

Page 49: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

Ci sono due interruttori che dobbiamo fissare al telaiodi Monty. Uno e quello che ci permettedi selezionare tra modo scrittura e modo Run, è il piugrande e va incastrato in uno dei due forinella parte posteriore del telaio, cosi come si vedenell'immagine.

L'altro interruttore serve per collegare o scollegarel'alimentazione del robot ed è situatovicino all'interruttore di scrittura. Una volta montatientrambi gl i interruttori, possiamoriscaldare con il saldatore il supporto di plastica su cuisono sistemati per fare inmodo che restino fissati al telaio in modo definitivo.

QuÌ si incastrano i due motori che spingono Monty,con i loro rispettivi telai. Fra i contenitoridei motori e il telaio di Monty sono postt, confunzione di ammortizzatori, due pezzidi gomma piuma. È molto importante che i motoilsiano ben tncastrati nella loroposizione. Una volta montati dobbiamo evitare ditoglierli nuovamente dal loro posto per non forzare iltelaio e correre il rischioche si rompano i punti di ancoraggio.

#Earaas**!e #EmsEe--F-k> q.

Page 50: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

ln questa immagine mostriamo come deve essere

collegato il coperchio delle pile,

che supporta anche la sfera posteriore per lospostamento, e serve come terzo punto di appoggiodel robot. lntrodurremo le pile necessarieper il funzionamento del robot e chiuderemo ilcoperchio, fissandolo benc.

t - {:^..-^ *^-+-- /- a forma di torre conLd llgulA tttV)ltQ tQ )ltuLLu)

tutte le schede montate sul telaio.Le schede sono tenute ferme dalle barre filettate edalle u-iti ai loro estremi superiori.

La testa del robot si monta sopra il collodel corpo, che serve anche per bloccarlo e fissarlo

bene. La rcsl.a inoltre dispone di due clips,ehe tcnoono in<icmc le cltte meta da cuj e formdtoDobbiamo fare pressione su tutti e duegli elementi fino a che non siano ben uniti e fissatl.

Page 51: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo
Page 52: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

pE xt8r' t:,ì::: :::::: .

aa.: rtt t\lr,rrr,

,ì,i

r. . ... r,:r/Ì.rirlr\s ìì:r::ìiiltrriurt:, ú:;:,,:..,, .,.:.,.;3rrr,,..:. .. :.,.: .11:1111.

Page 53: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

La scheda di controllo della pinza ha due modalitàdi funzionamento, selezionabili tramite il jumperJMPl . Se il jumper è chiuso allorail funzionamento della pinza e temporizzato.Ogni volta che invteremo un fronte di salita tramite la

scheda di controllo alla scheda della pinza,quest'ultima si aprirà e trascorso un determinatotem po si ch i uderà a utomati ca mente.5e il jumper e aperto, con il primo fronte di salitainviato tramite la linea di controllofaremo aprire la pinza, e con il secondo fronte lafaremo richiudere.

Questo primo programma mostra il funzionamentoin modo temporizzato, con il jumper chiuso, esupponendo che il segnale di controlloutilizzato per attivare la pinza sia RB4. ll programmaconsiste nel configurare questa linea

di controllo come uscita, per poi attivarla nelmomento in cui si desidera aprire la pinza.

Trascorso un determinato tempo la pinza si richiuderàautomattcamente.

Quest'altro programma mostra comerealizzare il controllo della pinza con il jumper apertoIn questo caso dobbiamo inviare due fronti di salita,

uno per aprire la pinza e l'altro per chiuderla.ln questo esercizio fra l'invio di un frontee l'altro attendiamo un determinato tempo, stabilitoda una routine di configurazionecome mostrato nell' i mmagi ne.

MontcAgio finole

Page 54: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

iffiI .Ef -IHIZI0

:z?;2+i+4r r-i:uri zi [rclo;tciacr ,csi ,sii ,ciìffI 34.

r .sF

; .s+

i+ti #-t*

,,,sb

bsf STATUS,EF6clrf P0RTBnoulru Bx 67nouuf 0PTI0H_flEGbcf STfiTUS,HPú

bsf P0FTB,4noP .lnoP lthcf P0BTB,4caII DELfiYbsf FIIRTB ,Ilnopnopbcf P0BTE,4call DELRYgato CI[L0

EHD

Questa e la parte principale del programma. Consistein un ciclo che invia due fronti di salita cheserviranno per aprire e chiudere la pinza, tramite lalinea di conLrollo RB4. ll programma vieneeseguito in modo ciclico, in pratica possiamo gestireI'invio di questi fronti verso la pinza,per raccogliere o posare degli oggetti, in funzione delcompito assegnato a Monty in quel momento.

ll motore che controlla l'apertura e Ia chiusura dellapinza si collega tramite la morsettiera J2della scheda di controllo della pinza. L'alimentazionedella scheda e i segnali di controllosi applicano tramite la morsettiera J1. Dobbiamoportare al primo contatto della morsettierala tensÌone di alimentazione, che possiamo derivaredalla scheda di potenza. ll secondocontatto e /a massa. e il terzo è il segnale dicontrollo, che per questo esercizio arriva da RB4(morsetto 6 della scheda di potenza).

t.a:

Questo e il montaggio definitivo per provare questoesercizio. Dobbiamo collegare la schedadi potenza tramite la scheda di controllo, e la schedadi controllo della pinza tramite la schedadi potenza, come abbiamo appena spiegato. llmotore lo possiamo inserire all'interno della strutturadel braccio, per poter verificare il realefunzionamento di apertura e di chiusura della pinza,a seconda di come inviamo i seqnali di controllo.

Page 55: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo
Page 56: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

ph Eg@rr . :.,rr*wiiartlfiiiiii;

l::r!@1|;{iffirgsFFffi:F à}J

$...,.t..*#i',,' ,,.,,

=" k1

Page 57: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

N ll1,rttì lt,

lllr.lt---.--.--..-Jll'I r l.

tSFJ I lt'.

lr'

2z

-ù:

-ta --,\.lI

.: .)_t

1

,{*

1

4

ffied*Ee dE c+r*#reE€+

Page 58: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

=oill,9 0-----lHil'I tt tl

; \; \; \à \H

n-=l-nilIttlil il tlil il tluoU:u

Page 59: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

NroóóÌ:99R!t &*

Page 60: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

F*-llr'

Hlt'

ffiode3o del eeaeseri,rÌtrÌriÌÌÌùurru'if 11111ffi-rÍ!iii;;']l]lru::::::#!lkrrl{ì*11Írauutriru

Page 61: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

MODULO DELLE LUCI

CONTROLLODEL BRACCIO

Modulo delle luci e di con*rollo del brclccio

Page 62: Microrobotica Monty Peruzzo Editore - 11 D - Modulo di Controllo

nryII SI

rto. qd esempio quello di.un battere di mani per

lllzlg q 4vov,e(sl aprqndg€ (htudendo ta pihzaqer contrQtf0.det bró(fl0 chiuso.he (0$, il rphot letroÉede, doppdiché riprende la marcia.rnza 0t tu(el.il r0D0t st îerma, Jtno a che'passaggr0 dt un 0ggetto mobite

a scheda di potenza.rto sulle. mofs-eltierg 13 e 14 della scheda di potenzam0rsentefa JU (tl deila scneda dt Dotenza

o=16F84a"P16F84a.lNC"

0x0€

0x00tNtzt00x05

STATUS,RPOPORTA'b'01111100',PORTBb'000001 1 1'TMROSTATUS,RPOPORTA'

DELAYISPORTB,SSTART'PORTB,6STARTb'000001 1 0'PORTA

PORTB,2URTO'PORTB,3URTOPORTB.TDELAYISPORTB,TPORTB:4SENZA LUCEPATTUGLIA

b'00001001'PORTAPORTB,TDETAY1SPORTB,TDELAY1SPORIB,TDEtAYlSPORTB,Tb'000001 10'PORTAPANUGLIA

PORTAPORTB.5SENZA LUCE

Slfr ilri_rfu.éí1rr. .l bu io si f erma in p,ltesa d i u n movimento

ila'FINATE:

,;lDCT

goto

g0l0

decÎsz9qî0rerurn

END

fi.;l{{jtr*i*T$t#Jlfiiif$f,ill[i,,*ituillft :u.rassrrrriil,f ,

I i-+Ff)l ,rnctu0e

EQU

ORGqotoORG

brf0n,movrì/\1mov}llîm0vlw.rnqvlvî0,c1

ctn

-^ tl!q!Dnss

ti+'

$t"tfi*.movwl

deJ.programma, che verifica lo stato dei varie 0t (onseguenza. , ..

Dns(g9I0OUSC

9910uJi.

FA|Jpct

i[1'Jgoto

1,[qjl.robot urta, fa retromar(ia aprendo q chiudendo la pinzaunru: f,3viyrbsl

bifta|JD5T

fa|Jocf .

movl\Àtmovwgor0

y$4g.che realizza un ritardo di 1 secoqooAr r): movlw.

AYroMs tr3Y1fi

ro lntîlr*t

.f00CONTATORE0xD8îMR{}tNTC0N.2DEtlOINTCON,2

SPN'il8,lf''

j 58fr{j8['JtrJl,!' htri i nternl

; Variabile ausiliaria

; Vector di Reset

; Salva il veclor di intenupt

; Eanqg.l, Hn 0t Ingre550 e usctta

frgscAler {fg al TM-R0

)e(ezrol'ìa il 0an(0 ur{000I term0

; TempqrÍzlazigne di 1 secondo; anenoe cne 5t Droduca un suono

Inizia la pattuglia, robot in marcia

Spre e thiudp la pjp;aremp0nzzazrone dt 1 second0

Tef del modulo delle luci

; Retromarcia

; Apre e chiude la pinza

; Avanza

; Testa gli ultrasuoni

;Pinza 0N

; 11izjali43.la vqriabile Contatore con 100.; Lanca il ilmeru

; Attende che il Timer0 vada in oveflow (10 ms)

; Ripete la routine 100 volte (100xt0ms = 1s).

; Fine del programma sorgente