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