Page 1 sur 2

Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : ven. juin 30, 2017 6:08 pm
par chercheur
Bonjour,

Je présente ici mon petit projet de monitoring/pilotage à distance de nos Automower G2 (220, 230, 260, ...) par liaison WIFI.
PDC a déjà développé une solution élégante et fonctionnelle il y a plusieurs années mais le temps nécessaire à sa mise en œuvre devient un soucis (pour lui). Sa solution sur base de Fonera est plus aboutie et propose plus de fonctions que celle que j'expose ici.
Je compte la développer par la suite et lui apporter de nouvelles fonctionnalités avec l'aide d'autres membres je l'espère.

ATTENTION : les mises en garde habituelles sont de mise !!!
Il faut intervenir dans le robot
Il ne faut pas se tromper quand on câble des circuits alimentés
Il ne faut surtout pas se tromper quand on câble les interfaces de communication avec le robot
-> bref, de la patience et un minimum de maîtrise en électronique sont indispensables.

But du projet :

1) récolter des données de fonctionnement du robot à distance. Le but est d'utiliser le programme développé par PDC (TweakAutomower)
2) pouvoir commander le robot à distance.
3) utiliser une solution peu couteuse
4) utiliser une liaison WIFI (ce qui sous-entend que la couverture WIFI de la maison porte suffisamment loin dans le jardin!)

Matériel requis :

1) une borne d'accès WIFI fonctionnelle dans votre maison
2) un robot prêt à être ouvert
3) un module ESP8266-12 c.à.d un circuit intégré à microcontrôleur avec connexion WiFi (valeur 3,6€)
[img https://img4.hostingpics.net/pics/678165ESP826612.jpg]
4) un câble et connecteurs faits maison

Principe :

L'ESP8266-12 utilisé dans ce projet est un modèle "NodeMCU" cela signifie que le microcontrôleur (qui a en fait la taille d'une pièce de 2€) est monté sur un circuit imprimé qui permet la connexion immédiate de tous les éléments nécessaires : liaison directe vers PC par USB pour sa programmation, alimentation, entrées/sorties série pour connexion au robot.
Ce module comporte une puce WIFI intégrée ainsi qu'une antenne (portée chez moi...au delà des 100m!).

Les connexions câblées sont réduites au minimum et se font toutes sur le connecteur blanc de la carte mère (merci à Jo pour son dessin éternel) :
Connecteur blanc ESP8266
---------------------- -----------
1) RX TX = D8 (GPIO15)
2) TX RX = D7 (GPIO13)
7) GND GND
9) 3.3v 3.3v

[img https://img4.hostingpics.net/pics/90490 ... hemajo.jpg]

Mise en œuvre :

1) Programmation de l'ESP8266-12
Pour faire court, l'ESP8266 est programmable dans l'environnement IDE d'Arduino.
- soit vous connaissez : "oh oui, facile, je maîtrise"
- soit vous êtes intéressé : [url https://www.arduino.cc/en/Main/Software] et [url https://learn.sparkfun.com/tutorials/es ... uino-addon]
- soit vous êtes désespéré : contactez moi :-)

Attention la programmation du module est une étape importante. Il est vital qu'il n'envoie pas d'informations erronées au robot sous peine de bloquer la carte mère.
J'ai donc développé des protections software.

2) WIFI : je pars du principe que le module ESP8266 utilise une adresse IP fixe. Je programme donc cette adresse directement dans le module ainsi que les données de connexion (SSID, mot de passe).
La programmation inclu un monitoring de la liaison WIFI, un redémarrage de celle-ci en cas de perte (éloignement, obstacles, etc...).
Le module ESP8266 n'offrant, à mon goût, pas une grande stabilité WIFI à long terme je redémarre le module automatiquement toutes les 10 minutes (ce qui crée une interruption de connexion de moins de 2 secondes)

3) Connexions à l'intérieur du robot :
2 petits connecteurs faits maison connectent la carte mère à l'ESP8266.
J'ai placé l'ESP-8266 tout près du réglage de coupe. Comme vous le constatez, c'est minuscule.

