国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于嵌入式實(shí)時(shí)操作系統(tǒng)的配電自動(dòng)化監(jiān)控裝置應(yīng)用

2016-10-13 01:14:53廣州南方電力集團(tuán)科技發(fā)展有限公司王炬峰
電子世界 2016年17期
關(guān)鍵詞:實(shí)時(shí)性內(nèi)核中斷

廣州南方電力集團(tuán)科技發(fā)展有限公司 王炬峰

基于嵌入式實(shí)時(shí)操作系統(tǒng)的配電自動(dòng)化監(jiān)控裝置應(yīng)用

廣州南方電力集團(tuán)科技發(fā)展有限公司 王炬峰

目前國(guó)家正在大力推廣配網(wǎng)側(cè)自動(dòng)化改造,進(jìn)一步提高配電網(wǎng)的可靠性。改造的其中一環(huán)就包括升級(jí)加裝智能化的配電自動(dòng)化監(jiān)控裝置。本文介紹基于實(shí)時(shí)操作系統(tǒng)Linux+Xenomai雙內(nèi)核方式實(shí)現(xiàn)軟件功能的配電自動(dòng)化監(jiān)控裝置,提供移植過程,為開發(fā)配電自動(dòng)化監(jiān)控設(shè)備提供一種方便、通用、高性價(jià)比的解決方案。

配電自動(dòng)化;實(shí)時(shí);嵌入式; 實(shí)時(shí)操作系統(tǒng)

引言

隨著國(guó)民經(jīng)濟(jì)的飛速發(fā)展和人民生活水平的提高,對(duì)供電質(zhì)量和可靠性也提出了更高的要求。在我國(guó),國(guó)家電網(wǎng)和南方電網(wǎng)這兩大國(guó)家電力公司都對(duì)配電網(wǎng)投入大量的資金和進(jìn)行大規(guī)模的配電網(wǎng)改造,其目的就是為了進(jìn)一步提高配電網(wǎng)的可靠性,要達(dá)成這個(gè)目標(biāo)還必須全面實(shí)現(xiàn)高水平的配網(wǎng)自動(dòng)化。配網(wǎng)自動(dòng)化就是利用現(xiàn)代電子技術(shù)、通訊技術(shù)、計(jì)算機(jī)及網(wǎng)絡(luò)技術(shù),實(shí)現(xiàn)配電系統(tǒng)正常運(yùn)行及事故情況下的監(jiān)測(cè)、保護(hù)、控制和配電管理的現(xiàn)代化。配電自動(dòng)化其中一個(gè)重要一環(huán)就是配電遠(yuǎn)方終端,利用現(xiàn)代電子和通信技術(shù),并基于操作系統(tǒng)進(jìn)行軟件開發(fā)的配電遠(yuǎn)方終端本文稱為配電自動(dòng)化監(jiān)控裝置。它能實(shí)現(xiàn)對(duì)配電網(wǎng)數(shù)據(jù)采集、四遙(遙信、遙測(cè)、遙控、遙調(diào))、狀態(tài)監(jiān)視、報(bào)警、事件順序記錄、統(tǒng)計(jì)計(jì)算等功能。本文介紹基于實(shí)時(shí)操作系統(tǒng)Linux+Xenomai雙內(nèi)核方式實(shí)現(xiàn)軟件功能的配電自動(dòng)化監(jiān)控裝置,它能兼顧實(shí)時(shí)性和基于Linux開發(fā)的便利性,為開發(fā)配電自動(dòng)化監(jiān)控設(shè)備提供一種方便、通用、高性價(jià)比的解決方案。

1. 實(shí)時(shí)的概念及描述

對(duì)于自動(dòng)化領(lǐng)域,實(shí)時(shí)性是不可忽略的問題,實(shí)時(shí)性是一個(gè)模糊的概念,每個(gè)對(duì)響應(yīng)時(shí)間敏感的應(yīng)用都有自己相應(yīng)的實(shí)時(shí)性的概念。業(yè)內(nèi)通常認(rèn)為實(shí)時(shí)性要求分以下幾種:

