Pousse Seringue / Arduino / ESP8266 / LAAS-HW
Données préliminaires
-
Hardware
- A4988 breakout
- A4988 wiring
- Stepper: 17HS19-2004S1
- 200steps 1.8°/step 2A/φ 1.4Ω/φ
- WIRING: 1A/A-/grn 1B/A+/blk 2A/B-/blu 2B/B+/red
- Wiring ref1
- Wiring ref2
-
Arduino libraries (git-clone dans le répertoires des librairies Arduino)
Installation des drivers et outils de compilation
Installer toutes les dépendences:
Créer un espace de travail: mkdir -p ~/devel/workspace/src
Cloner les paquets suivant dans le dossier ~/devel/workspace/src
.
- Compiler and driver pour le esp8266 arduino (coeur arduino).
- Fournisseur d'interface web pour arduino. On l'utilise pour l'interface graphique
- Parseur de fichier Json pour arduino.
Pour compiler sur la cible :
Pour compiler sur le PC (pour test) :
- Remplacement du serveur web asynchrone. (les librariries Async* ne sont pas compilables sur PC)
- WebSocket driver pour arduino. Utilisé pour la compilation locale de l'interface graphique web.
mkdir -p ~/devel/workspace/src
cd ~/devel/workspace/src
git clone --recursive git@github.com:esp8266/Arduino.git arduino_esp8266
git clone --recursive git@github.com:s00500/ESPUI.git
git clone --recursive https://github.com/bblanchon/ArduinoJson.git
# pour l'esp8266 seulement
git clone --recursive https://github.com/me-no-dev/ESPAsyncWebServer
git clone --recursive https://github.com/me-no-dev/ESPAsyncTCP
# pour emulation sur PC seulement
git clone --recursive git@github.com:d-a-v/emuAsync.git
git clone --recursive https://github.com/Links2004/arduinoWebSockets.git
On récupère la chaine d'outil pour compiler sur arduino
cd ~/devel/workspace/src/arduino_esp8266/tools/
./get.py
Pensez à verifier l'installation en suivant les instruction du paragraph suivant.
Vérification de l'installation:
Emulation de l'interface graphique
Pour verifier sir l'émulateur fonction on fait tourner un test unitaire d'ESPUI.
export ESP8266ARDUINO=~/devel/workspace/src/arduino_esp8266
export ARDUINOLIB=~/devel/workspace/src/
cd ~/devel/workspace/src/
./emuAsync/tests/ESPUI-gui
Cela devrait compiler le test et creer un executable gui
.
Celui ci se trouve afficher dans le terminal entre deux flèches:
----> ~/devel/workspace/src/arduino_esp8266/tests/host/bin/gui/gui <----
Vous l'éxecuter:
~/devel/workspace/src/arduino_esp8266/tests/host/bin/gui/gui
Et vous ouvrez firefox sur localhost:9080:
firefox localhost:9080
Compiler et flasher la carte:
IDE Arduino
@todo
PlaterformIO
@todo
ESP
@todo
Visualization locale de l'interface utilisateur sans l'arduino.
Compiler l'application localement:
# se positionner dans pousseseringue-arduino/
export ESP8266ARDUINO=~/devel/workspace/src/arduino_esp8266
export ARDUINOLIB=~/devel/workspace/src/
cd host_gui
./make.sh
lancer le server:
${ESP8266ARDUINO}/tests/host/bin/pousseseringue-arduino/pousseseringue-arduino
Some code details explanation
CORE_MOCK
Ce CORE_MOCK
permet d'ignorer les ligne qui sont spécifique au micro-controller
afin de compiler le driver sur le PC local. Cela permet notamment de visualiser
le gui sans avoir la carte éléctronique physiquement et de la flasher.
#if !CORE_MOCK
// on the target
#else // !CORE_MOCK
// on host
#endif // !CORE_MOCK