PWM是如何调节直流电机转速的?电机正反转的原理又是怎样的?
电机是重要的执行机构,可以将电转转化为机械能,从而驱动北控设备的转动或者移动,在我们的生活中应用非常广泛。例如,应用在电动工具、电动平衡车、电动园林工具、儿童玩具中。直流电机的实物图如下图所示。

1-直流电机实物图
对于普通的直流电机,在其两个电极上接上合适的直流电源后,电机就可以满速转动,电源反接后,电机就反向转动。但是在实际应用中,我们需要电机工作在不同的转速下,该如何操作呢?
1 直流电机的调速原理
我们可以做这样的实验,以24V直流电机为例,在电机两端接上24V的直流电源,电机会以满速转动,如果将24V电压降至2/3即16V,那么电机就会以满速的2/3转速运转。由此可知,想要调节电机的转速,只需要控制电机两端的电压即可。
以三极管作为驱动器件驱动小功率的电机,其电路原理图如下图所示。电机作为负载接在三极管的集电极上,基极由单片机控制。

2-直流电机调速原理图
当单片机输出高电平时,三极管导通,使得电机得电,从而满速运行;当单片机输出低电平时,三极管截止,电机两端没有电压,电机停止转动。那如何使电机两端的电压发生变化,进而控制电机的转速呢?
只要单片机输出占空比可调的方波,即PWM信号即可控制电机两端的电压发生变化,从而实现电机转速的控制。
2 PWM信号调速的原理
所谓PWM,就是脉冲宽度调制技术,其具有两个很重要的参数:频率和占空比。频率,就是周期的倒数;占空比,就是高电平在一个周期内所占的比例。PWM方波的示意图如下图所示。

3-PWM的基本参数
在上图中,频率F的值为1/(T1+T2),占空比D的值为T1/(T1+T2)。通过改变单位时间内脉冲的个数可以实现调频;通过改变占空比可以实现调压。占空比越大,所得到的平均电压也就越大,幅值也就越大;占空比越小,所得到的平均电压也就越小,幅值也就越小。动图演示如图4所示。

4-PWM调压演示
通过以上原理就可以知道,只要改变PWM信号的占空比,就可以改变直流电机两端的平均电压,从而实现直流电机的调速。
前文说过,改变电机两端的电源极性可以改变电机的转速,那么电路如何实现电机的正反转调速呢?这需要通过H桥电路来实现。H桥的电路原理如下图所示。

5-H桥驱动电机电路
H桥电路由四个功率电子开关构成,可以是晶体管也可以是MOS管。电子开关两两构成桥臂,在同一时刻只要对角的两个电子开关导通,另外两个截止,且每个桥臂的上下管不能同时导通。通过这个电路就可以实现电机的正反转调速。
3 PWM如何实现电机的正转调速
要实现电机的正转只需要做如下设置即可:
A控制端:高电平,控制三极管Q4导通;
B控制端:高电平,控制三极管Q3截止;
C控制端:低电平,控制三极管Q1导通;
D控制端:低电平,控制三极管Q2截止;
通过以上操作,即实现三极管Q2和Q3截止,三极管Q1和Q4导通,电流的流向如下:
VCC→Q1→电机→Q4→GND,实现了电机的正转。

6-H桥驱动电机正转调速电路
在这种情况下要实现电机转速的调节,只需要给Q4的基极加载PWM信号即可。
4 PWM如何实现电机的反转调速
要实现电机的反转只需要做如下设置即可:
A控制端:低电平,控制三极管Q4截止;
B控制端:低电平,控制三极管Q3导通;
C控制端:高电平,控制三极管Q1截止;
D控制端:高电平,控制三极管Q2导通;
通过以上操作,即实现三极管Q1和Q4截止,三极管Q2和Q3导通,电流的流向如下:
VCC→Q3→电机→Q2→GND,实现了电机的反转。

7-H桥驱动电机反转调速电路
在这种情况下要实现电机转速的调节,只需要给Q2的基极加载PWM信号即可。
5 电机专用驱动IC和分离元器件电路的对比
目前有很多电机专用驱动IC,体积小、控制简单,比用分离元器件所搭建的电路占有更大的优势。
专用IC优势之一:死区控制更容易
使用分离元器件时,必须要严格控制死区时间,也就是绝对不能让每个桥臂上的电子开关同时导通,这样容易导致电源短路,电流过大把两个电子开关烧坏。而专用的驱动IC都有死区控制,比分离元器件电路更安全。

