基于单片机的高压调节阀智能控制器设计

2020-07-14 08:37王明武王楠
现代电子技术 2020年11期

王明武 王楠

摘  要: 针对适合高压的电控调节阀非常少且价格昂贵,以及不能实时自动调节等问题,设计了一种高压调节阀智能控制器,并从硬件设计及软件编程方面进行了详细介绍。控制器以单片机为主控制芯片,将电机、调节阀和编码器三者连接起来,开度大小通过编码器进行信号反馈。单片机将目标开度和当前开度进行比对以控制阀的调节方向和开度大小,并利用PID算法保证控制的精准度和响应度,下位机通过RS 232总线连接至上位机,上位机用来设置系统的参数。经测试表明,该系统实现了智能阀门定位器的开度控制和故障诊断等功能。

关键词: 高压调节阀智能控制器; 调节阀结构设计; 系统模块设计; 阀门开度调节; 在线监控; 系统参数设置

中图分类号: TN710?34; TP138                    文獻标识码: A                     文章编号: 1004?373X(2020)11?0148?04

Design of intelligent controller of high?pressure regulating valve based on SCM

WANG Mingwu, WANG Nan

(School of Mechanical Engineering, Shaanxi University of Technology, Hanzhong 723001, China)

Abstract: Since the amount of electric control regulating valves suitable for high pressure is very small, the price is high, and the real?time automatic regulation cannot be realized, an intelligent controller of high?pressure regulating valve is designed. The hardware design and the software programming of the controller system is elaborated. The SCM (single chip microcomputer) is taken as the master control chip, the motor, regulating valve and encoder are connected, the size of the opening is fed back by the encoder. The target opening is compared with the current opening by the SCM to control the adjusting direction and opening of the control valve. The control accuracy and control responsiveness are achieved by the PID algorithm. The lower computer is connected to the upper computer by RS 232 bus, and the upper computer is used to set the system parameter. The test results show that this system can realize the functions of opening control and fault diagnosis of intelligent valve positioner.

Keywords: intelligent controller of high?pressure regulating valve; structural design of regulating valve; system module design; valve opening adjustment; on?line monitoring; system parameter setting

0  引  言

在现代工业生产中,用于控制水、气、油等各种流体的阀门是不可缺少的重要设备,而电动阀门占据着主导地位,主要用于构成各种管道自动化控制系统[1?2]。传统的电动调节阀主要由伺服放大器以及执行机构等两部分组成。伺服放大器先将输入信号与执行机构反馈的信号进行比较,并放大两者之间的偏差,进而通过电机驱动阀芯转动以改变阀门开度,存在的缺点是接收和输出的都是模拟信号,通常会出现明显的误差[3?4]。特别是,对于存在有害物质以及高压气体的地方,一是高压电动调节阀非常少而且价格昂贵,二是操作人员不便于进行操作手动调节阀,同时,高压手动调节阀不能在线自动精确地调节阀门开度。因此,为了保证设备执行精度,实现安全操作,本文研究了一种针对高压调节阀基于单片机的调节阀智能控制器,用来精确控制阀门的开度,实现开度的远程自动在线控制。

1  结构设计

针对适合高压的电动调节阀非常少且价格昂贵,并且存在着无法在线自动调节等缺点,本文提出了一种把高压手动调节阀改造成高压电控自动调节阀的结构,结构示意图如图1所示。

具体做法是:首先,把高压手动调节阀的调节手柄去掉;然后,将调节轴和步进电机转轴对接起来,联轴器中间套装一个增量式旋转编码器。

步进电机使用单片机驱动控制。单片机接收来自增量式编码器的脉冲信号,该脉冲信号接入单片机计数器端口,电机每转一圈,编码器发出512个脉冲。电机正转时,编码器A相超前B相90°,单片机正向累计脉冲;反之,编码器B相超前A相90°, 单片机反向累计脉冲。

[阀门开度=nN×512×100%] (1)

式中:[N]为阀门开度从最小开度调节(0%)到最大开度(100%)需转动的圈数;[n]为单片机采集的脉冲个数。由式(1)可知,单片机通过脉冲个数即可计算出阀门的当前开度并进行实时显示。

用户可根据实际需要进行阀门开度的调节,即通过上位单片机的人机接口输入调节阀的目标开度,上位单片机将目标开度传送给下位单片机,然后下位单片机计算当前开度与目标开度的差值,进而控制步進电机正向增大,或者反向减小调节阀门开度,以达到改变介质通过管道流量大小而控制压力的目的。

调节阀控制器需要达到如下性能要求:

1) 能够接收编码器输出的脉冲信号,为了提高控制精度,进行四细分和辨向。

2) 单片机处理分析接收到的脉冲信号,根据相应的算法计算开度,并向外输出宽度一定的信号完成调节阀开度的控制。

3) 运用人机键盘,对阀门的目标开度等相关参数进行设定以及调节等。

4) 驱动液晶屏显示,从而确保能够显示出调节阀目标开度、当前开度,以及自诊断过程中的相关参数。

5) 具备断电保存、电流检测、电源电压监测、看门狗、防振荡保护等功能。

2  系统硬件设计

