Sei sulla pagina 1di 20

Visual Parking Sensors

Riccardo Vernier
A.S 2017/2018

ISTITUTO SUPERIORE “GIORGI-FERMI”


Technical report of “Visual Parking Sensors”
Summary

Introduction................................................................................... 3
Composition.................................................................................. 4
Arduino ......................................................................................... 5
Converter PWM-Volt................................................................ 6-10
 Component analysis................................................. 6-7
 Electric scheme and PCB....................................... 8-10
LED Bar................................................................................. 11-13
 Analisi componentistica ............................................. 11
 Schemi elettrici e PCB .......................................... 12-13
Programmazione Arduino ...................................................... 14-15
Basamento in legno ............................................................... 16-17
Considerazioni personali ............................................................. 28
Prodotti utilizzati .......................................................................... 19
Manutenzione .............................................................................. 20
Prefazione

L’iniziativa di realizzare questo progetto è finalizzata a rendere


disponibile il mondo dell’automazione digitale anche alla cerchia di
persone con disabilità uditive. Alcuni componenti della mia famiglia
operano nell’assemblaggio di prodotti per persone disabili per l’azienda
Fadiel Italiana di Meolo, questo per me è stato fonte d’ispirazione nel
voler contribuire “a modo mio” in un settore ancora non troppo avanzato.

I “visual parking sensors”, sensori di parcheggio visivi, non sono altro


che frutto di un’attuale tecnologia già preesistente che sfrutta, al posto
che l’udito, la vista.

La componentistica da me scelta, permette infatti di osservare con


precisione la distanza da un ostacolo, leggendo digitalmente il valore
rilevato dai sensori ultrasonici (HC-SR04), trasformarne il proprio
segnale digitale in analogico, attraverso un convertitore PWM-a-Volt e
sfruttare l’output in tensione generato da questo apparecchio per
mostrare visivamente, tramite illuminazione di diodi led di diverso colore,
la distanza rilevata.

Grazie a numerosi forum presenti su internet, sfruttando il mondo


“dell’open source”, ovvero, dove si possono trovare progetti di qualsiasi
tipo, con indicato il procedimento per la realizzazione dello stesso, sono
riuscito nel mio intento. Il sistema è molto intuitivo, idealmente semplice
nella sua realizzazione, più complicato nel montaggio ed assemblaggio,
molto soddisfacente osservarlo in azione.

Sono a conoscenza che esistono già dei sistemi di questo tipo ma, io ho
voluto “sviscerare” e rendere ben chiare le parti che compongono il
sistema evidenziando la distanza rilevata da ogni singolo sensore e
calibrando l’illuminazione delle barre LED a mio piacimento.

3
Composizione
L’immagine qui di seguito presenta nel suo complesso l’impianto da me
realizzato, provvederò poi ad illustrare parte per parte.

Ho voluto poggiare il circuito su di una tavola in legno per la semplicità di


lavorazione dello stesso.

Come possiamo notare dalla foto, il sistema si compone di 10


componenti, di cui 9 fondamentali.

Troviamo 3 sensori ultrasonici, al centro, partendo dall’alto, una batteria


al piombo in 12v con una corrente di 2Ah, la scheda di conversione
PWM-Volt da me realizzata, una mini bread-bord, la scheda arduino uno
(*R3) e, come ultime, 3 barre led, composte da 10 led di cui 4 verdi, 3
gialli e 3 rossi.

(* R3 = revisione 3, fino a qualche anno fa trovavamo ancora qualche


versione iniziale con cui arduino è stato assemblato)

Per la base, ho utilizzato una tavola in legno d’abete, riadattata, con


misure iniziali di 14(h)x1000(lung)x300(larg) e 4 ruote, con diametro
40mm, di cui due fisse, ruote posteriori, due con rotazione tramite sfere
per quelle anteriori.

La tavola è stata rifinita utilizzando più elettroutensili tra cui un seghetto


alternativo ed una levigatrice universale a base rettangolare con fogli
rispettivamente a grana 80 per sgrossare, 180 per levigare in maniera
dolce e 240 per rifinire.
4
Arduino
Arduino è una piattaforma hardware composta da una serie di schede
elettroniche dotate di un microcontrollore.

