Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Arduino/Android – Contrôle multi-servo BLUETOOTH

Composants et fournitures

Arduino UNO
× 1
Câbles de raccordement (générique)
× 1
Appareil Android
× 1

À propos de ce projet

Bonjour le monde! J'ai fait une application de contrôle d'asservissement 1 hier et j'ai dit que je ferais un contrôle multi, alors voici l'application de contrôle multi ! J'ai également fait un meilleur code Arduino. Suivez l'étape suivante pour le schéma, le code, la liste des pièces et l'application.

Télécharger l'application : GOOGLE PLAY

Contactez-moi si vous voulez le code source !

Étape 1 : liste des pièces

Connectez tout comme dans le schéma, téléchargez le code, téléchargez l'application, connectez Bluetooth après avoir couplé les appareils et cela devrait fonctionner. Assurez-vous de connecter RXD à TX et TXD à RX.

Assurez-vous également de NE PAS connecter le module Bluetooth lors du téléchargement.

Liste des pièces :

  • Arduino Uno, (Utilisez un Mega si vous voulez utiliser plus de 6 Servos !) J'ai utilisé le RobotDyn Uno.
  • Module Bluetooth HC-06, ou tout autre.
  • 6 x servomoteur. (Peut tester avec un à bien sûr )
  • Jeu de cavaliers MM/FF/MF
  • Téléphone Android.

Bonne chance !

Suivez l'étape suivante pour savoir comment changer le nom, le code PIN et le débit en bauds de votre module Bluetooth. (facultatif )

Étape 2 :Comment changer le nom de votre HC-06

De quoi avez-vous besoin ?

  • 1 x programmateur de microcontrôleur USB vers TTL à connecter à votre HC-06

Comment connecter le programmeur ?

  • VCC à VCC
  • GND à GND
  • RXD vers TX
  • TXD vers RX

Commençons :

  • Connectez le programmateur USB TTL au HC-06.
  • Branchez l'USB et ouvrez l'IDE Arduino.
  • Ouvrez le moniteur série.
  • Tapez "AT" sans les guillemets. Vous devriez voir une réponse dans le moniteur série disant "OK".
  • Tapez "AT+NOMxyz". Définit le nom du module sur « xyz » (remplacez xyz par le nom que vous voulez.) la réponse doit être OKsetname.
  • Tapez "AT+PIN1234". Définit la broche sur 1234 (remplacez 1234 par la broche souhaitée), la réponse doit être OKsetPIN. Pour plus d'informations sur la modification du débit en bauds, etc., j'ai inclus un fichier PDF. Bonne chance !
FPO4FLRIN7QTTG9.pdf

Code

  • BLUETOOTH_Servo_Control_Multi_Servo.ino
BLUETOOTH_Servo_Control_Multi_Servo.inoArduino
Code pour contrôler plusieurs servomoteurs.
/*Auteur :Danny van den Brande.Avec ce code, vous pouvez contrôler plusieurs servomoteurs à l'aide d'une application Android.Vous pouvez en ajouter autant que vous le souhaitez jusqu'à ce que vos broches soient épuisées. Vous pouvez ajouter plus de servos dans le code. Si vous voulez la source de l'application, contactez-moi. */#include  Servo myservo1, myservo2, myservo3, myservo4, myservo5, myservo6, myservo7, myservo8, myservo9, myservo10;byte serialA;void setup(){ myservo1.attach(9); monservo2.attach(10) ; monservo3.attach(11); monservo4.attach(3) ; monservo5.attach(5) ; monservo6.attach(6);// monservo7.attach(); remplissez les numéros de broche si vous utilisez plus de 6 servos, je les ai laissés vides// myservo8.attach();// myservo9.attach();// myservo10.attach(); Serial.begin(9600);//changez votre débit en bauds pour celui de vos modules Bluetooth si nécessaire.}void loop(){ if (Serial.available()> 2) {serialA =Serial.read();Serial.println(serialA );} { unsigned int servopos =Serial.read(); unsigned int servopos1 =Serial.read(); unsigned int realservo =(servopos1 *256) + servopos; Serial.println(realservo); if (realservo>=1000 &&realservo <1180){ int servo1 =realservo; servo1 =carte(servo1, 1000,1180,0,180); monservo1.write(servo1) ; Serial.println("servo 1 ON"); retard(10) ; } if (realservo>=2000 &&realservo <2180){ int servo2 =realservo; servo2 =carte(servo2,2000,2180,0,180); monservo2.write(servo2) ; Serial.println("servo 2 activé"); retard(10) ; } if (realservo>=3000 &&realservo <3180){ int servo3 =realservo; servo3 =carte(servo3, 3000, 3180,0,180); monservo3.write(servo3) ; Serial.println("servo 3 activé"); retard(10) ; } if (realservo>=4000 &&realservo <4180){ int servo4 =realservo; servo4 =carte(servo4, 4000, 4180,0,180); monservo4.write(servo4) ; Serial.println("servo 4 activé"); retard(10) ; } if (realservo>=5000 &&realservo <5180){ int servo5 =realservo; servo5 =carte(servo5, 5000, 5180,0,180); monservo5.write(servo5) ; Serial.println("servo 5 activé"); retard(10) ; } if (realservo>=6000 &&realservo <6180){ int servo6 =realservo; servo6 =carte(servo6, 6000, 6180,0,180); monservo6.write(servo6) ; Serial.println("servo 6 activé"); retard(10) ; }// if (realservo>=7000 &&realservo <7180){ //UNCOMMENT si vous utilisez plus de 6 Servos.// int servo7 =realservo;// servo7 =map(servo7, 7000, 7180,0,180);// myservo7 .write(servo7);// Serial.println("servo 7 On");// delay(10);// }//// if (realservo>=8000 &&realservo <8180){// int servo8 =realservo;// servo8 =map(servo8, 8000, 8180,0,180);// myservo8.write(servo8);// Serial.println("servo 8 On");// delay(10);// }/ /// if (realservo>=9000 &&realservo <9180){// int servo8 =realservo;// servo8 =map(servo9, 9000, 9180,0,180);// myservo8.write(servo8);// Serial. println("servo 9 On");// delay(10);// }//// if (realservo>=10000 &&realservo <10180){// int servo10 =realservo;// servo10 =map(servo10, 10000, 10180,0,180);// myservo10.write(servo10);// Serial.println("servo 10 On");// delay(10);// } }}

Schémas


Processus de fabrication

  1. Robot Pi simple
  2. Télécommande universelle utilisant Arduino, 1Sheeld et Android
  3. Centre de contrôle Arduino
  4. Jouet contrôlé par Android utilisant un bouclier de moteur Raspberry
  5. Obstacles pour éviter le robot avec servomoteur
  6. Arduino avec Bluetooth pour contrôler une LED !
  7. Contrôle de l'humidificateur Arduino
  8. Qu'est-ce qu'un servomoteur ?
  9. Qu'est-ce qu'un réducteur de servomoteur ?