1、直流电机调速计算机控制技术课程设计计算机控制技术课程设计评语:考勤10分守纪10分过程30分设计报告30分答辩20分总成绩(100分)专 业: 自动化班 级:姓 名:学 号:指导教师:兰州交通大学自动化与电气工程学院2016年07月15日直流电机调速系统设计1设计目的本课程设计是在修完计算机控制技术 A课程之后,为加强对学生系统设 计和应用能力的培养而开设的综合设计训练环节。本课程设计结合计算机控制 技术A课程的基础理论,重点强调实际应用技能训练,包括计算机控制系统算 法软件和硬件设计。其课程设计任务是使学生通过应用计算机控制技术的基本理 论,基本知识与基本技能,掌握计算控制技术中各主要环节的
2、设计、调试方法, 初步掌握并具备应用计算机进行设备技术改造和产品开发的能力, 培养学生的创新意识,提高学生的动手能力、分析问题和解决问题的能力。2设计方法设计一个直流电机系统,合理选择PID控制规律,掌握被控对象参数检测方 法、H桥驱动的功能、旋转编码器的功能、单片机 PWM控制波形输出方法,进 一步加强对课堂理论知识的理解与综合应用能力, 进而提高解决实际工程问题的 能力。直流电机调速系统是以电机转速作为变量, 单片机根据采集电机转速的测 量值与设定值的偏差去控制 PWM波形的脉宽,从而改变直流电机两端的电压, 达到控制转速的目的。直流电机调速系统由单片机、 直流电机、光电式旋转编码 器、H
3、桥驱动、LCD显示屏等及相关电路组成。3设计方案及原理3.1系统功能介绍整个控制系统由控制器、执行器、被控对象和测量变送组成,在本次控制系 统中控制器为单片机,采用算法为 PID增量算法控制规律,执行器为 H桥驱动 电路,测量变送器为光电式旋转编码器, 被控对象为直流电机。然后通过单片机 对数据进行处理,控制转速的大小和正反转。3.2系统组成总体结构计算机控制系统由控制计算机系统和生产过程两大部分组成。控制计算机是 指按生产过程控制的特点和要求而设计的计算机系统,它可以根据系统的规模和 要求选择或设计不同种类的计算机。计算机控制系统基本结构如图 1所示。图1计算机控制系统基本结构直流电机调速系
4、统结构框图如图2所示图2直流电机调速系统基本结构3.3直流电机调速系统的实现本系统中转速的值由一定时间内的脉冲数来表示。 给单片机输入一个给定脉 冲数值,可由按键增减给定值,单片机输出PWM后经过三极管放大电路和 H桥 驱动,然后传给直流电机,从电机转速输入到光电式旋转编码器, 编码器将检测 到的实际脉冲数输入到单片机中,最后,在单片机中根据脉冲的的前三个时刻的 偏差值,利用PID增量型控制程序程序算法得到控制增量,将控制增量给单片机, 产生对应的脉宽PWM波形控制电机两端的电压,从而达到调速目的。最后在LCD 显示电路中显示出来。4硬件设计硬件电路由开关控制模块、单片机、晶振电路、显示电路、
5、驱动电路电路、 直流电机、旋转编码器组成。硬件总体框图如图 3所示。4.1主控芯片AT89C5289C52是INTEL公司MCS-51系列单片机中基本的产品,它采用 ATMEL公 司可靠的CMOS工艺技术制造的高性能8位单片机,属于标准的 MCS-51的 HCMOS产品。它结合了 CMOS的高速和高密度技术及CMOS的低功耗特征, 它基于标准的MCS-51单片机体系结构和指令系统,属于 89C51增强型单片机 版本,集成了时钟输出和向上或向下计数器等更多的功能, 适合于类似马达控制等应用场合。89C52内置8位中央处理单元、512字节内部数据存储器RAM、 8k片内程序存储器(ROM)32个双
6、向输入/输出(I/O)口、3个16位定时/计数器 和5个两级中断结构,一个全双工串行通信口,片内时钟振荡电路。4.2 H桥驱动的选择H桥(H-Bridge),,即全桥(因外形与H相似故得名),通过开关的开合, 将直流电(来自电池等)逆变为某个频率或可变频率的交流电或直流开关电源的 斩波,从而用于驱动电机。本系统采用四个三极管放大功率以控制 NMOSFET管 H桥。三极管选用FAIRCHILD公司的2N5210。它是NPN型低噪声、高增益的 通用放大器,当集电极电流从1A到5mA时,它是一个通用放大电路。NMOSFET管选用ON半导体公司的NTD18N06L,它是低电压,高速度开关应用电力用品,
7、 可用于转换器和功率电机控制和桥电路,开启电压最低为 1V,最大为2V。4.3直流电机的选择直流电机选用KINGLYMOTOR公司的直流碳刷微型电机 JRS-385 RA/SA使 用范围为DC 420V,额定电压为DC 12V,额定转速为14000r/min,额定电流 为0.15A,起动电流为1A。4.4光电式旋转编码器的选择旋转编码器是用来测量转速并配合 PWM技术可以实现快速调速的装置,光电式旋转编码器通过光电转换,可将输出轴的角位移、角速度等机械量转换成相 应的电脉冲以数字量输出(REP。本例中我选择了东莞市林积为公司的内密控 157线增量式旋转编码器,编码器每圈产生的脉冲数为 157。
8、4.5转速显示电路的选择为方便对转速大小的直观印象,决定使用显示一定时间内单片机捕捉的脉冲数来表示转速。为此该系统选择了 LCD1602液晶显示屏,1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显 示字符和数字)。5 PID算法及软件设计5.1 PID算法分析数字PID控制是在实验研究和生产过程中采用最普遍的一种控制方法, 在电机转速控制系统中也有着极其重要的控制作用。常规的PID控制系统原理框图如 图4所示。图4模拟PID控制系统原理框图根据给定转速r(t)与实际转速
9、c(t)构成控制偏差e(t)=r(t)-c(t),然后将偏差按 比例、积分、微分,通过线性组合构成控制量,控制被控对象,控制规律为:u(t) Kpe(t) 1 e(t) Td警Ti dt其中,Kp是比例系数,Ti是积分时间,Td是微分时间。从系统的稳定性、响应速度、超调量和稳态精度等各方面来考虑, PID控制器各校正环节的作用如下:1、比例环节用于加快系统的响应速度,提高系统的调节精度。 Kp越大,系统的响应速度 越快系统的调节精度越高,但易产生超调,甚至会导致系统不稳定。 Kp值过小,则会降低调节精度, 使响应速度变慢,从而延长调节时间,使系统静态、 动态特性变坏。2、积分环节主要用来消除系
10、统的稳态误差。T越小,系统的静态误差消除越快,但Ti过小,在响应过程的初期会产生积分饱和现象,从而引起响应过程的较大超调。若 Ti 过大,将使系统静态误差难以消除,影响系统的调节精度。3、微分环节能改善系统的动态性能,其作用主要是在响应过程中抑制偏差向任何方向的 变化,对偏差变化进行提前预报。但 Td过大,会使响应过程提前制动,从而延 长调节时间,而且会降低系统的抗干扰性能。该直流电机转速系统采用单片机来控制, 其PID控制规律采用增量式,差分方程如下:其中,K为采样信号,u(k)是第K次时计算机输出值,e(k)是第K次采用输入 差值,e(k-1)为第K-1次采用输出偏差值。把捕获的脉冲数与设
11、定值相比,便可得到两者的偏差,然后经过PID的运算, 得到控制器的输出量,调整 PWM的脉宽,来改变转速。6系统仿真及实际调试6.1MATLAB程序与仿真见附录1。6.2PROTEUS程序与仿真见附录2。7总结根据偏差的比例(P)、积分(I)、微分(D)进行控制(简称PID控制), 是控制系统中应用最为广泛的一种控制规律。 实际运行的经验和理论的分析都表 明。这种控制规律对许多工业过程进行控制时,都能达到满意的效果。不过,用 计算机实现PID控制不是简单地把PID控制规律数字化,而是进一步与计算机的 逻辑判断功能结合,使PID控制更加灵活。在计算机控制系统中,PID控制规律 的实现必须用数值逼
12、近的方法。当采样周期相当短时,用求和代替积分、用后相 差分代替微分,使模拟PID离散化变为差分方程。-1在控制系统中,每个采样周期,控制器输出的控制量,是相对于上次控制量 的增加,此时控制器应采用数字PID增量式控制算法。通过此次设计,我掌握了 直流电机调速控制系统的构成,知道它最基本的部分有控制器、调节器、被控对 象和测量变送组成。并且学会了如何去设计一个过程控制系统, 掌握了基本的设 计步骤,认知被控对象、设计控制方案、选择控制规律、选择过程仪表、选择过 程模块、参数整定、设计系统流程图,掌握 MATLAB仿真和PROTEUS勺硬件仿 真和设计。这次课程设计令我受益匪浅。参考文献1李华计算
13、机控制系统M.北京:机械工业出版社,2007.2阮毅电力拖动自动控制系统 M.北京:机械工业出版社, 2003.3姜香菊 传感器原理及应用 M.北京:机械工业出版社, 2015.4薛定宇.控制系统计算机辅助设计 M.北京:清华大学出版社, 2012.王思明 单片机原理与应用系统设计 M.北京:科学出版社,2012.童诗白.模拟电子技术基础 M.北京:高等教育出版社,1980.附录1 MATLAB程序与仿真图5电机调速的PID增量仿真模型图6电机调速的PID增量仿真结果附录2 PROTUESS序与仿真mjuuc WMC-* HkrHIHpr ktit.,”于,主IFiH&J5 BiiT L,Li
14、S亠-I.图7电机调速的硬件示意图vTWPID增量算法程序如下:int PID() / 增量式 PIDint change;err_now = set - now;err_bef = set - bef;err_bbef = set - bbef;change = kp*(err_now - err_bef) + ki*err_now + kd*(err_now - 2*err_bef + err_bbef); if(change 0)printchar(1,1O,+);printuint(1,11,4,change);else if(change 0)printchar(1,10,-); printuint(1,11,4,-change);else if(change = 0)printchar(1,10,); printword(1,11, 0 );return(change);附录3直流电机调速系统流程图
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1