淺談中控后備系統(tǒng)軟件的通訊設(shè)備
2024/11/4 8:42:32點(diǎn)擊:
中控后備系統(tǒng)軟件分為兩部分,一個(gè)是設(shè)備通訊進(jìn)程,一個(gè)是報(bào)警交互進(jìn)程,兩進(jìn)程間通過共享內(nèi)存交換數(shù)據(jù)。設(shè)備驅(qū)動程序工作在查詢方式,不適于做實(shí)時(shí)控制。為了保證通訊的實(shí)時(shí)性,設(shè)備通訊進(jìn)程采用匯編語言編制中斷駐留程序,通過硬件時(shí)鐘中斷定時(shí)從通訊卡中讀取通訊數(shù)據(jù)。計(jì)算機(jī)高端內(nèi)存區(qū)是對所有程序進(jìn)程開放的,駐留程序在高端內(nèi)存區(qū)開設(shè)通訊發(fā)送、接收緩沖隊(duì)列,可方便地解決共享內(nèi)存的問題。中斷駐留程序通過修改時(shí)鐘中斷,定時(shí)接收來自CZ10的報(bào)文數(shù)據(jù),并對數(shù)據(jù)進(jìn)行分離,存放在與CZ10相對應(yīng)的緩沖隊(duì)列中。報(bào)警交互進(jìn)程從緩沖隊(duì)列中提取報(bào)文數(shù)據(jù)進(jìn)行處理,并將操作信號存放在發(fā)送緩沖隊(duì)列中,通訊進(jìn)程檢查發(fā)送隊(duì)列,向相應(yīng)的CZ10發(fā)送數(shù)據(jù)。
系統(tǒng)的定時(shí)器消息經(jīng)常會被占先任務(wù)延遲,要達(dá)到實(shí)時(shí)控制需對控制程序進(jìn)行特殊處理。在實(shí)際編程中,我們底層采用了DOS中斷駐留程序來完成實(shí)時(shí)通訊,將通訊報(bào)文儲存在報(bào)警循環(huán)隊(duì)列中,保證數(shù)據(jù)通訊的實(shí)時(shí)性和完整性。系統(tǒng)程序使用定時(shí)消息,通過共享內(nèi)存的方式從報(bào)警循環(huán)隊(duì)列中獲取報(bào)文消息,經(jīng)過求和校驗(yàn)判斷、故障代碼分類判決等過程將判決結(jié)果填充相應(yīng)的數(shù)據(jù)結(jié)構(gòu)中。系統(tǒng)主消息循環(huán)空余時(shí)間循環(huán)掃描系統(tǒng)數(shù)據(jù)結(jié)構(gòu)區(qū),根據(jù)報(bào)警的不同類別和信息建立和清除報(bào)警、故障等異常查詢隊(duì)列,并根據(jù)不同的報(bào)警地址切換圖形,顯示報(bào)警位置。操作員可根據(jù)不同的操作員級別對這些異常進(jìn)行操作處理。同時(shí),系統(tǒng)還將接收到的信息及操作員的操作過程通過打印機(jī)記錄下來,并同時(shí)以文件形式儲存在磁盤中以便日后查詢管理。
- 上一篇:控制命令對不同的監(jiān)控單元進(jìn)行動態(tài)選擇 2024/11/4
- 下一篇:監(jiān)控市場對技術(shù)的要求越來越嚴(yán)格 2024/11/4