(1)軟實(shí)時(shí):

這種級(jí)別的實(shí)時(shí)性要求能滿足大部分目標(biāo)用戶交互的需求,這種實(shí)時(shí)性要求應(yīng)用使用一般的操作系統(tǒng)就能支持,例如數(shù)字音樂的播放等應(yīng)用。

(2)生命安全級(jí)別實(shí)時(shí)

這種級(jí)別要求系統(tǒng)能100%滿足在應(yīng)用規(guī)定的時(shí)間內(nèi)做出響應(yīng),如果不能滿足響應(yīng)要求,就會(huì)有人身安全問題或出現(xiàn)設(shè)備損壞情況。

(3)100%硬實(shí)時(shí)

這種級(jí)別要求系統(tǒng)能100%滿足在應(yīng)用規(guī)定的時(shí)間內(nèi)做出響應(yīng)。比如工業(yè)過程控制,如果不能滿足要求會(huì)出現(xiàn)廢品情況。

(4)95%硬實(shí)時(shí)

這種級(jí)別要求系統(tǒng)能至少95%滿足在應(yīng)用規(guī)定的時(shí)間內(nèi)做出響應(yīng)。比如數(shù)據(jù)收集系統(tǒng),如果要求不能滿足會(huì)導(dǎo)致采樣的部分?jǐn)?shù)據(jù)是不合格的,但收集系統(tǒng)可以接受這種情況。

2. 傳統(tǒng)配電自動(dòng)化監(jiān)控裝置解決方案

配電自動(dòng)化監(jiān)控裝置主要功能為實(shí)現(xiàn)對(duì)配電網(wǎng)數(shù)據(jù)采集、四遙(遙信、遙測(cè)、遙控、遙調(diào))、狀態(tài)監(jiān)視、報(bào)警、事件順序記錄、統(tǒng)計(jì)計(jì)算等,這些功能根據(jù)實(shí)時(shí)性要求可以劃分為實(shí)時(shí)性任務(wù)和非實(shí)時(shí)性任務(wù)。這種方案采用專用的嵌入式應(yīng)用程序,不依賴操作系統(tǒng)系統(tǒng)函數(shù)庫(kù)編寫,沒有操作系統(tǒng)的內(nèi)部任務(wù)調(diào)度。因此實(shí)時(shí)性指標(biāo)相當(dāng)好。但這個(gè)架構(gòu)的缺點(diǎn)也很明顯,就是使用專用的嵌入式程序,與硬件耦合程度非常高,一旦硬件架構(gòu)改變,移植的工作量很大。其次就是沒有依托操作系統(tǒng),其多任務(wù)能力先天不足,而且沒有操作系統(tǒng)的依托,很多協(xié)議(如TCP/IP)需要自行編寫或移植。

為了能夠進(jìn)一步提高通用性,降低相關(guān)硬件的耦合度,嵌入式應(yīng)用領(lǐng)域推出實(shí)時(shí)操作系統(tǒng)的概念。目前應(yīng)用的實(shí)時(shí)操作系統(tǒng)有很多,其中一種就是本文所推薦的Linux+Xenomai雙內(nèi)核架構(gòu)的實(shí)時(shí)操作系統(tǒng)。

3. Xenomai介紹及其優(yōu)勢(shì)