È una scheda open-source-hardware che consente la creazione


semplificata di prototipi per progetti interattivi, dove è previsto l’uso di
sensori di vario tipo. Con questa scheda ognuno può sbizzarrire le
proprie idee, integrando la propria conoscenza personale con programmi
preesistenti nell’IDE di Arduino (il software di sviluppo che utilizza il
linguaggio C/C++) e su internet.

Il basso costo e la semplicità di utilizzo fanno di Arduino la piattaforma


“per eccellenza” per i prototipi di progetti base o di sperimentazioni,
consentendo a chiunque di esprimersi nella propria creatività.

Per questo motivo ho scelto di realizzare il mio progetto proprio


basandomi su Arduino, essendo una scheda molto intuitiva. Ho sfruttato
appieno le porte digitali di Arduino per gli input ed output dai sensori alla
scheda di conversione per ottenere un’uscita in volt.

Per programmare si utilizza un cavo con i capi da/verso il PC di tipologia


USB A, mentre da/verso Arduino di tipologia USB B. Ho poi deciso di
eliminare l’alimentazione tramite USB per rendere indipendente
l’impianto attraverso l’utilizzo di una batteria collegata con jack da
2.1mm.

Illustrerò nelle prossime pagine il programma di funzionamento.


5
Convertitore PWM-Volt
Uno dei pilastri del mio progetto è il convertitore di segnale, questo
device infatti sfrutta due integrati di tipologia LM358, amplificatore
operazionale duale (infatti un integrato di questo tipo può operare
contemporaneamente su due segnali differenti).

Si definisce integrato perché al suo interno si hanno dei “circuiti integrati”


(già presenti).

Il circuito integrato è adibito a funzionalità di


processamento/elaborazione in output di dati in input espressi sotto
forma di segnali elettrici.

Insieme a delle resistenze e ad un condensatore, il singolo operazionale


riesce a convertire da un input digitale PWM (pulse-width modulation,
modulazione di larghezza d’impulso).

Questi sono i valori


“standard” per cui con una
resistenza da 4k7Ω ed un
condensatore da 10µF
riescono a moderare il
segnale PWM facendo
ottenere dei valori volt definiti.

Il programma qui sopra citato, con alcune istruzioni, non riportate


nell’esempio, permette di generare un segnale PWM alla porta
assegnata corrispondente al nome “pwmOut”.

6
Ho prodotto questa scheda per i seguenti motivi:

 Le schede in vendita su internet non soddisfacevano i miei


requisiti

 I costi sono elevati rispetto alla produzione autonoma

 Poco intuitive, circuiteria non chiara

 Riprodurre da sé la scheda aiuta a comprendere un eventuale


errore di collegamento e la facile individuazione dello stesso

 Aiuta a ricordare per un futuro il funzionamento di ogni singolo


integrato e la sua funzione

 La scheda da me prodotta genera un valore d’uscita in volt


massimo pari a 5.

I passaggi di produzione di una scheda anche comunemente chiamata


“basetta” sono i seguenti:

1. Analisi della problematica (funzionalità della scheda)

2. Individuazione dell’integrato (o PIC) corretto

3. Studio dello schema elettrico dell’integrato

4. Individuazione di input ed output dell’integrato

5. Creazione di uno schema elettrico standard che permetta di


mettere in funzione l’integrato

6. Generazione della lista dei componenti necessari per


“completare” la scheda

7. Creazione di un disegno PCB, contenente la copia successiva in


originale della scheda (ci si può aiutare anche con la
visualizzaione 3D).
7
A pagina 4 ho proposto lo schema elettrico dell’integrato, qui di seguito
troviamo invece lo schema elettrico “dell’intera” basetta.

Dell’integrato denominato “U2” ho ignorato il collegamento del secondo


operazionale in quanto non utilizzato (nel mio caso).

Scelta dei componenti.

Per i componenti 1,2,3 ho


indicato 3 condensatori
elettrolitici da istruzioni.
Qui ho indicato la tipologia di
connettori da utilizzare; per
4,6,8 inizialmente ho scelto
dei socket SIL (comunemente
chiamati “strip”), mentre per
5,7,9,10 ho scelto delle
morsettiere PCB a 2.

Nr. 11,12,13 sono le 3


