Termistore

NOME COMPONENTE: thermistor

COME FUNZIONA:

Esistono due tipi di termistori NTC (negative temperature coefficient) e PTC (positive temperature coefficient).

i termistori lavorano entrambi con l’aumentare della temperatura, ovvero nel caso del termistore NTC la resistenza del sensore diminuisce con l’aumentare della temperatura mentre nel caso del termistore PTC la resistenza del sensore cresce con l’aumentare della temperatura.

La differenza tra i due però è solamente funzionale perchè il collegamento sulla scheda Arduino è lo stesso e anche il codice sorgente rimane invariato.

FOTO COMPONENTE:

 

 

 

 

ISTRUZIONI COLLEGAMENTO:Per il corretto funzionamento del componente bisogna collegare rispettivamente le porte VCC e GND del termistore ai pin 5V e GND sulla scheda arduino mentre la porta SIG va collegata sul un pin analogico sulla scheda

LIBRERIE NECESSARIE: Il termistore non richiede librerie

CODICE DI ESEMPIO:

int thermistorPin = 0; //thermistor connected to analog pin 0
void setup()
{
pinMode(thermistorPin, INPUT); //Set analog 0 port mode, the INPUT for the input
Serial.begin(9600); //opens serial port, sets data rate to 9600 bps
}
void loop()
{
float a = analogRead(thermistorPin);
//the calculating formula of temperature
float resistor = (1023.0*10000)/a-10000;
float tempC = (3435.0/(log(resistor/10000)+(3435.0/(273.15+25)))) - 273.15;
Serial.print(tempC); //send data to the serial monitor
Serial.println(" C"); //send data to the serial monitor
delay(50); //delay 0.05 s
}

Raindrop sensor

Nome componente : raindrop sensor.

Come  funziona : il sensore pioggia rileva l’acqua che completa i circuiti sui conduttori stampati delle schede dei sensori. La scheda sensore funziona come un resistore variabile che cambierà da 100k ohm se bagnato a 2M ohm a secco. In breve, più umida è la tavola più corrente sarà condotta.

Sigla componente: YL-83

Foto componente:

.

Istruzioni collegamento (foto e fritzing):

   

 

 

 

Codice dimostrativo:

void setup()

{
  Serial.begin (9600);

  pinMode (13 , INPUT);

}

void loop()

{

  int value = analogRead(A1);

  int digital = digitalRead(13);

 

  Serial.println (value);

  Serial.println (digital);

  delay(2000);

}

HALL SWITCH

Come funziona : Il sensore ritorna un valore booleano in base alla polarizzazione magnetica in prossimità ad esso. In caso di avvicinamento con un magnete il sensore cambierà il valore ritornante.

Sigla modello : 2SSR

Foto componente :

Istruzione collegamento :  collegare il pin indicato con GND (sul sensore) alla massa sull’ arduino. Collegare il pin indicato con VCC (sul sensore) al pin da 3.3V o 5V sull’ arduino. Collegare il pin indicato con SIG(sul sensore) ad un pin digitale a scelta sull’ arduino per ricevere input il valore del sensore.

Librerie necessarie  :  non sono necessarie librerie per l’ utilizzo.

Codice esempio :  seguire l’ istruzioni di collegamento (collegare il pin SIG al pin 7 dell’ arduino).


