I denne øvelsen så skal vi utføre måling av temperatur ved hjelp av en lineær temperatursensor som gir ut en analog spenning. De prinsippene som brukes i oppgaven er mye brukt innenfor automatisering, slik at det er greit å kunne dem.
Utskrift av eksempel på programkode:
int tempC = 0;
const int lav = 20, middels = 60, hoy = 80;
void setup()
{
pinMode(A0, INPUT);
Serial.begin(9600);
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
}
void loop()
{
tempC = map(((analogRead(A0) - 20) * 3.04), 0, 1023, -40, 125);
Serial.print(tempC);
Serial.println(" C, ");
if (tempC < lav) {
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
}
if (tempC >= lav && tempC < middels) {
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, HIGH);
}
if (tempC >= middels && tempC < hoy) {
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
}
if (tempC >= hoy) {
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
}
delay(100);
}
Informasjon omkring «map» funksjonen:
https://www.arduino.cc/reference/en/language/functions/math/map/
