摘 要: 本文利用虛擬儀器技術(shù), 采用了LABV IEW 圖形編程環(huán)境, 開發(fā)了 一個通用的液位控制測控系統(tǒng), 本測控系統(tǒng)主要完成對液位、流量等參數(shù)的采集和控制。同時對測試結(jié)果進行保存和打印。硬件使用外部設(shè)備。同時還描述了其與上位機的通訊方式。
1 引 言
工業(yè)液位控制中, 常常用到液位控制。如工業(yè)鍋爐的汽包水位、給水排水工程中的儲液容器等是最常見的設(shè)備。最重要的參數(shù)是壓力和流量。因此, 有必要對液位控制進行自動的、實時的監(jiān)控。過去通用的方法是由工作人員分班定時監(jiān)測液位計的指示值, 將指示值與規(guī)定液位數(shù)值比較, 并算出兩者的差值, 根據(jù)液位變化大小作出判斷。控制閥門的關(guān)和開的大小。這樣的弊端: 定時查看缺乏實時性, 不能對系統(tǒng)中的突發(fā)事件進行及時地處理; 不能排除人為發(fā)生錯誤的因素, 如記錄時的誤讀和誤記等。所以, 本文設(shè)計一套實時、自動的液位控制監(jiān)控系統(tǒng)。充分引入虛擬儀器的概念, 使所設(shè)計的監(jiān)控系統(tǒng)結(jié)構(gòu)清晰、概念簡單明了, 系統(tǒng)的軟、硬件具有開放性、兼容性。
2 系統(tǒng)結(jié)構(gòu)設(shè)計
整套裝置的設(shè)計即以微處理機為基礎(chǔ), 將計算機技術(shù)控制技術(shù)、通信技術(shù)和圖形顯示技術(shù)結(jié)合在一起,由 PENM IUM N E 微機為上位機, 實現(xiàn)過程監(jiān)控和信息管理的功能, 可編程控制器ADAM 5510 作為下位機與現(xiàn)場設(shè)備(控制柜) 相聯(lián), 完成系統(tǒng)各種聯(lián)鎖要求,實施對設(shè)備控制操作。如圖 1 系統(tǒng)框圖
圖 1 系統(tǒng)框圖
虛擬儀器技術(shù)的出現(xiàn)使自動化測試系統(tǒng)結(jié)構(gòu)從傳統(tǒng)的機架層迭式結(jié)構(gòu)發(fā)展成為模塊式結(jié)構(gòu)。根據(jù)虛擬儀器技術(shù)的系統(tǒng)結(jié)構(gòu), 將工業(yè)液位監(jiān)控系統(tǒng)進行如下抽象:
整個系統(tǒng)被分為五個層次: 儀器模塊、硬件接口、I/O 接口、儀器驅(qū)動程序和系統(tǒng)軟件。系統(tǒng)結(jié)構(gòu)明了,層次劃分清晰, 每一層的功能明確。
ADAM 5510 是臺灣研華公司開發(fā)的基于 PC 的可編程智能控制器, 用于數(shù)據(jù)的采集和控制。每個系統(tǒng)有 4 個 I/O 模塊 ( I/O 點數(shù) 64 點) , 系統(tǒng)提供通訊口(RS2232/485) 允許系統(tǒng)與其他設(shè)備通訊。ADAM 5510可直接連接多種類型的傳感器, 實用于測量溫度、壓力、流量、電壓、電流及多種類型數(shù)字信號: 信號類型(電流、電壓) 及輸入、輸出范圍有多種選擇。
ADAM 5510 提供了很多 I/O 模塊, 大致有 4 類 I/O 模塊。模擬 I/O 模塊、數(shù)字 I/O 模塊、延時輸出模塊、計數(shù)器/頻率計模塊。在本設(shè)計中我們主要用到了數(shù) 字 I/O 模 塊 ADAM 5050 和 模 擬 I/O 模塊ADAM 5017。本液位測控系統(tǒng)硬件設(shè)備用來采集數(shù)據(jù)和控制,選用 PLC, 測量溫度、壓力、流量及由電機帶動的閥門開關(guān)大小數(shù)字信號。數(shù)據(jù)采集和閥門控制部分是以PLC 為核心的, 它和上位機采用串行通信。軟件工具采用虛擬儀器基于數(shù)據(jù)流的編譯型圖形編程環(huán)境——L abV IEW 軟件。
3 通信的實現(xiàn)
ADAM 5510 可編程控制器基于 PC 的控制, 它既能作為獨立單元工作, 又能做為分布式控制系統(tǒng)的一部分。對ADAM 5510 進行采集和控制, 這就涉及到通信問題。以實現(xiàn)遠程下載和監(jiān)控。
ADAM 5510 與上位機進行通信之前, 必須對 RS2232 通信端口進行初始化。使兩者按相同的通信格式。初始化參數(shù)包括波特率、起始位、停止位和奇偶校驗位等。RS2232 通信口一般設(shè)置為波特率 9600b/s, 1 個起始 位, 7 個 數(shù) 據(jù) 位, 2 個 停 止 位 和 奇 偶 校 驗 位,ADAM 5510 可以用 TUBRO C2. 0 進行編程。
ADAM 5000/485 以串行通信模式, 它有 RS2485異步通信串行接口, 其通信協(xié)議A SC II 命令/響應(yīng)協(xié)議。如果沒有響應(yīng)到達, 程序中斷并且主機返回控制命令。
其命令格式:
[分隔字符][地址][插槽][通道][命令][數(shù)據(jù)][校驗位][回車]
每個命令開始有一個分隔符, 它只有四個有效字符: $ # % @。分隔符跟有兩個字符地址(16 進制);
指明了目標系統(tǒng)。這兩個字符后的地址指明了模塊插槽和通道。根據(jù)這個命令, 可選的數(shù)據(jù)段可以跟命令串。一個可選兩位校驗位也添加到命令串。每條命令可以回車結(jié)束。
由于L abV IEW 軟件不支持ADAM 5510 的驅(qū)動,ADAM 5510 和LABV IEW 之間的通信則需要用戶對LABV IEW 進行二次開發(fā)。本文在編寫通信程序是將ADAM 5510 仿成 ADAM 5000/485, 由于 L abV IEW支持ADAM 5000/485 的驅(qū)動, 按ADAM 5000/485 的命令格式發(fā)送和接收命令。在ADAM 5510 里面進行編程時將收到的指令進行解讀, 然后轉(zhuǎn)去執(zhí)行 5510 的相應(yīng)函數(shù), 再將結(jié)果按照ADAM 25000 的格式發(fā)給上位機, 實現(xiàn)對ADAM 5510 的控制和采集。例將 5000改 成 5510, 其 他 配 置 不 變, L abV IEW 要 獲 取ADAM 5510 中模塊 5017 的數(shù)據(jù)。即當(dāng)L abV IEW 發(fā)送# 01S0 至 5510 時, 5510 中用戶程序首先對LAB2V IEW 發(fā)送的命令進行判斷, 如果接收的命令符合5000/485 指令集 (如為# 01S0 (CR ) ) , 則按照指令集的響應(yīng)格式返回(如: > + 1. 4567 + 1. 4852 + 1. 5661+ 1. 6821 + 1. 5459 + 2. 789 + 1. 7768 + 1. 1623(CR) )。這時LABV IEW 就將 5510 認為是 5000/485了。
4 系統(tǒng)軟件設(shè)計
應(yīng)用軟件是整個液位控制系統(tǒng)的關(guān)鍵的部分, 它起著樞紐的作用, 對上和用戶打交道, 對下和各種設(shè)備通信以獲取信息。該軟件要完成的主要任務(wù)有: 系統(tǒng)初始化、測量參量的集中顯示、數(shù)據(jù)測試、數(shù)據(jù)存儲、打開記錄、數(shù)據(jù)庫存儲、報警、報表打印。
充分利用L abV IEW 模塊化、層次化的設(shè)計思想和設(shè)計方法, 采用自頂向下的結(jié)構(gòu)化設(shè)計方法, 建立系統(tǒng)的層次圖。其層次結(jié)構(gòu)圖如圖 2。
圖 2 層次結(jié)構(gòu)圖
4. 1 模規(guī)功能
(1) 實時監(jiān)測模塊(包括壓力流量數(shù)據(jù)監(jiān)測、參數(shù)設(shè)定)。在實時監(jiān)測模塊的設(shè)計中我們將液位控制模擬系統(tǒng)的當(dāng)前運行狀況通過圖形和數(shù)字的方式集中的顯示在計算機屏幕上。用模擬屏監(jiān)測模式更直觀, 界面起到了顯示數(shù)據(jù)的作用, 而后臺運行的數(shù)據(jù)采集才是核心的部分。默認情況下, 數(shù)據(jù)采集由軟件自動完成, 當(dāng)然, 也可以隨時切換到手工控制采集。即在上位機點擊仿真屏上的閥按鈕, 下位機開始進行控制和采集。
(2) 報警處理模塊。報警處理模塊包含聲音報警、視覺報警和報警記錄的查詢功能。實時報警包含聲音報警和視覺報警。聲音報警是通過ADAM 5510 的5050 輸出量與液位控制屏中的報警燈相連。當(dāng)液位超過給定值的上限或下限, 報警燈發(fā)出聲音報警。視覺報警是通過在屏幕上的一個不停閃爍的燈來實現(xiàn)的。操作員還可以設(shè)置報警的上下限。
(3) 通訊模塊。通信功能實際上是由儀器驅(qū)動程序和 I/O 接口軟件共同實現(xiàn)的。即將可編程控制器采集的值(下位機) 通過雙絞線將數(shù)據(jù)傳遞到微機(上位機)。
(4) 數(shù)據(jù)庫管理模塊。對采集的數(shù)據(jù)進行保存和分析處理, 從趨勢圖上看出它的曲線變化。并且從數(shù)據(jù)庫中查詢歷史數(shù)據(jù)。
(5) 控制。上位機 PC 能對ADAM 5510 的電磁閥、泵進行控制, 從而進行手動控制。起到監(jiān)控的作用。
(6) 報表模塊。對數(shù)據(jù)庫內(nèi)的數(shù)據(jù)進行報表打印,及時反映測試數(shù)據(jù)的變化。用戶可以查詢?nèi)魏畏?SPAN lang=EN-US>EXCEL 格式的報表。
4. 2 大致過程
(1) 建立前面板。從控制模塊上選擇你需要的對象, 放在虛擬儀器的前面板上。然后再分別設(shè)計各個要調(diào)用的V Is。設(shè)計各調(diào)用模塊(V Is) 時先在前面板上放置實現(xiàn)輸入/輸出所需的控制器、指示器, 再根據(jù)功能需求將V Is 細分成多個子V Is(subV Is) 分別實現(xiàn)不同的功能。
(2) 構(gòu)建圖形化的數(shù)據(jù)流圖。對虛擬儀器進行程序設(shè)計, 自己構(gòu)建數(shù)據(jù)流圖。從功能模板上選擇處理數(shù)據(jù)需要的“Functions”(用圖標表示) , 并用線將它們連接起來以便數(shù)據(jù)進行傳遞。構(gòu)建數(shù)據(jù)流圖是創(chuàng)建虛擬儀器致關(guān)重要的一步, 不管前面板設(shè)計的多好, 數(shù)據(jù)流圖上的數(shù)據(jù)處理不合理, 功能無法實現(xiàn)。
(3) 模塊化和層次。創(chuàng)建自己的虛擬儀器圖標和連接器, 建好低級子VI。
5 結(jié) 語
由于采用了虛擬儀器技術(shù)的思想, 使得開發(fā)出來的液位控制系統(tǒng)結(jié)構(gòu)明了、層次清楚?,F(xiàn)場液位控制是用壓力傳感器來顯示液位的變化, 操作者是通過肉眼來觀察儲存罐內(nèi)液位的變化。有可能產(chǎn)生誤差。使用虛擬儀器直觀, 將儀表設(shè)計到軟件上, 數(shù)據(jù)顯示通過波形或儀表面板直觀來反映。系統(tǒng)具有開放性、可擴展性和可重用性, 開發(fā)周期短等優(yōu)點。










