0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于单片机和PWM技术实现直流电动机双闭环调速系统的设计

电子设计 来源:网络整理 作者:佚名 2020-02-29 08:01 次阅读

一、前言

直流电动机作为主要的机电能量转换的装置,广泛应用于各行各业。随着计算机电子技术的迅猛发展,电动机的控制方法也发生了巨大的变化,模拟控制方法已基本被数字控制方法所取代。本系统采用ATmega8单片机为核心控制器,通过PWM波来控制H桥中MOSFET器件的导通和关断,把直流电压变成电压脉冲列,控制电压脉冲的宽度或周期,将26V直流电变为交流电在在通过变压器将升压到180V在整流获得的,其中还将用PWM控制技术来控制直流电动机的转速。

二、系统硬件设计

(一)系统工作原理

系统控制器主要采用的是ATmega8单片机为控制芯片。通过霍尔传感器检测电流光电编码器对速度进行检测。在通过单片机产生PWM波来控制H桥的MOSFET,对MOSFET的驱动我们采用互补式的隔离脉冲变压器驱动。将直流电逆变为交流电在通过变压器将26V的直流升压到180V的电压。对电机的控制我们采用的是双闭环调速系统。

(二)主要硬件设计

1、双闭环控制器电路

根据自动控制原理,反馈控制的闭环系统是按被调量的偏差进行控制的系统,如果被调量发生偏差,整个系统就会自动产生纠正偏差的作用。在本系统的设计中,采用比例积分调节算法,双闭环负反馈系统,分别为电流PI调节和转速PI调节算法。通过程序计算出电流环输出电压值,将电枢电压值作为PWM波形占空比的设定值,AVR单片机输出PWM波形,为了防止反馈控制的闭环调速系统在启动和堵转时电枢电流过大的问题,引入了电流截止负反馈环节。为了很好的得到输入信号,我们运用软件程序设计增加了一个卡尔曼滤波。卡尔曼滤波是以最小均方误差为估计的最佳准则,来寻求一套递推估计的算法,其基本思想是:采用信号与噪声的状态空间模型,利用前一时刻地估计值和现时刻的观测值来更新对状态变量的估计,求出现时刻的估计值。

基于单片机和PWM技术实现直流电动机双闭环调速系统的设计

图1 由ATmega8构成的大功率直流电机控制

2、PWM整形和MOSFET驱动电路

利用74HC74的特性可以得到U1002的SD和RD都接高电平,让PWM信号接CLICK端。当PWM处于由高电平时,由于74HC74的D端接的是Q非端,所以在PWM由低电平转换为高时Q和Q非的输出波形就交替变换,从而将一路的PWM分频为两路的PWM。这两路方波信号分别接到两个与非门的输入端,与非门的另外两个端口相联后在单片机产生的PWM信号相接,当PWM为低电平是两个与非门的输出都为高电平,从而使得最后四路PWM输出都为低电平,完成了驱动MOSFET的死区功能。当CLICK处于上升沿的时候Q和Q非端的输出端也交替的输出高低电平。从而将较低频率的PWM信号通过500KHz的载波信号通过脉冲变压器进行传输。

3、电机驱动和电流检测电路

主要是通过MOSFET的导通和关断将直流逆变为交流电,通过变压器将逆变过后的交流电整流为直流电,在变压器中我们实现了升压的过程。其中最重要的是要实现H桥中MOSFET控制时要求对管开通和关断的时间要一样。这样才能保证变压器不处于饱和状态。从而实现26V直流电升压到180V的功能。为了便于我们对电机的控制,我们在这里加上了霍尔传感器来实现对电流的检测。

基于单片机和PWM技术实现直流电动机双闭环调速系统的设计

图2 主程序流程图

4、速度检测电路

将信号盘安装在电动机的转轴上,光电转速传感器正对着信号盘。当信号盘转动时,光电元件就会输出周期性脉冲信号。信号盘旋转360度产生的脉冲数,和其上面的齿数相等。因此脉冲信号的频率大小就反映了电动机转速的大小。

三、软件设计

主程序是一个循环程序,其主要思路是,首先先设定好速度初始值和电流初始值,然后将检测的输入信号经过卡尔曼滤波器滤波后得到输入信号的值,再将着两个值分别和设定值相比较得到一个误差值,将误差送给电流转速闭环PI调节(PI调节器输出计算和PWM脉宽调节)。PI调节器输出计算在转速值和电流值更新后进行,否则输出脉冲只根据PI运算的历史值变化,PWM脉宽调节是脉宽从当前值平滑变化到PI调节器计算出的新值,实现平滑调速。

四、结论

