W tym dyskursie Wartości czujnika temperatury są wyświetlane na LCD ON za pomocą Arduino.
Czujnik temperatury
Aby wyczuć temperaturę obszaru lub dowolnego urządzenia, istnieją różne rodzaje czujników, które można użyć, takie jak LM35, termistor, detektor temperatury oporności (RTD), chipsy na bazie półprzewodników i wiele innych. W tym projekcie używamy Moduł LM35 Aby wykryć temperaturę. Ten czujnik ma trzy szpilki, środkowy szpilka dotyczy danych, które wyśle swoje pomiary na planszę Arduino. Resztę dwóch pinów można użyć do napięcia zasilania i uziemienia.
Ponieważ wszystkie czujniki mają różne wyjścia, są one używane jako urządzenie analogowe.
Schemat obwodu do wyświetlania wartości czujnika temperatury jest:
Podany poniżej program Arduino wyświetla wartości temperatury zarówno w Centijuszu, jak i Fahrenheicie.
#include // biblioteka dla LCD
int vcc = a0; // A0 Zasilanie pinów LM35
int vout = a1; // Pin A1 dla wyjścia LM35
int gnd = a2; // A2 PIN uziemiający LM35
intValue int; // deklarowanie typu danych do wyjścia LM35
float valueinc; // deklarowanie typu danych dla stopnia Celsjusza
float valueInf; // deklarowanie typu danych dla fahrenheita
Płyncrystal LCD (12, 11, 5, 4, 3, 2); // szpilki Arduino dla LCD
void Setup ()
// inicjowanie trybów pinów LM35
pinmode (VCC, wyjściowe);
pinmode (vout, input);
Pinmode (GND, wyjściowe);
// inicjowanie stanów dla pinów LM35
DigitalWrite (VCC, High);
DigitalWrite (GND, niski);
LCD.Rozpocznij (16, 2); // Inicjowanie wymiarów LCD
LCD.setCursor (2,0); // podanie lokalizacji początkowej danych
LCD.druk („temperatura”);
Void Loop ()
sensorValue = analogread (vout); // Odczyt wyjścia LM35
valueInc = sensorValue*0.488; // Przekształcanie wartości w Celsjuszu
valueInf = (valueinc*1.8) +32; // Przekształcanie Celsjusza w Fahrenheicie
// Wyświetlanie wartości temperatury
LCD.setCursor (1,1);
LCD.wydruku (wartość);
LCD.druk ((char) 223); // Wyświetlanie symbolu stopnia
LCD.druk („c”);
LCD.setCursor (9,1);
LCD.print (wartośćInf);
LCD.Drukuj ((char) 223); // Wyświetlanie symbolu stopnia
LCD.druk („f”);
opóźnienie (5000);
Czujnik jest połączony z Arduino Uno w taki sposób, że wszystkie jego piny są podłączone do analogowych pinów płyty Arduino.
Pinezka A0 jest inicjowany jako napięcie zasilające do czujnika temperatury. Pin analogiczny A1 Arduino jest inicjowany jako styk danych, który odbędzie wyjście czujnika. Dla grunt czujnik, szpilka A2 jest inicjowany jako szpilka uziemienia LM35.
Podobnie, po inicjowaniu trybów, po tym, jak piny danych wyświetlacza ciekłokrystalicznego, które mają być podłączone do Arduino. Ponieważ wyjście czujnika będzie działać jako wejście dla Arduino So Pin A1 otrzymuje tryb wejściowy i Inne piny działają w trybie wyjściowym
Podobnie pin A0 otrzymuje wysoki stan dla zasilania napięcia i Pin A2 otrzymuje niski stan ponieważ jest używany jako grunt.
Aby odczytać wartości czujnika analogread () Używana jest funkcja, a następnie mnożona z 0.488.
Ponieważ wyjście czujnika temperatury ma postać wartości analogowych napięcia w zakresie od 0 do 1023, czyli dla 0 woltów, wartość wyniesie 0, a dla wartości 1023 napięcie wyniesie 5 woltów. Mamy podzielone 500 na 1023, czyli 0.488 ponieważ wzrost temperatury o 10 miliWoltów na stopień Celsjusza.
Po przekształceniu wartości napięcia w temperaturze temperatura jest przekształcana w Fahrenheita
Temperatura we Fahrenheita = (temperatura w stopniu Celsjusza *1.8) +32
Do regulacji danych wyświetlanych na LCD użyliśmy LCD.setCursor () funkcja, podając różne wiersze i kolumny danych.
Do wyświetlania symbolu stopnia użyliśmy ASCII dla symbolu stopnia 223, a funkcja pętli działa z opóźnieniem 5 sekund.
Ponadto podłączyliśmy czujnik bezpośrednio na analogowych pinach Arduino:
Wyjście
Wniosek
Czujniki to urządzenia, które oddziałują bezpośrednio ze środowiskiem i gromadzą informacje o otoczeniu. Istnieją różne rodzaje czujników do gromadzenia różnych rodzajów danych. W tym zapisie zmierzyliśmy temperaturę pomieszczenia za pomocą czujnika temperatury (LM35), a wartość temperatury jest wyświetlana przy użyciu wyświetlacza ciekłokrystalicznego 16 × 2 (LCD).