话说前面的几节课,学生学了好长时间用arduino UNO控制小灯,红绿灯,然后说,“老师,老是叫我们整这些个小灯,这不像学机器人啊!”我说,“你没看少林和尚天天在练扫地吗?也没练武啊,可最后不成了武林高手吗?知道为什么吗?从简单开始!”不过,今天我们要来学用arduino UNO来驱动马达了。 ????首先来认识一下马达,马达又叫电机。可以分为很多种类,常见的有直流电机、步进电机、舵机。最简单的就是直流电机了,接上电源就转动,改变接电源的极性,电机就向相反的方向旋转。直流减速电机(齿轮减速电机)是在普通直
流电机的基础上,加上配套齿轮减速箱。
??? 电机有几个参数:
???? 1、工作电压:驱动电机推荐使用的电压,不能太高,太高电机会烧坏;
?????2、工作电流:电机工作电流越大,输出功率越大;
?????3、转速和转矩:齿轮减速箱可以提供较低的转速和较大的力矩。
?
?
?
? ?? ??
接下来认识一下马达驱动板。这里,我们使用一款集成电路L298N的马
达驱动板来进行实验。请注意:arduino UNO不能提供大电流输出,前面的LED发光管属于小电流元件,所以可以直接接arduino UNO的数字输出口,而电机属于大电流设备,无法用Arduino引脚直接控制。所以要通过马达驱动板来控制电机的转动。下图为实验用到的马达驱动板,上面各主要元件和引脚的作用有作了
简单的说明。
????????
?
?下图为arduino UNO和马达驱动板和直流电机的连接图,分为几个部分:
?1、电源供电部分,本电路连接图可以只用7V直流电源,除供给马达驱动板的电机电源外,还可以利用“电源切换开关”来控制,通过马达驱动板上的降压电路提供5V电源给arduino UNO和马达驱动板的逻辑电源使用。(arduino
UNO和马达驱动板的逻辑电源也可以另外使用5V直流电源供电。) 2、信号控制线:从arduino UNO的数字口选两个(如8、9)连接到
马达控制板的IN1和IN2。
3、电机连接线,用连接线把OUT1、OUT2连接至直流电机的两个
接线头。
4、注意:在编程的时候,7V直流电源不能通电,只有在程序
下载完毕后,才能加上7V直流电源。
?
?
?
连接好电路后,可以开始编写程序来控制电机的转动了。参看如下表,以M1马达为例,在IN1和IN2输
出不同信号,可以实现电机的正转和反转。
? ? ?
?
?(一)先编写一个简单的程序,让马达转动起来,如下图:
?程序说明:
1、13脚输出高电平是让13脚所连接的LED亮起来,以确实信号有输
出。
2、本程序中IN1和IN2所连接的数字端口是8、12脚。 3、以此为参照,可以编程序让马达正转5秒,再反转5秒,
(二)接下来编写一个复杂一点的程序:
这是一个调速程序,在一个时间周期内,让马达转动20毫秒,然后停止50毫秒,反复运行,实现让马达减速的功能。这也就是所谓的PWM方式。PWM的内容材料是源自网上的文章;