本系统通过对直流电动机数学模型分析,建立了励磁直流电动机的电枢电压结合励磁电压的电动机控制方案,并对励磁直流电动机的控制方法进行了改进,采用了转速环-电流环双闭环反馈控制系统,通过PI算法调节电动机的转速。此设计采用的是AVR单片机为控制器,输入到AVR转速信号为数字信号,电机电流信号通过AVR内的模数转换器转换为数字信号,这样为在软件上实现闭环反馈控制算法提供了保证。系统经过软硬件设计调试证明运行可靠、稳定,达到了预期的目标。

责任编辑:gt


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6037

    文章

    44558

    浏览量

    635309
  • PWM
    PWM
    +关注

    关注

    114

    文章

    5186

    浏览量

    213939
  • 电动机
    +关注

    关注

    74

    文章

    4110

    浏览量

    96305
收藏 人收藏

    评论

    相关推荐

    基于LM324的直流电动机调速器设计

    、微分校正电路等环节,并采用了简单而有效的脉冲封锁和失磁保护技术。关键词:直流电动机;调速器;集成运算放大器;LM324
    发表于 04-28 10:56

    直流电动机调速

    调节要下滑得多,并且还可以得到任意多级的转速。因此降低电源电压从基速向下调速调速方法,在直流电力拖动系统中被广泛采用。 o 弱磁调速
    发表于 06-13 14:21

    ZN-758HGJ直流电动机运动控制实验系统功能特点及组成

    单片机可进行数字调节器控制或全数字式直流电动机控制系统实验。二、系统构成1、立式机柜(晶闸管三相反并联
    发表于 08-26 12:50

    直流电动机的基本原理和调速原理

    直流电动机闭环调速系统的动态特性研究与仿真.doc I直流电动机
    发表于 09-07 06:04

    基于PWM控制的直流电动机调速系统设计及MATLAB仿真

    《毕业论文_基于PWM控制的直流电动机调速系统设计及MATLAB仿真.doc》由会员分享,可免费在线阅读全文,更多与《(终稿)毕业论文设计_基于PW
    发表于 09-07 09:08

    如何使用Arduino控制直流电动机

    在本Arduino教程中,我们将学习如何使用Arduino控制直流电动机。 我们将介绍一些用于控制直流电动机的基本技术,并举两个例子,通过它们我们将学习如何使用L298N驱动器和Arduino板来
    发表于 11-17 08:14

    直流电动机闭环调速系统启动电流的大小是由电流调节器的输出限幅控制的吗?

    直流电动机闭环调速系统启动电流的大小由电流调节器的输出限幅控制是正确的吗?
    发表于 03-21 09:44

    直流电动机的分类

    直流电动机按结构及工作原理可分为无刷直流电动机和有刷直流电动机。有刷直流电动机可分为永磁直流电动机和电磁
    发表于 09-01 23:14 1898次阅读

    直流电动机调速特性

    直流电动机调速特性
    发表于 08-10 09:40 12次下载

    直流电动机调速方法

    直流电动机调速是指电动机在一定负载的条件下,根据需要,人为地改变电动机的转速。直流电动机调速
    的头像 发表于 12-21 13:56 5.9w次阅读
    <b class='flag-5'>直流电动机</b>的<b class='flag-5'>调速</b>方法

    直流电动机调速原理及特性

    直流电动机调速是指电动机在一定负载的条件下,根据需要,人为地改变电动机的转速。直流电动机调速
    发表于 10-08 17:11 2.3w次阅读
    <b class='flag-5'>直流电动机</b><b class='flag-5'>调速</b>原理及特性

    基于MSP430单片机直流电动机调速测速控制系统

    基于MSP430单片机直流电动机调速测速控制系统(实用电源技术题库)-该文档为基于MSP430单片机
    发表于 09-22 13:08 14次下载
    基于MSP430<b class='flag-5'>单片机</b>的<b class='flag-5'>直流电动机</b><b class='flag-5'>调速</b>测速控制<b class='flag-5'>系统</b>

    基于AVR单片机直流电动机PWM调速系统设计

    基于AVR单片机直流电动机PWM调速系统设计(ups电源技术协议范本)-该文档为基于AVR
    发表于 09-24 15:04 8次下载
    基于AVR<b class='flag-5'>单片机</b>的<b class='flag-5'>直流电动机</b>的<b class='flag-5'>PWM</b><b class='flag-5'>调速</b><b class='flag-5'>系统</b>设计

    Arduino直流电动机控制教程

    在本Arduino教程中,我们将学习如何使用Arduino控制直流电动机。 我们将介绍一些用于控制直流电动机的基本技术,并举两个例子,通过它们我们将学习如何使用L298N驱动器和Arduino板来
    发表于 11-10 09:35 23次下载
    Arduino<b class='flag-5'>直流电动机</b>控制教程

    直流电动机如何调速_直流电动机调速公式

    直流电动机可以通过调整电源电压、改变电枢绕组的接法、改变磁极数、改变电机的负载等方法来实现调速。   具体来说,直流电动机调速方法主
    发表于 03-12 10:41 7289次阅读