摘要:推出一种使用单片机的PWM直流电机闭环调速系统。本系统结构简单,价格低廉,在实际应用中效果良好。

采用硬件电路实现直流电机闭环调速系统已在实践中应用多年,其硬件组成复杂,调整困难,缺乏控制的灵活性。本文介绍的直流电机PWM闭环调速系统,使用低价位的单片微机89C2051为核心,实现闭环控制,并可进行数字显示和速度预置,方便了使用。电机调速采用脉宽调制方式,与晶闸管调速相比技术先进,可减少对电源的污染。本系统已用于健身跑步机调速,工作可靠,使用效果良好。图1是本系统的线路图,主要有PWM信号发生、闭环调速微机控制、直流电机驱动等几部分组成。

1 PWM 信号发生电路

PWM波可由具有PWM输出的单片机(如80C198等)通过编程产生,也可采用PWM专用芯片来实现。PWM波的频率太高时,对直流电机驱动

的功率管要求太高,太低时产生电磁噪声较大。实践应用中PWM波的频率在18kHz左右效果最好。经综合分析,本系统采用两片4位数值比较器4585和一片12位串行计数器4040组成了PWM信号发生电路。两片比较器U3、U2的A组接4040计数输出Q2~Q9端,B组接单片微机的P1端口。改变P1端口的输出值,可使PWM信号的占空比产生变化,进行调速控制。计数器4040的计数输入端CLK接单片机2051晶振的振荡输出XTAL2。晶振选用18MHz时,经QO~Q2的8分频,Q2~Q9的256分频,产生的PWM波形的频率为17.6kHz,适合光耦及功率开关管的合理工作范围。

计数器4040每来8个脉冲,其输出Q2~Q9加1,当计数值小于或等于单片机P1端口输出值X时,U2的(A>B)输出端保持为低电平,当计数值大于X时U2的(A>B)输出端为高电平。随着计数值的增加,Q2~Q9由全“1”变为全“O”时,(A>B)输出端又变为低电平,这样,在U2的(A>B)端得到PWM的信号,其占空比为(255-X/255)×100%,改变X值可改变PWM信号的占空比,进行直流电机的转速控制。使用此方法单片机只需根据调整量输出X值,PWM信号由三片通用数字电路生成,使软件大大简化,有利于单片机系统正常工作。由于单片机上电复位时P1端口输出全“1”,使用4585的B组与P1端口相连,升速时PO端口输出X按一定规律减少,降速时按一定规律增大。

2 单片微机闭环速度控制电路

本系统的闭环控制选用低价位的单片机89C2051,与带PWM输出的80C552及80C198相比,无需外扩EPROM,且价格低的多。2051单片机片内有2K的flash程序存储器,15个I/O口,两路16位的定时/计数器,指令及中断系统与8031兼容,给闭环速度控制带来很大的灵活性。

闭环速度控制中传感器选用霍尔传感器,小磁钢固定在被测转轴上,每转一周输出一个脉冲信号。转速脉冲信号经施密特触发器U6-1,U6-2整形后,输入到2051单片机的INTO中断口P3.2端口上。软件设置INTO为下降沿中断,进入中断服务程序后开启定时/计数器O进行定时,测出每转的周期,再由软件计算出控制值X,由P1端口输出PWM波占空比的控制数。软件中还可进行显示线速度或角速度的转换计算,由八位驱码驱动器带动LED数码管进行显示。预置速度由按键S1、S2输入,进行“+”“ -”控制,预置数也由LED数码管显示。

显示使用了高集成度的MAX7219串行LED显示驱动器,带动八位LED数码管进行显示,前四位显示当前运行速度,后四位显示预置速度。

MAX7219是24脚窄封装芯片,串行口工作频率最高10MHz,八位LED显示,通过对译码模式寄存编程,可控制各位显示方式(BCD码或非译码),显示是片内动态扫描模式,通过一个电阻和编程可控制亮度,并可多个芯片串联显示多达64位共阴极LED数码管。MAX7219的数据输入端DIN、时钟端CLK、数据锁定端L分别与2051单片机的P3.0、P3.1、P3.5端口相接。改变电阻R6的阻值可调整显示亮度,R6取值在3.9~10kQ之间。使用MAX7219不仅可减少硬件电路,由于是片内动态扫描显示,并可降低功耗和简化软件设计。

