王明武 王楠
摘? 要: 針對適合高壓的電控調節(jié)閥非常少且價格昂貴,以及不能實時自動調節(jié)等問題,設計了一種高壓調節(jié)閥智能控制器,并從硬件設計及軟件編程方面進行了詳細介紹。控制器以單片機為主控制芯片,將電機、調節(jié)閥和編碼器三者連接起來,開度大小通過編碼器進行信號反饋。單片機將目標開度和當前開度進行比對以控制閥的調節(jié)方向和開度大小,并利用PID算法保證控制的精準度和響應度,下位機通過RS 232總線連接至上位機,上位機用來設置系統(tǒng)的參數(shù)。經(jīng)測試表明,該系統(tǒng)實現(xiàn)了智能閥門定位器的開度控制和故障診斷等功能。
關鍵詞: 高壓調節(jié)閥智能控制器; 調節(jié)閥結構設計; 系統(tǒng)模塊設計; 閥門開度調節(jié); 在線監(jiān)控; 系統(tǒng)參數(shù)設置
中圖分類號: 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? 引? 言
在現(xiàn)代工業(yè)生產(chǎn)中,用于控制水、氣、油等各種流體的閥門是不可缺少的重要設備,而電動閥門占據(jù)著主導地位,主要用于構成各種管道自動化控制系統(tǒng)[1?2]。傳統(tǒng)的電動調節(jié)閥主要由伺服放大器以及執(zhí)行機構等兩部分組成。伺服放大器先將輸入信號與執(zhí)行機構反饋的信號進行比較,并放大兩者之間的偏差,進而通過電機驅動閥芯轉動以改變閥門開度,存在的缺點是接收和輸出的都是模擬信號,通常會出現(xiàn)明顯的誤差[3?4]。特別是,對于存在有害物質以及高壓氣體的地方,一是高壓電動調節(jié)閥非常少而且價格昂貴,二是操作人員不便于進行操作手動調節(jié)閥,同時,高壓手動調節(jié)閥不能在線自動精確地調節(jié)閥門開度。因此,為了保證設備執(zhí)行精度,實現(xiàn)安全操作,本文研究了一種針對高壓調節(jié)閥基于單片機的調節(jié)閥智能控制器,用來精確控制閥門的開度,實現(xiàn)開度的遠程自動在線控制。
1? 結構設計
針對適合高壓的電動調節(jié)閥非常少且價格昂貴,并且存在著無法在線自動調節(jié)等缺點,本文提出了一種把高壓手動調節(jié)閥改造成高壓電控自動調節(jié)閥的結構,結構示意圖如圖1所示。
具體做法是:首先,把高壓手動調節(jié)閥的調節(jié)手柄去掉;然后,將調節(jié)軸和步進電機轉軸對接起來,聯(lián)軸器中間套裝一個增量式旋轉編碼器。
步進電機使用單片機驅動控制。單片機接收來自增量式編碼器的脈沖信號,該脈沖信號接入單片機計數(shù)器端口,電機每轉一圈,編碼器發(fā)出512個脈沖。電機正轉時,編碼器A相超前B相90°,單片機正向累計脈沖;反之,編碼器B相超前A相90°, 單片機反向累計脈沖。
[閥門開度=nN×512×100%] (1)
式中:[N]為閥門開度從最小開度調節(jié)(0%)到最大開度(100%)需轉動的圈數(shù);[n]為單片機采集的脈沖個數(shù)。由式(1)可知,單片機通過脈沖個數(shù)即可計算出閥門的當前開度并進行實時顯示。
用戶可根據(jù)實際需要進行閥門開度的調節(jié),即通過上位單片機的人機接口輸入調節(jié)閥的目標開度,上位單片機將目標開度傳送給下位單片機,然后下位單片機計算當前開度與目標開度的差值,進而控制步進電機正向增大,或者反向減小調節(jié)閥門開度,以達到改變介質通過管道流量大小而控制壓力的目的。
調節(jié)閥控制器需要達到如下性能要求:
1) 能夠接收編碼器輸出的脈沖信號,為了提高控制精度,進行四細分和辨向。
2) 單片機處理分析接收到的脈沖信號,根據(jù)相應的算法計算開度,并向外輸出寬度一定的信號完成調節(jié)閥開度的控制。
3) 運用人機鍵盤,對閥門的目標開度等相關參數(shù)進行設定以及調節(jié)等。
4) 驅動液晶屏顯示,從而確保能夠顯示出調節(jié)閥目標開度、當前開度,以及自診斷過程中的相關參數(shù)。
5) 具備斷電保存、電流檢測、電源電壓監(jiān)測、看門狗、防振蕩保護等功能。
2? 系統(tǒng)硬件設計
高壓調節(jié)閥控制系統(tǒng)原理框圖如圖2所示。從圖2中能夠發(fā)現(xiàn),該控制系統(tǒng)涵蓋很多模塊,分別是最小系統(tǒng)電路、解碼電路、電源、E2PROM、模擬量輸出電路、驅動電路、LCD顯示、D/A轉換和A/D轉換等板塊。下面將詳細地分模塊逐一闡述。
2.1? 主控芯片與最小系統(tǒng)
控制系統(tǒng)核心是微控制器,控制器在宏晶科技公司系列單片機中進行篩選,最終確定系統(tǒng)上位機和下位機采用型號為STC12C5A60S2單片機,上位機和下位機使用串口通信。此芯片是一款高速、低功耗、超強抗干擾的新一代8051單片機,指令代碼完全兼容傳統(tǒng)8051,但速度快8~12倍。內部集成了MAX810專用復位電路、2路PWM、8路高速10位A/D轉換,性能可靠易上手,完全符合本系統(tǒng)的設計要求。
MCU的主要任務包括:
1) 上位機首先利用矩陣鍵盤輸入目標開度,并將該目標開度值發(fā)送給下位機。
2) 下位機接收到目標開度值,計算閥門目標開度與當前開度兩者之間的差值,然后根據(jù)該差值通過驅動步進電機實現(xiàn)調節(jié)閥的開度控制。
3) 編碼器輸出的脈沖通過硬件解碼電路進行辨向和細分,脈沖個數(shù)由下位機進行實時采集計數(shù)。若電機正轉,則脈沖個數(shù)增大;若電機反轉,則脈沖個數(shù)減小。
4) 下位機最后將脈沖個數(shù)實時地發(fā)送給上位機,上位機根據(jù)式(1)換算成當前開度并在液晶屏上顯示。
5) 基于定位器原理進行閥門自診斷。
2.2? 解碼電路設計
系統(tǒng)采用74HC系列數(shù)字邏輯器件構建硬件解碼電路,如圖3所示。
74HC14片內共有6路施密特觸發(fā)反相器,74HC86為2輸入端四異或門。不同型號的編碼器其旋轉一圈發(fā)出的脈沖個數(shù)[n]也有所不同,但其信號時序都相同。旋轉增量式編碼器出來的信號一般為A相、B相兩路方波信號和Z信號,采用TTL電平。A相脈沖在前,B相脈沖在后,兩路脈沖相差90°,每轉一圈發(fā)出一個Z脈沖,可作為參考機械零位。這里,順時針旋轉為正轉,A相超前B相為90°;逆時針旋轉為反轉,B相超前A相為90°。經(jīng)過該電路進行解碼后,可直接細分輸出2倍脈沖信號OUT和辨向信號DIR,并可以直接與單片機相連接。
編碼器出來的信號AB經(jīng)過74HC14的第一二個反相器,其波形為相位差為90°的方波信號。74HC86第一個異或門輸出為1CP信號,CP信號為D觸發(fā)器提供了CLOCK。74HC86輸入為[A]和[A],當[VCC]為4.5 V時,輸入信號高于3.15 V被認為高電平,低于1.35 V時被認為低電平,加之任何方波信號波形上升下降時間不可能為0,因此,當信號下降到小于1.35 V而未上升到3.15 V時,其異或門輸出就為低電平。同理,第四個異或門的輸入[B]和[B]信號產(chǎn)生的CP信號與之相同。1D輸入為信號,而RESET和SET又接的是高電平,同時,有了CP信號,即可得到1Q和2Q信號,然后再經(jīng)過異或門就可以得到最終的OUT信號,如圖4所示,實現(xiàn)了對輸入信號的2倍頻。
鑒向由第二片74HC74完成,其輸入1D為74HC86的第三個異或門的輸出,即為信號[B]和[A]信號經(jīng)過異或運算,其RESET和SET都接高電平,通過時序圖即可得到OUT信號。當反轉時,1D信號不變,CP信號相位會向后移動半個周期,輸出恒為低電平,從而實現(xiàn)了方向信號的判別。
2.3? 驅動電路
閥門開度選用步進電機進行驅動,電機線圈由四相組成,即[A,B,C,D]四相,驅動方式為兩相激磁方式[5]。電機驅動模塊電路如圖5所示。
電機使用12 V工作電壓,最大電流為0.26 A,需要額外的驅動電路實現(xiàn)PWM控制。電機驅動模塊采用STC15F104將輸入的PWM波形轉換成4路方波輸出,方波進步通過ULN2003大電流復合晶體管驅動,通過P3.0~P3.7控制各線圈的接通與切斷。電機采用四相雙四拍工作方式,通電換相的正序為AB?BC?CD?DA;反序為AD?DC?CB?BA。如果P3口輸出的控制信號中,0代表使繞組通電,1代表使繞組斷電,則可用4個控制字來對應這4個通電狀態(tài),雙四拍工作方式的控制字見表1。
2.4? 上位機控制
上位機控制器采用STC12C5A60S2單片機作為控制器,其原理電路如圖6所示。
STC12C5A60S2每個I/O口驅動能力均可達到20 mA,因此,可用它直接驅動液晶顯示器或者矩陣鍵盤而不用接上拉排阻,同時可以使用獨立的串口波特率發(fā)生器,這樣給設計帶來了很大方便。上位機最小系統(tǒng)如圖6所示。U1為LCD12864液晶顯示器接口,P1為[4×4]矩陣鍵盤接口,晶振電路亦采用11.059 2 MHz晶振,P3.0和P3.1接串口電路。限于篇幅原因,串口通信、液晶顯示和矩陣鍵盤不再一一贅述。
本次系統(tǒng)設計得到的高壓調節(jié)閥控制器PCB印刷電路板如圖7所示。系統(tǒng)電路板上分別為模擬電路部分和數(shù)字電路部分,外接LCD顯示屏和人機鍵盤。實驗儀器主要有萬能表、直流電源、示波器、仿真器等。
3? 系統(tǒng)軟件設計
3.1? 閥門開度調節(jié)
系統(tǒng)軟件開發(fā)平臺為KEIL,以C語言編程。軟件主要完成系統(tǒng)的初始化設置[6]、控制、通信、顯示等功能。系統(tǒng)中,上位機發(fā)送控制碼,下位機根據(jù)控制碼執(zhí)行相應控制動作,并實時向上位機發(fā)送其工作狀態(tài)以供顯示。上電后,首先上下位機進行握手通信,然后建立連接后方可進行自動或手動控制,其系統(tǒng)軟件流程圖如圖8所示。當單片機通過串口發(fā)送數(shù)據(jù)時,只需要將要發(fā)送的內容直接賦給緩沖寄存器SBUF就可以了,當單片機通過串口接收數(shù)據(jù)時,只需要緩沖寄存器SBUF中的內容直接讀出即可。
控制方式和數(shù)據(jù)顯示都是由上位機來完成指令發(fā)送和數(shù)據(jù)接收的。當下位機接收到命令指令后,經(jīng)過判斷來執(zhí)行相應的動作,其中,主要指令有:手動正傳、手動反轉、自動運行、清零和停止運行。下位機在主函數(shù)中一直進行掃描判斷,完成相應的動作執(zhí)行。
上位機發(fā)送手動指令時,下位機工作在手動調節(jié)模式,而當檢測到按鍵松開時,上位機停止發(fā)送手動指令,以實現(xiàn)閥門開度的點動控制。上位機發(fā)送自動指令時,下位機將工作在自動調節(jié)模式,上位機使用矩陣鍵盤輸入閥門的目標開度,并將該目標開度發(fā)送給下位機。下位機將該目標開度值轉換為目標脈沖個數(shù),然后根據(jù)當前脈沖個數(shù)和目標脈沖個數(shù)的差值控制電機轉動方向,即目標脈沖個數(shù)大于當前脈沖個數(shù),步進電機正向轉動,當前脈沖個數(shù)增計數(shù),閥門開度增加;反之,目標脈沖個數(shù)小于當前脈沖個數(shù),步進電機反向轉動,當前脈沖個數(shù)減計數(shù),閥門開度減小;當前脈沖個數(shù)等于目標脈沖個數(shù)時,即閥門已由當前開度調節(jié)至目標開度,電機停止調節(jié),下位機停止計數(shù)。系統(tǒng)具備正反轉互鎖和延伸切換保護功能,同時,下位機的當前脈沖數(shù)轉換為當前開度在上位機上進行顯示。
3.2? 模糊PID算法
控制器使用PWM驅動步進電機,由于使用了硬件PWM發(fā)生器,單位時間內PWM波的個數(shù)難以計算。另外,考慮到位置偏差大時,控制要求快速跟蹤,而偏差較小時,則要求提高控制精度,因此需要采用PID算法。
PID控制程序流程圖如圖9所示,如果被控量遠未接近給定值,僅剛開始向給定值變化時,由于比例和積分反向,將會減慢控制過程。為了加快開始的動態(tài)過程,可以設定一個偏差范圍[v],當偏差[e(t)<β]時,即被控量接近給定值時,就按正常規(guī)律調節(jié),而當[e(t)≥β]時,則不管比例作用為正或為負,都使它向有利于接近給定值的方向調整,即取其值為[e(t)-e(t-1)],其符號與積分項一致。根據(jù)PWM相關寄存的使用方法,直接設置相應的寄存器,PWM模塊將會產(chǎn)生頻率和占空比可調的PWM波。當PWM模塊一旦運行后,如果不使用軟件方法去關閉,它將一直輸出相應參數(shù)的PWM方波,與其他程序的運行沒有關系,從而實現(xiàn)增量式模糊PID算法的實現(xiàn)。
系統(tǒng)利用模糊PID算法,通過PID的輸出控制PWM的頻率,可加快控制的動態(tài)過程,以滿足偏差大時的快速性要求和偏差小時的精確性控制,從而達到調節(jié)電機速度和防止開度調節(jié)慣性產(chǎn)生振蕩的目的[7?10]。此外,系統(tǒng)還具備編碼器故障或急停保護、掉電保持等功能。
4? 結? 語
本文研制成功的高壓調節(jié)閥控制器,整個過程簡單直觀,能巧妙且低成本地解決高壓閥調節(jié)問題。系統(tǒng)可以對調節(jié)閥門開度進行準確控制,同時能夠實時地在線對調節(jié)閥進行監(jiān)控。本遠程調節(jié)閥控制器適用于工業(yè)生產(chǎn)、生活需要對流體流量實現(xiàn)自動化精確控制的過程環(huán)節(jié)中,也可適用于工業(yè)生產(chǎn)諸如石化行業(yè)中的煉油裝置和合成氨裝置等有毒有害流體的遠程精確控制過程中。
參考文獻
[1] 劉熠,趙春宇,陳大躍.閥門開度的數(shù)字化精確測量和控制[J].自動化技術與應用,2004,23(3):65?67.
[2] 潘宇軒,董全林,張玉蓮.基于SPI驅動的智能調節(jié)閥控制系統(tǒng)研究[J].現(xiàn)代電子技術,2018,41(10):1?4.
[3] 閆孝姮,李文江.一種新型智能調節(jié)閥的設計[J].電子設計應用,2007(3):96?97.
[4] 張紅瑞.一種基于計算機控制的電動閥門開度顯示方法[J].閥門,2008(1):44?45.
[5] 王振鋒,周英,孫玉寧.基于單片機技術的瓦斯抽采濃度自動調節(jié)閥研究[J].煤氣與熱力,2015,47(3):135?137.
[6] 鄧秉林.單片機在閥門控制系統(tǒng)中的應用[J].真空,2009,46(5):74?76.
[7] 楊超,劉利.電動調節(jié)閥開度控制的研究與實現(xiàn)[J].機電工程,2007,24(2):55?58.
[8] 蔡明.ZPZD3100型智能閥門定位器的原理與設計[J].自動化儀表,2008,29(11):46?49.
[9] 葉定春.PID調節(jié)器及其智能化控制技術的探討[J].煤氣與熱力,2004,24(5):256?259.
[10] 劉會森,張玉蓮,董全林.模糊PID在智能調節(jié)閥控制系統(tǒng)中的應用[J].煤氣與熱力,2018,46(1):91?96.