Manuel utilisateur¶
- Auteur
Gilles Lecorsier
- Blog
- Association
BricoLab Groslay(95)
- Entity
- Page principale
- Création
05/2023
- Maj
11/07/2024
1- Vue d’ensemble¶
Dans le cadre du fonctionnement avec serveur web, les différentes étapes à réalisées sont:
- Programmer l'Arduino
- Préparer le serveur
adapter les valeurs min, max au bras utilisé
Dans le cadre du fonctionnement avec Smartphone ou tablette, sous Android :
L’application robot_deux_bras.apk 7 est modifiable en ligne avec ai2.appinventor.mit.edu 8 et le fichier source robot_deux_bras.aia 7.
Charger le fichier : robot_deux_bras.apk 7 sur votre téléphone ou tablette.
Lancer l’installation en acceptant les consignes.
Pour de plus amples informations sur la version Android du projet suivre ce lien 9
2- Câblage¶
Concernant les 2 versions de bras utilisés: on s’inspire des plans de câblage suivant:
Bras Robot Educatif Schéma électrique 10 (dans le présent projet on utilise pas le clavier et le Joystick)
Adaption avec une carte 2560¶
L’avantage de cette carte est qu’elle possède plusieurs ports série matériels dont un port pour le début et un port pour la communication avec le serveur.
Carte ARDUINO MEGA 2560: carte ADAFRUIT PWM câblée sur SDL et SCA broches dédiée de la 2560.
Ajout du Bluetooth¶
Pour faire fonctionner le bras en BT, il convient de câbler un module BT sur la liaison série n°1
BT : HC05 pass 1234, le BT sera câblé sur la serial1 de la carte 2560.
Polarité RX/TX à croisé.
3- Appairage de BT¶
Pour utiliser le Bluetooth (BT), il convient d’appairer la machine qui fait tourner le serveur avec le module BT utilisé. Cette opération peut s’avérer très délicate…
Avant de pouvoir utiliser le serveur et le bras robot, il vaut mieux s’assurer de la communication complète entre un device BT(genre un téléphone et la carte ARDUINO).
2 étapes peuvent être conduites pour cela:
Vérification de la la liaison entre l’ARDUINO et le module BT : utilisation des commandes AT
Puis vérification de la liaison complète device<=>module HC-05<=>ARDUINO
Dans le dépôt Bitbucket se trouve des outils ARDUINO comme bt2560.ino pour tester les commandes AT
Pour vérifier la chaîne complète, on peut laisser le programme bt2560 dans l’ARDUINO et sur un téléphone ANDROID utiliser l’application suivante:
4- Relever les valeurs caractéristiques des servos¶
Les valeurs des différents servomoteurs sont dans le document Arduino codes 12
Afin de vérifier le fonctionnement de chaque servo individuellement et d’effectuer les différents relevés min, max, init, rangement… on pourra utiliser le programme du dépôt testServo/commandes/commandes.ino 13
Commandes:
<H> : help
<A angle>
Pour utiliser ce programme on relie directement chaque servo individuellement (broche signal) à la broche 2 de la carte ARDUINO.
Commandes disponibles une fois le programme bras_manip_etincel_control_bluetooth.ino téléversé dans l’Arduino:
<H> : help
<M m a> Move motor m at angle a\n"
Ces valeurs sont à reporter dans le fichier \parametres_robot.h
5- Mise en place du serveur¶
Il faut avoir préalablement installer Python v3.8 ou plus. Ensuite on utilise un environnement virtuel grâce à la commande Python venv, on installe alors l’ensemble des packets nécessaires dans l’environnement virtuel.
Voir l’installation des modules avec les commandes ici 14, fichier req.txt disponible dans le dépôt robot2brasserveur 5
Lancement du serveur : dans une fenêtre de commande windows taper : server (fichier server.bat disponible également dans le dépôt)
Au lancement, le serveur essaie de se connecter à chaque port série de la machine hôte. Lorsqu’il détecte le firmware de la carte ARDUINO2560, le serveur est connecté au bras et est donc prêt à recevoir des connections web.
A ce stade, il ne reste plus qu’à ce connecter au serveur via un navigateur internet soit à l’adresse ip indiqué par le serveur sur le port 8300 (exemple 192.168.1.94:8300) soit sur la même machine avec localhost:8300.
La connexion au serveur peut se faire soit depuis le serveur lui-même soit depuis une autre machine connectée (PC, Mac ou Android) au même réseau WIFI que le serveur…
6- Interface¶
Le design original de cette interface est de phpoc_man 15 à laquelle nous avons ajouté 2 boutons pour l’initialisation et le rangement…
Tables et index¶
Weblinks¶
- 1
- 2
- 3
https://bitbucket.org/robotdeuxbras/robot2brasdocsources/src/master/
- 4
- 5(1,2)
https://bitbucket.org/robotdeuxbras/robot2brasserveur/src/master/
- 6
- 7(1,2,3)
https://bitbucket.org/robotdeuxbras/robot2brascodes/src/master/bras_appinventor/
- 8
- 9
https://www.vorobotics.com/wiki/index.php?title=Bras_manipulateur#BrasVor_V2.00
- 10
https://www.vorobotics.com/wiki/index.php?title=Bras_Robot_Educatif#Sch%C3%A9ma_%C3%A9lectrique
- 11
https://www.vorobotics.com/wiki/index.php?title=Bras_manipulateur#Mat%C3%A9riel
- 12
https://robotdeuxbras.bitbucket.io/Robot2bras_codes.html#refvaleursservomoteurs
- 13
https://bitbucket.org/robotdeuxbras/robot2brascodes/src/master/testsServo/commandes/
- 14
https://robotdeuxbras.bitbucket.io/server.html#procedure-de-copy-d-environnement-virtuel-venv
- 15
https://www.hackster.io/phpoc_man/arduino-control-arm-robot-via-web-379ef3