树莓派控制调速以及关于PWM的思考
作者:kumfo
简介:SegmentFault 后端工程师
来源:SegmentFault 思否社区
前情概要
最近在寻思用树莓派控制电机速度,电机预估电压是24V,电流是10A,以这样的配置需要个无极调速控制器控制电机转速,看了下相关的控制器价格也不贵,十多块钱就能整一块。然后,相关的无极调速有提供PWM控制的。
然后说到调速控制这一块,一般来说,低功率电路,比如5V/1A,3V/1A这样的电路,通常直接接个电位器进行控制就行了,而对于大功率电路,比如100W,200W这样的,通常来说就需要个通过低电压控制高电压电路了。一般来说,直接通过一个大功率三极管就能通过低电压的无极电压电流调节从而控制高电压电流的电路。但是实际上的放大电路还是比较复杂的,我非科班出身,关于这块目前也没有做过深入研究其根本原因和原理,暂且不谈。另外就是数字电路来控制大功率电器,那么也需要低电压通过放大电路来进行控制。
以此为前提,那么就问题来了,数字电路怎么能做到控制电压电流大小。首先看物理电位器的调节原理就是控制电路中的电阻来控制整个电路中的电流和电压大小,这个好理解。而在数字电路中,则是通过PWM(Pulse width modulation),中文意思是脉冲宽度调制。
PWM
从字面理解PWM,一开始看到其实是不太好理解的,我一开始也是弄得云里雾里的,这里用我自己所理解的方式进行梳理一下。
首先:
数字电路输出都是高/低电平,高电平可以假定为1,低电平假定为0,也就是低电平情况电路中没有电流电压流动。至于具体的这个高电平,对应的是多少电压,那么我这以树莓派为例,树莓派有好几个引脚,有的引脚输出的是3.3V电压,有的引脚输出的是5V,那么对应的相关高低电平就是:3.3:0,5:0。
数字电路是有频率的,这个以我的理解,就是一个时钟周期(1秒)内电流分成多少次流动,也就是一个时钟周期内电流分成多少次传递,如10MHZ,那么就是一个时钟周期内把电流分成10M次进行传递。
程序控制空占比
频率 = 10MHZ
一个电平在单位时间内的传送时间 = 1 / 频率
空占比 = 0.8
while True:
输出高电平()
持续等到高电平输出时间 = 一个电平在单位时间内的传送时间 * (1-空占比)
输出低电平()
持续等到低电平输出时间 = 一个电平在单位时间内的传送时间 * 空占比
写在结尾


关注公众号:拾黑(shiheibook)了解更多
赞助链接:
关注数据与安全,洞悉企业级服务市场:https://www.ijiandao.com/
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/
关注网络尖刀微信公众号随时掌握互联网精彩
- GrapesJS 开源的网页构建框架
- 突然宣布!六大行将集体下调
- 英镑兑换人民币汇率2023年7月28日
- 狐猴浏览器 – 这可能是扩展最多最全的安卓浏览器
- 你与Surface 的每一次办公,都在为可持续发展做贡献!
- 场景多元、灵活高效,数字政府建设迈入新阶段
- 想不到三星还有这种应用
- 独家专访 | 美国半导体行业协会副总裁Jimmy Goodrich: 确保全球半导体贸易不受阻碍
- 【杂谈快报】美国ITC对笔记本电脑、台式机等启动337调查,联想等列为被告
- 小米MIX4最新渲染图曝光;苹果首款OLED iPad将于2023年问世;格力将引进鸿蒙操作系统|极客头条
- 大雪压青松,青松挺且直:华为2020年收入8914亿元 同比增长3.8%
- 阿里国际站电子产品出口同比涨237%;微信内测企业号入口推荐公众号文章;工信部通报60款侵 App|Do早报



微信扫码关注公众号