Outline
N20 direct current speed reduction motor: Compared with the ordinary DC motor, it is equipped with gear speed reduction box, which offers lower rotation rate and larger torque, enhancing the use rate of the DC motor in the automation industry.
Specification
Speed Reduction DC Motor
- Electrical specification
- Tech parameters
Development
Equipment
Wire Connection of DC Motor
- Connect a DC motor to (OUT1A,OUT1B) and the other motor to (OUT2A,OUT2B);
- DC motor control pin:
//(D6,D8) controls (1A,1B) motor
#define OUT1A 6
#define OUT1B 8
//(D5,D7) controls (2A,2B) motor
#define OUT2A
#define OUT2B 7
===Preparation
- Setup 1:Connect a motor to the Motor module as the diagram showed above;
- Setup 2:You can install accessories in the motor and the axis according to project needs, and then fix them on other materials.
- Setup 3:Connect the activated battery box with BM module.
- Setup 4:Connect all devices to a computer with a USB cable.
Experiment 1: Connection and disconnection control
6 |
8 |
5 |
7 |
1A |
1B |
2A |
2B |
Function
|
Low |
Low |
Low |
Low |
Off |
Off |
Off |
Off |
Close (Stop habitually)
|
High |
Low |
High |
Low |
High |
Low |
High |
Low |
Rotate clockwise
|
Low |
High |
Low |
High |
Low |
High |
Low |
High |
Rotate counter clockwise
|
High |
High |
High |
High |
Low |
Low |
Low |
Low |
Halt
|
- Open Arduino IDE and copy the following codes to IDE.
#define OUT1A 6
#define OUT1B 8
#define OUT2A 5
#define OUT2B 7
void setup()
{
pinMode(OUT1A, OUTPUT);
pinMode(OUT1B, OUTPUT);
pinMode(OUT2A, OUTPUT);
pinMode(OUT2B, OUTPUT);
}
void loop()
{
head();
delay(2000);
back();
delay(1000);
stop();
delay(500);
}
void head()
{
digitalWrite(OUT1A, HIGH);
digitalWrite(OUT1B, LOW);
digitalWrite(OUT2A, HIGH);
digitalWrite(OUT2B, LOW);
}
void back()
{
digitalWrite(OUT1A, LOW);
digitalWrite(OUT1B, HIGH);
digitalWrite(OUT2A, LOW);
digitalWrite(OUT2B, HIGH);
}
void stop()
{
digitalWrite(OUT1A, LOW);
digitalWrite(OUT1B, LOW);
digitalWrite(OUT2A, LOW);
digitalWrite(OUT2B, LOW);
}
- Select the right port from Tools→Serial Port in Arduino IDE after compiling, then download program.
- After download, you'll see the DC motor rotates forward 2s, reverse 1s and stops for 0.55s.
=Debugging
- Control the rotation of the motor by the " digitalWrite(pin, xx);" function outputting high and low level signals.
Experiment 2: PWM Motor Speed Control
- Open Arduino IDE and copy the following codes to IDE.
//( D6,D8) controls motor (1A,1B)
#define OUT1A 6
#define OUT1B 8
//( D5,D7) controls motor (2A,2B)
#define OUT2A 5
#define OUT2B 7
void setup()
{
pinMode(OUT1A, OUTPUT);
pinMode(OUT1B, OUTPUT);
pinMode(OUT2A, OUTPUT);
pinMode(OUT2B, OUTPUT);
}
void loop()
{
for (int fadeValue = 0; fadeValue <= 255; fadeValue += 5)
//Loop statement. Along with PWM rate increases, you can change brightness level by controlling fadeValue.
{
analogWrite(OUT1A, fadeValue); //Write rate level into the motor
digitalWrite(OUT1B, LOW);
analogWrite(OUT2A, fadeValue);
digitalWrite(OUT2B, LOW);
delay(100); //Delay time of rate. (The unit is ms)
}
for (int fadeValue = 255; fadeValue >= 0; fadeValue -= 5)
// Loop statement. Along with PWM rate decreases, you can change brightness level by controlling fadeValue.
{
digitalWrite(OUT1A, LOW);
analogWrite(OUT1B, fadeValue); // Write rate level into the motor
digitalWrite(OUT2A, LOW);
analogWrite(OUT2B, fadeValue);
delay(100); // Delay time of rate. (The unit is ms)
}
delay(1000);
}
- Select the right port from Tools→Serial Port in Arduino IDE after compiling, then download program.
- Open the serial monitor after download and input angle (0-180) in the serial input box, then click "Send".
- From the result you can see that the speed is increasingly fast to the upmost and then slow download and finally circulates.
Program Debugging
- Adopt "for" function to control cyclic speed change
- Adopt " analogWrite(pin, XX);" function to control speed.
- pin: It has to be PWM control pin, which can be D5,D6,D7,D8 for mCookie-CoreUSB.
- XX: The value range is 0-225. The larger is value is, the quicker the speed becomes. ==Project==
Video
|