Embedded Systems Intern Assignment upliance.
ai
BASIC HEATER CONTROL SYSTEM
Problem Statement
Design and implement a simple embedded heater control system using the DS18B20
temperature sensor and an actuating mechanism (simulated heater using an LED). The heater
must turn ON/OFF automatically based on temperature thresholds.
Minimum Sensors Required
➢ Selected Sensor: DS18B20 Digital Temperature Sensor
The DS18B20 is a high-precision, waterproof digital temperature sensor with a wide
operating range, making it ideal for heater control systems. It supports 1-Wire communication
and is highly reliable for real-time temperature tracking.
Pros
• High accuracy: ±0.5°C over the range -10°C to +85°C
• Wide range: -55°C to +125°C
• Digital output (no need for ADC)
• Supports multiple sensors on a single bus
• Simple integration with ESP32
Communication Protocol Recommendation
➢ Sensor Protocol: One-Wire Protocol
The One-Wire protocol is used for communication between the DS18B20 temperature
sensor and the ESP32 microcontroller. This protocol allows both data transmission and device
control using a single digital pin, simplifying circuit design and wiring. It enables the ESP32 to
request temperature readings from the DS18B20 sensor efficiently while maintaining a low pin
count, making it ideal for embedded systems with limited I/O resources.
pros
• Simplicity: Uses only one data wire in addition to power and ground
• Low resource usage: No complex bus handling required
• Supported libraries: Easily integrated using OneWire.h and DallasTemperature.h in
Arduino environment
• Multiple sensor support: Multiple DS18B20s can be chained if needed in future
System communication
➢ System Communication: UART (Serial Communication)
UART (Universal Asynchronous Receiver/Transmitter) is used as the primary method for
system-level communication. It is simple and effective for logging temperature and system
By: Prem Kumar S (Ph: +919384354356) 1
Embedded Systems Intern Assignment upliance.ai
states and is especially useful for debugging and real-time monitoring via the Serial Monitor in
the Arduino IDE or Wokwi simulation platform. Additionally, it requires no extra hardware,
making it an efficient choice for development and testing environments.
Block Diagram
Future Roadmap
1. Overheating Protection
• Auto shutdown when temperature exceeds safety threshold
• Blinking LED or buzzer alert
• Manual reset after overheats
2. Multiple Heating Profiles
• Predefined modes: Low (30°C), Medium (40°C), High (50°C)
• User-selectable via button or BLE app
• Adjustable target temperature in real-time
3. BLE Integration
• Advertise current state (e.g., "HEATING")
• Read real-time temperature via phone
• Control heater remotely (optional)
4. Data Logging and Analytics
• Log temperature over time to SD card or cloud
• Useful for diagnostics and performance monitoring
5. FreeRTOS Integration
• Use tasks and timers for precise heater and sensor control
• Better CPU resource management on ESP32
By: Prem Kumar S (Ph: +919384354356) 2
Embedded Systems Intern Assignment upliance.ai
Simulation Image
Summary
This project is a simple heater control system built using an ESP32 microcontroller and
a DS18B20 temperature sensor. It can track the current state of the system in real-time, it
includes a temperature indicator bar, detect overheating, and provide clear feedback using
LEDs. The system is designed in a modular way, making it easy to upgrade in the future with
features like Bluetooth (BLE) support, different heating profiles, and even cloud connectivity.
Appendix
➢ Wokwi Simulation Link: Click here to run the simulation on Wokwi
➢ ZIP Code Repository link: Click here to download the assignment ZIP files
By: Prem Kumar S (Ph: +919384354356) 3