高压调节阀控制系统原理框图如图2所示。从图2中能够发现,该控制系统涵盖很多模块,分别是最小系统电路、解码电路、电源、E2PROM、模拟量输出电路、驱动电路、LCD显示、D/A转换和A/D转换等板块。下面将详细地分模块逐一阐述。

2.1  主控芯片与最小系统

控制系统核心是微控制器,控制器在宏晶科技公司系列单片机中进行筛选,最终确定系统上位机和下位机采用型号为STC12C5A60S2单片机,上位机和下位机使用串口通信。此芯片是一款高速、低功耗、超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快8~12倍。内部集成了MAX810专用复位电路、2路PWM、8路高速10位A/D转换,性能可靠易上手,完全符合本系统的设计要求。

MCU的主要任务包括:

1) 上位机首先利用矩阵键盘输入目标开度,并将该目标开度值发送给下位机。

2) 下位机接收到目标开度值,计算阀门目标开度与当前开度两者之间的差值,然后根据该差值通过驱动步进电机实现调节阀的开度控制。

3) 编码器输出的脉冲通过硬件解码电路进行辨向和细分,脉冲个数由下位机进行实时采集计数。若电机正转,则脉冲个数增大;若电机反转,则脉冲个数减小。

4) 下位机最后将脉冲个数实时地发送给上位机,上位机根据式(1)换算成当前开度并在液晶屏上显示。

5) 基于定位器原理进行阀门自诊断。

2.2  解码电路设计

系统采用74HC系列数字逻辑器件构建硬件解码电路,如图3所示。

74HC14片内共有6路施密特触发反相器,74HC86为2输入端四异或门。不同型号的编码器其旋转一圈发出的脉冲个数[n]也有所不同,但其信号时序都相同。旋转增量式编码器出来的信号一般为A相、B相两路方波信号和Z信号,采用TTL电平。A相脉冲在前,B相脉冲在后,两路脉冲相差90°,每转一圈发出一个Z脉冲,可作为参考机械零位。这里,顺时针旋转为正转,A相超前B相为90°;逆时针旋转为反转,B相超前A相为90°。经过该电路进行解码后,可直接细分输出2倍脉冲信号OUT和辨向信号DIR,并可以直接与单片机相连接。

编码器出来的信号AB经过74HC14的第一二个反相器,其波形为相位差为90°的方波信号。74HC86第一个异或门输出为1CP信号,CP信号为D触发器提供了CLOCK。74HC86输入为[A]和[A],当[VCC]为4.5 V时,输入信号高于3.15 V被认为高电平,低于1.35 V时被认为低电平,加之任何方波信号波形上升下降时间不可能为0,因此,当信号下降到小于1.35 V而未上升到3.15 V时,其异或门输出就为低电平。同理,第四个异或门的输入[B]和[B]信号产生的CP信号与之相同。1D输入为信号,而RESET和SET又接的是高电平,同时,有了CP信号,即可得到1Q和2Q信号,然后再经过异或门就可以得到最终的OUT信号,如图4所示,实现了对输入信号的2倍频。

鉴向由第二片74HC74完成,其输入1D为74HC86的第三个异或门的输出,即为信号[B]和[A]信号经过异或运算,其RESET和SET都接高电平,通过时序图即可得到OUT信号。当反转时,1D信号不变,CP信号相位会向后移动半个周期,输出恒为低电平,从而实现了方向信号的判别。

2.3  驱动电路

阀门开度选用步进电机进行驱动,电机线圈由四相组成,即[A,B,C,D]四相,驱动方式为两相激磁方式[5]。电机驱动模块电路如图5所示。

电机使用12 V工作电压,最大电流为0.26 A,需要额外的驱动电路实现PWM控制。电机驱动模块采用STC15F104将输入的PWM波形转换成4路方波输出,方波进步通过ULN2003大电流复合晶体管驱动,通过P3.0~P3.7控制各线圈的接通与切断。电机采用四相双四拍工作方式,通电换相的正序为AB?BC?CD?DA;反序为AD?DC?CB?BA。如果P3口输出的控制信号中,0代表使绕组通电,1代表使绕组断电,则可用4个控制字来对应这4个通电状态,双四拍工作方式的控制字见表1。

2.4  上位机控制

上位机控制器采用STC12C5A60S2单片机作为控制器,其原理电路如图6所示。

STC12C5A60S2每个I/O口驱动能力均可达到20 mA,因此,可用它直接驱动液晶显示器或者矩阵键盘而不用接上拉排阻,同时可以使用独立的串口波特率发生器,这样给设计带来了很大方便。上位机最小系统如图6所示。U1为LCD12864液晶显示器接口,P1为[4×4]矩阵键盘接口,晶振电路亦采用11.059 2 MHz晶振,P3.0和P3.1接串口电路。限于篇幅原因,串口通信、液晶显示和矩阵键盘不再一一赘述。

本次系统设计得到的高压调节阀控制器PCB印刷电路板如图7所示。系统电路板上分别为模拟电路部分和数字电路部分,外接LCD显示屏和人机键盘。实验仪器主要有万能表、直流电源、示波器、仿真器等。

3  系统软件设计

