- Raspberry Pi电机驱动器HAT所需的组件
- L293D电机驱动器IC
- Raspberry Pi电机驱动器HAT的电路图
- 树莓派电机驱动器HAT的PCB制作
- 从PCBWay订购PCB
- 组装
- Raspberry Pi安装
- Raspberry Pi电动机驱动程序代码说明
- 测试Raspberry Pi电机驱动器HAT
Raspberry Pi HAT是Raspberry Pi的附加板,具有与Pi相同的尺寸。它可以直接安装在Raspberry Pi的顶部,不需要任何进一步的连接。市场上有很多Raspberry Pi HAT。在本教程中,我们将构建一个Raspberry Pi电机驱动器HAT来驱动DC和步进电机。该电机驱动器HAT包括一个L293D电机驱动器IC,16 * 2 LCD显示模块,四个按钮以及带有3.3V稳压器的SIM800模块的额外引脚。这款Raspberry Pi HAT在构建机器人项目时会派上用场。
在这里,我们已经使用PCBWay为该项目提供PCB板。在本文的以下各节中,我们介绍了为Raspberry pi电动机驱动器HAT设计,订购和组装PCB板的完整过程。在之前的项目中,我们还为16x2 LCD和Raspberry Pi LoRa HAT制作了Raspberry Pi Hat。
Raspberry Pi电机驱动器HAT所需的组件
- 树莓派
- L293D集成电路
- 4个按钮
- 贴片电阻(1×10K,12×1K)
- 1×10K电位器
- 4个SMD LED
- LM317稳压器
- 2×螺丝端子
- 16 * 2 LCD模块
L293D电机驱动器IC
L293D是一种流行的16引脚电机驱动器IC。顾名思义,它用于控制单极,双极步进电动机,DC电动机,甚至是伺服电动机。单个L293D IC可以同时驱动两个直流电动机。同样,这两个电动机的速度和方向可以独立控制。该IC带有两个电源输入引脚,即“ Vcc1”和“ Vcc2”。Vcc1用于为应为5V的内部逻辑电路供电,而Vcc2引脚用于为4.5V至36V的电动机供电。
L293D规格:
- 电机电压Vcc2(Vs):4.5V至36V
- 电机最大峰值电流:1.2A
- 最大连续电动机电流:600mA
- Vcc1(VSS)的电源电压:4.5V至7V
- 过渡时间:300ns(5V和24V时)
- 自动热关机
Raspberry Pi电机驱动器HAT的电路图
下图显示了具有Raspberry Pi的L293D电机驱动器的完整示意图。原理图是使用EasyEDA绘制的。
该HAT包括L293D电机驱动器IC,16 * 2 LCD显示模块和四个按钮。我们还提供了带有3.3V稳压器的SIM800模块引脚,该稳压器使用LM317可变稳压器设计用于将来的项目。Raspberry Pi电机驱动器HAT将直接位于Raspberry Pi的顶部,从而更易于使用Raspberry Pi控制机器人。
树莓派电机驱动器HAT的PCB制作
完成原理图后,我们可以继续进行PCB布局。您可以使用所选的任何PCB软件来设计PCB。我们已经使用EasyEDA为该项目制造PCB。您可以通过从“层”窗口中选择层来查看PCB的任何层(顶,底,顶丝,底丝等)。除此之外,还提供了PCB在制造后的外观的3D模型视图。以下是Pi Motor Driver HAT PCB顶层和底层的3D模型视图。
上述电路的PCB布局也可以从下面给出的链接作为Gerber下载:
- Raspberry Pi电动机驱动程序HAT的Gerber文件
从PCBWay订购PCB
完成设计后,可以继续订购PCB:
第1步: 进入https://www.pcbway.com/,如果这是您第一次,请注册。然后,在“ PCB原型”选项卡中,输入PCB的尺寸,层数和所需的PCB数。
第2步: 点击“立即报价”按钮继续。您将进入一个页面,在其中设置一些其他参数,例如板类型,层,PCB材料,厚度等。默认情况下会选择大多数参数,但是如果您选择任何特定参数,则可以在此处选择它们。
第3步: 最后一步是上传Gerber文件并继续付款。为了确保过程顺利进行,PCBWAY会在进行付款之前先验证您的Gerber文件是否有效。这样,您可以确保您的PCB易于制造,并且能够按承诺完成。
组装
几天后,我们收到了整齐的PCB板,PCB质量一如既往。电路板的顶层和底层如下所示:
确保轨道和脚印正确后。我着手组装PCB。此处的图像显示了完全焊接的板的外观。
Raspberry Pi安装
在对Raspberry Pi进行编程之前,我们必须安装所需的库。为此,首先,使用以下命令更新Raspberry Pi操作系统:
Sudo apt-get更新 Sudo apt-get升级
现在,为LCD模块安装Adafruit_CharLCD库。该库适用于Adafruit LCD板,但也可以与其他品牌的LCD板一起使用。
sudo pip3安装Adafruit-CharLCD
Raspberry Pi电动机驱动程序代码说明
在此项目中,我们正在对Raspberry Pi进行编程,以每隔两秒钟的间隔同时驱动正向,反向,左和右方向的两个直流电动机。电动机的方向将显示在LCD上。完整的代码在文档末尾给出。在这里,我们正在解释代码的一些重要部分。
与往常一样,通过导入所有必需的库来启动代码。RPi.GPIO模块用于使用Python访问GPIO引脚。模块时间用于将程序暂停预定的时间。
导入RPi.GPIO为GPIO导入时间导入板导入Adafruit_CharLCD为LCD
之后,为L293D电机驱动器IC和LCD显示器分配GPIO引脚。
lcd_rs = 0 lcd_en = 5 lcd_d4 = 6 Motor1A = 4 Motor1B = 17 Motor1E = 12
现在,将6个电机引脚设置为输出引脚。接下来的四个是输出引脚,前两个引脚用于控制右马达,后两个引脚用于左马达。接下来的两个引脚是左右电机的启用引脚。
GPIO.setup(电机1A,GPIO.OUT)GPIO.setup(电机1B,GPIO.OUT)GPIO.setup(电机1E,GPIO.OUT)GPIO.setup(电机2A,GPIO.OUT)GPIO.setup(Motor2B,GPIO.OUT) GPIO.setup(Motor2E,GPIO.OUT)
在while循环内,以两秒钟的间隔同时在前进,后退,左和右方向上移动两个直流电动机。
GPIO.output(Motor1A,0)GPIO.output(Motor1B,0)GPIO.output(Motor2A,1)GPIO.output(Motor2B,0)lcd.message('Left')print(“ Left”)sleep(2) #Forward GPIO.output(Motor1A,1)GPIO.output(Motor1B,0)GPIO.output(Motor2A,1)GPIO.output(Motor2B,0)lcd.message('Forward')print(“ Forward”)…… ………………………………
测试Raspberry Pi电机驱动器HAT
完成PCB的组装后,将电动机驱动器HAT安装在Raspberry Pi上,然后启动代码。如果一切正常,连接到Raspberry Pi的DC电动机将每两秒钟同时向左,向前,向右和反向移动,并且电动机方向将显示在LCD显示屏上。
这样便可以构建自己的L293D Raspberry Pi电动机驱动器HAT。该项目的完整代码和工作视频如下。希望您喜欢这个项目,并发现构建自己的项目很有趣。如果您有任何疑问,请留在下面的评论部分。