void setup() {
pinMode(7,INPUT);    //RICEVIAMO L'OUTPUT DEL SENSORE SUL PIN 7
Serial.begin(9600);  //INIZIALIZZIAMO LO SCHERMO SERIALE
}
void loop() {
Serial.println(digitalRead(7)); //MANDIAMO IN OUTPUT IL VALORE DEL SENSORE
delay(500); //METTIAMO IN STAND BY IL PER 1/2[s]' }

Color Sensor

Nome del Componente:  SunFounder Color Sensor

Come funziona: Quando illuminiamo un oggetto con la luce bianca dei quattro LED, esso assorbe le frequenze luminose in base alla sua particolare forma o materiale. L’oggetto riflette il resto delle frequenze luminose ed il risultato è il colore che viene percepito dal nostro occhio, che per inciso mischia automaticamente le frequenze luminose e crea la percezione di un unico colore.

Sigla Modello: TCS3200

Foto Componente: 

Istruzioni Collegamento:

Colleghiamo il pin GND del sensore a qualsiasi porta GND presente nella scheda Arduino, il pin VCC con la porta 5V e i pin  OUT, S0, S1, S2, S3 con qualsiasi porta digitale.

Quindi di conseguenza:
GND – GND
VCC – 5V
E poi noi abbiamo scelto:
OUT –
 2
S0 –  3
S1 – 4
S2 – 5
S3 – 6 

Librerie necessarie:  nessuna libreria necessaria

Codice di esempio:
#define S0 3 //definisco una costante
#define S1 4
#define S2 5
#define S3 6
#define sensorOut 2

int frequenza = 0; //assegno alla variabile un
valore

void setup() {
  //il pinMode serve per configurare un determinato 
  pin e stabilire se deve essere un ingresso o 
  un'uscita
  pinMode(S0, OUTPUT);
  pinMode(S1, OUTPUT);
  pinMode(S2, OUTPUT);
  pinMode(S3, OUTPUT);
  pinMode(sensorOut, INPUT);
  digitalWrite(S0,HIGH); //HIGH e LOW si usano quando
  si vuole accendere o spegnere un pin 
  digitalWrite(S1,LOW);
  Serial.begin(9600);

}

void loop() {

  digitalWrite(S2,LOW); 
  digitalWrite(S3,LOW);
  frequenza = pulseIn(sensorOut, LOW); //misura la 
  durata degli impulsi in arrivo su uno degli ingressi
  digitali
  Serial.print("Rosso= ");
  Serial.print(frequenza); //stampa in seriale la 
  frequenza
  Serial.print("  ");
  delay(100);

 

  digitalWrite(S2,HIGH); 
  digitalWrite(S3,HIGH);
  frequenza = pulseIn(sensorOut, LOW);
  Serial.print("Verde= ");
  Serial.print(frequenza);
  Serial.print("  ");
  delay(100);

  
  digitalWrite(S2,LOW);
  digitalWrite(S3,HIGH);
  frequenza = pulseIn(sensorOut, LOW);
  Serial.print("Blu= ");
  Serial.print(frequenza);
  Serial.println("  ");
  delay(100);

  delay(1000); //1 secondo di pausa

}

Volendo si può aggiungere la funzione map() che serve a “ri-mappare” un numero (come la lettura di un sensore) da un intervallo ad un’altro.

map(value, fromLow, from High, toLow, toHigh)

Si indica la variabile che conterrà il valore “ri-mappato” (value), poi si scrive il valore minimo (fromLow) e massimo (fromHigh) prima della ri-mappatura e, a seguire, il valore minimo (toLow) e massimo (toHigh) dopo la ri-mappatura.

Ester & Alissa

Passive Buzzer

Come Funziona:  Dando in input un valore produce in output un suono di frequenza pari al valore.

Sigla Componente:  2SSR

Istruzioni Collegamento:  Il modulo buzzer passivo presenta una porta a 3 pin:
1. segnale (SIG) colore cavo giallo;
2. tensione (VCC) c.c. rosso;
3. terra (GND) c.c. nero;
Colleghiamo il pin 1 (SIG) alla porta 7 del nostro arduino uno,
il pin 3 (GND) invece ad una qualsiasi porta “GND” della scheda
e in fine il pin 2 (VCC) lo connettiamo alla porta che presenta 3,3[V] di output.

Video Dimostrativo (.MOV)

Librerie Necessarie: Nessuna

Codice:

const int buzzerPin = 7;//il buzzer si collega a
int fre;//imposta la variabile per memorizzare il valore di frequenza
void setup()
{
 pinMode(buzzerPin,OUTPUT);//imposta buzzerPin come OUTPUT
}
void loop()
{
 for(int i = 200;i <= 800;i++)// ciclo di frequenza da 200 a 800
 {
 tone(7,i); // nel pin7 genera un tono, la frequenza è i
 delay(5); // attendi 5 millisecondi
 }
 delay(4000); 
 for(int i = 800;i >= 200;i--) // ciclo di frequenza da 800 a 200
 {
 tone(7,i); // nel pin7 genera un tono, la frequenza è i
 delay(10); // attendi 10 millisecondi
 }
}