Arduino - Verwarmingssysteem
In deze tutorial gaan we de kamertemperatuur regelen met behulp van een verwarmingselement en een DS18B20 temperatuursensor. Wanneer de temperatuur te laag is, wordt het verwarmingselement ingeschakeld. Wanneer de temperatuur warm genoeg is, schakelt het verwarmingselement uit. U kunt de code ook aanpassen voor andere temperatuursensoren zoals de DHT11, DHT22 of LM35 in plaats van de DS18B20 sensor.
Hardware benodigd
Of u kunt de volgende kits kopen:
| 1 | × | DIYables Sensorkit (30 sensoren/displays) | |
| 1 | × | DIYables Sensorkit (18 sensoren/displays) |
Aankoopadvies: Veel DS18B20-sensoren op de markt zijn van lage kwaliteit. We raden u ten zeerste aan de sensor van het merk DIYables te kopen via de bovenstaande link. We hebben het getest en het werkte goed.
Over het Verwarmingselement en de DS18B20 Temperatuursensor
Het verwarmingselement dat in deze tutorial wordt gebruikt, werkt op een 12V voedingsspanning. Wanneer het verwarmingselement van stroom wordt voorzien, genereert het warmte. Om het verwarmingselement te kunnen aansturen met een Arduino, gebruiken we een relais als schakelaar ertussen.
Als u nog niet bekend bent met temperatuursensoren en verwarmingselementen (pinout, werking, programmeren, enz.), kunt u hierover leren in de volgende tutorials:
Bedradingsschema
- Bedradingsschema met breadboard (experimenteerprint)

This image is created using Fritzing. Click to enlarge image
- Bedradingsschema met adapter (aanbevolen)

This image is created using Fritzing. Click to enlarge image
Hoe het Systeem Werkt
- De Arduino leest de temperatuur uit de temperatuursensor uit
- Als de temperatuur onder een lagere drempelwaarde zakt, schakelt de Arduino het verwarmingselement in
- Als de temperatuur boven een hogere drempelwaarde uitkomt, schakelt de Arduino het verwarmingselement uit
Dit proces wordt continu herhaald in de loop.
Arduino Code voor Verwarmingssysteem met DS18B20 sensor
In bovenstaande code schakelt de Arduino het verwarmingselement in wanneer de temperatuur onder 15°C daalt, en houdt het verwarmingselement ingeschakeld totdat de temperatuur boven de 20°C komt.
Snelle Stappen
- Verbind de Arduino via de USB-kabel met uw pc
- Open de Arduino IDE, selecteer het juiste bord en de juiste poort
- Navigeer in de linkerzijbalk van de Arduino IDE naar het icoon Libraries
- Zoek op “DallasTemperature” en vind de DallasTemperature bibliotheek van Miles Burton
- Klik op de Installeren knop om de DallasTemperature bibliotheek te installeren

- U wordt gevraagd om de bijbehorende afhankelijkheid te installeren
- Klik op de knop Alle installeren om de OneWire bibliotheek te installeren

- Kopieer bovenstaande code en open deze met de Arduino IDE
- Klik op de knop Uploaden in de Arduino IDE om de code naar de Arduino te uploaden
- Maak de omgeving rond de sensor warmer of kouder
- Controleer de temperatuur van het verwarmingselement en de kamertemperatuur
Gevorderde Kennis
De hierboven beschreven regelmethode is een aan-uit regelaar, ook wel bekend als een signaalschakelaar of "bang-bang" regelaar. Deze methode is heel eenvoudig te implementeren.
Er is een alternatief genaamd de PID-regelaar. Met de PID-regelaar is de gewenste temperatuur stabieler, maar deze is erg moeilijk te begrijpen en te implementeren. Daarom is de PID-regelaar minder populair voor temperatuurregeling.