俞千慧 邢 慧 張夢(mèng)圓 司文璐 朱玉婷 朱沿任
(南京工程學(xué)院電力工程學(xué)院,江蘇 南京 211167)
FTU(Feeder Terminal Unit)的全稱為饋線遠(yuǎn)方終端單元,是一種測(cè)量、監(jiān)控與保護(hù)配電網(wǎng)系統(tǒng)中的設(shè)備。FTU 主要用于與配網(wǎng)自動(dòng)化主站進(jìn)行通信,完成對(duì)配網(wǎng)系統(tǒng)的信息采集,將測(cè)量和監(jiān)控到的信息反饋于主站。配網(wǎng)主站可以對(duì)FTU 進(jìn)行遠(yuǎn)方調(diào)節(jié)與控制,實(shí)現(xiàn)對(duì)配電系統(tǒng)中的設(shè)備保護(hù)。FTU 在正常運(yùn)行狀態(tài)下可靠性較強(qiáng),不僅抗干擾能力強(qiáng),而且測(cè)量精度高,采集到的信息準(zhǔn)確可靠。
本次設(shè)計(jì)采用STM32F407 開(kāi)發(fā)板實(shí)現(xiàn)對(duì)FTU 的設(shè)計(jì),其不僅能符合上述功能要求,還具備了其獨(dú)特的通信模式,具體分為兩種不同的運(yùn)行模式,“正常運(yùn)行以太網(wǎng)模式”及“現(xiàn)場(chǎng)調(diào)試無(wú)線通信模式”[1]。
在正常運(yùn)行的模式下,F(xiàn)TU 以Ethernet 以太網(wǎng)模式進(jìn)行工作。在該模式下,配網(wǎng)主站與FTU 設(shè)備通過(guò)以太網(wǎng)端口連接。此模式使用10/100Mbit/s 的以太網(wǎng)MAC 內(nèi)核進(jìn)行數(shù)據(jù)的傳輸,可以快速實(shí)現(xiàn)FTU 設(shè)備的信息采集、繼電保護(hù)、人機(jī)交互、命令執(zhí)行等功能。以太網(wǎng)通信任務(wù)是基于LWIP 協(xié)議棧設(shè)計(jì),該協(xié)議棧下兼容嵌入式操作系統(tǒng)的編程接口NETCONN API 設(shè)計(jì)TCP服務(wù)器,創(chuàng)建TCP 連接,實(shí)現(xiàn)數(shù)據(jù)的收發(fā)等功能。
在進(jìn)行現(xiàn)場(chǎng)的調(diào)試時(shí),F(xiàn)TU 以無(wú)線通信模式進(jìn)行工作。在該模式下,F(xiàn)TU 設(shè)備利用STM32F407 開(kāi)發(fā)板的NRF24L01 無(wú)線模塊與配網(wǎng)主站進(jìn)行無(wú)線連接。最大空中速率可達(dá)2Mbps,可以實(shí)現(xiàn)數(shù)據(jù)信息的快速收發(fā)。無(wú)線通信任務(wù)是實(shí)現(xiàn)FTU 與配網(wǎng)主站之間的IEC60870-5-104 等規(guī)約進(jìn)行報(bào)文傳送,通信流程中涉及的報(bào)文按照幀結(jié)構(gòu)進(jìn)行了設(shè)計(jì),包括首次握手、總召喚、對(duì)時(shí)、SOE 信息上傳、遙控、整定值下發(fā)等報(bào)文。
本次設(shè)計(jì)基于探索者STM32F407 開(kāi)發(fā)板,采用電源模塊、液晶屏顯示模塊、A/D 轉(zhuǎn)換電路、無(wú)線通信模塊等硬件設(shè)備,外圍電路包括交流采樣電路以及繼電器驅(qū)動(dòng)電路,實(shí)現(xiàn)FTU 與配網(wǎng)主站的連接與采集任務(wù)等。本次設(shè)計(jì)的結(jié)構(gòu)框圖如圖1 所示。
本次設(shè)計(jì)采用NRF24L01 無(wú)線模塊,將其芯片NRF24L01安裝在STM32F407 開(kāi)發(fā)板,實(shí)現(xiàn)FTU 與配網(wǎng)主站的連接。NRF24L01 芯片主要具有如下特點(diǎn):
(1)2.4G 全球開(kāi)放的ISM 頻段,免許可證使用。
(2)最高工作速率2Mbps,高校的GFSK 調(diào)制,抗干擾能力強(qiáng)。
(3)125 個(gè)可選的頻道,滿足多點(diǎn)通信和調(diào)頻通信的需要。
(4)內(nèi)置CRC 檢錯(cuò)和點(diǎn)對(duì)多點(diǎn)的通信地址控制。
(5)低工作電壓(1.9-3.6V)。
(6)可設(shè)置自動(dòng)應(yīng)答,確保數(shù)據(jù)可靠傳輸。
(7)該芯片通過(guò)SPI 與外部MCU 通信,最大的SPI 速度可以達(dá)到10Mhz。
該模塊的外形和引腳圖如圖2 所示。
開(kāi)機(jī)的時(shí)候開(kāi)發(fā)板會(huì)自動(dòng)先檢測(cè)NRF24L01 模塊是否存在,在檢測(cè)到NRF24L01 模塊可以正常工作之后,才會(huì)根據(jù)工作模式不停的發(fā)送或接受數(shù)據(jù)。NRF24L01 模塊與STM32F407 開(kāi)發(fā)板的連接關(guān)系如圖3 所示。
圖3 NRF24L01 模塊接口與STM32F4 連接原理圖
NRF24L01 是使用的SPI1,和W25Q128 共用一個(gè)SPI 接口,所以在使用的時(shí)候,它們分時(shí)復(fù)用SPI1。本次設(shè)計(jì)需要把W25Q128 的片選信號(hào)置高,以防止這個(gè)器件對(duì)NRF24L01 的通信造成干擾[2]。
本次設(shè)計(jì)的FTU 裝置采用雙通信方式的模式,即以太網(wǎng)通信模式和無(wú)線通信模式。兩種模式通過(guò)一個(gè)開(kāi)關(guān)控制:當(dāng)開(kāi)關(guān)指向1 的位置時(shí),F(xiàn)TU 進(jìn)入以太網(wǎng)通信模式;當(dāng)開(kāi)關(guān)指向0 的位置時(shí),F(xiàn)TU 進(jìn)入無(wú)線通信模式。當(dāng)FTU 處于不同的通信模式時(shí),其運(yùn)行模式與其所包含的軟件設(shè)計(jì)也不相同。軟件系統(tǒng)的結(jié)構(gòu)框圖如圖4 所示。
圖4 FTU 軟件結(jié)構(gòu)框圖
在以太網(wǎng)通信模式下,F(xiàn)TU 以正常情況運(yùn)行,該運(yùn)行模式采用嵌入式操作系統(tǒng),以搶占的方式,將多任務(wù)按照優(yōu)先級(jí)進(jìn)行處理。FTU 將嵌入式操作系統(tǒng)中的多任務(wù)在液晶顯示屏上呈現(xiàn)出來(lái),通過(guò)ST emWin 開(kāi)發(fā)出友好的人機(jī)交互界面,實(shí)現(xiàn)采集數(shù)據(jù)和實(shí)時(shí)報(bào)文的顯示。實(shí)時(shí)操作系統(tǒng)是將并發(fā)的各任務(wù)按照其實(shí)時(shí)性賦予其不同的優(yōu)先級(jí),實(shí)時(shí)性要求高的任務(wù)擁有高優(yōu)先級(jí),優(yōu)先享有CPU 使用權(quán)。處理高優(yōu)先級(jí)任務(wù)時(shí),低優(yōu)先級(jí)任務(wù)被掛起,待高優(yōu)先級(jí)任務(wù)處理完成后,低優(yōu)先級(jí)任務(wù)繼續(xù)執(zhí)行。ST emWin 設(shè)計(jì)用于提供高效且獨(dú)立于處理器和顯示控制器的圖形用戶界面,用于任何使用圖形顯示進(jìn)行操作的應(yīng)用。它與單任務(wù)和多任務(wù)環(huán)境、專用操作系統(tǒng)或?qū)崟r(shí)操作系統(tǒng)兼容,ST emWin 的形式為C 語(yǔ)言源代碼。它可適用于任何尺寸的、具有任何顯示控制器和CPU 的物理和虛擬顯示器[3]。
在無(wú)線通信模式下,F(xiàn)TU 進(jìn)入現(xiàn)場(chǎng)調(diào)試的模式。該運(yùn)行模式不采用操作系統(tǒng),以循環(huán)的方式,將各任務(wù)優(yōu)先級(jí)按照先后順序進(jìn)行處理。FTU 將各任務(wù)得到的內(nèi)容在LCD 液晶顯示屏上呈現(xiàn),包括遙測(cè)量采集、遙信量采集、遙控量輸出、實(shí)時(shí)時(shí)鐘區(qū)以及按照IEC60870-5-104 規(guī)約的遙測(cè)、遙信、遙控報(bào)文。無(wú)線通信模式下的FTU 可以完成“三遙”功能、繼電保護(hù)、SOE 事件順序記錄等SCADA 系統(tǒng)的基本功能。FTU 通過(guò)無(wú)線通信方式與配網(wǎng)主站連接后,可上傳A/D 轉(zhuǎn)換電路采集的電壓、電流量,繼電器驅(qū)動(dòng)電路采集的開(kāi)關(guān)狀態(tài)量,并接受配網(wǎng)主站發(fā)送的遙控命令,進(jìn)行相應(yīng)的遙控返校和執(zhí)行操作,控制繼電器進(jìn)行分合閘。同時(shí),F(xiàn)TU 可接收配網(wǎng)主站的對(duì)時(shí)命令,實(shí)現(xiàn)與配網(wǎng)主站的時(shí)鐘同步。
uc/os-III 是一個(gè)完整的、可移植、可固化、可剪裁的基于優(yōu)先級(jí)調(diào)度的搶占式實(shí)時(shí)多任務(wù)操作系統(tǒng);它能夠在外界事件或數(shù)據(jù)產(chǎn)生時(shí),能夠接收并以足夠快的速度響應(yīng),其處理的結(jié)果又能夠在規(guī)定的時(shí)間內(nèi)輸出,并控制所有實(shí)時(shí)任務(wù)協(xié)調(diào)、一致運(yùn)行。它包含了基本的任務(wù)調(diào)度、時(shí)間管理、內(nèi)存管理以及任務(wù)之間的通信和同步等功能[4]。
以太網(wǎng)通信模式下,將uc/os-III 實(shí)時(shí)操作系統(tǒng)移植到STM32F407 開(kāi)發(fā)板上,獲得較高的使用性能,并且將復(fù)雜的控制系統(tǒng)變得簡(jiǎn)單易懂。
emWin 是德國(guó)Segger 公司研發(fā)的圖形界面庫(kù)(GUI),它主要用于上位機(jī)的圖片界面設(shè)計(jì),通過(guò)LCD 顯示屏來(lái)實(shí)現(xiàn)人機(jī)交互,在emWin 中提供了很多控件,可以通過(guò)使用這些控件來(lái)完成一些復(fù)雜的界面設(shè)計(jì)。emWin 既可以獨(dú)立運(yùn)行,也可以運(yùn)行在uc/os-III 實(shí)時(shí)操作系統(tǒng)之上。以太網(wǎng)通信模式下移植的emWin 可以支持操作系統(tǒng)[5]。
本次設(shè)計(jì)按照IEC60870-5-104 規(guī)約的設(shè)定兩個(gè)客戶端,即配網(wǎng)主站(顯示屏上報(bào)文以HOST 字符呈現(xiàn)),一個(gè)服務(wù)器端,即配網(wǎng)終端FTU(顯示屏上報(bào)文以FTU 字符呈現(xiàn))。在以太網(wǎng)通信模式下,選用PC 機(jī)作為客戶端;而在無(wú)線通信模式下,選用手持式調(diào)試儀作為客戶端,此模式下的FTU 為本次設(shè)計(jì)的重點(diǎn)部分。FTU 作為配網(wǎng)終端時(shí)刻監(jiān)視著客戶端的信息。下面介紹本次設(shè)計(jì)104 規(guī)約的通信步驟。具體流程如圖5 所示。
圖5 104 規(guī)約下的通信流程
(1) 配網(wǎng)終端FTU 與配網(wǎng)主站的首次握手(First Handshake)。配網(wǎng)主站發(fā)送激活傳輸啟動(dòng)報(bào)文(U 幀),F(xiàn)TU 收到后回復(fù)確認(rèn)激活傳輸啟動(dòng)報(bào)文(U 幀);
(2)總召喚(General Call)。配網(wǎng)主站發(fā)送總召喚報(bào)文,F(xiàn)TU收到后回復(fù)總召喚確認(rèn)報(bào)文,并向配網(wǎng)主站發(fā)送YX 報(bào)文(YX Message)和YC 報(bào)文(YC Message)。報(bào)文內(nèi)容取決于FTU 采集到的電流量和開(kāi)關(guān)量;
(3)時(shí)間校準(zhǔn)(Time)。在配網(wǎng)主站收到FTU 發(fā)送的總召喚確認(rèn)報(bào)文后,配網(wǎng)主站發(fā)送對(duì)時(shí)報(bào)文,下達(dá)時(shí)間校準(zhǔn)命令。FTU收到對(duì)時(shí)報(bào)文后修改本機(jī)時(shí)間,與配網(wǎng)主站進(jìn)行時(shí)間的校準(zhǔn)工作;
(4)遙控與事件記錄。配網(wǎng)主站啟動(dòng)遙控。首先配網(wǎng)主站下達(dá)遙控預(yù)置命令,發(fā)送遙控選擇報(bào)文(YK Choose),F(xiàn)TU 收到后回復(fù)遙控返校報(bào)文,之后配網(wǎng)主站開(kāi)始對(duì)FTU 進(jìn)行遙控操作,并發(fā)送遙控執(zhí)行報(bào)文(YK Start),F(xiàn)TU 收到后按照配網(wǎng)主站下達(dá)的命令對(duì)繼電器進(jìn)行分合閘動(dòng)作,并在動(dòng)作后FTU 回復(fù)遙控確認(rèn)報(bào)文(YK Confirm),完成遙控操作。在每次繼電器進(jìn)行分合閘動(dòng)作后以及在正常運(yùn)行狀態(tài)下增加負(fù)載模擬短路故障后FTU 都會(huì)產(chǎn)生一條SOE 報(bào)文并發(fā)送給配網(wǎng)主站,以方便配網(wǎng)主站進(jìn)行事件記錄。
在圖4 無(wú)線通信模式的軟件系統(tǒng)中,介紹下(1)FTU 開(kāi)啟無(wú)線通信。(2)FTU 在無(wú)線通信模式下進(jìn)行的各個(gè)任務(wù):遙測(cè)量采集、遙信量采集、遙控量輸出、實(shí)時(shí)時(shí)鐘區(qū),F(xiàn)TU 將采集到的各類數(shù)據(jù)和信息顯示至LCD 顯示屏上。下面簡(jiǎn)介FTU 開(kāi)啟無(wú)線通信的程序:
FTU 與手持式調(diào)試儀通過(guò)STM32F407 開(kāi)發(fā)板板載的NRF24L01 無(wú)線模塊建立無(wú)線連接。首先對(duì)無(wú)線通信進(jìn)行程序初始化,其次FTU 對(duì)無(wú)線模塊是否存在進(jìn)行檢測(cè),當(dāng)檢測(cè)到無(wú)線模塊后,F(xiàn)TU 則與配網(wǎng)主站成功建立無(wú)線連接,表明可以開(kāi)始進(jìn)行數(shù)據(jù)和信息的收發(fā);若無(wú)法檢測(cè)到無(wú)線模塊,LCD 顯示屏上會(huì)出現(xiàn)NRF24L01 Error 字符,同時(shí)表明FTU 與配網(wǎng)主站無(wú)線連接失敗,F(xiàn)TU 需復(fù)位后重新檢測(cè),直到無(wú)線連接成功。開(kāi)啟無(wú)線通信的部分代碼如下。
FTU 與配網(wǎng)主站成功無(wú)線連接后,F(xiàn)TU 裝置上的通信指示燈(紅燈)會(huì)亮起,表明無(wú)線通信成功。通信指示燈的部分代碼如下。
上述代碼表明通信指示燈的遙信量采集端口為PB6,且當(dāng)PB6 引腳為高電平的時(shí)候通信指示燈亮起。
本文設(shè)計(jì)了一個(gè)具有雙通信模式的FTU 裝置,該裝置能夠配合手持式配電終端調(diào)試儀,實(shí)現(xiàn)數(shù)據(jù)采集、計(jì)算及存儲(chǔ)(遙測(cè)、遙信)、遠(yuǎn)方控制(遙控)、事件順序記錄SOE 等SCADA 系統(tǒng)的基本功能。軟件部分采用Keil 平臺(tái)開(kāi)發(fā)設(shè)計(jì),硬件部分采用STM32F407 開(kāi)發(fā)平臺(tái)。通過(guò)軟硬件相結(jié)合連接測(cè)試,采用嵌入式ARM 芯片控制(包括顯示部分、電源部分、無(wú)線通信部分),并能按通信規(guī)約如IEC60870-5-104 規(guī)約實(shí)現(xiàn)通信,實(shí)現(xiàn)FTU作為配電開(kāi)關(guān)監(jiān)控終端的遙信、遙測(cè)、遙控以及對(duì)時(shí)等其他調(diào)試功能,對(duì)智能電網(wǎng)信息工程的研究具有實(shí)際意義。