用户工具

站点工具


ocrobot:modules:l298p

L298P 电机驱动板

介绍

L298P电机驱动板介绍 OCROBOT L298P基于arduino的大功率电动机驱动扩展盾,使用完整的光电电气隔离设计,上扩展盾与下所有光耦合隔离主控板,电源部分分别独立的电源,两路电机驱动,安全可靠,抗干扰能力强。

参数

极限输入电压:24V

极限电流:2A

可靠工作电压(无辅助散热):12V

可靠工作电流(无辅助散热):1A

完整的隔离方案,信号采用光耦隔离器件隔离,驱动芯片的电源采用5V 1:1隔离电源,彻底与arduino电气上保持独立,避免干扰的产生

图片

相关介绍

功能 电机A 电机B
方向 D12 D13
速度(PWM) D3 D11
制动(不启用电机) D9 D8

参考以上的管脚定义功能介绍,我们就可以准确方便的控制电机了。。首先要将使能端管脚低电平,使电机可以使用,然后确定方向管脚的高低电平,确认方向,最后pwm口控制电机转速全速使用digitalWrite()语句, 其他速度使用analogWrite()进行设置。

示例代码

A通道电机全速正反转

/*
 作者:迷你强
 时间:2013年8月31日
 IDE版本号:1.0.4
 发布地址:www.geek-workshop.com
 作用:电机驱动板演示程序,让A路电机全速正转与反转
*/
void setup()
{
  pinMode(12,OUTPUT);
  pinMode(3,OUTPUT);
  pinMode(9,OUTPUT);     //启用电机A的三个管脚,全部设置为输出状态
}
 
void loop()
{
  digitalWrite(9, LOW);       //松开电机A的制动
  digitalWrite(3, HIGH);      //采用全功率输出
  digitalWrite(12, HIGH);     //设置方向为正向
  delay(1000);                 //运行1秒
  digitalWrite(9, HIGH);     //电机停止运行
  delay(1000);               //维持1秒钟
  digitalWrite(9, LOW);       //松开电机A的制动
  digitalWrite(3, HIGH);     //采用全功率输出
  digitalWrite(12, LOW);     //设置方向为反向
  delay(1000);                //运行1秒
}

B通道电机全速正反转

/*
 作者:迷你强
 时间:2011年8月11日
 IDE版本号:1.0.4
 发布地址:www.geek-workshop.com
 作用:电机驱动板演示程序,让A路电机全速正转与反转
*/
void setup()
{
  pinMode(13,OUTPUT);
  pinMode(11,OUTPUT);
  pinMode(8,OUTPUT);     //启用电机B的三个管脚,全部设置为输出状态
}
 
void loop()
{
  digitalWrite(8, LOW);       //松开电机B的制动
  digitalWrite(11, HIGH);      //采用全功率输出
  digitalWrite(13, HIGH);     //设置方向为正向
  delay(1000);                 //运行1秒
  digitalWrite(8, HIGH);     //电机停止运行
  delay(1000);               //维持1秒钟
  digitalWrite(8, LOW);       //松开电机B的制动
  digitalWrite(11, HIGH);     //采用全功率输出
  digitalWrite(13, LOW);     //设置方向为反向
  delay(1000);                //运行1秒
}

A通道电机半速正反转:

/*
 作者:迷你强
 时间:2013年8月31日
 IDE版本号:1.0.4
 发布地址:www.geek-workshop.com
 作用:电机驱动板演示程序,让A路电机半功率正转与反转,如果发现电机无法转动,请适当调高输出功率 范围0-255
*/
void setup()
{
  pinMode(12,OUTPUT);
  pinMode(3,OUTPUT);
  pinMode(9,OUTPUT);     //启用电机A的三个管脚,全部设置为输出状态
}
 
void loop()
{
  digitalWrite(9, LOW);       //松开电机A的制动
  analogWrite(3, 128);      //50%功率输出
  digitalWrite(12, HIGH);     //设置方向为正向
  delay(1000);                 //运行1秒
  digitalWrite(9, HIGH);     //电机停止运行
  delay(1000);               //维持1秒钟
  digitalWrite(9, LOW);       //松开电机A的制动
  analogWrite(3, 128);     //50%功率输出
  digitalWrite(12, LOW);     //设置方向为反向
  delay(1000);                //运行1秒
}

B通道电机半速正反转:

/*
 作者:迷你强
 时间:2011年8月11日
 IDE版本号:1.0.4
 发布地址:www.geek-workshop.com
 作用:电机驱动板演示程序,让B路电机半功率正转与反转,如果发现电机无法转动,请适当调高输出功率 范围0-255
*/
void setup()
{
  pinMode(13,OUTPUT);
  pinMode(11,OUTPUT);
  pinMode(8,OUTPUT);     //启用电机B的三个管脚,全部设置为输出状态
}
 
void loop()
{
  digitalWrite(8, LOW);       //松开电机B的制动
  analogWrite(11, 128);      //50%功率输出
  digitalWrite(13, HIGH);     //设置方向为正向
  delay(1000);                 //运行1秒
  digitalWrite(8, HIGH);     //电机停止运行
  delay(1000);               //维持1秒钟
  digitalWrite(8, LOW);       //松开电机B的制动
  analogWrite(11, 128);     //50%功率输出
  digitalWrite(13, LOW);     //设置方向为反向
  delay(1000);                //运行1秒
}
ocrobot/modules/l298p.txt · 最后更改: 2017/10/04 06:52 (外部编辑)