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:25] – [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 simplifié 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 206: 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.1676042705.txt.gz · Dernière modification : de gerardadmin