技術頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網(wǎng) > 技術頻道 > 技術百科 > Win32環(huán)境下一種通用控制軟件的實現(xiàn)方法

Win32環(huán)境下一種通用控制軟件的實現(xiàn)方法

時間:2009-04-20 16:05:32來源:hesp

導語:?介紹了一種通用的控制系統(tǒng)軟件的實現(xiàn)方法,該軟件架構將復雜的控制系統(tǒng)所有硬件傳感器經(jīng)數(shù)學抽象、歸類后,使用流對象統(tǒng)一處理。
1引言   工控應用已遍及各行各業(yè),特別是隨著計算機的普遍降價、由PC機建構的控制系統(tǒng)也越來越多,該類控制系統(tǒng)的優(yōu)點是開發(fā)人員可以用高級語言及大量的現(xiàn)有軟件快速建構成自己的軟件系統(tǒng)。本文主要介紹了這類應用的一種實現(xiàn)方法:該方法是將所有硬件I/O部分按類型分類。將他們各自的讀寫過程全部函數(shù)化。經(jīng)數(shù)學抽象后歸一化為流對象統(tǒng)一處理:傳感器→流→(初始化函數(shù),流讀,流寫,關閉)→應用軟件讀寫線程→用戶消息→主窗口。經(jīng)這樣的抽象后,無論控制系統(tǒng)多么復雜,硬件傳感器是什么形式,在這種軟件架構下全使用統(tǒng)一的軟件方法處理。 [b]2控制系統(tǒng)硬件結構 [/b]  設想一類控制系統(tǒng)是如下結構建成的,主控臺完成同5個測量站的通信并指揮測量站按確定 方程運動。主控臺通過與網(wǎng)絡與中心站完成雙向I/O、主控臺可以單獨遙控某一測量站設備單獨工作。大的硬件控制如圖1所示。
主控臺與測量站用RS 232通信,經(jīng)Modem接連,與其他測量設備由A/D、D/A連接卡連接,與中心機通信由網(wǎng)絡連接。   在構建此控制系統(tǒng)軟件時,不妨將問題擴展,假定不考慮具體的設備控制對象,不考慮具體的應用類型,考慮一種更復雜的控制系統(tǒng):設想控制系統(tǒng)如圖2所示。
控制計算機使用P4 2.8或P4 2.4 GHz處理器,具體的控制對象設想為抽象傳感器即可。 [b]3控制系統(tǒng)軟件構架 [/b]  本文提供的軟件構架為:對每類控制硬件設備而言,訪問該類硬件無非對應如下幾個函數(shù):  ?。?) 硬件初始化函數(shù)。  ?。?) 硬件讀函數(shù)。  ?。?) 硬件寫函數(shù)。  ?。?) 硬件刷新及關閉函數(shù)。   這樣,經(jīng)過數(shù)學抽象后,每類硬件訪問不超過這5條函數(shù)。無論控制系統(tǒng)由什么硬件傳感器 搭建,對一類傳感器而言。訪問他僅需要幾條語句而已。假設按類型編制了相關的I/O函數(shù)。   該軟件系統(tǒng)的主要思路為:任一控制對象(傳感器)均可設想為流設備、線程完成流讀 寫,讀寫時序由中斷或其他設備事件決定。一旦硬件設備I/O完成,用臨界區(qū)鎖住數(shù)據(jù),導入軟設備緩沖區(qū)。用戶交互部分僅同軟設備緩沖區(qū)打交道,與設備硬件無關。控制函數(shù)只負責設備緩沖區(qū)填寫。這一函數(shù)僅與通訊協(xié)議有關,與硬設備無關。這樣任一硬件設備同計算機通訊都可以將其視為一串流信息的交換。更簡單的看法為:任一硬設備不妨直接視為一定長的十六進制字符串。這樣,任一控制系統(tǒng)在該軟件構架下是若干個十六 進制字符串。而軟件主框架將其流已分成幾大類(串行通訊類,網(wǎng)絡類等)。添加或刪除某些硬件對軟件系統(tǒng)就是關閉幾條條件編譯項。況且對每類應用,I/O函數(shù)是4、5句,所有的同硬件打交道部分都在線程級完成,且讀寫線程機構完全一致。   前臺用戶交互部分已完全獨立于后臺,后臺與相關事件通知有關,與前臺幾乎沒有其他關聯(lián),所以前臺將所有緩沖填好后,只需調一句事件通知即可,這樣后臺將會自動等到該通知后轉入自己的I/O操作。   讀線程完成一具體硬件讀,讀時序由讀事件驅動,讀線程一旦讀到數(shù)據(jù),數(shù)據(jù)先進入用戶設計的臨界區(qū),鎖住數(shù)據(jù),將硬件緩沖區(qū)讀到的數(shù)據(jù)放入軟件緩沖區(qū),發(fā)用戶讀完成消息給前臺,實現(xiàn)軟硬件隔離。   寫線程完成一具體硬件寫,寫時序由寫事件驅動,寫線程一旦要寫數(shù)據(jù),首先調用控制函數(shù)完成設備緩沖區(qū)填寫,進入用戶設計的臨界區(qū)鎖住數(shù)據(jù),將軟件緩沖區(qū)的寫數(shù)據(jù)放到硬件緩沖區(qū),發(fā)用戶定制的寫完成消息給前臺,實現(xiàn)軟硬件隔離。   讀完成用戶處理消息為:完成數(shù)據(jù)轉換,供顯示用。   寫完成用戶處理消息為:先告知用戶狀態(tài)計數(shù)器,表示寫已完成,再做其他顯示處理。對各硬件的訪問全部分開,但讀寫線程結構完全相同。   控制函數(shù)的形式也完全相同,無論是用PID算法或其他算法,均與此函數(shù)結構無關。因為該 控制函數(shù)的本質為:根據(jù)控制字,完成抽象軟件緩沖區(qū)填寫。與控制算法無關。因為這種算法僅在該控制函數(shù)中作為子函數(shù)調用。   控制函數(shù)的功能為:根據(jù)控制字完成寫出緩沖區(qū)填寫,并置寫出長度,填寫緩沖區(qū)為軟設備緩沖區(qū),控制函數(shù)對設備而言結構是完全統(tǒng)一的。形式為:
其中k為控制方式字。例如:0為待機,1為手動,2為理論彈道,3為正弦彈道……   控制時序由標準的時鐘設備提供,例如B碼或其他設備,他產生的同步脈沖作為中斷源接入 系統(tǒng)。中斷處理程序一旦檢測到該中斷,設置各自硬件讀寫事件為有信號(硬件讀寫事件由用戶在初始化時建立為手工復位的事件)。在讀寫線程中一旦完成讀寫操作,復位這些事件。   對應于上述復雜的硬件控制系統(tǒng),該控制軟件架構如圖3所示。
讀設備線程:  ?。?) 判斷線程是否退出,如退出則轉(8),否則轉(2)。   (2) 等待讀事件,永遠等(該事件為手工復位)。   對異步串行設備或網(wǎng)絡設備而言該步可省略。  ?。?) ReadFileDevice()調設備硬件讀函數(shù)完成讀操作。   (4) 判斷讀是否成功,如不成功,則轉(1),如成功轉(5)。  ?。?) 進入臨界區(qū),將硬件讀緩沖區(qū)復制到軟設備緩沖區(qū),退出臨界區(qū)。  ?。?) 發(fā)用戶消息到前臺,復位讀事件,為下一次讀做準備。  ?。?) 轉(1)。  ?。?) 結束。   寫設備線程:   (1) 判斷線程是否退出,如退出則轉(9),否則轉(2)。   (2) 等待寫事件,永遠等(該事件為手工復位)。   (3) 調控制函數(shù)完成設備緩沖區(qū)填寫。  ?。?) 進入臨界區(qū),將軟設備寫緩沖區(qū)復制到硬件寫緩沖區(qū),退出臨界區(qū)。   (5) WriteFileDeivce()調設備寫函數(shù)完成寫操作。   (6) 判斷寫成功否,如不成功轉(1),如成功轉(7)。   (7) 發(fā)用戶消息到前臺,復位寫事件,為下一次寫做準備。   (8) 轉(1)。  ?。?) 結束。 [b]4結語 [/b]  在這樣一種軟件架構下,控制系統(tǒng)硬件接口部分從軟件角度看僅是4、5條函數(shù),通過Window s 2000的內核同步對象(事件和臨界區(qū))將軟硬件緩沖區(qū)實行了隔離及同步。通過中斷置事 件達到控制時序設置。經(jīng)過這一系列步驟后,整個控制系統(tǒng)的計算機實現(xiàn)軟件結構清晰明了 ,調試方便。該軟件系統(tǒng)架構與開發(fā)工具無關,作者運用這一軟件架構已設計多套控制系統(tǒng) ,這些控制軟件目前正成功運行于我國幾個基地。 [b]參考文獻 [/b][1]曹國鈞,王鍵.深入Windows 2000應用[M].北京:北京科海集團 出版社,2001. [2]飛思科技產品研發(fā)中心Delphi下深入Windows核心編程[M].北京:電子 工業(yè)出版社,2003. [3][美]William BoswellWindows 2000 Server 技術內幕[M].北京:清 華大學出版社,2001. [4]陳平,褚華.軟件設計師教程[M].北京:清華大學出版社,2004. 編輯:何世平

標簽:

點贊

分享到:

上一篇:VXI通用測試軟件框架結構的研究

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動網(wǎng)版權與免責聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(wǎng)(www.surachana.com)獨家所有。如需轉載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責任。

本網(wǎng)轉載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。

相關資訊

網(wǎng)站簡介|會員服務|聯(lián)系方式|幫助信息|版權信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網(wǎng)-工業(yè)自動化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務平臺

網(wǎng)站客服服務咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2025 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權所有
粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網(wǎng)安備 44030402000946號