Omet navegació

Motors CC amb l'escut L298. Control tot/res.

Fes el muntatge següent.

4motors L298 Shield in Wemos

Et calen:

  • Portapiles 9V
  • Piles.
  • Targeta L298
  • Targeta Wemos D1 R32
  • 4 Motors CC
  • Cables

El funcionament del L298 és facil. Mentre estiga habilitat EnableA i EnableB ja sigua per que tens una clema en cada pin, o per que amb la targeta actives Enable A i B, els dos motors A i B estan habilitats, les entrades IN1 i IN2 fan anar el motor Horariament o  Anti Horariament respectivament. Si desactiven les dues el motor A para. IN4 i IN3 fan anar el motor Horariament o  Anti Horariament respectivament. Si desactiven les dues el motor B para.

Fixat que les funcions (procediments) que hem creat  ens permeten cridar un conjunt de linies de forma repetida cada vegada que invoquem la funció.

void nom_funció ( ) {

ordres de la funció

}

Després dins de la funció principal void loop ( )  { } inovoquem a aquestes funcions que hem definit. escrivint el seu nom () en una línia de programa.

// Funció Motors A Horaris
void Motor_A_Horari() {
  Serial.println("Escut L298 motor A Horari");
  Serial.println("Activem IN1=26");
  digitalWrite(26, HIGH);
  Serial.println("Desactivem IN2=25");
  digitalWrite(25, LOW);
}


// Funció Motors B Horaris
void Motor_B_Horari() {
  Serial.println("Escut L298 motor B Horari");
  Serial.println("Activem IN4=18");
  digitalWrite(18, HIGH);
  Serial.println("Desactivem IN3=19");
  digitalWrite(19, LOW);
}


// Funció Motors A antiHoraris
void Motor_A_antiHorari() {
  Serial.println("Escut L298 motor A antiHorari");
  Serial.println("Desactivem IN1=26 ");
  digitalWrite(26, LOW);
  Serial.println("Activem IN2=25");
  digitalWrite(25, HIGH);
}


// Funció Motors B antiHoraris
void Motor_B_antiHorari() {
  Serial.println("Escut L298 motor B Horari");
  Serial.println("Desactivem IN4=18");
  digitalWrite(18, LOW);
  Serial.println("Activem IN3=19");
  digitalWrite(19, HIGH);
}


// Funció Atura motors A
void Atura_Motor_A() {
  Serial.println("Escut L298 motor A aturat");
  Serial.println("Desactivem IN1=26");
  digitalWrite(26, LOW);
  Serial.println("Desactivem IN2=25");
  digitalWrite(25, LOW);
}


// Funció Atura motors B
void Atura_Motor_B() {
  Serial.println("Escut L298 motor B aturat");
  Serial.println("Desactivem IN4=18");
  digitalWrite(18, LOW);
  Serial.println("Desactivem IN3=19");
  digitalWrite(19, LOW);
}



void setup() {
  pinMode(25, OUTPUT);// pins exida dels motors connectats en A
  pinMode(26, OUTPUT);// pins exida dels motors connectats en A
  pinMode(18, OUTPUT);// pins exida dels motors connectats en B
  pinMode(19, OUTPUT);// pins exida dels motors connectats en B
  Serial.begin(115200);

}

void loop() {
    Motor_A_Horari();
    delay(5000);
    Motor_A_antiHorari();
    delay(5000);
    Atura_Motor_A();
    delay(5000);
    Motor_B_Horari();
    delay(5000);
    Motor_B_antiHorari();
    delay(5000);
    Atura_Motor_B();

} // Final programa

Creat amb eXeLearning (Finestra nova)