ARDUINO: DALLA TEORIA
ALLA PRATICA
IMPARIAMO A COLLEGARE I SENSORI
PASSI
-
Riassunto giornata precedente
-
Condizioni “if” e “for”
-
Colleghiamo un pulsante al led
-
Leggiamo in analogico
-
Colleghiamo il sensore di temperatura
-
Costruiamo un termometro
RIASSUNTO GIORNATA
PRECEDENTE
La volta scorsa abbiamo imparato:
-
cosa sono le variabili;
-
come si inseriscono le funzioni;
-
la struttura del programma!
MICA MALE PER ESSERE LA PRIMA LEZIONE
FUNZIONI IF E FOR
if(variabile condizione variabile)
{
}
esempio:
if(pippo = 10)
{
digitalWrite(led, HIGH);
}
la funzione FOR è praticamente uguale alla funzione LOOP,
cioè ripete sempre quello che scriviamo alle parentesi graffe fino al
conseguimento di un azione.
for(i ; i<10 ; i++)
{
}
esempio:
for(i;i<10;i++)
{
digitalWrite(led, HIGH);
delay(1000);
digitalWrite(led, LOW);
delay(1000);
}
COLLEGHIAMO UN
PULSANTE AL LED
int pulsante = 2;
int led = 13
int statoPulsante = 0;
void setup()
{
pinMode(led, OUTPUT);
pinMode(pulsante, INPUT);
}
void loop(){
statoPulsante = digitalRead(pulsante);
if (statoPulsante == HIGH)
{
digitalWrite(led, HIGH);
}
digitalWrite(led, LOW);
}
LEGGIAMO IN
ANALOGICO
Finora abbiamo utilizzato le funzioni digitalRead e
digitalWrite per leggere o scrivere il valore su un pin digitale
di arduino, praticamente vediamo se arrivano 5V oppure 0, e
mandiamo 5V piuttosto che 0.
Se invece volessimo leggere un valore analogico dovremmo
innanzitutto collegare il nostro sensore su uno dei pin che
iniziano con A (A0, A1, A2, ecc…)
Il nostro pin analogico ci permette di inserire valori che sono
compresi tra 0 e 5V come per esempio 3,7V.
Per fare questo utilizziamo la funzione:
analogRead()
esempio:
pippo= analogRead(A0);
all’interno di pippo abbiamo il valore del pin A0.
Se noi mettiamo 3,7V sul pin A0 però non troviamo il valore
3,7 all’interno di pippo… e cosa troviamo?
Troviamo un valore compreso tra 0 e 1024.
Se diamo 0 sul pin A0 troviamo 0 su pippo
Se diamo 5V sul pin A0 troviamo 1024 su pippo
Se diamo 3,7V sul pin A0 troviamo (1024/5)*3,7= 758 su pippo
COLLEGHIAMO IL
SENSORE DI
TEMPERATURA
float tempC;
int tempPin = 0;
void setup()
{
Serial.begin(9600);
}
void loop()
{
tempC = analogRead(tempPin);
tempC = (5.0 * tempC * 100.0)/1024.0;
Serial.println(tempC);
Serial.print(" Celsius, ");
delay(1000);
}
COSTRUIAMO UN
TERMOMETRO
Oggetti:
- 3 led (1 verde, 1 giallo, 1 rosso);
- 1 sensore di temperatura LM35DZ.
Scopo:
SE la temperatura è < 24°C si accende il led verde,
SE la temperatura è compresa tra 24°C e 28°C si accende
quello giallo,
SE la temperatura è >28°C si accende il led rosso.
SUGGERIMENTI
if(temp < 24)
// 24°C = 49 come valore di ingresso
{
}
if(28 > temp > 24)
{
}
if(temp > 28)
{
}
// 28°C = 57 come valore di ingresso
Scarica

Lab tecnologico lezione 01