国产丁香婷婷妞妞基地-国产人人爱-国产人在线成免费视频麻豆-国产人成-91久久国产综合精品-91久久国产精品视频

公務員期刊網 論文中心 正文

電力二次設備中容器技術的應用

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了電力二次設備中容器技術的應用范文,希望能給你帶來靈感和參考,敬請閱讀。

電力二次設備中容器技術的應用

摘要:能源互聯網作為電網發展的新階段,海量設備的接入和數據量要求電力二次設備具備邊緣計算能力,實現電力相關設備實時感知、監測及智能控制。為了快速部署、響應用戶新業務新需求,提升邊緣設備的計算能力,介紹在設備上應用Docker技術的方案,通過軟件APP化以及使用MQTT消息總線進行APP間通信,提升電力設備運維和計算能力。經實際測試,該設備部署容器后軟硬件運行正常,可通過遠程運維平臺管理裝置上的各類APP,具有較好的工程應用前景。

關鍵詞:容器;邊緣計算;配電網

隨著能源互聯網和數字電網建設的持續推進,大量的傳感器接入,電力系統獲取的感知數據是海量級的,導致系統傳輸壓力大、主站計算負荷重。傳統的傳感信息獲取方式處理方式存在數據良莠不齊、數據缺失、格式不統一、數據處理不及時等問題,導致電力系統尤其是低壓配電系統存在故障定位時間長、事故處理響應慢等痛點[1]。隨著終端側裝置數量日益增多,對電網中心化數據處理平臺提出更高的需求。為降低系統成本并防止中心化節點成為瓶頸,邊緣計算利用更接近用戶側的基礎設施,在網絡邊緣對數據進行處理[2]。提供強大算力的邊緣計算技術方案可以將分散的電力設備作為數字電網的重要端口,在新一代信息技術支撐下,實現互聯互通,全面感知狀態、高效處理信息,形成數字化管理的強大生產動能,挖掘出大數據價值。其中邊緣計算設備作為提供算力的計算節點,在邊緣側要滿足行業在實時業務、應用智能、安全與隱私保護等方面的基本需求。如何動態地、按需隨時將計算算力下發部署到邊緣設備節點上,并保證各計算之間互相隔離互不干擾就成為了技術要點。以Docker為代表的虛擬化技術天然具備動態部署、隔離應用的特性,因此在邊緣設備上應用Docker技術能較好地適應這種場景。

1Docker容器技術簡介

容器技術作為一種資源隔離的虛擬化技術,其概念始于1979年提出的UNIXchroot。經過多年發展,從最初的chroot到Jails、LinuxVserver、Solaris、OpenVZ、Process容器、Con-trolGroups到LXC以及現在火熱的Docker技術等。容器作為一個輕量級的虛擬化技術,由應用程序及其依賴構成,并在Host操作系統的用戶空間運行,與操作系統其它進程隔離。在嵌入式裝置中應用較多的是容器技術是Docker和LXC。LXC起源于cgroup(源自控制組群)和namespaces(命名空間)在Linux內核方面的發展,它支持輕便的虛擬技術操作系統環境。LXC系統提供工具管理容器,先進的網絡和存儲支持,還有最小容器操作系統模板的廣泛選擇。Docker的構想是要實現“Build,ShipandRunAnyAPP,Anywhre”,即通過對應用的封裝(Packing)、分發(Distribution)、部署(Deployment)、運行(Runtime)生命周期進行管理,達到應用組件“一次封裝,到處運行”的目的[3]。兩者差異如表1所示。Docker相對于LXC技術,在可移植性、工具生態系統、開放兼容性、工具生態系統上等方面都更具優勢,因此本系統采用Docker技術作為最終使用的虛擬化技術。

2系統硬件設計

本項目硬件平臺采用ZYNQ-7000系列芯片,包括片外Flash存儲、EMMC存儲、DDR內存、模擬量采集、數字輸入輸出、串口RS485/232等[4]。該芯片性能強大,可以實現保護控制通信等多種功能,適合在電力設備上使用。其中片外Flash主要存儲用于啟動的u-boot、內核鏡像、設備樹等文件,EMMC存儲文件系統、應用程序及日志、數據信息。

3系統軟件設計

電力二次設備大多采用嵌入式Linux操作系統,系統基礎軟件設計主要基于Linux操作系統構建容器運行環境、運行APP、建立各APP間通信機制。其中容器運行環境構建主要包括:Linux內核定制、容器基礎鏡像的構建、APP鏡像的構建。以下先介紹應用整體框架,再分別介紹構建容器環境的幾個環節。

