Verwendung eines Motortreibers und eines DC-Motors
(EN google-translate)
(PL google-translate)
In diesem Beispiel wird ein DC-Elektromotor in Laufrichtung und Geschwindigkeit vom Arduino-Micro-Board gesteuert.
Bild 0-1: Fritzing-Layout für die Motoransteuerung.
Drei digitale Signale werden an den Motortreiber gegeben:
Arduino oben4 =OutPin D9 ----> L293 Pin 15 Input4 Arduino oben9 =OutPin D4 ----> L293 Pin 10 Input3 Arduino oben10 =OutPin D3 ----> L293 Pin 10 Enable2, PWM
Code 0-1: Signale an den Motortreiber
  | 
  | 
int zaehler = 0;
int xPWM = 0;
void setup() 
{
  // put your setup code here, to run once:
  pinMode(9,OUTPUT);   //Ard. oben4=OutPin D9 ---- L293 Pin 15 Input4
  pinMode(4, OUTPUT);  //Ard. oben9=OutPin D4 ---- L293 Pin 10 Input3
  pinMode(3, OUTPUT);  //Ard. oben10=OutPin D3 ---- L293 Pin 10 Enable2, PWM
  
  pinMode(13, OUTPUT); //Board LED 
  
  //Eine Richtung festlegen und PWM aus:
  digitalWrite(4,HIGH);
  digitalWrite(9,LOW);
  digitalWrite(3,LOW);
  //LED aus  
  digitalWrite(13,LOW);
}
void loop() 
{
    digitalWrite(3,HIGH); //20 Ticks == 0,02 Sekunden entspricht 50Hz
    delay(xPWM);
    digitalWrite(3,LOW);
    delay(20-xPWM);
    
    if(zaehler==0)
    {
        digitalWrite(13,HIGH);
        
        xPWM++;
        xPWM%=20;
    }        
    else if(zaehler==25)
        digitalWrite(13,LOW);
        
    
    
    
    zaehler++;
    zaehler%=50;  //eine Sekunde == 50 PWM-Perioden
}
Code 0-2: Quelltext für die Arduino-IDE
material_motor_PWM1.zip - Programmquelltext und Fritzing-Layout.
Aufgabe
  |