Manuale Trainer tech

Transcript

Manuale Trainer tech
Tutorial progetti .tech
Ing. Cozzolino Francesco
1
Tutorial progetti .tech
All’interno del progetto denominato .tech alle scuole viene sottoposta una lista di progetti che gli
studenti possono realizzare e di cui vengono forniti schemi e software. Il presente manuale
rappresenta per il trainer una guida per l’intero percorso: dalla realizzazione dei progetti alla
partecipazione alla competizione finale. Sotto è fornita la lista dei progetti da imparare a
realizzare, ad una prima vista potrebbe sembrare che il trainer debba raggiunger numerose e
comlicate competenze su svariati argomenti. In realtà al trainer verranno fornite le basi per poter
assemblare questi progetti, in pratica avrà la possibilità di mettere insieme pezzi premontati come
se fosse una grande puzzle. Nello corso di formazione, verrà dato spazio anche ad argomenti
trasversali, come la saldatura dei componenti, la lettura degli schemi e la programmazione di
Arduino. Il percorso non è da intendersi completato semplicemente con la presenza fisica in aula,
ma verrà fornito supporto ed assistenza tecnica via telefono o via Skype.
Naturalmente in base all’abilità raggiunta dal trainer, alle capacità della classe ed alla
collaborazione del docente si potranno apportare modifiche e miglioramenti ai progetti proposti
oppure proporre idee e progetti diversi ed innovativi rispetto a quelli elencati. Condizione
indispensabile è l’appartenenza ad uno dei seguenti ambiti: energia, automazione,
microcontrollori.
2
Tutorial progetti .tech
Area
Progetto
Descrizione
Auto Parking intelligente
Visualizza il numero di posti liberi di un autoparking: prototipo
realizzato con PIC16F84A
Stendino anti pioggia
Stendino domestico per l'asciugatura dei vestiti con azionamento
della copertura in caso di pioggia (realizzato con PIC16F84A)
Segnali stradali intelligenti
Sistema per modificare la velocità massima indicata sui segnali
stradali in caso di pioggia (realizzato con PIC16F84A)
Ciotola per gatti
comandata da smart-phone
Hai dimenticato di far mangiare il gatto? Riempi la ciotola di
croccantini con un comando a distanza (rea-lizzato con scheda
arduino)
Rilevatore di velocità
Sistema di rilevamento della velocità di un automobile e
segnalazione di rallentamento in caso di supera-mento del limite
(realizzato con scheda arduino)
Microcontrollori
Risposta esatta
Apricancello con cellulare
Casa Domotica
Semaforo per non vedenti
Automazione ed
Energia
Vuoi testare la preparazione dei tuoi compagni in ita-liano,
inglese, matematica? Realizza un congegno in-terattivo in cui su
display LCD visualizzi la domanda, scegli la risposta premendo un
pulsante, e visualizzi se è corretta
Scheda di interfaccia per l'apertura di cancello auto-matico con
telefono cellulare
Realizzazione di una casa munita di sensori ed attua-tori per
l'automazione domotica
Semaforo stradale con segnalazione acustica per non vedenti
autmatizzato con PLC
Controllo automatico di
una serra
Prototipo di serra agricola con monitoraggio e con-trollo di varie
grandezze sia analogiche che digitali automatizzato con PLC
Valigetta Multimediale
Realizzazione di valigetta in legno munita di prese a 220 V, carica
batterie cellulare, i-pod, e luci alimenta-to con energia solare.
Ideale per gite a mare o in montagna
Campo fotovoltaico grid
connect
Prototipo di impianto fotovoltaico realizzato in scala munito di
tutte le protezioni e le prerogative di un impianto reale
Solar Signal Road
Segnali stradali alimentati con energia solare
Casetta fotovoltaica
Realizzazione di Casa in scala alimentata con energia solare e con
l'ottimizzazione dei flussi energetici
Alimentazione di
emergenza
Postazione mobile di accumulo di energia da utilizzare in casi di
emergenza ad uso domestico
Energia Elettrica sotto
l'ombrellone
Ombrellone in grado di convertire energia solare ed alimentare
prese a 220 Volt e carica batterie per cellulare
3
Tutorial progetti .tech
Scheda dei criteri di valutazione che saranno utilizzati
nelle fiere da parte della giuria
Ogni classe verrà divisa in gruppi e pertanto all’interno di una stessa classe potrebbero realizzarsi
anche più progetti. Alla fine del percorso tutti i gruppi parteciperanno ad una fiera in cui vi sarà
una competizione tra essi e vincerà il progetto che meglio risponderà ad una seria di requisiti
indicati sotto.
Ogni laboratorio verrà identificato secondo le seguenti informazioni:
Nome laboratorio .tech ______________________________________________________
Prodotto/Manufatto_____________________________________________________________
Istituto _____________________________________ città______________________________
La giuria terrà conto dei seguenti 10 aspetti
1. Attinenza ad uno dei seguenti temi: energia rinnovabile, automazione, controllo a
distanza, robotica, processi di produzione meccanica
2. Predisposizione a trasformare il prototipo in prodotto o servizio da commercializzare
Ad esempio, sarà possibile integrarlo in un impianto già esistente, si può impacchettare? Quando
lo si installa è necessaria la presenza di un tecnico?
3. Lavoro eseguito a regola d’arte ai sensi del D.lgs. 37/08
Non lasciare cavi volanti, non utilizzare i colori dei cavi a caso ecc.
4
Tutorial progetti .tech
4. Documentazione
Il progetto dovrà essere munito di documentazione tecnica, utile ad esempio in una tesina per
esame di stato
5. Presentazione multimediale del manufatto comprensibile anche ai non addetti ai lavori,
possibilmente con video anche in lingua inglese
Di ogni video va fatta una presentazione tipo quelle di presentazione dei prodotti, anche uguale o
simile
6. Coinvolgimento della comunità virtuale (attraverso la piattaforma aziendale)
Creare dei gruppi di discussione (anche facebook, whats app) oppure connettersi e
comunicare gratuitamente tipo via skype, oppure creare un sito
7. Coinvolgimento di aziende del settore
Nel caso si riesca a farsi apprezzare, sponsorizzare, fornire materiale, pubblicità eccetera
rappresenta un merito che andrà valutato
8. Sostenibilità dell’azienda
Studiare la possibilità che la realizzazione del prodotto possa sfruttare gli scarti di altre
aziende (riciclo e riutilizzo), ed eventualmente pensare alla possibilità che i proprio sfridi
possano costituire la materia prima per un’altra azienda. X esempio gli sfridi di plastica
possono essere materia prima per le stampanti 3D. Oppure dagli sfridi del legno ricavare
pellets o altro
9. Strutturazione dell’azienda
Distribuire i compiti e collocare la propria azienda sul mercato
10. Oltre al progetto realizzato pensare ad un’idea da sviluppare, sempre a sfondo
tecnologico/scientifico/matematico
Non deve essere per forza un’idea geniale o complicata ma una cosa che si potrebbe
realizzare, poi ci penserà IGS a trovare l’azienda ed organizzarvi uno stage
5
Tutorial progetti .tech
Vademecum per partecipare alle fiere / eventi
Ribadiamo che la finalità di un percorso denominato “laboratorio .tech” è la partecipazione ad
una serie di eventi finali che vanno dall’esposizione dei progetti all’interno dell’istituto di
appartenenza alla partecipazione a fiere ed eventi in cui competono i laboratori di altri istituti
della stessa provincia. I laboratori giudicati vincitori potranno confrontarsi con quelli di altre scuole
di diversa provincia o regione. Si ricorda che il laboratorio vincitore potrà innanzitutto esporre il
proprio progetto in un convegno organizzato da “Students Lab” cui partecipano aziende private
del settore, associazioni di categoria (confindustria, autorità portuali, confcommercio), mass
media (Tv locali, testate locali), enti pubblici (docenti universitari, sindaci, provveditorato, ecc),
e poi parteciperà ad uno stage con un’azienda del settore di interesse (fotovoltaico,
automazione, allarmi, stampa 3D, ecc).
Di seguito si riepiloga il percorso fatto in classe:
 si creano i gruppi in classe
 si suppone di essere un’azienda
 si sceglie nome e logo
 si sceglie uno dei progetti proposti o (se si è in grado) o un altro con i criteri su citati
 realizzazione del progetto
 produzione di video, sito internet, comunità virtuale, documentazione, ecc
 partecipazione alla fiera (x vincere o quanto meno x fare una bella figura).