[img https://img4.hostingpics.net/pics/668346Placement.jpg]

Utilisation :
Une fois installé le module se connecte au WIFI de la maison.
A l'aide de logiciel "TweakAM" de PDC il est alors possible de récolter, consulter et même diriger le robot à distance.
(section développée par PDC ici : [url http://automowerfans.free.fr/fans/pdc/wlan/index.html]. Tout est pareil à partir de l'installation de TruePort).
Le ramener à la maison, le remettre en mode AUTO, vérifier sa charge et sa température, changer sa durée de charge, etc...se fait depuis votre divan.

Développements supplémentaires intégrés dans ma version "personnelle":
J'ai ajouté plusieurs éléments à ce set-up de base :

1) un monitoring indépendant de la tension de la batterie et de sa température
Ayant suivi les pas de PDC ma 230 est maintenant équipée de batteries Li-Ion. Je voulais absolument pouvoir monitorer de manière totalement dissociée du robot ces 2 paramètres de fonctionnement.
Température : j'ai ajouté une sonde de t° digitale "DS18B20" à l'ESP-8266 (entourée de rouge sur le pack de batterie)
Tension : je mesure la tension directement à partir de l'ESP-8266 via un diviseur de tension (pont diviseur)

Ces 2 données sont mesurées toutes les 30s (ou à le demande) et envoyées vers un site Internet Of Things gratuit qui me permet de les visualiser partout dans le monde et sur une appli
[img https://img4.hostingpics.net/pics/632468Thingerio.jpg]

2) Intégration dans mon système domotique
J'utilise un système "HomeMatic" ([url http://www.homematic.com/]) chez moi pour contrôler mes chauffages et ma chaudière.
J'ai donc intégré un script créé sur le forum HomeMatic qui me permet de contrôler mon Automower à partir de la même application, tout le temps, partout.

[img https://img4.hostingpics.net/pics/742323HomeMatic.jpg]

Futurs développements :
Je reste persuadé (tout comme pdc) que ce type de contrôle à distance par WIFI offre toutes les garanties de sécurité afin de ne pas envoyer de mauvaises commandes au robot.
Cependant, et en association avec Razmoket, nous travaillons à ajouter une couche de contrôle supplémentaire. Ce sera pour ... le futur :-)

Une seconde étape sera pour moi (toute aide est la bienvenue) de faire tourner un mini serveur web sur l'ESP-8266.
De cette façon n'importe quel "engin" connecté (PC, tablette, GSM, etc...) pourrait simplement se connecter via une page web et commander le robot par simple pression des touches prédéfinies.

Crédits :
Une fois encore PDC a été d'une aide précieuse !
Je vous renvoie également vers ce lien pour ce qui concerne l'intégration Homematic : [url https://homematic-forum.de/forum/viewtopic.php?t=7295]

Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : ven. juin 30, 2017 11:22 pm
par Umbra55
Impressionnant ! Surtout la future possibilité de commander par smartphone/tablette me semble un énorme atout.

Quelques questions :

[quote le 30/06/2017 à 16:08:35, chercheur a dit :]PDC a déjà développé une solution élégante et fonctionnelle il y a plusieurs années mais le temps nécessaire à sa mise en œuvre devient un soucis (pour lui). Sa solution sur base de Fonera est plus aboutie et propose plus de fonctions que celle que j'expose ici.[/quote]
Si c’est le même logiciel, quelle est la fonctionnalité que cette nouvelle solution ne fait pas par rapport à celle de PDC ?

Si je me souviens bien, la solution de PDC consomme environ 3 watts, ce qui est peu mais diminue toute de même l’autonomie du robot de 10 % Qu’en est-il de cette nouvelle solution ?

J’ai cru lire que les différents pilotes/logiciels de PDC ne tournent pas sous windows 10. Qu’en est-il ?

Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : sam. juil. 01, 2017 1:06 am
par chercheur
PDC et sa Fonera permettent d'envoyer les données vers une base de donnée, par exemple.
Il a aussi développé une télécommande pour smartphone ...

Dans mon cas, pour le moment, il s'agit de permettre un envoi transparent des commandes TweakAM.
J'utilise aussi des commandes hexadécimales en direct mais c'est plus complexe pour une utilisation simplifiée.

La consommation du module est d'environ 80 mA...pas grand chose.

Enfin, et comme annoncé par PDC, les drivers TruePort tournent maintenant sous Windows10. Et ses softs aussi. Donc tout fonctionne parfaitement.

Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : sam. juil. 01, 2017 1:32 am
par poildecarotte
un grand merci à chercheur pour cette nouvelle solution de contrôle wifi du mouton!
Ces bestioles (ESP8266) sont produites en masse, aussi elles constituent une bonne plateforme hardware pour le futur: elles sont le digne successeur de la fonera avec encore moins de consommation électrique et surtout des possibilités de programmation bien plus simples avec l'environnement intégré arduino.
Il faut toutefois un peu de patience pour les apprivoiser avant d'arriver à une solution stable et fiable (il faut à tout prix être certain d'envoyer les bonnes données au robot, sinon on le fait totalement "disjoncter" d'où le choix du lien wifi sécurisé contre les erreurs via le protocol TCP/IP).

Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : sam. juil. 01, 2017 3:42 pm
par Keops62
Impressionnant !

Je suis loin de pouvoir attaquer l'électronique à ce niveau là
mais ça commence à me chatouiller très fortement
(carte Arduino déjà testée avec planche à pain et kit de base pour voir),
donc par curiosité :
- pourrais-tu mettre des zooms sur la carte ESP (et sur le connecteur blanc) ?
- quel(s) script(s) pour le logiciel Arduino utilises-tu ?

Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : sam. juil. 01, 2017 6:04 pm
par chercheur
Bonjour,

Je n'ai pas vraiment de photo précise de l'ESP et du connecteur blanc.
En fait le dessin (plus haut) ne demande pas beaucoup plus d'explications...

Connecteur blanc ESP8266
---------------------- -----------
1) RX -> TX = D8 (GPIO15)
2) TX -> RX = D7 (GPIO13)
7) GND -> GND
9) 3.3v -> 3.3v

