python控制步进电机驱动器_树莓派操作案例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 ------- 接地
该实验的基础是两块并联在一起的驱动模块,所以和单独一个驱动模块有些许差别。
其他关于该驱动模块的介绍详见百度。
不多说,上代码。
importRPi.GPIO as GPIOimporttime
PWMA= 18AIN1= 22AIN2= 27PWMB= 23BIN1= 25BIN2= 24
#该驱动模块调速区间为[0-100]
#前进
deft_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)
#停止deft_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)
#后退deft_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)
#左转deft_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)
#右转deft_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:whileTrue:
t_up(50,3)
t_down(50,3)
t_left(50,3)
t_right(50,3)
t_stop(3)exceptKeyboardInterrupt:
GPIO.cleanup()
需要注意的是由于该电机模块的峰值电流能达到2A/3A,如果发现代码运行一段时间出现了电机停止运行,那么很有可能是电压不够导致了PWM复位。
代码参考:http://bildr.org/2012/04/tb6612fng-arduino/
python控制步进电机驱动器_树莓派操作案例1-使用python GPIO+TB6612驱动步进电机相关推荐
- python控制步进电机驱动器_树莓派通过GPIO控制步进电机(python)
步进电机的驱动程序一样是让我费了好大力气才使他正常工作,在代码上走了不少弯路 树莓派不建议直接使用舵机,虽然舵机方便,而且仅需要一根信号线,不过需要舒服pwm信号,而新版的b+板子已经没有了物理的pw ...
- python手机号码正确编程_【实战案例】用python批量生成真实的手机号码
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理.1目 标 场 景 平时在工作过程中,偶尔会需要大量的 手机号码,去测试一些具体 ...
- python控制苹果手机流量_配置ubunto 流量使用限制 python 实现简单 http server
很多ubunto 都有流量限制,使用流量.如每天使用200M ,超过了就要提示信息 原理,在本机 开一个 http 服务, 显示错误信息,哪流量使用完以后,使用 iptables 将 流量转发到 本机 ...
- python播放视频 命令_【趣味案例】一行Python命令实现视频、音频倍速
最近看了一部悬疑爱情电视剧 <想见你>,看过的朋友估计都已经被伍佰的一首<last dance>洗了脑,相当上头. 由于我是二倍速观看的视频,里面播放的歌曲也是二倍速.脱离开视 ...
- python 控制有线网卡_用python写一些网络操作
展开全部 python写文件 代码如下 复制代32313133353236313431303231363533e4b893e5b19e31333337383339码 object_id_list=[1 ...
- python创建sqlite3数据库_树莓派使用 Python + SQLite 建立温度数据库
相比 MySQL 而言,SQLite 更为轻便.易于维护和部署.本文使用Python向SQLite数据库中插入树莓派温度数据,SQLite数据库中包含一张只包含三个字段的记录表--参数名称,时间和温度 ...
- 树莓派是python的应用领域吗_树莓派为什么采用python语言为主要开发语言?
回复内容: 他老爸想让更多小孩学会编程,去用电脑实现自己有趣的想法.本来打算只让这个机器跑Python(是只跑Python,像学习机一样的东西.并没有想过在上面弄一个完整的linux).但是后来动真格 ...
- python 股票图表_k线图分析法_【趣味案例】用Python绘制K线图,一眼看清股市状况...
本文介绍关于[趣味案例]用Python绘制K线图,一眼看清股市状况及神一般的裸k交易法,精髓就这三步,一目了然!精髓就这三步,一目了然!(附图解析)的相关内容. [趣味案例]用Python绘制K线图, ...
- python语音播报天气预报_树莓派之天气预报语音播报
目录 树莓派之天气预报语音播报 方案选定 项目基调 需求分析 解决方案 具体实施 step1天气信息 安装ilang软件 json解析和文字组合 定时任务 树莓派之天气预报语音播报 前几天跟同事在聊家 ...
最新文章
- KubeSphere安装Mysql5.7
- 同是程序员,为什么别人可以事半功倍?
- hdu4081 最小树+DFS或者次小树的变形
- pdo mysql 建库_一帖让PHP小白彻底了解PDO操作数据库的方法
- 第三十八讲:tapestry Ajax 关联下拉选框(select)组件
- JVM 调优(学习篇)
- 2014广州赛区比赛总结
- iOS:(接口适配器3)--iPhone适应不同型号 6/6plus 前
- lcd背光节能matlab代码,【技术分享】LCD背光驱动节电技术-LABC/CABC
- 3.3 其他因素3.3.1 Fork子进程
- linux系统在物流公司的z作用,【项目案例】基于RFID的智能物流仓储系统
- k8s api文档 调用heapster metrics
- 个人免签约支付程序,支付宝免签约,码支付,微信免签约支付源码,paypai
- Browserslist: caniuse-lite is outdated
- 联通校园网不能开热点问题解决办法
- 硬盘坏了!!!!!!
- 分享6个优质的黑科技APP,简约良心还免费
- 关于求字体识别不出来
- ps多边形套索工具按过delete以后点下一个点点不出来
- 数据分析系列学习之My SQL(一)初识My SQL
热门文章
- h5页 点击返回时关闭_在微信、支付宝、百度钱包实现点击返回按钮关闭当前页面和窗口...
- 【机器学习】Bagging和Boosting的区别(面试准备)
- 注意:匿名函数调用直接加载函数名setInterval(move,30)
- 网络层核心:路由和路由生成算法
- Linux:守护进程详解及实现
- red hat linux 远程,Red Hat Linux 远程桌面 – 如何设置
- 5G毫米波通信中一些量化的概念
- php redis 队列,Redis 实现队列
- 转:跨dll操作fopen的返回值导致出错
- 在Visual Studio中利用NTVS创建Pomelo项目