Arduino板控制不了马达,马达不动

2018-06-221.4万
AI 快速预览详细 收起
本文解决了Arduino板控制马达不动的问题。通过检查引脚配置和PWM信号,确保马达驱动电路正确连接,从而解决故障。文章提供了详细的代码示例和故障排查步骤,适合初学者和STEM教育场景。
代码:
const int negR=4;
const int posR=5;
const int negL=6;
const int posL=7;
const int pwmR=9;
const int pwmL=10;
void setup()
{
  pinMode(posR,OUTPUT);
  pinMode(negR,OUTPUT);
  pinMode(posL,OUTPUT);
  pinMode(negL,OUTPUT);
  pinMode(pwmR,OUTPUT);
  pinMode(pwmL,OUTPUT);
}
void loop()
{
    forward(190,200);
    delay(2000);
    pause(0,0);
    delay(2000);
    back(190,200);
    delay(2000);
    pause(0,0);
    delay(2000);
}
void forward(byte RmotorSpeed, byte LmotorSpeed)
{
    analogWrite(pwmR,RmotorSpeed);
    analogWrite(pwmL,LmotorSpeed);
    digitalWrite(posR,HIGH);
    digitalWrite(negR,LOW);         
    digitalWrite(posL,LOW);
    digitalWrite(negL,HIGH);   
}  
void back(byte RmotorSpeed, byte LmotorSpeed)
{
    analogWrite(pwmR,RmotorSpeed);
    analogWrite(pwmL,LmotorSpeed);
    digitalWrite(posR,LOW);
    digitalWrite(negR,HIGH);         
    digitalWrite(posL,HIGH);
    digitalWrite(negL,LOW);   
}
void pause(byte RmotorSpeed, byte LmotorSpeed)
{
    analogWrite(pwmR,RmotorSpeed);
    analogWrite(pwmL,LmotorSpeed);
    digitalWrite(posR,LOW);
    digitalWrite(negR,LOW);         
    digitalWrite(posL,LOW);
    digitalWrite(negL,LOW);   
}


TIM图片20180622173139.jpg (102.83 KB, 下载次数: 1521)

实品图

Arduino控制马达不动 · 故障排查与解决方案_image_3.webp

TIM图片20180622173145.jpg (107.89 KB, 下载次数: 1549)

实品图

Arduino控制马达不动 · 故障排查与解决方案_image_6.webp

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(4)
20060606
20060606
供电有问题,arduino不能通过dc口向外供电(但可以用这个口给arduino供电),建议电机外接一个电源(接到l298n的电机电源口),arduino和电机的电源要共地,即l298n的逻辑电源与arduino接到同一个电源。建议你参考一下示例。
张海
张海
l298电源有三个接线柱,有一个是5v,专门给逻辑板供电用的,接到arduino板的vin口,再把gnd接到arduino的gnd口。如果逻辑板有另外供电,那只接gnd到板上就行了
zsz
zsz
电源有问题,你用arduino上的5v连一个升压模块然后连一个L298N
pATAq
pATAq
[md]
老哥你这是怎么供电的,用Arduino 同轴DC接口反向给L298N供电?
* 同轴DC我见是给Arduino供电的,没见过用来输出的,你可能理解错了,可以看下电路图
* 一般L298N供电电压9v以上电机比较有劲
* L298N模块和控制器(这里是Arduino)要共地(GND)
[/md]
- 没有更多了 -