Table des matières:
- Étape 1: La liste des pièces
- Étape 2: connexion des pièces électroniques
- Étape 3: Arduino Mega Code
- Étape 4: Test de la préhension automatique
- Étape 5: Préhension automatique activée par la voix
Vidéo: Préhension automatique à l'aide d'un capteur laser et de commandes vocales : 5 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:09
Saisir des objets qui nous semblent une chose simple et naturelle à faire est en fait une tâche complexe. L'homme utilise le sens de la vue pour déterminer la distance de l'objet qu'il veut saisir. La main s'ouvre automatiquement lorsqu'elle se trouve à proximité de l'objet saisi, puis elle se ferme rapidement pour bien saisir l'objet. J'ai utilisé cette technique de manière simplifiée dans ce mini projet, mais au lieu de la caméra, j'ai utilisé un capteur laser pour estimer la distance de l'objet à la pince et des commandes vocales pour le contrôle.
Étape 1: La liste des pièces
Dans ce petit projet, vous n'aurez besoin que de quelques-unes des pièces énumérées ci-dessous. En tant que contrôleur, j'ai utilisé Arduino mega 2560 mais vous pouvez également utiliser UNO ou tout autre Arduino. En tant que capteur de distance, j'ai utilisé un capteur laser VL53L0X qui a une bonne précision (environ quelques millimètres) et une portée jusqu'à 2 mètres. Dans ce projet, vous pouvez utiliser pour tester n'importe quelle pince et servo, mais vous devez l'alimenter à partir d'une source d'alimentation séparée, par exemple: une alimentation 5 V ou une batterie LiPo (7,4 V ou 11,1 V) via un convertisseur abaisseur qui réduit la tension à 5V.
Pièces nécessaires dans ce projet:
- Capteur laser ToF VL53L0X x1
- Servo numérique x1
- Arduino méga 2560x1
- Pince en métal robotique x1
- Planche à pain x1
- Bouton poussoir tactile x1
- Bluetooth HC-06
- Résistance 10k x1
- Alimentation 5V/2A
Version étendue:
- Module de capteur de moniteur de courant CJMCU-219 x1
-
Carte de développement de pilote LED WS2812 RVB x1
Étape 2: connexion des pièces électroniques
La première figure montre toutes les connexions nécessaires. Sur les photos suivantes, vous pouvez voir les prochaines étapes de connexion des modules individuels. Au début, le bouton poussoir était connecté à la broche 2 d'Arduino, puis le servo à la broche 3 et enfin le capteur de distance laser VL53L0X via le bus I2C (SDA, SCL).
Les connexions des modules électroniques sont les suivantes:
Capteur laser VL53L0X -> Arduino Mega 2560
- SDA - SDA
- SCL - SCL
- VCC - 5V
- GND - GND
Servo -> Arduino Mega 2560
Signal (fil orange) - 3
Servo -> Alimentation 5V/2A
- GND (fil marron) - GND
- VCC (fil rouge) - 5V
Bouton poussoir -> Arduino Mega 2560
- Broche 1 - 3.3 ou 5V
- Broche 2 - 2 (et à travers la résistance 10k à la terre)
Bluetooth (HC-06) -> Arduino Mega 2560
- TXD - TX1 (19)
- RXD - RX1 (18)
- VCC - 5V
- GND - GND
Étape 3: Arduino Mega Code
J'ai préparé les exemples de programmes Arduino suivants disponibles sur mon GitHub:
- VL53L0X_gripper_control
- Voice_VL53L0X_gripper_control
Le premier programme nommé "VL53L0X_gripper_control" accomplit la tâche de préhension automatique d'un objet qui a été détecté par le capteur laser VL53L0X. Avant de compiler et de télécharger l'exemple de programme, assurez-vous d'avoir choisi "Arduino Mega 2560" comme plate-forme cible, comme indiqué ci-dessus (Arduino IDE -> Tools -> Board -> Arduino Mega ou Mega 2560). Le programme Arduino vérifie dans la boucle principale - "void loop()" si la nouvelle lecture du capteur laser est arrivée (fonction readRangeContinuousMillimeters()). Si la distance lue par le capteur "distance_mm" est supérieure à la valeur "THRESHOLD_CLOSING_DISTANCE_FAR" ou inférieure à "THRESHOLD_CLOSING_DISTANCE_NEAR" alors le servo commence à se fermer. Dans d'autres cas, il commence à s'ouvrir. Dans la partie suivante du programme, dans la fonction "digitalRead(gripperOpenButtonPin)", l'état du bouton poussoir est constamment contrôlé et s'il est enfoncé, la pince s'ouvrira malgré sa fermeture en raison de la proximité de l'objet (distance_mm est inférieure à THRESHOLD_CLOSING_DISTANCE_NEAR).
Le deuxième programme "Voice_VL53L0X_gripper_control" vous permet de contrôler la pince à l'aide de commandes vocales. Les commandes vocales sont traitées par l'application BT Voice Control for Arduino de Google Play et envoyées via Bluetooth à Arduino. Le programme Arduino vérifie dans la boucle principale - "void loop()" si la nouvelle commande (caractère) a été envoyée depuis l'application Android via Bluetooth. S'il y a un caractère entrant de la série Bluetooth, le programme lit les données série jusqu'à ce qu'il rencontre la fin de l'instruction vocale "#". Ensuite, il démarre l'exécution de la fonction "void processInput() " et en fonction de la commande vocale, une fonction de contrôle spécifique est appelée.
Étape 4: Test de la préhension automatique
La vidéo de "Step 1" montre des tests de préhension robotique basés sur le programme de la section précédente "Arduino Mega Code". Cette vidéo montre comment il s'ouvre automatiquement lorsque l'objet est proche de lui, puis saisit cet objet s'il est à portée de la pince. Le retour du capteur de distance laser utilisé ici est clairement visible dans la partie suivante de la vidéo lorsque je déplace la bouteille d'avant en arrière, ce qui provoque une réaction rapide et un changement de contrôle de la pince.
Étape 5: Préhension automatique activée par la voix
Dans l'étape suivante du développement de ce projet, j'y ai ajouté le contrôle vocal. Grâce à la commande vocale, je peux contrôler la fermeture, l'ouverture et la vitesse de la pince. La commande vocale dans ce cas est très utile lors de l'ouverture de la pince tenant l'objet. Il remplace le bouton et permet un contrôle aisé de la pince placée sur le robot mobile.
Si vous aimez ce projet, n'oubliez pas de voter et d'écrire dans le commentaire ce que vous aimeriez voir dans le prochain article comme amélioration supplémentaire de ce projet:) Découvrez mes autres projets liés à la robotique, il suffit de visiter:
- Youtube
- Mon site internet
Conseillé:
Robot de téléprésence à taille humaine avec bras de préhension : 5 étapes (avec photos)
Robot de téléprésence de taille humaine avec bras de préhension: MANIFESTOA, mon frère m'a invité à une fête d'Halloween (30 personnes et plus) pendant une pandémie, alors je lui ai dit que j'y assisterais et j'ai conçu avec rage un robot de téléprésence pour causer des ravages à la fête dans mon endroit. Si vous n'êtes pas familier avec ce qu'est un télép
Pot de plante intelligent automatique - (bricolage, imprimé en 3D, Arduino, arrosage automatique, projet): 23 étapes (avec photos)
Pot de plante intelligent automatique - (bricolage, imprimé en 3D, Arduino, arrosage automatique, projet): Bonjour, Parfois, lorsque nous partons de la maison pendant quelques jours ou que nous sommes vraiment occupés, les plantes d'intérieur souffrent (injustement) car elles ne sont pas arrosées quand elles besoin de ça. C'est ma solution. C'est un pot de plante intelligent qui comprend : un réservoir d'eau intégré. Un sens
Commandes AT pour le module Bluetooth (HC-05 avec broche EN et BOUTON) à l'aide de la carte Arduino ! : 5 étapes
Commandes AT pour module Bluetooth (HC-05 avec broche et bouton EN) à l'aide de la carte Arduino ! sur l'envoi de commandes AT au module pour le configurer/modifier (nom, mot de passe, baud ra
Piano à ultrasons Pi avec commandes gestuelles ! : 10 étapes (avec photos)
Piano Pi à ultrasons avec commandes gestuelles ! : Ce projet utilise des capteurs à ultrasons HC-SR04 bon marché comme entrées et génère des notes MIDI qui peuvent être jouées via un synthétiseur sur le Raspberry Pi pour un son de haute qualité. Le projet utilise également une forme de base de contrôle gestuel , où la musica
Comment construire un robot à chenilles à bras de préhension contrôlé via Nrf24l01 Arduino: 3 étapes (avec photos)
Comment construire un robot à chenilles à bras de préhension contrôlé via Nrf24l01 Arduino expliquera comment construire un bras de préhension à trois degrés de liberté installé sur une roue à chenilles entraînée par un module L298N à double moteur à l'aide de MEG