« Bras de Robot » : différence entre les versions

De Kernel Fablab Lannion
(Page créée avec « [[File:|200px|droite]] == Présentation == Le bras de robot est un petit système simulant un bras pouvant aller dans les 3 directions. Il est piloté par une arduino mi... »)
 
Aucun résumé des modifications
Ligne 33 : Ligne 33 :
== Code ==
== Code ==


<code>
<pre>
#include <Servo.h>  
#include <Servo.h>  
   
   
Ligne 60 : Ligne 60 :
   delay(10);
   delay(10);
}  
}  
</code>
</pre>


== Liens ==
== Liens ==

Version du 7 mars 2016 à 20:28

[[File:|200px|droite]]

Présentation

Le bras de robot est un petit système simulant un bras pouvant aller dans les 3 directions.

Il est piloté par une arduino mini (qu'on alimentera soit par usb soit avec 2 piles 4.5V pour lui donner assez de puissance). L'aspect mouvement est géré par 3 servomoteurs eux même contrôlés par 3 potentiomètres.

C'est un projet qui provient du Wikidébrouillards de l'association Les Petits Débrouillards.

Au Fablab de Lannion il fut construit par les enfants dans le cadre d'un projet d'animation avec Orange Solidaire.

Matériel nécessaire

Pour réaliser le bras, il faut :

  • 3 mini-servo 9g : 13.3€ pour 6
  • 1 arduino mini :
  • 1 breadboard : 3€
  • 3 potentiomètres : 5€ pour 10
  • Piles
  • Des fils (avec broche ou monobrin dénudé)
  • Un support et un pistolet à colles pour maintenir les servomoteurs ensembles.

Montage

File:MontageBrasRobot.png On reliera ensuite les servomoteurs par leur tête de façon à pouvoir aller dans les 3 directions (un par axe).

Pour alimenter avec une pile, on branchera le + de la pile à la broche Vin et le moins à la broche GND.

Sur le 3e servomoteur, on pourra ajouter un crochet pour attraper des objets.

Code

#include <Servo.h> 
 
Servo monServo1;
Servo monServo2;
Servo monServo3;
int val1;
int val2;
int val3;
 
void setup() 
{ 
  monServo1.attach(9);
  monServo2.attach(10);
  monServo3.attach(11);
} 
 
void loop() 
{
  val1 = map(analogRead(0), 0, 1023, 0, 179);
  val2 = map(analogRead(1), 0, 1023, 0, 179);
  val3 = map(analogRead(2), 0, 1023, 0, 179);
  monServo1.write(val1);
  monServo2.write(val2);
  monServo3.write(val3);
  delay(10);
} 

Liens

Évolutions possibles

Réaliser des fichiers pour une impression 3D/un découpage laser des supports et/ou des parties liants les servomoteurs.

Réaliser la même chose avec des servomoteurs 360 degrés.