Non tutte le persone della giuria sono dei tecnici, x cui guarderanno al funzionamento,
all’originalità, ma anche alla presentazione, al modo di presentarsi dei ragazzi, alla vitalità dello
stand, ecc.
6
Tutorial progetti .tech
Quindi faranno domande tecniche e domande inerenti la capacità degli studenti di essere azienda.
Allora è necessario preparare i ragazzi a rispondere alle seguenti domande (sono solo degli
esempi):
Chi realizza un prodotto come la scheda x il cancello automatico potrebbe rispondere: “questa è
stata realizzata con Arduino ed a differenza di quelle attualmente sul mercato la si può
personalizzare aprendo il cancello con il cellulare.
Se non si finisce di realizzare il suddetto progetto, cioè si fa il prototipo ma non funziona
correttamente è necessario dire: “per ultimare il progetto bisognava acquistare un’altra scheda
(citare nome e caratteristiche) che costava troppo, ma abbiamo trovato o stiamo cercando
un’azienda cui piaccia la nostra idea e sia disposta ad ospitarci o a dare questa scheda in conto
lavorazione per terminare il progetto e cercare di metterlo sul mercato”.
Chi ha realizzato lo stendino per asciugare i panni può dire: l’implementazione è stata fatta su
uno stendino classico ma siamo in contatto con un’officina meccanica per realizzare la struttura in
tubolare in modo tale che quando piove e contemporaneamente fa freddo o è umido, il tubo si
possa riscaldare ed asciugare i panni più brevemente.
Infine, come si accennava sopra è necessario allestire adeguatamente lo stand in dotazione:
Di seguito si riportano le figure degli stand che verranno forniti ad ogni gruppo e che dovranno
essere allestiti
7
Tutorial progetti .tech
Quello a sinistra è un buon allestimento stand, quello a destra è un po’ scarno.
Quello che conta è anche il modo di vestirsi dei ragazzi, possono vestirsi tutti uguali, tutti con
divisa aziendale, oppure ad esempio l’amministratore delegato in giacca e gli addetti alla
produzione con divisa aziendale (tipo t-shirt della scuola o con il logo aziendale, ecc). La foto sotto
mostra dei ragazzi che hanno fatto una bella figura con l’abbigliamento
8
Tutorial progetti .tech
Che cos’è Arduino?
Insieme alle direttive necessarie per imparare ad assemblare i progetti proposti vengono date le
prime nozioni trasversali di Arduino e proposti alcuni progetti, oltre quelli della tabella, che
possono essere realizzati.
Arduino è una piattaforma elettronica di piccole dimensioni con un microcontrollore ATMEL
montato sopra e una circuiteria di contorno, inventata da un gruppo di persone tra cui l’Italiano
Massimo Banzi, utile per creare rapidamente prototipi di impianti di automazione civili ed
industriali o di creare circuiti di comando a distanza. Spesso utilizzato per scopi hobbistici e
didattici, si sta diffondendo rapidamente nelle scuole per la sua semplicità sia nei collegamenti
elettrici che nella programmazione software. Per quest’ultimo aspetto sono presenti in rete una
miriade di programmi e progetti già svolti. Tutto il software a corredo di Arduino è libero, e gli
schemi circuitali sono distribuiti come hardware libero.
9
Tutorial progetti .tech
In questo numero inizieremo a presentare un primo semplice progettino con tanto di programma
servendoci di una scheda Arduino UNO il cui costo è di circa 20 euro. In questo numero
mostreremo anche come si scarica il software ed il suo ambiente di sviluppo.
DOWNLOAD DEL SOFTWARE ED INSTALLAZIONE
Il software di Arduino è scaricabile dal sito www.arduino.cc nella sezione “download”. Se si utilizza come
sistema operativo Windows, allora cliccare su windows installer , come si vede in figura.
Seguendo tutti i passi, l’installazione è estremamente semplice
Far lampeggiare un Diodo Led
(Per fare questa operazione è necessario avere collegato il microcontrollore Arduino)
In questa prima lezione ci proponiamo di collegare un circuito e di scrivere un programma che
faccia lampeggiare un diodo led, per fare ciò ci occorrono:
 Modulo Arduino UNO
