目 录 1
一、绪论 3
1.1 技术指标 4
1.2 控制方案 4
二、 硬件部分设计 4
2.1 三菱PLC电路设计 5
1、 中央处理器CPU 5
2、 三菱PLC引脚功能 6
3、 三菱PLC的存储器结构 7
4、三菱PLC的并行I/O端口 7
5、三菱PLC时钟电路及时序 7
6、复位电路 8
2.2 传感器电路设计 8
1、传感器概述 8
2、传感器的基本特性 9
3、热电阻的测量电路及应用 10
2.3 A/D转换电路设计 11
1、逐次逼近型A/D转换器ADC0809 11
2、三菱PLC与ADC0809接口 12
- 8路模拟通道选择 12
- 数据的传输方式 12
2.4 放大器电路设计 13
1、交流放大器电路 13
2、直流放大器电路 16
3、运算放大器电路 16
4、集成运算放大器概述 16
2.5 键盘及显示电路的设计 16
1、键盘接口电路 16
2、LED显示器接口电路 18
2.6 抗干扰电路设计 19
1、电磁干扰的形成因素 19
2、干扰的分类 19
3、三菱PLC应用系统电磁干扰控制的一般方法 19
三、软件部分设计 20
3.1 工作流程 20
3.2 功能模块 21
3.3 资源分配 21
3.4 功能软件设计 21
1、温度控制模块 21
2、 温度检测模块 22
3、 温度越限报警模块 23
4、 键盘管理模块 24
5、显示模块 27
6、温度检测模块 29
7、主程序和中断服务子程序 30
四、结论 32
4.1 本次温度控制系统设计中存在的问题及其解决方法 32
4.2 三菱PLC控制系统的发展方向 32
谢辞 33
参考文献 34
一、绪论
三菱PLC出现的历史并不长,但发展迅猛。自1975年美国德克斯仪器公司首次推出8位三菱PLCTMS-1000后才开始快速发展。1976年9月,美国Intel公司首次推出MCS-48系列8位三菱PLC以后,三菱PLC正在快速发展着,这几年,许多计算机厂家也都开始研制并生产更高性能的32位三菱PLC,所以如今,三菱PLC的发展十分快,品种也很多。其中最常用的主要有:AT89系列三菱PLC、AVR三菱PLCMotorola公司的M68HC08系列三菱PLC以及PIC三菱PLC。随着社会的发展,三菱PLC的具有体积小,在设备中不占太大的空间,可靠性高,稳定,使用起来也比较方便等优质特点。
根据温度控制的特点,所以本次设计的控制狠心是三菱PLC,控制算法使用数字PID的算法从而实现了对电烤箱的温度控制。通过本次设计进一步详细说明三菱PLC控制系统在社会生活中的应用。为以后进一步应用三菱PLC系统提供帮助。温度控制是工业生产过程中经常遇到的过程控制。有的过程中,温度对他的影响直接会影响所生产产品的质量问题,因此,设计出一个能够控制温度的系统是非常有必要的,他能保证生产业的产品质量。
根据温度变化快慢,并且控制精度不易掌握等特点,本文电烤箱的温度控制为模型,设计了以三菱PLC为检测控制中心的温度控制系统。
1.1技术指标
电烤箱的具体指标如下:
(1) 电烤箱的加热电炉位2千瓦,最高的加热温度为500℃。
(2) 电烤箱的箱内温度是可以预先设置的,开始运作是的过程可以进行控制并保持恒温,温度的误差控制在≤±2℃。
(3) 预先设置时可以显示我们对其设定的温度,烤干时也会实时的显示温度,温度显示精确到1℃。
(4) 温度超出预置温度±5℃时发声报警。
(5) 对升降温过程的线性没有要求。
1.2 控制方案
产品的过程不同,对温度控制的准确性上也有些不一样,对控制的计算方法上也有不同。从温度控制系统在动态特征上的角度来看,他还是处于比较滞后的阶段。系统的设计精度和温度控制系统的准确性比较高的时候,这种算法就能基本实现控制温度。
本系统是一个典型的闭环控制系统。从技术指标可以看出,该系统对控制精度要求低,对温度的上下改变过程没有特别的要求。因此,系统运用的开关设计是最普通的,也就是当温度达到设定好的温度值时,电炉就会接通,温度下降到一定值时,电路便会感知到温度下降然后开始升温加热,确保保持恒温状态。
二、硬件部分设计
该电烤箱系统在硬件部分有三菱PLC电路,A / D转换电路,放大电路,传感器电路,键盘和显示电路。以上每个部分的关系如图1所示。
图1 电烤箱温度控制系统结构
2.1 三菱PLC电路设计
随着社会的发展,三菱PLC以其体积小、可靠性高、使用方便等特点在社会生活中达到广泛应用。根据温度控制的特点,本次设计采用三菱PLC。
1、中央处理器CPU
三菱PLC的核心是中央处理器CPU,也是控制指挥中心,和一般的CPU差不多。三菱PLC内部CPU包括控制器和运算器。如图2三菱PLC内部结构简化框图。
(1)运算器
运算器电路中的算术逻辑单元ALU,不但可不进行加减法,乘法和8位二进制除法等通用算法的运算,另外它还能对8位变量执行逻辑比如“和”、“或”之类的逻辑等进行所谓的逻辑运算。累加器ACC(称为累加器A)是一个8位寄存器,是CPU中最常用的寄存器。特别存储操作数或操作结果。
①程序状态寄存器
程序状态寄存器是一个8位的状态寄存器。它的作用就是将标志寄存器储存起来,他进行的指令如果对程序的查询之后,存储状态的PSW位的状态一般都是在指令的执行期间自动设置的。根据用户的需求他可以进行精确的修改,状态寄存器配备了进位标志CY,辅助进位标志(或半进位)AC,工作寄存器组选择位RS1和RS0,溢出标志位OV,以及一个奇偶标志位P。
② 控制器
控制部件是三菱PLC的神经中枢。它首先通过发出CPU的基于主振荡频率的定时解码该指令,然后发出各种控制信号。完成一系列微操作的时序控制。用来协调三菱PLC各部分正常工作。
图2 三菱PLC内部结构简化框图
2、三菱PLC引脚功能
(1)主电源引脚
主电源引脚一共有两根:分别是VCC接+5V电源正端和VSS接+5V电源地端。
(2)外接晶体引脚两根
一根是XTAL1,用来连接外部石英体和微调电源的一端,第二根是XTAL2,用来连接外部晶体和微调电容的另一端。
图3 三菱PLC引脚图
(3)控制线
控制线共四根。
①ALE/PROG 是将地址锁住保存的有效信号输出率。
②PSEN 片外程序存储器在读取并选择通信号输出端低电平时 有效。
③RST/VPD 复位信号备用电源输入信号。
④EA/VPP 片外程序存储器选用端。
3、三菱PLC的存储器结构
三菱PLC的存储器的结构,我们将它理解为物理结构,他分为四中储存器,分别是片内数据存储器、片外数据存储器、片内程序存储器和片外程序存储器。
4、三菱PLC的并行I/O端口
各端口的功能不同,结构上也有差异,但是每个端口的8位结构是完全相同的。如图4 I/O口位结构图所示。
图4 I/O口位结构图
5、三菱PLC时钟电路及时序
(1)时钟电路
三菱PLC的时钟信号的生产方式,一共有两种,这两种方式分别是内部和外部。具体图5、6所示。
图5 内部方式时钟电路 图6 外部方式时钟电路
6、复位电路
复位是一种使三菱PLC中每个寄存器的值更改为初始值状态的方法。时钟电路工作后,三菱PLC可以继续在RST / VPD端给出高水平的两个机器周期。重置操作。复位分为两种模式:上电复位和按钮手动复位。三菱PLC复位状态如下表所示:
表1 三菱PLC复位状态
寄存器 复位状态 寄存器 复位状态
PC 0000H ACC 00H
B 00H PSW 00H
SP 07H DPTR 0000H
P0-P1 OFFH IP XXX00000B
IE 0XX00000B TMOD 00H
TCON 00H TL0、TL1 00H
TH0、TH1 00H SCON 00H
SBUF 不定 PCON 0XXX0000B
2.2 传感器电路设计
随着新技术革命的到来,世界已经开始进入信息时代。在使用信息的过程中,首先要解决的是获取准确可靠的信息。传感器是获取自然,生产和科学研究领域信息的主要途径和方法。
1、传感器概述
根据国家标准,传感器被定义为感测指定测量值并根据某一个定律,我们将其转换为一种可以将信号输出的设备系统。传感器的组成一般是有三种,分别是敏感元件,转换元件和转换电路。他的组成结构框图如图7所示。
图7 传感器组成框图
敏感元件,它可以直接感受到被测量并输出与被测量,然后确定两者之间的关系。
转换元件,它是用来将敏感元件输入的,它可以直接将输入的数据转换为电路参数,我们可以根据上述的电路参数连接到转换电路,然后就可以转换成功率再输出。
物理传感器的使用,主要是利用一些变换元件的物理性质,和一些使用的功能材料的特殊性能制作而成的一种传感器。
化学传感器的使用,主要是利用的工作原理是化学中的电化反应,他将无机和有机的化学物质成分的浓度等,转换为电信号。
生物传感器主要是一种利用生物活性物质的选择性,从而来识别并且判定生物化学物质的传感器。
由于当今社会的科技发展十分迅速,从而也推动了传感器技术能够良好快速的发展。目前,传感器技术的主要研发方向包括了新传感器,开发新的材料,采集新的工艺,将多功能化和智能化的技术相结合。
2、传感器的基本特性
(1)传感器的技术性能指标及改善性能途径
(一)传感器的技术性能指标
①传感器的动态性能指标
A.量程指标:包括测量范围、过载能力等。
B.灵敏度指标:包括灵敏度、分辨力、满量程输出、输出输入阻抗等。
C.精度有关指标:包括精度(误差)、重复性、线性、滞后、灵敏度误差、阀值稳定性、漂移等。
D.动态性能指标:包括固有频率阻尼系数、时间常数、频响范围、频率特性、临界频率、临界速度、稳定时间等。
②环境参数指标
A.温度指标包括工作温度范围、温度误差、温度漂移、温度系数、热滞后等。
B.抗冲击振动指标:包括各向冲击振动的频率、振幅、加速度、冲击振动引入的误差等。
C.其他环境参数:包括抗潮湿、抗介质腐蚀能力、抗电磁场干扰能力等
③可靠性指标:
包括工作寿命,平均故障时间,保险期、疲劳性能、绝缘电阻耐压弧性能等
④其他指标
A.使用方面:包括供电方式,供电的方式也就是直流电、交流电、频率还有波形等,另外还有电压幅度与稳定性功能以及各项分布参数等。
B.结构方面:名手外形尺寸质量、壳体材质、结构特点等
C.要装连接方面:包括安装方式、馈成、电缆等
(二)改善传感器性能的技术途经
A.差动技术 B.平均技术 C.零示法和微差法 D.闭环技术 E.屏蔽隔离子干扰抑制 F.补偿修正技术 G.稳定性处理。
根据本次课题设计的要求,我选用了热电式传感器来进行研究。将测量的变化转换成热电动势的传感器称为热电传感器或热电传感器,其可以将温度和温度相关的信号转换成电量输出,具有热阻的热电型传感器,热敏电阻和热电效应。
我们在平常的测量范围都是在-20℃到150℃之间的,随着技术的不断创新与发展,其承受温度的范围也在不断扩大中,最低温可以测量到1K3K,高温已经可以测量到1000.C1300.C。
热电阻传感器的主要优点是:
A.热电阻的测量精度高,所以所用电阻的温度特性也要相对稳定,不会有热电偶参比端误差的问题出现;B.测量的范围比较宽,特别是在低温方面,就很适合在自动测量或者距离比较远的测量中使用。
我们常用的热电阴材料有铂、铜、镍、铁等。
3、热电阻的测量电路及应用
热阻通常用于进入桥。引线有两种,三线和四线两种版本。当采用两种浅连接方法(例如图8中所示的Rt的连接)时,导线连接到桥的一个臂。当温度由于环境温度或电流而变化时,产生额外的电阻。导致测量误差,因此当热阻值较小时,通常使用三线和四线连接来消除接线电阻和引线电阻的影响。
所谓三线式接法,就是将具有相同温度特性的两条导成互相连接于相邻两个桥臂上,这个时候,因为附加电阻引起的电阻变化是相同的,所以我们根据电桥的特性,电桥的输出就会被互相抵消掉。
图8 热电阻传感器的接线方式
四线式接法R2=R3为固定电阻,R1可调,热电阻Rt,通过电阻为r1、r2、r3、r4的四要导线和电桥连接,r1、r4分别串联在相邻的两桥臂内,r2、r3与电源去路串联,将开关接通,调节R1使电桥平衡,则
R1+r1=Rt+r4
再将开关接通B,重新调整R1,使电桥达到新的平衡,则
R1’+r1=Rt+r1
两式相加得:Rt=
四线式测量方法比较麻烦,一般用于精度要求较高的场合。
2.3 A/D转换电路设计
1、逐次逼近型A/D转换器ADC0809
(1)ADC0809的引脚及各引脚功能
图8 ADC0809内部逻辑结构图
ADC0809的引脚入各引脚双引直插式封装,其引脚排列见图10所示
2、三菱PLC与ADC0809接口
ADC0809与AT89051三菱PLC边接如图11所示,电路连接主要涉及两个问题,一是不是路模拟信号通道选择,二是A/D转换完成后数据的传送
1. 8路模拟通道选择
对系统来说,地址锁存器是一个输出口,为了把三位地址写入,还要提供口地址。
2. 数据的传输方式
A.定时传输方式 B.查询方式 C.中断方式
图11 ADC0809与三菱PLC的连接
2.4 放大器电路设计
传感器是将待测的物理量或化学量转换成电信号输出。根据具体情况可采用分立元件放大器和集成元件放大器两种。
1、交流放大器电路
(1)共发射极放大电路
①工作点不稳定状态
静态工作点 Ib≈,Ic=βIb,
Uce=Ec-IcRc
交流等效电路 R’fz=Rc//Rfz
图12 工作点不稳定状态放大电路
输入电阻 rsr≈rbe(当rbe〈〈Rb时)
输出电阻 rsc≈≈Rce
放大倍数 K’=
此放大器特点:放大倍数大。
②工作点稳定状态
a.静态工作点 由(-Ube1)≈
交流等效电路 R’fz1=Rc1//rbe,R’fz2=Rc2//Rfz
输入电阻 rsr≈rbe2(当rbe1〈〈R1//R2时)
输出电阻 rsc≈Rc
放大倍数 K’=≈β1β2 (当RC1>>rb2时)
此放大电路特点 放大倍数大,工作点稳定
b.静态工作点 Ub≈,Ua=Ub-Ube,
Ie=,Uce≈Ec-Ic(Re+Rc)
交流等效电路 R’fz=Rc//Rfz
输入电阻 rsr=rbe(当rbe〈〈Rb1//Rb2)
输出电阻 rsc≈Rc
放大倍数 K’=
图13 工作点稳定状态a类放大器电路
此放大电路特点 rsr较大,|K|〉1且与晶体管参数几乎无关。
图14 工作点稳定状态b类放大器电路
c.静态工作点 Ub 、Uc同左,但Ie=,Uce≈Ec-Ic(Rc+Re+RF)
交流等效电路 R’fz=Rc//Rfz
输入电阻
输出电阻 (当<<时)
放大倍数 (当)
此放大电路特点 大,小,
图15 工作点稳定状态c类放大器电路
①共集电极放大电路
静态工作点 ,,
交流等效电路
输入电阻
放大倍数
图16 共集电极放大器电路
2、直流放大器电路
慢速DC信号被应用于称为DC放大器的各种设备。它与上述AC放大器的不同之处在于,在AC放大器级和级之间增加了三个隔离的直流电容器(即耦合电容器),并且在DC放大器级和级之间没有这样的电路,因此DC放大器也称为直接耦合放大器。
3、运算放大器电路
(1)概述
在DC差分放大器的输出端子之间连接各种网络(例如电阻器R1,电容器C等),以形成用于信号组合和操作的运算放大器。运算放大器通常由放大器电路组成。级(第一级)由晶体管T1和T2组成。差分放大镜电路T3和T4是T1和T2的有效负载。 T9是恒流源,第二级放大电路由晶体管T5和T6组成,T10是恒流源(T6的有源负载)。为了获得输出阻抗,输出级(第三级)由晶体管T7和T8组成。采用互补的对称放大电路。
4、集成运算放大器概述
在该信号的放大,波形的信号(加法,方法,乘法,除法,对数,反对数,平方,平方根),信号(滤波,调制)的处理,并生成和转换的操作时,运算放大器是其核心部分是由多级直接耦合的放大器电路的,主要包括,总体而言,偏置电路,单位增益转换,电平移位,恒定电流反馈,振动减少补偿等。
2.5 键盘及显示电路的设计
1、键盘接口电路
①键盘的工作原理
A.按键的确认
在三菱PLC应用系统中,所述按钮用于设置的控制功能或数据可以在开关状态被输入。键的半积分反映在电压为高电平或低电平。如果它是,则低级别装置封闭的,所以电平的高电平状态的检测使得可以识别该按钮是否被连接或不连接。
B.按键的抖动处理
当按钮被强迫按下或释放,它通常伴随着接触的机械振动的一定的时间,然后将其排他是稳定的,抖动时间通常为5?10毫秒,并且该过程必须在使用过程中去抖。 去抖动已经硬件和软件二者的方法,硬件常用的方法除了通过RS连接触发器键摇动,咱软件使用的方法的其它方法摇晃,在检测过程中,当按钮被按下时,在约10ms的程序ZanAfter即,如果关键仍然关闭,确认,关键是在讨债状态。类似地,检测所述键的释放之后,胎圈步骤应被确认。从而可消除抖动的影响。
②独立工按键
独立式按键是直接用I/O口线构成的单个按键电路,其特点是每个按键单独占用一根I/O口线,每个按键的工作不会其他I/O口线的状态
③矩阵式按键
三菱PLC系统中,若使用按键分明,通常采用矩阵式(也称行列式)键盘,如图17:
图17 矩阵式键盘结构
其中,矩阵式键盘有以下几种工作方式:
a.编程扫描方式
键盘扫描程序一般应饫以下内容:1差别有无键按下降键盘扫描取得闭合键的行、列值3用计算法或查表法得到键值4判断闭合键是否释放,如释放则继续等待5将闭合键键号保存,同时转去执行该执行该闭合键的功能。
b.定时扫描方式
定时扫描方式就是每隔一段时间对键盘扫描一次,它利用三菱PLC内部的定时器产生一定时间的定时,当定时时间到就产生定时溢出中断,CPU响应中断后对键盘进行扫描,并左有键按下时,识别出该键,再执行该键的功能程序定时扫描方式的硬件电路与编程扫描方式相同
c.中断扫描方式
为提高CPU工作效率,可采用中断扫描工作方式其工作过和如下:当无键接下时,CPU处理自己的工作,当有键接下时产生中断请求,CPU转去执行键盘扫描子程序,并识别键号。图18为矩阵式键盘与三菱PLC接口图。
图18 矩阵式键盘与三菱PLC接口
2、LED显示器接口电路
常用的LED显示器有LED状态显示器(俗称发光二极管)LED七段显示器。
①数码管工作原理
共阳极数码管的8个发光二级管的阳极(二极管正端)连接在一起。通常会共阳极接高电平1.一般接电源1.当某个阴极接低电平时,则该数码管导通并点亮。共阴极数码管的8个发光二极管的阴极(二极管负端)连接在一起。公共阴极接低电平(一般接地)当某个阳极接高电平,则该数码管并点亮。
②静态显示接口
静态显示是指数码管显示某一字符时,相应的发光二极管恒定导通或恒定截止。这种显示方式的各位数码管相互独立,公共端恒定接地(共阴极)获接正电源(共阳极)每个数码管的8个字段分别与一个8位I/O地址相连,I/O口只要有断码输出,相应字符即显示出来并保持不变直动I/O口输出新的端码采用静态显示方式。
③动态显示接口
动态显示是一位一位地轮流点亮各位数码管。这种逐位点亮显示的方式称为位扫描。通常各位数码管的段选线相应并联在一起由8位的I/O口控制。各位的位选线(公共阴极或阳极)有另外的I/O口线控制。依此规律循环,即可使各位数码管显示将要显示的字符。虽然这些字符是在不同的时刻分别显示,但由于人眼存在视觉暂留效应,只要每位显示间隔足够短就可以给人以同时显示的感觉。
图19 数码管与三菱PLC接口
2.6 抗干扰电路设计
随着强电弱电设备在通信计算机自动化等领域的广泛应用。电磁干扰已成为许多电子设备与系统在环境正常操作运行的主要障碍之一。
1、电磁干扰的形成因素
电池干扰由电磁干扰源发射经过耦合途径传输到被干扰设备(敏感设备)因此形成电磁干扰的要素有:电磁干扰源、传输通到、敏感设备。
2、干扰的分类
①按干扰源分为自然干扰和人为干扰。
②按噪声波形及性质分为持续正弦波干扰和浪涌脉冲波形干扰以及脉冲列干扰。
3、三菱PLC应用系统电磁干扰控制的一般方法
三菱PLC应用系统的干扰源分为内部干扰源和外部干扰源。其中内部干扰源主要来自于印制电路板的布局及布线。
本次采用硬件抗干扰技术中的屏蔽技术。
通过合理的硬件抗干扰措施,可以消除绝大部分电磁干扰。应用硬件抗干扰措施是经常采用的一种方法。下面做详细介绍。
硬件抗干扰措施
①屏蔽技术
屏蔽技术能有效地抑制通过自由空间传播的电磁干扰,通过应用屏蔽技术,可以限制系统内部的辐射电磁能对外部元件和装置的干扰,同时也防止来自系统外部的辐射干扰进入系统内部。
屏蔽接地其原理可分为电场屏蔽。磁场屏蔽和电磁场屏蔽。
屏蔽分析一般采用两种方法:一种是应用电路理论。另一种是应用场理论.
②接地技术
“工作基准地“是指信号回答的基准导体(如控制电源的零电位)又称“系统地“这是的所谓接地是指将各单元,装置内部各部分电路信号返回线与基准导体之间的连接。这种接地的目的是为各部分提供稳定的基准电位。
电气设备接地的目的有三个:其一是为各电路的工作提供基准电位;其二是为了安全,其三是为了抑制干扰。
根据电气设备回路性质和接地目的,可将接地方式分为三类:安全接地、工作接地和屏蔽接地。
此外电磁干扰源硬件控制技术还有滤波技术、隔离技术、电路平衡结构、双绞线抗干扰接地、信号线间的抑制。漏电干扰防止措施等。
三、软件部分设计
3.1 工作流程
温度检测系统不断定时检测当前温度,并送往显示器显示,达到预定值后停止加热并显示当前温度;当温度下降到下限(比预定值低2℃)时再启动加热。
3.2 功能模块
根据上面对工作流程的分析,系统软件可以分为以下几个功能模块:
(1) 键盘管理:监测键盘输入,接收温度预置,启动系统工作。
(2) 显示:显示设置温度及当前温度。
(3) 温度检测及温度值变换:完成A/D转换及数字滤波。
(4) 温度控制:根据检测到的温度控制电炉工作。
(5) 报警:当预置温度或当前炉温越限时报警。
3.3 资源分配
为了便于阅读程序,首先给出三菱PLC资源分配情况。如表3-1所示。
程序存储器:EPROM2764的地址范围为0000H~1FFFH
I/O口:P1.0P1.3——键盘输入;P1.6、P1.7——报警控制和电炉控制。A/D转换器ADC0809:通道0 7的地址为7FF8H~7FFFH,使用通道0。
3.4 功能软件设计
1、温度控制模块
将当前温度与预置温度比较,当前温度小于预置温度时,继电器闭合,接通电阻丝加热;当前温度大于预置温度时,继电器断开,停止加热;当二者相等时电炉保持原来状态;当前温度降低到比预置温度低2℃时,再重新启动加热;当前温度超出报警上下限时将启动报警,并停止加热。由于电炉开始加热时,当前温度可能低于报警下限,为了防止误报,在未达到预置温度时,不允许报警,为此设置了报警允许标志F0。模块流程见下图。
温度控制子程序CONT:
CONT: MOV A,TEMP0 ;当前温度-预置温度(双字节减)
CLR C
SUBB A,ST0
MOV B,A ;低8位相减的差值暂存B
MOV A,TEMP1
SUBB A,ST1
JNC LOFF ;无借位,表示当前温度≥预置温度,转LOFF
JNB F0,LON ;当前温度<预置温度,判是否达到过预置温度
MOV A,B;若达到过预置温度,判二者差值是否大于2
CLR C
SUBB A,#02H
JNC ACC.7,LOFF ;差值不大于2,转LOFF
LON: CLR P1.7 ;开电炉
SJMP EXIT ;返回
LOFF: SETB F0 ;设置允许报警标志
SETB P1.7 ;关电炉
EXIT: RET
在此,也可加入PID算法程序来实现PID控制。
图20 温度控制流程图
2、温度检测模块
为提高数据采样的可靠性,对采样温度进行数字滤波。数字滤波的算法很多,这里采用4次采样取平均值的方法。如前所述,本系统A/D转换结果乘2正好是温度值,因此,4次采样的数字量之和除以2就是检测的当前温度。检测结果高位存入50H,低位存入51H。
3、温度越限报警模块
假设我们将报警的上限温度值设置为5℃,如果当前的温度值加热到高于预置温度5℃时,报警器就会检测到并且进行报警,然后停止加热箱内的加热操作;如果我们将报警下限温度设置为-5℃,那么只要内部温度低于所设置的-5℃时,报警就会进行报警操作,这是为了防止开始从较低温度加温时误报警,在报警同时也会直接关闭电炉。
报警子程序ALARM
ALARM: MOV A,TEMP0 ;当前温度低字节→A
CLR C
SUBB A,ST0 ;(当前温度低字节-预置温度低字节)→A
MOV B, A ;低字节相减结果送B暂存
MOV A,TEMP1 ;当前温度高字节→A
SUBB A,ST1 ;(当前温度高字节-预置温度高字节)→A
JC LA0 ;有借位,当前温度小于预置温度转LA0
SETB F0 ;当前温度≥预置温度,允许报警
AJMP LA1
LA0: MOV A,ST0 ;预置温度低字节→A
CLR C
SUBB A,TEMP0 ;(预置温度低字节-当前温度低字节)→A
MOV B,A ;低字节相减结果送B暂存
MOV A,ST1 ;预置温度高字节→A
SUBB A,TEMP1 ;(预置温度高字节-当前温度高字节)→A
LA1: XCH A,B ;高低字节互换,判断相减结果是否大于5
CLR C
SUBB A,#05H ;(低字节差-5)→A
XCH A,B ;(低字节差-5)→B,高字节差→A
SUBB A,#00H ;(高字节差-0)→A(因为5的高字节为0)
JC LA2 ;相减结果小于5,不报警返回
JNB F0,LA2 ;相减结果≥5,判是否允许报警,不允许则返回
CLR P1.6 ;启动报警
SETB P1.7 ;关电炉
LCALL D0.6s ;报警延时0.6 s
SETB P1.6 ;关报警
LA2: RET
D0.6s: ;延时0.6 s子程序
4、键盘管理模块
上电或复位后系统处于键盘管理状态,其功能是监测键盘输入,接收温度预置和启动键。程序设有预置温度合法检测报警,当预置温度超过500℃时会报警并将温度设定在500℃。键盘管理子程序流程图如图所示。
键盘管理子程序KIN:
KIN: ACAL CHK 预置温度合法性检测
MOV BT1,ST1
MOV BT0,ST0 预置温度送显示缓冲区
ACALL DISP 二次调用显示子程序延时去抖
ACALL KEY 再检测有无键按下
表3-1温度控制软件数据存储器分配表
LCALL DISP 显示预置温度
KIN0: ACALL KEY 读键值
JZ KIN0 无键闭合和重新检测
ACALL DISP
JZ KIN0 无键按下重新检测
JB ACC.1,S10
MOV A,#100 百位键按下
AJMP SUM
图21 键盘管理子程序流程图
S10: JB ACC.2,S1
MOV A,#10 ;十位键按下
AJMP SUM
S1: JB ACC.3,S0
MOV A,#01 ;个位键按下
SUM: ADD A,ST0 ;预置温度按键+1
MOV ST0,A
MOV A,#00H
ADDC A,ST1
MOV ST1,A
KIN1: ACALL KEY ;判断闭合键释放
JNZ KIN1 ;未释放继续判断
AJMP KIN ;闭合键释放继续扫描键盘
S0: JNB ACC.0,KIN ;无键按下重新扫描键盘
RET ;启动键按下返回
KEY: MOV A,P1 ;读键值子程序
CPL A
ANL A,#0FH
RET
预置温度合法性检测子程序CHK(用双字节减法比较预置温度是否大于500℃(01F4H)):
CHK: MOV A,#0F4H ;预置温度上限低8位送A
CLR C
SUBB A,ST0 ;低8位减,借位送CY
MOV A,#01H ;预置温度上限高8位送A
SUBB A,ST1 ;高8位带借位减
JC OUTA ;预置温度越界,转报警
MOV A,#00H ;预置温度合法标志
RET
OUTA: MOV ST1,#01H ;将500写入预置温度数据区
MOV ST0,#0F4H
CLR P1.6 ;发报警信号0.6 s
ACALL D0.6s
SETB P1.6 ;停止报警
RET
5、显示模块
显示子程序的功能是将显示缓冲区57H和58H的二进制数据先转换成三个BCD码,分别存入百位、十位和个位显示缓冲区(54H、55H和56H单元),然后通过串口送出显示。显示子程序DISP:
DISP: ACALL HTB ;将显示数据转换为BCD码
MOV SCON,#00H ;置串行口为方式0
MOV R2,#03H ;显示位数送R2
MOV R0,#T100 ;显示缓冲区首地址送R0
LD: MOV DPTR,#TAB ;指向字型码表首地址
MOV A,@R0 ;取显示数据
MOVC A,@A+DPTR ;查表
MOV SBUF,A ;字型码送串行口
WAIT: JBC TI,NEXT ;发送结束转下一个数据并清中断标志
SJMP WAIT ;发送未完等待
NEXT: INC R0 ;修改显示缓冲区指针
DJNZ R2,LD ;判3位显示完否,未完继续
RET
TAB: … ;字型码表
BCD码转换子程序HTB:
HTB: MOV A,BT0 ;取二进制显示数据低8位
MOV B,#100 ;除100,确定百位数
DIV AB
MOV T100,A ;百位数送54H单元
MOV A,#10 ;除10,确定十位
XCH A, B
DIV A,B
MOV T10,A ;十位数送55H单元
MOV T, B ;个位数送56H单元
MOV A,BT1 ;取二进制显示数据高8位
JNZ LH1 ;高位不为0转LH1继续高8位转换
RET ;高位为0结束,返回
LH1: MOV A,#06H ;高位不为0,低位转换结果加256(因为温度数据不会大于500,所以高8位最多为01H,即256)
ADD A,T
DA A ;个位加6(十进制加)
MOV T,A ;结果送回个位
MOV A,#05H
ADDC A,T10
DAA ;十位加5(十进制加)
MOV T10,A ;结果送回十位
MOV A, #02H
ADDC A, T100
DA A ;百位加2(十进制加)
MOV T100,A ;结果送回百位
RET
6、温度检测模块
A/D转换采用查询方式。为提高数据采样的可靠性,对采样温度进行数字滤波。数字滤波的算法很多,这里采用4次采样取平均值的方法。如前所述,本系统A/D转换结果乘2正好是温度值,因此,4次采样的数字量之和除以2就是检测的当前温度。检测结果高位存入50H,低位存入51H。温度检测子程序流程图如图所示。
温度检测子程序TIN:
TIN: MOV TEMP1,#00H ;清检测温度缓冲区
MOV TEMP0,#00H
MOV R2,#04H ;取样次数送R2
MOV DPTR,#7FF8H ;指向A/D转换器0通道
LTIN1: MOVX @DPTR,A ;启动转换
HERE: JNB IE1,HERE ;等待转换结束
MOVX A,@DPTR ;读转换结果
ADD A,TEMP0 ;累加(双字节加法)
MOV TEMP0,A
MOV A,#00H
ADDC A,TEMP1
MOV TEMP1,A
DJNZ R2,LTIN1 ;4次采样完否,未完继续
CLR C ;累加结果除2(双字节除法)
MOV A,TEMP1
RRC A
MOV TEMP1,A
MOV A,TEMP0
RRC A
MOV TEMP0,A
RET
图22 温度检测子程序流程图
7、主程序和中断服务子程序
主程序采用中断嵌套方式设计,各功能模块可直接调用。主程序完成系统的初始化,温度预置及其合法性检测,预置温度的显示及定时器0设置。定时器0中断服务子程序是温度控制体系的主体,用于温度检测、控制和报警等。
主程序MAIN :(数据缓冲区的定义和初始化部分略)
ORG 0000H
AJMP MAIN
ORG 000BH
AJMP PT0
ORG 0030H
MAIN: MOV SP,#59H ;设定堆栈指针
MOV TMOD,#01H ;定时器0初始化
MOV TL0,#0B0H ;定时器定时时间100 ms
MOV TH0,#3CH
MOV R7,#150 ;置15 s软计数器初值
ACALL KIN ;调键盘管理子程序
SETB ET0 ;允许定时器0中断
SETB EA ;开中断
SETB TR0 ;启动定时器0
SJMP $
定时器0中断服务子程序PT0:
PT0: MOV TL0,#0B0H
MOV TH0,#3CH ;重置定时器0初值
DJNZ R7,BACK ;15 s到否,不到返回
MOV R7,#150 ;重置软计数器初值
ACALL TIN ;温度检测
MOV BT1,TEMP1 ;当前温度送显示缓冲区
MOV BT0,TEMP0
ACALL DISP ;显示当前温度
ACALL CONT ;温度控制
LCALL ALARM ;温度越限报警
BACK: RETI
四、结论
4.1 本次温度控制系统设计中存在的问题及其解决方法
从本次的电烤箱温度控制系统的设计来看,整体而言基本上是可以实现我们的时限要求和目的的。但不可避免的,由于理论和知识点上的相对匮乏,有些地方还存在不足,设计的不当之处也是有的。当热电阻检测出当前电烤箱所处的温度时,不能和预置温度一起以数字的形式很直观的对比显示出来。及操作者无法同时看到电烤箱当前所处的温度和预置温度。那么在这种情况下,应该在设备外面安装一个显示器,这一部可以通过软件设置来完成设想,这样就可以将电烤箱内的温度时使用数字展现出来;在我们使用电烤箱的过程中,电烤箱加热时是需要一段时间来进行缓冲的,也就是说我们将电烤箱的电源切断后,加热不是立即就停止的,它是需要一段时间的缓冲,然后温度才会缓缓地将下来,因此我们在控制时就会不是很准确,可能会出现比较严重的超温或者低温的情况。由此看来,当电烤箱内的加热温度达到我们设定的温度时,我们就要将温度由连续加热或连续降温改为断续加热或断续降温。
4.2 三菱PLC控制系统的发展方向
该课题设计的电烤箱,其内部的温度控制系统主要是以AT89C51为核心的,用软件编程来对电炉电路通断,从而达到控制电烤箱在运作时的温度这样的目的。由于我采用的元件的精度不是很高,控制还不够准确,所以还需要我们做进一步的改善。
社会发展越来越科技化,机电控制技术在人们的生活中和产业的生产中也被越来越广泛的运用到其中。无论是在我们的平时工作中生活中,用到的什么机器和器具,都需要我们根据自身的需求进行调节控制来达成我们需要的目的。这就使得控制元件越来越微型化,工作量也越来越多,机械的零件和设置也越来越精确化。由此,三菱PLC的作用也越来越显著并且发挥着它的作用。根据目前的状况来看,光是三菱PLC还是无法满足这个社会的无限需求,三菱PLC需要的发展是越来越微型化,越来越精确化,同时研究人员还需要不断的将传感器、放大器以及转换器等其他元件的精度研制到最精确,这样才能更好地发挥和提高三菱PLC的作用和能力。从整体上地提高机电控制的质量,让机械控制系统和设备更好地发挥他们的作用,更好地促进社会的发展。