Étape 7: Notes sur le programme Lua/ESP8266
Le programme en cours d’exécution dans le cerveau de voiture de S0lRider est une puce ESP8266 peu coûteuse mais puissante de ExpressIF. La puce est dans ce cas a été vendue soudé dans un Conseil de développement qui facilite l’accès aux différentes broches. Les puces de ESP8266 viennent généralement avec un firmware par défaut qui doit être mis à jour au firmware NodeMCU qui prennent en charge le code LUA utilisé pour S0lRider.
Le processus de mise à niveau de la puce ESP8266 se trouvent sur mon autre blog ici.
Quelques notes rapides concernant les trois fichiers fournis :
- init.lua : exécute après démarrage, elle contient un minuterie/retard et puis lance l’application de voiture S0lRider par défaut ou l’alternative.
- s0lriderPebble.lua : programme S0lRider Lua à exécuter lors de l’utilisation de galets et à envoyer des commandes vocales. Comme la dictée API nécessite un accès internet si vous définiriez le module ESP comme Point d’accès votre téléphone perdrait accès Internet en Wi-Fi a la priorité sur les réseaux de données GSM / 4G. C’est pourquoi, dans ce mode, vous devez affecter votre téléphone android comme point d’accès pour S0lRider s’y connecter.
- s0lrider.lua : programme S0lRider Lua lorsque votre téléphone ne supporte pas la création d’un hotspot ou que vous n’utilisez pas utiliser Pebble et c’est pourquoi vous n’utilisez pas de dictée de galets. La voiture/ESP8266 devient un point d’accès Wi-Fi que vous connectez avec votre téléphone.
Le code dans s0lriderPebble.lua et s0lrider.lua a essentiellement démarre un serveur UDP. Se trouvait préférable sur TCP UDP (un meilleur protocole d’effort) car il a un temps de réponse plus rapide, quelque chose de souhaitable pour un robot mobile. En outre le code Lua envoie des instructions par l’intermédiaire de 4 broches pour un L293D (double H bridge) pour contrôler les deux moteurs basés sur les paquets UDP provenant de l’App Android. Enfin ce code Lua s’occupe également d’activer le chenillard rouge.