===== Project Presentation ===== == Name : Connected Aquarium == == Group Composition : == * Hong Jin * Nizar Boussarsar * Raed Chammam ==== Scenario :==== * The user configures the aquarium via a web interface and sets the coordinates of the location that they want to simulate. * The aquarium fetches temperature and light data from different web-services and adjusts the local ecosystem accordingly. * When a user scans a fish's package RFID tag with the aquarium reader, the aquarium fetches different environmental data about the fish and informs the user about its compatibility with the local ecosystem. ==== Object Shape : ==== == Name of the contact at Reims : == Stephane Perrone == Sketch of the Object from Reims : == {{ :projets:ocs:20152016:untitled.jpg?700 |}} == Picture of the Object : == - Raspberry Pi 2 & Grove Pi+ - Servo Moter - Dimmable LED Driver - LEDs - Grove Relay - Water Heater - Water thermomter - RFID Reader {{ :projets:ocs:20152016:obj_rep.png?700 |}} {{ :projets:ocs:20152016:hard.jpg?700 |}} {{ :projets:ocs:20152016:water.jpg?700 |}} == Demonstration Videos (FR) : == * [[https://youtu.be/iTE8yp_1Fcs|Hardware list]] * [[https://youtu.be/JVMKi8JNrzE|Startup]] * [[https://www.youtube.com/watch?v=vxJ41_eMNWo|Online state]] * [[https://www.youtube.com/watch?v=ugkDnTojVRo|LED on]] * [[https://www.youtube.com/watch?v=V7lnH8ipyd8|UPnP device]] * [[https://www.youtube.com/watch?v=UG-tQbrgHF8|RFID tags]] Screen-cast videos: * [[https://www.youtube.com/watch?v=WwWWTF_I6V8|Web panel]] * [[https://www.youtube.com/watch?v=FwnijIuavsQ|UPnP demo]] ==== Hardware specifications : ==== == Hardware List : == |Name | links to datasheet or technical document| Availability | | Raspberry Pi | http://goo.gl/82d3w9 | OK | | GrovePi+ Board | http://www.dexterindustries.com/shop/grovepi-board/ | OK | | Temperature Sensor - Waterproof | [[https://www.cooking-hacks.com/temperature-sensor-waterproof-ds18b20|CookingHacks]] | OK | | Heater 100W | [[https://www.cooking-hacks.com/heater-100w-for-open-aquarium|Cooking-Hacks]] | OK | |RFID Reader | [[http://www.seeedstudio.com/wiki/Grove_-_125KHz_RFID_Reader|SeedStudio]] | OK | | (LED + Drivers) | - | OK | | ServoMotor | - | OK | ==== Specifications and interface of the service on the object ==== The different pieces of data we are going to utilize in our project are: * Water temperature * Sun/Moon brightness This data will be fetched from different web-services according to the environment the aquarium is simulating. We also implemented a service that would allow the override of these values using an UPnP Service. ==== Specifications of the interface of high added value service ==== Note : (including a figure on the orchestration between services on objects and information systems) {{ :projets:ocs:20152016:aqua.png?600 |}} ==== Project Files: ==== == 3D Model == Illustrative model [[https://drive.google.com/file/d/0BzndfR_olnRiY2pnUDRfNFBza3c/view?usp=sharing|file]]. == Panel and API (Node.js) == Source code (to be deployed on remote server): [[https://drive.google.com/file/d/0BzsL2bhogX49Tk1obVpnblJaVWM/view?usp=sharing|aqua-server]]. For our demo we have used [[http://heroku.com/|Heroku]] as a hosting/deployment server. But any [[http://sailsjs.org/|SailsJS]] compatible environment would work. == Python scripts on the embedded object == These scripts are executed either on startup or via a cron task : [[https://drive.google.com/file/d/0BzsL2bhogX49ZnJRLW1vcDZDZUE/view?usp=sharing|aqua-scripts]] - The scripts under the directory `startups` are executed on every startup of the device. - The scripts under the directory `crons` are executed on regular intervals. == The source code of the UPnP device == [[https://drive.google.com/file/d/0BzsL2bhogX49azFwMWRwUk5mSGs/view?usp=sharing|UPnP Aquarium]] This is a VisualStudio project, just open and build it to get the .exe and .DLL files. == . wcc of the container on the computer: == [[ https://drive.google.com/file/d/0BzsL2bhogX49dS02Tk53Y1EyQzQ/view?usp=sharing |Container.WCC]] The picture below is a simple use-case scenario where we interact the Aquarium with a virtual UPnP enabled lamp. {{ :projets:ocs:20152016:capture_1.png?500 |}} == Chesklist to install the embedded service on the object == * Install mono-complete package * Install Python module (requests,logging) * Set-up the startup and repetitive tasks (inittab & cron) * Reboot the device == Chesklist to install the remote service/application on the PC == * Have Node.js, PostgreSQL and SailsJS installed. * Open the directory. * Run command "npm install" * Run command "sails lift" * Check localhsot:1337 ==== Results of the relations with Reims (being factual without personal opinion) ==== * We have received the LED and its Driver as promised (with a bit of delay). * We did not receive the aquarium. ==== Prospects : ==== == Possible extensions of the object == Add a number of sensors/actuators such as a **light-sensor**, a **cooling-fan**, **water-changer**.. == Possible extension of the service o the Object == * Local web-server. * Local UPnP activation/deactivation. == Possible extension of the high added value Service == * UPnP devices authorization instead/(besides) remote activation/deactivation.