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