resistenze.
Nr. 14,15 sono gli zoccoli dei
due integrati (8 pin ciascuno).

8
Passiamo ora allo schema PCB, schema necessario a realizzare la
nostra scheda nella realtà.

Questo foglio ci mostra tutti i


collegamenti elaborati,
basandosi sullo schema elettrico
iniziale. Vediamo in chiaro il
punto di partenza di una pista e,
dove la stessa termina.

In viola sono evidenziati i


terminali d’uscita del segnale
trasformato.

Il terminale con suscritto +9v è


l’alimentazione della scheda.

La visualizzazione 3D invece ci permette di individuare una


sovvraposizione di elementi fisici basandosi ad un modello virtuale con le
dimensioni di ogni componente.

L’assemblaggio della scheda ha richiesto del tempo, forare le piazzole,


alcune molto vicine tra loro e la successiva stagnazione era pericolosa,
per stagnare mi sono aiutato con del flussante liquido, sostanza che
aiuta a depassivare le superfici da saldare, proteggere
temporaneamente le superfici fino alla saldatura, favorire la bagnatura
delle superfici da parte della lega saldante.

9
Dopo svariati test ho notato qualche problema nello scaricamento dei
condensatori, ciò implica che i led posizionati sulle barre, in alcuni casi
restino accesi fino alla completa scarica, ho provato a sostituire i
condensatori con altri, con una capacità più piccola ma il sistema viene
compromesso e, non funziona più.

Come indicato nella componentistica, al posto dei socket SIL ho inserito


