IEC61850是變電站自動化系統(SAS)中通信系統和分散能源(DER)管理的國際標準。它通過標準的實現,實現了智能變電站的工程運作標準化。使得智能變電站的工程實施變得規范、統一和透明,在電力和儲能系統中應用非常廣泛。
本文基于米爾MYD-YF13X開發板,在Linux系統上移植和使用開源的libIEC61850庫,該庫提供了用C語言編寫的IEC 61850 / MMS,IEC 61850 / GOOSE和IEC 61850-9-2 /采樣值通信協議的服務端和客戶端庫。
#02
搭建配置環境
本章節講述libIEC61850庫的編譯環境配置過程。
2.1.安裝JAVA環境
IEC61850庫中的ICD文件需要一個JAVA工具來進行轉換,所以需要先安裝JAVA運行環境。米爾提供的JDK安裝包位于光盤03-Tools目錄,拷貝jdk-8u191-linux-x64.tar.gz到ubuntu工作目錄,并解壓出來。
# cd /JDK # tar zxvf jdk-8u191-linux-x64.tar.gz # cd jdk1.8.0_191
配置JAVA環境變量,修改/etc/profile文件,為用戶工作路徑在里面添加如下內容:
# vi /etc/profile export JAVA_HOME=/JDK/jdk1.8.0_191 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATH
修改完成保存退出,使用下面命令來驗證JAVA運行環境是否安裝成功:
# java -versionjava version "1.8.0_191"Java(TM) SE Runtime Environment (build 1.8.0_191-b12)Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)
2.2.配置交叉編譯工具鏈
這里直接使用MYIR制作的交叉編譯工具鏈。拷貝位于光盤04-Linux_source\Toolchain\arm-myir-linux-gnueabihf-gcc.tar.gz到ubuntu的工作目錄。通過下面操作設置交叉編譯工具鏈環境變量。
# mkdir arm-myir-linux-gnueabihf-gcc # tar xvf arm-myir-linux-gnueabihf-gcc.tar.gz -C arm-myir-linux-gnueabihf-gcc # export ARCH=arm# export CROSS_COMPILE=arm-myir-linux-gnueabihf-# export PATH=$PATH://arm-myir-linux-gnueabihf-gcc/usr/bin
設置完成后使用如下命令驗證設置是否成功。
# arm-myir-linux-gnueabihf-gcc -v使用內建 specs。COLLECT_GCC=/home/qinlh/buildroot/buildroot-2019.02.2/output/host/bin/arm-myir-linux-gnueabihf-gcc.br_real COLLECT_LTO_WRAPPER=/home/qinlh/buildroot/buildroot-2019.02.2/output/host/libexec/gcc/arm-myir-linux-gnueabihf/7.4.0/lto-wrapper......線程模型:posix gcc版本 7.4.0 (Buildroot 2019.02.2-g04eff54)
#03
編譯IEC61850庫
本章節講述IEC61850庫的編譯和MYIR IEC61850演示程序myir_iec61850_server的編譯過程。
3.1.獲取IEC61850源碼包
米爾提供libIEC61850源碼位于光盤文件的/04-Linux_Source/IEC61850目錄,將libiec61850-1.3.0.tar.gz拷貝到ubuntu目錄工作目錄,并解壓出來,其中為用戶工作目錄。
# cp libiec61850-1.3.0.tar.gz /libiec61850 # cd /libiec61850# tar zxvf libiec61850-1.3.0.tar.gz# cd libiec61850-1.3.0
編譯IEC61850庫:
# make TARGET=LINUX-ARM......arm-myir-linux-gnueabihf-ar: creating ./build-arm/libiec61850.aarm-myir-linux-gnueabihf-ranlib ./build-arm/libiec61850.a
MYIR_IEC61850演示程序用到了一些外部庫,需要修改位于examples\myir_iec61850_server\目錄下的Makefile來指定外部庫的路徑,將替換為用戶實際的工作路徑:
CFLAGS +=-I./ \-I/WORKIR>/arm-myir-linux-gnueabihf-gcc/usr/arm-myir-linux-gnueabihf/sysroot/usr/include/glib-2.0/ \-I/WORKIR>/arm-myir-linux-gnueabihf-gcc/usr/arm-myir-linux-gnueabihf/sysroot/usr/lib/glib-2.0/include/ \-I/WORKIR>/arm-myir-linux-gnueabihf-gcc/usr/arm-myir-linux-gnueabihf/sysroot/usr/include/cjson/ \-I/WORKIR>/arm-myir-linux-gnueabihf-gcc/usr/arm-myir-linux-gnueabihf/sysroot/usr/include \-I/WORKIR>/arm-myir-linux-gnueabihf-gcc/usr/rm-myir-linux-gnueabihf/sysroot/usr/include/libxml2LDFLAGS += -lpthread -ldbus-1 -lxml2 -lcjson \-L /WORKIR>/arm-myir-linux-gnueabihf-gcc/usr/arm-myir-linux-gnueabihf/sysroot/usr/lib
如果上述編譯過程報錯請檢查交叉編譯工具鏈設置是否有問題。
編譯ICD文件:
# cd examples/myir_iec61850_server# make modeljava -jar ../../tools/model_generator/genmodel.jar myir_iec61850_server.icdSelect ICD File myir_iec61850_server.icdparse data type templates ...parse IED section ...parse communication section ...Found connectedAP ap1 for IED MYIR1print report instance 01print report instance 02
如果上述過程報錯請檢查JAVA運行環境是否設置成功。
編譯MYIR IEC61850演示程序:
# cd examples/myir_iec61850_server# make TARGET=LINUX-ARM
#04
運行驗證IEC61850應用
4.1.運行應用
編譯完成后MYIR IEC61850應用位于examples/myir_iec61850_server/目錄下面,將myir_iec61850_server拷貝至開發板,運行過程如下所示。
# dbus-launchDBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-c0AGn2s5XN,guid=d6544df82962d617c2dc37805c2c2d68DBUS_SESSION_BUS_PID=5649# export DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-c0AGn2s5XN# ./myir_iec61850_server# Using libIEC61850 version 1.3.0
4.2.程序驗證
安裝包可以在03-Tools/IEDScout.zip文件中獲取。
測試驗證:
進入IEC61850應用界面,打開PC端IEDScout軟件。
?
點擊IECScout主界面下面的 Discover IED 按鈕,然后輸入輸入開發板網口的IP地址 192.168.x.xxx,輸入完成后點擊 Discover 按鈕。
?
進入 Browser 頁面,可以看到以MYIR1命名的IED設備模型。
?
點擊IED設備模型下面的Data Models->LD1->GGIO1進入通用I/O控制界面。
?
雙擊GGIO1下面的LED1數據對象,可以看到Switch這個數據屬性,然后點擊上方菜單欄的Write按鈕即可對LED1進行控制。
?
在Value欄選擇false,然后點擊Write按鍵,此時開發板上的LED心跳燈就被點亮了,說明通訊成功。
米爾基于STM32MP135開發板
米爾STM32MP135開發板,基于單核 Cortex-A7 設計的STM32MP13系列處理器,采用12V/2A直流供電,搭載了2路千兆以太網接口、1路USB2.0協議MINI PCIE插座的4G模塊接口、1路RGB顯示接口、1路音頻輸入輸出接口、2路USB HOST Type A、1路 USB OTG Type-C接口、1路Micro SD接口。開發板配套提供豐富的軟件資源以及文檔資料,助力開發者開發成功。
米爾STM32MP135開發板標注圖
-
變電站
+關注
關注
7文章
1266瀏覽量
42288 -
電力
+關注
關注
7文章
2159瀏覽量
50428 -
自動化系統
+關注
關注
3文章
259瀏覽量
29732
發布評論請先 登錄
相關推薦
IEC61850協議通信的“基石”
![<b class='flag-5'>IEC61850</b><b class='flag-5'>協議</b>通信的“基石”](https://file1.elecfans.com//web2/M00/A6/88/wKgZomUMPm2AFxi7AAGEgku0REQ981.png)
【昉·星光 2 高性能RISC-V單板計算機體驗】移植IEC61850協議助力電子電子發展
IEC61850方案分享,基于全志、瑞芯微國產平臺實現!
IEC61850規約轉換器及開發中間件相關信息,有想了解的進來討論討論。
基于IEC61850的SVG應用
STM32MP135開發板助力電力行業,IEC61850協議移植筆記
![STM32MP135開發板<b class='flag-5'>助力</b><b class='flag-5'>電力行業</b>,<b class='flag-5'>IEC61850</b><b class='flag-5'>協議</b><b class='flag-5'>移植</b><b class='flag-5'>筆記</b>](https://file1.elecfans.com/web2/M00/C0/81/wKgaomW80BOAN7-VAAE6Dmk-9Co078.png)
電力IEC104設備數據 轉IEC61850項目案例
![<b class='flag-5'>電力</b><b class='flag-5'>IEC</b>104設備數據 轉<b class='flag-5'>IEC61850</b>項目案例](https://file1.elecfans.com/web2/M00/FE/69/wKgZomah_FiAXiieAAASYu75NbQ849.jpg)
IEC61850在光伏儲能行業中的應用
![<b class='flag-5'>IEC61850</b>在光伏儲能<b class='flag-5'>行業</b>中的應用](https://file1.elecfans.com//web2/M00/FF/84/wKgaomai_NCAJshHAAPN8W-7A44638.png)
三格電子-Modbus轉IEC61850網關
![三格電子-Modbus轉<b class='flag-5'>IEC61850</b>網關](https://file1.elecfans.com/web3/M00/00/D4/wKgZPGdOdzCAFmVjAAeYcoMthP0125.png)
評論