已阅读5页,还剩48页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
模板 本次设计主要研究的是PID控制技术在运动控制领域中的应用,纵所周知运动 控制系统最主要的控制对象是电机,在不同的生产过程中,电机的运行状态要满足 生产要求,其中电机速度的控制在占有至关重要的作用,因此本次设计主要是利用 PID控制技术对直流电机转速的控制。其设计思路为:以AT89S51单片机为控制 核心,产生占空比受PID算法控制的PWM脉冲实现对直流电机转速的控制。同 时利用光电传感器将电机速度转换成脉冲频率反馈到单片机中,构成转速闭环控制 系统,达到转速无静差调节的目的。在系统中采12864LCD显示器作为显示部件, 通过44键盘设置P、I、D、V四个参数和正反转控制,启动后通过显示部件了 解电机当前的转速和运行时间。因此该系统在硬件方面包括:电源模块、电机驱动 模块、控制模块、速度检测模块、人机交互模块。软件部分采用C语言进行程序设 计,其优点为:可移植性强、算法容易实现、修改及调试方便、易读等。 本次设计系统的主要特点: (1)优化的软件算法,智能化的自动控制,误差补偿; (2)使用光电传感器将电机转速转换为脉冲频率,比较精确的反映出电机的转 速,从而与设定值进行比较产生偏差,实现比例、积分、微分的控制,达到转速无 静差调节的目的; (3)使用光电耦合器将主电路和控制电路利用光隔开,使系统更加安全可靠; (4)12864LCD显示模块提供一个人机对话界面,并实时显示电机运行速 度和运行时间; 比 例 微 分 积 分执行机构对象 r(t) + - + + u(t)c(t)e(t) (5)利用Proteus软件进行系统整体仿真,从而进一步验证电路和程序的正确 性,避免不必要的损失; (6)采用数字PID算法,利用软件实现控制,具有更改灵活,节约硬件等优点; (7)系统性能指标:超调量8; 调节时间4s; 转速误差1r/min。 1 PID算法及PWM控制技术简介 1.1 PID算法 控制算法是微机化控制系统的一个重要组成部分,整个系统的控制功能主要由 控制算法来实现。目前提出的控制算法有很多。根据偏差的比例(P)、积分(I)、 微分(D)进行的控制,称为PID控制。实际经验和理论分析都表明,PID控制能 够满足相当多工业对象的控制要求,至今仍是一种应用最为广泛的控制算法之一。 下面分别介绍模拟PID、数字PID及其参数整定方法。 1.1.1 模拟PID 在模拟控制系统中,调节器最常用的控制规律是PID控制,常规PID控制系 统原理框图如图1.1所示,系统由模拟PID调节器、执行机构及控制对象组成。 图1.1 模拟PID控制系统原理框图 PID调节器是一种线性调节器,它根据给定值与实际输出值构成的)(tr)(tc 控制偏差: = )(te)(tr)(tc (1.1) 将偏差的比例、积分、微分通过线性组合构成控制量,对控制对象进行控制,故称 为PID调节器。在实际应用中,常根据对象的特征和控制要求,将P、I、D基本 控制规律进行适当组合,以达到对被控对象进行有效控制的目的。例如,P调节器, PI调节器,PID调节器等。 模拟PID调节器的控制规律为 )( )( 1 )()( 0dt tde Tdtte T teKtu D t I p (1.2) 式中,为比例系数,为积分时间常数,为微分时间常数。 P K I T D T 简单的说,PID调节器各校正环节的作用是: (1)比例环节:即时成比例地反应控制系统的偏差信号,偏差一旦产生,调)(te 节器立即产生控制作用以减少偏差; (2)积分环节:主要用于消除静差,提高系统的无差度。积分作用的强弱取决 于积分时间常数,越大,积分作用越弱,反之则越强; I T I T (3)微分环节:能反映偏差信号的变化趋势(变化速率),并能在偏差信号的 值变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速 度,减少调节时间。 由式1.2可得,模拟PID调节器的传递函数为 ) 1 1 ( )( )( )(ST ST K SE SU SD D I P (1.3) 由于本设计主要采用数字PID算法,所以对于模拟PID只做此简要介绍。 1.1.2 数字PID 在DDC系统中,用计算机取代了模拟器件,控制规律的实现是由计算机软件 来完成的。因此,系统中数字控制的设计,实际上是计算机算法的设计。 由于计算机只能识别数字量,不能对连续的控制算式直接进行运算,故在计算 机控制系统中,首先必须对控制规律进行离散化的算法设计。 为将模拟PID控制规律按式(1.2)离散化,我们把图1.1中、)(tr)(te 、在第n次采样的数据分别用、表示,于是式)(tu)(tc)(nr)(ne)(nu)(nc (1.1)变为 : = )(ne)(nr)(nc (1.4) 当采样周期T很小时可以用T近似代替,可用近似代替,dt)(tde) 1()(nene “积分”用“求和”近似代替,即可作如下近似 T nene dt tde) 1()()( (1.5) t n i Tiedtte 0 1 )()( (1.6) 这样,式(1.2)便可离散化以下差分方程 0 1 )1()()()()(unene T T ne T T neKnu n i D I P (1.7) 上式中是偏差为零时的初值,上式中的第一项起比例控制作用,称为比例(P)项 0 u ,即 )(nuP )()(neKnu Pp (1.8) 第二项起积分控制作用,称为积分(I)项即)(nuI n i I PI ie T T Knu 1 )()( (1.9) 第三项起微分控制作用,称为微分(D)项即)(nuD )1()()(nene T T Knu D PD (1.10) 这三种作用可单独使用(微分作用一般不单独使用)或合并使用,常用的组合有: P控制: 0 )()(ununu P (1.11) PID 位置算法 控制器被控对象 r(t) + - e(t)uc(t) PI控制: 0 )()()(unununu IP (1.12) PD控制: 0 )()()(unununu DP (1.13) PID控制: 0 )()()()(ununununu DIP (1.14) 式(1.7)的输出量为全量输出,它对于被控对象的执行机构每次采样时)(nu 刻应达到的位置。因此,式(1.7)又称为位置型PID算式。 由(1.7)可看出,位置型控制算式不够方便,这是因为要累加偏差,不)(ie 仅要占用较多的存储单元,而且不便于编写程序,为此对式(1.7)进行改进。 根据式(1.7)不难看出u(n-1)的表达式,即 0 1 1 )2() 1()() 1() 1(unene T T ne T T neKnu n i D I P (1.15) 将式(1.7)和式(1.15)相减,即得数字PID增量型控制算式为 ) 1()()(nununu )2() 1(2)()()1()(neneneKneKneneK DIP (1.16) 从上式可得数字PID位置型控制算式为 )(nu 0 )2() 1(2)()()1()(uneneneKneKneneK DIP (1.17) 式中: 称为比例增益; P K 称为积分系数; I PI T T KK 称为微分系数1。 T T KK D PD 数字PID位置型示意图和数字PID增量型示意图分别如图1.2和1.3所示: PID 增量算法 控制器被控对象 r(t) + - e(t)uc(t) 图1.2 数字PID位置型控制示意图 图1.3 数字PID增量型控制示意图 1.1.3 数字PID参数整定方法 如何选择控制算法的参数,要根据具体过程的要求来考虑。一般来说,要求被 控过程是稳定的,能迅速和准确地跟踪给定值的变化,超调量小,在不同干扰下系 统输出应能保持在给定值,操作变量不宜过大,在系统和环境参数发生变化时控制 应保持稳定。显然,要同时满足上述各项要求是很困难的,必须根据具体过程的要 求,满足主要方面,并兼顾其它方面。 PID调节器的参数整定方法有很多,但可归结为理论计算法和工程整定法两种。 用理论计算法设计调节器的前提是能获得被控对象准确的数学模型,这在工业过程 中一般较难做到。因此,实际用得较多的还是工程整定法。这种方法最大优点就是 整定参数时不依赖对象的数学模型,简单易行。当然,这是一种近似的方法,有时 可能略嫌粗糙,但相当适用,可解决一般实际问题。下面介绍两种常用的简易工程 整定法。 (1)扩充临界比例度法 这种方法适用于有自平衡特性的被控对象。使用这种方法整定数字调节器参数 的步骤是: 选择一个足够小的采样周期,具体地说就是选择采样周期为被控对象纯滞后时 间的十分之一以下。 用选定的采样周期使系统工作:工作时,去掉积分作用和微分作用,使调节器 成为纯比例调节器,逐渐减小比例度()直至系统对阶跃输入的响应 P K/1 达到临界振荡状态,记下此时的临界比例度及系统的临界振荡周期。 K k T 选择控制度:所谓控制度就是以模拟调节器为基准,将DDC的控制效果与模 拟调节器的控制效果相比较。控制效果的评价函数通常用误差平方面积表 0 2 )(te 示。 控制度 模拟 )( )( 0 2 0 2 dtte dtte DDC (1.18) 实际应用中并不需要计算出两个误差平方面积,控制度仅表示控制效果的物理 概念。通常,当控制度为1.05时,就可以认为DDC与模拟控制效果相当;当控制 度为2.0时,DDC比模拟控制效果差。 根据选定的控制度,查表1.1求得T、的值1。 P K I T D T 表1.1 扩充临界比例度法整定参数 (2) 经验法 经验法是 靠工作人员的 经验及对工艺 的熟悉程度, 参考测量值跟 踪与设定值曲 线,来调整 P、I、D三 者参数的大小的,具体操作可按以下口诀进行: 参数整定找最佳,从小到大顺序查; 先是比例后积分,最后再把微分加; 曲线振荡很频繁,比例度盘要放大; 曲线漂浮绕大湾,比例度盘往小扳; 曲线偏离回复慢,积分时间往下降; 曲线波动周期长,积分时间再加长; 曲线振荡频率快,先把微分降下来; 控制度控制规律T P K I T D T 1.05PI0.03 K T0.53 K 0.88 K T 1.05PID0.014 K T0.63 K 0.49 K T0.14 K T 1.20PI0.05 K T0.49 K 0.91 K T 1.20PID0.043 K T0.047 K 0.47 K T0.16 K T 1.50PI0.14 K T0.42 K 0.99 K T 1.50PID0.09 K T0.34 K 0.43 K T0.20 K T 2.00PI0.22 K T0.36 K 1.05 K T 2.00PID0.16 K T0.27 K 0.40 K T0.22 K T 动差大来波动慢,微分时间应加长。 下面以PID调节器为例,具体说明经验法的整定步骤: 让调节器参数积分系数=0,实际微分系数=0,控制系统投入闭环运行, I K D K 由小到大改变比例系数,让扰动信号作阶跃变化,观察控制过程,直到获得满 P K 意的控制过程为止。 取比例系数为当前的值乘以0.83,由小到大增加积分系数,同样让扰 P K I K 动信号作阶跃变化,直至求得满意的控制过程。 积分系数保持不变,改变比例系数,观察控制过程有无改善,如有改 I K P K 善则继续调整,直到满意为止。否则,将原比例系数增大一些,再调整积分系 P K 数,力求改善控制过程。如此反复试凑,直到找到满意的比例系数和积分系 I K P K 数为止。 I K 引入适当的实际微分系数和实际微分时间,此时可适当增大比例系数 D K D T 和积分系数。和前述步骤相同,微分时间的整定也需反复调整,直到控制过 P K I K 程满意为止。 PID参数是根据控制对象的惯量来确定的。大惯量如:大烘房的温度控制,一 般P可在10以上,I在(3、10)之间,D 在 1左右。小惯量如:一个小电机闭环 控制,一般P在(1、10)之间,I在(0、5)之间,D在(0.1、1)之间,具体 参数要在现场调试时进行修正。 1.2 PWM脉冲控制技术 PWM(Pulse Width Modulation)控制就是对脉冲的宽度进行调制的技术。即 通过对一系列脉冲的宽度进行调制,来等效地获得所需要波形(含形状和幅值)。 1.2.1 PWM控制的基本原理 在采样控制理论中有一个重要的结论:冲量相等而形状不同的窄脉冲加在具有 惯性的环节上时,其效果基本相同。冲量即指窄脉冲的面积。这里所说的效果基本 相同,是指环节的输出响应波形基本相同。如果把各输出波形用傅立叶变换分析, 则其低频段非常接近,仅在高频段略有差异。例如图1.4中a、b、c所示的三个窄 脉冲形状不同,其中图1.4的a为矩形脉冲,图1.4的b为三角脉冲,图1.4的c f(t) 0 t f(t) 0 t 0 t f(t) 0 t f(t) 0 t 0 t a b c d a b c d ab i i(t) i(t) e(t) R L 0 为正弦半波脉冲,但它们的面积(即冲量)都等于1,那么,当它们分别加在具有 惯性的同一环节上时,其输出响应基本相同。当窄脉冲变为如图1.4的d所示的单 位脉冲函数时,环节的响应即为该环节的脉冲过渡函数。)(t 图1.4 形状不同而冲量相同的各种窄脉冲 图1.5a的电路是一个具体的例子。图中为窄脉冲,其形状和面积分别如)(te 图1.4的a、b、c、d所示,为电路的输入。该输入加在可以看成惯性环节的R-L 电路上,设其电流为电路的输出。图1.5b给出了不同窄波时的响应波形。)(ti)(ti 从波形可以看出,在的上升段,脉冲形状不同时的形状也略有不同,但其)(ti)(ti 下降段几乎完全相同。脉冲越窄,各波形的差异也越小。如果周期性的施加上)(ti 述脉冲,则响应也是周期性的。用傅立叶级数分解后将可看出,各在低频)(ti)(ti 段的特性非常接近,仅在高频段有所不同2。 图1.5 冲量相同的各种窄脉冲的响应波形 1.2.2 直流电机的PWM控制技术 直流电动机具有优良的调速特性,调速平滑、方便,调速范围广,过载能力大, 能承受频繁的冲击负载,可实现频繁的无级快速起动、制动和反转;能满足生产过 程自动化系统各种不同的特殊运行要求,在许多需要调速或快速正反向的电力拖动 系统领域中得到了广泛的应用。 直流电动机的转速调节主要有三种方法:调节电枢供电的电压、减弱励磁磁通 和改变电枢回路电阻。针对三种调速方法,都有各自的特点,也存在一定的缺陷。 例如改变电枢回路电阻调速只能实现有级调速,减弱磁通虽然能够平滑调速,但这 种方法的调速范围不大,一般都是配合变压调速使用。所以在直流调速系统中,都 是以变压调速为主。其中,在变压调速系统中,大体上又可分为可控整流式调速系 统和直流PWM调速系统两种。直流PWM调速系统与可控整流式调速系统相比 有下列优点:由于PWM调速系统的开关频率较高,仅靠电枢电感的滤波作用就可 U(t) 0tTt0 U 获得平稳的直流电流,低速特性好、稳速精度高、调速范围宽。同样,由于开关频 率高,快速响应特性好,动态抗干扰能力强,可以获得很宽的频带;开关器件只工作 在开关状态,因此主电路损耗小、装置效率高;直流电源采用不可控整流时,电网 功率因数比相控整流器高。正因为直流PWM调速系统有以上优点,并且随着电力 电子器件开关性能的不断提高,直流脉宽调制( PWM) 技术得到了飞速的发展。 随着科学技术的迅猛发展传统的模拟和数字电路已被大规模集成电路所取代, 这就使得数字调制技术成为可能。目前,在该领域中大部分应用的是数字脉宽调制 技术。电动机调速系统采用微机实现数字化控制,是电气传动发展的主要方向之一。 采用微机控制后,整个调速系统实现全数字化,并且结构简单、可靠性高、操作维 护方便,电动机稳态运转时转速精度可达到较高水平,静动态各项指标均能较好地满 足工业生产中高性能电气传动的要求。下面主要介绍直流电机PWM调速系统的算 法实现。 根据PWM控制的基本原理可知,一段时间内加在惯性负载两端的PWM脉 冲与相等时间内冲量相等的直流电加在负载上的电压等效,那么如果在短时间T内 脉冲宽度为,幅值为U,由图1.6可求得此时间内脉冲的等效直流电压为: 0 t 图1.6 PWM脉冲 ,若令,即为占空比,则上式可化为: T Ut U 0 0 T t0 (U为脉冲幅值) UU 0 (1.19) 若 PWM 脉冲为如图1.7所示周期性矩形脉冲,那么与此脉冲等效的直流电 压的计算方法与上述相同,即 (为矩形脉冲占空比) U T Ut nT Unt U 00 0 (1.20) U(t) 0tTt0 U 2T2t03T3t04t0nT (n+1)t0 图1.7 周期性PWM 矩形脉冲 由式1.20可知,要改变等效直流电压的大小,可以通过改变脉冲幅值U和占 空比来实现,因为在实际系统设计中脉冲幅值一般是恒定的,所以通常通过控制 占空比的大小实现等效直流电压在0U之间任意调节,从而达到利用PWM 控制技术实现对直流电机转速进行调节的目的。 键盘模块控制器模块 显示模块 电机驱动模块直流电机 速度检测模块 PWM脉冲 2 设计方案与论证 2.1 系统设计方案 根据系统设计的任务和要求,设计系统方框图如图2.1所示。图中控制器模块 为系统的核心部件,键盘和显示器用来实现人机交互功能,其中通过键盘将需要设 置的参数和状态输入到单片机中,并且通过控制器显示到显示器上。在运行过程中 控制器产生PWM脉冲送到电机驱动电路中,经过放大后控制直流电机转速,同时 利用速度检测模块将当前转速反馈到控制器中,控制器经过数字PID运算后改变 PWM脉冲的占空比,实现电机转速实时控制的目的。 图2.1 系统方案框图 2.2 控制器模块设计方案 根据设计任务,控制器主要用于产生占空比受数字PID算法控制的PWM脉 冲,并对电机当前速度进行采集处理,根据算法得出当前所需输出的占空比脉冲。 对于控制器的选择有以下三种方案。 方案一:采用FPGA(现场可编辑门列阵)作为系统的控制器,FPGA可以实 现各种复杂的逻辑功能3,模块大,密度高,它将所有器件集成在一块芯片上,减少 了体积,提高了稳定性,并且可应用EDA软件仿真、调试,易于进行功能控制。 FPGA采用并行的输入输出方式,提高了系统的处理速度,适合作为大规模实时系 统的控制核心。通过输入模块将参数输入给FPGA,FPGA通过程序设计控制 PWM脉冲的占空比,但是由于本次设计对数据处理的时间要求不高,FPGA的高 速处理的优势得不到充分体现,并且由于其集成度高,使其成本偏高,同时由于芯 片的引脚较多,实物硬件电路板布线复杂,加重了电路设计和实际焊接的工作。 方案二:采用AT89S51作为系统控制的方案。AT89S51单片机算术运算功 能强,软件编程灵活、自由度大,可用软件编程实现各种算法和逻辑控制4。相对于 FPGA来说,它的芯片引脚少,在硬件很容易实现。并且它还具有功耗低、体积小、 技术成熟和成本低等优点,在各个领域中应用广泛。 方案三:采用传统的AT89C51单片机作为运动物体的控制中心。它和 AT89S51一样都具有软件编程灵活、体积小、成本低,使用简单等特点,但是它的 频率较低、运算速度慢, RAM、ROM空间小等缺点。本题目在确定圆周坐标值 时,需要进行大量的运算。若采用89C51需要做RAM,ROM来扩展其内存空间, 其硬件工作量必然大大增多。 综合上述三种方案比较,采用AT89S51作为控制器处理输入的数据并控制电 机运动较为简单,可以满足设计要求。因此在本次设计选用方案二。 2.3 电机驱动模块设计方案 本次设计的主要目的是控制电机的转速,因此电机驱动模块是必不可少,其方 案有一下两种。 方案一:采用大功率晶体管组合电路构成驱动电路,这种方法结构简单,成本 低、易实现,但由于在驱动电路中采用了大量的晶体管相互连接,使得电路复杂、 抗干扰能力差、可靠性下降,我们知道在实际的生产实践过程中可靠性是一个非常 重要的方面。因此此中方案不宜采用。 方案二:采用专用的电机驱动芯片,例如L298N、L297N等电机驱动芯片, 由于它内部已经考虑到了电路的抗干扰能力,安全、可靠行,所以我们在应用时只 需考虑到芯片的硬件连接、驱动能力等问题就可以了,所以此种方案的电路设计简 单、抗干扰能力强、可靠性好。设计者不需要对硬件电路设计考虑很多,可将重点 放在算法实现和软件设计中,大大的提高了工作效率。 基于上述理论分析和实际情况,电机驱动模块选用方案二。 2.4 速度采集模块设计方案 本系统是一闭环控制系统,在调节过程中需要将设定与当前实际转速进行比较, 速度采集模块就是为完成这样功能而设计的,其设计方案以下三种: 方案一:采用霍尔集成片。该器件内部由三片霍尔金属板组成。当磁铁正对金 属板时,由于霍尔效应,金属板发生横向导通5,因此可以在电机上安装磁片,而将 霍尔集成片安装在固定轴上,通过对脉冲的计数进行电机速度的检测。 方案二:采用对射式光电传感器。其检测方式为:发射器和接受器相互对射安 装,发射器的光直接对准接受器,当测物挡住光束时,传感器输出产生变化以指示 被测物被检测到。通过脉冲计数,对速度进行测量。 方案三:采用测速发电机对直流电机转速进行测量。该方案的实现原理是将测 速发电机固定在直流电机的轴上,当直流电机转动时,带动测速电机的轴一起转动, 因此测速发电机会产生大小随直流电机转速大小变化的感应电动势,因此精度比较 高,但由于该方案的安装比较复杂、成本也比较高,在本次设计没有采用此方案。 以上三种方案中,第三种方案不宜采用,第一种和第二种方案的测速原理基本 相同都是将电机转速转换为电脉冲的频率进行测量,但考虑到市场中的霍尔元件比 较难买,而且成本也比较高,所以综合考虑在设计中选用第二种方案进行设计。 2.5 显示模块设计方案 在电机转速控制系统中,系统需要对参数、工作方式以及电机当前运行状态的 显示,因此在整个系统中必须设计一个显示模块,考虑有三种方案: 方案一:使用七段数码管(LED)显示。数码管具有亮度高、工作电压低、功 耗小、易于集成、驱动简单、耐冲击且性能稳定等特点,并且它可采用BCD编码 显示数字,编程容易,硬件电路调试简单。但由于在此次设计中需要设定的参数种 类多,而且有些需要进行汉字和字符的显示,所以使用LED显示器不能完成设计 任务,不宜采用。 方案二:采用1602LCD液晶显示器,该显示器控制方法简单,功率低、硬件 电路简单、可对字符进行显示,但考虑到1602LCD液晶显示器的屏幕小,不能显 示汉字,因此对于需要显示大量参数的系统来说不宜采用。 方案三:采用12864LCD液晶显示器,该显示器功率低,驱动方法和硬件连 接电路较上面两种方案复杂,显示屏幕大、可对汉字和字符进行显示。 根据本次设计的设计要求,显示模块选用方案三。 2.6 键盘模块设计方案 在电机转速控制系统中,系统需要按键进行参数的输入、工作方式的设定以及 电机起停的控制,因此键盘在整个系统中是不可缺少的一部分,考虑有二种方案: 方案一:采用独立式键盘,这种键盘硬件连接和软件实现简单,并且各按键相 互独立,每个按键均有一端接地,另一端接到输入线上。按键的工作状态不会影响 其它按键上的输入状态。但是由于独立式键盘每个按键需要占用一根输入口线,所 以在按键数量较多时,I/O口浪费大,故此键盘只适用于按键较少或操作速度较高 的场合。 方案二:采用行列式键盘,这种键盘的特点是行线、列线分别接输入线、输出 线。按键设置在行、列线的交叉点上,利用这种矩阵结构只需m根行线和n根列线 就可组成个按键的键盘,因此矩阵式键盘适用于按键数量较多的场合。但此nm 种键盘的软件结构较为复杂6。 根据上面两种方案的论述,由于本次设计的系统硬件连接比较复杂,对软件的 运行速度要求不高,所以采用方案二矩阵式键盘进行设计。 2.7 电源模块设计方案 电源是任何系统能否运行的能量来源,无论那种电力系统电源模块都是不可或 缺的,对于该模块考虑一下两种方案。 方案一:通过电阻分压的形式将整流后的电压分别降为控制芯片和电机运行所 需的电压,此种方案原理和硬件电路连接都比较简单,但对能量的损耗大,在实际 应用系统同一般不宜采用。 方案二:通过固定芯片对整流后的电压进行降压、稳压处理(如7812、7805 等),此种方案可靠性、安全性高,对能源的利用率高,并且电路简单容易实现。 根据系统的具体要求,采用方案二作为系统的供电模块。 经过上述的分析与论证,系统各模块采用的方案如下: (1)控制模块: 采用AT89S51单片机; (2)电机驱动模块:采用直流电机驱动芯片L298N实现; (3)速度采集模块:采用光电传感器; (4)显示模块: 采用12864LCD液晶显示模块; (5)键盘模块: 采用标准的44矩阵式键盘; (6)电源模块: 采用7805、7812芯片实现。 U7 C2 0.33F C6 0.33F Vin 1 GND 2 +5V 3 U4 7805 Vin 1 GND 2 +12V 3 U3 7812 C3 0.1F C7 0.1F +5v +12v 1 2 3 4 U6 C8 20F C5 3300F C4 20F C1 3300F 1 2 J1 220V 3 单元电路设计 3.1 硬件资源分配 本系统电路连接及硬件资源分配见图3.1所示。采用AT89S51单片机作为核 心器件,转速检测模块作为电机转速测量装置,通过AT89S51的P3.3口将电脉 冲信号送入单片机处理,L298作为直流电机的驱动模块,利用12864LCD显示 器和44键盘作为人机接口。 图3.1 系统电路连接及硬件资源分配图 3.2 电源电路设计 电源是整个系统的能量来源,它直接关系到系统能否运行。在本系统中直流电 机需要12V电源,而单片机、显示模块等其它电路需要5V的电源,因此电路中选 用7805和7812两种稳压芯片,其最大输出电流为1.5A,能够满足系统的要求, 其电路如图3.2所示。 P0.0P0.7 12864LCD 显示模块 P2.7 P2.6 电机驱动模块 P2.0P0.5 5 44键盘 P1.0P1.3 P1.4P1.7 4 4 L0L3 H0H3 P3.2/INT0 AT89S51 P3.3/INT1 电机 转速检测 四输入与门 A1 A2 SE N1 1 1Y 1 2 1Y 2 3 Vs 4 1A 1 5 1E N 6 1A 2 7 GN D 8 Vcc 9 2A 1 10 2A 2 12 2E N 11 2Y 1 13 2Y 2 14 SE N2 15 U5 L298N D4 D3 D1 D2 C10 20F C9 20F +5V +12V +12V R1 470 R2 5K R4 5K R3 470 R5 470 MG 1 P2.7 P2.6 P2.5 图3.2 电源电路 3.3 电机驱动电路设计 驱动模块是控制器与执行器之间的桥梁,在本系统中单片机的I/O口不能直接 驱动电机,只有引入电机驱动模块才能保证电机按照控制要求运行,在这里选用 L298N电机驱动芯片驱动电机,该芯片是由四个大功率晶体管组成的H桥电路构 成,四个晶体管分为两组,交替导通和截止,用单片机控制达林顿管使之工作在开 关状态,通过调整输入脉冲的占空比,调整电动机转速。其中输出脚(SENSEA 和SENSEB)用来连接电流检测电阻,Vss接逻辑控制的电源。Vs为电机驱动电 源。IN1-IN4输入引脚为标准TTL 逻辑电平信号,用来控制H桥的开与关即实现 电机的正反转,ENA、ENB引脚则为使能控制端,用来输入PWM信号实现电机 调速。其电路如图3.3所示,利用两个光电耦合器将单片机的I/O与驱动电路进行 隔离,保证电路安全可靠。这样单片机产生的PWM脉冲控制L298N的选通端7, 使电机在PWM脉冲的控制下正常运行,其中四个二极管对芯片起保护作用。 图3.3 电机驱动电路 3.4 电机速度采集电路设计 在本系统中由于要将电机本次采样的速度与上次采样的速度进行比较,通过偏 差进行PID运算,因此速度采集电路是整个系统不可缺少的部分。本次设计中应用 VSS VDD VO RS R/W E DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7 CS1 CS2 /RST VEE A K 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 了比较常见的光电测速方法来实现,其具体做法是将电机轴上固定一圆盘,且其边 缘上有N个等分凹槽如图3.5(a)所示,在圆盘的一侧固定一个发光二极管,其 位置对准凹槽处,在另一侧和发光二极光平行的位置上固定一光敏三极管,如果电 动机转到凹槽处时,发光二极管通过缝隙将光照射到光敏三极管上,三极管导通, 反之三极管截止,电路如图3.4(b)所示,从图中可以得出电机每转一圈在P3.3 的输出端就会产生N个低电平。这样就可根据低电平的数量来计算电机此时转速了。 例如当电机以一定的转速运行时,P3.3将输出如图3.5所示的脉冲,若知道一段时 间t内传感器输出的低脉冲数为n,则电机转速v=r/s。 (a) (b) 图3.4 电机速度采集方案 图3.5 传感器输出脉冲波形 3.5 显示电路设计 根据设计要求要对系统各项参数和电机运行状态进行显示,因此在电路中加入 显示模块是非常必要的。在系统运行过程中需要显示的数据比较都,而且需要汉字 显示,在这里选用12864液晶显示器比较适合,它是一种图形点阵液晶显示器, 主要由行驱动器/列驱动器及12864全点阵液晶显示器组成,可完成汉字 (1616)显示和 图形显示共有20个引脚8,其引脚名称及引脚编号的对应关系如图3.6,引脚功能 如表3.1所示。 圆盘 光敏三极管发光二极管 +5V P3.3 470 200 R1R2 P1.0 1 P1.1 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8 RST 9 P3.0/RX D 10 P3.1/TX D 11 P3.2/INT0 12 P3.3/INT1 13 P3.4/T0 14 P3.5/T1 15 P3.6/WR 16 P3.7/RD 17 XTAL2 18 XTAL1 19 GN D 20 P2.0 21 P2.1 22 P2.2 23 P2.3 24 P2.4 25 P2.5 26 P2.6 27 P2.7 28 RSEN 29 ALE 30 EA 31 P0.7 32 P0.6 33 P0.5 34 P0.4 35 P0.3 36 P0.2 37 P0.1 38 P0.0 39 VCC 40 U1 89S51 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 LCD PO T1 10K R7 10K R8 47 +5 C15 220F 1 2 3 4 5 6 7 8 9 RN 85K +5v +5v +5v P2.5 P2.6 P2.7 图3.6 12864LCD引脚分布 表3.1 12864液晶显示模块引脚功能 引脚符 号引 脚 功 能引脚符 号引 脚 功 能 1VSS电源地15CS1 CS1=1芯片选择左边64*64 点 2VDD电源正+5V16CS2 CS2=1芯片选择右边64*64 点 3VO液晶显示驱动电源17/RST复位(低电平有效) 4RS H:数据输入; L:指令码输入 18VEELCD驱动负电源 5 R/W H:数据读取; L:数据写入 19A背光电源(+) 6E 使能信号。 20K背光电源(-) 7-14DB0-DB7数据线有些型号的模块19、20脚为空脚 12864液晶显示器与单片机的连接电路如图3.7所示: 0123 4567 89 传传传传传 传传传传传传传传 H0 H1 H2 H3 L0 L1 L2 L3 图3.7 显示模块电路图 3.6 键盘电路设计 根据设计需求,本系统中使用了44键盘用以实现对P、I、D三个参数和电 机正反转的设定,以及对电机启动、停止、暂停、继续的控制,其电路原理图如图 4.8所示。图中L0L3为44键盘的列信号,H0H3为44键盘的行信号。 在本系统中,用P1.0P1.3连接键盘的列信号L0L3;用P0.4P0.7连接键盘 的行信号H0H39。按照要求设计操作面板如图3.8所示: 图3.8 键盘模块 键盘操作说明:在系统开始运行时,12864LCD将显示开机界面,若按下设 置键显示屏进入参数设置界面,此时按1、2、3、4进入相应参数的设置的状态, 输入相应的数字即可完成该参数的设置,待所有量设置完成后按正/反控制键设置正 反转,最后按启动键启动系统,在运行过程中可按下相应键对电机进行暂停、继续、 停止运行的控制。 0 )2() 1(2 )()()1()( unene neKneKneneK DIP t=0.5s? 计算r=n/120 计算v=(r/0.5)*60 返回 N Y 4 软件设计 4.1 算法实现 4.1.1 PID算法 本系统设计的核心算法为PID算法,它根据本次 采样的数据与设定值进行比较得出偏差,对偏差进)(ne 行P、I、D运算最终利用运算结果控制PWM脉冲的 占空比来实现对加在电机两端电压的调节10,进而控制 电机转速。其运算公式为: )(nu 因此要想实现PID控制在单片机就必须存在上述算法, 其程序流程如图4.1所示。 4.1.2 电机速度采集算法 本系统中电机速度采集是一个非常重要的部分,它 的精度直接影响到整个控制的精度。在设计中采用了光 电传感器做为测速装置,其计算公式为: v= r/min 60 tN n 从这里可以看出速度v的误差主要是由圆盘边缘上的凹槽数的多少决定的,为了减 少系统误差应尽量提高凹槽的数量,在本次设计中取凹槽数N为120,采样时间t 为0.5s,则速度计算具体程序流程如图4.2所示。 计算e(n) 计算KIe(n) 计算KP(e(n)- e(n-1) 计算KD(e(n)- 2e(n-1)+e(n-2) 计算u(n) 计算u(n) u(n-1) e(n-1)e(n-2) e(n)e(n-1) u(n)u(n-1) 返回 图4.1PID程序流程 开始 初始化 调用清屏子程序 开始界面显示 设置键 按下? 调用清屏子程序 设置界面显示 根据设置 计算参数 启动键 按下? 调用清屏子程序 电机运行 状态显示 PWM脉冲输出 Y N Y N 图4.2 测速程序流程 4.2 程序流程 4.2.1 主流程图 在一个完整的系统中,只有硬件部分是不能完成相应设计任务的,所以在该系 统中软件部分是非常重要的,按照要求和系统运行过程设计出主程序流程如图4.3 所示。 延时去抖动 P1口低四位置1 读P1口低四位 数据到KEYL KEYL、KEYH 相与为KEY P1口高四位置1 读P1口高四位 数据到KEYH KEY=0XEE ? KEY=0XEB ? KEY=0XED ? KEY=0XE7 ? KEY=0XDE ? KEY=0XDD ? KEY=0XDB ? KEY=0XD7 ? KEY=0XBD ? KEY=0XBE ? KEY=0XBB ? KEY=0XB7 ? KEY=0X7E ? KEY=0X7D ? KEY=0X7B ? KEY=0X77 ? 数字键0 数字键1 数字键2 数字键3 数字键4 数字键5 数字键6 数字键7 数字键8 数字键9 正/反功能键 暂停功能键 继续功能键 启动功能键 停止功能键 设置功能键 RETI Y N N N N N N N N N N N N N N N N Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y 图4.3 主程序流程 4.2.2 键盘程序程序流程 键盘中断程序是用来设在系统相应参数和控制系统进入相应的运行状态,其程 序流程图如图4.4所示。 脉冲计数时 间0.5s? 速度计算 PID运算 显示数据刷新 定时器T0赋初值 RETI 各变量重新赋值 Y N 图4.4 键盘程序流程 4.2.3 定时程序流程 在本系统中定时器T0中断子程序是用来控制电机运行时间和进行速度计算和 PID 运算,其程序流程如图4.5所示。 图4.5 定时程序流程 4.2.4 显示程序流程 显示模块是实现人机对话的重要部分,在这里选用12864LCD显示器可实现 对汉字和字符的显示,该显示器的引脚功能在上面已经做了说明,下面介绍 12864LCD的相关指令。 (1)读取状态字 当R/W=1,D/I=0时,在E信号为高的作用下,状态分别输出到数据总线上。 状态字是了解模块当前工作状态的唯一的信息渠道,在每次对模块操作之前,都要 读出状态字判断BUSY是否为“0” 。若不为“0” ,则计算机需要等待,直至 BUSY =0为止。 (2)显示开关设置 D/IR/WDB7DB6DB5DB4DB3DB2DB1DB0 000011111D D=1:开显示;D=0关显示。 (3)显示起始行设置 D/IR/WDB7DB6DB5DB4DB3DB2DB1DB0 0011显示起始行(063) 指令表中DB5DB0为显示起始行的地址,取值在03FH(164行) 范围内,它规定了显示屏上最顶一行所对应的显示存储器的行地址。 (4)页面地址设置 D/IR/WDB7DB6DB5DB4DB3DB2DB1DB0 0010111Page(07) 页面地址是DDRAM的行地址。8行为一页,DDRAM共64行即8页, DB2-DB0表示0-7页。 (5)列地址设置 D/IR/WDB7DB6DB5DB4DB3DB2DB1DB0 0001Yaddress(063) 列地址是DDRAM的列地址。共64列,DB5-DB0取不同值得到0- 3FH(1-64),代表某一页面上的某一单元地址,列地址计数器在每一次读写数 据后它将自动加一。 (6)写显示数据 D/IR/WDB7DB6DB5DB4DB3DB2DB1DB0 01BUSY0ONOFFRST0000 D/IR/WDB7DB6DB5DB4DB3DB2DB1DB0 10显 示 数 据 该操作将8位数据写入先前已确定的显示存储器的单元内。操作完成后列地址 计数器自动加一。 (7)读显示数据 D/IR/WDB7DB6DB5DB4DB3DB2DB1DB0 11显 示 数 据 该操作将12864模块中的DDRAM存储器对应单位中的内容读出,然后列地 址计数器自动加一。 根据上面指令结合系统要实行的功能,其显示子程序流程如图4.6所示。 图4.6 显示程序流程 4.3 系统Proteus仿真 4.3.1 Proteus软件简介 Proteus是英国Labcenter electronics公司研发的EDA设计软件, 是一个 基于ProSPICE混合模型仿真器的,完整的嵌入式系统软、硬件设计仿真平台。 Proteus不仅可以做数字电路、模拟电路、数模混合电路的仿真,还可进行多种 初始化 循环次数 j2 ? 写入数据字 节数i16? 设置显示起始 页、起始列 调用写入数 据子程序 j=j+1;i=0 i=i+1 RETI Y N N Y 初始化 循环次数 j2 ? 写入数据字 节数i8? 设置显示起始 页、起始列 调用写入数 据子程序 j=j+1;i=0 i=i+1 RETI Y N N Y a) 写入16*16汉字程序流程b)写入8*16数字 CPU的仿真,涵盖了51、PIC、AVR、HC11、ARM等处理器,真正实现了在 计算机从原理设计、电路分析、系统仿真、测试到PCB板完整的电子设计,实现 了从 概念到产品的全过程。以下为本系统在Protues中的仿真 流程: (1)新建文件:打开Protues点File,在弹出的下拉菜单中选择New Design,在弹出的图幅选择对话框中选Default。 (2)设置编辑环境:按上述的方法对Protues的设计环境进行设置。 (3)元器件选取:按设计要求,在对象选择窗口中点P,弹出Pickdevices对 话框,在Keywords中填写要选择的元 器件,然后在右边对话框中选中要选的元 器件,则元器件列在对象选择的窗口中如 图4.7所示。 本设计所需选用的元器件如下: AT89C51:单片机 RES、RX8、RESPACK-8:电阻、 排阻、上拉电阻 图4.7 Proteus元器件选取界面 CRYSTAL:晶振 CAP、CAP-ELEC:电容、电解电容 7805、7812:5V、12V三端稳压块 IN4007:二极管 AMPIRE128 64:液晶显示器 OPTOCUPLER-NPN:光电耦合器 BOUTTON:按键 MOTOR-ENCODER:直流电机 放置元器件、放置电源和地、连线,得到附录所示的系统整体电路,最后进 行电气检测。 (4)程序编译 点菜单SourceAdd/Remove sou rce Files”在出现的对话框如图4.8中, 选择ASEM51编辑器,将上面的汇编源 程序SEKED.ASM添加。再点菜单 SourceBuild ALL编译汇编源程序,生成目标代码文件SWLED.HEX。 (5)程序加载 图
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年城市公共汽电车客运服务合作协议书
- 2024年羟胺项目发展计划
- 小学一年级语文课后反思(10篇)
- 2024年H-系列卷材涂料项目合作计划书
- 小学二年级写家乡山的作文10篇
- 第2课《济南的冬天》教学设计 统编版语文七年级上册
- Tecnazene-Standard-生命科学试剂-MCE
- Swertianolin-Standard-生命科学试剂-MCE
- Sulfacetamide-Sodium-Standard-生命科学试剂-MCE
- STING-agonist-38-生命科学试剂-MCE
- 幼儿园实习生总结会方案
- 2024新人教版七年级上册英语期中作文预测及范文
- 湘教版(2024新版)七年级上册数学期中考试模拟测试卷(含答案)
- 携程在线能力测评真题
- 2024年中国移动通信集团甘肃限公司校园招聘290人高频难、易错点500题模拟试题附带答案详解
- 2024中国石油春季招聘(8000人)高频难、易错点500题模拟试题附带答案详解
- 2024中国交通建设集团限公司招聘200人高频难、易错点500题模拟试题附带答案详解
- 退化林修复投标方案(技术方案)
- 基层医疗机构中医馆建设工作计划
- 2024-2030年全球及中国铝合金汽车轮毂行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告
- 《中国心力衰竭诊断和治疗指南2024》解读
评论
0/150
提交评论