J'ai donc écris un sketch IDE pour l'ensemble des fonctions.

PS : si quelqu'un voulait juste les fonctions de transmission il pourrait également connecter un ESP8266 à l'extérieur via le connecteur en dessous du robot...

Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : sam. juil. 08, 2017 7:14 pm
par Plexi
Hello,
sorry if i write in English,but my written French is not even decent.
Wanted just put a warning (as you did), about the very picky uart interface of the AM gen2.
Just esperimenting I was able to kill two motherboard.
The first one , because I swapped tx-rx pins (connecting by mistake tx with tx)
UART connection dead (TX side)
second one , connecting an Raspberry pi via its UART , forgot to exclude console monitoring.
Raspberry sent init data to AM, Motherboard completely dead.
Just because I remember that ESP8266 ,at boot, sends a sequence over uart (at 56 Kbaud ?)
would'nt like to have a third board killed.
Mauro


Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : sam. juil. 08, 2017 8:34 pm
par poildecarotte
great thanks Mauro for your warning.
Yes indeed, we need to take care about what is sent to robot, otherwise there can be damages as your message proves.
Yes init sequence of ESP must be avoided, this is possible using other pins of ESP for RX TX as the standard ones.
good luck for your experiments.

Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : lun. juil. 10, 2017 5:05 pm
par smoo
Excellent !

