ArduinoSensorer

Temperatur sensor (tmp36)

https://www.lawicel-shop.se/tmp36-temperature-sensor

TMP36 är en lågspännings, Celsius-temperatursensor som mäter skillnaden av temperaturen runt om den. Tekniken bakom den är att den ger en spänningsutgång som är linjärt proportionell mot Celsius-temperaturen.

Jag fick det att fungera genom att använda en kod från internet som gör att lamporna som är uppkopplade med pin 2,3,4 kommer att kunna lysa upp då temperaturs sensor detekterar värme och om det är högt så kommer alla lampor att lysa.

kod:

int baselineTemp = 0;
int celsius = 0;
int fahrenheit = 0;

void setup()
{
pinMode(A0, INPUT);
Serial.begin(9600);

pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
}

void loop()
{
baselineTemp = 40;

celsius = map(((analogRead(A0) – 20) * 3.04), 0, 1023, -40, 125);

fahrenheit = ((celsius * 9) / 5 + 32);
Serial.print(celsius);
Serial.print(” C, “);
Serial.print(fahrenheit);
Serial.println(” F”);

if (celsius < baselineTemp) { digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, LOW); } if (celsius >= baselineTemp && celsius < baselineTemp + 10) { digitalWrite(2, HIGH); digitalWrite(3, LOW); digitalWrite(4, LOW); } if (celsius >= baselineTemp + 10 && celsius < baselineTemp + 20) { digitalWrite(2, HIGH); digitalWrite(3, HIGH); digitalWrite(4, LOW); } if (celsius >= baselineTemp + 20 && celsius < baselineTemp + 30) { digitalWrite(2, HIGH); digitalWrite(3, HIGH); digitalWrite(4, HIGH); } if (celsius >= baselineTemp + 30) {
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
}


delay(1000);
}

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *

Denna webbplats använder Akismet för att minska skräppost. Lär dig hur din kommentardata bearbetas.