奚小寧
(西安奇維科技有限公司,陜西 西安710119)
隨著信息技術(shù)的不斷發(fā)展,數(shù)字型產(chǎn)品得到了大面積的推廣,其中以嵌入式系統(tǒng)為基礎(chǔ)的各種產(chǎn)品所具有的功能也愈發(fā)強(qiáng)大,并且應(yīng)用逐漸廣泛。在當(dāng)前巨大市場需求的推動之下,企業(yè)和社會對嵌入式產(chǎn)品的要求也不斷提升?,F(xiàn)階段,在工業(yè)控制行業(yè)中使用的嵌入型系統(tǒng)急需應(yīng)用一類監(jiān)控軟件,從而可以方便、高效以及快速地研發(fā)出能夠完美適應(yīng)多種場合的新型監(jiān)控程序。
嵌入式系統(tǒng)中應(yīng)用是核心,計(jì)算機(jī)信息技術(shù)是基礎(chǔ),其中的軟硬件均可被裁減,極適合應(yīng)用到對功能、成本、功耗、可靠性以及體積等具有極為嚴(yán)格要求的先進(jìn)計(jì)算機(jī)系統(tǒng)中。通常情況下,嵌入型微處理器、嵌入式的操作系統(tǒng)、外圍硬件裝置以及用戶應(yīng)用程序是嵌入式系統(tǒng)最為主要的4個組成部分,也是該系統(tǒng)控制、管理以及監(jiān)視其他設(shè)備的根本所在。不管是8位單片機(jī)還是具有較高處理性能水平的32位的處理器都可以形成嵌入型系統(tǒng),然而當(dāng)前絕大多數(shù)被認(rèn)為具有較好發(fā)展前景的嵌入型系統(tǒng)都應(yīng)當(dāng)具備以下條件。即將一個具有出色性能水平的處理器當(dāng)作系統(tǒng)的基礎(chǔ)硬件,將一個能夠進(jìn)行多任務(wù)操作的系統(tǒng)作為綜合性平臺[1]。
對于現(xiàn)代化的電力控制系統(tǒng)而言,要想有效設(shè)計(jì)其所包含的監(jiān)控子系統(tǒng),需要避免在監(jiān)控?cái)?shù)據(jù)的傳輸和線路的架設(shè)等領(lǐng)域投入過多人力和物力,并以此為基礎(chǔ)設(shè)計(jì)出一種將電力線載波通信和嵌入式完美融合的新型技術(shù)。當(dāng)前此類技術(shù)已經(jīng)在生產(chǎn)、檢測以及管理等諸多領(lǐng)域中得到了廣泛的應(yīng)用。目前所設(shè)計(jì)的監(jiān)控子系統(tǒng)通常為C/S模式,核心結(jié)構(gòu)框架以監(jiān)控服務(wù)器和監(jiān)控客戶端為主,并且其中部分服務(wù)器的IP地址還需要做額外的固定處理,此外服務(wù)器和客戶端間連接時所使用的為UDP通信協(xié)議,可以有效且準(zhǔn)確地實(shí)現(xiàn)監(jiān)控?cái)?shù)據(jù)和信息的輸送。傳感器模塊、電力線載波通信模塊以及嵌入型處理器(即CPU)模塊是監(jiān)控服務(wù)器最為核心的3個組成部分,而客戶端對應(yīng)的功能需要借助PC機(jī)進(jìn)行實(shí)現(xiàn)[2]。
在嵌入型電力監(jiān)控系統(tǒng)中往往挑選工控機(jī)和商用PC當(dāng)作服務(wù)器,現(xiàn)場大量的實(shí)時信息數(shù)據(jù)需要進(jìn)行迅速、及時且準(zhǔn)確地傳輸。通信模塊最為主要的任務(wù)是實(shí)時收集與整合現(xiàn)場數(shù)據(jù),同時借助嵌入型的CPU科學(xué)處理所收集到的相關(guān)數(shù)據(jù),并應(yīng)用輸出模塊將對應(yīng)的控制指令發(fā)送出去。在嵌入型電力監(jiān)控系統(tǒng)中硬件部分通常包括嵌入型CPU、液晶顯示屏、鼠標(biāo)、通信控制以及鍵盤等幾個部分。
通信控制組件的硬件邏輯如圖1所示,該部分整合了模擬量的輸入輸出和數(shù)字量的輸入輸出,還具有定時器和計(jì)數(shù)器等諸多功能。輸入的無線信號會直接或者通過變送器等間接地接入到對應(yīng)的信息數(shù)據(jù)通信控制模塊中,然后再由該模塊對數(shù)據(jù)做轉(zhuǎn)化處理,最后提交至系統(tǒng)做最終的分析、控制、處理以及決策。
圖1 通信控制組件的硬件邏輯
由于該系統(tǒng)有著極強(qiáng)的復(fù)用性和可擴(kuò)展性,因此其通過以組件為基礎(chǔ)方式進(jìn)行深度開發(fā)時,系統(tǒng)整體可被分成諸多小組件,每一個組件依據(jù)組件分層的體系框架組成。通常,組件的分層體系框架包含表示層、業(yè)務(wù)邏輯層、通信層以及數(shù)據(jù)層共4層,組件的表現(xiàn)形式包括源代碼包、Lib和DLL。系統(tǒng)整體以Win CE操作系統(tǒng)為基礎(chǔ),使用標(biāo)準(zhǔn)化的編程語言C++,借助該系列的開發(fā)工具來進(jìn)行對應(yīng)的開發(fā)和研究,并通過Together Architect工具進(jìn)行建模,而數(shù)據(jù)庫則是開源型數(shù)據(jù)庫SQLite[3]。
按照監(jiān)控系統(tǒng)的功能需求、范疇差異以及復(fù)用需求等,可以將監(jiān)控系統(tǒng)細(xì)分成多個不同的組件,如工程的初始化組件、通信組件、系統(tǒng)事件信息的查看組件、界面組件、數(shù)據(jù)字典組件、子站狀態(tài)查詢組件以及歷史數(shù)據(jù)的服務(wù)組件等。在上述組件中,因?yàn)榻缑嫦到y(tǒng)自身具有著較好的交互特性和集成組態(tài),所以可以將其作為一個粒度相對偏大的組件進(jìn)行設(shè)計(jì)。界面系統(tǒng)可以借助業(yè)務(wù)邏輯層的處理,同時按照系統(tǒng)特征需求主動地向服務(wù)代理設(shè)置或獲取相關(guān)的信息數(shù)據(jù),被動地接收由服務(wù)代理發(fā)送的文件信息和數(shù)據(jù),完成所提供的信息數(shù)據(jù)與服務(wù)系統(tǒng)間的交互工作[4]。
在設(shè)計(jì)嵌入型電力控制系統(tǒng)內(nèi)的監(jiān)控子系統(tǒng)時,設(shè)計(jì)數(shù)據(jù)字典可以給構(gòu)建和使用數(shù)據(jù)庫提供所需的框架結(jié)構(gòu),給讀取其中相關(guān)數(shù)據(jù)信息提供一定的便利。通常,數(shù)據(jù)字典組件往往以表格形式呈現(xiàn),并以表格來對子站實(shí)時數(shù)據(jù)和歷史數(shù)據(jù)等開展相關(guān)操作,如顯示歷史和實(shí)時數(shù)據(jù)庫內(nèi)信息、讀取歷史和實(shí)時的信息庫以及完成實(shí)時和歷史等數(shù)據(jù)庫的整合與查詢等。
構(gòu)建數(shù)據(jù)字典較為簡便,先借助系統(tǒng)主窗口來打開實(shí)時數(shù)據(jù)的字典頁面,此時窗口便會顯示出由RT Data View所發(fā)送的信息,與此同時發(fā)出第一次的實(shí)時信息數(shù)據(jù)請求。服務(wù)代理組件是實(shí)時信息數(shù)據(jù)請求接收端,此組件將變量與緩存中的具體情況當(dāng)作調(diào)整依據(jù),并且在了解對應(yīng)需求的前提下對數(shù)據(jù)做返回處理。時鐘會被當(dāng)作整體流程的多次觸發(fā)點(diǎn),不需要再進(jìn)行反復(fù)的訂閱就能夠直接從代理組件緩存中獲取,同時將獲取到的信息返回到監(jiān)控頁面,進(jìn)而在系統(tǒng)正常運(yùn)行過程中完成對于實(shí)施數(shù)據(jù)的操作與刷新顯示等工作。
信息庫最為主要的一個功能即儲存經(jīng)過專業(yè)服務(wù)器分析和處理的信息數(shù)據(jù)。在儲存的過程中,通常會先依據(jù)相關(guān)規(guī)則來對它做分類和排序等程序化處理,從而為后續(xù)的數(shù)據(jù)讀取和數(shù)據(jù)維護(hù)等工作打下良好基礎(chǔ),并以此提升數(shù)據(jù)信息庫的相應(yīng)速度和效率。設(shè)計(jì)嵌入型電力系統(tǒng)中的監(jiān)控子系統(tǒng)時,需要切實(shí)考慮到信息庫在其實(shí)際監(jiān)控和運(yùn)行控制過程中所具有的提供相關(guān)依據(jù)的重要作用,為此建議在實(shí)時信息庫中應(yīng)用PI,將oracle應(yīng)用到歷史信息庫中,從而實(shí)現(xiàn)相關(guān)數(shù)據(jù)的科學(xué)有序管理。對于上述信息庫而言,具有著靈活多變、功能齊全以及應(yīng)用編程的接口豐富等諸多特點(diǎn),可以為嵌入型電力控制系統(tǒng)內(nèi)的監(jiān)控子系統(tǒng)大規(guī)模的信息數(shù)據(jù)儲存打下堅(jiān)實(shí)基礎(chǔ)。按照有關(guān)的設(shè)計(jì)經(jīng)驗(yàn)可以發(fā)現(xiàn),相較于其他類型的信息庫,SQL Server和MySQL等信息庫較小,但是如果系統(tǒng)監(jiān)控的信息數(shù)據(jù)規(guī)模相對偏小時,同樣可以進(jìn)行應(yīng)用。
文章中所介紹的嵌入型電力控制系統(tǒng)內(nèi)監(jiān)控子系統(tǒng)信息庫的設(shè)計(jì)與實(shí)現(xiàn),考慮了控制信息、輸出與輸入的模擬量以及輸入與輸出的開關(guān)量等信息的儲存和處理。在實(shí)際設(shè)計(jì)的過程中,為了最大程度預(yù)防由于信息庫產(chǎn)生超負(fù)荷存儲而引起加劇系統(tǒng)運(yùn)行的負(fù)荷與壓力,進(jìn)而降低信息庫的相應(yīng)速度的現(xiàn)象,因此在原歷史數(shù)據(jù)中設(shè)置了對應(yīng)的操作刪除程序,一旦數(shù)據(jù)存儲時間到達(dá)預(yù)先設(shè)定的時間后,系統(tǒng)便對相關(guān)數(shù)據(jù)做自動刪除處理。
按照使用的具體要求,往往會在嵌入型電力控制系統(tǒng)監(jiān)控子系統(tǒng)中布置一些不同類型的傳感器,收集到用戶所需要的監(jiān)控?cái)?shù)據(jù)與信息。以當(dāng)前較為常見的視頻監(jiān)控來說,監(jiān)控系統(tǒng)首先需要收集到原始的視頻圖像信息,而本文所介紹的結(jié)構(gòu)框架中,有關(guān)功能能夠借助嵌入型ARM處理模塊和USB接口等實(shí)現(xiàn)對視頻傳感設(shè)備采集到的圖像信息做有效且準(zhǔn)確地讀取。另外,將V4L2作為內(nèi)核驅(qū)動,將Linux作為嵌入型電力系統(tǒng)中監(jiān)控子系統(tǒng)的操作系統(tǒng)能夠?yàn)橐曨l圖像信息收集提供切實(shí)有效的接口,并借助該通用接口操作函數(shù),全面采集視頻傳感裝置中的原始圖像。
將文章所介紹的監(jiān)控子系統(tǒng)設(shè)計(jì)方案應(yīng)用到某一個嵌入型電力控制系統(tǒng)內(nèi)部的視頻監(jiān)控子系統(tǒng)中,經(jīng)過一段時間的實(shí)踐后發(fā)現(xiàn),視頻傳輸?shù)南袼乜梢赃_(dá)到320×240。在系統(tǒng)中接收播放的客戶端是電腦端,視頻播放的幀率可以達(dá)到30 f/s。另外文章在設(shè)計(jì)監(jiān)控子系統(tǒng)時還引進(jìn)了全新的電力線載波通信技術(shù),該技術(shù)可以借助電力線網(wǎng)絡(luò)數(shù)據(jù)等檢測視頻監(jiān)控子系統(tǒng)視頻通信的速率,將測試的距離設(shè)置成5 m、10 m、15 m以及20 m,最終所取得的通信速率呈現(xiàn)出顯著降低的趨勢。收集到數(shù)據(jù)中的最大數(shù)值是175 Mb/s,最小值僅為85 Mb/s。
通過上述實(shí)踐可以得出,設(shè)計(jì)的嵌入型電力控制系統(tǒng)中的監(jiān)控子系統(tǒng)可以滿足圖像清晰、通信速率較高以及數(shù)據(jù)信息的傳輸延遲較低等設(shè)計(jì)要求,可以有效提高多路視頻在同一時間的傳輸效果,提供一個相對可靠且科學(xué)的技術(shù)保障。
盡管所設(shè)計(jì)系統(tǒng)的各項(xiàng)功能均得到了良好實(shí)現(xiàn),但由于研究時間較短,因此仍存在較多的缺陷。例如,當(dāng)前系統(tǒng)所具有的監(jiān)控功能相對單調(diào),所采用的接口盡管操作便捷,但是相應(yīng)的操作時間卻極長,而且采集的范圍也相對較窄。但如果使用更為先進(jìn)的芯片,那么最終所取得的效果必然也將更為出色。另外,該系統(tǒng)還能夠通過外接傳感裝置全方位監(jiān)控工業(yè)現(xiàn)場,以此來實(shí)現(xiàn)信息數(shù)據(jù)的融合并提升檢測的科學(xué)性與全面性。