Lo scopo di questo tutorial mostra come far far comunicare Arduino e un cellulare, tramite un modulo bluetooth.
Materiale
- Arduino Uno
- Modulo bluetooth HC-05


by ANTONIO PAGANO
Lo scopo di questo tutorial mostra come far far comunicare Arduino e un cellulare, tramite un modulo bluetooth.
Materiale

DESCRIZIONE
Misurare temperatura e umidità tramite il sensore DHT11 e arduino.
Osservando il datasheet del DHT11 si nota che va collegata anche una resistenza (detta di pull-up) sul pin 2, e anche che vengono usati solo 3 piedini su 4 disponibili.
qui troverete la libreria che permette di usarlo
MATERIALE USATO
Sensore umidità e temperatura DHT11
Resistenza da 5k
Arduino
SCHEMA
SKETCH
#include
dht11 DHT11;
#define DHT11PIN 2
void setup()
{
Serial.begin(9600);
}
void loop()
{
int chk = DHT11.read(DHT11PIN);
Serial.print("stato sensore: ");
switch (chk)
{
case 0: Serial.println("OK"); break;
case -1: Serial.println("Checksum error"); break;
case -2: Serial.println("Time out error"); break;
default: Serial.println("Unknown error"); break;
}
Serial.print("Umidita (%): ");
Serial.println((float)DHT11.humidity, 2);
Serial.print("Temperatura (Celsius): ");
Serial.println((float)DHT11.temperature, 2);
delay(5000);
}
L’esperimento consiste nel regolare, tramite potenziometro, l’intensità della luce emessa da un LED.
Materiale richiesto:
1 resistenza 1KOhm
1 potenziometro
1 led
e ovviamente un arduino.
Piccolo ripasso dei componenti:
Potenziometro, fondamentalmente è un dispositivo che permette di variare la resistenza, e quindi la quantita di corrente che attraversa il circuito, tramire una semplice manopola. O meglio, non regola la quantita di corrente ma bensi la tensione. Infatti le resistenze NON bloccano la corrente! come per tutti i bipoli elettrici, si ha che I(in) = I(out), sempre!
Quello che fanno è assorbire della potenza e provocare una caduta di tensione ai capi. Ricordiamo che la prima legge di Ohm è V=R*I, essendo I costante variando R variamo la V.
Led, è un compontente che sviluppa luce al passaggio di corrente. O meglio, il led si comporta come un conduttore perfetto quando si applica una tensione in un certo modo (polarizzazione diretta), e diventa un isolante quando si inverte la tensione (polarizzazione inversa) . Tutto questo in teoria, nella realtà, osservando la curva corrente-tensione di un diodo, si nota che la conduzione in polarizzazione diretta
è possibile solo superando una tensione di soglia Vg. Il polo positivo è detto anodo, quello negativo catodo. La polarizzazione diretta è quando si applica il positivo all anodo e il negativo al catodo
Riassumento e semplificando, possiamo considerare questo dispositivo dal suo aspetto funzionale (ideale) come un interruttore, il quale risulta essere chiuso quando è polarizzato direttamente (quindi percorso da una determinata intensità di corrente) ed aperto quando è polarizzato inversamente (non consente il passaggio di intensità di corrente, nel caso ideale).
Schema elettronico
Per quanto riguarda la parte software abbiamo
int valore = 0;
int pinPonteziometro = A0;
int pinLed = 9;
void setup() {
pinMode(pinPonteziometro, INPUT); // pin potenziometro
pinMode(pinLed, OUTPUT); // pin led
Serial.begin(9600); // inizializza il collegamento seriale
}
void loop() {
valore = analogRead(pinPonteziometro); // legge il valore analogico del //potenziometro
Serial.print("Valore letto dal potenziometro:");
Serial.println(valore); // Stampa il valore letto
if (valore > 255)
digitalWrite(pinLed, HIGH); //accende il led
if (valore < 0)
digitalWrite(pinLed, LOW); //spegne il led
if (valore > 0 && valore < 255)
digitalWrite(pinLed, valore); // intensita luminosa del led uguale al valore letto dal potenziometro
delay(1000); // aspetta 1000 millisecondi, ossia un secondo
}
da notare che la luminosità del led può assumere valori che vanno da 0 a 255, mentre i valori del potenziometro vanno fino a 1024, se non sbaglio, ecco spiegato il perchè delle if.
Uno sketch è composto da due funzioni: setup() che serve a inizializzare le varie componenti e loop() che viene eseguita in continuazione su arduino. Altre funzioni native di arduino sono: