版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、. z.基于PID电加热炉温度控制系统设计摘要电加热炉随着科学技术的开展和工业生产水平的提高,已经在冶金、化工、机械等各类工业控制中得到了广泛应用,并且在国民经济中占有举足轻重的地位。对于这样一个具有非线性、大滞后、大惯性、时变性、升温单向性等特点的控制对象,很难用数学方法建立准确的数学模型,因此用传统的控制理论和方法很难到达好的控制效果。单片机以其高可靠性、高性能价格比、控制方便简单和灵活性大等优点,在工业控制系统、智能化仪器仪表等诸多领域得到广泛应用。采用单片机进展炉温控制,可以提高控制质量和自动化水平。一、 绪论在本控制对象电阻加热炉功率为8可W,由220V交流电供电,采用双向可控硅进展
2、控制。本设计针对一个温度区进展温度控制,要求控制温度*围50350C,保温阶段温度控制精度为正负1度。选择适宜的传感器,计算机输出信号经转换后通过双向可控硅控制器控制加热电阻两端的电压。其对象问温控数学模型为:其中:时间常数Td=350秒,放大系数Kd=50,滞后时间=10秒,控制算法选用改PID控制实时温度采样实时温度采样显示设定值单片机设定温度电源控制电阻加热炉图1.1系统总体构造图二、控制系统的建模和数字控制器设计输入并采样r(K)、c(K)开场输入并采样r(K)、c(K)开场计算偏差eK=r(K)-c(K)计算偏差eK=r(K)-c(K)计算计算 u(k)=qe(k)+qe(k-1)+
3、qe(k-2)存存u(k)以备输出参数序号e(k-1)参数序号e(k-1)e(k-2)调整 e(k)e(k-1)返回返回图2 PID算法流程图数字PID控制算法 PID控制器是通过计算机PID控制算法程序实现的。计算机直接数字控制系统大多数是采样-数据控制系统。进入计算机的连续-时间信号,必须经过采样和整量化后,变成数字量,方能进入计算机的存贮器和存放器,而在数字计算机中的计算和处理,不管是积分还是微分,只能用数值计算去逼近。受控对象受控对象PID位置算法reuy+-图2.1位置PID控制算法简化示意图 在数字计算机中,PID控制规律的实现,也必须用数值逼近的方法。当采样周期相当短时,用求和代
4、替积分,用差商代替微商,使PID算法离散化,将描述连续时间PID算法的微分方程,变为描述离散-时间PID算法的差分方程。 用矩形积分时,有 1 用差分代替微分2 由上式得 (3) 式中 u0控制量的基值,即k=0时的控制;u(k)第k个采样时刻的控制;KP比例放大系数;KI积分放大系数;KD微分放大系数;TS采样周期。 式3是数字PID算法的非递推形式,称全量算法。算法中,为了求和,必须将系统偏差的全部过去值e(j)j=1,2,3,. ,k都存储起来。这种算法得出控制量的全量输出u(k),是控制量的绝对数值。在控制系统中,这种控制量确定了执行机构的位置。当执行机构需要的不是控制量的绝对值,而是
5、控制量的增量例如去驱动步进电动机时,需要用PID的增量算法。yyuerPID增量算法受控对象-+步进电机u由位置算法求出 再求出 两式相减,得出控制量的增量算法 (4) 式(4)称为增量式PID算法。对增量式PID算法4归并后,得 (5) 从式5看出,数字增量式PID算法,只要贮存最近的三个误差采样值e(k),e(k-1),e(k-2)就足够了。如果计算机系统采用恒定的采样周期T,一旦确定q,q,q只要使用前后测量三次的偏差值,就可以由上式求出控制量。typedefstructPIDIntSetPoint;/设定目标DesiredValueLongSumError;/误差累计doublepro
6、potion;/比例常数PropotionConstDoubleintegral;/积分常数IntegralConstDoublederivative;/微分常数DerivativeConstintLastError;/Error-1IntPrevError;/Error-2PID;ststicPIDsPID;/*InitializePIDStructurePID参数初始化*/voidIncPIDInit(void)sptr-SumError=0;sptr-LastError=0;/Error-1sptr-PrevError=0;/Error-2sptr-Propotion=0;/比例常数Pr
7、opotionalConstsptr-integral=0;/积分常数IntegralConstsptr-derivative=0;/微分常数DerivativeConstsptr-SetPoint=0;/*增量式PID计算局部*/intIncPIDCalc(intNe*tPoint)registerintierror,iIncpid;/当前误差ierror=sptr-SetPoint-Ne*tPoint;/增量计算三硬件的设计和实现3.1AT89C51系列根本组成及特性AT89C51是一种带4K字节FLASH存储器FPEROMFlash Programmable and Erasable R
8、ead Only Memory的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。图3.1AT89C51管脚管脚说明:VCC:供电电压。 GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进展校验时,P0输出原码,此时P0外部必须接上拉电阻。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4T
9、TL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为低八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写1时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进展存取时,P2口输出地址的高八位。在给出地址1时,它利用内部上拉优势,当对外部八位地址数据存储器进展读写时,P2口输出其特殊功能存放器的内容
10、。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入1后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流ILL这是由于上拉的缘故。 P3口也可作为AT89C51的一些特殊功能口,如下表所示: 口管脚备选功能:P3.0 R*D串行输入口 P3.1 T*D串行输出口 P3.2 /INT0外部中断0 P3.3 /INT1外部中断1 P3.4 T0记时器0外部输入 P3.5 T1记时器1外部输入 P3.6 /WR外部数据存储器写选通 P3.7 /RD外部数据存
11、储器读选通 P3口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想制止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOV*,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处
12、理器在外部执行状态ALE制止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器0000H-FFFFH,不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源VPP。 3.2键盘模块在本次设计当中,输入设备采用4*4矩阵键盘。当设定键按下时触发键盘中断效劳程序,由程序程控扫描法确定那个键按下并执行
13、相应的动作。程控扫描的任务是:(1)首先判断是否有键按下。方法:使所有的行输出均为低电平,然后从端口A读入列值。如果没有键按下,则读人值为FFH如果有链按下则不为FFH。(2)去除键抖动。方法:延时1020 ms,再一次判断有无键按下,如果此时仍有键按下,则认为键盘上确实有键处于稳定闭合期。(3)假设有键闭合,则求出闭合键的键值。方法:对键盘逐行扫描。程序中需等闭合键释放后才对其进展处理。3.3设计输入输出通道输入通道:因为所控的实际温度在50 350,即35050300所以选用8位A/D转换器,其分辨率约为1.5/字,再加放大器偏置措施实现。通过调整放大器的零点来实现偏置这里采用一般中速芯片
14、ADC0809。ADC0809是带有8位A/D转换器,8路多路开关以及微型计算机兼容的控制逻辑的CMOS组件,其转换方法为逐次逼近型。8路的模拟开关由地址锁存器和译码器控制,可以在8个通道中任意访问一个通道的模拟信号。这种器件无需进展零位和满量程调整。由于多路开关的地址输入局部能够进展锁存和译码,而且其三态TTL输出也可以锁存,所以它易于与微型计算机接口。其具有较高的转换速度和精度,受温度影响较小,能较长时间保证精度,重现性好,功耗较低,故用于过程控制是比拟理想的器件。ADC0809应用接线图输出通道:据其实际情况,D/A转换器的位数可低于A/D转换器的位数,因为一般控制系统对输出通道分辨率的
15、要求比输入通道的低,所以这里采用常用的DAC0832芯片。DAC0832是8位D/A转换器,与微处理器完全兼容。期间采用先进的CMOS工艺,因此功耗低,输出漏电流误差较小。它的内部具有两级输入数据缓冲器和一个R-2RT型电阻网络,因DAC0832电流输出型D/A转换芯片,为了取得电压输出,需在电流输出端接运算放大器,Rf为为运算放大器的反应电阻端。双极性电压输出的D/A转换电路通常采用偏移二进制码、补码二进制码和符号一数值编码。只要在单极性电压输出的根底上再加一级电压放大器,并配以相关电阻网络就可以构成双极性电压输出。在上图中,运算放大器A2的作用是把运算放大器A1的单向输出电压转变为双向输出
16、。3.4电源局部本系统所需电源有220V交流市电、直流5V电压和低压交流电,故需要变压器、整流装置和稳压芯片等组成电源电路。电源变压器是将交流电网220V的电压变为所需要的电压值,然后通过整流电路将交流电压变为脉动的直流电压。由于此脉动的直流电压还含有较大的纹波,必须通过滤波电路加以滤除,从而得到平滑的直流电压。但这样的电压还随电网电压波动一般有+-10%左右的波动、负载和温度的变化而变化。因而在整流、滤波电路之后,还需要接稳压电路。稳压电路的作用是当电网电压波动、负载和温度变化时,维持输出直流电压稳定。整流装置采用二极管桥式整流,稳压芯片采用78L05,配合电容将电压稳定在5V,供控制电路、
17、测量电路和驱动执行电路中弱电局部使用。除此之外,220V交流市电还是加热电阻两端的电压,通过控制双向可控硅的导通与截止来控制加热电阻的功率。低压交流电即变压器二次侧的电压,通过过零检测电路检测交流电的过零点,送入单片机后,由控制程序决定双向可控硅的导通角,以到达控制加热电阻功率的目的。四、软件设计4.1系统主程序本系统的应用程序主要由主程序、中断效劳程序和子程序组成。主程序的任务是对系统进展初始化,实现参数输入,并控制电加热炉的正常运行。主程序主要由系统初始化、数据采集及处理、智能推理等局部组成。系统初始化包括设置栈底、工作存放器组、控制量的初始值、采样周期、中断方式和状态、定时器的工作方式以
18、及8255的初始化、MA*1232的初始化等。数据采集及处理主要包括实时采集电加热炉的炉温信号,计算出实际炉温与理想值的差值以及温差的变化率,并对炉温信号进展滤波和限幅处理。开场开场系统的初始化温度数据采集及处理温度值显示计算温差ek和温差变化率智能控制算法程序控制输出求出输出控制量完毕NY图4.1系统主程序 4.2模数转换模块ADC0809是一个典型的逐次逼近型8位A/D转换器。它由8路模拟开关、8位A/D转换器、三态输出锁存器及地址锁存译码器等组成。它允许8路模拟量分时输入,转换后的数字量输出是三态的总线型输出,可以直接与单片机数据总线连接。ADC0809采用+5V电源供电,外接工作时钟。
19、当典型工作时钟为500KHz时,转换时间约为128us.时钟信号:由于ADC0809无片选端,因此电路增加了或非门74LS02,以便对ADC0809进展读/写控制。单片机采用6MHz/s的晶振,ALE输出66MHz/s时钟信号,经74LS74触发器2分频,得到500KHz的时钟信号,与ADC0809的时钟端CLK相连。通道选择:三位通道选择端ADDA、ADDB、ADDC与数据线P1口的低三位P1.0、P1.1、P1.2相连,用数据线进展通道选择,由P1.0、P1.1、P1.2三位决定选择那一通道。ADC0809启动:ADC0809的启动端START、地址所存端ALE均为高电平有效。将START
20、和ALE连在一起,与74LS02的输出端相连。或非门74LS02的两个输入端/WR和P3.5均为低电平时,其输出为高电平,执行外部I/O口的写操。开场开场将PSW压栈调显示程序读A/D结果置位状态位F0置位状态位F0关闭报警F0是否等于零调PID控制算法程序报警子程序PSW出栈并返回输出控制量启动定时器T1溢出标志TF1是否为零设定值与AD结果比拟交流电是否过零结果=0结果or设定值的20%-20%结果20%F0=0F0=0NYNY 图A/D转换完毕中断效劳程序流程图按键检测与处理流程图如图所示是否有按键N是否有按键Y延时延时10-20ms是否有按键是否有按键N按键已释放按键已释放NY获得键值
21、,键处获得键值,键处完毕完毕图按键检测与处理流程图编写D/A转换控制程序:DAC0832实现D/A转换,可以采用下面程序段。设定要转换的数据放在1000H单元中。MOVB*,1000HMOVAL,B*取转换资料MOVD*,PORTAPORTA为D/A转换端口地址OUTD*,AL4.3LED显示模块图4.3显示子程序4.4数字控制算法子程序流程图4.5报警模块根据设计要求,在保温阶段,温度控制精度为正负1度,故当温度下降或上升2度时为故障状态,需要报警提醒。所以在电路设计上应用了蜂鸣器和发光二极管,系统正常运行时绿色发光二极管点亮,当出现故障时红色发光二极管点亮并且蜂鸣器鸣叫,提醒操作人员注意。
22、报警状态可通过按键复位和系统恢复正常后自动复位开场开场置报警位P3.4子程序返回去除报警状态位F0图4.4报警子程序4.6程序清单 主程序ORG 0000HAJMP MAINORG 0003HAJMP KEYSORG 000BHAJMP PIT0ORG 001BHAJMP PIT1 ;中断入口及优先级MAIN: MOV SP,#00H CLR 5FH :清上下限越限标志 MOV A,#00HMOV R7,#09HMOV R0,#28HLP1:MOV R0,AINC R0 DJNZ R7,LP1MOV R7,#06HMOV R0,#39HLP2:MOV R0,AINC R0DJNZ R7,LP2
23、MOV R7,#06HMOV RO,#50HLP3:MOV R0,AINC R0DINZ R7,LP3 ;清显示缓冲区MOV 33H,#00HMOV 34H,#00H ;赋KP上下字节MOV 35H,#00HMOV 36H,#00H ; 赋KI上下字节MOV 37H,#00H MOV 38H,#00H ; 赋KD上下字节MOV 42H,#00HMOV 43H,#00H ;赋K上下字节MOV TMOD,#56H ;T0方式2,T1方式1计数MOV TLO,#06HMOV THO,#06H MOV 25H,#163H ;设定值默认值350SETB TR0 ;键盘高优先级SETB ET0SETBE*
24、0SETB EA ;开键盘T0。T1中断LOOP:MOV R0,#56H MOV R1,#55H LCALLSCACOV ;标度转化 MOV R0,#53H LCALLDIR NOP LCALLDLY10MS NOP LCALLDLY10MS AJMP LOOP;等中断 键盘子程序KEYS:CLR E*0 CLR EA PUSH PSW PUSH ACC ;关中断 LCALLDLY10MS ;消抖CC: P3.2 AASETB 5DH ;置显示设定值温度值标志MOV A,25H ;取运算位的值MOV B,#10H ;BCD码转化DIV A BMOV 52H,AMOV A, BMOV 51H,
25、AMOV R0,#50HLCALL DIR ;显示设定温度NOPLCALLDLY10MSNOPLCALL DLY10MS P1.7 ,BBMOV R1,#25HLCALL DAAD1NOP LCALL DLY10MS AJMP CCBB: P1.6 CCMOV R1,#25HLCALL DEEC1NOPLCALL DLY10MSAJMP CCAA: POP ACCPOP PSWSETB E*0SETB EA ;出栈RETI 显示子程序DIR: MOV SCON ,#00H ;置串行口移位存放器状态SETB P1.4 ;开显示 5DH,DL1 ;显示设定温度DL2: MOV DPTR,#SEGT
26、DL0: MOV A,R0MOVC A,A+DPTRMOV SBUF ,ALOOP1: JNB TI, LOOP1 CLR TIINC R0MOV A,R0MOVC A,A+DPTRANL A, #7FH ;使数带小数点MOV SBUF ,ALOOP2: JNB TI,LOOP2CLR TIINC R0MOV A,R0MOVC A,A+DPTRMOV SBUF,ALOOP3: JNB TI,LOOP3CLR TICLR P1.4CLR 5DHRETDL1: MOV 50H,#0AH ;小数位黑屏 AJMP DL2SEGT: DB 0C0H ,0F9H,0A4H,0B0H,99H,92H,82H
27、,0F8H,80H,90H,0FFH T0中断子程序PTT0: CLR EAPUSH ACCPUSH PSWPUAH DPLPUSH DPHSETB EA ;压栈后开中断响应键盘PPP: LCALLSMAP ;采样数据LCALL FILTER ;数字滤波MOV A,2AH ;取采样值CJNE A,#07H,AAA ;下限48比拟AJMP BBBAAA: JC CCC ;小于48度转CJNEA,#0FEH ,DDD ;上限355比拟AJMP BBB ;转至48355正常*围处理DDD: JC BBCLR P1.2 ;大于355黄灯亮SETB 5EHCLR P1.1 ;置标志 启动风扇AJMP P
28、PPCCC: CLR P1.3 ;小于48红灯亮SETB 5FHBBB: CLR P1.0 ;置标志启动电炉AJMPPPPSETB P1.0SETB P1.1SETB P1.2SETB P1.3CLR 5EHCLR 5FH ;50350之间正常LCALL PIDJNB 20H,EEF ;设定温度小于实际值转到风扇MOV A,29HLCALLFFFCLR P1.0LOOP10: MOV R0,#56H ;存放相乘结果的首址MOV R1,#55H ;赋显示缓冲区最高位地址LCALL SCACOV ;标度转化 MOV R0,#53H;;赋显示首址 CLR DIR D5H,LOOP10 ;等待T1中断 CLR EA POP DPH POP DPL POP PSWSETB EAPOP ACCRETIEEE: MOV A,28H ;风扇处理 LCALL FFF CLR P1.1AJMP LOOP10FFF: CRL A ;根据PID结果计算T1初值 INC A MOV TL1,A MOV TH1,#0FFHSETB PI1 SETB TR1 SETB ET1 RET采样子程序SWAP: MOV R0,#20H MOV R1,#03HSAW1: MOV DPTR,#7FF8H MOV* D
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度供应链管理合同:某制造企业与供应商就供应链管理达成的合作协议
- 瓷砖产品定制生产合同2024
- 2024版无人机技术研发与购销合同
- 电商平台安全检测与合规认证服务合同3篇
- 二零二四年度光伏发电项目投资合同标的及投资金额具体说明2篇
- 二零二四年度畜牧养殖业养殖饲料采购与供应合同
- 二零二四年健身教练个人劳动合同
- 二零二四年度设备采购合同标的为高端计算机设备
- 二零二四年度亚洲区域网络安全保障合作合同
- 二零二四年企业咨询服务框架协议
- 2024年安全员C证考试题库附答案
- 医学课件麻醉与血液
- 《进一步规范管理燃煤自备电厂工作方案》发改体改〔2021〕1624号
- 苏教版五上复式统计表课件
- 2024至2030年中国防爆配电箱行业市场发展现状及前景趋势与投资战略研究报告
- 第13课 清前中期的兴盛与危机【课件】-中职高一上学期高教版2023
- 2024年山东省高考物理试卷(真题+答案)
- 急救在身边智慧树知到期末考试答案章节答案2024年山东第一医科大学
- 2024企业集采业务交易平台解决方案
- 道德与法治(新疆卷)(全解全析)-2024年中考考前押题密卷
- 酒店网络安全管理制度
评论
0/150
提交评论