直流电机与8051微控制器的接口
在这个项目中,我们将学习L293D和L298N电机驱动器,以及在L293D和L298N的帮助下将直流电动机与8051微控制器连接。
当我们谈及控制机器人时,首先想到的是控制直流电动机。将直流电动机与微控制器连接是机器人应用中非常重要的概念。通过将直流电动机与微控制器连接,我们可以做很多事情,比如控制电动机的方向,控制电动机的速度。这篇文章描述了如何使用AT89C51控制器(或任何8051微控制器的变体)来控制直流电动机。
电路原理
微控制器引脚的最大输出电流在5V下是15mA。但是大多数直流电动机的功率要求是微控制器所不能承受的,甚至电动机产生的反电动势也可能损坏微控制器。
因此,直接将直流电动机连接到控制器上是不可取的。因此,我们在直流电机和微控制器之间使用电机驱动电路。
在这里,我们使用L293D和L298N电机驱动器IC来驱动直流电机。使用这些IC,我们可以同时驱动两个直流电动机。对于L293D电机驱动器,电机电源在4.5到36V之间变化,它提供的最大电流为600mA。对于L298N来说,电机电源最高为46V,可提供3A的电流。
关于L293D电机驱动器的简要说明
L293D是一个四重H桥电机驱动器,顾名思义,它用于驱动直流电机。这个IC的工作原理是基于H桥的概念。H桥是一个允许任何方向的电压来控制电机方向的电路。
L293D有4个输入引脚。电机方向取决于应用在这些引脚的逻辑输入。EN1和EN2必须是高电平才能驱动两个直流电动机。
L293D电路
L293D电路
IN1=0和IN2=0 -> 电机1空转
IN1=0和IN2=1 -> 电机1反时钟方向
IN1=1和IN2=0 --> 电机1的时钟方向
IN1=1和IN2=1 -> 电机1空转
IN3=0 和 IN4=0 --> 电机 2 空转
IN3=0和IN4=1 -> 电机2反时钟方向
IN3=1和IN4=0 --> 电机2的时钟方向
IN3=1和IN4=1 -> 电机2空转
关于L298N电机驱动器的简要说明
L298N电机驱动模块是目前比较常用的驱动IC。L298N的额定电流和电压高于L293D电机驱动器。
关于L298N电机驱动模块的更多信息,请参考《关于L298N电机驱动器的简要说明》。
使用L298N电机驱动模块引脚控制Arduino直流电机
直流电动机与8051单片机和L293D连接的电路图
所需组件
AT89C51 (8051微控制器)
8051编程器
编程电缆
12V直流电池或适配器
L293D电机驱动器
直流电动机
电解电容 - 10uF
2个陶瓷电容 - 33pF
10k电阻(1/4瓦) - 4个
按钮 - 3
连接导线。
了解基于PWM的直流电动机速度控制电路如何使用微控制器工作
电路设计
上述电路图中的主要部件是at89c51微控制器和电机驱动器。在这里,电机驱动器的输入引脚IN1,IN2分别连接到P3.0和P3.1,以控制电机的方向。直流电机连接到L293D的输出端。EN1引脚连接到5V直流电以驱动电机。
开关被连接到微控制器的P2.0和P2.1的下拉配置中。第一个开关使电机按顺时针方向旋转,第二个开关使电机按逆时针方向旋转。电机驱动器的第8和第16个引脚连接到+5V电源。
算法
宣布P2.0和P2.1为输入,P3.0和P3.1为输出。
现在检查第一个按钮是否被按下。如果按下了,则向P3.0发送逻辑1。
接下来检查第二个按钮是否被按下。如果按下了,则向P3.1发送逻辑1,否则向端口3发送0。
直流电动机与8051单片机和L298N连接的电路图
直流电动机与8051单片机和L293D连接的电路图
所需元件
AT89C51 (8051微控制器)
8051编程器
编程电缆
12V直流电池或适配器
L298N马达驱动模块
12V直流电动机
电解电容 - 10µF
2个陶瓷电容 - 33pF
10KΩ 电阻器 (1/4瓦)
1KΩ 电阻器(1/4瓦) - 3个
8个1KΩ电阻包
按钮 - 4
连接导线。
电路设计
与上述电路类似,L298N电机驱动器的IN1和IN2连接到微控制器的0端口P0.0和P0.1引脚。电机驱动模块的OUT1和OUT2端连接一个12V的直流电机。
为了控制电机的旋转方向,我将使用三个按钮,分别连接到端口0的P0.5、P0.6和P0.7。
算法
声明P0.5和P0.6为输入,P0.0和P0.1为输出。
现在检查第一个按钮是否被按下。如果按下了,则向P0.0发送逻辑1,向P0.1发送逻辑0。这将使马达向前进方向旋转。
接下来检查第二个按钮是否被按下。如果按下,则向P0.1发送逻辑1,向P0.0发送逻辑0,使电机反向转动。
如何操作?
将程序刻录到8051单片机上。
现在按照电路图的要求进行连接。
在给出连接时,确保没有从电池到控制器的直接电源连接。
打开电路板的电源,现在电机处于静止状态。
按下第一个按钮,你可以观察到电机将沿顺时针方向旋转。
按下第二个按钮,现在电机按逆时针方向旋转。
关闭电路板的电源。
使用L298N将直流电动机与8051单片机连接起来
应用
这个概念在机器人中被用来控制机器人的方向。
用来控制直流电动机的速度。
在我们需要驱动高电压电机的应用中使用。
加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW
或用微信扫描左侧二维码