Xenomai這個(gè)項(xiàng)目開展于2001年,它開始的目的是能夠仿真?zhèn)鹘y(tǒng)的實(shí)時(shí)操作系統(tǒng),作為L(zhǎng)inux的一個(gè)外掛補(bǔ)丁,仿真?zhèn)鹘y(tǒng)的實(shí)時(shí)操作系統(tǒng)如VxWorks、pSOS+和VRTXsa的API,將實(shí)時(shí)API與POSIX API及原生的API集成在一起。但隨后幾年它就以獨(dú)立的Linux實(shí)時(shí)框架的形式存在。Adeos/I-pipe是Xenomai的核心組件,它作用是通過自己中斷處理流程傳遞各種高優(yōu)先級(jí)的事件給內(nèi)核,從而實(shí)現(xiàn)短而且是可預(yù)測(cè)的響應(yīng)時(shí)延。Xenomai的實(shí)時(shí)應(yīng)用需要按照RTDM的標(biāo)準(zhǔn)重新寫相應(yīng)的驅(qū)動(dòng)程序,但除了實(shí)時(shí)應(yīng)用外的其他應(yīng)用均可以使用Linux自帶的驅(qū)動(dòng)程序。實(shí)時(shí)應(yīng)用除了可以使用Xenomai API 也可以使用POSIX 接口,這樣用戶就能很方便將自己的應(yīng)用程序及以前的RTAI接口編寫的程序進(jìn)行合并開發(fā),加快開發(fā)的過程,并提高可靠性。

4. 基于Xenomai嵌入式實(shí)時(shí)操作系統(tǒng)的配電自動(dòng)化監(jiān)控裝置應(yīng)用方案

采用Linux+Xenomai雙內(nèi)核架構(gòu)的方案如圖1雙內(nèi)核嵌入式應(yīng)用架構(gòu)所示,方案采用單一硬件平臺(tái),所有的應(yīng)用均運(yùn)行在該平臺(tái)上,將移植好的Linux+Xenomai作為該平臺(tái)的操作系統(tǒng)。 Xenomai實(shí)時(shí)內(nèi)核為開發(fā)實(shí)時(shí)應(yīng)用提供了豐富的功能,主要包括實(shí)時(shí)線程調(diào)度與管理、用戶空間實(shí)時(shí)任務(wù)支持、線程同步服務(wù)、時(shí)鐘服務(wù)、中斷服務(wù)、動(dòng)態(tài)內(nèi)存申請(qǐng)和實(shí)時(shí)對(duì)象注冊(cè)服務(wù)等。Linux內(nèi)核則提供除實(shí)時(shí)應(yīng)用外的其它功能,如線程調(diào)度與管理,用戶空間任務(wù)等。在配電自動(dòng)化監(jiān)控裝置中Xenomai實(shí)時(shí)內(nèi)核負(fù)責(zé)模擬數(shù)據(jù)采集,開關(guān)狀態(tài)采集及事件順序記錄,Linux內(nèi)核負(fù)責(zé)用戶交互應(yīng)用、主站通信規(guī)約處理、數(shù)據(jù)處理和存儲(chǔ),告警數(shù)據(jù)形成和上送。兩個(gè)內(nèi)核之間通過文件、共享內(nèi)存等方式實(shí)現(xiàn)數(shù)據(jù)共享。

圖1 雙內(nèi)核嵌入式應(yīng)用架構(gòu)

5. Xenomai移植

本文的硬件平臺(tái)MCU采用ATMEL公司的AT91SAM9260為主MCU,其平臺(tái)框架如圖2硬件平臺(tái)框架。

Xenomai分兩種配置,分別是Cobalt和Mercury。Cobalt是作為實(shí)時(shí)內(nèi)核與Linux內(nèi)核共同工作,Cobalt內(nèi)核比Linux內(nèi)核具有更高優(yōu)先級(jí),負(fù)責(zé)處理如終端處理、實(shí)時(shí)線程調(diào)度等工作。Xenomai通過Cobalt內(nèi)核提供所有的實(shí)時(shí)操作系統(tǒng)API包括內(nèi)嵌POSIX 1003.1c服務(wù)的libcobalt。Mercury配置依賴PREEMPT-RT實(shí)時(shí)補(bǔ)丁的Linux內(nèi)核,通過這個(gè)修補(bǔ)過的Linux內(nèi)核提供實(shí)時(shí)服務(wù)。但這種配置由于Linux內(nèi)核的缺陷,會(huì)帶來比較大的響應(yīng)延時(shí)。

圖2 硬件平臺(tái)框架

