Keep in mind the essence of integrating modularity into the solution of each task.
Each task has been assigned its Taskmanager responsible for successful implementation.
Each piece of code needs to be distributed using Git (GitHub).
Each task has clear documentation enabling further development of the project (Wiki at GitHub).
Each team solves two sets of tasks:
- mandatory tasks are necessary for the successful completion of the project
- optional tasks serve to upgrade the project and to improve the final grading of students
Tasks for Core Team
Mandatory tasks [80 points]:
- data processing of temperature [5 points]
- data processing of humidity moisture [5 points]
- data processing of luminosity [5 points]
- data export to the autonomous-control server via Bluetooth [15 points]
- data import (control settings) from the autonomous-control server via Bluetooth [15 points]
- data export (including logging) to the cloud via WiFi [15 points]
- data import (control settings) from the cloud via WiFi [15 points]
- elaborate documentation for each task [5 points]
Optional tasks:
- data processing of airflow [5 points]
- data processing of air moisture [5 points]
- data processing of air quality [5 points]
- data processing of CO2 concentration [5 points]
- data processing of door opening indicator [5 points]
- alarm integration detecting the communication failure to the autonomous-control server sending operation indicator to cloud via WiFi [5 points]
- live stream from a webcam to the cloud [15 points]
- time-span collecting pictures from webcam to cloud [15 points]
Tasks for Smart Team
Mandatory tasks [80 points]:
- establish communication (data exchange and control settings) between the microcontroller and autonomous-control server (run in MATLAB) via Bluetooth [30 points]
- alarm integration detecting the communication fails between the autonomous-control server and microcontroller sending an email notification to a list of administrators [30 points]
- setup control hierarchy subject to remote control provided by mobile application [5 points]
- autonomous on/off control of soil moisture [5 points]
- autonomous on/off control of luminosity subject to a day period (clock) [5 points]
- elaborate documentation for each task [5 points]
Optional tasks:
- autonomous on/off control of temperature [5 points]
- autonomous on/off control of door opening [5 points]
- autonomous on/off control of airflow [5 points]
- autonomous on/off control of air moisture [5 points]
- autonomous PID/LQR* control of temperature [10 points]
- autonomous PID/LQR* control of soil moisture [10 points]
- autonomous PID/LQR* control of air moisture [10 points]
- autonomous PID/LQR* control of luminosity subject to a day period (clock) [10 points]
- autonomous MPC* control of temperature and soil moisture as MIMO system [30 points]
- integration of a database of plants including a set of setpoints for various controlled variables [20 points]
- integration of a weather forecast into decision-making [20 points]
*Note, PID/LQR/MPC control alternates the necessity to implement on/off control.
Tasks for App Team
Mandatory tasks [80 points]:
- build a user-friendly application for mobile devices (smartphones and tablets) connected to a suitable cloud service [15 points]
- data import (including logging) from the microcontroller to the cloud via WiFi [10 points]
- data export (control settings) to the microcontroller from the cloud via WiFi [10 points]
- indicate the current value from each sensor [10 points]
- indicate current status/setup of actuators (on/off indicator) [10 points]
- implement manual on/off control for each actuator [20 points]
- elaborate documentation for each task [5 points]
Optional tasks:
- show evolution graph* of sensor values [15 points]
- show evolution graph* of status/setup of actuators [15 points]
- integrate a weather forecast [15 points]
- integrate a selection of plants from a database including a set of setpoints for various controlled variables [20 points]
- integrate a user-login (credentials) to assign access rights [20 points]
*Note, evolution graph alternates necessity to implement value/status indicator or current value from the sensor.