10
Tutorial progetti .tech
 Cavo di collegamento USB tra Arduino e computer
 Diodo led
Step 1) Collegamento del diodo su Arduino tra il piedino 13 e GND (massa). Attenzione al corretto
collegamento
Step 2) Per scrivere il programma fare click su start, e poi cliccare sull’icona di Arduino, a quel
punti si apre la schermata indicata a destra
Step 2) Salvare il file con nome ed iniziare a scrivere il seguente programma:
11
Tutorial progetti .tech
void setup () {
pinMode(13,OUTPUT);
}
void loop () {
digitalWrite(13,HIGH);
delay(3000);
digitalWrite(13,LOW);
delay(1000);
}
Ricordando che la parola “delay” significa ritardo, si può notare che all’interno delle parentesi ci
sono dei numeri, prima 3000 e poi 1000. Rappresentano il tempo espresso in millisecondi per cui il
led resta acceso e spento. In questo caso il diodo led rimane acceso 3 secondi (sarebbero 3000
millisecondi), e spento 1 secondo.
Problemi che possono nascere:
1. Per digitare la parentesi graffa nella scrittura dei programmi premere la freccia shift , alt gr e la
parentesi quadra
Step 3) Una volta scritto il programma si può compilare per vedere se ci sono errori e caricare su
microcontrollore
12
Tutorial progetti .tech
Se andrà tutto a buon fine il led si mette a lampeggiare e, mi permetto, il vostro cuore inizierà a
battere più forte. Complimenti, siete appena entrati in un mondo nuovo e tutto da scoprire, da
dove potete partire e realizzare tante bellissime applicazioni
Un’ultima nota: può essere che durante il caricamento del software, il computer dia questo errore:
Bisogna settare la porta seriale COM giusta. E’ un’operazione semplice, basta seguire le indicazioni che
vengono fuori man mano.
Semaforo semplice con 3 led
13
Tutorial progetti .tech
In questo secondo esercizio comandiamo tre led che in si accenderanno e spegneranno in
sequenza simulando un semaforo.
Occorrono 3 led, di colore rosso, giallo e verde, un saldatore, dello stagno ed un filo nero per
collegarli al gnd
Di seguito il software. Si consiglia di provare a scriverlo senza guardare questo manuale
La definizione dei 3 ingressi, denominati “verde”, “giallo” e “rosso”
int verde=10;
int giallo=11;
int rosso=12;
La dichiarazione come ingressi
void setup (){
pinMode(rosso,OUTPUT); //inserire led rosso al pin 12//
pinMode(verde,OUTPUT); //inserire led verde al pin 10//
pinMode(giallo,OUTPUT); //inserire led giallo al pin 11//
}
14
Tutorial progetti .tech
Il ciclo del programma
void loop () {
digitalWrite(giallo,LOW);
digitalWrite(rosso,HIGH);
delay(2000);
digitalWrite(rosso,LOW);
digitalWrite(verde,HIGH);
delay(2000);
digitalWrite(verde,LOW);
digitalWrite(giallo,HIGH);
delay(1000);
}
Si consiglia di cambiare i pin di ingresso, il tempo di lampeggiamento ed eventualmente il nome degli
ingressi. Il tutto a mò di esercitazione
In questo esempio vediamo come gestire un ingresso ed un’uscita digitale andando a comandare
un diodo led tramite un pulsante.
Tutto l’hardware di cui abbiamo bisogno è indicato in figura: scheda Arduino, Resistenza da 1 k,
pulsante, diodo led, bread board, cavetti
15
Tutorial progetti .tech
Il circuito è puramente didattico, rimandiamo al prossimo numero qualche applicazione più
sofisticata. Oggi comandiamo semplicemente un led tramite pulsante. Il diodo costituisce l’uscita
digitale mentre il pulsante rappresenta l’ingresso al nostro sistema.
Il software da caricare su ATMEL montato su scheda Arduino è il seguente
#define LED 13
#define BUTTON 7
int val = 0;
// LED collegato al pin digitale 13
// pin di input dove è collegato il pulsante
// si userà val per conservare lo stato del pin di input
void setup() {
pinMode(LED, OUTPUT);
pinMode(BUTTON, INPUT);
// imposta il pin digitale come output
// imposta il pin digitale come input
}
void loop() {
val = digitalRead(BUTTON); // legge il valore dell'input e lo conserva
// controlla che l'input sia HIGH (pulsante premuto)
if (val == HIGH) {
digitalWrite(LED, HIGH); //accende il led
}
else {
digitalWrite(LED, LOW); //spegne il led
}
}
Comandiamo un display a Cristalli Liquidi (LCD)
16
Tutorial progetti .tech
Scriviamo il software
#include <LiquidCrystal.h>
// initialize the library with the numbers of the interface pins
LiquidCrystal lcd (12, 11, 5, 4, 3, 2);
void setup() {
// set up the LCD's number of columns and rows:
lcd.begin(16, 2);
// Print a message to the LCD.
lcd.print("Buon Lavoro!");
}
void loop() {
// set the cursor to column 0, line 1
// (note: line 1 is the second row, since counting begins with 0):
17
Tutorial progetti .tech
lcd.setCursor(0, 1);
// print the number of seconds since reset:
lcd.print(millis()/1000);
}
Interruttore Battimano
L’interruttore battimani è un divertente progetto ce consente di spegnere e accendere la luce della
tua stanza con il semplice battito delle mani
…
Principio di funzionamento
Un microfono rileva il battito delle mani trasformandolo attraverso la sua circuiteria in un segnale
elettrico apprezzabile dal microcontrollore presente sulla scheda Arduino uno, in quale
programmato come di seguito sarà in grado una volta percepito il giusto livello elettrico dal
microfono piloterà la scheda di potenza facendo accendere e spegnere la lampada.
Lista materiale
Realizzazione pratica
18
Tutorial progetti .tech
Alimentare il modulo microfonico dalla scheda Arduino uno a 5 volt e collegare il pin di
segnale al pin A0 della scheda Arduino uno come riportato in figura…
Nb nella schedina microfonica “funduino” vi è un dotazione un cavetto con colori errati
dove il nero è il positivo e quindi va a +5 il giallo è il negativo e va a GND ed il rosso è il
segnale e va al pin A0.
Passo numero due :
adesso bisogna creare la schedina di potenza che controlla la lampada (interfaccia con il
microcontrollore) riportiamo sotto lo schema per realizzarla su “millefori” assemblando i
componenti come da schema…
Una volta realizzata la schedina con un risultato simile a quella sotto in figura non ci rimane che
cablarla anche essa con la scheda arduino uno come indicato nello schema sop
19
Tutorial progetti .tech
Cablare il tutto nel seguente modo :
Passo numero tre
Ora non ci rimane altro che caricare il seguente programma al microcontrollore di Arduino uno
const int analogPin = A0;
const int sensib = 600;
void setup() {
20
Tutorial progetti .tech
// initialize the LED pin as an output:
pinMode(13, OUTPUT);
// initialize serial communications:
Serial.begin(9600);
}
void loop() {
int analogValue = analogRead(analogPin);
if (analogValue > sensib) {
PORTB^=B100000;
delay(100);
}
Serial.println(analogValue);
delay(1);
Circuito apriscatola x gatti
Questo progetto consiste nel realizzare un meccanismo con cui mettendo a contatto una
fotoresistenza con un telefono (anche di vecchissima generazione), si sfrutta la capacità del
cellulare di illuminarsi quando riceve una chiamata. In questo modo la variazione di resistenza da
parte della fotoresistenza rappresenta un segnale di ingresso per Arduino che di conseguenza
movimenta il servomotore.
Apriscatola x gatti tramite cellulare
(Codice 01 GAARD15)
Item
Componente
Descrizione
Quantità
Figura
21
Tutorial progetti .tech
1
Modulo Arduino
+ cavo
Arduino Uno
1
2
alimentatore
220V/USB
1
3
fotoresistenza
4
Resistenza
5
Servomotore
1
6
Basetta millefori
20x10
cm
7
Morsetti
5
8
Strip maschi
10
9
Strip femmina
10
1
100 Ohm
1
N.B. per completare il progetto occorre un telefono cellulare
Lo schema elettrico è il seguente:
22
Tutorial progetti .tech
Mentre il software:
#include <Servo.h>
Servo myservo; // creato servo
int fotoresistenza = A0; // analog pin used to connect the potentiometer
int rif= 400;
void setup()
{
myservo.attach(9); // attaches the servo on pin 9 to the servo object
23
Tutorial progetti .tech
}
void loop()
{
int analogvalue = analogRead (fotoresistenza);
if(analogvalue>rif) {
myservo.write(90);
delay(15);
}
else {
myservo.write(0);
}
}
24
Tutorial progetti .tech
Auto parking realizzato con conteggio e visualizzazione numero
di auto
Lista materiale
Item
Componente
Descrizione
Quantità
1
Modulo Arduino
2
Cavo
Collegamento PC - Arduino
3
Pacco Batterie
9V
4
Fusibile x batteria
1A
5
Led IR Tx
Sensore passaggio auto
4
6
Fototransistor Rx
//
4
7
Resistenza limitatrice
100 
2
8
Resistenza
1 k
2
9
LCD
2 x 16 caratteri
1
10
Trimmer
1 k
1
11
Diodo Led Rosso + Verde
12
Basetta millefori
13
morsetti
14
Mammut
15
Cavi
Rosso + nero + Vari colori
16
Cavo Flat
12 cavi
17
Struttura in legno di supporto
23
Strip maschi + femmine
2
per millefori
25
Tutorial progetti .tech
26
Tutorial progetti .tech
Il software:
#define BUTTON_AVANTI 10
#define BUTTON_INDIETRO 9
#define RED_LED 13
#define GREEN_LED 12
int Contatore = 0;
buttonPushCounter
// conta il numero di volte che il pulsante è premuto
int StatoPulsanteAvanti = 0;
// stato corrente del pulsante
int StatoPulsantePrecedenteAvanti = 0;
int StatoPulsanteIndietro = 0;
// stato precedente del pulsante
// stato corrente del pulsante
int StatoPulsantePrecedenteIndietro = 0;
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
pinMode(10, INPUT);
pinMode(9, INPUT);
pinMode(13,OUTPUT);
pinMode(12,OUTPUT);
Serial.begin (9600);
// pinMode(9, OUTPUT);
//digitalWrite(9, 0); // start with the "dot" off
27
Tutorial progetti .tech
}
void loop() {
StatoPulsanteAvanti = digitalRead(BUTTON_AVANTI);
conserva
// legge il valore dell'input e lo
StatoPulsanteIndietro = digitalRead(BUTTON_INDIETRO);
if ((StatoPulsanteAvanti != StatoPulsantePrecedenteAvanti)
||(StatoPulsanteIndietro !=
StatoPulsantePrecedenteIndietro ) ) { // compara lo stato del pulsante attuale con il precedente
if (StatoPulsanteAvanti == HIGH) {
// se lo stato è cambiato incrementa il contatore
// se lo stato corrente è alto, il pulsante è passato da off a on
Contatore++;
delay(200);
Serial.print("Disponibilita: "); //invio su porta seriale il dato
Serial.println(Contatore);
lcd.clear();
lcd.print("Disponibilità: ");
lcd.print(Contatore);
}
else
if(StatoPulsanteIndietro == HIGH) {
// se lo stato è cambiato incrementa il contatore
// se lo stato corrente è alto, il pulsante è passato da off a on
28
Tutorial progetti .tech
Contatore--;
lcd.clear();
lcd.print("Disponibilita: ");
lcd.print(Contatore);
Serial.print("Disponibilita: "); //invio su porta seriale il dato
Serial.println(Contatore)
}}
StatoPulsantePrecedenteIndietro = StatoPulsanteIndietro;
StatoPulsantePrecedenteAvanti = StatoPulsanteAvanti;
if (Contatore ==0) {
Serial.println("OCCUPATO");
digitalWrite(RED_LED,1);
digitalWrite(GREEN_LED,0);
// Serial.println("mi riavvio");
}
else
{ digitalWrite(RED_LED,0);
digitalWrite(GREEN_LED,1);}
if (Contatore <0) {
Serial.println("OCCUPATO");
Contatore = 99;
StatoPulsanteIndietro = 0;
29
Tutorial progetti .tech
StatoPulsantePrecedenteIndietro = 0;
// Serial.println("mi riavvio");
}
if (Contatore >=99) {
Contatore = 1;
StatoPulsanteAvanti = 0;
StatoPulsantePrecedenteAvanti = 0;
// Serial.println("mi riavvio");
// stampa sulla console "mi riavvio"
// Serial.print( Contatore );
}
}
30
Tutorial progetti .tech
Tutor di velocità
Lista materiale
Item
Componente
Descrizione
Quantità
1
Modulo Arduino
2
Cavo
Collegamento PC - Arduino
3
Pacco Batterie
9V
5
Led IR Tx
Sensore passaggio auto
2
6
Fototransistor Rx
//
2
7
Resistenza limitatrice
100 
2
8
Resistenza
1 k
2
9
LCD
2 x 16 caratteri
1
10
Trimmer
1 k
1
11
Diodo Led Rosso
12
Basetta millefori
13
morsetti
14
Mammut
15
Cavi
1
per millefori
Rosso + nero + Vari colori
31
Tutorial progetti .tech
32
Tutorial progetti .tech
Il software:
const int rx1=5;
#define led 13
const int rx2=2;
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup()
{
lcd.begin(16, 2);
pinMode(rx1,INPUT);
pinMode(rx2,INPUT);
pinMode(led,OUTPUT);
Serial.begin(9600);
void loop() {
double spazio=0.0031;
double tempo=0.0;
double velocita=0.0;
double t1=0.0;
double t2=0.0;
int t=1;
//Serial.println(analogRead(rx2));
if(analogRead(rx1)<100)
33
Tutorial progetti .tech
{
t1=millis();
while(t>0)
{
if(analogRead(rx2)<100)
{
t2=millis(); //prendo il secondo tempo
tempo=(t2-t1)/3600000;
velocita=spazio/tempo;
lcd.clear();
lcd.print("Velocita': ");
lcd.print(velocita);
lcd.setCursor(10,1);
lcd.print(" km/h");
Serial.print("velocita': "); //invio su porta seriale il dato
Serial.print(velocita);
Serial.println(" km/h");
t--; //decremento in modo che t==0 ed esce dal while
digitalWrite(led,LOW);
}
if(velocita>30){
34
Tutorial progetti .tech
lcd.clear();
lcd.print("Velocita': ");
lcd.print(velocita);
lcd.print(velocita);
lcd.setCursor(4,1);
lcd.print("Rallenta!! ");
digitalWrite(led,HIGH);
}
else
digitalWrite(led,LOW);}
Serial.println("Rallenta ");
}
Serial.flush();
}
Accensione segnale intelligente
Questo progetto prevede di comandare un segnale stradale variandone il valore di velocità
visualizzata in caso di pioggia. Il caso proposto prevede due valori di velocità: 90 km/h in caso di
mancanza di pioggia e 70 Km/h in caso di pioggia. In pratica è un sensore di pioggia che commuta
dall’uno all’altro valore.
Il ritorno al valore più alto quando la pioggia finisce avviene in modo automatico non
istantaneamente bensì un certo ritardo (si prevede che dopo la pioggia la strada resti bagnata per
un bel pò).
35
Tutorial progetti .tech
Intelligent Signal (varia il limite di velocità in caso di pioggia)
Codice 01 SVARD09 - euro 27
Item
Componente
Descrizione
Quantità
1
Arduino Uno + cavo
16F84A
1
2
Alimentatore
220V/USB
1
3
sensore pioggia
4
resistenze
330 ohm
2
5
Resistenze
1KOhm
1
6
Diodi Led
di 2 colori
20
7
resistenze
180 ohm
5
8
Transistor
BC547
2
9
Basetta millefori
20x 10
cm
10
Morsetti
5
11
Strip maschi
10
12
Strip femmina
10
Figura
1
36
Tutorial progetti .tech
Lo schema con relativi componenti di Arduino è il seguente:
Infine volendo alimentare il tutto con pannello fotovoltaico di modo da fare un segnale intelligente
ed alimentato con fonti rinnovabili (o anche dette pulite) si ha:
37
Tutorial progetti .tech
Risposta esatta
Il circuito consiste nel creare un supporto di grandezza tipo foglio A4 o un pò più piccolo su cui
applicare i pulsanti e nel predisporre Arduino con un certo numero di domande con relative
risposte. In caso di riposta esatta la sequenza va avanti da sola mentre in caso di risposta errata si
può prevedere di scrivere quella corretta e di andare avanti manualmente con il pulsante di reset.
Il punto debole consiste nel fatto che la sequenza di domande è sempre la stessa, si potrebbe
scegliere magari con altri pulsanti o con un selettore quale
38
Tutorial progetti .tech
Stendino antipioggia
Nella tabella iniziale è indicato che questo progetto viene realizzato con microcontrollore PIC, in
questo corso verrà realizzato con Arduino. Nel caso un gruppo scelga questo progetto è bene
chiedere all’insegnante se è possibile realizzarlo con Arduino visto che quest’ultimo è più semplice
e versatile. Nel caso l’insegnante opti lo stesso per la realizzazione con il PIC sarà cura di IGS (nel
caso la scuola acquisti il kit), inviare un circuito semplice da assemblare.
Ad ogni modo questo progetto, sebbene molto utile e apprezzato viene qui realizzato in modo
didattico comandando un servomotore cui è solidale una copertura o una tenda che si chiude. La
potenza del servomotore è molto bassa per cui volendo passare ad un prototipo più grande non
sarebbe sufficiente sostituire il servomotore con un motore in corrente continua ed eventuale
scheda di comando poiché cambierebbe anche il software.
Infine si fa notare che per realizzare questo circuito potrebbe essere sufficiente un relè a doppio
scambio ed un trasduttore di pioggia un po’ più professionale
39
Tutorial progetti .tech
Apri cancello con cellulare
Questo progetto consiste nel creare una scheda elettronica tale che permetta di aprire un cancello
automatico tramite telefono cellulare.
Non si pretende di implementare tutte le funzionalità di un cancello come la riapertura in caso di
passaggio persone o la sirena lampeggiante ma realizzare un modello con le seguenti prerogative:
 Comando di apertura via cellulare (con l’utilizzo di un fotoresistore come l’apriscatola per
gatti)
 Movimentazione di un motore 12 Volt con relativo finecorsa
 Chiusura dopo un tempo t con relativo finecorsa
Uno dei primi passi è la realizzazione su basetta millefori della scheda per l’inversione del motore
(è preferibile usare un motoriduttore perché ha un basso numero di giri ed il cancello si apre e
chiude più lentamente)
Arduino riceve in ingresso il segnale analogico proveniente dalla fotoresistenza illuminata da un
cellulare e i due ingressi digitali provenienti dai due fine corsa, quello di ingresso e quello di uscita
40
Tutorial progetti .tech
Infine collegare i fine corsa:
Domotica
Questo progetto è da sviluppare insieme al docente del corso in quanto le funzionalità possono
essere poche ed essenziali così come ampie e sofisticate, pertanto sarà cura del docente del corso
accompagnare i trainer verso alcuni esempi
41
Tutorial progetti .tech
Fin qui i progetti della parte relativa ai microcontrollori, adesso si vedranno quelli dell’altra macro
area denominata nella tabella iniziale “energia ed automazione”, in cui si vedranno alcuni di
progetti alimentati con energia fotovoltaica. Tutti hanno un comune denominatore e sono
piuttosto semplici ed intuitivi da capire. Ci si augura che con un minimo di praticità li si possa
anche implementare. Tutti gli impianti prevedono un pannello fotovoltaico che carica una batteria
a 12 Volt, da quest’ultima tramite inverter si ricava tensione alternata monofase e da qui si
alimentano i vari carichi a 12 Vdc oppure a 230 Vac. Si noti che se si vogliono abbassare i costi
occorre limitarsi alla tensione della batteria evitando di collegare l’inverter. L’unico limite non
poter utilizzare prese a 230 V ma “solo” carica i-phone, telecamere, luci, mp3 ecc.
Solar Packaging (valigetta multimediale ad energia solare)
Il progetto presentato riguarda la realizzazione di una valigetta alimentata con energia solare, al cui interno
un inverter trasforma la tensione prodotta dal pannello fotovoltaico in tensione alternata (220 Volt).
Come uscite sono previste:





Lampade a led
Uscita USB
2 prese 220V
Casse stereo
MP3
Item
Componente
Descrizione
Quantità
1
2
3
4
5
6
7
8
9
Pannello Fotovoltaico
Batteria
Inverter
diodi led
Resistenza
Carica cellulare
Prese 220 Volt
mp3
Casse PC
5 Watt Policristallino
12 V 3,5 Ah
12Vdc /220 Vac
vari colori
120 Ohm
USB
1
1
1
multipli di 4
1
1
2
1
2
42
Tutorial progetti .tech
10
Magnetotermico
11
Interruttore
6A
1
1
43
Tutorial progetti .tech
44
Tutorial progetti .tech
Energia elettrica sotto l’ombrellone
Lista materiale
Ombrellone Fotovoltaico
Item
Componente
Descrizione
1
2
3
4
6
7
8
9
Pannello Fotovoltaico
Batteria
Inverter
Boccole
2 Prese da esterno
Adattatore 12 V / USB
Cavo rossonero
Magnetotermico
5 Watt Policristallino
12 V 3,5 Ah
12Vdc /220 Vac
Maschio + femmina
220 V
1,5 mm2
6A
45
Tutorial progetti .tech
Segnale Stradale fotovoltaico
Lista componenti
Item
Componente
Descrizione
Quantità
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Pannello Fotovoltaico
Batteria
NE 555
diodi led
resistenza
resistenza
resistenza
Trimmer
C
C
C
C
relè 1 scambio
diodo
5 Watt Policristallino
12 V 3,5 Ah
1
1
1
multipli di 4
2
1
1
1
1
1
1
1
1
1
vari colori
180 Ohm
1 kohm
6,8 Kohm
50 Kohm
100 nanoFarad
10 microFarad
10 nano Farad
47 micro Farad
con bobina a 12 volt
1N4007
La prima parte del progetto prevede la realizzazione di un multivibratore astabile
realizzato con un NE 555 in grado di far lampeggiare i led
46
Tutorial progetti .tech
La scheda appena realizzata munita di 2 morsetti di uscita, da integrare nel circuito
sotto
47
Tutorial progetti .tech
Infine ci sono alcuni progetti con PLC, molto costosi, che vengono richiesti dalle classi ad indirizzo
elettrotecnica degli istituti tecnici e professionali. Fermo restando che IGS può preparare il kit
completo con PLC programmato, morsettiera, e sensori ed attuatori da assemblare. Alcune scuole
potrebbero decidere di utilizzare il PLC già in possesso della scuola, in tal caso IGS propone i
componenti indicati sotto. Non si richiede al trainer di programmare il PLC in possesso della scuola
(sebbene l’argomento sia interessante) ma di avere le idee chiare sui collegamenti ad esso.
Serra Agricola
Questo progetto consiste nel realizzare un prototipo in piccola scala di serra in cui l’automazione è
realizzata con un controllore a logica programmabile (PLC). Le automazioni implementate saranno
alcune simulate ed altre reali. Più precisamente si simuleranno le variazioni di temperatura ed
umidità con due potenziometri mentre vi sarà un crepuscolare reale per regolare l’accensione
delle luci. Per rendere realistica anche l’altra automazione basta sostituire i due potenziometri con
due sensori con uscita in tensione (O – 10 Volt).
Gli attuatori sono tutti reali e di seguito sono descritti.
Dal punto di vista circuitale la parte più difficile riguarda la gestione della temperatura il cui
aumento è simulato dal potenziometro. Si stabiliscono due soglie T 1 e T2; al superamento della
prima si aziona una ventola (quelle per PC da 12 Volt), mentre al superamento della seconda si
aziona un motore (da 12 V in corrente continua) con cui si apre una finestra basculante (pannello)
della serra. La corsa del motore è arrestata dall’intervento di un finecorsa. La chiusura del
basculante e dunque l’inversione del senso di marcia del motore avviene premendo manualmente
un pulsante. L’accensione delle luci avviene con un interruttore crepuscolare. Infine, verrà
azionata una pompa per innaffiare (quelle dei tergicristalli delle automobili), che può essere
azionata in modo automatico o semiautomatico. Nel primo caso essa parte quando il
potenziometro (che rappresenta il tasso di umidità del terreno) supera la soglia prestabilita. Nel
secondo caso parte in modo “semiautomatico” nel senso che si imposta un timer.
48
Tutorial progetti .tech
Ingressi e uscite
In totale per realizzare questo prototipo dobbiamo impegnare 11 I/O del PLC, così distribuiti:
 2 ingressi analogici ( 2 potenziometri)
 4
ingressi
digitali
(finecorsa,
pulsante
ripristino,
crepuscolare,
selettore
Automatico/SemiAutomatico)
 5 uscite digitali (Marcia oraria Motore, Marcia antioraria Motore, Pompa, Ventola, Luci)
Come prototipo da utilizzare si può pensare a dei modellini di serre per uso domestico che costano
poco più di 10 Euro
49
Tutorial progetti .tech
50
Tutorial progetti .tech
Può vedersi anche in miniatura:
Nel circuito di figura 1 manca una scheda elettronica che ci permette l’inversione di marcia del
motore e che vedremo in seguito.
Se è chiaro il funzionamento e prima di passare al cablaggio finale si può fare questo passaggio
intermedio per avere la percezione corretta di cosa si va a collegare al PLC.
Notiamo una schedina con due relè, è la scheda di inversione del motore che descriveremo nel
dettaglio
Allora dalla figura 2 notiamo che tutti gli ingressi sono posizionati fisicamente sopra il PLC e tutte
le uscite sono posizionate sotto.
51
Tutorial progetti .tech
Effettuando correttamente i collegamenti e programmando opportunamente il PLC il modello in
scala ridotta di serra dovrebbe funzionare. Per il cablaggio finale è necessario posizionare sensori
ed attuatori nei posti stabiliti, predisporre una morsettiera ed alloggiare il PLC su una guida DIN.
52
Tutorial progetti .tech
53
Tutorial progetti .tech
Eventuali progetti mancanti, si ritengono analoghi a quelli presentati, sarà in ogni caso cura di igs
fonire assistenza e schemi su questi ultimi e su tutti gli altri progetti.
Per visualizzare i video dei progetti descritti sopra visitare il sito:
www.ingegnercozzolino.altervista.org
Per scaricare il presente manuale seguire il link:
http://www.ingegnercozzolino.altervista.org/alterpages/files/Tutorial_tech.pdf
54