Bras robotique Arduino imprimé en 3D
Composants et fournitures
| × | 1 | ||||
| × | 4 | ||||
| × | 1 |
Outils et machines nécessaires
| ||||
|
Applications et services en ligne
|
À propos de ce projet
Ce projet utilise 4pcs. servomoteurs SSG 90 bon marché alimentés par la carte Arduino. Vous pouvez télécharger des fichiers.stl pour l'impression 3D à partir du lien ci-dessous, ou directement sur le Web Thingiverse,
https://www.thingverse.com/thing:1015238
où vous pouvez trouver des instructions plus détaillées pour la fabrication de ce bras robotique.
Comme mentionné précédemment, les servomoteurs sont pilotés à partir de la carte Arduino. Pour cela j'ai aussi écrit un code simple pour que chaque servo soit contrôlé par un potentiomètre adapté. Après un petit exercice, la manipulation à l'aide de potentiomètres devient très facile et intéressante comme on peut le voir sur la vidéo.
À l'avenir, j'essaierai d'étendre le code avec la possibilité de capturer et d'effectuer automatiquement certains mouvements de servomoteurs qui obtiendraient un robot industriel complet.
Les schémas peuvent être vus dans l'image ci-dessous.
Code
- code
codeArduino
#includeServo myservo ; // créer un objet servo pour contrôler un servoServo myservo1;Servo myservo2;Servo myservo3;int potpin =0;// broche analogique utilisée pour connecter le potentiomètreint potpin1 =1;int potpin2 =2;int potpin3 =3;int val; // variable pour lire la valeur du pinint analogique val1;int val2;int val3;void setup() { myservo.attach(8); // attache le servo sur la broche 8 à l'objet servo myservo.attach(9); monservo.attach(10) ; myservo.attach(11);}boucle vide() { val =analogRead(potpin); // lit la valeur du potentiomètre (valeur entre 0 et 1023) val =map(val, 0, 1023, 0, 180); // redimensionne-le pour l'utiliser avec le servo (valeur entre 0 et 180) myservo.write(val); // définit la position du servo en fonction de la valeur mise à l'échelle delay(15); // attend que le servo y arrive val1 =analogRead(potpin1); val1 =carte(val1, 0, 1023, 0, 180); monservo1.write(val1) ; retard (15); val2 =analogRead(potpin2) ; val2 =carte(val2, 0, 1023, 0, 180); monservo2.write(val2) ; retard (15); val3 =analogRead(potpin3) ; val2 =carte(val3, 0, 1023, 0, 180); monservo3.write(val3) ; retard (15); }
Pièces et boîtiers personnalisés
eezybotarm_uVD6bjbxQi.zipSchémas
Processus de fabrication