14
www.farelettronica.com 324 GIUGNO Mensile Anno XXVIII 6,00 Smartphone Smartphone ROBOT COMANDATO DA ANDROID ROBOT COMANDATO DA ANDROID SENSORI MAGNETORESISTIVI COMBINATORE GSM GESTIONE DISPLAY 7 SEGMENTI SUONARE CON I PIC RILEVATORE DI OSTACOLI AD ULTRASUONI rilevatore ostacoli ARDUINO smartphone SENSORI MAGNETORESISTIVI Android Onde Corte PCB MikroBASIC Suoni con PIC ultrasuoni radio oldstyle fotovolatico TUTTO QUELLO CHE DEVI SAPERE SUL FOTOVOLTAICO Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

COP FE 324:fe -2012-giugno.pdfdi Vittorio Marradi LUPUS IN FABULA Acal, 15 - Agilent, 14 - Fairchild Semiconductor, 16 - Grifo, 14 LeCroy, 14 - Linear Technology, 15 Melexis, 17 -

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: COP FE 324:fe -2012-giugno.pdfdi Vittorio Marradi LUPUS IN FABULA Acal, 15 - Agilent, 14 - Fairchild Semiconductor, 16 - Grifo, 14 LeCroy, 14 - Linear Technology, 15 Melexis, 17 -

324

GIU

GN

O 2

012

rob

ot

co

ma

nd

ato

da

sm

art

ph

on

e –

tu

tto

su

l fo

tovo

lta

ico

– r

ileva

tore

ad

ult

rasu

on

i

www.farelettronica.com324 GIUGNO Mensile Anno XXVIII € 6,00

SmartphoneSmartphone

ROBOT COMANDATO DA ANDROID

ROBOT COMANDATO DA ANDROID

SENSORIMAGNETORESISTIVI

COMBINATORE GSM

GESTIONE DISPLAY 7 SEGMENTI

SUONARE CON I PIC

RILEVATORE DI OSTACOLIAD ULTRASUONI

ri levatore ostacoli ARDUINO smartphone SENSORI MAGNETORESISTIVI Android Onde Corte PCBMikroBASIC Suoni con PIC ultrasuoni radio oldstyle fotovolatico

TUTTO QUELLO CHE DEVI SAPERE SUL

FOTOVOLTAICO

COP FE 324:fe 14-06-2012 15:46 Pagina 1

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ord

ine

n. 8

335

del 2

3/06

/201

2 -

Lic

enza

esc

lusi

va a

Gui

do O

ttavi

ani O

rdine n. 8335 del 23/06/2012 - Licenza esclusiva a G

uido Ottaviani

Page 2: COP FE 324:fe -2012-giugno.pdfdi Vittorio Marradi LUPUS IN FABULA Acal, 15 - Agilent, 14 - Fairchild Semiconductor, 16 - Grifo, 14 LeCroy, 14 - Linear Technology, 15 Melexis, 17 -

4

324 giugno 2012

20 FOTOVOLTAICO:FACCIAMO IL PUNTOCon questo articolo cerchiamodi fare chiarezza sull’energia fo-tovoltaica, esaminando le tecno-logie, le soluzioni e gli incentiviprevisti per la realizzazione degliimpianti.a cura della redazione

&30 IL DIGITALE TERRESTRE

SUL TUO VHSCome registrare su un vecchio videoregistratore VHS i canali deldigitale terrestre.di Iginio Commisso (i2UIC)

36 COMBINATORE GSMRiutilizziamo un vecchio cellulareper farci chiamare quando l’anti-furto dell’auto suona.di Daniele Cappa

42 TUTORIAL PIC18 (PARTE SECONDA)GIOCHIAMO CON I LEDNella prima parte abbiamo ana-lizzato alcuni concetti di base dellinguaggio C; in quella che invecestiamo affrontando vedremo final-mente il PIC in azione, scrivendo ilnostro primo programma per rea-lizzare giochi di luce con i LED.di Roberto D’Amico

Rispondie... VINCI! pag.

DIVERTITI E METTI

ALLA PROVA

LE TUE CONOSCENZE CON

ELETTRO QUIZE VINCI OGNI MESE

ESCLUSIVI PREMI!

3434

som

mar

io

54 SENSORI DI CAMPO MAGNETICO MAGNETORESISTIVIDagli hard disk alle bussole elet-troniche miniaturizzate, la misuradel campo magnetico svolge unruolo tecnologico fondamentale.I sensori magnetoresistivi rappre-sentano un semplice e robustostrumento per la misura accuratadel campo magnetico alla portatadi ogni sperimentatore.di Marco Carminati

