欢迎访问 苏州星程科技集团有限公司13375196871 联系我们
苏州星程科技集团有限公司
本站支持信息门户 + 在线商城,可点击入口切换→ 在线商城我要发布
← 物联网技术

LOCAL INFORMATION

树莓派操作案例1-使用python GPIO+TB6612驱动步进电机

2026-09-18 23:074 次阅读信息编号 #16

unavailable_source_assetsArray
发布人:熊翰翮
联系电话:

树莓派操作案例1-使用python GPIO+TB6612驱动步进电机

 

原理图:

 

接口说明

                A控制信号输入------PWMA               VM ------电机驱动电压输入端(4.5V-15V)

                   A电机输入端2 ------AIN2                VCC ------逻辑电平输入端(2.7V-5.5V)

                   A电机输入端1 ------AIN1                GND ------ 接地

正常工作/待机状态控制端------STBY                 AO1 ------- A电机输出端1

                    B电机输入端1------BIN1                AO2 ------ A电机输出端2

                    B电机输入端2------BIN2                BO2 ------ B电机输出端2

            B控制信号输入端------PWMB                BO1 ------ B电机输出端1

                                   接地------GND                GND ------- 接地

 

 该实验的基础是两块并联在一起的驱动模块,所以和单独一个驱动模块有些许差别。

其他关于该驱动模块的介绍详见百度。

不多说,上代码。

import  RPi.GPIO as GPIO
import time

PWMA = 18
AIN1   =  22
AIN2   =  27

PWMB = 23
BIN1   = 25
BIN2  =  24

#该驱动模块调速区间为[0-100]
#前进 def t_up(speed,t_time): L_Motor.ChangeDutyCycle(speed) GPIO.output(AIN2,False)#AIN2 GPIO.output(AIN1,True) #AIN1 R_Motor.ChangeDutyCycle(speed) GPIO.output(BIN2,False)#BIN2 GPIO.output(BIN1,True) #BIN1 time.sleep(t_time) #停止 def t_stop(t_time): L_Motor.ChangeDutyCycle(0) GPIO.output(AIN2,False)#AIN2 GPIO.output(AIN1,False) #AIN1 R_Motor.ChangeDutyCycle(0) GPIO.output(BIN2,False)#BIN2 GPIO.output(BIN1,False) #BIN1 time.sleep(t_time) #后退 def t_down(speed,t_time): L_Motor.ChangeDutyCycle(speed) GPIO.output(AIN2,True)#AIN2 GPIO.output(AIN1,False) #AIN1 R_Motor.ChangeDutyCycle(speed) GPIO.output(BIN2,True)#BIN2 GPIO.output(BIN1,False) #BIN1 time.sleep(t_time) #左转 def t_left(speed,t_time): L_Motor.ChangeDutyCycle(speed) GPIO.output(AIN2,True)#AIN2 GPIO.output(AIN1,False) #AIN1 R_Motor.ChangeDutyCycle(speed) GPIO.output(BIN2,False)#BIN2 GPIO.output(BIN1,True) #BIN1 time.sleep(t_time) #右转 def t_right(speed,t_time): L_Motor.ChangeDutyCycle(speed) GPIO.output(AIN2,False)#AIN2 GPIO.output(AIN1,True) #AIN1 R_Motor.ChangeDutyCycle(speed) GPIO.output(BIN2,True)#BIN2 GPIO.output(BIN1,False) #BIN1 time.sleep(t_time) GPIO.setwarnings(False) GPIO.setmode(GPIO.BCM) GPIO.setup(AIN2,GPIO.OUT) GPIO.setup(AIN1,GPIO.OUT) GPIO.setup(PWMA,GPIO.OUT) GPIO.setup(BIN1,GPIO.OUT) GPIO.setup(BIN2,GPIO.OUT) GPIO.setup(PWMB,GPIO.OUT) L_Motor= GPIO.PWM(PWMA,100) L_Motor.start(0) R_Motor = GPIO.PWM(PWMB,100) R_Motor.start(0) try: while True: t_up(50,3) t_down(50,3) t_left(50,3) t_right(50,3) t_stop(3) except KeyboardInterrupt: GPIO.cleanup()

 

需要注意的是由于该电机模块的峰值电流能达到2A/3A,如果发现代码运行一段时间出现了电机停止运行,那么很有可能是电压不够导致了PWM复位。

 

发布人:熊翰翮

发布人暂未提供联系电话举报此信息

平台审核不替代对信息真实性、权属及服务能力的核实。交易前请核对主体与合同条款,有疑问可向平台反馈。

MORE INFORMATION

同类信息

发布我的信息 →

树莓派驱动28BYJ-48步进电机

2026-09-06 发布人:廖志行 联系电话: 树莓派驱动28BYJ-48步进电机 ​伺服电机(Servo Motor)​: 伺服电机确实是一个包含电机(直流、交流等)、传感器(如霍尔编码器或光电编码器)和控制器(如单片机)的系统。由于有传感器反馈(闭环系统),它可以精确知道电机转了多少圈,目前到什么角度,即使关机重启也能知道当前角度。 伺服电机通过编码器

2026-09-07

根据光线强弱,自动开关窗帘

2026-09-07 发布人:冯子真 联系电话: 根据光线强弱,自动开关窗帘 情境: 希望能根据光线强弱,自动开关窗帘,例如天亮了,在一定亮度下,把窗帘打开,方便我们的生活 材料: 1、microbit控制板 2、robotbit扩展板 3、光线传感器 4、28BYJ-48 步进电机或舵机 6、连线 原理: 步进电机是将电脉冲信号转变为角位移,可以精确的控制

2026-10-15

基于单片机智能窗帘控制系统设计

2026-09-19 发布人:史玉成 联系电话: 基于单片机智能窗帘控制系统设计 功能: 通过光敏电阻检测当前光强,通过按键设置光强范围来自动控制窗帘开关,同时可以通过按键手动控制窗帘开关,包含的电路有显示电路、按键电路、窗帘电机控制电路、传感器电路、单片机电路等。 ?123456789101112131415161718192021222324252627

2026-08-31

树莓派操作案例1-使用python GPIO+TB6612驱动步进电机

2026-09-24 发布人:熊翰翮 联系电话: 树莓派操作案例1-使用python GPIO+TB6612驱动步进电机 原理图: 接口说明 A控制信号输入------PWMA VM ------电机驱动电压输入端(4.5V-15V) A电机输入端2 ------AIN2 VCC ------逻辑电平输入端(2.7V-5.5V) A电机输入端1 ------

2026-09-18