本文以Cobalt內(nèi)核為例,Xenomai 的Cobalt配置是以補(bǔ)丁的形式提供,使用內(nèi)置的腳本執(zhí)行打補(bǔ)丁操作scripts/prepare-kernel.sh --linux=$linux-srctree --ipipe=$ipipe-patch --arch=arm($linux-srctree為內(nèi)核代碼路徑 $ipipe-patch為ipipe補(bǔ)丁路徑)。補(bǔ)丁操作提示成功后,可進(jìn)入Linux內(nèi)核目錄進(jìn)行內(nèi)核配置:

圖3 Cobalt內(nèi)核配置

配置好編譯就能生成內(nèi)核映像uImage。

要實(shí)現(xiàn)實(shí)時(shí)功能必須使用Xenomai的Cobalt庫(kù),需要自行編譯。

configure CFLAGS="-march=armv4t" LDFLAGS="-march=armv5" --build=i686-pc-linux-gnu --host=arm-none-linux-gnueabi- --withcore=cobalt

將生成的dev和usr文件夾放入文件系統(tǒng)相應(yīng)目錄。應(yīng)用程序應(yīng)當(dāng)包含生成的頭文件按照Xenomai編譯方法編譯使用。

6. 應(yīng)用方案實(shí)時(shí)性指標(biāo)驗(yàn)證

首先需要確認(rèn)Xenomai cobalt內(nèi)核是否正常啟動(dòng),可以通過系統(tǒng)啟動(dòng)信息,看到“[Xenomai] Cobalt”等信息 即可確認(rèn)Xenomai cobalt內(nèi)核正常啟動(dòng)。本文測(cè)試是針對(duì)任務(wù)響應(yīng)做的測(cè)試方案。任務(wù)響應(yīng)分三個(gè)階段:

外界產(chǎn)生一個(gè)事件,事件通過中斷通知CPU處理。

中斷句柄確認(rèn)處理,然后喚醒用戶空間的任務(wù),準(zhǔn)備處理這個(gè)事件。

圖4 用戶任務(wù)模式延時(shí)分布圖

用戶空間的任務(wù)處理事件并反饋給外界。

這過程中能確保一定能完成任務(wù)的最長(zhǎng)響應(yīng)時(shí)間稱作延時(shí)(latency)。本文測(cè)試方案就是為了測(cè)試這延時(shí)。延時(shí)在三個(gè)階段都可能產(chǎn)生,如中斷本身的延時(shí),中斷句柄處理延時(shí),任務(wù)調(diào)度本身及任務(wù)調(diào)度產(chǎn)生的延時(shí)。

任務(wù)響應(yīng)測(cè)試需要在一定負(fù)荷的情況下進(jìn)行測(cè)試,才能反映正常運(yùn)行的情況下的實(shí)時(shí)性指標(biāo)。為了模擬,專門編寫了負(fù)荷測(cè)試腳本load.sh。這個(gè)腳本包含有四個(gè)內(nèi)容: nc 利用網(wǎng)絡(luò)接口內(nèi)部傳輸文件,模擬網(wǎng)絡(luò)負(fù)荷并產(chǎn)生大量中斷;hackbench模擬線程調(diào)度負(fù)荷;ls和dd模擬整體負(fù)荷。

方案分三種測(cè)試模式,分別是用戶任務(wù)模式、內(nèi)核任務(wù)模式及定時(shí)器中斷模式。以下為三種情況下分別測(cè)試2小時(shí)的測(cè)試結(jié)果。

用戶任務(wù)模式

在用戶任務(wù)模式下,平均延時(shí)為112.184nS,最少延時(shí)為60.384nS,最大為144.756nS,采樣延時(shí)分布如圖4所示:

內(nèi)核任務(wù)模式:

在內(nèi)核任務(wù)模式下,平均延時(shí)為61.291nS,最少延時(shí)為18.443nS,最大為94.262nS,采樣延時(shí)分布如圖5所示:

圖5 內(nèi)核任務(wù)模式延時(shí)分布圖