58 CORSO MIKROBASIC (PARTE QUINTA) SUONI AD ALTO LIVELLOCON PICIn questa puntata impareremo agenerare suoni con il PIC con ungrado di accuratezza e di affida-bilità molto elevato. Utilizzeremo siale funzioni di libreria fornite dalcompilatore sia procedure createad hoc dal programmatore.di Giovanni Di Maria

Rispondi

04-05 sommario:fe 14-06-2012 23:32 Pagina 4

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ord

ine

n. 8

335

del 2

3/06

/201

2 -

Lic

enza

esc

lusi

va a

Gui

do O

ttavi

ani O

rdine n. 8335 del 23/06/2012 - Licenza esclusiva a G

uido Ottaviani

Page 3: COP FE 324:fe -2012-giugno.pdfdi Vittorio Marradi LUPUS IN FABULA Acal, 15 - Agilent, 14 - Fairchild Semiconductor, 16 - Grifo, 14 LeCroy, 14 - Linear Technology, 15 Melexis, 17 -

5

elenco inserzionisti

80 QUAD SONAR DI CONTROLLOCome modificare un semplice edeconomico sensore di parcheggiostandard per ottenere un qua-druplo misuratore di distanza aprova di intemperie, da usare co-me rilevatore di ostacoli per i no-stri robot.di Guido Ottaviani

94 ROBOT COMANDATO DA SMARTPHONE ANDROIDÈ oggi sempre più diffuso l’utilizzodi smartphone dotati di interfacciaUSB, Wi-Fi, Bluetooth, sensoriGPS, accelerometri, display dotatidi touchscreen e molto altro. Inquesto articolo vedremo come,utilizzando uno smartphone con si-stema operativo Android, potremocomandare un piccolo robot tra-mite un collegamento Bluetoothdi Adriano Gandolfo

rubriche7 Editoriale

10 Idee di progetto

14 News

18 Eventi

34 Elettroquiz

52 Info

108 IESHOP

Cronomaster Servizi Pag. 14Via Rosselli 2 - 10098 Rivoli (TO)Tel. 011 4597204 - www.cronomaster.com

Elettroshop Pag. 75 Via Giotto, 7 - 20032 Cormano (MI)Tel. 02 66504755 - www.elettroshop.com

Evr Pag. 97Viale Kennedy, 96 - 20027 Rescaldina (MI)Tel. 0331 1815404 - www.evr-electronics.com

Futura Elettronica Pag. 9Via Adige 11 - 21013 Gallarate (VA)Tel. 0331 799775 - www.futuranet.it

Grifo Pag. 51Via dell’Artigiano 8/6 - 40016 San Giorgio Di Piano (BO)Tel. 051-892052 - www.grifo.it

Italfiere Pag. 19Via Caduti di via Fani 65 - 47023 Cesena (FC)Tel. 0547 415674 - www.italfiere.net

Microchip Technology Pag. 3Via Pablo Picasso, 41 - 20025 Legnano (MI)Tel: +39 0331 74261 - www.microchip.com

Micromed Pag. 57Via Valpadana 126B/2 - 00141 Roma (RM)Tel. 06 9058496 - www.micromed.it

MikroElektronika Pag. 13Visegradska, 1A - 11000 Belgrade Tel. +381 11 3628830 - www.mikroe.com

Millennium Dataware Pag. 15Corso Repubblica 48 - 15057 Tortona (AL)Tel. 0131 860254 - www.mdsrl.it

Mouser Electronics Pag. IcopCentro Direzionale MilanofioriStrada 1 Palazzo E120090 Assago (MI)Tel. +39 02 57506571 - www.mouser.com

PCB-Pool Pag. 16Bay 98-99 - Shannon Free Zone - Shannon - County ClareTel. 02 64672645 - www.pcb-pool.com

Tecnoimprese Pag. 78Via Console Flaminio, 19 - 20134 (MI)Tel. 02 210.111.1 – www.fortronic.it

Teltools Pag. 83Via Della Martinella 9 - 20152 Milano (MI)www.teltools.it

&

68 PILOTARE I DISPLAY A SEGMENTILa gestione dei visualizzatori sipresta a considerazioni di diversanatura, in funzione delle scelteattuabili in fase di progetto: consemplici accorgimenti è possibilememorizzare localmente l’infor-mazione proposta su ogni singo-lo digit.di Giorgio Ober

&76 LA RADIO DEI CENTO ANNI