3.1  阀门开度调节

系统软件开发平台为KEIL,以C语言编程。软件主要完成系统的初始化设置[6]、控制、通信、显示等功能。系统中,上位机发送控制码,下位机根据控制码执行相应控制动作,并实时向上位机发送其工作状态以供显示。上电后,首先上下位机进行握手通信,然后建立连接后方可进行自动或手动控制,其系统软件流程图如图8所示。当单片机通过串口发送数据时,只需要将要发送的内容直接赋给缓冲寄存器SBUF就可以了,当单片机通过串口接收数据时,只需要缓冲寄存器SBUF中的内容直接读出即可。

控制方式和数据显示都是由上位机来完成指令发送和数据接收的。当下位机接收到命令指令后,经过判断来执行相应的动作,其中,主要指令有:手动正传、手动反转、自动运行、清零和停止运行。下位机在主函数中一直进行扫描判断,完成相应的动作执行。

上位机发送手动指令时,下位机工作在手动调节模式,而当检测到按键松开时,上位机停止发送手动指令,以实现阀门开度的点动控制。上位机发送自动指令时,下位机将工作在自动调节模式,上位机使用矩阵键盘输入阀门的目标开度,并将该目标开度发送给下位机。下位机将该目标开度值转换为目标脉冲个数,然后根据当前脉冲个数和目标脉冲个数的差值控制电机转动方向,即目标脉冲个数大于当前脉冲个数,步进电机正向转动,当前脉冲个数增计数,阀门开度增加;反之,目标脉冲个数小于当前脉冲个数,步进电机反向转动,当前脉冲个数减计数,阀门开度减小;当前脉冲个数等于目标脉冲个数时,即阀门已由当前开度调节至目标开度,电机停止调节,下位机停止计数。系统具备正反转互锁和延伸切换保护功能,同时,下位机的当前脉冲数转换为当前开度在上位机上进行显示。

3.2  模糊PID算法

控制器使用PWM驱动步进电机,由于使用了硬件PWM发生器,单位时间内PWM波的个数难以计算。另外,考虑到位置偏差大时,控制要求快速跟踪,而偏差较小时,则要求提高控制精度,因此需要采用PID算法。

PID控制程序流程图如图9所示,如果被控量远未接近给定值,仅刚开始向给定值变化时,由于比例和积分反向,将会减慢控制过程。为了加快开始的动态过程,可以设定一个偏差范围[v],当偏差[e(t)<β]时,即被控量接近给定值时,就按正常规律调节,而当[e(t)≥β]时,则不管比例作用为正或为负,都使它向有利于接近给定值的方向调整,即取其值为[e(t)-e(t-1)],其符号与积分项一致。根据PWM相关寄存的使用方法,直接设置相应的寄存器,PWM模块将会产生频率和占空比可调的PWM波。当PWM模块一旦运行后,如果不使用软件方法去关闭,它将一直输出相应参数的PWM方波,与其他程序的运行没有关系,从而实现增量式模糊PID算法的实现。

系统利用模糊PID算法,通过PID的输出控制PWM的频率,可加快控制的动态过程,以满足偏差大时的快速性要求和偏差小时的精确性控制,从而达到调节电机速度和防止开度调节惯性产生振荡的目的[7?10]。此外,系统还具备编码器故障或急停保护、掉电保持等功能。

4  结  语

本文研制成功的高压调节阀控制器,整个过程简单直观,能巧妙且低成本地解决高压阀调节问题。系统可以对调节阀门开度进行准确控制,同时能够实时地在线对调节阀进行监控。本远程调节阀控制器适用于工业生产、生活需要对流体流量实现自动化精确控制的过程环节中,也可适用于工业生产诸如石化行业中的炼油装置和合成氨装置等有毒有害流体的远程精确控制过程中。

参考文献

[1] 刘熠,赵春宇,陈大跃.阀门开度的数字化精确测量和控制[J].自动化技术与应用,2004,23(3):65?67.

[2] 潘宇轩,董全林,张玉莲.基于SPI驱动的智能调节阀控制系统研究[J].现代电子技术,2018,41(10):1?4.

[3] 闫孝姮,李文江.一种新型智能调节阀的设计[J].电子设计应用,2007(3):96?97.

[4] 张红瑞.一种基于计算机控制的电动阀门开度显示方法[J].阀门,2008(1):44?45.

[5] 王振锋,周英,孙玉宁.基于单片机技术的瓦斯抽采浓度自动调节阀研究[J].煤气与热力,2015,47(3):135?137.

[6] 邓秉林.单片机在阀门控制系统中的应用[J].真空,2009,46(5):74?76.

[7] 杨超,刘利.电动调节阀开度控制的研究与实现[J].机电工程,2007,24(2):55?58.

[8] 蔡明.ZPZD3100型智能阀门定位器的原理与设计[J].自动化仪表,2008,29(11):46?49.

[9] 叶定春.PID调节器及其智能化控制技术的探讨[J].煤气与热力,2004,24(5):256?259.

[10] 刘会森,張玉莲,董全林.模糊PID在智能调节阀控制系统中的应用[J].煤气与热力,2018,46(1):91?96.