Joséphine la machine à café USB (partie 2)

Joséphine la machine à café USB (partie 2)

Vous vous rappelez de Joséphine, notre machine à café USB? Figurez-vous qu'on a remarqué qu'elle avait tendance à s'éteindre automatiquement juste avant qu'on ai envie d'un café :-) Du coup on a décidé de lui offrir un petit upgrade: en plus de pouvoir lancer un café à distance, on va pouvoir l'allumer et l'éteindre, et choisir un café simple ou double. Et tout ca en quarante lignes de code, interface utilisateur comprise.

En terme de bricolage, ce n'est pas très compliqué tout le travail a été fait la dernière fois: on avait déja ramené tout les fils de commande au même endroit, on a juste besoin de quatre relais pour commander les quatre fonctions. On va utiliser des Yocto-Relay, deux modules suffiront étant donné que chacun d'entre eux dispose de deux relais. Le problème c'est la place: impossible de faire entrer les deux modules et un hub USB standard dans la machine à café.

Ca, ça va pas pouvoir rentrer dans la machine à café :-(
Ca, ça va pas pouvoir rentrer dans la machine à café :-(


On va donc utiliser un Micro-USB-Hub. En plus d'être minuscules, ces hubs sont conçus pour que l'on puisse visser les modules dessus. La connexion entre le hub est les modules est assurée par des petits connecteurs. On en a aussi profité pour souder directement le cable USB sur le hub, ce qui nous débarrasse de la prise USB et nous fait gagner de la place. Il ne reste plus qu'à placer le tout dans la machine et connecter les bons fils au bon endroit.

On va plutôt utiliser un Micro-Hub
On va plutôt utiliser un Micro-Hub


On soude des petits conencteurs sur le hub et les Yocto-relay
On soude des petits conencteurs sur le hub et les Yocto-relay


Et on monte le tout ensemble, le résultat est quand même un peu plus compact
Et on monte le tout ensemble, le résultat est quand même un peu plus compact


Finalement on a décidé de se débarrasser du connecteur USB et de souder directement le câble
Finalement on a décidé de se débarrasser du connecteur USB et de souder directement le câble


Voila! c'est prêt
Voila! c'est prêt



La partie hardware est terminée, reste la partie software. Comme on a très envie d'un café juste là maintenant, on va faire au plus simple. On va juste se contenter de faire une page web qui contrôle chacun des relais. Pour simplifier la programmation, on a configuré chaque relais en lui donnant un nom logique correspondant à la fonction de la machine qu'il commande. Toujours pour simplifier la programmation, plutôt que de faire basculer les relais dans un sens puis dans l'autre pour simuler l'appui sur un bouton, on va utiliser la fonction pulse(), qui fait basculer le relais, puis le fait automatiquement revenir à sa position initiale au bout d'un temps déterminé, 500 milli-secondes dans notre cas.

<HTML>
<HEAD>
<link rel="apple-touch-icon-precomposed" href="coffee.png"/>
<meta name="apple-mobile-web-app-capable" content="yes" />
<script type="text/JavaScript" language="javascript1.5" src="yocto_api.js"></script>
<scripttype="text/JavaScript" language="javascript1.5" src="yocto_relay.js"></script>
<scripttype="text/JavaScript" language="javascript1.5">
<!--
if (yRegisterHub("http://192.168.2.34:4444")<0)
  alert("unable to contact Josephine's server");

function action(str_fctname)
{ var r = yFindRelay(str_fctname);
  if (r.isOnline())
   { r.pulse(500);
   } else  alert ("Josephine is not connected");
}
-->
</script>
</HEAD>
<body>
<img style ="position:absolute;top:0;left:0;width:100%;height:100%" src='bg.png'>
<table width='100%' height='100%' style ="position:absolute;top:0;left:0;width:100%;height:100%" >
<tr>
 <td valign='middle' style='text-align:center'>
  <img src='onoff.png' width="50%" onclick="javascript:action('on_off')">
 </td>
 <td valign='middle' style='text-align:center'>
  <img src='service.png' width="50%" onclick="javascript:action('service')">
 </td>
</tr>
<tr>
 <td valign='middle' style='text-align:center'>
   <img src='1coffee.png' width="50%" onclick="javascript:action('simple_coffee')">
 </td>
 <td valign='middle' style='text-align:center'>
   <img src='2coffee.png' width="50%" onclick="javascript:action('double_coffee')">
 </td>
</tr>
</table>
</body>
</HTML>



Il ne reste plus qu'à sauver cette page sur un serveur web, et le tour est joué.

Une machine à café entièrement contrôlable depuis votre smart-phone, ça vous dit?
Une machine à café entièrement contrôlable depuis votre smart-phone, ça vous dit?



Et voilà c'est bouclé: plus besoin de se lever pour aller rallumer la machine à café: on peut le faire à distance. Bon, évidement reste encore l'épineux problème de la tasse.

  






Commenter 2 commentaires Retour au blog



1 - mick Vendredi 22 mars 2013 13H27

Bonjour,passionné de technologie et de Domotique ,j'ai domotisé ma maison BBC Ossature Bois et votre machine a café je la touve génial et j'aimerais pouvoir en faire autant j'ai une machine à café Melitta Caffeo Latttea et la commander par iphone en wifi serait génial ou avec un émetteur branchè sur ma sortie Domotique le problème c'est qu'il faut agir sur le bouton marche pour l'allumage et quelque temps après sur le bouton grande tasse ,comment faire ma Domotique marche par liaison bus(Domintell) par port ethernet ou RS 232,comment puis je faire ?

2 - mvuilleu (Yocto-Team)Mardi 26 mars 2013 8H46

Bonjour, vous avez deux possibilités: soit vous mettez un mini-PC (voir notre post de blog sur la comparaison des mini-PC à ce sujet), soit vous patientez encore... disons... deux mois (?) pour que nous sortions le YoctoHub-Ethernet qui vous offrira l'accès direct à nos modules par Ethernet. Dans les deux cas, vous pouvez ensuite accéder à nos modules à travers le réseau, et même les actionner à travers des simples requêtes HTTP.

Yoctopuce, get your stuff connected.