康順哲 李辛
DOI:10.16661/j.cnki.1672-3791.2016.14.007
摘 要:該文介紹“IDCN數(shù)據(jù)采集器”在熱電廠微機(jī)監(jiān)測系統(tǒng)的應(yīng)用情況,概述了系統(tǒng)的硬件組成、以及系統(tǒng)軟件的開發(fā)過程。由于是初次使用該設(shè)備,因此在安裝完成后,采用了雙系統(tǒng)工作模式,即原來的“人工監(jiān)測模式”和“計算機(jī)監(jiān)測模式”共同使用,以檢驗計算機(jī)系統(tǒng)的工作情況是否穩(wěn)定,待到應(yīng)用成熟時,再逐漸正式使用系統(tǒng)。
關(guān)鍵詞:數(shù)據(jù)采集器 計算機(jī)監(jiān)測 文件 參數(shù) 系統(tǒng)
中圖分類號:TP31 文獻(xiàn)標(biāo)識碼:A 文章編號:1672-3791(2016)05(b)-0007-02
該軟件在線監(jiān)測系統(tǒng),用來監(jiān)測電廠生產(chǎn)過程中的各個重要參數(shù),當(dāng)某個參數(shù)越限時,還可以在屏幕上提示檢測人員參數(shù)超越指標(biāo),以便及時處理,也可以對生產(chǎn)過程進(jìn)行報表自動打印、查詢功能、數(shù)據(jù)追憶等。
該系統(tǒng)采用了“C語言”設(shè)計全部界面,“C語言”設(shè)計精巧、功能齊全,既可以用于編寫應(yīng)用軟件,又特別適合編寫系統(tǒng)軟件,是目前較為流行的計算機(jī)高級程序設(shè)計語言之一。
1 系統(tǒng)可行性分析
該管理系統(tǒng)是一個以計算機(jī)為工具,結(jié)合IDCB-數(shù)據(jù)采集器下位機(jī)對電廠生產(chǎn)過程進(jìn)行數(shù)據(jù)監(jiān)測的系統(tǒng)。能及時測試出電廠中數(shù)據(jù)參數(shù),也可以利用過去的數(shù)據(jù)進(jìn)行統(tǒng)計分析,能從全局出發(fā)達(dá)到管理、監(jiān)測、安全生產(chǎn)的目標(biāo)。
2 系統(tǒng)需求分析
對于一個實際的項目而言,最重要的一點是一定要以用戶的需求為標(biāo)準(zhǔn),盡量要考慮并且滿足用戶的要求,它才具有實用價值。用戶雖然了解他們所面對的問題,但通常不能準(zhǔn)確的表達(dá)出他們的要求,因此我們在需求分析階段與用戶密切配合,提出完整準(zhǔn)確的系統(tǒng)邏輯模型,經(jīng)過用戶確認(rèn)才進(jìn)入下一階段。
3 系統(tǒng)總體設(shè)計
應(yīng)用相聯(lián)接與嵌入(OLE)技術(shù):OLE是應(yīng)用程序訪問其他應(yīng)用程序?qū)ο蟮囊环N方法。通過OLE技術(shù)把符合OLE標(biāo)準(zhǔn)的各種不同的Windows應(yīng)用程序嵌入到程序中,該系統(tǒng)用C語言集合下位機(jī)數(shù)據(jù)采集器實現(xiàn)程序的嵌入模式。
文件訪問功能:C語言本身提供了非常好的文件管理功能,可以用隨機(jī)文件模式方便的實現(xiàn)海量數(shù)據(jù)的存儲,查詢及訪問,為實現(xiàn)一年內(nèi)的數(shù)據(jù)存儲提供了有效的軟件支撐。
4 系統(tǒng)主要7個功能模塊
(1)查詢模塊;(2)越限報警模塊;(3)存儲模塊;(4)追憶模塊; (5)顯示模塊;(6)圖型模塊;(7)報表模塊。
5 系統(tǒng)總體設(shè)計
(1)計算機(jī)主機(jī)擴(kuò)展槽中插有數(shù)據(jù)采集器卡,通過屏蔽雙絞與各前端相連,根據(jù)電廠現(xiàn)場測試點的分布情況采用雙向配置網(wǎng)絡(luò),即:主機(jī)位于網(wǎng)絡(luò)中部,采集器向兩個方向接出,每個采集器可以接電廠中的監(jiān)測點數(shù)據(jù)。
(2)軟件設(shè)計。在設(shè)計中使用了文件系統(tǒng)存儲海量數(shù)據(jù),如:一年內(nèi)的電氣參數(shù);C語言編譯系統(tǒng)提供兩種文件處理方式:即緩沖文件系統(tǒng)和非緩沖文件系統(tǒng)。
①緩沖文件系統(tǒng),它是通過自動開辟一個內(nèi)存緩沖區(qū)來輸入和輸出數(shù)據(jù)的,當(dāng)向外存儲器中的文件輸出數(shù)據(jù)時,首先將數(shù)據(jù)送到內(nèi)存緩沖區(qū)中,當(dāng)緩沖區(qū)充滿之后,再輸出到磁盤文件中。
②非緩沖文件系統(tǒng),它所提供的文件輸入、輸出函數(shù)更接近于操作系統(tǒng),該系統(tǒng)使用了如下函數(shù),fprintf函數(shù)的調(diào)用形式如下。
fprintf(文件類型指針,格式控制字符串,輸出表列),功能是將“輸出表列”中的相應(yīng)變量中的數(shù)據(jù)經(jīng)過相應(yīng)的格式轉(zhuǎn)換后,輸出到由“文件類型指針”所標(biāo)識的文件中。
數(shù)據(jù)塊讀寫函數(shù):fread和fwrite, fwrite函數(shù),fwrite函數(shù)的其調(diào)用形式如下。
fwrite(buffer,size,count,fp),將117個點數(shù)據(jù),設(shè)置成結(jié)構(gòu)體數(shù)組,每天設(shè)置為行坐標(biāo),這樣可以設(shè)置成二維數(shù)組,每個數(shù)組為一天的數(shù)據(jù),按照文件指針定位到緩沖區(qū),再按月劃分為區(qū),用大量硬盤空間存儲,可以實現(xiàn)一年的數(shù)據(jù)存儲量。fseek函數(shù)調(diào)用格式:fseek(文件指針,偏移量,起始位置),將文件的讀寫位置指針移動到指定的位置上。
系統(tǒng)中應(yīng)用的文件存儲測試程序簡介:
#include
#include