Final Project from the course "Cyber-Physical Systems" @ Data Science & Scientific Computing, University of Trieste, year 2021/2022, written in Python.
Smart Greenhouse System (SGS) is a system that manages the internal operations of a greenhouse: watering plants and adjusting the temperature. It contains 2 PID controllers, to adjust the process variables according to the desired values.
main.py
is equipped with lines of code to test every functionality of the program. Specifically, src
contains the following files:
SGS.py
: implements the classSGS
; the attributes of this class regulate the parameters of the simulation: such as the dimensions of the greenhouse, the quantity of soil, the external temperature, the range of action of the sprinkler and the air conditioning system.PID.py
: implements the controllers used bySIS
; the user can set the internal parameters of both controllers.main.py
importssrc
elements and runs the simulation.monitor.py
: implements the scripts passed to moonlight for requirements checking.falsification.py
: runs a falsification routine on desired intervals of values.
Note: moonlight.py
and its jar
folder are already in the repository. If they should not work, try deleting them and substituting them with your own.