Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2025:iotelea:alexa_andreea.voicu [2025/05/26 01:00]
alexa_andreea.voicu [Software Design]
pm:prj2025:iotelea:alexa_andreea.voicu [2025/05/26 21:44] (current)
alexa_andreea.voicu [Software Design]
Line 41: Line 41:
 The LCD display shows live values of temperature and humidity and the alerts for the user, while LEDs indicate status: The LCD display shows live values of temperature and humidity and the alerts for the user, while LEDs indicate status:
  
-Green = optimal 
  
-Yellow = warning +  * Green = optimal 
- +  * Yellow = warning 
-Red = out of range+  ​* ​Red = out of range
  
 The buzzer notifies the user when human intervention is needed. The buzzer notifies the user when human intervention is needed.
Line 161: Line 160:
 The buzzer is passive, meaning it needs a signal with a defined frequency. The buzzer is passive, meaning it needs a signal with a defined frequency.
 It only activates when the system transitions into the red alert state It only activates when the system transitions into the red alert state
-It emits three tones with decreasing frequency (1000 Hz → 800 Hz → 600 Hz), each followed by a short pause +It emits three tones with decreasing frequency (1000 Hz → 800 Hz → 600 Hz), each followed by a short pause. 
-Total alert durationapprox. 2 seconds +Total alert duration ​is approx. 2 seconds. 
-The tone is played using Arduino’s tone() function and not repeated unless a new red alert is triggered+The tone is played using Arduino’s tone() function and not repeated unless a new red alert is triggered.
  
 The fan is connected via an IRF520 module and is triggered only if the temperature exceeds 27°C. The fan is connected via an IRF520 module and is triggered only if the temperature exceeds 27°C.
 It automatically shuts off once the temperature returns to the safe range. It automatically shuts off once the temperature returns to the safe range.
  
 +The I2C LCD shows:
 +Alerts, "​Low/​High temperature!",​ "​Low/​High humidity!"​ when entering critical states
 +Live readings, Temp: ... C, Hum: ..% when values are stable
 +Logging confirmation,​ "​Logging data..."​ when writing to SD
 +Priority is given to alert messages, which override live readings for 2 seconds
  
-===== Probleme întâmpinate ​=====+===== Rezultate obținute ​===== 
 +The project was successfully implemented and tested and all major functionalities work as intended. 
 +Demo:
  
 +[[https://​www.youtube.com/​shorts/​_8tk-wFxubc|Smart Egg Incubator]]
 +===== Concluzii =====
  
 +While my project wasn’t very complex, it gave me the opportunity to integrate multiple hardware components and manage real-time system logic. The availability of the libraries for the DHT22 sensor, LCD, and SD card modules helped me a lot with my work, allowing me to focus more on logic and the incubator'​s behavior.
  
-===== Concluzii =====+The biggest challenge was controlling the fan. I initially underestimated the current it needed, and quickly realized that driving it directly from a digital pin was not possible. So I needed to used a 12V battery, but wasn't sure how i would actually connect it so that it would work without any risks. After some research, I added an IRF520 Mosfet module, and thinking now, a flyback diode would have been a great addition to protect against voltage spikes when switching off the fan.
  
 +Another issue was that I didn't know what the timing conflicts would be between SD card access and LCD updates. At one point, I 
 +was trying to write to the SD card while displaying messages caused flickering and delays. I had to be careful about when and how often updates happened, and add short delays to give each module time to operate without interfering.
  
 +Overall, the project helped me learn how to integrate sensors, fans and storage, and how to troubleshoot the small issues that appear only when everything is running at the same time.
 ===== Resurse ===== ===== Resurse =====
  
 +  * [[https://​www.arduino.cc/​reference/​en/​|Arduino Official Documentation]] – language reference and built-in functions 
 +  * [[https://​github.com/​adafruit/​DHT-sensor-library|DHT Sensor Library by Adafruit]] – for reading temperature and humidity values 
 +  * [[https://​github.com/​johnrickman/​LiquidCrystal_I2C|LiquidCrystal I2C Library]] – used to control the 1602 I2C LCD display 
 +  * [[https://​www.arduino.cc/​en/​Reference/​SD|Arduino SD Library]] – for reading/​writing data to the microSD card 
 +  * [[https://​www.arduino.cc/​reference/​en/​language/​functions/​advanced-io/​tone/​|tone() – Arduino Function]] – used to generate PWM audio signals for passive buzzers 
 +  * [[https://​cdn-shop.adafruit.com/​datasheets/​Digital+humidity+and+temperature+sensor+AM2302.pdf|DHT22 Datasheet]] – for technical specifications of the sensor 
 +  * [[https://​www.youtube.com/​watch?​v=17vqLv508Uw|Using IRF520 Mosfet]] – for connection to the fan
pm/prj2025/iotelea/alexa_andreea.voicu.1748210411.txt.gz · Last modified: 2025/05/26 01:00 by alexa_andreea.voicu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0