Repository navigation
System Overview Old
The different parts of the system will be explained in depth later, but a quick overview of them follows:
- Sensors - The sensors are physical components, able to receive information from the outside world.
- System Core - The core of the project, receives information from sensors, stores it in databases and forwards it to modules/applications.
- Database - The place where all the gathered information is saved.
- Modules/Applications - Receive information from one or more sensors, process it and make decisions.
Sensors are physical components, usually coupled with a low level software application (firmware), that are able to receive information from the outside world, process it into a readable format (e.g. JSON) and pass it to other parts of the system. In our system, the data will be sent to the system core and stored in the database for future access.
The system core, as its name suggests, is the core of the whole system. It manages the communication with all other parts, passing information from one part to another. It has several main responsibilities:
- Receiving information from sensors.
- Storing gathered information in databases.
- Retrieving information from databases and passing them to applications.
The core acts as an intermediary between the different parts:
- It receives information from all the sensors and stores them in the database. To receive the information, it provides a common interface that all sensors must comply to in order to be added to the system.
- It supplies an interface for modules to ask for information, or to add their listeners for data coming from the sensors.
As its name suggests, the database will hold all the gathered information, mainly data collected from the sensors. When new information is available, the sensor sends it to the core, which updates the database accordingly. This data is then used by modules/applications to make decisions.
Applications are parts of the system that receive the gathered data, and decide what to do; they implement the logic. e.g. - an application can ask for information regarding the heart rate of an elder person (if such a sensor has been deployed) and decide whether or not to alert him or her if the heart rate has exceeded a certain limit.
Applications have two options if they want to receive data:
- An application can send a request to the system core, to fetch the needed data.
- An application is able to add a listener (provided by an interface in the system) for some data. When the requested data arrives, it is automatically sent to the application.
Overview
Quick Start
Smarthouse Usage for Owners
Development Manuals
Continuous Development
Misc.
