Log och Graf du händelser med 24V termostat (Optocoupler + Raspberry Pi) (5 / 9 steg)
Steg 5: Tråd upp en krets mäta temperaturen (valfritt)
Naturligtvis, om du vill veta om uppvärmning/kylning systemet faktiskt svarar på termostat händelserna vi mäter, måste vi mäta temperaturen! Det finns massor av temperatur sensor tutorials ute; många använder TMP36 eller en liknande anordning, som är en analog sensor. TMP36 är otroligt lätt att använda och kräver oftast ingen stödkomponenter - dock eftersom Pi saknar en analog-till-digital-omvandlare, i detta fall du behöver en extra ADC chip, som MCP3008, att läsa värden från den.
Istället för att använda TMP36, valde jag för att använda den ADT7410, som är betydligt mer exakt och producerar digitala utgången på en I2C gränssnitt, vilket kan läsas direkt av Pi. Det har också andra funktioner, exempelvis lågenergilägena och temperatur trösklar som kan utlösa avbrott. Den enda nackdelen är att det bara är tillgänglig som en SOIC-8 paket, vilket kan vara tufft att jobba med. Jag använde en SOIC till dopp breakout ombord.
Kretsen är enkel - makt, mark, fyra 10 k Ohm pullup motstånd, en 0.1 uF kondensator över hela utbudet stift och kablar ansluter två I2C stiften (SDA och SCL) till Pi. Två adressraderna (A0 och A1) är anslutna till marken för att ge enheten ett I2C adress 0x48. ADT7410 kan fungera på en rad olika spänningar och kan drivas direkt från Pi: s 3.3V leverera.
Nederkant hälften av schematiskt visar temperatur sensor circuit.