meta data for this page
This is an old revision of the document!
1. Understanding the Foundations of Sustainability and Smart Cities
1.1 Introduction to Sustainability and Smart Homes/Cities
Definitions
Sustainability is about using resources responsibly to meet our current needs while protecting the environment and ensuring future generations can thrive. It focuses on reducing waste, conserving energy, and promoting eco-friendly practices to create a balance between human activities and the planet’s health.
Smart homes are residential spaces equipped with technology that automates and optimizes everyday functions. Using devices like sensors, smart thermostats, and automated systems, these homes improve convenience, efficiency, and sustainability.
Smart cities, on the other hand, scale this concept to the urban level, integrating technology into public infrastructure and services. Through interconnected systems such as traffic management, smart grids, and pollution monitoring, smart cities create more efficient and sustainable environments for entire communities.
How sustainability and smart homes relate to each other
In smart homes, sustainability is achieved by reducing energy and resource waste. Automated systems ensure that lights, heating, and cooling operate only when needed, while devices monitor water and electricity usage to minimize waste. Indoor air quality is improved with sensors that detect pollutants, contributing to healthier living spaces.
Smart cities expand these practices to a broader scale. For instance, air quality monitoring and traffic management systems help reduce pollution, while energy-efficient public transportation and smart grids optimize energy consumption. Automated waste management systems further enhance environmental sustainability by reducing landfill overflow and encouraging recycling.
By integrating technology into homes and cities, these innovations provide practical solutions to environmental challenges, enabling individuals and communities to live more sustainably.
1.2 The Impacts of Smart Cities and Smart Housing
1. Energy efficiency
Smart systems optimize energy usage by analyzing real-time data to ensure energy is utilized only when and where it is needed. For example, lights automatically turn off in unoccupied rooms, conserving electricity. Fans, air conditioners, and heaters adjust their power output when the temperature reaches comfortable levels, preventing unnecessary energy consumption. Appliances like washing machines and dishwashers can be programmed to operate during off-peak electricity hours, which not only saves energy but also reduces costs.
Automation further enhances energy management by streamlining operations. Smart lighting systems use sensors to detect natural light levels and automatically dim or turn off lights during daylight hours, minimizing electricity use. This reduces the need for manual adjustments and helps maintain energy efficiency throughout the day.
Climate control is significantly improved by smart thermostats, which adjust heating and cooling systems based on real-time temperature, time of day, and occupancy. These systems ensure that energy is used efficiently to maintain comfort, reducing waste and contributing to a more sustainable living environment.
2. Behaviour Changes
People save energy as repetitive actions, such as turning off lights or adjusting thermostats, are automated. This eliminates the need for manual intervention, reducing energy waste and ensuring that energy is used only when necessary.
Sensors and devices collect valuable data on energy and resource usage. This data provides insights that help people understand their consumption patterns, allowing them to optimize their habits for greater efficiency and sustainability.
Smart systems also play a significant role in improving safety. They can detect and identify threats like burglars attempting to enter homes, shops, or compounds. This ensures timely responses and provides enhanced security for residents and property.
With these systems in place, people experience increased relaxation. Automation of daily tasks and enhanced security features allow individuals to focus on other priorities, reducing stress and providing peace of mind without the constant worry of managing energy or safeguarding their home.
3. Sustainability
Smart systems promote the use of sustainable practices by encouraging environmentally friendly behavior, such as optimizing energy usage and conserving natural resources. These systems help individuals and communities adopt greener habits by making it easier to manage resources efficiently and reduce unnecessary consumption.
In terms of reducing pollution, devices in smart homes and cities monitor air quality and energy use, allowing for the automation of systems like heating, cooling, and lighting. This helps to reduce harmful emissions by ensuring that these systems only operate when necessary, leading to a cleaner, healthier environment.
Additionally, smart systems are highly effective in minimizing waste. Automation plays a key role in preventing resource wastage, such as by reducing water usage in irrigation systems or automatically turning off unused appliances when they’re not needed. This reduces excess consumption, promoting more sustainable living and contributing to environmental conservation.
1.3 The Role of IoT in a Smart City
2. Introduction to IoT
2.1 What are IoTs?
IoT stands for Internet of Things which are basically day-to-day appliances that are now connected to the internet and thus made smart. Such devices can include things like a smart TV, smart refrigerator, surveillance cameras, light bulbs, cars and so on. For example, the lights in a home can be controlled by your phone through the internet. It's good because you don't have to walk all the way over to the light switch and can do it from your phone in the bed. IoT devices can also have sensors which are great for automation. For example, air-conditioning systems could have sensors that monitor a room's temperature and be automated to keep a room cool. If the room is too hot, the system would work to release cool air. If it's cold enough, it can stop working for a while. Things are simply made convenient.
2.2 Basics of IoT Architecture
IoT architecture typically consists of four main layers that work together to enable connected devices and systems. At the bottom is the perception layer, where sensors and actuators collect data from the physical environment. This feeds into the network layer, which handles data transmission through various protocols like WiFi, Bluetooth, or cellular networks. The processing layer sits above this, managing data storage and analytics using edge or cloud computing resources. Finally, the application layer provides user interfaces and services that make the processed data useful for end-users. These layers work in concert to enable everything from smart home devices to industrial monitoring systems.
2.3 Overview of Hardware Components in the Kit
This is just a brief introduction of each component. For detailed instructions on testing and operating these components, you can refer to the following link: https://docs.keyestudio.com/projects/KS5009/en/latest/docs/index.html
1. ESP32 PLUS Development board
The ESP32 PLUS is a versatile Wi-Fi + Bluetooth development board, designed for building IoT and smart home applications. It is based on the ESP32-WROVER-32 module and is compatible with Arduino. It has a hall sensor, high-speed SDIO/SPI, UART, I2S as well as I2C. Furthermore, equipped with freeRTOS operating system, which is quite suitable for the Internet of things and smart home.
2. Modules
RFID
An RFID system allows devices to exchange data wirelessly using radio waves. It consists of two parts, RFID Reader that sends out a magnetic field and reads data from nearby RFID tags; RFID Tag with integrated circuit chips to store data and an antenna to communicate with the reader.
The RFID reader generates a magnetic field using radio frequency signals. This magnetic field extends around the reader. The RFID tag, when placed within this field, doesn’t need its own battery. Instead, it uses the energy from the magnetic field to power itself due to Lenz’s Law, where a changing magnetic field induces an electrical current in the tag’s antenna.
Once powered, the tag’s chip becomes active and starts sending its stored data back to the RFID reader. The reader picks up these signals and processes them.
Passive Buzzer
A passive buzzer is an electronic component used to produce sounds and is often connected to an audio power amplifier. A passive buzzer doesn’t have a built-in oscillator, meaning it can’t generate sound independently. It relies on an external signal, such as a square wave (a type of electrical signal that switches between high and low voltage). To produce sound, you send square wave signals of different frequencies to the positive pole of the buzzer. * Take note that the negative pole of the buzzer is connected to the ground (GND).
Button
A button module is a simple input device that detects when a button is pressed or released. It is a digital sensor, meaning it only outputs two states:
High level (1): When the button is not pressed.
Low level (0): When the button is pressed.
When the button is not pressed, the module outputs a high signal (1), meaning the circuit is open. Pressing the button closes the circuit, connecting it to ground (GND). This results in a low signal (0), indicating the button is being pressed.
LED Light
An LED is a small electronic component that lights up when you pass electricity through it. It can be controlled by sending electrical signals from a microcontroller like an ESP32. The LED has three main connections:
GND (Ground): Connect this to the ground pin of your controller. VCC (Voltage): Connect this to the power pin of your controller. S (Signal): This pin controls whether the LED is ON or OFF based on the signal it receives.
To turn on the LED, you supply power to it by setting the signal pin (S) to a high level. If the signal pin is set to a low level, the LED turns off. The module can adjust the brightness or blink frequency of the LED by changing how fast we turn it on and off using a process called Pulse Width Modulation (PWM).
RGB LED An RGB LED is a more advanced type of LED that can emit red, green, and blue light. By mixing these colors at different brightness levels, you can create almost any color. The module uses serial communication, meaning you can control multiple LEDs with just one signal pin with each LED having a built-in signal amplifier to ensure consistent colors across all LEDs.
Key Parameters Working Voltage DC 3~5V Working current <20mA Power 0.1W
Adjusting blinking speed We can make the LED blink (turn on and off repeatedly) by sending alternating high and low signals to the S pin. The speed of the blinking depends on the delay time between these signals: Short delay: Faster blinking. Long delay: Slower blinking.
LCD Display
The 1602 LCD display is a simple and widely used electronic component for displaying text. It can show 16 characters per line and has 2 lines, hence the name “1602”.
The display communicates with the ESP32 microcontroller using the IIC protocol. IIC is a simple communication protocol for short-distance data exchange. To break down how it works, two wires are used to send messages to the screen, SCL and SDA. SCL synchronizes the data transfer and SDA carries the actual data.
IIC operates in 2 modes, master mode and Slave mode. The ESP32 acts as the Master, sending commands and data to the LCD. The 1602 LCD acts as the Slave, following the Master’s instructions. Each bit of data is synchronized with a “high-to-low” pulse on the clock line (SCL) to ensure that both the Master and Slave stay in sync.
To display characters on the 1602 LCD: Set up the IIC connection between the ESP32 and the LCD. Use a library (pre-written code) to simplify the process of sending commands to the LCD.
Required Files: i2c_lcd.py: Contains the implementation for controlling the 1602 LCD via I2C. lcd_api.py: Provides an interface to send high-level commands to the LCD.
3. Sensor
Temperature & humidity sensor
A temperature & humidity sensor is a device that measures two key environmental parameters: Temperature: How hot or cold the surrounding environment is. Humidity: The amount of water vapor in the air (measured as a percentage, relative humidity or RH). It communicates using serial data and a single-bus protocol, which means it transmits data one bit at a time over a single data line.
Measuring Range Temperature -20℃ ~ +60℃, with ±2℃ accuracy Humidity 5 ~ 95%RH, with ±5%RH accuracy
Smoke sensor
The MQ2 smoke sensor is a device used to detect gas leaks or smoke in homes, factories, and other environments. This makes it suitable for safety systems, such as gas leak detection and fire alarms.
The MQ2 sensor provides two types of outputs: Digital output (D): Indicates whether the gas concentration has crossed a set threshold. Analog output (A): Provides a proportional voltage corresponding to the gas concentration, allowing more detailed monitoring.
Inside the sensor, a chemical layer reacts with specific gases. This reaction changes the resistance in the sensor, which the module converts into an electrical signal. The digital pin (D) is typically used as a binary sensor—if gas is detected, the pin goes high (1); otherwise, it stays low (0). The analog pin (A) is used when you want to measure the exact gas concentration.
Motion Sensor
The PIR (Passive Infrared) motion sensor detects movement by sensing infrared radiation (heat) emitted by objects, such as humans or animals. It is commonly used in daily life for automation, such as stairway motion-activated lights, automatic faucets and security systems.
The sensor is “passive,” meaning it doesn’t emit any energy but instead detects infrared radiation naturally emitted by warm objects. When a warm object (like a person) moves within its range, the sensor detects the change in infrared levels. The PIR motion sensor is a digital sensor with two states: 0 (Low): No motion detected. 1 (High): Motion detected.
Water drop sensor
The raindrop sensor module detects water through its analog input. It is commonly used in IoT applications to sense the presence or amount of water on its surface.
The sensor has a conductive surface. When water droplets touch this surface, they close circuits and change the resistance. The more water on the surface, the lower the resistance and the greater the output value.
The sensor returns an analog value proportional to the water detected. The range of the output is 0 to 4096 (for systems like ESP32 with a 12-bit ADC). 0: No water detected. 4096: Maximum water coverage.
3. Motors
DC Motor
The 130 DC Motor is a small motor used to power devices like fans. In this case, it is paired with safe fan blades, making it suitable for DIY projects and IoT applications. DC Motor converts electrical energy into mechanical energy to spin the fan. PWM Speed Control use Pulse Width Modulation (PWM) to adjust the fan’s speed. The motor can rotate the fan clockwise or anticlockwise based on the inputs.
Two pins are required: INA (Input A): Controls one side of the motor. INB (Input B): Controls the other side of the motor. These pins are controlled using PWM signals (values range from 0 to 255). By comparing the PWM outputs on INA and INB, you can control the motor's rotation. INA - INB ⇐ -45 Rotate clockwise INA - INB >= 45 Rotate anticlockwise INA ==0, INB == 0 Stop
9G 90° Servo
A Servo Motor is a precision motor designed for accurate position control. The servo receives a signal from the MCU (Microcontroller Unit) or receiver. The input signal is a pulse with a period of 20ms and a width of 1.5ms as the reference. A potentiometer detects the current position of the servo. The servo compares the input pulse width with the signal generated from the potentiometer to calculate the voltage difference.
The integrated circuit (IC) on the circuit board determines the direction of rotation based on the voltage difference. The motor drives the position through a gear system and moves the swing arm. The position detector continuously monitors the angle and sends feedback to the system. The motor stops when the desired position is reached (voltage difference = 0).
The servo motor is controlled via PWM signals, where the pulse width determines the angular position. Generally, the angle range of servo rotation is 0° –180 °. The pulse period of the control servo is 20ms, the pulse width is 0.5ms ~ 2.5ms, and the corresponding position is -90°~ +90°.