基于AT89C51单片机的温度自动监控系统(下)

来源:本站
导读:目前正在解读《基于AT89C51单片机的温度自动监控系统(下)》的相关信息,《基于AT89C51单片机的温度自动监控系统(下)》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《基于AT89C51单片机的温度自动监控系统(下)》的详细说明。
简介:以AT89C51单片机为核心部件,设计基于单片机的化工合成工艺温度检测与控制系统,介绍了系统硬件结构和温度监测电路的结构。编写控制系统主程序流程图、A/D转换子程序流程图。以AT89C51单片机为核心的温度测量温度检测与控制,简化了传统常规仪表的电子线路,增加了功能,提高了温度检测准确性和控制可靠性。

2.2温度检测与控制主程序

主程序功能:完成系统初始化操作;判断温度是否超限,如果超限则转报警处理,如果未超限则读入K1、K2、K3、K4状态,并根据其输入状态,散转执行相应的功能子程序。主程序流程图如图6所示。

基于AT89C51单片机的温度自动监控系统(下)

图6 主程序流程图

2.3主要的子程序流程图

1)PID运算子程序:取出温度给定值与测量值,计算出偏差信号e(k),将e(k)与设定的死区值比较,如果P(足)未超出死区范围,则本次输出调节量为0,返回检测程序;如果e(k)超出死区范围,则计算出p(k)=Pp(k)+P1(k)+Pn(k)的调节输出值。

2)步进电机驱动程序:本系统选用三相步进电机,采用三相六拍工作方式,各绕组供电的步进信号由8155的A口控制,其转动方向及通电顺序字见表1。

基于AT89C51单片机的温度自动监控系统(下)

表1 步进电机转动方向及通电顺序字

根据步进电机的转向与工作时绕组通电顺序变化规律,可以在8155的RAM中设置步进电机的控制字表,如表1所示,表头地址为TABO,表尾地址为TAB7。显然,驱动信号从TAB0开始控制通电顺序,电机为正转;若从TAB7开始控制通电顺序,则电机为反转。

步进电机的转速由脉冲信号的周期T决定。脉冲信号的周期由CPU通过延时程序或定时器/计数器的定时时间来确定。系统中的三相绕组由8155的A口控制是,程序中的延时时间为10电机的转速为:n=60/(N×T)转/分

式中N一电机转动一周应输出的控制字节数。采用三相六拍工作时,步距角为1.5°,则有:N=360°/1.5°=240,即转一周要输出240个字节控制字。设旋转角度与输出控制字节数M的关系为M=a/1.5°,只要把M保存在字节计数器里,每输出一个字节,步进电机转动一步,同时将字节计数器减1,当字节计数器为0时,步进电机转动了M步,对应的角度为a。

图7所示为驱动步进电机转动一步的子程序流程图。入口条件DPTR中已存放步进电机的控制字表的地址,设正转时R5置为01H,R6为FAH;反转时置R5为FFH,R6为06H。调用本程序前应已对8155进行了初始化,每输出一个字节后延时1OOms。设置R5、R6是为了保证步进电机按两种不同顺序改变控制字表的地址指针,以完成正转或反转操作。步进电机驱动程序流程图如图8所示。调用该程序前应将步进电机的转动步数和方向标志存放在R4R3寄存器中,符号为1表示反转,为0表示正转,其绝对值代表转动步数。

基于AT89C51单片机的温度自动监控系统(下)

图7 电机转动一步的子程序流程图

基于AT89C51单片机的温度自动监控系统(下)

图8 步进电机驱动程序流程图

3)A/D转换子程序。该子程序由单片机的P2.2启动A/D转换,根据ICL7109的STATUS的状态判断转换是否完成,若A/D转换完成,将芯片置为保持状态(HOLD信息有效)。然后,分两次由P0口读入转换后的12位数据存入单片机内部R0指示的RAM单元中。连续采集5次,再经中值滤波及线性化程序段处理,得出一次温度检测值。该程序只对应一个温度检测点,未涉及对其他检测点和参量的巡回检测问题。图9所示为A/D转换子程序流程图。

基于AT89C51单片机的温度自动监控系统(下)

图9 A/D转换子程序流程图

3 结论

AT89C5l单片机具有高可靠性、控制方便简单和灵活性大等优点。控制器采用PID控制算法,控温精度高,误差精度小于0.08%,稳态误差可达±3℃以内。采用AT89C51单片机来对温度进行控制,具有控制方便、组态简单和灵活性大等优点,整个系统操作简便、抗干扰能力强、运行可靠、反应速度快,可以大幅度提高被控系统温度的技术指标。

提醒:《基于AT89C51单片机的温度自动监控系统(下)》最后刷新时间 2024-03-14 00:51:34,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《基于AT89C51单片机的温度自动监控系统(下)》该内容的真实性请自行鉴别。