


摘要:電力采集系統的終端產品在現場使用過程中會出現很多無法避免的問題,或者客戶會提出新的需求,這些均需要從軟件方面進行維護。以電力采集終端中的集中器為例,開發過程中SP4、SP5兩個平臺軟件不能通用,后期維護工作非常巨大。現通過硬件識別,對目前集中器使用芯片引腳進行分析,并通過調整軟件結構,實現軟件通用的目的。
關鍵詞:電力采集終端;硬件識別;軟件通用
0? ? 引言
在實際開發過程中,因電力采集終端的SP4、SP5平臺硬件存在差異,因此需先對其硬件接口進行分析,梳理出不同平臺硬件接口的差異點和不同點,在此基礎上調整軟件平臺,初始化加入平臺識別,調用不同的配置以達到軟件通用的目的。
1? ? 硬件分析
1.1? ? 基本原理
根據RM0090(Reference manual),在STM32的GPIO輸入模式下,空腳懸空狀態下讀取輸入寄存器,可得到“不確定、1、0”三種結果。在輸出模式下,空腳配置在推挽(push-pull)模式,輸出等于輸入。故利用空腳特性和非空引腳固有狀態作為軟件識別點。
1.2? ? 引腳分析
利用兩個平臺引腳配置的差異,軟件在程序啟動時進行有效識別,從而得到平臺區分,并以此為基礎調整軟件設計,最終達到軟件通用的目的。SP4、SP5引腳差異如表1所示。
2? ? 識別點驗證
2.1? ? A識別點
條件:引腳5(PE6)、引腳142(PE1)、引腳141(PE0),SP4均懸空,SP5作為第二路485功能。
方法:通過對485芯片RE/DE引腳的控制,使RD處于高阻態,讀取USART2_RX對應GPIO的狀態值,讀取USART2_TX對應GPIO的狀態值。
過程:RE輸出低電平,輸入下拉讀RX引腳,輸入上拉讀RX引腳,輸入下拉讀TX引腳,輸入上拉讀TX引腳。在PE6輸出低電平前置條件下,輸出結果如表2所示。
由表2可知,SP5最后統計結果為1111,SP4結果為0101。
2.2? ? C識別點
條件:引腳40(PA4)、引腳56(PG0),SP4均懸空,SP5作為esam電源控制和片選引腳。
方法:SP5在esam電源打開和關閉情況下,讀取片選引腳狀態值。
過程:打開esam電源,輸入下拉模式讀取CS引腳,輸入上拉模式讀取CS引腳,關閉esam電源,輸入下拉模式讀取CS引腳,輸入上拉模式讀取CS引腳。以PA4輸出高電平為前置條件,打開esam電源,輸出結果如表3所示。
由表3可知,SP5平臺硬件引腳輸出結果為1100,SP4結果為0101。
2.3? ? 軟件防抖
打開關閉esam電源,需要等待電平穩定,對應軟件延時。電源曲線如圖1所示。
延時函數使時間計算:MCU主頻f=220 MHz;一個機器周期為 s。執行120 000次,耗時為t=(d×5×1 000)=5 ms。
3? ? 軟件結構調整
(1)初始化加入平臺識別:提供全局接口,定義枚舉SP4/SP5/SPX,通過調用bspClkIsSPX()得到平臺識別結果;
(2)SP4和SP5的BSP合并,定義新的BSP類型:DJZQ_X_0_1;
(3)引腳功能差異、存儲差異處理:引腳配置差異,定義兩套配置,通過識別結果,在初始化時調用不同的配置。EEPROM均衡同時適用于FRAM。
4? ? 結語
本文以集中器為例,對SP4和SP5平臺硬件引腳接口進行分析,依據RM0090,兩個平臺硬件MCU引腳配置存在差異,利用空腳特性和非空引腳固有狀態作為軟件識別點,從而得到平臺區分,通過初始化識別平臺及BSP合并實現軟件優化調整,達到軟件平臺通用的目的。另外,其他電力采集終端如配變、專變終端等SP4和SP5平臺,也可借鑒此方案。電力采集終端產品迭代非常頻繁,后續SP6平臺設計,可提供單獨的引腳配置,方便軟件直接識別,對象包括集中器、配變、終端以及open方案系列產品。
[參考文獻]
[1] 黃曉晴,王緯國,梁岳,等.自動測試系統軟件技術通用性研究綜述[J].測控技術,2013,32(10):1-4.
[2] 耿誼靜.軟件接口自動化測試技術研究[J].數碼世界,2019(2):56.
收稿日期:2020-03-23
作者簡介:王亞超(1993-),男,山東菏澤人,助理工程師,研究方向:無線通信。