3.1應用整體框架

基于Docker容器技術的系統軟件總體結構如圖1所示。在作為分布式計算系統應用時,計算任務需要分配到多個CPU、DSP才能完成,各CPU、DSP需要按照預定設計的目標定時工作,并實時交換數據。因為常規Linux系統實時性滿足不了電力系統中一些高實時的計算任務,系統設計采用非對稱多進程處理(AMP)模式,通過Linux+裸核的方式運行;ZYNQ-7000處理器集成雙核ARMCortex-A9,可在其中一個核上跑Linux操作系統,另一個核上進行高實時性的運算。其中Linux操作系統上每個業務APP都通過鏡像的方式運行在容器中,通過docker設備映射功能訪問各外設設備,如配變交采類應用可通過驅動設備文件獲取各類模擬量信息;系統管理進程負責系管理系統中各類進程;各APP與系統管理程序及APP之間通過容器間IP化技術和MQTT總線進行各類消息主題的訂閱和。系統host上運行遠程管理模塊,通過網絡與遠程運維主站進行通信;通過運維主站進行各容器APP部署下發,遠程管理模塊可解析命令進行APP的安裝部署,同時可將各APP的運行狀態上送給運維主站,達到遠程運維的目的。

3.2Linux內核定制

容器運行在宿主機上,與宿主機共享內核。容器的正常運行依賴內核自身的許多特性。因此在開發構建容器的運行環境時,首先要定制相應的內核配置,以支撐容器的運行。Docker運行要求內核版本不低于3.10。內核中與容器緊密相關的最核心的特性是Namespaces命名空間和Controlgroups(cgroups)控制組。利用命名空間這一特性,每個容器都有獨立的命名空間,每個運行其中的應用都像是擁有了獨立的操作系統,保證了容器彼此之間的互不干擾。命名空間提供了系統資源隔離的基礎,其包括了進程隔離、網絡管理接口、管理跨進程通信訪問、管理掛載點、隔離內核和版本標識。內核配置上需對以上命令空間進行配置。控制組是Linux內核的另一個特性,主要用來對共享資源進行隔離、限制、審計等,只有能控制分配到容器的資源,才能避免多個容器同時運行時對宿主機系統的資源競爭。資源控制是Docker的基礎,在Dockerd啟動過程就需要cpuset、cpu、cpuacct、blkio、memory、devices、freezer、pids,要保證各個控制組已經掛載完成。另外Docker啟動時會使用iptables配置一些網絡規則等也會涉及一些內核配置,不一一贅述。

3.3基礎鏡像及APP鏡像的構建

采用Yocto框架來構建基礎鏡像。Yocto的基礎使用方法,可參照Yocto官方文檔。構建方法主要分為以下幾步:1)根據相應的硬件平臺,設置對應的BSP配置文件,并將配置文件設置為默認BSP配置;2)進行內核recipe(配方)的配置。一個完整的OS由內核和rootfs構成,兩者需保持兼容。在構建rootfs的過程中,必須要選擇和該內核兼容的kernel來配置recipe;3)進行rootfs的recipe配置。image用于指定需要編譯進rootfs的軟件以及其依賴軟件。比如要使用Docker軟件,就需要將Docker以及相關的依賴,比如Docker-registry增加到image中;4)一些特殊的定制。通常會根據整個系統的兼容性和需求,調整相關軟件的版本和配置。比如容器只需要Docker,不需要lxc,需要設置runc的recipe;5)使用bitbake(構建系統)構建相應的版本。APP容器化的基礎是每一個APP都做成鏡像運行。可以通過Dockerfile來進行APP鏡像的制作。Dockerfile是一個文本文件,記錄了鏡像構建的所有步驟。下面是一個Dockerfile的實例,baseimage是基礎鏡像,appname是要打包的APP,需在“/bin”目錄執行。#DockerfileexampleFROMbaseimageMAINTAINERauthornameemail@xxx.comCOPYappname/binCMD/bin/appname將Dockerfile和appname放置在同一個目錄后,可通過如下命令制作APP鏡像。dockerbuild-tappimage.執行完成后,就可以通過dockerimages命令查看到生成的APP鏡像。如果執行的命令比較復雜,也可以做成一個shell腳本,同樣拷貝到鏡像中,編寫Dockerfile的時候CMD后面執行shell腳本來運行程序。如果應用有依賴的lib庫,lib庫需要根據對應的編譯鏈進行編譯并打包到容器鏡像內。

