就圖éˆé–‹(kÄi)物組態(tà i)軟件實(shÃ)ç¾(xià n)é«˜é€Ÿå¤§å®¹é‡æ•¸(shù)據(jù)采集的關(guÄn)éµæŠ€è¡“(shù)進(jìn)è¡Œäº†æŽ¢ç´¢æ€§ç ”ç©¶ï¼Œæ“´(kuò)展了組態(tà i)軟件的應(yÄ«ng)用范åœï¼Œç‚ºéœ€è¦é€²(jìn)è¡Œé«˜é€Ÿå¤§å®¹é‡æ•¸(shù)據(jù)采集的自動(dòng)化監(jiÄn)控系統(tÇ’ng)é–‹(kÄi)發(fÄ)æä¾›äº†ä¸€æ¢æ–°çš„æ€è·¯ã€‚
1 引言
隨著計(jì)算機(jÄ«)技術(shù)的飛速發(fÄ)展和自動(dòng)化技術(shù)的廣泛應(yÄ«ng)用,通用監(jiÄn)控組態(tà i)è»Ÿä»¶é€æ¥è“¬å‹ƒç™¼(fÄ)展起來(lái)å¹¶æ¶Œç¾(xià n)出一些極具競(jìng)çˆ(zhÄ“ng)力的產(chÇŽn)å“。組態(tà i)軟件作為一種連續(xù)éŽ(guò)程控制的通用監(jiÄn)控平臺(tái)極大的縮çŸäº†è¨ˆ(jì)算機(jÄ«)監(jiÄn)控系統(tÇ’ng)軟件的開(kÄi)發(fÄ)周期ã€å¢žå¼·(qiáng)了軟件產(chÇŽn)å“的穩(wÄ›n)奿€§ï¼Œé¡¯è‘—æé«˜äº†ç¶“(jÄ«ng)濟(jì)效益。
組態(tà i)軟件自從出ç¾(xià n)以來(lái)ï¼Œä¸€ç›´ä»¥å…¶é€šç”¨æ€§ã€æ˜“用性的優(yÅu)點(diÇŽn)深得廣大工程技術(shù)人員的é’çžï¼Œä½†æ˜¯çµ„æ…‹(tà i)軟件的連續(xù)慢變éŽ(guò)程監(jiÄn)控的特點(diÇŽn)使它很難滿(mÇŽn)è¶³ä¸é«˜é »ä¿¡è™Ÿ(hà o)的測(cè)試需求。在組態(tà i)軟件的發(fÄ)展éŽ(guò)程ä¸ï¼Œå°(duì)äºŽé«˜é€Ÿå¤§å®¹é‡æ•¸(shù)據(jù)é‡‡é›†çš„éœ€æ±‚é€æ¼¸æ˜Žæœ—起來(lái)。
2 總體方案è¨(shè)計(jì)
ä¸€èˆ¬çš„ï¼Œé«˜é€Ÿå¤§å®¹é‡æ•¸(shù)據(jù)采集需è¦è™•ç†ä¸‰å€‹(gè)æ–¹é¢çš„å•(wèn)題,å³é«˜é€Ÿæ•¸(shù)據(jù)é‡‡é›†ã€æ‰¹é‡æ•¸(shù)據(jù)å˜ç›¤(pán)和實(shÃ)時(shÃ)數(shù)據(jù)顯示。但是由于在組態(tà i)軟件é‹(yùn)行éŽ(guò)程ä¸éœ€è¦åŒæ™‚(shÃ)處ç†å¾ˆå¤šä»»å‹™(wù),使得組態(tà i)軟件å°(duì)于實(shÃ)時(shÃ)æ€§è¦æ±‚å¾ˆé«˜çš„å ´(chÇŽng)åˆä¸èƒ½å¾ˆå¥½çš„æ»¿(mÇŽn)è¶³ï¼Œè€Œé«˜é€Ÿå¤§å®¹é‡æ•¸(shù)據(jù)采集åˆå¿…é ˆä½¿æ•¸(shù)據(jù)采集ç²å¾—更高的優(yÅu)先權(quán),從而ä¿è‰å¯¦(shÃ)時(shÃ)ä¸é–“斷數(shù)據(jù)采集。綜åˆè€ƒæ…®é«˜é€Ÿå¤§å®¹é‡æ•¸(shù)據(jù)采集的需求和組態(tà i)軟件的特殊性å¯é¸ç”¨ä¸€ç¨®æŠ˜ä¸çš„æ–¹æ¡ˆï¼Œå³é«˜é€Ÿå¤§å®¹é‡æ•¸(shù)據(jù)采集,éžå¯¦(shÃ)時(shÃ)數(shù)據(jù)顯示,從而既ä¿è‰äº†é«˜é€Ÿå¤§å®¹é‡æ•¸(shù)據(jù)信號(hà o)的采集,åˆä¸è‡³äºŽå 用太多的CPU時(shÃ)間。
é«˜é€Ÿå¤§å®¹é‡æ•¸(shù)據(jù)采集分為兩部分,å³åœ¨çµ„æ…‹(tà i)軟件的硬件è¨(shè)備驅(qÅ«)å‹•(dòng)程åºä¸å¯¦(shÃ)ç¾(xià n)é«˜é€Ÿå¤§å®¹é‡æ•¸(shù)據(jù)采集,然åŽåœ¨çµ„æ…‹(tà i)ç’°(huán)境下利用æ’ä»¶ç‰å½¢å¼å°‡æ•¸(shù)據(jù)文件展開(kÄi)。
3 é«˜é€Ÿå¤§å®¹é‡æ•¸(shù)據(jù)采集
æ¿å¡é¡ž(lèi)è¨(shè)備性能穩(wÄ›n)定ã€ä½¿ç”¨ä¾¿æ·ã€é‡‡æ¨£é€Ÿåº¦é«˜ï¼Œæ˜¯é«˜é€Ÿæ•¸(shù)據(jù)采集系統(tÇ’ng)ä¸å¸¸ç”¨çš„外部è¨(shè)備。在開(kÄi)物2000組態(tà i)è»Ÿä»¶ä¸æ•¸(shù)據(jù)采集部分主è¦åœ¨ç¡¬ä»¶è¨(shè)備的驅(qÅ«)å‹•(dòng)程åºä¸å¯¦(shÃ)ç¾(xià n)。考慮到高速數(shù)據(jù)采集系統(tÇ’ng)的特殊性,在驅(qÅ«)å‹•(dòng)程åºä¸å»ºç«‹äº†ä¸€å€‹(gè)寫(xiÄ›)標(biÄo)簽,在執(zhÃ)行寫(xiÄ›)標(biÄo)簽的éŽ(guò)程ä¸å°‡å®Œæˆå…©éƒ¨åˆ†å·¥ä½œï¼Œå³é«˜é€Ÿå¤§å®¹é‡æ•¸(shù)據(jù)é‡‡é›†å’Œæ‰¹é‡æ•¸(shù)據(jù)å˜å„²(chÇ”)。為了æé«˜æ•¸(shù)據(jù)采集的優(yÅu)先權(quán)并有效é™ä½ŽCPUçš„å 用率,在數(shù)據(jù)采集時(shÃ)使用了FIFO(First In First Out)ã€ä¸æ–·å’ŒDMA(Direct Memory Accessï¼‰ç‰æŠ€è¡“(shù)并使數(shù)據(jù)采集程åºé‹(yùn)行在內(nèi)æ ¸æ¨¡å¼ã€‚ç•¶(dÄng)執(zhÃ)行寫(xiÄ›)標(biÄo)簽時(shÃ),驅(qÅ«)å‹•(dòng)程åº?qÅ«)â’Šè·è“Ÿî‡¥è¹‡ã„”O(shè)備,主è¦åŒ…括è¨(shè)定采樣長(zhÇŽng)åº¦å’Œé‡‡æ¨£é »çŽ‡ï¼Œç„¶åŽè§¸ç™¼(fÄ)æ¿å¡è¨(shè)備進(jìn)行數(shù)據(jù)采集,并將采集到的數(shù)據(jù)å˜å„²(chÇ”)到æ¿å¡çš„FIFOä¸ï¼Œç•¶(dÄng)FIFOä¸çš„æ•¸(shù)據(jù)åŠæ»¿(mÇŽn)時(shÃ),將產(chÇŽn)生一個(gè)䏿–·ä¿¡è™Ÿ(hà o),然åŽé€šéŽ(guò)DMAæ–¹å¼å°‡FIFOä¸çš„æ•¸(shù)據(jù)å˜å„²(chÇ”)到內(nèi)å˜å€(qÅ«)域。當(dÄng)采樣長(zhÇŽng)度é”(dá)到é (yù)å®šçš„è¦æ±‚時(shÃ)ï¼Œåœæ¢æ¿å¡è¨(shè)備的數(shù)據(jù)采集,并將內(nèi)å˜å€(qÅ«)域的數(shù)據(jù)寫(xiÄ›)入數(shù)據(jù)文件,從而完æˆé«˜é€Ÿå¤§å®¹é‡çš„æ•¸(shù)據(jù)采集和å˜å„²(chÇ”)。
4 éžå¯¦(shÃ)時(shÃ)數(shù)據(jù)顯示
基于組態(tà i)軟件很難實(shÃ)ç¾(xià n)ä¸é«˜é »ä¿¡è™Ÿ(hà o)實(shÃ)時(shÃ)波形的顯示,一般需采用éžå¯¦(shÃ)時(shÃ)數(shù)據(jù)波形回放的方法。為了滿(mÇŽn)足數(shù)據(jù)æ³¢å½¢å›žæ”¾çš„è¦æ±‚,基于圖éˆé–‹(kÄi)物環(huán)境開(kÄi)發(fÄ)了數(shù)據(jù)采集æ’件。圖éˆé–‹(kÄi)物ä¸çš„æ’ä»¶é¡ž(lèi)似于ActiveX控件,但與ActiveX控件相比,圖éˆé–‹(kÄi)物ä¸çš„æ’ä»¶çµ(jié)æ§‹(gòu)å°å·§ï¼Œé‹(yùn)行安全å¯é ,具有更強(qiáng)的功能,并且由于其僅在使用時(shÃ)被動(dòng)æ…‹(tà i)åŠ è¼‰ï¼Œå¯ä»¥æœ‰æ•ˆçš„節(jié)çœç³»çµ±(tÇ’ng)資æºã€‚
數(shù)據(jù)采集æ’件功能è±å¯Œï¼Œå¯ä»¥æ»¿(mÇŽn)足數(shù)據(jù)æ³¢å½¢å›žæ”¾çš„å¤šç¨®åŠŸèƒ½è¦æ±‚,如打開(kÄi)數(shù)據(jù)文件ã€ä¿å˜æ•¸(shù)據(jù)æ–‡ä»¶ã€æ³¢å½¢æ”¾å¤§ã€ç¸®å°ã€è‡ªå®šç¾©ç¸®æ”¾ã€è¨(shè)置和打å°è¼¸å‡ºç‰å„種功能。在數(shù)據(jù)采集æ’ä»¶ä¸é€šéŽ(guò)è¨(shè)置工程值和測(cè)é‡å€¼çš„æœ€å¤§æœ€å°å€¼å¯ä»¥å¯¦(shÃ)ç¾(xià n)數(shù)據(jù)é‡ç¶±çš„轉(zhuÇŽn)æ›ã€‚
5 工程實(shÃ)例
åŸºäºŽä¸Šé¢æåˆ°çš„æ–¹æ¡ˆï¼Œåœ¨èžºæ “æ‡‰(yÄ«ng)力測(cè)試系統(tÇ’ng)ä¸å–得了很好的實(shÃ)é©—(yà n)效果。實(shÃ)é©—(yà n)éŽ(guò)程ä¸éœ€è¦æ¸¬(cè)é‡çš„高速信號(hà o)ç‚ºèžºæ “çš„å‹•(dòng)æ…‹(tà i)應(yÄ«ng)力變化。在實(shÃ)際實(shÃ)é©—(yà n)éŽ(guò)程ä¸åŸºäºŽåœ–éˆé–‹(kÄi)物環(huán)境建立寫(xiÄ›)標(biÄo)簽“WRITE_FILE0â€ï¼Œä»£è¡¨æ¿å¡è¨(shè)備第0通é“的數(shù)據(jù)信號(hà o),è¨(shè)定采樣長(zhÇŽng)度為8192點(diÇŽn)ï¼Œé‡‡æ¨£é »çŽ‡ç‚º5000Hz。
在圖éˆé–‹(kÄi)物組態(tà i)ç’°(huán)境ä¸å¯¦(shÃ)ç¾(xià n)æ¿å¡é¡ž(lèi)è¨(shè)備數(shù)據(jù)采集éžå¸¸æ–¹ä¾¿ã€‚例如å¯ä»¥å»ºç«‹ä¸€å€‹(gè)數(shù)據(jù)采集按鈕,點(diÇŽn)擊按鈕就å¯ä»¥å®Œæˆæ•¸(shù)據(jù)的采集,如果需è¦åŸºäºŽä¸€å®šçš„æ¢ä»¶é€²(jìn)行數(shù)據(jù)采集則å¯ä»¥é€šéŽ(guò)腳本語(yÇ”)言來(lái)實(shÃ)ç¾(xià n)。例如 If AD0.Value<=3.5 then WRITE_FILE0.Value=True,使用éžå¸¸æ–¹ä¾¿ã€‚下圖給出了整個(gè)實(shÃ)é©—(yà n)系統(tÇ’ng)的數(shù)據(jù)波形,從圖ä¸å¯ä»¥çœ‹å‡ºï¼Œæ•¸(shù)據(jù)波形還原完好,沒(méi)有任何失真ç¾(xià n)è±¡ï¼Œå¾ˆå¥½çš„è·Ÿè¹¤äº†èžºæ “æ‡‰(yÄ«ng)力的動(dòng)æ…‹(tà i)變化,滿(mÇŽn)足了系統(tÇ’ng)的測(cè)è©¦è¦æ±‚,å–得了良好的實(shÃ)é©—(yà n)æ•ˆæžœï¼ŒåŒæ™‚(shÃ)也驗(yà n)è‰äº†æœ¬æ–‡æå‡ºçš„高速大容é‡ä¸é–“斷數(shù)據(jù)采集方案的æ£ç¢ºæ€§ã€‚

6 çµ(jié)æŸèªž(yÇ”)
本文綜åˆè€ƒæ…®çµ„æ…‹(tà i)軟件和高速大容é‡ä¸é–“斷數(shù)據(jù)é‡‡é›†çš„è¦æ±‚,æå‡ºäº†å¯¦(shÃ)時(shÃ)數(shù)據(jù)采集,éžå¯¦(shÃ)時(shÃ)數(shù)據(jù)顯示的解決方案,很好的滿(mÇŽn)足了ä¸é«˜é »ä¿¡è™Ÿ(hà o)的測(cè)試需求,擴(kuò)展了圖éˆé–‹(kÄi)物組態(tà i)軟件的使用范åœï¼Œå°(duì)äºŽé«˜é€Ÿå¤§å®¹é‡æ•¸(shù)據(jù)采集具有一定的指導(dÇŽo)æ„義。