Outils pour utilisateurs

Outils du site


start:arduino:emg:grove

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
start:arduino:emg:grove [2023/02/10 16:23] – [code simplifier pour test valeurs de sortie] gerardadminstart:arduino:emg:grove [2023/02/13 08:58] (Version actuelle) – [Commande Servo-Moteur avec un EMG] gerardadmin
Ligne 177: Ligne 177:
  
  
-===== code simplifier pour test valeurs de sortie =====+===== Code simplifié pour test valeurs de sortie =====
  
 <code c test_Emg_simplifie_001.ino> <code c test_Emg_simplifie_001.ino>
Ligne 193: Ligne 193:
 Nous voulons observer les changements dans le signal de sortie analogique du module lorsque le muscle du bras se dilate et se contracte. Pour ce faire, ouvrez le traceur série et voyez le signal de sortie. Nous voulons observer les changements dans le signal de sortie analogique du module lorsque le muscle du bras se dilate et se contracte. Pour ce faire, ouvrez le traceur série et voyez le signal de sortie.
  
-L'image ci-dessous montre les changements de sortie.+L'image ci-dessous montre les valeurs de sortie sous forme graphique . 
 + 
 +{{ :start:arduino:emg:emg-result.jpg?direct&600 |}}
  
  
Ligne 204: Ligne 206:
  
 {{ :start:arduino:emg:capture_d_ecran_du_2023-02-10_16-12-01.png?direct&600 |}} {{ :start:arduino:emg:capture_d_ecran_du_2023-02-10_16-12-01.png?direct&600 |}}
 +
 +===== Utilisation du capteur EMG avec un servo moteur =====
 +
 +=== Raccordement Arduino et servo ===
 +
 +{{ :start:arduino:emg:capture_d_ecran_du_2023-02-13_08-37-59.png?direct&600 |}}
 +
 +=== Code arduino Servo-moteur ===
 +
 +<code c arduino-servo.ino>
 +/* Servo motor with Arduino example code. Position and sweep. More info: https://www.makerguides.com/ */
 +// Include the servo library:
 +#include <Servo.h>
 +// Create a new servo object:
 +Servo myservo;
 +// Define the servo pin:
 +#define servoPin 9
 +// Create a variable to store the servo position:
 +int angle = 0;
 +void setup() {
 + // Attach the Servo variable to a pin:
 + myservo.attach(servoPin);
 +}
 +void loop() {
 + // Tell the servo to go to a particular angle:
 + myservo.write(90);
 +delay(1000);
 + myservo.write(180);
 +delay(1000);
 + myservo.write(0);
 +delay(1000);
 + // Sweep from 0 to 180 degrees:
 +for (angle = 0; angle <= 180; angle += 1) {
 + myservo.write(angle);
 +delay(15);
 +}
 + // And back from 180 to 0 degrees:
 +for (angle = 180; angle >= 0; angle -= 1) {
 + myservo.write(angle);
 +delay(30);
 +}
 +delay(1000);
 +}
 +</code>
 +
 +==== Commande Servo-Moteur avec un EMG ====
 +
 +
 +<code c Cmdservo-emg001.ino>
 +#include "Servo.h"
 +
 +int PinEmg = A0;
 +int PinServo = 9;
 +
 +Servo servo; // création de l'objet "servo"
 +
 +void setup() {
 +   servo.attach(PinServo); // attache le servo au pin spécifié
 +   pinMode(PinEmg, INPUT);
 +   Serial.begin(9600); // ouvre le port série
 +}
 +
 +void loop() {
 +   int val = analogRead(PinEmg); // lit la valeur actuelle du capteur EMG
 +   // mise à l'échelle pour renvoyer la position entre 0 et 180°
 +   val = map(val, 0, 1023, 0, 180);
 +  
 +   Serial.println(val);
 +   Serial.println();
 +   
 +   servo.write(val);
 +   delay(100); // attend 100 ms
 +}
 +</code>
 ===== EMG Grove Robotshop===== ===== EMG Grove Robotshop=====
  
/home/chanteri/www/fablab37110/data/attic/start/arduino/emg/grove.1676042612.txt.gz · Dernière modification : de gerardadmin