Architecture
System Architecture
Hardware Architecture
Computational Nodes
-
Android Tablet - Main computation module and user interface.
* Will be referred to as "The Tablet". -
Raspberry Pi - Handles user identification.
* Will be referred to as "rPi".
Devices
-
Microphone to be placed inside the classroom and provide real time information about the noise level of the room.
* The Microphone may be a USB device, or built into a headset, or a Bluetooth device.
[To be decided]
* The data from the Microphone may be processed in the rPi or in the Tablet.
[To be decided] - Front Camera build into The Tablet - will be used as proximity sensor to identify if there is a user in front of the system.
- Set of Philips Hue Light-strips - to be placed around the frame of the screen and used to notify the state of the class.
- Server of the Politecnico to get Class schedule information.
User Interface Devices
- SmartCard Reading Hardware (USB) placed near the screen and used to identify users.
- Screen of the Tablet.
Software Architecture
Classroom Management Software
- Associates each screen to the Classroom where it is deployed.
- Contains information about all the classrooms, primarily: Availability and relative distance from other classes.
- Allow each screen to be associated to its schedule and its current occupancy status [FR 1.1].
- Suggest User with the closest available classroom [FR 2.3].
- Suggest user with the optimal route for the next lesson's Classroom [FR 4.3] (Partial).
- To be developed.
- Deployed on The Tablet.
Schedule Information Collection and Decoding Software.
- Queries server for Class schedule information, decodes and displays it [FR 2.1].
- Queries server for Student schedule information, decodes and displays it [FR 4.1].
- [To be determined] Uses Politecnico main Servers or locally deployed Server (located in LADISPE).
- Deployed on The Tablet.
User Identification Software
- Allows connection of SmartCard Reader, and handles identification information stored on the Student SmartCard [FR 3.1].
- Interacts with the main computational module (The Tablet) by way of direct connection and file exchange.
- Uses the existing card reading API (if it exists) or a to-be-developed API.
- Deployed on the rPi.
Software module to operate HUE Lights
- Operates the Light-strips located around the screen [FR 1.1].
- Allows the HUE Bridge hub to interact with the main computational module (The Tablet) by way of HTTP requests.
- Uses the HUE Java API.
- Deployed on The Tablet.
Map Integration Software
- Displays to the user the location of the next lesson's Classroom [FR 4.2].
- Suggests the user with the optimal route for next lesson's Classroom [FR 4.3] (Partial).
- Allows interactivity with the map [FR 4.4] (Optional).
- Uses the Google Maps API for Android [To be finally determined].
- Deployed on The Tablet.
Camera Image Processing Module
- Allows the screen to dim when the system is not being used [FR 1.2].
- Uses the Android native Camera Controller.
- Deployed on The Tablet.
Audio Processing Module
- Allows the system to provide reliable information about the Classroom occupancy.
- Provides additional information about the Classroom [FR 2.2].
- Uses the Audio processing API.
- Deployed on The Tablet or on the rPi [To be defined].
Components
Hardware Components
- Android Tablet
- Raspberry Pi 2
- Philips HUE Light-Strip
- Microphone (USB, Headset or Bluetooth)
- SmartCard Reader
Software Components
- Politecnico Servers
- Android Development Framework
- Google Maps API
- HUE Java API
- Android Camera Controller Framework
- Audio Signal Processing API [To be determined]
- SmartCard Processing API (If Available)
Other Issues
- (See the Issues page.)