Sono passati più di cento anni,era il 1906, dalla fatidica inven-zione dell’Audion, il primo triodo,a opera di Lee De Forest. Tuttavia il circuito rigenerativo, laradio a reazione, vede una pa-ternità contesa fra De Forest eArmstrong negli anni 12-13 delsecolo scorso.di Vittorio Marradi

LUPUS IN FABULAAcal, 15 - Agilent, 14 - Fairchild Semiconductor, 16 - Grifo, 14LeCroy, 14 - Linear Technology, 15 Melexis, 17 - Microchip, 42 - Molex, 17SemiSouth Laboratories, 17 Texas Instruments, 16 - Toshiba Electronics, 17.

GLI ARTICOLI CONTRASSEGNATI COL SIMBOLO

sono già disponibili in formato PDF*

all’indirizzo www.farelettronica.com/club*Puoi iscriverti al CLUB di Fare Elettronica versando una piccola

quota annuale.

04-05 sommario:fe 14-06-2012 23:32 Pagina 5

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ord

ine

n. 8

335

del 2

3/06

/201

2 -

Lic

enza

esc

lusi

va a

Gui

do O

ttavi

ani O

rdine n. 8335 del 23/06/2012 - Licenza esclusiva a G

uido Ottaviani

Page 4: COP FE 324:fe -2012-giugno.pdfdi Vittorio Marradi LUPUS IN FABULA Acal, 15 - Agilent, 14 - Fairchild Semiconductor, 16 - Grifo, 14 LeCroy, 14 - Linear Technology, 15 Melexis, 17 -

80

Come modif icare

un semplice ed economico

sensore di parcheggio standard

per ottenere un quadruplo

misuratore di distanza

a prova di intemperie,

da usare come ri levatore

di ostacol i per i nostri robot

robot zone➲robot zone di GUIDO OTTAVIANI

Girando per i numerosi negozi di“cineserie” o tra i banchi dellefiere di elettronica, capita spesso

di vedere diversi sensori di parcheggio daapplicare alle auto che non ne sono prov-viste di serie. Ne esistono molti modelli, per tutte le ta-sche, da pochissime decine di euro apoco più di cento euro. I più semplicihanno quattro sensori, un display nume-rico e un buzzer per avvertire quandol’ostacolo è vicino. I più costosi hanno ildisplay nello specchietto retrovisore e lavideocamera. Alcuni hanno il display ca-blato con la centralina, altri hanno uncollegamento wireless. Ce ne sono da4, 6 o 8 sensori. L’hardware è quasi sem-pre lo stesso con più o meno compo-nenti installati.

L’HARDWAREPer le nostre esigenze va bene il modellopiù economico: quattro sensori stagni,un display cablato e anche la punta da tra-

pano per fare il foro esatto per il mon-taggio dei sensori.Il display è collegato con 3 fili: PWR+,GND e segnale. Non usa un protocollostandard di comunicazione ma un siste-ma basato su una sequenza di alti e bas-si più o meno spaziati molto personaliz-zata, che riporta solo poche informazio-ni. Nel display c’è un’altra MCU che de-codifica il protocollo e pilota di conse-guenza le cifre, le barre di LED e il buzzer. Da qui è nata l’idea di modificare il circuitoper renderlo compatibile con i protocollipiù usati: seriale e I2C, e magari aggiun-gere qualche altra funzione.

I l circuito originalePer prima cosa analizziamo il funziona-mento del sistema per capire dove e co-me si può agire.Il circuito è realizzato in modo molto chia-ro e usa tutti componenti standard, conun’applicazione tanto semplice quanto fur-ba del datasheet originale del sensore [1]

QUAD sonar

Un po’ di teoria

Ricordiamo brevemente come funziona unsonar. Per rilevare un oggetto che gli sta di fronte,esso invia un segnale concentrato nel tem-po (ping o burst) a una frequenza ultrasonicae, come fanno i pipistrelli, misura il tempoche impiega l’eco riflessa dall’oggetto atornare al ricevitore, il cosiddetto “tempo divolo”. Conoscendo la velocità del suononell’aria è facile determinare la distanzadell’oggetto.Il segnale è trasmesso e ricevuto tramiteuna capsula a ultrasuoni che, normalmente,è un trasduttore ceramico bidirezionale, può

funzionare cioè sia da microfono sia da al-toparlante. Alcuni sistemi, come il classicoSRF08 di Devantech, usano una capsula perla trasmissione e una per la ricezione. Inquesto caso una sola capsula è usata, al-ternativamente per entrambe le funzioni. La frequenza scelta è di solito 40 kHz, e perquesto le capsule risuonano esattamente aquesta frequenza, fornendo il loro massimorendimento e semplificando il circuito.Le capsule funzionano a tensioni abbastanzaalte e per questo si trovano diverse soluzio-ni circuitali per ottenere tali tensioni, a par-tire da quelle standard, 5 o 12 V.

