Sistem & Hardware Architecture
Raspberry - #1
The Raspberry is the most important computational node of the system: it integrates nearly the whole reasoning part of the system and also have the function to communicate with external interfaces, sensors, actuators and web. The connections with the other devices are described in the following point.
Involved requirements:
4.1 The device switches on the actuators if the amount of particles is higher than a programmed threshold
4.2 By default the device switches on the actuators in a certain moment of the day
4.3 The device will act differently depending on the allergies the user has declared to suffer from
... (take a look here: Requirements/Internal Reasoning)Sensors - #2
The sensors are connected with cable (or wireless) and sends the information it acquires to the raspberry.
Involved requirements:
1.1 Actuators are composed by a filter and a window's fan
1.2 The photocell is used in order to know doors or windows state (opened or closed)
1.3 The particles' sensor is used in order to determinate the level of poller or dust in the room
... (take a look here: Requirements/Sensors)Actuators - #3
The actuators are controlled by raspberry, which just switch on and off them.
Involved requirements:
2.1 Actuators are composed by a filter and a window's fan
2.2 All the ctuators can only be switched on and off
... (take a look here: Requirements/Actuators)Server - #6
The website and the database is hosted on a server, and communicates with Raspberry and user through Ethernet cable/Wireless module (#4)
Involved requirements:
3.4 Every user has a website page
3.5 The website page can detect whether the device is connected or not
3.6 The user can consult on the website a graphics and tables about particles' presence in the room
... (take a look here: Requirements/Interface)5.1 All the data sensed by the device are stored in a internet database
5.2 The user can access his data through the website
... (take a look here: Requirements/Data Storaging)LCD Screen & Buttons - #5
The LCD Screen and the associated buttons are the more direct way for the user to communicate with Raspberry. With them the user is always able to modify the behavior of the device.
Involved requirements:
3.2 The user can change settings like current action, programmed actions and also the behavior of the device
3.3 The device has a screen and some button in order to make possible to the user interacting with the device
... (take a look here: Requirements/Interface)