Difference between revisions of "Dual Motor Steuerung 9A"
From Digipool-Wiki
(→Arduino Code) |
|||
Line 41: | Line 41: | ||
== Arduino Code == | == Arduino Code == | ||
− | < | + | <source lang="java"> |
// Dual Motor Steuerung 9A | // Dual Motor Steuerung 9A | ||
− | |||
int _1inA = 11; | int _1inA = 11; | ||
int _1inB = 10; | int _1inB = 10; | ||
− | int _1PWM = 9; | + | int _1PWM = 9; // Motor speed 0 - 255 |
int x = 2000; // interval in miliseconds | int x = 2000; // interval in miliseconds | ||
− | void setup() | + | void setup(){ |
− | { | + | |
// sets the digital pin as output | // sets the digital pin as output | ||
pinMode(_1inA, OUTPUT); | pinMode(_1inA, OUTPUT); | ||
Line 59: | Line 57: | ||
} | } | ||
− | void loop() | + | void loop(){ |
− | { | + | |
// run motor slowly forward | // run motor slowly forward | ||
digitalWrite(_1inA, HIGH); | digitalWrite(_1inA, HIGH); | ||
Line 67: | Line 64: | ||
delay(x); // waits for a second | delay(x); // waits for a second | ||
+ | // run motor full speed backward | ||
digitalWrite(_1inA, LOW); | digitalWrite(_1inA, LOW); | ||
digitalWrite(_1inB, HIGH); | digitalWrite(_1inB, HIGH); | ||
Line 72: | Line 70: | ||
delay(x); // waits for a second | delay(x); // waits for a second | ||
} | } | ||
− | </ | + | </source> |
<br> | <br> |
Revision as of 19:52, 5 July 2013
Hardware
Setup
Rechte Seite:
- Motor 1
- Motor 2
- Stromversorgung für Motoren
Linke Seite:
- GND: Masse
- 5Vin: 5V vom Arduino
- Vin: %
- 1Diag/EN: %
- 1PWM Steuert die Motorgeschwindigkeit - PWM Pin des Arduino
- 1InA und 1InB: Schalten den Ausgang jeder Halbbrücke auf Masse oder Vin. Damit Steuerst Du die Drehrichtung des Motors und die Bremse.
1InA 1InB:
- 1 1 Motor gebremst beide Ausgänge auf Vin
- 1 0 Motor dreht im Uhrzeigersinn
- 0 1 Motor dreht im Gegenuhrzeigersinn
- 0 0 Motor gebremst, beide Ausgänge auf Masse
Alle Eingänge mit einer 2 statt der 1 vorne gelten für das 2. TreiberIC auf der Platine.
Arduino Code
<source lang="java"> // Dual Motor Steuerung 9A
int _1inA = 11; int _1inB = 10; int _1PWM = 9; // Motor speed 0 - 255
int x = 2000; // interval in miliseconds
void setup(){
// sets the digital pin as output pinMode(_1inA, OUTPUT); pinMode(_1inB, OUTPUT); pinMode(_1PWM, OUTPUT);
}
void loop(){
// run motor slowly forward digitalWrite(_1inA, HIGH); digitalWrite(_1inB, LOW); analogWrite(_1PWM, 50); delay(x); // waits for a second // run motor full speed backward digitalWrite(_1inA, LOW); digitalWrite(_1inB, HIGH); analogWrite(_1PWM, 255); delay(x); // waits for a second
} </source>