Hoe maak je een digitale thermometer met Arduino?
Een digitale thermometer meet de lichaamstemperatuur van een menselijk lichaam en geeft deze weer op het scherm. Digitale thermometers die op de markt verkrijgbaar zijn, zijn een beetje duur. Dus als we thuis de nodige componenten hebben, kunnen we thuis een goedkope digitale thermometer maken met dezelfde efficiëntie als een thermometer die op de markt verkrijgbaar is.
Hoe een temperatuursensor gebruiken om de lichaamstemperatuur te meten?
We weten dat we de lichaamstemperatuur van een persoon gaan meten met Arduino. Laten we dus aan de slag gaan om meer informatie te verzamelen om het project te starten.
Stap 1: Componenten
Als u ongemak midden in een project wilt voorkomen, kunt u het beste een volledige lijst maken van alle componenten die we gaan gebruiken. De tweede stap, voordat u begint met het maken van het circuit, is om al deze componenten kort te bestuderen. Hieronder vindt u een lijst met alle componenten die we in dit project nodig hebben.
Stap 2: De componenten bestuderen
Omdat we al een lijst met componenten hebben gemaakt, gaan we een stap verder en gaan we door een korte studie van de werking van elke component.
Arduino Nano is een microcontrollerbord. De microcontroller erop is: ATMega328P.Het vereist een C-codeopereren. In deze code vertellen we de verwerkingsverantwoordelijke hoe en welke handelingen hij moet uitvoeren.
LM35 is een temperatuursensor. Zijn vorm is als een transistor. Het produceert een uitgangsspanning die recht evenredig is met de temperatuur. De uitgangsspanning kan eenvoudig worden gebruikt om de temperatuur in Celsius te bepalen. Het is beter dan thermistoren omdat het gevoeliger is voor temperatuur en nauwkeurige metingen geeft. Het bereik is van -55 graden tot 150 graden Celsius.
Stap 3: Het circuit maken
Laten we nu alle componenten samenvoegen om een circuit te maken.
- Plaats het Arduino Nano-bord in het breadboard.
- Neem de LM35-sensor en verbind zijn poten via mannelijke naar vrouwelijke jumperdraden met de Arduino. Sluit de Vcc- en grondpin aan op de 5V en aarde van het Arduino Nano-bord en verbind de OUT-pin met A5 van Arduino. Het is beter om een ww0-ohm weerstand aan te sluiten op de Vcc pin van de LM35 temperatuursensor.
Stap 4: Aan de slag met Arduino
Als u nog niet bekend bent met de Arduino IDE. Maak je geen zorgen, want hieronder wordt een stapsgewijze procedure gegeven om Arduino IDE in te stellen en te gebruiken:
- Download de nieuwste versie van Arduino IDE van Arduino.
- Sluit uw Arduino nano-bord aan op uw laptop en open het Configuratiescherm.
- Klik op Hardware en geluid en klik vervolgens op Apparaten en printers. Hier vind je de poort waarop je Arduino Nano-bord is aangesloten. Op mijn laptop is het COM14, maar het kan anders zijn op uw laptop.
- Klik op het gereedschapsmenu en stel het bord in op Arduino Nano.
- Stel in hetzelfde Tool-menu de processor in als: ATmega328P (oude bootloader).
- Stel nu in hetzelfde Tool-menu de poort in die u al hebt waargenomen in Apparaten en printers.
- Download de onderstaande code en kopieer deze naar uw IDE. klik op de uploadknop om de code op je Arduino Nano-bord te branden.
Klik hier om de code te downloaden.
Stap 5: Coderen.
De code is heel simpel. Hieronder wordt het kort uitgelegd:
1. De pin van Arduino om analoge invoer te nemen, wordt aan het begin geïnitialiseerd. Alle variabelen die later zullen worden gebruikt om verschillende waarden op te slaan, worden hier ook geïnitialiseerd.
const int-sensor = A5; // Toewijzen van analoge pin A5 aan variabele 'sensor' float tempc; //variabele om temperatuur op te slaan in graden Celsius float tempf; //variabele om temperatuur op te slaan in graden Ferhanite float vout; // tijdelijke variabele om sensormeting vast te houden
2. ongeldige setup()is een functie waarin we de pinnen van Arduino initialiseren om te gebruiken als INPUT of OUTPUT. In deze functie wordt ook de baudrate ingesteld. Baudrate is de communicatiesnelheid van de microcontrollerkaart naar de aangesloten sensoren.
void setup () { pinMode (sensor, INPUT); // Sensorpin configureren als invoer Serial.begin (9600); }
3. lege lus() is een functie die herhaaldelijk in een cyclus wordt uitgevoerd. In deze functie wordt de invoer naar het Arduino-bord verwerkt en wordt de uitvoer naar de andere pinnen gestuurd of weergegeven op de seriële monitor.
void loop () {vout = analogRead (sensor); // Lezen van de waarde van sensor vout = vout * (5.0/1023.0); tempc=vout; // Waarde opslaan in graden Celsius tempf=(vout*1.8)+32; // Temp converteren naar Ferhanite Serial.println ("in Degree C = "); Serial.print(tempc); Serial.println ("in graad F = "); Serial.print(tempf); Serieel.println(" "); vertraging (500); // Vertraging van 1 seconde voor het gemak van kijken}
In bovenstaande functie komt er een analoge ingang naar pin A5 van de Arduino. Deze analoge ingang wordt door middel van een formule omgezet in digitale vorm. In deze formule wordt de analoge ingang vermenigvuldigd met de totale volt geleverd door de microcontrollerkaart en gedeeld door de maximale analoge waarde die 1023 is.
Wanneer deze analoge gegevens worden omgezet in digitale vorm, worden deze direct geïnterpreteerd als de temperatuur in graden Celsius. Om de Ferhanite-temperatuur ook op de seriële monitor weer te geven, hebben we een formule gebruikt om deze temperatuur om te rekenen naar Ferhanite en deze vervolgens op het scherm weer te geven.
Nu hebben we een digitale thermometer gemaakt met Arduino. Leg deze LM35 sensor op je arm en bedek hem met een doek en geniet van het meten van je lichaamstemperatuur.