CS683: Embedded, Cyber Physical Systems and IoT Security Assignment 1
• This is a group assignment with FOUR members in a team.
• Only electronic submissions will be accepted. Your solution has to be submitted via the ipearl emasters platform.
• Only one person from the group should submit the assignment.
Question 1 (100 Marks)
Aravind is an ambitious farmer who wants to improve the yields from his farmland. While looking for ways to improve the yields, he came across tech buzzword like the Internet of Things. The irrigation system he wants to build contains servo motors that control the water supply to the farm, based on the present humidity, temperature levels in the farm.
The irrigation system he wants to build contains servo motors that control the water supply to the farm, based on the present humidity, temperature levels in the farm. Using sensor data, Aravind wants to build a smart irrigation system that predicts how much water (in percentage) should be supplied to his farm. Aravind also does not want to water the plants during night-time.
However, Aravind is good at farming and does not have much experience building an IoT system. So, build an irrigation system for Aravind using the IoT simulator at this link (https://wokwi.com/projects/new/arduino-mega?template=arduino-mega) and design a farm irrigation circuit using Arduino Mega board. Identify the required sensors needed to build the irrigation system based on Aravind’s requirements from the list of sensors provided by the simulator. The irrigation system should produce the correct signal (% of water supply) to control the water supply depending on the temperature and humidity values. Use a servo motor to control the water supply.
The farm irrigation system should contain four sensor units such that each unit sense temperature and humidity values. These values will be provided to rule-based model as shown in Table 1 on the Arduino board to predict the water flow in percentage. Then the water flow percentage will be provided as input to the servo motor (Map the percentage values with servo motor rotation 0? to 180?). The sensor values from each sensor unit should control a servo motor. Also, display the % of water flow that is fed as input to servo motors on an LCD (Refer to Figure. 1). The block diagram for the circuit schematic is shown in Figure 2.
Temperature (C) Humidity (%) Water flow prediction (%)
Low ( 25) Low (40) 100%
Low ( 40) Low ( 65) 60%
Medium (25-35) Medium (40 -70) 40%
High ( 35) High ( 70) 0%
Table 1. Rules for water supply prediction
Figure 2: Block Diagram of Irrigation System
1. Submit a report in pdf format mentioning how you have built the irrigation system, the sensors used. Also, provide the link to your simulated project in the report (You can generate the link for your project from the simulator by signing in and saving the project).
2. The solution for the assignment should be submitted as a zip file. The file should be named as Member1RollNumber Member2RollNumber.zip.
3. Downloaded zip file of the simulation from the simulator (It should contain sketch.ino and diagram.json files).
Expected functionality from your simulation:
• The sensors present in the simulator contain slider bars to adjust the sensor readings. When adjusting the sensor inputs (Temperature, Humidity, Day/Night), the rule-based model should predict the appropriate water flow in percentage. Your simulation should print the predicted water flow % on LCD screen and control the servo motor proportional to the water flow %.
• When particular sensor values are changed, only the servo motor that uses data from that sensor should change its state. Rest of the motors should remain as it is.
• You should also simulate day and night using the appropriate sensor from the sensor list. The water flow should be set to zero during the night-time, irrespective of temperature and humidity values. All the servo motors should come to their zero position, and LCD should display water flow as 0% for all four units.
• Once the simulation is started, it should run in a loop. Reflecting any changes done to the sensor values automatically by modifying motor positions and values on LCD without restarting the simulation. Refresh the readings on the LCD display in every iteration. You can use some delay time inside the loop so that displayed values don’t change too quickly.
• Refer to Wokwi documentation for setting up required components on the simulator.
• For simulating Day/Night, set the threshold sensor value as 50 units, i.e., if the sensor value is set to less than 50 units, your simulation should treat it as night, and if the sensor value is greater than 50 units, treat it as daytime.
Evaluation Scheme for Assignment:
1. Building the Circuit in the Simulator (30 Marks)
2. Functionality of the irrigation system based on the rule-based model and other expected deliverables. (45 Marks)
3. Writing Report for the experiment setup and implementation. (25 Marks)