摘 要: 研究了基于虛擬儀器技術(shù)Measurement Studio的太陽能LED路燈監(jiān)控系統(tǒng),。采用GPRS與CAN總線的兩級式網(wǎng)絡(luò),,實(shí)時(shí)采集參數(shù),并將數(shù)據(jù)傳輸給上位機(jī)監(jiān)控系統(tǒng),,用于繪制參數(shù)曲線并存儲,、分析數(shù)據(jù)。給出了總體網(wǎng)絡(luò)結(jié)構(gòu),、單個(gè)節(jié)點(diǎn)電路,、通信接口電路、調(diào)理電路以及軟件系統(tǒng)設(shè)計(jì)流程圖,,同時(shí)還給出了基于多線程技術(shù)的軟件性能優(yōu)化方案,。
關(guān)鍵詞: 虛擬儀器技術(shù);Measurement Studio,;太陽能路燈監(jiān)控,;多線程;GPRS
太陽能路燈系統(tǒng)配置得不理想,,將影響太陽能LED路燈的推廣,。而其光電池的輸出功率和蓄電池的容量及負(fù)載功率等搭配,僅靠理論計(jì)算是不夠的,。只有采取自動跟蹤監(jiān)測的系統(tǒng)才能確定太陽能電池在不同季節(jié),、不同時(shí)間、不同方位的最大功率輸出,,以此為依據(jù)確定其蓄電池和負(fù)載才可靠。傳統(tǒng)的太陽能LED路燈監(jiān)控系統(tǒng)采用單一的通信方式,通信方式不夠靈活,。為此,,本文設(shè)計(jì)了基于Measurement Studio的太陽能LED路燈自動跟蹤監(jiān)控系統(tǒng)。該系統(tǒng)不僅能實(shí)時(shí)顯示太陽能路燈當(dāng)前環(huán)境下的系統(tǒng)參數(shù)數(shù)值和參數(shù)變化曲線,,還能利用GPRS和CAN總線構(gòu)成的區(qū)域網(wǎng)絡(luò)對照明節(jié)點(diǎn)進(jìn)行集中管理,。
Measurement Studio是美國NI(National Instrument)公司推出的虛擬儀器軟件。現(xiàn)有的虛擬儀器開發(fā)平臺主要有基于G語言開發(fā)平臺的LabVIEW(文獻(xiàn)中關(guān)于虛擬儀器介紹的也多是基于LabVIEW平臺的),,然而LabVIEW作為一種圖形化開發(fā)語言,,缺乏開發(fā)的靈活性。而集成式C語言開發(fā)環(huán)境Measurement Studio,,分別為ANSIC,、Visual Basic、Visual C++用戶提供了建立自動化測試系統(tǒng)以及實(shí)驗(yàn)室應(yīng)用所需的各種測試,、測量工具包[1-2],。本文充分利用C語言的邏輯運(yùn)算和Measurement Studio的圖形化顯示的優(yōu)點(diǎn),運(yùn)用Measurement Studio和Vsual C++搭建了太陽能LED路燈監(jiān)控系統(tǒng),。
1 系統(tǒng)組成
1.1系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)
系統(tǒng)采用GPRS和CAN總線結(jié)合的通信模式,,這種模式不僅能夠穩(wěn)定完成底層終端數(shù)據(jù)的傳輸,更能高效地實(shí)現(xiàn)與上位機(jī)之間的信息通信,。同時(shí)也避免了單一節(jié)點(diǎn)采用GPRS模塊所造成的資源浪費(fèi)[3],。底層局域網(wǎng)結(jié)構(gòu)如圖1所示,太陽能控制終端通過CAN通信形成了一個(gè)初級局域通信網(wǎng),。而每個(gè)局域網(wǎng)中都有一個(gè)帶GPRS的終端節(jié)點(diǎn),,它是上位機(jī)與底層終端之間的數(shù)據(jù)傳輸?shù)募~帶,其通過無線網(wǎng)絡(luò)接收用戶發(fā)送的控制和查詢命令,,并通過CAN網(wǎng)絡(luò)將其轉(zhuǎn)發(fā)給相應(yīng)的終端節(jié)點(diǎn),。而終端采集的數(shù)據(jù)信息也都通過它轉(zhuǎn)發(fā)給上位機(jī)軟件。
MC52i為西門子公司的產(chǎn)品,,它屬于工業(yè)級別的GPRS模塊,,進(jìn)行基于TCP/IP的數(shù)據(jù)傳輸,實(shí)現(xiàn)IP地址設(shè)定,、照明信息的無線傳輸以及報(bào)警通知等,。MC52i通過串口與單片機(jī)通信,實(shí)現(xiàn)信息的交互,。
2.1.2 CAN通信接口設(shè)計(jì)
STM32的內(nèi)部集成了CAN控制器,,其內(nèi)部的bxCAN模塊支持CAN協(xié)議2.0A和2.0B,位通信比特率可達(dá)1 Mb/s,,支持時(shí)間觸發(fā)通信功能,。其中包含3個(gè)發(fā)送郵箱,,3級深度的2個(gè)接收FIFO,14個(gè)位寬可變的過濾器組,。報(bào)文的發(fā)送和接收由CAN內(nèi)核自動實(shí)現(xiàn),。其波特率公式計(jì)算如下:
2.2 Measurement Studio設(shè)計(jì)
2.2.1 軟件系統(tǒng)設(shè)計(jì)
軟件系統(tǒng)采用模塊化設(shè)計(jì),包括系統(tǒng)登錄模塊,、操作員管理模塊,、系統(tǒng)基本配置模塊、通信設(shè)置模塊,、參數(shù)數(shù)值顯示模塊,、參數(shù)曲線繪制模塊、幫助模塊,。系統(tǒng)登錄模塊是為了保證操作員的安全登錄和系統(tǒng)數(shù)據(jù)的安全,;操作員管理模塊用于增加用戶并設(shè)定密碼,或者刪除非法用戶,;系統(tǒng)基本配置模塊記錄路燈節(jié)點(diǎn)的配置信息,;參數(shù)顯示模塊可以提供某個(gè)路燈系統(tǒng)參數(shù)查詢;參數(shù)曲線繪制模塊可以更加形象地實(shí)時(shí)繪制參數(shù)曲線,。
2.2.3 多線程的性能優(yōu)化
多線程編程技術(shù)避免了某項(xiàng)任務(wù)長時(shí)間占用CPU時(shí)間,,提高了程序的并發(fā)處理數(shù)據(jù)的能力。本文的應(yīng)用軟件優(yōu)化設(shè)計(jì)中,,在進(jìn)入主界面之前,,創(chuàng)建了管理線程,用于監(jiān)聽線程和工作線程的創(chuàng)建與管理,。這樣,,不僅有助于提高數(shù)據(jù)的并發(fā)處理能力,也使得程序分工更加明確,,調(diào)理更加清晰,。監(jiān)聽線程主要負(fù)責(zé)等待GPRS的連接并為連接的GPRS開辟相應(yīng)的空間。工作線程主要負(fù)責(zé)與GPRS通信過程中的數(shù)據(jù)處理,,并將其提交給相應(yīng)的客戶端界面,。而管理線程會在軟件退出時(shí)通知監(jiān)聽線程和工作線程停止工作,并釋放相應(yīng)的資源,。此外,,通過函數(shù)GetSystemInfo(&sysInfo)獲得處理器的信息,而創(chuàng)建工作線程的個(gè)數(shù)也會隨著處理器的個(gè)數(shù)的變化作出相應(yīng)的調(diào)整,,這樣也提高了軟件的收縮性,。多線程創(chuàng)建流程如圖8所示[5]。
2.2.4 圖形控件完成參數(shù)曲線的繪制
CWGraph控件提供了豐富的屬性,、方法和事件,。在顯示數(shù)據(jù)時(shí)比較常用到的方法有:ClearData(清空數(shù)據(jù)),,清除所有CWGraph控件上繪出的采集曲線與標(biāo)尺線;SetYDataAppend:每次調(diào)用該函數(shù)可將一個(gè)點(diǎn)追加到曲線末尾,;SetTimer:設(shè)置定時(shí)器編號和定時(shí)時(shí)間,,采集數(shù)據(jù)采用定時(shí)中斷,間隔固定時(shí)間采集信號,。
3 實(shí)驗(yàn)結(jié)果
通過此系統(tǒng),實(shí)現(xiàn)了Measurement Studio與網(wǎng)絡(luò)內(nèi)各控制主板的通信,,此軟件系統(tǒng)的通信方式設(shè)定模塊可以設(shè)定通信信息,,連接成功后,在參數(shù)顯示界面可以實(shí)時(shí)查詢網(wǎng)絡(luò)內(nèi)某個(gè)照明節(jié)點(diǎn)的數(shù)值參數(shù),。
本遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)已應(yīng)用于太陽能LED路燈系統(tǒng)中,,并取得了理想的結(jié)果。通過GPRS和CAN總線實(shí)現(xiàn)了Measurement Studio監(jiān)控系統(tǒng)與網(wǎng)絡(luò)內(nèi)STM32控制主板的通信,。
在下位機(jī)芯片選取上,,STM32作為主控芯片,足夠?qū)崿F(xiàn)太陽能LED路燈的控制需求,,并且成本上較DSP大為降低,。CAN總線組成的局域網(wǎng),通信可靠,,能夠滿足區(qū)域內(nèi)路燈的網(wǎng)絡(luò)化控制要求,。隨著太陽能LED路燈的逐步推廣,結(jié)合GPRS組成兩級式局域網(wǎng)絡(luò),,可以監(jiān)控更大范圍的太陽能LED路燈,,這也是今后的發(fā)展方向。
實(shí)踐證明,,基于Measurement Studio的監(jiān)控平臺具有以下特點(diǎn):操作簡單,,界面友好,使用者可以直觀地觀察照明節(jié)點(diǎn)的參數(shù)數(shù)值和曲線,,同時(shí)可以調(diào)節(jié)照明節(jié)點(diǎn)的PWM占空比和照明節(jié)點(diǎn)亮滅時(shí)間等,;可移植性強(qiáng),只要更改參數(shù)就可以應(yīng)用在其他分布式系統(tǒng)中,;使用起來靈活,,編譯生成.exe文件,可以方便地安裝在沒有安裝Measurement Studio的機(jī)器上,;系統(tǒng)效率高,,加入多線程技術(shù),可大大提高系統(tǒng)效率,。
參考文獻(xiàn)
[1] 陳振興,,周建華,,陳勇.基于Measurement Studio的光電信號數(shù)據(jù)采集系統(tǒng)[J].計(jì)算機(jī)應(yīng)用,2004(2):66-68.
[2] 黃豪彩,,楊燦軍,,陳道華,等.基于LabVIEW的深海氣密采水器測控系統(tǒng)[J].儀器儀表學(xué)報(bào),,2011,,32(1):40-45.
[3] 王偉,董超俊.一種新的基于CAN和GPRS網(wǎng)絡(luò)的路燈組網(wǎng)方法研究[J].工業(yè)控制計(jì)算機(jī),,2012,,25(3):71-72.
[4] 陳志旺.STM32嵌入式微控制器快速上手[M].北京:電子工業(yè)出版社,2012:180-186.
[5] 楊東升,,王高峰.多線程技術(shù)在虛擬儀器開發(fā)軟件LabWindows/CVI中的實(shí)現(xiàn)[J].電測與儀表,,2005,43(3):39-42.
[6] 夏鳳仙,,陳小平.基于虛擬儀器的交變電流源質(zhì)量分析儀研制[J].電子測量與儀器學(xué)報(bào),,2007,21(3):113-117.