80-93 Robot - Quad-sonar:fe 15-06-2012 0:09 Pagina 80

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ord

ine

n. 8

335

del 2

3/06

/201

2 -

Lic

enza

esc

lusi

va a

Gui

do O

ttavi

ani O

rdine n. 8335 del 23/06/2012 - Licenza esclusiva a G

uido Ottaviani

Page 5: COP FE 324:fe -2012-giugno.pdfdi Vittorio Marradi LUPUS IN FABULA Acal, 15 - Agilent, 14 - Fairchild Semiconductor, 16 - Grifo, 14 LeCroy, 14 - Linear Technology, 15 Melexis, 17 -

81

nel quale viene proposto un circuito ditest basato su un transistor, un trasfor-matore per elevare la tensione di funzio-namento e un amplificatore operazionaleper la ricezione dell’eco di ritorno. Il cir-cuito oscillante formato dal trasformato-re e dalla capsula viene accordato sullafrequenza esatta tramite il nucleo mobileche si vede in figura 2.

In questo modo il segnale a onda quadraa 5 V in ingresso al transistor diventauna sinusoide da 100 V picco-picco, pi-lotando al meglio la capsula.La capsula risuona con molta precisionea 40 kHz, si comporta quindi come un fil-tro passa-banda molto stretto intorno aquesta frequenza. Il segnale è filtrato duevolte, sia quando viene trasmesso (cap-

Figura 1: il kit sensori scelto.

Figura 2: un dettaglio della scheda originale.

80-93 Robot - Quad-sonar:fe 15-06-2012 0:09 Pagina 81

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ord

ine

n. 8

335

del 2

3/06

/201

2 -

Lic

enza

esc

lusi

va a

Gui

do O

ttavi

ani O

rdine n. 8335 del 23/06/2012 - Licenza esclusiva a G

uido Ottaviani

Page 6: COP FE 324:fe -2012-giugno.pdfdi Vittorio Marradi LUPUS IN FABULA Acal, 15 - Agilent, 14 - Fairchild Semiconductor, 16 - Grifo, 14 LeCroy, 14 - Linear Technology, 15 Melexis, 17 -

82

robot zone➲robot zone

Figura 3: uno schema logico delle connessioni della scheda originale. Questo non è lo schema elettrico esatto ma solo una descrizione funzionale dedotta da un’analisi visiva della scheda.

Figura 4: la schedina di adattamento tra il nuovo microcontrollore e lo zoccolo originale. L’utilizzo di una millefori permette di sperimentare diverse soluzioni.

80-93 Robot - Quad-sonar:fe 15-06-2012 0:09 Pagina 82

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ord

ine

n. 8

335

del 2

3/06

/201

2 -

Lic

enza

esc

lusi

va a

Gui

do O

ttavi

ani O

rdine n. 8335 del 23/06/2012 - Licenza esclusiva a G

uido Ottaviani

Page 7: COP FE 324:fe -2012-giugno.pdfdi Vittorio Marradi LUPUS IN FABULA Acal, 15 - Agilent, 14 - Fairchild Semiconductor, 16 - Grifo, 14 LeCroy, 14 - Linear Technology, 15 Melexis, 17 -

sula usata come altoparlante) sia quandoviene ricevuto (capsula usata come mi-crofono). Questo doppio filtraggio porta aun segnale molto pulito in ingresso.Il fatto di usare una sola capsula semplificamolto il circuito e l’installazione finale(pensate a dover montare il doppio dicapsule) però ha, come spesso accade,una lato negativo. Quando si deve com-mutare da trasmissione a ricezione oc-corre circa 1 ms prima che l’oscillazione dismorzi. Questo porta a una distanza mi-nima misurabile di circa 30 cm. Nel nostrocaso non è un problema, è un minimo

più che accettabile e, in ogni caso, il si-stema rileva comunque gli ostacoli piùvicini, anche se continua a misurare 30 cm.

Moltipl ichiamo i sensoriPer ottimizzare il circuito con quattro sen-sori separati, al posto del transistor èstato usato un driver ULN2003, un ar-ray di sette darlington di potenza, adattiall’utilizzo con carichi induttivi, racchiusoin un unico chip da 16 piedini. Il segnaledi pilotaggio è smistato al giusto driver tra-mite un multiplexer / demultiplexer ana-logico HEF4052BT, che si occupa an-che di riportare l’eco di ritorno dalle di-verse capsule verso l’unico amplificatoreoperazionale MC4558L.Un microcontrollore MG87FE2051AE20(basato su core 8051) si occupa di ge-nerare il burst a 40 kHz, di selezionare insequenza il muxltiplexer e di misurare iltempo con il quale viene ricevuta l’eco.Solo la prima eco di ritorno (l’oggettopiù vicino) è presa in considerazione,eventuali altri echi sono ignorate. I datasheet dei componenti citati pos-sono essere reperiti su [2].In figura 3 si può osservare uno schemalogico delle connessioni.

