构建Raspberry Pi电机驱动器HAT的教程分享_第1页
构建Raspberry Pi电机驱动器HAT的教程分享_第2页
构建Raspberry Pi电机驱动器HAT的教程分享_第3页
构建Raspberry Pi电机驱动器HAT的教程分享_第4页
构建Raspberry Pi电机驱动器HAT的教程分享_第5页
已阅读5页,还剩5页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

构建RaspberryPi电机驱动器HAT的教程分享RaspberryPiHAT是RaspberryPi的附加板,尺寸与Pi相同。它可以直接安装在RaspberryPi的顶部,不需要任何进一步的连接。市场上有许多RaspberryPiHAT。在本教程中,我们将构建一个RaspberryPi电机驱动器HAT来驱动直流和步进电机。此电机驱动器HAT包含一个L293D电机驱动器IC、16*2LCD显示模块、四个按钮和用于SIM800模块的额外引脚和一个3.3V稳压器。这个RaspberryPiHAT将在构建机器人项目时派上用场。RaspberryPi电机驱动器HAT所需的组件树莓派L293D集成电路4个按钮贴片电阻(1×10K、12×1K)1×10K电位器4×SMDLEDLM317稳压器2×螺丝端子16*2液晶模组L293D电机驱动ICL293D是一种流行的16引脚电机驱动器IC。顾名思义,它用于控制单极、双极步进电机、直流电机,甚至伺服电机。单个L293DIC可以同时驱动两个直流电机。此外,这两个电机的速度和方向可以独立控制。该IC带有两个电源输入引脚,即“Vcc1”和“Vcc2”。Vcc1用于为内部逻辑电路供电,应为5V,Vcc2引脚用于为电机供电,可为4.5V至36V。L293D规格:电机电压Vcc2(Vs):4.5V至36V最大峰值电机电流:1.2A最大持续电机电流:600mAVcc1(VSS)的电源电压:4.5V至7V转换时间:300ns(在5V和24V时)自动热关断可用RaspberryPi电机驱动器HAT的电路图下图显示了带有RaspberryPi的L293D电机驱动器的完整原理图。原理图是使用EasyEDA绘制的。该HAT由L293D电机驱动IC、16*2LCD显示模块和四个按钮组成。我们还为带有3.3V稳压器的SIM800模块提供了引脚,该稳压器使用LM317可变稳压器设计用于未来的项目。RaspberryPi电机驱动器HAT将直接安装在RaspberryPi顶部,从而更容易使用RaspberryPi控制机器人。为RaspberryPi电机驱动器HAT制造PCB原理图完成后,我们可以继续布置PCB。您可以使用您选择的任何PCB软件来设计PCB。我们已经使用EasyEDA为这个项目制造PCB。您可以通过从“层”窗口中选择层来查看PCB的任何层(Top、Bottom、Topsilk、bottomsilk等)。除此之外,还提供了PCB的3D模型视图,了解它在制造后的外观。下面是PiMotorDriverHATPCB顶层和底层的3D模型视图。组装RaspberryPi电机驱动器HATPCB几天后,我们收到了整齐包装的PCB,PCB质量一如既往地好。板子的顶层和底层如下图所示:在确保轨道和脚印是正确的之后。我继续组装PCB。此处的图像显示了完全焊接的电路板的外观。树莓派设置在对RaspberryPi进行编程之前,我们必须安装所需的库。为此,首先,使用以下命令更新RaspberryPiOS:

sudoapt-get更新sudoapt-get升级

现在为LCD模块安装Adafruit_CharLCD库。该库适用于AdafruitLCD板,但也适用于其他品牌的LCD板。

sudopip3安装Adafruit-CharLCD

树莓派电机驱动代码说明在这个项目中,我们正在对RaspberryPi进行编程,以在两秒的时间间隔内同时驱动正向、反向、向左和向右方向的两个直流电机。电机的方向将显示在LCD上。完整的代码在文档末尾给出。在这里,我们将解释代码的一些重要部分。像往常一样,通过导入所有必需的库来启动代码。RPi.GPIO模块用于使用Python访问GPIO引脚。模块时间用于将程序暂停一段预定义的时间。

