生產(chǎn)用環(huán)境參數(shù)自動監(jiān)測系統(tǒng)軟件的設(shè)計與實現(xiàn)
引言
在實際生產(chǎn)中各個工藝的溫濕度都有相應(yīng)的標(biāo)準(zhǔn),要對生產(chǎn)過程的環(huán)境溫濕度進行嚴(yán)格控制,必須首先要精確測試。作者參加的一個實際項目主要是根據(jù)生產(chǎn)的實際情況和要求,研制生產(chǎn)用環(huán)境參數(shù)自動監(jiān)測系統(tǒng)。該系統(tǒng)投入運行后,極大地提高了產(chǎn)房溫濕度測試精度和自動化程度,大大減輕了工人的勞動強度,為提高產(chǎn)品質(zhì)量提供了保證。
1系統(tǒng)概述
1.1系統(tǒng)的技術(shù)指標(biāo)及功能
本文介紹的生產(chǎn)用環(huán)境參數(shù)自動監(jiān)測系統(tǒng)的主要技術(shù)指標(biāo)及功能如下:
(2)溫濕度測試點數(shù):4個車間,每個車間6~10點;
(2)測試范圍及精度:溫度:0~80笆,精度:+0.5G濕度:0%~100%,精度:+5%RH;
(3)顯示方式:各車間內(nèi)和主機房內(nèi)分別循環(huán)顯示;
(4)通訊距離:車間和主機房之間的通訊距離不超過700m;
(5)數(shù)據(jù)記錄:每過20分鐘主機房內(nèi)計算機記錄一次,一晝夜存盤一次;
(6)測量方式:各車間參數(shù)巡回監(jiān)測,主機每過20分鐘向各車間采集數(shù)據(jù)一次;
(7)報警處理:對所監(jiān)測參數(shù)進行超限判斷,如超限,給出聲關(guān)報警;
(8)打印功能:可隨時打印,也可整日打印。
1.2系統(tǒng)結(jié)構(gòu)與工作原理
系統(tǒng)采用分散式三級系統(tǒng)方案,即下位機、中位機以及上位機。下位機主要是每個車間內(nèi)的數(shù)據(jù)采集單元,用于本車間內(nèi)參數(shù)采集及顯示,同時還將測量結(jié)果傳輸?shù)街鳈C房;中位機則主要負(fù)責(zé)從各下位機獲取數(shù)據(jù),進行綜合顯示,數(shù)據(jù)超限判斷,報警,最近24小時數(shù)據(jù)保存等;上位機由普通x86微機承擔(dān),主要用于查詢數(shù)據(jù)或?qū)y量數(shù)據(jù)定時存盤以及打印等。
整個系統(tǒng)由傳感器、下位機、中位機和上位機組成,系統(tǒng)結(jié)構(gòu)框圖如圖1所示,整個系統(tǒng)的工作原理框圖如圖2所示。由圖可見,各車間的溫濕度參數(shù)經(jīng)各自的傳感器變換成電流傳送給各自的下位機,每臺下位機對本車間內(nèi)的溫濕度參數(shù)進行循環(huán)采集、處理、顯示,當(dāng)中位機尋址到該下位機時,該下位機通過電流環(huán)串行通訊方式傳輸給中位機。中位機與下位機是主從關(guān)系,中位機采用主動尋址方式收集各個下位機采集到的數(shù)據(jù)。上位機與中位機也是主從關(guān)系,當(dāng)上位機需要中位機的數(shù)據(jù)時,上位機將通過并行口得到中位機匯總好的測試數(shù)據(jù)。
2系統(tǒng)上位機軟件設(shè)計
2.1軟件功能
系統(tǒng)上位機軟件主要用于實現(xiàn)5項功能。
(1)查詢功能
查詢當(dāng)前時刻前24小時內(nèi)溫濕度的測量數(shù)據(jù)和報警數(shù)據(jù),以及當(dāng)前時刻的溫濕度測量數(shù)據(jù)和報警數(shù)據(jù);
(2)存盤功能
將24小時內(nèi)的測量數(shù)據(jù)和報警信息存盤,以備將來查詢;
(3)顯示和打印功能
通過系統(tǒng)隨時顯示和打印歷史測量數(shù)據(jù);
(4)修改功能
可修改上位機系統(tǒng)時間和中位機內(nèi)的時間、傳感器好壞標(biāo)志、扌艮警上下限,以及下位機重新設(shè)置信息;
(5)曲線和報表生成功能
系統(tǒng)可將24小時的數(shù)據(jù)自動生成曲線和報表。
2.2軟件組成
上位機軟件用C語言編寫,由三個源程序模塊y-high.c,y-common.c,y-menu.c組成。其中y-hlgh.c為主程序模塊,y-common.c是大量子函數(shù)的集合,y-menu.c是人機界面函數(shù)的集合。它們?nèi)咧g的相互關(guān)系如圖3所示。
2.3上位機軟件主程序流程圖
上位機軟件采用子上而下的模塊設(shè)計思想,從功能模塊的劃分開始,逐級細(xì)化。其主程序流程圖如圖4所示。
圖4 上機位主程序流程圖
3中位機軟件設(shè)計
3.1軟件功能
系統(tǒng)中位機軟件主要應(yīng)實現(xiàn)的功能如下:
(1)定時讀取各下位機的測試數(shù)據(jù)(20分鐘一次);
(2)監(jiān)測按鍵,當(dāng)有鍵按下時,CPU做出相應(yīng)處理;
(3)循環(huán)顯示各車間的溫濕度測試數(shù)據(jù);
(4)定時顯示報警信息;
(5)及時響應(yīng)上位機的通訊信號。
根據(jù)用戶要求,設(shè)計時可選擇功能3作為主程序部分;功能4、5由系統(tǒng)中斷服務(wù)子程序完成;功能1、2由主程序的兩個子程序完成。
3.2主程序
系統(tǒng)中位機的主程序流程圖如圖5所示。中位機每過20分鐘讀取各下位機數(shù)據(jù)一次,中位機巡回顯示四個車間的溫濕度,每個車間有6個溫度傳感器。
圖5 中位機主程序流程圖
3.3通訊程序
3.3.1中位機與上位機的通訊程序
中位機和上位機的通訊協(xié)議是上位機與中位機的并行通訊采取主從關(guān)系的通訊方式,當(dāng)上位機向中位機傳輸數(shù)據(jù)時,上位機采用查詢方式,中位機采用中斷方式;當(dāng)中位機向上位機傳輸數(shù)據(jù)時,中位機和上位機均采用查詢方式。
在中位機與上位機的通訊服務(wù)程序中,中位機的并行通訊中斷子程序如圖6所示。
3.3.2中位機與下位機的通訊程序
系統(tǒng)中的中位機與下位機的串行多機通訊協(xié)議約定如下:系統(tǒng)中下位機容量為8臺,地址分配為01H-08H;地址FFH是對所有下位都起作用的控制命令,命令各下位機恢復(fù)SM2=1的狀態(tài);制定中位機的控制命令代碼,代碼按00H,01H,02H,03H順序設(shè)置,其它均為非法代碼。
通訊服務(wù)程序中的中位機串行通訊程序流程如圖7所示。
圖6 中位機并行通訊中斷子程序流程圖
圖7 中位機串行通訊子程序流程圖
其中的中位機工作寄存器設(shè)定為:
R5:從機地址;R6:命令
4下位機軟件設(shè)計
4.1軟件功能
系統(tǒng)下位機軟件所要實現(xiàn)的功能有:①循環(huán)采集最多24路環(huán)境溫濕度參數(shù);②進行軟件濾波;③實現(xiàn)本車間數(shù)據(jù)的循環(huán)顯示;④實時響應(yīng)中位機的通訊要求。
4.2軟件設(shè)計
系統(tǒng)下位機的主程序流程圖如圖8所示。
系統(tǒng)下位機的功能主要是循環(huán)采集和顯示車間內(nèi)的各點溫濕度參數(shù)值。一般情況下,下位機采用中斷方式與中位機進行數(shù)據(jù)傳輸。
5結(jié)語
本文從系統(tǒng)架構(gòu)方面綜合考慮了生產(chǎn)用環(huán)境參數(shù)自動檢測系統(tǒng)的適用性、可靠性、可維護性、擴充性、操作簡便性,深入分析了生產(chǎn)用環(huán)境參數(shù)自動監(jiān)測系統(tǒng)上、中、下位機的軟件設(shè)計與實現(xiàn)過程。系統(tǒng)使用證明,該系統(tǒng)在實際運行中效益良好。
圖8 下位機主程序流程圖
20210902_6130527b9c353__生產(chǎn)用環(huán)境參數(shù)自動監(jiān)測系統(tǒng)軟件的設(shè)計與實現(xiàn)