Table des matières:

Bras contrôlé par smartphone bon marché (+ position d'enregistrement d'option): 5 étapes
Bras contrôlé par smartphone bon marché (+ position d'enregistrement d'option): 5 étapes

Vidéo: Bras contrôlé par smartphone bon marché (+ position d'enregistrement d'option): 5 étapes

Vidéo: Bras contrôlé par smartphone bon marché (+ position d'enregistrement d'option): 5 étapes
Vidéo: Le BOUTON CACHÉ dans les téléphones SAMSUNG 2024, Juillet
Anonim
Bras contrôlé par smartphone bon marché (+ position d'enregistrement d'option)
Bras contrôlé par smartphone bon marché (+ position d'enregistrement d'option)
Bras contrôlé par smartphone bon marché (+ position d'enregistrement d'option)
Bras contrôlé par smartphone bon marché (+ position d'enregistrement d'option)

Le projet

Conduisez un bras robotisé contrôlé par un smartphone à l'aide d'un périphérique Bluetooth.

Mode bonus: nous avons un bouton qui permet à l'arduino de se souvenir d'une position. Chaque fois que nous voulons, nous pouvons aller à cette position enregistrée avec un autre bouton.

FR

LE PROJET

Commander un bras robotisé construit à partir de carton et de servo-moteurs.

Le bras sera constitué d'une pince qui doit pouvoir prendre et poser un objet.

On commandera le bras par smartphone qui communiquera en bluetooth à l'arduino.

Mode bonus: Un bouton nous permettra de sauvegarder une position du soutien-gorge. Lorsque l'on le souhaite, nous pourrons retourner à la position sauvegardée.

Étape 1: Matériaux dont vous avez besoin

Matériaux dont vous avez besoin
Matériaux dont vous avez besoin

FR

1 Arduino UNO

4 servomoteurs SG90 (9g, couple: 1kg.cm)

1 Moteurs pas à pas 5V 24BYJ48 (couple: 39mN.m)

1 driver pour les moteurs pas à pas DRV8825

1 alimentation 9V + 6V pour les moteurs

1 module Bluetooth HC-06

Pistolet à colle, carton, fil, élastique

FR

1 module Arduino Uno

4 servo-moteurs SG90 9g (couple: 1kg.cm)

1 moteur pas-à-pas 5V (39mN.m) 24BYJ48

1 pilote moteur pap DRV8825

1 alimentation 9V pour l'arduino et 6V pour les moteurs

1 module Bluetooth HC-06 Pistolet à colle, carton, fils connection, élastique

Étape 2: CONFIGURATION

METTRE EN PLACE
METTRE EN PLACE

FR

ETAPE 1: Module Bluetooth Le module bluetooth (HC-06) est connecté de la manière suivante:

Rx Tx

Tx Rx

TERRE TERRE

VCC +5V

Il va permettre d'établir la communication entre l'Arduino et le smartphone, via la voie Série (9600).

ETAPE 2: Le moteur pas à pas 24BYJ48

Nous avons connecté le moteur bipolaire pas à pas 24BYJ48 à son pilote associé contenant le circuit ULN2003. Il suffit de connecter les entrées INx (x = 1, 2, 3, 4) aux sorties digitales de l'arduino. On alimente le driver en +5V.

Pour coder, nous utiliserons la bibliothèque Stepper.h, ce qui nous permet de commander facilement le moteur en lui donnant la vitesse: nom.setSpeed(vitesse), ainsi que le pas désiré: nom.step(+ou- pas)

ETAPE 3: Les servo-moteurs SG90

Les servos moteurs se commandent facilement. Il suffit de brancher le fil rouge au +5V, le noir à la masse et le fil restant à une sortie PWM de l'arduino. On choisit ensuite l'angle du servo via la PWM (0 à 255).

Nous utiliserons la bibliothèque servo.h pour commander facilement le servo. Tout d'abord, on initialera le servo par son nom: Servo nom_servo, puis on lui rattachera la commande PWM: nom_servo.attach(pin choisi). Enfin, sur commandera l'angle voulu: nom_servo.write(angle de 0 à 180).