2051单片微机的上电复位使用了MAX812电压监控器,上电时约有200 ms的延迟,以保证复位正常进行。为了防止掉电后预置数丢失,使用了使用备用电池保护2051单片机片内RAM数值。电源经变压整流后,一路经DC-AC开关电源输出5V直流电压给单片机系统供电,一路经三端稳压元件7812稳压输出12V电压供驱动大功率开关管使用。单片机系统电源与驱动电路部分电源隔离,以提高系统工作的可靠性和安全性。

3 直流电机驱动系统电路

直流电机驱动系统原理如图2所示

U2生成的PWM信号经施密特反相器U6-3驱动光电耦合器O1,送至直流电机驱动电路。大功率开关管选用N沟道VMOS功率场效应管,它为

压控元件,具有很高的输入阻抗,因而驱动功率很小,对驱动电路要求也较低。经光电耦合器传送的PWM信号,经并联使用的六施密特反相器,接到VMOS功率管Y1的栅极上,直接驱动即可。稳压管D4和电阻R8起保护作用。VMOS功率管的源极接直流电机绕组,经感抗器接电机直流电源负端。漏极接电机直流电源正端。快速关断二极管D3起保护作用,消除VMOS功率管开关过程由电机绕组产生的感生电势。电源是交流电压经C7、ZL、C8组成的滤波器后,由高压桥整流器件Z2整流,高压电解电容滤波后供VMOS功率管。VMOS功率管,快速关断二极管及高压电解电容器及整流桥等根据选用直流电机的电压、功率等要求确定相应型号和参数。

4 结束语

本文所述的直流电机闭环调速系统以低价位单片微机89C2051为核心,PWM波的生成使用三片通用数字电路,显示使用了高集成度的八位LED串行译码驱动器MAX7219,电机驱动使用VMOS场效应管,反馈信号使用霍尔传感元件,系统设计合理。使用单片机定时器对传动轴的周期进行检测,可由软件计算出相应的线速度或角转速进行显示,并可进行速度定量预置。软件中可用PLD算法或查表的方法确定闭环控制的补偿量。这些是由数字线路组成的直流电机闭环调速系统所不及的。以前也曾试过使用单片机的定时/计数器直接生成PWM波,这样使软件频繁工作在中断服务程度中,整体效果不太好。使用少量硬件后单片机仅输出X值,使软件工作量大大减少,程序中有充足时间进行闭环控制的测控和计算,使程序设计和软件运行合理可靠。

(转自中国电子制作网站)