petite question avec l'intégration Homematic.
l'équipement Homatic communique directement avec le robot, ou il passe par l'intermédiaire d'un pc ?






Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : lun. juil. 10, 2017 5:25 pm
par chercheur
Homematic est basé sur une petite centrale (un linux en fait) connectée sur le réseau IP (et donc....à l'access point WIFI par ricochet).
(Tous ses éléments de marque Homematic (vannes, interrupteurs, sondes) discutent indépendamment en 433Mhz.)

Donc les scripts d'intégration tournent sur cette petite centrale...

Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : lun. juil. 10, 2017 5:39 pm
par smoo
ok génial.

je pose la question car j'ai une central fibaro... qui m'offre la possibilité de faire des Scrpit LUA, et idéalement des appelles HTTP a d'autres devices.

Donc soit
- je suis capable de porter ces scripts en LUA (mais j'ai des doutes si il faut passer par une simulation de port COM, car je n'ai pas accès a cela depuis la central),
- soit il faut que j'invoque des interfaces HTTP (JSon) des devices (mais il faudraoitporu cela que le petite module supporte une API de ce type.




Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : mer. juil. 19, 2017 1:40 pm
par krystyan
Bonjour Smoo
j'utilise une centrale domotique Eedomus protocole zwave (idem fibaro) et j'envoie des commandes HTTP sur la Fonera (AUTO, HOME, ...) pour gérer la tondeuse en fonction des données climatiques et horaires
j'ai juste créé un device actionneur HTTP

Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : dim. juil. 23, 2017 6:59 pm
par smoo
Excellent !
je vois comment cela fonctionne avec le Fonera qui a son mini serveur si j'ai bien compris.

qu en est il de la nouvelle solution proposée avec ESP ?


Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : mar. juil. 25, 2017 12:38 pm
par chercheur
Comme décrit plus haut...rien pour le moment.
Il est possible d'envoyer des commandes (hexadécimales) et de récupérer la réponse comme le fait TweakAM.

Le serveur web embarqué arrive...mais n'est pas encore dispo.

Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : ven. août 25, 2017 10:40 pm
par krystyan
[quote le 19/07/2017 à 11:40:34, krystyan a dit :]Bonjour Smoo
j'utilise une centrale domotique Eedomus protocole zwave (idem fibaro) et j'envoie des commandes HTTP sur la Fonera (AUTO, HOME, ...) pour gérer la tondeuse en fonction des données climatiques et horaires
j'ai juste créé un device actionneur HTTP[/quote]

Par contre j'essaie de récupérer le status de la tondeuse dans l'EEdomus mais en vain pour l'instant

Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : jeu. mai 03, 2018 3:47 pm
par heinh
Y a il une suite à ce fil tres intéressant ?

Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : jeu. mai 03, 2018 5:01 pm
par chercheur
Bonjour,

Non, en fait je suis passé à une autre solution plus stable et offrant beaucoup plus de possibilités.
[url http://automower-fans.les-forums.com/topic/6000/une-api-sur-nos-g2-via-wifi/]

Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : ven. mai 04, 2018 10:08 am
par heinh
J'avais vu ce post prometeur sur cette api via wifi
Cela me semblait moin documenté pour comparer à ta solution.
Peut être que je doit être patient.

Mon but n'est pas de réinventer la roue.
J'essaye de faire une récapitulatif des diverses solutions existantes dans un autre post.
Ce serait intéressant que pour chacune on ait:
- une vue générale sur les fonctionnalités apportées
- le niveau maturité de la chose
- le potentiel d'évolution
- Le niveau requis pour réaliser

Pour moi, le truc ultime serait:
Un module avec WIFI avec:
Un point d'entrée "serie brut" pour des application ou l'intelligence est déportée du type tweakam
Un point d'entrée avec un minimum d'"intelligence", acessible par des api / http get JSON ou tout autre standard
cerise sur le gâteau La possibilité d'ajouter des capteurs, comme tu l'a fait.

Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : ven. mai 04, 2018 11:45 am
par chercheur
Oui en effet mais toutes ces solutions sont pour G2 uniquement :-(
Personne n'a encore ouvert son G3/G4 pour y tripatouiller...

Controle Automower par WIFI - ESP8266 (pour G2 uniquement)

Publié : ven. mai 04, 2018 9:31 pm
par heinh
Si pas exportable sur un 420 ca change tout.....
J'avais trouvé
[url https://robomaeher.de/blog/wlan-modul-automowergardena/]
Il y des variations pour plusieurs modeles.
Mais quand on sait comment c'est fait, le prix semble exagéré.