8-电机专用驱动IC
专用IC优势之二:器件体积更小
分离元器件所搭建的驱动电路,所使用的元器件数目较多,体积较大。而专用驱动IC只需要一颗芯片即可,大大减小了体积、节省了PCB空间,使电路调试更容易。
本文转自小平头电子技术社区:https://www.xiaopingtou.cn/article-104206.html
PWM是如何调节直流电机转速的?电机正反转的原理又是怎样的?的更多相关文章
- Micropython Turnipbit 换挡风扇 旋转按钮控制直流电机转速
学过物理学的我们都知道换挡风扇的原理,一般按钮控制电感分压或者电容分压,以达到控制电流的目的.那么我们可不可以使用Turnipbit模拟这个系统呢?其实是很简单的.类似于之前用Tpyboard做的智能 ...
- [MicroPython]TurnipBit开发板旋转按钮控制直流电机转速
1.实验目的: 学习在PC机系统中扩展简单I/O 接口的方法 学习TurnipBit拼插编程 了解直流电机的工作原理 学习L298N的工作原理 学习TurnipBit扩展板L298N和按键模块的接线方 ...
- 24-ESP8266 SDK开发基础入门篇--Android TCP客户端.控制 Wi-Fi输出PWM的占空比,调节LED亮度
https://www.cnblogs.com/yangfengwu/p/11204436.html 刚才有人说需要点鸡汤.... 我想想哈;我还没问关于哪方面的鸡汤呢!!! 我所一直走的路线 第一: ...
- 15-ESP8266 SDK开发基础入门篇--上位机串口控制 Wi-Fi输出PWM的占空比,调节LED亮度,上位机程序编写
https://www.cnblogs.com/yangfengwu/p/11104167.html 先说一下整体思路哈.. 咱滑动的时候 会进入这个,然后咱呢不直接从这个里面写发送 因为这样的话太快 ...
- 14-ESP8266 SDK开发基础入门篇--上位机串口控制 Wi-Fi输出PWM的占空比,调节LED亮度,8266程序编写
https://www.cnblogs.com/yangfengwu/p/11102026.html 首先规定下协议 ,CRC16就不加了哈,最后我会附上CRC16的计算程序,大家有兴趣自己加上 上 ...
- MapReduce的map个数调节 与 Hadoop的FileInputFormat的任务切分原理
在对日志等大表数据进行处理的时候需要人为地设置任务的map数,防止因map数过小导致集群资源被耗光.可根据大表的数据量大小设置每个split的大小. 例如设置每个split为500M: set map ...
- 用机智云做PWM占空比控制电机,物联网智能家居应用
因为是新申请的博客,所以申请了总想往里面加点东西,所以把我之前在机智云写的帖子复制了过来 (各位抱歉,由于之前上传的文件可能有错误,之前上传的文件PWM不能用,那么我又重新上传了一个文件,这个文件 ...
- YASKAWA电机控制(2)---调试
2015 5 23 基础调试—点动 上次接线由于没有接地,导致外壳带电,非常危险. 由于上次接线端子被弄坏,这次自己重做.由于没有压线钳,只用尖嘴钳把线压近端子,有可能会松动. 接线的时候Lc1.Lc ...
- 20135223/20135234/20135229小组——亚博 Arduino智能小车实践报告
实验名称:Arduino智能小车组装和综合测试 实验小组成员:20135223何伟钦 20135234马启扬 20135229吕松鸿 实验日期:2015.10.27—2015.11.3 实验时长:24 ...
随机推荐
- UiPath之获取邮件相关信息
大家好,小U又来给大家分享UiPath文章,争取每一篇文章都给大家带来满满的干货. 本次案例是告诉大家如何使用GetOutLookMailMessage这个Activity, 案例的目的是将某个特定人 ...
- 从spring源码汲取营养:模仿spring事件发布机制,解耦业务代码
前言 最近在项目中做了一项优化,对业务代码进行解耦.我们部门做的是警用系统,通俗的说,可理解为110报警.一条警情,会先后经过接警员.处警调度员.一线警员,警情是需要记录每一步的日志,是要可追溯的,比 ...
- Linux目录结构-上部
第1章 目录结构 1.1 目录结构特点 倒挂的树状结构一切从根开始一切皆文件 1.2 目录结构 /bin 二进制文件 命令 /sbin 超级命令只有root ...
- 【Android - 自定义View】之View的位置参数
View是Android中所有控件的基类,不管是简单的Button和TextView,还是复杂的RelativeLayout和ListView,其基类都是View类:ViewGroup也继承了View ...
- petri 网理论与研究(第一节140915)
成绩 :70 大作业 和 30 的最后讨论 petri 是一个人的名字. 网状结构的信息流模型,和自动机有点像 理论体系发展比较慢 应用很远 1 EN,P/T,Pr/T,CPN,关系网……
- Linux命令行初学(一)
linux命令大全:https://www.linuxcool.com/ 大概了解到有哪些命令,如果有需要的话可以在该网站上查询. 另外在实验楼学习了一些基础,该篇博客就此次对linux命令行的学习进 ...
- Python中的Tcp协议应用之TCP服务端-线程版
利用线程实现,一个服务端同时服务多个客户端的需求. TCP服务端-线程版代码实现: import socket import threading def handle_client_socket(ne ...
- luogu P1951 收费站_NOI导刊2009提高(2) |二分答案+最短路
题目描述 在某个遥远的国家里,有n个城市.编号为1,2,3,-,n. 这个国家的政府修建了m条双向的公路.每条公路连接着两个城市.沿着某条公路,开车从一个城市到另一个城市,需要花费一定的汽油. 开车每 ...
- Mysql基础03-函数
函数 字符串函数 函数 用法 CONCAT(S1,S2,......,Sn) 连接S1,S2,......,Sn为一个字符串 CONCAT_WS(s, S1,S2,......,Sn) 同CONCAT ...
- 【CSS】378- [译]44个 CSS 精选知识点
写在前面 一个周五的晚上,闲来无事整理下自己的 github(经常做收藏党),今天打算都过一遍,发现一个 star很高的项目,里面有大量的 CSS 片段,而且标题很诱人,然后又花了将近1个小时从头到尾 ...