APP下载

基于模糊神经网络的电阻炉温度控制系统设计

2022-11-02

工业加热 2022年9期
关键词:单片机电路芯片

李 军

(陕西国防工业职业技术学院 电子信息学院,陕西 西安 710300)

随着我国科学技术的不断进步,对于工业控制器的适应能力以及高度智能化具有提升促进作用。在工业生产领域中,电阻炉是经常使用的加热设备,若电阻炉的炉温控制效果出现问题,可直接影响工业生产领域的工件质量及的电阻炉加热效率。传统工业电阻炉存在非线性、大惯性以及时滞等缺陷,对温度控制效果无法达到预期。为此本研究利用模糊神经网络设计出一种电阻炉温度控制系统,对于炉温的控制具有重要作用。

1 基于模糊神经网络的电阻炉温度控制系统硬件设计

本研究对电阻炉温度控制系统的硬件部分进行设计时,为保证该控制系统对电阻炉温度的精准控制,将AVR系列的单片机作为该系统的核心设备。该单片机主要以铂电阻作为采温元件,可使电阻炉温度控制系统具有可靠性较高、控制效果明显等优势,并且该控制系统支持手自动切换以及高温报警等功能,若电阻炉的温度超过自身可承受的最大范围,系统将采取报警模式提示工作人员做出相应的调整。但是该单片机的计算能力及存储空间存在一定局限性,为此设计了一个通信接口,该通信接口主要负责与PC机建立通信,电阻炉温度控制系统硬件结构如图1所示[1]。

1.1 控制芯片选型

AVR系列的单片机主要采用RISC结构作为核心,具有较强的数据吞吐率,通过存储器分离的方式使控制系统可独立寻址。为保证系统的控制功能,最终选用ATmega16作为该系统的控制芯片,该芯片的数据吞吐率高达1MIPS/MHZ,含有可编程Flash的8位微控制器,可支持系统在线编程接口。同时该控制芯片内部存在AD转换器、PWM定时计数器等功能,有利于提升系统对温度控制的精准性。其内部特有的I/O接口具有较强的驱动能力,在一定程度上可节约系统开发成本,对于单片机的程序编写部分,本研究主要通过C语言完成高级编程,便于系统后续移植[2]。

1.2 主控电路

该电路内部主要包含ATmega16单片机、晶振电路以及复位电路,其中ATmega16单片机内部包含多种时钟源,可通过配置熔丝位实现时钟源的选择。本研究时钟源进行选择时,将石英晶体作该系统的时钟,石英晶体的频率为8 MHz。为保证ATmega16单片机的功能稳定性,在其内部设置上电复位POR电路,该电路可在系统电源超过一个安全电平的情况下完成各器件之间的运行。当电路处于复位状态时,单片机内部各处理器均处于初始状态,此时对I/O寄存器进行初始化,为避免控制系统被外界因素所干扰,需要在复位引脚处外加复位电路,并在复位电路中增加按钮,通过该方式实现手动复位,有利于操作者结合系统出现的突发状况及时进行处理[3]。

1.3 LED显示电路

为保证用户可实时观察到电阻炉温度的控制结果,本研究选用含有8位7段的LED数码管作为该系统的核心显示设备,用来对电阻炉的温度值进行显示。该数码管具有响应速度快、成本低、亮度强等优势,将其应用于系统中,有利于降低单片机I/O接口的占用面积。LED显示电路选用MAX7219作为核心芯片,该芯片在连接过程中,只需3个I/O接口即可实现显示电路的驱动,对于控制系统的开发成本具有节约作用。

1.4 键盘接口电路

对键盘接口电路进行设计时,为最大限度地最大限度地降低键盘电路对I/O引脚的占用数量,选用专用芯片实现的按键接口电路作为该电路的核心,通过该电路可使控制系统在采用较少I/O接口的情况下实现多个按键功能,有利于降低键盘接口电路占用CPU的资源。结合控制系统的实际运行情况,本研究选用ZLG7289作为该电路的控制芯片,该芯片主要采取串行和微处理器通讯方式实现数据的输送,可形成含有64键的键盘矩阵,对于8位共阴数码管具有驱动作用。当键盘接口与单片机建立连接时,在按键处于被按下的状态时,仅需要4个I/O接口即可完成INT引脚从高电平到低电平的转换;当按键处于弹开状态时,INT引脚从低电平恢复为低电平。为此将INT引脚与单片机引脚建立连接,有利于系统在按键处于按下状态时,第一时间触发外部中断1事件,并完成子程序中断时按键数值的读取[4]。