La personal izzazioneCome si può vedere in figura 2 il micro-controllore originale è montato su zoccolo.Poiché questo è l’unico componente chevogliamo cambiare, siamo a cavallo.Usando una schedina di adattamentocome quella mostrata in figura 4 è facileutilizzare il tipo di microcontrollore chepreferiamo.

83

Figura 5: la schedina montata al posto della MCU originale e collegata al sistema di sviluppo.

CODI

CE M

IP 2

8137

73

80-93 Robot - Quad-sonar:fe 15-06-2012 0:09 Pagina 83

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ord

ine

n. 8

335

del 2

3/06

/201

2 -

Lic

enza

esc

lusi

va a

Gui

do O

ttavi

ani O

rdine n. 8335 del 23/06/2012 - Licenza esclusiva a G

uido Ottaviani

Page 8: COP FE 324:fe -2012-giugno.pdfdi Vittorio Marradi LUPUS IN FABULA Acal, 15 - Agilent, 14 - Fairchild Semiconductor, 16 - Grifo, 14 LeCroy, 14 - Linear Technology, 15 Melexis, 17 -

robot zone➲robot zone

84

La scelta è caduta su un PIC18F2620.Questo ha tutte le periferiche che ci ser-vono:• PWM hardware per generare il burst a40 kHz;• comparatore analogico per rilevare l’e-co di ritorno;• generatore interno di tensione di riferi-mento per regolare via software la sensi-bilità del comparatore;• diversi timer hardware sia a 8 sia a 16bit;• modulo seriale per invio dei dati e per ildebug;• I2C da usare come sensore slave perutilizzarlo al posto di un sonar commerciale;

• I/O pin a sufficienza per pilotare il mul-tiplexer e per altre funzioni.

IL SOFTWAREParlare di software con un microcontrol-lore può essere fuorviante, specialmentein questo caso. Usando infatti le periferi-che hardware citate, i timer e gli interrupt,è facile realizzare una macchina a stati fi-niti che non fa nulla per la maggior partedel tempo, rimanendo in attesa degli in-terrupt. Interpretiamo quindi lo schema infigura 7 non come un diagramma di flus-so software, ma come una sequenza dioperazioni, alcune eseguite direttamente

dalle periferiche e altre pilotate dal soft-ware. Per semplicità lo schema fa riferi-mento a una sola sezione. Nella realtà i di-versi sensori sono collegati al resto del cir-cuito tramite il multiplexer. Seguiamo lo schema in senso orario. Il Ti-mer0 (configurato come timer a 16 bit) ècaricato con differenti valori nei differen-ti stati. Come si può vedere, il primo valore(t1) è di 150 us, con questo si pilota ilPWM che genera un burst della stessa du-rata a 40 kHz con un duty cycle del 50%.Poi c’è un tempo di attesa t2 di 850 usper evitare che sia interpretato come ecolo stesso segnale trasmesso, in questomodo si ottiene un periodo totale di 1

Figura 6: lo schema elettrico della schedina aggiunta con il PIC18F2620. Come si può vedere i componenti esterni sono ridotti al minimo.

80-93 Robot - Quad-sonar:fe 15-06-2012 0:09 Pagina 84

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ord

ine

n. 8

335

del 2

3/06

/201

2 -

Lic

enza

esc

lusi

va a

Gui

do O

ttavi

ani O

rdine n. 8335 del 23/06/2012 - Licenza esclusiva a G

uido Ottaviani

Page 9: COP FE 324:fe -2012-giugno.pdfdi Vittorio Marradi LUPUS IN FABULA Acal, 15 - Agilent, 14 - Fairchild Semiconductor, 16 - Grifo, 14 LeCroy, 14 - Linear Technology, 15 Melexis, 17 -

robot zone➲robot zone

ms che corrisponde al tempo di smorza-mento citato in precedenza. Dopo 1 ms siabilitano gli interrupt e il timer viene im-postato in modo da attendere per 49 msl’eco di ritorno (t3). Come si vede dallo schema l’uscita delPWM, il pin RC2 del PIC è collegato tra-mite il multiplexer e il driver di potenza altrasduttore. Il segnale di ritorno è ampli-ficato e demodulato dal circuito analogi-co presente nella scheda originale e in-

