====== Smart Objects and Services ====== ---- ==== Project Presentation ==== === Ubikwan Cannobi === == Group Composition : == * **Gwenn Aubert** * **Elie Jacquelin** * **Matthieu Maugard** * **Bastien Maureille** ---- ==== Scenario :==== The user uses the cane to take a walk outside. When back home, the cane automatically connect itself to the user home's wifi to transmit the datas collected during the walk to the high value service. Those datas gives information on the waking speed, the effort, etc. The high value service will synchronize the datas from the cane and other services (e.g: his calendar) or even other connected object (e.g: clothes with a heart-rate sensor). This synchronization change the initial temporal reference of the sensors to a discret reference more interesting to study. Example: Synchronization with the user's calendar to highlight the improvement of the walk during an appointement with a physiotherapist. Other example: Synchronization with the can itself to compare the distance between two steps and the pressure measured by the cane. ---- ==== Object Shape : ==== == Name of the contact at Reims == **Maxime Brouillard** == Sketch of the Object from Reims : == [[https://drive.google.com/file/d/0B0QVCOXTMUhCd0Vvd21VQTFQMGc/edit?usp=sharing]] == Picture of the Object without instruments and electronics :== [[https://www.dropbox.com/s/pkwbr5tz2iuvqb7/canne_vierge.jpg]] == Picture of the Object with instruments and electronics outside on the same table (put some circles and arrows on the picture to show where you're going to integrate all of these) : == [[https://www.dropbox.com/s/8pi84jghjo23ulb/canne_et_composants.png]] == Picture of the finished Object (all is integrated): == [[https://www.dropbox.com/s/qpa1mzt0ko6ixyn/IMG_20140220_165257.jpg]] == Demonstration Video : == [[https://www.dropbox.com/s/3xqm4x3ue2swn9x/OC.mp4]] ==== Hardware specifications : ==== == List : == * Load Sensor | [[http://www.phidgets.com/products.php?product_id=3137|Reseller link]] | Gotronic : 31799 | [[http://www.phidgets.com/docs/Load_Cell_Primer|Technical Documentation]] * Spatial Interface | [[http://www.gotronic.fr/art-interface-spatiale-3-3-3-1042-0-19644.htm|Reseller link]] | Gotronic : 25434 | [[http://www.phidgets.com/docs/1042_User_Guide|Technical Documentation]] * GPS | [[http://www.gotronic.fr/art-module-gps-1040-12136.htm|Reseller link]] | Gotronic : 25523 | [[http://www.phidgets.com/docs/1040_User_Guide|Technical Documentation]] ==== Specifications and interface of the service on the object ==== Datas are sent from the cane on a regular interval of 1 second.\\ We send all the datas at once, following this scheme :\\ altitude/latitude/longitude/heading/velocity/accelerationX/accelerationY/accelerationZ/compasX/compasY/compasZ/gyroX/gyroY/gyroZ/load\\ We choose to use this scheme because it is less bandwith consuming and easier to put in a file. ==== Specifications of the interface of high added value service ==== The high added value service has the following features : * Route drawing : based on the gps positions, the walked route is traced on a google earth map.[[https://www.dropbox.com/s/si4iygoa2zjg5e9/kml%2Bcompteur_de_temps2.png]] * Stability detector : If the user shakes too much, it will triger an alert (a sound in our configuration)[[https://www.dropbox.com/s/n4s5s9wu3hkxgir/stabilite2.png]] * Effort measure : combined to an heart-rate sensor, it calculate the effort the user put into walking.[[https://www.dropbox.com/s/2qjpwvo8vv1f43m/Mesure_effort2.png]] * Walking time : measure the time spent walking (combined with the route drawing)[[https://www.dropbox.com/s/si4iygoa2zjg5e9/kml%2Bcompteur_de_temps2.png]] * fall notification : if the cane fall and another object detects the user has fallen, it will trigger an alert (a sound in our case)https://www.dropbox.com/s/pe6n3ydqslzks82/detecteur_tomber2.png * Pressure measure : measure the pressure excerced by the user and if its above a treshold it will trigger an alert [[https://www.dropbox.com/s/tdvdidc0urkvkcr/detecteur_force2.png]] ==== Project Files: ==== All the project files are accessible under this dropbox folder : [[https://www.dropbox.com/sh/qflj6iljit7mih2/gPbjhyfs5S]] == . wcc of the two containers (embedded and on the remote PC) : == embedded : [[https://www.dropbox.com/s/7g5fyeex0dr967z/Ubikwan.wcc]] remote pc : [[https://www.dropbox.com/s/2jf5b78m7cxz4re/HV_final.wcc]] == Beans added for the embedded container (for the service on the object) ** (DLL and Source code for each of them) == [[https://www.dropbox.com/sh/j41ek6nlbizuodu/--ZYr-6uk0]] == Beans added for the remote PC container (for the high added value service on the PC) ** (DLL and Source code for each of them) == [[https://www.dropbox.com/sh/k3tv4e6e637s1p7/vdUyl1HpDN]] == Chesklist to install the embedded service on the object == - Configure the internet connection of the phidget - Deploy the SharpWCompContainer under /root/UbikwanCannobi - Deploy the Ubikwan.wcc container on the phidget file system under /root/UbikwanCannobi - Deploy the required beans on the phidget file system under /root/UbikwanCannobi/Beans - Put the run.sh ([[https://www.dropbox.com/s/pisdm0an6iyaeyh/run.sh]]) script into /root/UbikwanCannobi/SharpWCompContainer/ - Execute this command : "/root/UbikwanCannobi/SharpWCompContainer/run.sh" - (optionnal)Configure the initab to execute the previous command automatically after booting by adding the following line at the end of /etc/inittab : "unci:2345:respawn:sh /root/UbikwanCannobi/SharpWCompContainer/run.sh ([[https://www.dropbox.com/s/0sih5orgoq058ux/inittab]]) == Chesklist to install the remote service/application on the PC == - Launch WComp - Create a new container - Import the file : HV_final.wcc - Bind this container to UPNP - Create a proxy of this container - Create a proxy of the phidget service - Create a new container - Add the two previously created proxy - Link the stringevent event of the phidget proxy to stringmethod method of service proxy ==== Results of the relations with Reims (being factual without personal opinion) ==== After receiving the object, we had few problems while integrating the components. Indeed, there is only the load sensor and the Phidget platform that have a location to be put on the cane. The GPS and the spatial interface did not have their own location. Maybe a lack of communication with our contact in Reims caused this problem. Otherwise, some components were well thought such as the phidget container and the space for the pressure sensor, but the dimensions were too small to really fit those components. ==== Prospects : ==== == Possible extensions of the object == By adding a heart-rate sensor to the cane, the measure of effort would be more accurate. Adding screens on the cane to help the user track his efforts while he is walking, would more likely make him actually use the cane. == Possible extension of the service on the Object == Changing the format of the values sent through the service into a more readable format (e.g: JSON) will make the the usage of this service by other more easier. Stocking the different values of the sensors while the cane isn't connected to the wifi, will make the cane more useful because it often occured the cane isn't connected to a network at all while walking. And when the cane is connected back to the network, it will push all the datas collected to the different services. == Possible extension of the high added value Service == Thanks to the collected data written in files, it could be possible to build a collaborative map showing the places that are not very stable for cane users. == Possible GUI for data visualization == A map or google earth for the collaborative map described above. A chart for the re-education program.