1.5 RS232接口电路

对于控制系统内部运行较为复杂的控制算法时,可采用PC机完成控制数据的处理,并建立PC机与单片机之间的串行通信,有利于促进控制系统对电阻炉温度控制的精确度。RS232属于一种应用最广的标准总线,数据传输速率最高可达19.2 kbps、传送电缆长达15 m。由于单片机内部缺乏标准的RS-232C接口,为此本研究对RS-232C接口进行设计时,采用TTL/CMOS兼容电平实现信号传输。为实现单片机与RS-232C标准电平之间的电平匹配,利用MAX232芯片对输入电源进行转换,满足RS-232C电平实际需要的电压范围。

1.6 温度检测电路

温度检测电路是电阻炉温度控制系统的重要组成部分,为此本研究对该电路进行设计时,采用铂电阻Pt100作为电阻炉温度控制系统的温度传感器。该传感器具有良好的稳定性以及体积小、测温范围宽等优势,其电阻值可随电阻炉温度的变化而变化,有利于实现对电阻炉温度的精准检测。但是铂电阻Pt100存在非线性缺陷,阻值与温度之间的关系式为

Rt=R0[1+At+Bt2+C(t-100)t3]

(-200 ℃

(1)

Rt=R0[1+At+Bt2] (0 ℃

(2)

式中:Rt为当铂电阻Pt100处于t℃时对应的电阻值;R0为当铂电阻Pt100处于0 ℃时对应的电阻值;A、B、C为常数,数值分别为

A=3.908 02×10-3/℃,B=-5.802×10-7/(℃)2,C=-4.273 5×10-12/(℃)4

由于采用铂电阻Pt100对电阻炉温度进行检测时,可实现检测结果存在非线性限制,为此本研究通过硬件和软件两种方法对非线性进行处理。但是相对来讲软件方法更具优势,有利于降低电路的复杂程度,在一定程度上可提升温度检测模块的精准度[5]。

结合上述分析结果,本研究选用软件方法对温度检测模块的非线性限制进行处理,为最大限度地限度地简化硬件电路复杂程度,选择2.56 V电压作为系统的内部参考电压。电阻炉温度控制系统利用温度检测模块对实际温度进行测量时,要求温度检测模块的测温范围可维持在0~250 ℃。其代表的含义为:当测量电阻炉内的温度为0 ℃时,温度检测模块的输出电压为0 V;当测量电阻炉内的温度为250 ℃时,温度检测模块的输出电压为2.56 V。但是在实际检测过程中无法保证电阻炉内的温度为250 ℃时,温度检测模块所对应的输出电压一定为2.56 V。因此本研究的设计目标为:当测量电阻炉内的温度为250 ℃时,温度检测模块对应的输出电压趋近于2.56 V,但该数值不可超过2.56 V[6]。

当电阻炉内温度为0 ℃,R46=100 Ω,此时要求检测电路内U1=U2,利用分压原理对U1和U2进行计算,其公式为

(3)

(4)

根据式(3)和式(4),最终求得VR2=107.694 8。

式中:R41、R42、R46、R47、VR为可共同组成电桥检测电路;R46为铂电阻;R41=R42=2.4 kΩ,R47=VR=200 Ω;VR为滑动变阻器,主要负责对变阻器进行调零[7]。

当电阻炉内温度为250 ℃,R46=194.07 Ω,此时温度检测模块的输出电压趋近于2.56 V,但该数值不可超过2.56 V。令R43=R52=R,R44=R53=Rf,R45=R50=R′,放大电路的输出电压U0的公式为

(5)

(6)

最终求得U1-U2=0.27-0.192 31=0.077 69 V,即放大倍数为

(7)

取R=3 kΩ,Rf=12 kΩ,R′=6.8 kΩ,R48=2 kΩ,Av=31.2。

温度检测电路中由R49、C37共同组成一阶滤波电路,BAV99由两个二级经过串联而形成的器件,主要负责对温度检测电路进行保护,工作原理为:当输出电压U0≥Uref时,上端二极管处于导通状态,下端二极管处于截止状态,此时进入单片机ADCO引脚的电压钳在Uref处;当输出电压U0<0 V时,上端二极管处于截止状态,下端二极管处于导通状态,此时进入单片机ADCO引脚的电压钳在零伏处,有利于维持单片机的稳定运行[8]。

2 基于模糊神经网络的电阻炉温度控制系统软件设计

2.1 主程序工作流程

主程序部分属于软件程序的核心,可维持软件系统的稳定运行,主要工作任务是对系统进行初始化的架构构建。其工作流程为:首先完成对单片机、A/D芯片等部分的初始化,初始化任务执行完毕后,启动温度检测程序,对电阻炉的温度进行实时获取,并将检测数据上传至显示模块,有利于操作者通过液晶显示器观察到电阻炉的运行状态。通过设置键对温度进行设置,若温度超过电阻炉可承受的最大范围,系统自动采取报警模式;若温度不超过电阻炉可承受的最大范围,系统采用模糊神经算法完成电阻炉温度的实时控制,并将控制数据输出。将该程序无限循环,直至实现对电阻炉温度的控制为止[9]。

2.2 温度检测程序

本研究主要在0中断子程序内部完成温度检测程序的设计,并利用ATmega16单片机中定时器/计数器(T/CO)完成温度的检测。温度检测程序设计过程中,通过分频器对单片机内部时钟频率进行分频,并将分频后的时钟与计时器建立连接,在分频器的支持下,有利于温度检测程序获取不同频率的技术脉冲信号。当控制系统的时钟频率为8 MHz时,T/CO计时精度和时宽如表1所示。

表1 T/CO计时精度和时宽

结合T/CO计时精度和时宽数据,最终将温度检测程序的采样周期控制为1 s。但是该周期大于T/CO的最大时宽,为解决采样周期过长的问题,将分频器的频率设置为64分频,每1 ms执行一次终端服务子程序,直到执行1 s为止,而中断响应需为1 000次。对温度检测程序进行设计时,首先利用K型热电偶和MAX6675芯片,使二者充分结合,以此达到温度值转换为数字信号的目的,温度检测程序流程如图2所示[10]。

2.3 监控软件程序

为实现操作者对炉温数据的精准提取以及实时监控,本研究利用LABVIEW虚拟器开发集成工具完成上位机监控软件的开发。电阻炉温度控制系统要求上位机对炉温数据进行提取时,需要通过RS232出口,并将提取数据编写完毕后上传至显示界面,由软件界面窗口实时显示读取数据。为此对该部分进行设计时,采用模块化的方式将该程序划分为数据处理显示、存储查询、打印以及报警等模块。其中数据处理模块主要负责对炉温数据进行采集和计算,采集完毕后将结果以曲线的方式实时显示到前面板中,有利于用户精确掌握电阻炉运行情况。数据存储查询模块主要负责对炉温数据进行保存,可作为用户优化系统时的重要依据。打印模块主要负责炉温数据以报表的形式完成打印。报警模块对于系统的安全性具有重要保障作用,若炉温达到上限时,该模块可自动采取报警模式,有利于工作人员及时发现系统存在的故障现象。

2.4 系统运行结果

为保证电阻炉温度控制系统的精确度,本研究主要对SX2-4-10高温箱式电阻炉进行研究,该电阻炉的工作频率为50 Hz、额定功率为4 kW、温度范围在0~1 000 ℃。利用模糊神经网络PID算法控制电阻炉的炉温,并将控制系统的采样时间设置为1 s、目标炉温900 ℃、炉温上下限分别设置为905和895 ℃。

通过对炉温的实际变化进行分析可知,缺乏模糊PID算法控制下的电阻炉温度控制系统,可在较短的时间内将炉温升至目标值,炉温的稳定时间仅能维持在200 s之内。但是在模糊PID算法控制下的电阻炉温度控制系统,可实现最短时间内将炉温升至目标值,对电阻炉温度的控制可达到预期效果。

3 结 语

为实现对电阻炉温度的实时控制,本研究利用模糊神经网络设计出一种电阻炉温度控制系统,并完成电阻炉温度控制系统硬件和软件部分的设计。为保证该控制系统对电阻炉温度的精准控制,将AVR系列的单片机作为硬件系统的核心设备,可使电阻炉温度控制系统具有可靠性较高、控制效果明显等优势。经过验证可知,该系统的控制效果可达到预期目标。

猜你喜欢

单片机电路芯片
芯片会议
电路的保护
人体微芯片
关于射频前端芯片研发与管理模式的思考
“简化法”巧解电路问题
基于单片机的层次渐变暖灯的研究
基于单片机的多功能智能插排
基于单片机的便捷式LCF测量仪
巧用立创EDA软件和Altium Designer软件设计电路
巧用求差法判断电路中物理量大小