TP1 : MICROmoTEURs
ESSAIE1 : COMMANDER UN SERVO MOTEUR AVEC UN CAPTEUR
ULTRASON (barrière levant)
1. Commander le matériel :
MATERIELS NOMBRE
Arduino uno 1
Servo moteur 1
Capteur ultrason 1
Led 2
Fils 13
Breadboard 1
Résistance(220ohm) 2
AUTOMATIQUE 1
2. Réaliser le câblage : (FAIT AU PRATIQUE)
3. Saisir le programme :
#include<Servo.h>
const int trig = 11;
const int echo = 10;
const int ledVert = 3;
const int ledRouge = 2;
Servo barriere;
long duration, distance;
void setup(){
[Link](9600);
pinMode(trig, OUTPUT);
pinMode(echo, INPUT);
pinMode(ledVert, OUTPUT);
pinMode(ledRouge, OUTPUT);
[Link](5);
void loop(){
AUTOMATIQUE 2
digitalWrite(trig, LOW);
delay(2);
digitalWrite(trig, HIGH);
delay(10);
digitalWrite(trig, LOW);
duration = pulseIn(echo, HIGH);
distance = (duration*0.034)/2;
[Link]("Distance:");
[Link](distance);
[Link]("cm");
if(distance<10){
[Link](90);
digitalWrite(ledVert, HIGH);
digitalWrite(ledRouge, LOW);
[Link]("Barriere LEVER");
delay(1000);
}else{
[Link](0);
digitalWrite(ledVert, LOW);
digitalWrite(ledRouge, HIGH);
delay(150);
4. Texter le programme(VERIFIER)
AUTOMATIQUE 3
ESSAIE2 : MOTEUR PAS A PAS( Sens horaire et antihoraire)
1. Commander le matériel :
MATERIELS NOMBRE
Arduino uno 1
Moteur pas à pas 1
Fils 6
2. Réaliser le câblage : (FAIT AU PRATIQUE)
3. Saisir le programme :
#include <Stepper.h>
const int stepsPerRevolution = 200; // Nombre de pas par révolution
Stepper myStepper(stepsPerRevolution, 8, 9, 10, 11);
void setup() {
AUTOMATIQUE 4
[Link](9600);
[Link](60); // Vitesse du moteur en tours/minute
}
void loop() {
// Rotation dans le sens horaire
for (int angle = 0; angle <= 360; angle += 10) {
int steps = angle * stepsPerRevolution / 360;
[Link](steps);
[Link]("Angle: ");
[Link](angle);
[Link](" deg");
delay(500);
}
// Rotation dans le sens antihoraire
for (int angle = 360; angle >= 0; angle -= 10) {
int steps = angle * stepsPerRevolution / 360;
[Link](-steps);
[Link]("Angle: ");
[Link](angle);
[Link](" deg");
delay(500);
}
}
4. Texter le programme(VERIFIER)
AUTOMATIQUE 5
ESSAIE3 : Commande d’un Servo moteur avec un potentiomètre
1. Commander le matériel.
MATERIELS NOMBRE
Arduino uno 1
Servo moteur 1
Fils 8
Breadboard 1
Potentiomètre 1
2. Réaliser le cablage : (FAIT AU PRATIQUE)
3. Saisir le programme :
#include<Servo.h>
Servo myservo;
int potpin = 0;
int val;
void setup(){
[Link](9600);
[Link](7);
AUTOMATIQUE 6
}
void loop(){
val = analogRead(potpin);
val = map(val, 0, 1023, 0, 180);
[Link](val);
[Link]("Val = ");
[Link](val );
delay(100);
4. Texter le programme(VERIFIER)
AUTOMATIQUE 7
ESSAIE4 : Capteur ultrason (distance)
1. Commander le matériel :
MATERIELS NOMBRE
Arduino uno 1
Capteur ultrason 1
Fils 6
Breadboard 1
Led 1
Résistance(220ohm) 1
2. Réaliser le câblage : (FAIT AU PRATIQUE)
int trigpin=12;
int echopin=13;
long duree;
float distance;
const int Led= 10;
void setup() {
// put your setup code here, to run once:
pinMode(trigpin,OUTPUT);
pinMode(echopin,INPUT);
pinMode(Led, OUTPUT);
[Link](9600);
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(trigpin,LOW);
delayMicroseconds(10);
digitalWrite(trigpin,HIGH);
delayMicroseconds(10);
AUTOMATIQUE 8
digitalWrite(trigpin,LOW);
duree=pulseIn(echopin,HIGH);
distance=duree*0.034/2;
delay(25);
if (distance < 50) {
digitalWrite(Led, HIGH);
} else {
digitalWrite(Led, LOW);
[Link](distance);
[Link]("cm");
3. Texter le programme(VERIFIER)
AUTOMATIQUE 9