Les 13 (Temperatuur sensor)

Alleen lezen

Moderator: pe1br

Post Reply
pe1br
Posts: 66
Joined: Thu Apr 14, 2016 3:37 am

Les 13 (Temperatuur sensor)

Post by pe1br »

De temperatuur sensor wordt uitgedeeld in de les.

Les13-1:

Zorg er voor dat je alle voedingsspanningen los koppelt (usb niet aangesloten op de pc en geen power adapter aangesloten op de voedingsplug).
sluit de Arduino aan volgens onderstaand schema:


Start het Arduino programma en sluit de USB kabel aan.
Typ de volgende code over of kopieer deze naar de arduino ide:

Code: Select all

float temp;       //container voor de temperatuur
int tempPin = A0; //pin waarop de temperatuur sensor aangesloten is

void setup() {
  Serial.begin(9600); //baudrate serial
}

void loop() {
  temp = (( analogRead(tempPin) / 1024.0) * 5000) / 10; //formule voor het bepalen van de temperatuur
  Serial.print("TEMPRATURE = "); //print text naar de serial monitor
  Serial.print(temp);            //Print de gemeten temperatuur
  Serial.println(" C");            //print text naar de serial monitor
  delay(1000);
}
Klik op de upload button en start de serial monitor, maak de sensor warmer met je vingers om verandering te kunnen zien.

Les13-2:

Zorg er voor dat je alle voedingsspanningen los koppelt (usb niet aangesloten op de pc en geen power adapter aangesloten op de voedingsplug).
sluit de Arduino aan volgens onderstaand schema:


Start het Arduino programma en sluit de USB kabel aan.
Typ de volgende code over of kopieer deze naar de arduino ide:

Code: Select all

#include <LiquidCrystal.h>              //start de bibliotheek voor het lcd scherm
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);  //definieer de pinnen voor het lcd scherm

float temp;       //container voor de temperatuur
int tempPin = A0; //pin waarop de temperatuur sensor aangesloten is

void setup() {
  lcd.begin(16, 2); //Start de LCD routine en definieer het type scherm
}

void loop() {
  temp = (( analogRead(tempPin) / 1024.0) * 5000) / 10; //formule voor het bepalen van de temperatuur
  lcd.print("Temp = "); //print de text Temp =
  lcd.print(temp);      //Print de gemeten temperatuur
  lcd.print(" C");      //print een C voor celcius
  delay(500);           //wacht voor 500 ms  
  lcd.clear();          //wis alle text op het lcd scherm
}
Klik op de upload button, maak de sensor warmer met je vingers om verandering te kunnen zien.

Les13-3:

Met deze gegevens kunnen we een relay schakelen voor regeling van ventilator, verwarming, koeling etc.
Zorg er voor dat je alle voedingsspanningen los koppelt (usb niet aangesloten op de pc en geen power adapter aangesloten op de voedingsplug).
sluit de Arduino aan volgens onderstaand schema:


Start het Arduino programma en sluit de USB kabel aan.
Typ de volgende code over of kopieer deze naar de arduino ide:

Code: Select all

#include <LiquidCrystal.h>              //start de bibliotheek voor het lcd scherm
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);  //definieer de pinnen voor het lcd scherm

float temp;       //container voor de temperatuur
int tempPin = A0; //pin waarop de temperatuur sensor aangesloten is


int mintemp = 29; //definieer minimale temperatuur
int maxtemp = 32; //definieer maximale temperatuur
int relaypin= 8;  //definieer de pin voor het relais

void setup() {
  lcd.begin(16, 2);           //Start de LCD routine en definieer het type scherm
  pinMode(relaypin, OUTPUT);  //set de relay pin als output pin
}

void loop() {
  temp = (( analogRead(tempPin) / 1024.0) * 5000) / 10; //formule voor het bepalen van de temperatuur
  lcd.print("Temp = ");                                 //print de text Temp =
  lcd.print(temp);                                      //Print de gemeten temperatuur
  lcd.print(" C");                                      //print een C voor celcius
  delay(500);                                           //wacht voor 500 ms  
  lcd.clear();                                          //wis alle text op het lcd scherm
  if (temp < mintemp) digitalWrite(relaypin, LOW);         //als de temperatuur lager is dan de mintemp schakel het relais uit
  if (temp > maxtemp) digitalWrite(relaypin, HIGH);        //als de temperatuur hoger is dan de maxtemp schakel het relais aan
}
Attachments
les-13-2_bb.jpg
(265.61 KiB) Not downloaded yet
les-13-3_bb.jpg
(891.81 KiB) Not downloaded yet
les-13-1_bb.jpg
(665.66 KiB) Not downloaded yet
Post Reply