计算机控制电机调速闭环控制,直流电机PWM闭环调速系统相关推荐

  1. matlab直流电机双闭环控制系统设计,基于MATLAB的直流电机双闭环调速系统设计毕业论文.doc...

    摘 要 直流电机双闭环调速系统是一个复杂的自动控制系统,是目前直流调速系统中的主流设备,具有调速范围宽.平稳性好.稳速精度高等优点,在理论和实践方面都是比较成熟的系统,在拖动领域中发挥着极其重要的作用 ...

  2. 直流电机反接制动调速 基于双向PWM变换器的直流电机反接制动调速 直流电机双闭环调速

    直流电机反接制动调速 基于双向PWM变换器的直流电机反接制动调速 直流电机双闭环调速 总共三个仿真文件打包 另外附赠1万字精美说明讲解报告,排版精美,波形截图精美,真的非常优质的报告. 报告另附特种电 ...

  3. 直流电机双闭环调速Matlab仿真实验

    直流电机双闭环调速Matlab仿真实验 实验目的 1.双闭环直流调速系统组成及工作原理 2.电机参数及仿真设置 3.仿真结果 3.1.转速电流双闭环仿真(给定转速1260RPM) 3.2.电流反馈断开 ...

  4. 直流电机单闭环调速matlab仿真,基于MATLAB的直流电机双闭环调速系统仿真.doc

    摘要:双闭环直流电机调速系统是现代社会最常用的调速系统之一,作为最常用的调速设备,双闭环调速系统拥有良好的平稳性,宽广的调速范围等特性,已经在国内外尤其是电力拖动领域被广泛使用. 在充分了解国内外对双 ...

  5. 直流电机双闭环调速系统,以及直流电机双闭环系统建模,采用转速外环电流内环的控制结构

    直流电机双闭环调速系统,以及直流电机双闭环系统建模,采用转速外环电流内环的控制结构,稳态效果良好,动态响应也较好,需要可以直接联系,仿真模型加对应的报告 ID:2960694396618054

  6. 【直流电机】基于matlab直流电机双闭环调速系统仿真【含Matlab源码 2368期】

    ⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[直流电机]基于matlab直流电机双闭环调速系统仿真[含Matlab源码 2368期] 点击上面蓝色字体,直接付费下载,即可. 获取代码 ...

  7. 直流电机单闭环调速matlab仿真,单闭环直流电机调速Simulink仿真

    简单的直流电机调速及MATLAB仿真 直流调速系统及其仿真 首先,我先大致讲一下电机调速的基本原理: 01()d d n a U E I R R R =+++(1) d E I R =+ e e E ...

  8. 【学习记录】Simulink仿真学习:直流电机的VM调速系统与PWM调速系统搭建

    最近需要复现一下论文中的电机仿真环节,于是又在网上找寻了各种教程.这篇文章总结了我学习直流电机仿真的一些记录和一些知识点文章等. 由于本人电力电子技术等知识的欠缺,故这篇文章适用于为理解或者搭建简单的 ...

  9. 电机调速设计并用matlab仿真,基于MATLAB的双闭环调速系统设计与仿真

    名称 基于MATLAB的双闭环调速系统设计与仿真 设计内容和意义 摘要 转速.电流双闭环控制直流调速系统是性能很好.应用最广的直流调速系统.根据晶闸管的特性,通过调节控制角α大小来调节电压.基于设计题 ...

最新文章

  1. 程序员的自我救赎---13.1:职场招聘与面试心得
  2. MySQL-常用命令大全
  3. General error: 24374 OCIStmtFetch: ORA-24374: define not done before fetch or execute and fetch
  4. Scala的List集合和Set集合
  5. POJ1256 (C++ compare函数)
  6. python django前端重构_django修改models重建数据库的操作
  7. svn服务器搭建之备份3
  8. No.4 Linux用户、组的创建、修改和权限的修改
  9. MATLAB的sum函数
  10. Lattice Diamond Reveal SerDes Debug Core简明教程(For ECP5)
  11. Linux下的tree的简单使用
  12. Mac安装IE浏览器
  13. 基于STM32设计的健康检测设备(测温心率计步)
  14. 《论语》原文及其全文翻译 学而篇1
  15. ABP文档 - 本地化
  16. openGauss社区理事会正式成立!云和恩墨与3大运营商、7大头部银行等18家理事单位加入,共建、共享、共治优质社区...
  17. 英读廊——为什么说密码中加入特殊字符会更安全?
  18. rdkit安装指南-常见问题解决(rdkit找不到包、下载时加载0%)
  19. html left属性,CSS属性参考 | left
  20. pip install exifread 安装exfriead模块

热门文章

  1. indesign中调出字符样式快捷键_Indesign 常用的快捷键整理
  2. html 聊天室模版,WebSocket+HTML5实现在线聊天室
  3. ASP JMail组件发送邮件
  4. 万邦京东获得JD商品详情原数据 API
  5. SQL -gt;gt;gt;gt;
  6. Unity3d 跑酷游戏(急速变色龙)
  7. Python基础(二):Numpy函数介绍:Meshgrid,mgrid,append等
  8. 泰拉瑞亚联机时为什么显示已在此服务器,为什么用游侠联机泰拉瑞亚创房的时候一直卡在 – 手机爱问...
  9. 复指数与高斯函数乘积的傅里叶变换_傅里叶变换光学基本原理(一)(理论学习者必看)...
  10. 转:人到中年须具备的心情修养