导入RPi.GPIO作为GPIO进口时间进口板导入Adafruit_CharLCD作为LCD

之后,为L293D电机驱动器IC和LCD显示器分配GPIO引脚。

液晶显示器=0液晶显示器=5lcd_d4=6电机1A=4电机1B=17电机1E=12

现在,将6个电机引脚设置为输出引脚。接下来的四个是输出引脚,其中前两个用于控制右侧电机,接下来的两个用于控制左侧电机。接下来的两个引脚是左右电机的启用引脚。

GPIO.setup(Motor1A,GPIO.OUT)GPIO.setup(Motor1B,GPIO.OUT)GPIO.setup(Motor1E,GPIO.OUT)GPIO.setup(Motor2A,GPIO.OUT)GPIO.setup(Motor2B,GPIO.OUT)GPIO.setup(Motor2E,GPIO.OUT)

在while循环内,以两秒的间隔同时向前、向后、向左和向右移动两个直流电机。

GPIO.输出(电机1A,0)GPIO.输出(电机1B,0)GPIO.输出(电机2A,1)GPIO.输出(Motor2B,0)lcd.message('左')打印(“左”)睡觉(2)#向前GPIO.输出(电机1A,1)GPIO.输出(电机1B,0)GPIO.输出(电机2A,1)GPIO.输出(Motor2B,0)lcd.message('转发')打印(“转发”)…………

测试RaspberryPi电机驱动器HAT完成PCB组装后,将电机驱动器HAT安装在RaspberryPi上,然后启动代码。如果一切正常,连接到RaspberryPi的直流电机将每两秒同时向左、前、右和反向移动,电机方向将显示在LCD显示屏上。导入RPi.GPIO作为GPIO

从时间导入睡眠

进口板

导入Adafruit_CharLCD作为LCD

#树莓派引脚设置

液晶显示器=0

液晶显示器=5

lcd_d4=6

lcd_d5=19

lcd_d6=26

液晶显示器=21

液晶背光=2

#定义16x2LCD的LCD列和行大小。

lcd_columns=16

lcd_rows=2

lcd=LCD.Adafruit_CharLCD(lcd_rs,lcd_en,lcd_d4,lcd_d5,lcd_d6,lcd_d7,lcd_columns,lcd_rows,lcd_backlight)

#电机驱动器输入引脚

电机1A=4

电机1B=17

电机1E=12

电机2A=27

电机2B=22

电机2E=13

GPIO.setwarnings(假)

GPIO.setmode(GPIO.BCM)

GPIO.setup(Motor1A,GPIO.OUT)

GPIO.setup(Motor1B,GPIO.OUT)

GPIO.setup(Motor1E,GPIO.OUT)

GPIO.setup(Motor2A,GPIO.OUT)

GPIO.setup(Motor2B,GPIO.OUT)

GPIO.setup(Motor2E,GPIO.OUT)

GPIO.setup(14,GPIO.IN,pull_up_down=GPIO.PUD_UP)

GPIO.输出(电机1E,1)

GPIO.输出(Motor2E,1)

而真:

input_state=GPIO.input(14)

打印(输入状态)

如果input_state==False:

#剩下

GPIO.输出(电机1A,0)

GPIO.输出(电机1B,0)

GPIO.输出(电机2A,1)

GPIO.输出(Motor2B,0)

lcd.clear()

lcd.set_cursor(6,0)

lcd.message('左')

打印(“左”)

睡觉(2)

#向前

GPIO.输出(电机1A,1)

GPIO.输出(电机1B,0)

GPIO.输出(电机2A,1)

GPIO.输出(Motor2B,0)

lcd.clear()

lcd.set_cursor(4,0)

lcd.message('转发')

打印(“转发”)

睡觉(2)

#正确的

GPIO.输出(电机1A,1)

GPIO.输出(电机1B,0)

GPIO.输出(Motor2A,0)

GPIO.输出(Motor2B,0)

lcd.clear()

lcd.set_cursor(5,0)

lcd.message('对')

打印(“右”)

睡觉(2)

#撤销

GPIO.输出(电机1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论