摘要:在綜述DCS和現場總線技術的基礎上,提出了多臺智能儀表控制系統的概念,利用控制PC機通過串行通信接口卡、RS-485總線與智能儀表相連,構建多智能儀表DCS系統,分析了系統的結構,提出了系統的通信協議,其控制對象既可以是實際的工業過程對象,也可以是被控對象模型系統。監控軟件提供了明確的控制接口,可以方便地實現各種控制算法的控制實驗。
關鍵詞:智能儀表,集散控制系統(DCS),現場總線,通信協議,串行通信
現代化生產需求使過程控制向著多輸入多輸出的要求發展,以及現代工業的控制分散性和管理的集中性不斷提高,集散型控制系統(DCS)應運而生。在目前國外現場總線設備和DCS都很昂貴的情況下,國企的集散系統改造只能走具有自己特色的道路。本文針對以上問題和應用要求,以智能儀表作為現場控制設備,研究組成DCS及其應用中的有關技術,并提出了一種多智能儀表控制系統的設計方案,構建了多智能儀表DCS實驗系統,考慮到實驗的實際需要,設計了被控對象模型和計算機監控系統軟件。該實驗系統由PC機、智能儀表、串行通信接口卡、RS-485總線以及被控對象模型系統構成。
1、多智能儀表控制系統的體系結構
1.1 一般DCS的體系結構
20世紀70年代中期以來過程計算機控制系統的發展進入以采用4C技術(計算機、通信、控制、CRT顯示技術)為特征的集散型控制系統(DCS)的發展時期。從系統結構分析DCS可分為三大基本部分:分散過程控制裝置部分、集中操作和管理系統部分以及通信系統部分。三部分的關系如圖1所示。
功能分層是DCS的體系特征,它充分反映了集散控制系統的分散控制與集中管理的特點。按照功能分層的方法,多智能儀表控制系統可以分為現場控制站、過程控制站、控制級、生產管理站。
1.2 多智能儀表控制系統的體系結構
圖1 DCS結構框圖
(1)總體結構
如前所述,多智能儀表控制系統面向國內中小企業技術改造的需求,因此在將一般的DCS的各層功能綜合后,我們提出了多智能儀表控制系統的網絡結構,如圖2所示。
現場級部件主要由智能儀表組成,控制PC機可由工控機組成,也可由普通PC機組成。智能儀表與控制PC機之間采用現場總線連接,現場總線協議應根據控制的要求和智能儀表的特點設計。管理級部件主要為商用PC機或其他計算機組成,其本身構成管理信息系統MIS(Management Information System)。管理PC機與控制PC機之間采用通用計算機網絡聯接,其具體種類可依據MIS系統組成的要求確定。
圖2 多智能儀表控制系統的網絡結構圖
(2)智能儀表
內置微處理器的出現使智能儀表較傳統儀表在設計方法、電路結構以及功能操作都發生了根本性的變化。在智能儀表中,除調節功能幾乎完全由微處理器實現,微處理器是核心,在儀表軟件的控制下有序地工作。在多智能儀表控制系統中,智能儀表和控制PC機之間交換的信息可分為:測量值;設定值;控制量;狀態參數(一是反映智能儀表工作情況或生產情況的數值或0/1邏輯值,二是對智能儀表工作狀態和參數的設置,最典型的是PID參數設置)。
(3)控制PC機
控制PC機主要用來實現集中操作和高級控制,是分散控制和管理PC機的集中管理之間的橋梁,一般完成顯示與打印、控制管理與操作,系統配置組態的功能。
(4)管理級
要實現上述的控制目標,還必須進行更高層次的控制和管理。現代企業采用MIS系統來實現。
(5)現場總線
智能儀表和現場總線技術是密不可分、相輔相成的,目前國內智能儀表一般用的是通用型單片機如MCS-51系列。因此從技術實現、經濟及生產實際上考慮,在采用諸多現場總線標準對于國企技術改造時,采用RS—485總線是較好的選擇,多智能儀表控制系統即以RS-485總線作為通信協議的物理傳輸介質。
2、多智能儀表控制系統的通信協議
智能儀表通信功能是智能儀表DCS系統實現的基礎,在參考一些已有的協議的基礎上,我們合理設計了通信功能的硬件和軟件,提出了多智能儀表控制系統協議,其總體通信策略采用預約協議,即時間被分成時間片,每個智能儀表利用預先留用的時間片與主機通信。現場總線的網絡層次模型借鑒OSI七層協議,并進行了部分擴展,側重于工業應用,構成工業現場的通信網絡。本設計中具體的網絡規范采用了OSI協議中的應用層、網絡層、數據鏈路層、物理層。在物理層,該系統現場總線的傳輸介質采用RS-485雙絞線。在數據鏈路層,其主要功能是:信息幀的裝配和分解,差錯控制和處理。波特率采用標準的1200、2400、4800、9600,可根據系統設計要求進行選取;傳輸幀采用標準的UART格式。
在多智能儀表控制系統現場總線上,傳輸幀可分為地址幀和數據幀,其區別在于地址幀中第9數據位為“1”。數據幀中第9數據位為“0”,差錯校驗采用CRC校驗。在網絡層,現場總線是多節點共線的一種網絡,其網絡層的管理由控制PC機完成。地址幀由控制PC機發出,用于喚醒總線上的某臺智能儀表以求與之建立通信,智能儀表只有接收到包含特定數據位(通常為其儀表地址編號)的地址幀后才開始通信過程。智能儀表的通信過程以向控制PC機回送包含特定數據位(儀表地址)的數據幀開始;控制PC機接收到該數據幀即確認與該智能儀表建立通信。控制PC機與智能儀表之間的通信即為相互交換信息復幀的過程。
在應用層,對于多智能儀表控制系統而言,應用層協議即為對控制PC機與智能儀表之間相互傳送的信息復幀的定義。應用層協議如表1所示:
表1 應用層協議
PC機接口和智能儀表DCS實驗系統的現場總線之間接口轉換電路使用研華公司生產的PCL-743/745串行通信接口卡。每個接口卡具有兩個RS-485串行通信口,每個端口有一個具有16字節的先進先出(FIFO)緩沖器的通用異步收發器(UART)。它在將數據放置到總線之前先將數據緩沖入16字節的信息包內,這樣就極大地減輕了CPU的負載并且當系統忙或者不能及時處理中斷時可以避免數據丟失,這對于Windows操作系統下的高速串行I/O口尤其重要。在接口卡安裝之前,通過卡上的一些跳線來設置I/O基地址和中斷請求。PCL-743/745串行通信接口卡的通信功能是通過對其內部的寄存器進行讀寫操作實現的。
3、控制PC機通信功能的編程實現以及監控軟件設計
控制PC機的通信功能用Visual C++6.0編制一個一個通信線程ThreadProcForComm (LPVOID param) 實現,這個通信線程只完成數據收發處理,包括flag、data_tra、data_rec、address等變量,flag為通信成功與否標志,data_tra為發送數據緩沖數組,data_rec為接收數據緩沖數組,address為智能儀表地址數組。
監控軟件編制應完成以下功能:監視與操作,打印功能和存儲功能。在整個軟件中,所有的控制功能的實現都由控制子函數來完成。對于設定值和控制量的修改以及控制方式的改變,軟件提供了一個Visual C++的類,它有三個成員函數SettingvalueModify ( int h, WORD new ), 參數h表示儀表號,new表示新設置的值;對于控制算法接口,軟件同樣提供了一個Visual C++的類,這個類有兩個成員函數Data_in (measureIn[ ], setpoint[ ])和Data_out (controlOut[ ]),前者把測量值和設定值傳入,后者將控制值送出。measureIn[ ]、setpoint[ ] 和controlOut[ ]分別表示測量值、設定值 和控制值數組,它們均是全局靜態變量。用戶可以在這個類中自由編寫具體的控制算法。至于軟件的存儲與打印功能的設計,這里不再介紹。
4、實例
本設計是在SEU-211智能溫控儀基礎上改進設計了USTS-100智能儀表。SEU-211智能溫控儀也是面向DCS應用的智能控制儀表,其控制對象是電加熱爐,采用熱電偶作為溫度傳感器;儀表的輸入是熱電偶信號,輸出的晶閘管觸發信號;通信功能方面,通信協議以RS-485為基礎,采用地址呼叫/應答后互傳數據幀的結構。USTS-100智能儀表在設計時,硬件方面主要做了以下改進:(1)使其測量輸入/輸出信號還可配接標準電壓電流信號,并將多種信號的輸入輸出電路整合,形成一個能夠兼顧不同電路結構和電路參數的輸入輸出電路,增強其通用性,還設計了被控對象模型系統,這樣可以通過軟件實現不同的工業過程控制對象的特性,增強DCS系統的應用能力。(2)為實現復雜的控制算法,儀表微機預留了可擴展至32KB的掉電保護內存,可實現程序空間和數據空間的任意配置。(3)通信部分電平轉換的核心器件改用性能更好的MAX485。所以硬件電路的改進主要是增強儀表的適應性,通信功能的改進主要集中在軟件方面。
為了能夠兼顧儀表內部測算控主體嚴格的順序性和通信功能的隨機性,該儀表軟件設計時借鑒了多任務操作系統模塊,并且設置任務列表、任務觸發/啟動機制,這樣就保證了各模塊之間嚴格的順序性要求;同時,通信功能也被分解成小的模塊,并且設置收發數據緩存區,根據各通信功能模塊與各測算控功能模塊之間的相互關系,確定其任務觸發機制和任務啟動機制。有關這部分的設計細節較為瑣碎,在此不再贅述。
5、結語
本文針對國企的工業生產自動化技術改造,根據智能儀表組網的特點,提出了利用控制PC機通過RS-485總線與智能儀表相連組成多智能儀表控制系統。在參考具有代表性的現場總線協議的基礎上,提出了多智能儀表控制系統的通信協議,編制了應用軟件,并設計了具有此通信功能的智能儀表USTS-100溫控儀,從而組成多智能儀表控制系統的實用系統,完成了一個有針對性的實驗。實驗證明該實驗系統運行良好,能夠完成各種較為復雜的控制實驗。該研究將有助于提高國內智能儀表的研究和應用水平、拓展其應用領域,并適應國內中小型企業的技術改造需求,因而具有理論意義和實用價值。