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
|