viato all’ingresso invertente del compa-ratore analogico del PIC (pin RA0).La soglia di intervento del comparatorepuò essere regolata via software impo-stando il giusto livello di tensione sul ge-neratore di riferimento interno. Questo èconfigurato in modo da fornire tale livellosul pin RA2, che a sua volta è collegato al-l’ingresso non invertente del compara-tore (pin RA3).Torniamo al momento t0. Questo è l’inizio

dell’invio del burst, viene quindi azzeratoTimer1. Al momento t2 si abilita l’interruptsul modulo capture e si inizia ad ascoltarel’eco. L’uscita del comparatore (pin RA4), ècollegata all’ingresso del modulo CCP2configurato come capture (pin RC1). Sulfronte di salita di questo segnale, il modulocapture fotografa il contenuto dei registridel Timer1 in quell’esatto istante. Questoè il tempo chiamato t-echo nel grafico e

Figura 7: schema a blocchi del funzionamento del programma nel microcontrollore. Questo schema è un misto di operazioni eseguite direttamente dalle periferiche hardware del PIC e diprocedure software conseguenti.

Regolare la sensibilità del sonar

A volte è utile poter regolare la sensibilità delcircuito ricevente, per diverse ragioni. Il se-gnale a 40 kHz viene trasmesso e ricevuto conun angolo abbastanza ampio. Installando il so-nar a 10-15 cm dal pavimento, come avvienenormalmente con i robot amatoriali, il cono ri-sultante potrebbe incontrare il pavimento auna distanza inferiore a 2,5 m, ritornando un’e-co non voluta. Un altro problema può nascere dall’interferen-

za tra i diversi trasduttori. Ad esempio, un’ecodi un oggetto lontano, relativa al segnale tra-smesso dalla capsula 1, potrebbe ritornare conmolto ritardo mentre è già in ricezione la cap-sula 2, fornendo anche in questo caso una fal-sa misura. Aumentare troppo il tempo di attesaper tutte le eco porterebbe a cicli di letturamolto lenti, inadatti a un mezzo che si muove auna certa velocità.Diminuendo la sensibilità del ricevitore, non

sono presi in considerazione echi deboli, pro-venienti dal pavimento o da riflessioni multiple,in particolare in ambiente chiuso. Si può quin-di regolare il range massimo di misura del so-nar.Un metodo molto sofisticato per avere letture ra-pide anche con diversi sensori è spiegato da Jo-hann Borenstein in questo documento:http://www.valentiniweb.com/piermo/robotica/doc/Borenstein/paper32.pdf.

86

80-93 Robot - Quad-sonar:fe 15-06-2012 0:09 Pagina 86

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ord

ine

n. 8

335

del 2

3/06

/201

2 -

Lic

enza

esc

lusi

va a

Gui

do O

ttavi

ani O

rdine n. 8335 del 23/06/2012 - Licenza esclusiva a G

uido Ottaviani

Page 10: COP FE 324:fe -2012-giugno.pdfdi Vittorio Marradi LUPUS IN FABULA Acal, 15 - Agilent, 14 - Fairchild Semiconductor, 16 - Grifo, 14 LeCroy, 14 - Linear Technology, 15 Melexis, 17 -

87

Figura 8: un esempio di un ciclo di lettura. La traccia B mostra il segnale analogico ricevuto

dalla capsula, la traccia A il segnale digitale in uscita dal comparatore. Nel primo millisecondo viene inviato il burst, il comparatore rivela il segnale ma l’interrupt

è disabilitato e non ha alcun effetto. Dopo circa 1,8 msritorna l’eco del primo ostacolo. Il segnale supera la soglia di intervento del comparatore analogico

e la sua uscita va a 1 logico. In questo momento si disabilita di nuovo l’interrupt per non rilevare altri

ostacoli che, in questo caso, non ci interessano.

Figura 9: le capsule montate a 90° tra loro, per verificare l’effettiva copertura.

corrisponde al “tempo di volo”, il tempocioè che impiega il suono ad andare dalsensore all’ostacolo e a tornare indietro alsensore stesso.Per semplificare il lavoro del microcon-trollore, risparmiando divisioni e moltipli-cazioni a ogni misura, ho definito comecostante a inizio programma il valore deicentimetri corrispondenti a ogni incre-mento di una unità nel registro del Ti-mer1 (CmTick). Moltiplicando il valore fo-tografato dal modulo capture per que-sta costante abbiamo direttamente la di-stanza dell’oggetto.