ETAPE 4: Fabriquer le support Le support a été fabriqué en carton. Après avoir réalisé la base sur laquelle va tourner le bras et ou sera mis le moteur pas à pas, nous avons collé les servos moteurs à du carton pour donner la forme finale. La pince à été créée à partir de bâton de glace et fonctionne avec un élastique

Étape 3: Le code

Le code
Le code

// 2017-02-24 - Program C - Commande de plusieurs servo moteurs dynamiques par smartphone, via bluetooth - App inventor 2 utilisé - Carte Arduino (ici UNO), module Bluetooth// Ce program a pour objectif de: //// Le moteur (fils 1 2 3 4) est branché sur les sorties 8 12 10 11 de l'Arduino (et sur GND, +V) Stepper small_stepper(STEPS, 8, 10, 12, 11); //************************DECLARATIONS****************************** * représentant de mot; // mot envoyé du module Arduino au smartphone int cmd = 3; // variable commande du servo moteur (troisième fil (orange, jaune)) Servo moteur; //on définit notre servomoteur int cmd1 = 5; Servomoteur1; Servomoteur2;Servomoteur3; int cmd2=9; int cmd3=6; int angle2, angle3; angle int; int angle1; pas d'int; entier r, r1, r2, r3; en cours d'enregistrement; mot w; // variable envoyée du smartphone au module Arduino int angle; // angle de rotation (0 à 180) //************************SETUP**************** ****************** void setup() { moteur.attach(cmd); // on s'appuie sur l'objet au pin de commande moteur1.attach(cmd1); moteur2.attache(cmd2); moteur3.attach(cmd3); moteur.write(12); moteur1.write(23); Serial.begin(9600); // permettra de communiquer au module Bluetooth } //************************BOUCLE****************** ******************* void loop() {recevoir(); // on va recevoir une information du smartphone, la variable w if (w==206)reproduire();// va nous permettre de reproduire la position enregistrée if(w==205)enregistrer=1;// va nous permettre d'enregistrer la valeur des servos moteurs lorsque l'on apuiera sur un bouton if (w==204)enregistrer=0; for (int k=100;k<151;k++) { if (w == k) { angle2 = map(k, 100, 150, 0, 180); moteur2.write(angle2); si (enregistrer==1)r2=angle2; } } pour (int j=151;j<201;j++) { if (w == j) { angle3 = map(j, 151, 200, 0, 150); moteur3.write(angle3); si (enregistrer==1) r3=angle3; } } pour (int i=0;i<34;i++) { if (w == i) { angle = map(i, 0, 34, 0, 70); moteur.write(angle); si (enregistrer==1)r=angle; } } pour (int l=34;l<=66;l++) { if (w == l) { angle1 = map(l, 34, 66, 90, 0); moteur1.write(angle1); si (enregistrer==1)r1=angle1; } } pour (int m=67;m<=99;m++) { if (w == m) { if (w86){ small_stepper.setSpeed(80);small_stepper.step(-5);} else small_stepper.step (0); } } } //******************************FONCTIONS****************** ******************** void reproduire()// fonction permettant de reproduire la position sauvegardée { moteur2.write(r2);moteur.write(r);moteur1. écriture(r1);moteur3.écriture(r3); } void recevoir() { // fonction permettant de recevoir l'information du smartphone if (Serial.available()) { w = Serial.read(); Serial.flush(); }} - Connecter le Servo moteur + module bluetooth au module arduino // - Envoyer un mot/phrase/nombre au smartphone // - Recevoir une commande via smartphone // Programme réalisé par Techno_Fabrik // ********* ***********BIBLIOTHEQUES****************************** #include #include// bibliothèque permettant d' utiliser les commandes pour servomoteurs facilement #include

Étape 4: APP pour smartphone (réalisée sur APP Inventor 2)

Application pour smartphone (réalisée sur APP Inventor 2)
Application pour smartphone (réalisée sur APP Inventor 2)

Étape 5: Réalisation vidéo

Merci d'avoir regardé.!

Pour en savoir plus, consultez notre site Web:

Ou suivez-nous sur Google +:

Merci !

Conseillé: