A.M.F.N.
Association des Modélistes Ferroviaires de Nice

Une automotrice HOe alimentée par batterie
et commandée par smartphone en WiFi


Lorsqu'on est amateur de voie très étroite, et qu'on se régale à faire circuler des matériels pittoresques sur des voies herbeuses, à demi enterrées et savamment délabrées, on est assez vite confronté au problème de la mauvaise captation.
On peut certes multiplier les prises de courant, ou digitaliser le matériel en ajoutant un condensateur de maintien, mais la circulation au ralenti reste un problème permanent.
D'où l'idée d'alimenter les engins sur batterie, en commençant par ce petit véhicule articulé bien connu des HOe-istes: l'automotrice Egger-Bahn 1010.
Pour la commande, il est fait appel à un module de la famille des ESP8266, l'ESP12s, qui assure les communications en WiFi et gère aussi le fonctionnement de l'engin, à la façon d'un décodeur digital.

Schéma de principe:
 

Le montage (cliquez sur l'image pour l'agrandir) est fait autour du module ESP12s.

La tension de la batterie est appliquée d'une part à un régulateur LDO pour alimenter l'ESP12s en 3,3V, et d'autre part à un convertisseur élévateur (step-up) pour alimenter le moteur en 10V.

Un "pont en H" DRV8833 permet d'appliquer au moteur une tension hachée (vitesse) et de polarité (sens) ad-hoc.

Notes:
• les différentes LEDs sont connectées directement à la batterie pour soulager le régulateur 3,3V.
• le moteur est alimenté en seulement 10V à cause de la limitation du pont DRV8833. Mais ce pont a été choisi pour sa petite taille, et 10V suffisent pour assurer un fonctionnement réaliste.
• la batterie est rechargée par un chargeur externe.

Réalisation:
 
 

L'ESP12s est monté sur un petit circuit imprimé dessiné spécialement. Toutes les résistances sont au dos.
Le pont en H DRV8833 est connecté dans le prolongement du circuit.
Comme le circuit se loge dans le toit, deux LEDs blanches font office de plafonniers.

Notes:
• le circuit a été dessiné à l'origine pour un régulateur HT7333, mais suite à des problèmes avec ce composant, il a été remplacé par un TC1262, dont malheureusement l'empreinte est différente.
•  il y a six points de connexion (à gauche de l'ESP) qui permettent de charger le programme au départ, et de le recharger en cas de problème avec l'OTA.

Pour dégager de la place pour  l'aménagement intérieur, l'électronique est logée sous le toit.
Malgré tout il n'a pas été possible d'ajouter un avertisseur. Nous en cherchons un tout petit.

Le convertisseur "step-up" est intégré dans le plancher:

Vue de l'intérieur:


L'aménagement intérieur est réduit à quelques bustes de voyageurs.

Une fois peints, les composants qui dépassent sous le châssis évoquent assez bien les réservoirs et autres organes qu'on trouve là en réalité:

Au final (cliquez sur les images)...

Une petite vidéo provisoire.

Partie logicielle:

On trouve sur internet de nombreuses pages exposant de façon détaillée la mise en oeuvre des ESP8266, aussi nous n'y reviendrons pas.
La plupart de ces pages décrivent comment implémenter un serveur HTML dans le module, qui peut alors être commandé depuis un ordiphone, une tablette ou un ordinateur par le biais d'un simple navigateur.
Nous avons procédé différemment, en utilisant plutôt le protocole UDP, qui est très simple et très rapide, mais nécessite une "appli" dans l'ordiphone. Mais cette application existe: c'est l'appli ROCO Z21. Le protocole en est décrit sur le net, et l'utilisation que nous en faisons est extrêmement simplifiée: seuls quelques messages sont traités, et nombre de paramètres sont limités à un seul octet.

Télécharger le programme.

Note: en l'état, ce programme n'analyse pas l'adresse DCC contenue dans le paquet, pas plus qu'il ne vérifie la checksum figurant en fin de message.

Commande de plusieurs engins:

Comme d'autres réalisations de ce type sont en projet, on peut se demander comment contrôler simultanément plusieurs engins moteurs.
Cela peut se faire assez simplement un réalisant un "re-routeur" de paquets UDP.
Les paquets émis par l'application Z21 ont des paramètres fixes: adresse IP et port du destinataire. Mais ils contiennent l'adresse DCC de l'engin à commander.
Le fonctionnement du re-routeur consiste à récupérer tous les paquets (il est vu comme une centrale par les ordiphones), en extraire l'adresse DCC, et renvoyer chaque paquet à l'adresse IP de l'engin.
Par exemple, et pour simplifier nos tests, les paquets contenant l'adresse DCC  X sont réacheminés à l'adresse IP 192.168.1.X.
En pratique, le re-routeur a été réalisé par programme à l'intérieur du PC qui gère le réseau, et également à titre de test par un ESP8266 indépendant.

Intégration à un système existant:

On peut mélanger les engins WiFi et les engins DCC. Pour cela il suffit que le re-routeur transmette directement à la centrale DCC les paquets qui ne sont pas destinés à un engin WiFi.

Améliorations possibles:

Cette réalisation était un prototype. On pourrait lui ajouter une mesure de la tension de la batterie, un avertisseur sonore, etc.

Remerciements:

• à  JC pour sa réalisation Car-System,
• à mon ami Marc, pour m'avoir procuré une caisse martyre,
• aux membres de l'excellent forum Locoduino, qui m'ont donné des tuyaux intéressants.


page précédente: utilisez la touche "PRÉCÉDENT(E)" de votre navigateur