Il ciclo di 50 ms per un sensore è com-pleto, dopodiché si imposta il multiple-xer per il sensore successivo e così viafino a tornare al primo sensore dopo200 ms.Utilizzando in questo modo le periferi-che e lasciando l’MCU in attesa degli in-terrupt, rimane molto tempo per rispon-dere alle chiamate del master su I2C, ri-

80-93 Robot - Quad-sonar:fe 15-06-2012 0:09 Pagina 87

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ord

ine

n. 8

335

del 2

3/06

/201

2 -

Lic

enza

esc

lusi

va a

Gui

do O

ttavi

ani O

rdine n. 8335 del 23/06/2012 - Licenza esclusiva a G

uido Ottaviani

Page 11: COP FE 324:fe -2012-giugno.pdfdi Vittorio Marradi LUPUS IN FABULA Acal, 15 - Agilent, 14 - Fairchild Semiconductor, 16 - Grifo, 14 LeCroy, 14 - Linear Technology, 15 Melexis, 17 -

robot zone➲robot zone

ducendo al minimo il tempo di attesa suquesto bus.

I l codiceIl codice sorgente, aggiornato all’ulti-ma versione, è disponibile come opensource su Google code, si veda il riferi-mento [3].

UN HARDWARE ALTERNATIVOQuesta soluzione hardware prevede l’u-tilizzo della parte analogica e di potenzadi un circuito già esistente, risolvendomolti problemi per niente banali. L’MCUaggiunta si occupa di gestire i dispositivigià presenti nella scheda originale.Nulla vieta di usare la stessa logica macon un circuito diverso, progettato adhoc o come rielaborazione dei numerosicircuiti che si trovano in Rete.Un ottimo circuito, molto usato da anni, èquello del già citato SRF08 di Devan-tech. Lo schema di questo circuito èpubblicato in Rete e usa alcune soluzio-ni molto ingegnose. La differenza princi-pale è nell’utilizzo di due capsule, unache riceve e l’altra che trasmette, arri-vando così a una distanza minima di 3 cm.La capsula trasmittente è alimentata sfrut-tando la caratteristica di moltiplicatoredi tensione del MAX232 (driver che con-verte i livelli della seriale TTL a quelli del-la RS232). In questo modo si ottiene unatensione di 24V picco-picco. Il resto delcircuito è piuttosto tipico: un operazionaleper amplificare il segnale ricevuto e un po-tenziometro digitale per regolarne il gua-dagno, e quindi la sensibilità. Questo puòessere eliminato modificando la sogliadel comparatore, semplificando ulterior-mente il circuito.

OTTIMIZZAZIONE DEL CAMPO DI MISURA Il datasheet della capsula indica la sua di-rettività:

Directivity (deg) X-axis 115±15

Questo provocherebbe alcuni probleminella disposizione delle quattro capsule indimensioni contenute: sarebbe impossi-bile capire su quale lato è l’ostacolo.Per capire esattamente come installare lecapsule, ho fatto alcune prove su un

88

Figura 10: misura dell’angolo di copertura.

80-93 Robot - Quad-sonar:fe 15-06-2012 0:09 Pagina 88

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ord

ine

n. 8

335

del 2

3/06

/201

2 -

Lic

enza

esc

lusi

va a

Gui

do O

ttavi

ani O

rdine n. 8335 del 23/06/2012 - Licenza esclusiva a G

uido Ottaviani

Page 12: COP FE 324:fe -2012-giugno.pdfdi Vittorio Marradi LUPUS IN FABULA Acal, 15 - Agilent, 14 - Fairchild Semiconductor, 16 - Grifo, 14 LeCroy, 14 - Linear Technology, 15 Melexis, 17 -

90

robot zone➲robot zone

Figura 11: simulazione della sovrapposizione degli angoli di copertura dei quattro sensori.

Figura 12: il supporto che permette di montare le capsule con la giusta inclinazione.

80-93 Robot - Quad-sonar:fe 15-06-2012 0:09 Pagina 90

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ord

ine

n. 8

335

del 2

3/06

/201

2 -

Lic

enza

esc

lusi

va a

Gui

do O

ttavi

ani O

rdine n. 8335 del 23/06/2012 - Licenza esclusiva a G

uido Ottaviani

Page 13: COP FE 324:fe -2012-giugno.pdfdi Vittorio Marradi LUPUS IN FABULA Acal, 15 - Agilent, 14 - Fairchild Semiconductor, 16 - Grifo, 14 LeCroy, 14 - Linear Technology, 15 Melexis, 17 -

91