3.4APP通信機制

APP通信流程如圖2所示。在容器運行環境下,各APP的通信設計基于以下原則:交互完全基于消息機制,以達到數據交互解耦,避免私有交互造成的管理復雜性;各APP開發統一的預留接口,保證互通互用。基于消息機制,各APP間通信引入了MQTT總線。MQTT協議是一個客戶端服務端架構的/訂閱模式的消息傳輸協議,設計思想是輕巧、開放、簡單、規范、易于實現。所有APP間通信可通過MQTT總線/訂閱消息,獲取系統資源以及APP交互,可提供一對多的消息分發和應用間的解耦。具體的消息交互流程如下:1)MQTT消息總線提供訂閱主題接口,各應用APP啟動運行時需先進行、訂閱數據主題注冊;2)對外提供數據的APP應用,在生成新數據后調用總線消息接口進行數據;3)消息總線接收到數據后,將數據存儲至實時數據庫。消息總線在發現被訂閱的數據變化后,啟動主題推送程序,根據訂閱主題信息調用訂閱方接收接口,推送數據。

4應用情況

本文完成了在嵌入式裝置上部署容器運行環境,實現APP服務容器化的設計目標。目前該技術已在某變電站遠程運維系統中成功應用。該項目通過遠程運維平臺部署各容器/業務APP到電力裝置上,如104通信規約APP、停電告警、相序識別等;實現了數據的貫通,通過從底層驅動獲取到電壓電流等數據通過APP計算后,使用MQTT總線上送到IEC104APP等,驗證了各APP間數據交互、消息發送的機制和可行性。同時對裝置資源的消耗和容器大小測試,其中容器鏡像文件大小根據實際應用文件及依賴有所不同,一般在幾MB。系統運行中CPU和內存占用率有所上升,只是在原有基礎上增加幾十MB內存的占用,對系統開銷影響不大。

5結束語

在能源互聯網建設的背景下,本文提出一種在電力設備上應用Docker技術以及設備上各APP間通信機制的方法,并對相關的操作進行了闡述。通過引入Docker技術,實現了邊緣計算節點業務容器化、軟硬件解耦操作,為軟件APP化提供了實踐方法。在當前運維和部署服務越來越復雜的情況下,為實現電力行業的業務需求彈性擴展、快速滿足用戶需求以及邊緣計算的應用提供了有力支撐。為電力物聯網建設提供軟件平臺,提供了開源、開放式的環境,對電力設備開發提供一定的參考。

參考文獻

[1]張樹華,仝杰,張鋆等.面向能源互聯網智能感知的邊緣計算技術研究[J].電力信息與通信技術,2020(18):4

[2]李彬,賈濱誠,曹望璋,等.邊緣計算在電力需求響應業務中的應用展望[J].電網技術,2018,42(1):79-87

[4]楊保華,戴玉劍,曹亞侖.Docker技術入門與實踐[M].北京:機械工業出版社,2014

作者:吳汪兵 龔行梁 劉偉 單位:南京南瑞繼保電氣有限公司

主站蜘蛛池模板: 日韩av线上| 国产激情一区二区三区成人91 | 久久成人视 | 亚洲视频aaa| 午夜性激福利免费观看 | 美女亚洲视频 | 一级毛片在播放免费 | 国产下药迷倒白嫩丰满美女j8 | 97免费公开视频 | 日本在线毛片视频免费看 | 日本aaaaa级毛片 | 国产一级做a爰片在线看 | 成人18视频在线观看 | 9191精品国产费久久 | 欧美日韩另类在线观看视频 | 日本道色 | 久草久草在线视频 | 日韩视频一区二区 | 亚洲成人黄色片 | 1024色淫免费视频 | 失禁h啪肉尿出来高h | 国产一区二区三区欧美精品 | 国产欧美综合精品一区二区 | 一区视频在线 | 美美女下面被cao爽 美女131爽爽爽做爰中文视频 | 久久99亚洲精品久久久久网站 | 成年美女黄网站色大 | 精品久久久久久综合网 | 国产成人综合久久精品红 | 久久精品成人一区二区三区 | 九九在线视频 | 韩日毛片 | 欧美一级手机免费观看片 | 亚洲一区二区三区在线视频 | 国产黄网站 | 国产精品欧美激情在线播放 | 国产成人综合久久精品红 | 欧美精品国产一区二区三区 | 国产精品精品国产一区二区 | 国产亚洲视频在线播放大全 | 成人免费网站视频 |