定時(shí)器中斷模式:

在內(nèi)核任務(wù)模式下,平均延時(shí)為347.114nS,最少延時(shí)為6.551nS,最大為73.508nS,采樣延時(shí)分布如圖6所示:

圖6 定時(shí)器中斷模式延時(shí)分布圖

7. 結(jié)論

通過實(shí)時(shí)性指標(biāo)驗(yàn)證,在用戶任務(wù)模式下最大延時(shí)為144.756nS,比配電自動(dòng)化監(jiān)測(cè)終端要求的事件記錄分辨率2mS的指標(biāo)小得多,如果有其他對(duì)實(shí)時(shí)性要求更嚴(yán)苛的情況還可以采用內(nèi)核任務(wù)模式或定時(shí)器中斷來完成,采用Linux+Xenomai雙內(nèi)核方案對(duì)硬件要求不高,即可以利用Linux平臺(tái)的成熟協(xié)議和編程方法,也可以繼承之前實(shí)時(shí)操作系統(tǒng)的實(shí)時(shí)應(yīng)用程序,并擁有不錯(cuò)的實(shí)時(shí)性能,方案的性價(jià)比很高。隨著智能化設(shè)備的網(wǎng)絡(luò)化,配電自動(dòng)化設(shè)備采用Linux+Xenomai雙內(nèi)核方案將會(huì)有很大的優(yōu)勢(shì),具有很好的推廣前景。

[1]郁發(fā)新.常用嵌入式實(shí)時(shí)操作系統(tǒng)比較分析[J].計(jì)算機(jī)應(yīng)用,2006(04).

[2]張威編寫.Linux網(wǎng)絡(luò)編程教程[M].北京希望電子出版社,2002.

[3]羅蕾.嵌入式實(shí)時(shí)操作系統(tǒng)及應(yīng)用開發(fā)[M].北京航空航天大學(xué)出版社,2011,1.

[4]拉姆耶.嵌入式實(shí)時(shí)操作系統(tǒng)的多線程計(jì)算 基于Thread和XARM[M].北京航空航天大學(xué)出版社,2005.

[5]王洋.VvWorks嵌入式實(shí)時(shí)操作系統(tǒng)設(shè)備驅(qū)動(dòng)與BSP開發(fā)設(shè)計(jì)[M].北京航空航天大學(xué)出版社.

[6]科波特(Corbet,J.) Linux設(shè)備驅(qū)動(dòng)程序[M].中國(guó)電力出版社,2006.

猜你喜歡
實(shí)時(shí)性內(nèi)核中斷
萬(wàn)物皆可IP的時(shí)代,我們當(dāng)夯實(shí)的IP內(nèi)核是什么?
強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
基于規(guī)則實(shí)時(shí)性的端云動(dòng)態(tài)分配方法研究
基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
Linux內(nèi)核mmap保護(hù)機(jī)制研究
基于虛擬局域網(wǎng)的智能變電站通信網(wǎng)絡(luò)實(shí)時(shí)性仿真
跟蹤導(dǎo)練(二)(5)
千里移防,衛(wèi)勤保障不中斷
解放軍健康(2017年5期)2017-08-01 06:27:44
航空電子AFDX與AVB傳輸實(shí)時(shí)性抗干擾對(duì)比
一種車載Profibus總線系統(tǒng)的實(shí)時(shí)性分析
江门市| 东源县| 新化县| 南溪县| 富锦市| 大英县| 香河县| 虹口区| 灵宝市| 偃师市| 合川市| 哈巴河县| 桐庐县| 黑河市| 崇明县| 巢湖市| 镇平县| 胶州市| 徐闻县| 乐清市| 特克斯县| 罗甸县| 民县| 沂水县| 北辰区| 富宁县| 瑞昌市| 道真| 莱西市| 叙永县| 东乡| 新泰市| 互助| 原平市| 南漳县| 遵义县| 宜宾市| 文化| 龙泉市| 阿拉善右旗| 平和县|