mockup di cartone del robot che dovràospitare questi sensori (figura 9).Con la configurazione impostata nel cir-cuito descritto, quindi anche con quel-l’esatta sensibilità, l’oggetto è rilevatosolamente entro l’angolo che si può ve-

dere nella figura 10. Il triangolo risultan-te ha il cateto di 77,5 cm e l’ipotenusa di85 cm, l’angolo è perciò = ARCCOS(77,5/ 85) = 24,25°, molto più stretto di comeindicato nel datasheet. Questo cambiamolte cose. Con una semplice simulazione realiz-zata con Google SketchUp (figura 11),ho trovato la giusta inclinazione da da-

re a ogni sensore per ottenere il risulta-to migliore.

LL = -40° (Left-Left)

CL = -15° (Center-Left)

CR = +15° (Center-Right)

RR = +40° (Right-Right)

Ciò comporta una copertura to-tale di 130° (da –65° a +65°)con diverse zone di intersezione.In questo modo è possibile, tra-

mite software, capire in quale del-le sette differenti zone si trova l’o-

stacolo. Basta confrontare a coppiedue sensori adiacenti e verificare se

entrambi rilevano l’oggetto a distanze si-mili. Se, ad esempio, un oggetto è rilevatosolo da LL, possiamo considerarlo a unangolo di –52°. Se solo da CL, lo consi-deriamo a –12°. Se è rilevato da entram-bi e d = abs (distLL – distCL) < 10 cmpossiamo dire che l’ostacolo è a –27°. Ecosì via con tutte le altre coppie.In figura 12 si vede il dettaglio del sup-porto che, installato come in figura 13,permette di ottenere le inclinazioni ne-cessarie.

Figura 13: come montare i sensori per avere la copertura indicata in precedenza.

80-93 Robot - Quad-sonar:fe 15-06-2012 0:09 Pagina 91

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ord

ine

n. 8

335

del 2

3/06

/201

2 -

Lic

enza

esc

lusi

va a

Gui

do O

ttavi

ani O

rdine n. 8335 del 23/06/2012 - Licenza esclusiva a G

uido Ottaviani

Page 14: COP FE 324:fe -2012-giugno.pdfdi Vittorio Marradi LUPUS IN FABULA Acal, 15 - Agilent, 14 - Fairchild Semiconductor, 16 - Grifo, 14 LeCroy, 14 - Linear Technology, 15 Melexis, 17 -

92

robot zone➲robot zone

PER approfondire...

[1] http://www.futurlec.com/Datasheet/Sensor/14C01.pdf

[2] http://www.alldatasheet.com/

[3] http://code.google.com/p/quadsonar/

Figura 14: il mockup che ho usato per le prove. Una specie di “prototipazione rapida” in cartone.

CONCLUSIONIDopo le simulazioni era necessario ef-fettuare alcune prove pratiche. Usando an-cora una volta il mockup di cartone ho po-tuto confermare la teoria e provare anchecome si comportano i sensori ultrasonicicon oggetti di diverse forme, dimensionie materiali.Durante le prove infatti ho avuto modo diverificare come i sonar rilevano gli og-getti.Ho provato con stoffa, oggetti cilindrici,scatole lucide, irregolari, ombrelli ecc.:

• se la stoffa è molto morbida, non la rilevaaffatto;• un oggetto cilindrico non dà problemi;• una scatola irregolare nemmeno;• una scatola lucida e regolare, postasecondo un preciso angolo, diventa“stealth”, non viene vista. Immagino cherifletta il suono con un angolo tale danon ritornare ai sensori;• l’ombrellino è rilevato benissimo, ancheappoggiato a terra in orizzontale vicino alrobot.Con la sensibilità che ho impostato ot-

tengo un range pratico di circa 150 cm.Questo mi permette di lavorare bene an-che in ambiente chiuso, con mobili e altrioggetti intorno e con le pareti non moltolontane, oltre al pavimento che potrebberientrare in visibilità.L’altezza da terra che si vede in figura 14sembra buona, non vedo il pavimentoma rivelo oggetti anche bassi. Il risultatoche avevo in mente è stato pienamenteraggiunto. ❏

CODICE MIP 2824004

80-93 Robot - Quad-sonar:fe 15-06-2012 0:09 Pagina 92

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ordine n. 8335 del 23/06/2012 - Licenza esclusiva a Guido Ottaviani

Ord

ine

n. 8

335

del 2

3/06

/201

2 -

Lic

enza

esc

lusi

va a

Gui

do O

ttavi

ani O

rdine n. 8335 del 23/06/2012 - Licenza esclusiva a G

uido Ottaviani