Dans le cadre de mes cours de Smart Object de dernière année d’école d’ingénieur, nous devions (en binôme) imaginer une évolution d’un objet de tous les jours pour qu’il devienne « communiquant ».
Notre choix s’est porté sur le réveil matin. Nous lui avons rajouté des fonctionnalités telles que la consultation d’agendas informatiques (Google Calendar) et de sonneries automatiques en fonction de l’emploi du temps du jour.
Ainsi, un lycéen (qui a un emploi du temps quotidien très variable) se fera lever à 9h le lundi, et 7h le mardi, et ceci automatiquement.
Techniquement, l’application est organisée en quatre parties logicielles distinctes :
- Un logiciel client PC classique, développé en C# .Net, qui permet de se connecter à Google Calendar et de sélectionner les évènements qui feront sonner le réveil. De plus, pour chaque évènements, l’utilisateur choisi l’heure où le réveil sonnera.
Ce logiciel utilise aussi UPnP, qui lui permet de notifier le noyau de l’application.
—
- Un noyau, aussi en C# .Net, qui reçoit les notifications du logiciel PC (ci-dessus), effectue quelques traitements et transmet l’information au Web Service.
Le choix d’utiliser un noyau est justifié par le fait que notre objet devait être commercialisable. Le noyau aurait permis d’ajouter du contenu payant ou non au fil du temps.
—
- Un Web Service, qui est invoqué par le noyau, reçoit les évènements sélectionnés précédemment et communique avec le réveil grâce à une liaison Socket. Toute cette partie a été développée en C# Compact .Net.
—
- Et enfin le réveil, qui est un Pocket PC, reçoit les évènements, les affiche et sonne aux heures souhaitées ! Toute cette partie a été développée en C# Compact .Net.
Le projet a été conçu avec Visual Studio 2008 et s’est déroulé pendant 1 semaine. En voici une brève vidéo de présentation :
Démonstration du Smart Alarm Clock from Romain B. on Vimeo.
——
Projet effectué en janvier 2009 pour Polytech’Nice, en qualité d’Ingénieur informatique mobile.
Votre commentaire