Bonjour,
J'ai un module bluetooth HC-06, et je voudrais contrôler un moteur à courant continu et un moteur pas à pas avec. Par exemple, quand l'application sur mon téléphone envoie une valeur, par exemple 23(décimale), je veux pouvoir reconnaître cette valeur et tant que cette valeur est envoyée par l'application, le moteur à courant continu. Ceci est une exemple, je n'arrive pas à communiquer entre mon téléphone et mon moniteur série...
Si quelqu'un pouvait m'aider, il me sauverait la vie je dois le faire pour un projet noté au bac.
Voici quand même mon code pour contrôler les moteurs, j'utilise actuellement des boutons poussoirs, mais dans la finalité je veux remplacer ces conditions par les valeurs envoyées par l'application :
#include <Stepper.h>
#define STEPS 400
Stepper stepper(STEPS, 4, 5, 6, 7);
const int bouton_sens_horaire = 13 ;
const int bouton_sens_anti_horaire = 50 ;
const int button_droite = 8 ;
const int button_gauche = 12 ;
const int sens_moteur_droite_dc = 2 ;
const int sens_moteur_gauche_dc = 3 ;
const int vitesse_moteur_dc = 9 ;
int etatbouton_sens_horaire = 0;
int etatbouton_sens_anti_horaire = 0;
int etatbutton_droite = 0 ;
int etatbutton_gauche = 0 ;
void setup() {
Serial.begin(38400);
pinMode(button_droite,INPUT_PULLUP);
pinMode(button_gauche,INPUT_PULLUP);
pinMode(bouton_sens_horaire,INPUT_PULLUP);
pinMode(bouton_sens_anti_horaire,INPUT_PULLUP);
pinMode(sens_moteur_droite_dc,OUTPUT);
pinMode(sens_moteur_gauche_dc,OUTPUT);
pinMode(vitesse_moteur_dc,OUTPUT);
digitalWrite(vitesse_moteur_dc,LOW);
digitalWrite(sens_moteur_droite_dc,LOW);
digitalWrite(sens_moteur_gauche_dc,LOW);
stepper.setSpeed(15);
}
void loop() {
etatbutton_droite = digitalRead(button_droite);
etatbutton_gauche = digitalRead(button_gauche);
etatbouton_sens_horaire = digitalRead(bouton_sens_horaire);
etatbouton_sens_anti_horaire = digitalRead(bouton_sens_anti_horaire);
while (etatbutton_droite == LOW and etatbouton_sens_horaire == HIGH and etatbouton_sens_anti_horaire == HIGH){
digitalWrite(sens_moteur_droite_dc,HIGH);
digitalWrite(sens_moteur_gauche_dc,LOW);
digitalWrite(vitesse_moteur_dc,HIGH);
etatbutton_droite = digitalRead(button_droite);
etatbouton_sens_horaire = digitalRead(bouton_sens_horaire);
etatbouton_sens_anti_horaire = digitalRead(bouton_sens_anti_horaire);
}
while (etatbutton_droite == LOW and etatbouton_sens_horaire == LOW){
digitalWrite(sens_moteur_droite_dc,HIGH);
digitalWrite(sens_moteur_gauche_dc,LOW);
digitalWrite(vitesse_moteur_dc,HIGH);
stepper.step(1);
etatbutton_droite = digitalRead(button_droite);
etatbouton_sens_horaire = digitalRead(bouton_sens_horaire);
}
while (etatbutton_droite == LOW and etatbouton_sens_anti_horaire == LOW){
digitalWrite(sens_moteur_droite_dc,HIGH);
digitalWrite(sens_moteur_gauche_dc,LOW);
digitalWrite(vitesse_moteur_dc,HIGH);
stepper.step(-1);
etatbutton_droite = digitalRead(button_droite);
etatbouton_sens_anti_horaire = digitalRead(bouton_sens_anti_horaire);
}
while (etatbutton_gauche == LOW and etatbouton_sens_horaire == HIGH and etatbouton_sens_anti_horaire == HIGH){
digitalWrite(sens_moteur_droite_dc,LOW);
digitalWrite(sens_moteur_gauche_dc,HIGH);
digitalWrite(vitesse_moteur_dc,HIGH);
etatbutton_gauche = digitalRead(button_gauche);
etatbouton_sens_horaire = digitalRead(bouton_sens_horaire);
etatbouton_sens_anti_horaire = digitalRead(bouton_sens_anti_horaire);
}
while (etatbutton_gauche == LOW and etatbouton_sens_horaire == LOW){
digitalWrite(sens_moteur_droite_dc,LOW);
digitalWrite(sens_moteur_gauche_dc,HIGH);
digitalWrite(vitesse_moteur_dc,HIGH);
stepper.step(1);
etatbutton_gauche = digitalRead(button_gauche);
etatbouton_sens_horaire = digitalRead(bouton_sens_horaire);
}
while (etatbutton_gauche == LOW and etatbouton_sens_anti_horaire == LOW){
digitalWrite(sens_moteur_droite_dc,LOW);
digitalWrite(sens_moteur_gauche_dc,HIGH);
digitalWrite(vitesse_moteur_dc,HIGH);
stepper.step(-1);
etatbutton_gauche = digitalRead(button_gauche);
etatbouton_sens_anti_horaire = digitalRead(bouton_sens_anti_horaire);
}
while (etatbouton_sens_horaire == LOW and etatbutton_droite == HIGH and etatbutton_gauche == HIGH){
digitalWrite(sens_moteur_droite_dc,LOW);
digitalWrite(sens_moteur_gauche_dc,LOW);
digitalWrite(vitesse_moteur_dc,LOW);
stepper.step(1);
etatbutton_droite = digitalRead(button_droite);
etatbutton_gauche = digitalRead(button_gauche);
etatbouton_sens_horaire = digitalRead(bouton_sens_horaire);
}
while (etatbouton_sens_anti_horaire == LOW and etatbutton_droite == HIGH and etatbutton_gauche == HIGH){
digitalWrite(sens_moteur_droite_dc,LOW);
digitalWrite(sens_moteur_gauche_dc,LOW);
digitalWrite(vitesse_moteur_dc,LOW);
stepper.step(-1);
etatbutton_droite = digitalRead(button_droite);
etatbutton_gauche = digitalRead(button_gauche);
etatbouton_sens_anti_horaire = digitalRead(bouton_sens_anti_horaire);
}
digitalWrite(sens_moteur_droite_dc,LOW);
digitalWrite(sens_moteur_gauche_dc,LOW);
digitalWrite(vitesse_moteur_dc,LOW);
}