3 fili per aumentare la manegevolezza della scheda stessa (potendola
così posizionare ad una distanza sufficiente in modo da non intralciare il
resto dei cablaggi.

10
Barre LED
Le barre led presenti nel mio progetto sono una rivisitazione di un
vecchio compito assegnatomi in 3^. Composte da 10 led, 4 verdi, 3 gialli
e 3 rossi, inserite nel mio sistema sono state ideate con lo scopo di
mostrare visivamente la distanza rilevata dai sensori ultrasonici
permettendo così di capire la distanza a cui si trova l’ostacolo.

Utilizzano un integrato LM3914, ho scelto questo rispetto agli altri della


stessa famiglia, LM3915, LM3916, perché è l’unico che fa accendere
ogni led in base al voltaggio nell’ingresso segnale, gli altri attuano la
stessa funzione ma il segnale dev’essere audio (in quanto funzionano
meglio con lo stesso) ed hanno uno step di accesione ogni 3dB.

Ho inoltre provveduto a collegare il pin 9 dell’integrato abilitando così la


funzione “full”, all’aumento del voltaggio nell’ingresso segnale non si
accende gradualmente un led, bensì si illuminano tutti a partire dal LED1
aumentando così fino al LED10.

Come ultima revisione dello schema PCB di questa scheda ho inserito


un ulteriore trimmer per regolare il segnale in ingresso.

Ho dovuto effettuare questa modifica poiché il segnale in ingresso non


era preciso a 5 volt, perciò ho provveduto ad inserire il trimmer
calibrandolo per tale ingresso. Ho ripetuto questo procedimento 3 volte,
in quanto ho voluto produrre 3 schede, uguali, una collegata ad ogni
rispettivo sensore.

11
Questa tipologia di scheda è molto
comune e, i vari schemi elettrici è
possibile trovarli su internet, ovviamente
li ho rivisitati per adattarli al mio progetto.

Ho utilizzato inoltre LED ad alta


luminosità per far risaltare bene la
posizione in cui ci si trova.

Nella pagina successiva ho inserito la visualizzazione 3D di questa scheda.

12
In caso volessi modificare il funzionamento
della barra (oltre a dover leggermente
ricalibrare i trimmer) dovrei tranciare il ponte
passante sui fori del jumper.

13
Programmazione Arduino
Non è stato un gioco da ragazzi riuscire a far combaciare il programma
per 3 sensori, mentre funzionano alla pari, sono riuscito così a inserire
tramite la funzione “delay” settato a 100ms, il sistema verifica così la
propria distanza ogni 0,1sec.

Ho inserito anche un LED (di colore Blu) nella porta nr.3 (pwm) di
Arduino, lo stesso, lampeggia ogni secondo indicando lo stato “ON” del
sistema.

Si può notare che, per gli ultimi 3 led, quelli rossi, ho impostato una
distanza calcolata di 5cm ogni led, per quelli gialli 10cm ciascuno,
mentre per i verdi 35cm.

14
Nell’IDE di Arduino ho dovuto aggiungere una libreria (HC-SR04.lib) in
quanto i sensori ultrasonici non sono “nativamente” supportati ma,
dev’esserci un’integrazione nel codice per poterli rendere compatibili.

Dopo svariati test il codice soprariportato è quello ottimale e, devo dire


vedere il sistema funzionare nel suo completo discretamente è molto
soddisfacente.

Dovrei ora revisionare il convertitore di segnale, in quanto come dicevo


prima, i condensatori tendono a mantenere un principio di carica pur
dopo la riduzione del segnale in ingresso.

Le porte di alimentazione (in uscita, quelle analogiche) di Arduino invece


non necessitano di programmazione in quanto emettono valori standard
come 3.3volt piuttosto che 5, troviamo 3 porte GND, disclocate in
maniera ottimale in modo da garantire una vicinanza per i collegamenti.

Per alimentare l’intero sistema ho utilizzato una batteria al piombo a 12v


con un’uscita di circa 2Ah in grado di garantirci la messa in funzione
dell’impianto per circa 1 ora di funzionamento (con tutti e 30 i LED accesi
costantemente e in maniera continuativa).

15
Basamento in legno
La preparazione della base in legno, fortunatamente, non mi è risultata
troppo complicata in quanto disponevo di tutti gli attrezzi necessari.

Sono partito da una tavola in abete (dimensioni 1mt x 30cm x 1.4cm),


con il seghetto alternativo ho tagliato tutte le parti, mi sono aiutato inoltre
con un ulteriore seghetto a mano integrato ad un basamento in metallo
con incisi gli angoli per realizzare i pezzi “muso / coda” della macchina.

Per evitare danneggiamenti a cose o persone ho levigato tutta la tavola


(una volta assemblata) smussando così angoli vivi e scheggie post-
taglio.

Ho applicato dello stucco per legno in grado da omogeneizzare le


angolature, eventuali buchi e riempire i nodi del legno.

Come ultima cosa ho dato 2 mani di smalto ad acqua (in modo da non
disperdere odori di vernice), all’incirca ci ho impiegato circa 5 giorni a
realizzare il tutto.

Le ruote sono state l’ultima cosa da me aggiunta al progetto.

Levigatura.

16
Verniciatura.

Assemblamento componentistica.

17
“Disabilità non significa inabilità.
Significa semplicemente adattabilità.”
Ho voluto riportare questa citazione in quanto il mio progetto ha voluto
“riadattare” i sensori di parcheggio (fino a qualche tempo fa solo audio) e
poterli rendere utili anche a persone prive di udito.

18
Prodotti utilizzati

ARDUINO UNO R3 SENSORI HC-SR04


Marchio: Elegoo Sensori ultrasonici
Prezzo: € 9,99 Prezzo: € 5,98
Quantità: 1 Quantità: 3

LED TAVOLA ABETE


Led a 5 colori, rossi, verdi, Tavola in abete 1000x300x14.
bianchi, gialli e blu.
Prezzo: € 7,99 Prezzo: € 9,90
Quantità: 300 Quantità: 1

CAVI JUMPER LM358


Cavetteria utilizzata per i -
collegamenti.
Prezzo: € 6,99 Prezzo: € 7,44
Quantità: 120 Quantità: 5

LM3914 RUOTE
- 2 ruote statiche, 2 rotanti
sferiche.
Prezzo: € 5,90 Prezzo: € 16,00
Quantità: 3 Quantità: 4

VERNICE RUOTE
- 2 ruote statiche, 2 rotanti
sferiche.
Prezzo: € 10,00 Prezzo: € 16,00
Quantità: 1 Quantità: 4

Costo totale: € ~95

19
Manutenzione
L’impianto da me realizzato non richiede particolare manutezione,
potremmo riscontrare dopo un lungo utilizzo qualche led bruciato, si
consiglia ogni ora di funzionamento di caricare la batteria.

20

Potrebbero piacerti anche