Arduino med analog temperatursensor

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/