本帖最后由 abcxx41483 于 2015-3-5 09:54 编辑
卡酷试用装提供的电机是普通的直流减速电机,不带位置反馈,只有两个直流电机线圈出线。今天用5&6以及9&10两组带有PWM输出功能的数字I/O来驱动两个直流减速电机,写了一个简单的代码,向前运动5s,再向后运动5s。
发现了两个问题:
1.在数字I/O 5V的驱动电平下电机的动力比较差,转速较慢,容易堵转
2.同样的驱动电平,两个电机的转速相差比较大
我想如果想增强驱动能力还是要外加一些驱动
电路。补充:今天又仔细看了下板子,有一颗L293D驱动芯片,应该是用来驱动直流电机的,之前的使用方法不对,应该用AO1, AO2以及 BO1,BO2来驱动直流电机,后边我研究下具体的驱动,再来更新。
- //***************** START *****************//
- // PWM pin 5&6 to drive motor 1
- // PWM pin 9&10 to drive motor 2
- int Mot1A = 5;
- int Mot1B = 6;
- int Mot2A = 9;
- int Mot2B = 10;
- void setup()
- {
- // put your setup code here, to run once:
- // Congfigure Motor1
- pinMode(Mot1A, OUTPUT);
- pinMode(Mot1B, OUTPUT);
- // Congfigure Motor2
- pinMode(Mot2A, OUTPUT);
- pinMode(Mot2B, OUTPUT);
- }
- void loop()
- {
- // Run forward 5 seconds
- analogWrite(Mot1A, 1023);
- analogWrite(Mot1B, 0);
- analogWrite(Mot2A, 1023);
- analogWrite(Mot2B, 0);
- delay(5000);
-
- // Run backward 5 seconds
- analogWrite(Mot1A, 0);
- analogWrite(Mot1B, 1023);
- analogWrite(Mot2A, 0);
- analogWrite(Mot2B, 1023);
- delay(5000);
- }
- //************ End of file *************************//
另外附上我网上找到的一个nano v3.0的电气原理图供参考: