From 2caa91044d27aeb90eff9da0e1c86adcb4fd6fc1 Mon Sep 17 00:00:00 2001 From: Lateefah Bello <2019cinnamon@gmail.com> Date: Tue, 8 Jun 2021 18:50:06 +0100 Subject: [PATCH] Chapter two (lesson three) --- .../3-automated-plant-watering/README.md | 25 ++++++++++++------ .../3-automated-plant-watering/assignment.md | 4 +-- .../3-automated-plant-watering/pi-relay.md | 8 +++--- .../virtual-device-relay.md | 6 ++--- .../wio-terminal-relay.md | 8 +++--- images/counterfit-relay.png | Bin 26288 -> 28870 bytes 6 files changed, 30 insertions(+), 21 deletions(-) diff --git a/2-farm/lessons/3-automated-plant-watering/README.md b/2-farm/lessons/3-automated-plant-watering/README.md index e8b9d4ce..e854da1b 100644 --- a/2-farm/lessons/3-automated-plant-watering/README.md +++ b/2-farm/lessons/3-automated-plant-watering/README.md @@ -102,19 +102,19 @@ So far your relay is controlled by the IoT device directly based off a single so 1. Add the relevant MQTT libraries/pip packages and code to your `soil-moisture-sensor` project to connect to MQTT. Name the client ID as `soilmoisturesensor_client` prefixed by your ID. - > ⚠️ You can refer to [the instructions for for connecting to MQTT in project 1, lesson 4 if needed](../../../1-getting-started/lessons/4-connect-internet/README.md#connect-your-iot-device-to-mqtt). + > ⚠️ You can refer to [the instructions for connecting to MQTT in project 1, lesson 4 if needed](../../../1-getting-started/lessons/4-connect-internet/README.md#connect-your-iot-device-to-mqtt). 1. Add the relevant device code to send telemetry with the soil moisture settings. For the telemetry message, name the property `soil_moisture`. - > ⚠️ You can refer to [the instructions for for sending telemetry to MQTT in project 1, lesson 4 if needed](../../../1-getting-started/lessons/4-connect-internet/README.md#send-telemetry-from-your-iot-device). + > ⚠️ You can refer to [the instructions for sending telemetry to MQTT in project 1, lesson 4 if needed](../../../1-getting-started/lessons/4-connect-internet/README.md#send-telemetry-from-your-iot-device). 1. Create some local server code to subscribe to telemetry and send a command to control the relay in a folder called `soil-moisture-sensor-server`. Name the property in the command message `relay_on`, and set the client ID as `soilmoisturesensor_server` prefixed by your ID. Keep the same structure as the server code you wrote for project 1, lesson 4 as you will be adding to this code later in this lesson. - > ⚠️ You can refer to [the instructions for for sending telemetry to MQTT](../../../1-getting-started/lessons/4-connect-internet/README.md#write-the-server-code) and [sending commands over MQTT](../../../1-getting-started/lessons/4-connect-internet/README.md#send-commands-to-the-mqtt-broker) in project 1, lesson 4 if needed. + > ⚠️ You can refer to [the instructions for sending telemetry to MQTT](../../../1-getting-started/lessons/4-connect-internet/README.md#write-the-server-code) and [sending commands over MQTT](../../../1-getting-started/lessons/4-connect-internet/README.md#send-commands-to-the-mqtt-broker) in project 1, lesson 4 if needed. 1. Add the relevant device code to control the relay from received commands, using the `relay_on` property from the message. Send true for `relay_on` if the `soil_moisture` is greater than 450, otherwise send false, the same as the logic you added for the IoT device earlier. - > ⚠️ You can refer to [the instructions for for responding to commands from MQTT in project 1, lesson 4 if needed](../../../1-getting-started/lessons/4-connect-internet/README.md#handle-commands-on-the-iot-device). + > ⚠️ You can refer to [the instructions for responding to commands from MQTT in project 1, lesson 4 if needed](../../../1-getting-started/lessons/4-connect-internet/README.md#handle-commands-on-the-iot-device). > 💁 You can find this code in the [`code-mqtt`](./code-mqtt) folder. @@ -122,7 +122,7 @@ Make sure the code is running on your device and local server, and test it out b ## Sensor and actuator timing -Back in lesson 3 you built a nightlight - an LED that turned on as soon as a low level of light was detected by a light sensor. The light sensor detected a change in light levels instantly, and the device was able to respond quickly, only limited by the length of the delay in the `loop` function or `while True:` loop. As an IoT developer, you can't always rely on such a fast feedback loop. +Back in lesson 3 you built a nightlight - an LED that turns on as soon as a low level of light was detected by a light sensor. The light sensor detected a change in light levels instantly, and the device was able to respond quickly, only limited by the length of the delay in the `loop` function or `while True:` loop. As an IoT developer, you can't always rely on such a fast feedback loop. ### Timing for soil moisture @@ -146,7 +146,7 @@ Imagine you have been tasked with building an irrigation system for a farm. Base You could program the device in the same way as the nightlight - all the time the sensor reads above 450, turn on a relay to turn on a pump. The problem is that water takes a while to get from the pump, through the soil to the sensor. The sensor will stop the water when it detects a level of 450, but the water level will continue dropping as the pumped water keeps soaking through the soil. The end result is wasted water, and the risk of root damage. -✅ Remember - too mch water can be as bad for plants as too little, and wastes a precious resource. +✅ Remember - too much water can be as bad for plants as too little, and wastes a precious resource. The better solution is to understand that there is a delay between the actuator turning on and the property that the sensor reads changing. This means not only should the sensor wait for a while before measuring the value again, but the actuator needs to turn off for a while before the next sensor measurement is taken. @@ -156,7 +156,7 @@ How long should the relay be on each time? It's better to err on the side of cau ![A strawberry plant connected to water via a pump, with the pump connected to a relay. The relay and a soil moisture sensor in the plant are both connected to a Raspberry Pi](../../../images/strawberry-with-pump.png) -For example, I have a strawberry plant with a soil moisture sensor and a pump controlled by a relay.I've observed that when I add water it takes about 20 seconds for the soil moisture reading to stabilize. This means I need to turn the relay off and wait 20 seconds before checking the moisture levels. I'd rather have too little water than too much - I can always turn the pump on again, but I can't take water out of the plant. +For example, I have a strawberry plant with a soil moisture sensor and a pump controlled by a relay. I've observed that when I add water it takes about 20 seconds for the soil moisture reading to stabilize. This means I need to turn the relay off and wait 20 seconds before checking the moisture levels. I'd rather have too little water than too much - I can always turn the pump on again, but I can't take water out of the plant. ![Step 1, take measurement. Step 2, add water. Step 3, wait for water to soak through the soil. Step 4, retake measurement](../../../images/soil-moisture-delay.png) @@ -181,7 +181,7 @@ The server code can be modified to add control around the timing of the watering 1. Telemetry message received 1. Check the soil moisture level -1. if it's ok, do nothing. If the reading is too high (meaning the soil moisture is too low) then: +1. If it's ok, do nothing. If the reading is too high (meaning the soil moisture is too low) then: 1. Send a command to turn the relay on 1. Wait for 5 seconds 1. Send a command to turn the relay off @@ -206,6 +206,13 @@ Update your server code to run the relay for 5 seconds, then wait 20 seconds. 1. Open the `app.py` file +1. Add the following code to the `app.py` file below the existing imports: + ```python + import threading + ``` + + This statement imports `threading` from Python libraries, threading allows python to execute other code while waiting. + 1. Add the following code before the `handle_telemetry` function that handles telemetry messages received by the server code: ```python @@ -271,6 +278,8 @@ Update your server code to run the relay for 5 seconds, then wait 20 seconds. ``` A good way to test this in a simulated irrigation system is to use dry soil, then pour water in manually whilst the relay is on, stopping pouring when the relay turns off. + +> 💁 You can find this code in the [`code-timing`](./code-timing) folder. > 💁 If you want to use a pump to build a real irrigation system, then you can use a [6V water pump](https://www.seeedstudio.com/6V-Mini-Water-Pump-p-1945.html) with a [USB terminal power supply](https://www.adafruit.com/product/3628). Make sure the power to or from the pump is connected via the relay. diff --git a/2-farm/lessons/3-automated-plant-watering/assignment.md b/2-farm/lessons/3-automated-plant-watering/assignment.md index b4639b60..1df28c26 100644 --- a/2-farm/lessons/3-automated-plant-watering/assignment.md +++ b/2-farm/lessons/3-automated-plant-watering/assignment.md @@ -6,7 +6,7 @@ This lesson covered how to control a relay via sensor data, and that relay could For this assignment you will calculate how long the pump should run for a particular rise in soil moisture. -> ⚠️ If you are using virtual IoT hardware, you can work through this process, but simulate the results by increasing the soil moisture reading manually by a fixed amount per second the relay us on. +> ⚠️ If you are using virtual IoT hardware, you can work through this process, but simulate the results by increasing the soil moisture reading manually by a fixed amount per second the relay is on. 1. Start with dry soil. Measure the soil moisture. @@ -37,4 +37,4 @@ For this assignment you will calculate how long the pump should run for a partic | Criteria | Exemplary | Adequate | Needs Improvement | | -------- | --------- | -------- | ----------------- | | Capture soil moisture date | Is able to capture multiple readings after adding fixed quantities of water | Is able to capture some readings with fixed quantities of water | Can only capture one or two readings, or is unable to use fixed quantities of water | -| Calibrate the server code | Is able to calculate an average decrease in soil moisture reading and update the serve code to use this | Is able to calculate an average decrease, but cannot update the server code, or is unable to correctly calculate an average, but uses this value to correctly update the server code | Is unable to calculate an average, or update the server code | +| Calibrate the server code | Is able to calculate an average decrease in soil moisture reading and update the server code to use this | Is able to calculate an average decrease, but cannot update the server code, or is unable to correctly calculate an average, but uses this value to correctly update the server code | Is unable to calculate an average, or update the server code | diff --git a/2-farm/lessons/3-automated-plant-watering/pi-relay.md b/2-farm/lessons/3-automated-plant-watering/pi-relay.md index 89cb39b8..de40ed80 100644 --- a/2-farm/lessons/3-automated-plant-watering/pi-relay.md +++ b/2-farm/lessons/3-automated-plant-watering/pi-relay.md @@ -78,7 +78,7 @@ Now that the relay is working, it can be controlled in response to soil moisture Control the relay. -1. Delete the 3 lines of code that you added to test the relay. Replace them with the following code in its place: +1. Delete the 3 lines of code that you added to test the relay. Replace them with the following code: ```python if soil_moisture > 450: @@ -89,11 +89,11 @@ Control the relay. relay.off() ``` - This code checks the soil moisture level from the soil moisture sensor. if it is above 450, it turns on the relay, turning it off if it goes below 450. + This code checks the soil moisture level from the soil moisture sensor. If it is above 450, it turns on the relay, and turns it off when it goes below 450. - > 💁 Remember the capacitive soil moisture sensor reads lower the more moisture there is in the soil. + > 💁 Remember the capacitive soil moisture sensor reads the lower the soil moisture level, the more moisture there is in the soil and vice versa. -1. Run the Python app. You will see the relay turn on or off depending on the soil moisture levels. Try in dry soil, then add water. +1. Run the Python app. You will see the relay turn on or off depending on the soil moisture level. Try in dry soil, then add water. ```output Soil Moisture: 638 diff --git a/2-farm/lessons/3-automated-plant-watering/virtual-device-relay.md b/2-farm/lessons/3-automated-plant-watering/virtual-device-relay.md index 85389d7f..c06a0455 100644 --- a/2-farm/lessons/3-automated-plant-watering/virtual-device-relay.md +++ b/2-farm/lessons/3-automated-plant-watering/virtual-device-relay.md @@ -1,6 +1,6 @@ # Control a relay - Virtual IoT Hardware -In this part of the lesson, you will add a relay to your Raspberry Pi in addition to the soil moisture sensor, and control it based off the soil moisture level. +In this part of the lesson, you will add a relay to your virtual IoT device in addition to the soil moisture sensor, and control it based off the soil moisture level. ## Virtual Hardware @@ -93,9 +93,9 @@ Control the relay. relay.off() ``` - This code checks the soil moisture level from the soil moisture sensor. if it is above 450, it turns on the relay, turning it off if it goes below 450. + This code checks the soil moisture level from the soil moisture sensor. If it is above 450, it turns on the relay, turning it off if it goes below 450. - > 💁 Remember the capacitive soil moisture sensor reads lower the more moisture there is in the soil. + > 💁 Remember the capacitive soil moisture sensor reads the lower the soil moisture level, the more moisture there is in the soil and vice versa. 1. Run the Python app. You will see the relay turn on or off depending on the soil moisture levels. Change the *Value* or the *Random* settings for the soil moisture sensor to see the value change. diff --git a/2-farm/lessons/3-automated-plant-watering/wio-terminal-relay.md b/2-farm/lessons/3-automated-plant-watering/wio-terminal-relay.md index 99a7ca46..3467c1d1 100644 --- a/2-farm/lessons/3-automated-plant-watering/wio-terminal-relay.md +++ b/2-farm/lessons/3-automated-plant-watering/wio-terminal-relay.md @@ -70,7 +70,7 @@ Now that the relay is working, it can be controlled in response to soil moisture Control the relay. -1. Delete the 3 lines of code that you added to test the relay. Replace them with the following code in its place: +1. Delete the 3 lines of code that you added to test the relay. Replace them with the following code: ```cpp if (soil_moisture > 450) @@ -85,13 +85,13 @@ Control the relay. } ``` - This code checks the soil moisture level from the soil moisture sensor. if it is above 450, it turns on the relay, turning it off if it goes below 450. + This code checks the soil moisture level from the soil moisture sensor. If it is above 450, it turns on the relay, and turns it off when it goes below 450. - > 💁 Remember the capacitive soil moisture sensor reads lower the more moisture there is in the soil. + > 💁 Remember the capacitive soil moisture sensor reads the lower the soil moisture level, the more moisture there is in the soil and vice versa. 1. Build and upload the code to the Wio Terminal. -1. Monitor the device via the serial monitor. You will see the relay turn on or off depending on the soil moisture levels. Try in dry soil, then add water. +1. Monitor the device via the serial monitor. You will see the relay turn on or off depending on the soil moisture level. Try in dry soil, then add water. ```output Soil Moisture: 638 diff --git a/images/counterfit-relay.png b/images/counterfit-relay.png index 5557c14a595cf6620ae715ecb00a30680c7e8686..00ee5b6366a9289f45ad5cbc2ea029f1524603c6 100644 GIT binary patch literal 28870 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 literal 26288 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 b0Q>&|a*OztDtY(b00000NkvXXu0mjf6^x*i