美國東部時間2003年8月14日16時11分,其東北部和加拿大聯合電網發生大面積停電事故。負荷損失總計6180萬千瓦,停電范圍為9300多平方英里,受影響的居民約5000萬人。 這次事件造成了巨大的經濟損失和社會影響,引起了世界各國的普遍關注。相關報告表明電網二次系統的配置及其協調存在明顯缺陷,功能不完善是這次事故爆發的主要原因之一。眾所周知,繼電保護裝置是電網二次系統重點建設的項目,為此開發了利用GPS定時模塊來縮小繼電保護檢測裝置在異地雙端試驗和雙端故障定位等方面的時間誤差,取得了預期目標。 硬件系統 該系統分為上位機和下位機兩大部分,M12作為定時模塊接入,其基本的框圖如圖1所示。 上位機是具有一定配置的PC機,AT89C58作為下位機主控CPU與上位機相連接,完成控制數據與信號數據的交互。與AT89C58相連的可以劃分為五個模塊,它們分別是:DDS(直接頻率合成)模塊,采用AD9852來實現;電流電壓輸出模塊,采用TMS320VC5402定點DSP來實現;同步定時模塊,采用M12 GPS接收器來實現;開入動作變化量檢測模塊,采用AT89C2051來實現;開出動作變化量計時模塊,采用8255定時器來實現。 本文主要介紹作為同步定時模塊的M12是如何與主控設備完成軟硬件連接,并且協調工作的。此處硬件的連接是通過標準異步串口來完成的,需要指出的是,M12的標準異步串行接口采用的是3V邏輯電平,而主控設備輸出的邏輯電平卻是5V,因此采用MAXIM公司生產的MAX3370作為邏輯電平轉換模塊,起到銜接的作用;主控設備與M12之間采用模擬串行通信。硬件連接簡單,主要功能由軟件來實現。M12的初始化編程以及定時數據的采集、比較、反饋的詳細過程見軟件實現。 模塊特點 M12接入系統如圖2所示。 該系統使用Motorola 公司生產的M21 GPS接收器作為定時源。M12接收器的并行通道已經擴展到12個,提供碼跟蹤和載波輔助跟蹤,可同時跟蹤12顆衛星,可串行輸出緯度、經度、高度、速度、航向和時間信息。M12接收器的核心硬件MRFIC1504是基于MMC2003的32位RISC控制器。M12接收器提供2.75~3.2V的電壓,支持逆向差分,可以通過設置差分基站的方法來改良定位效果。支持RTCM SC-104(美國海用無線電技術委員會)格式的差分功能,NAEA 0183(美國國家海洋電子學會)格式輸出,雙通信串口,用戶可控制的速度濾波器和一個天線檢測回路。用戶還可以選擇使用垂直于電路板或者是平行于電路板的數據/電源連接器。基本的控制流程如圖3所示。 在主控設備與M12通信過程中,建議采用其特有的Motorola二進制數據與指令格式,通信速率可以保證在9600bps(取決于M12),而采用NMEA-0183格式時,通信速率只有4800bps,同時在初始化GPS時還需要加入由Motorola二進制轉化為NMEA-0183的指令,相比之下較為繁瑣,而Motorola二進制是默認通信模式。 在此設計當中,關鍵的環節在于兩個方面,一是M12的初始化,二是主控設備與M12之間采用的模擬串口通信是否可靠。對于M12初始化而言,重點在于理解Motorola二進制數據格式的結構,其次是設置初始化時間。實時時鐘是M12的特征之一,它用于縮小TTFF(捕獲時間),在主電源被切斷而后備電源工作時,數據和時間信息將被存儲在RTC寄存器中。因此存在初始化在GPS鎖定第一顆衛星之前,或是讓讓衛星自動搜索兩種初始化時間信息的方式。實踐證明,第一種方案得到的TTFF較小,所以建議采用。GPS默認提供的是GMT(格林威治時間),因此用戶需要根據當地的情況設置時區的偏移量(中國為東8區,+8)。具備以上知識后,就可以從數據包中提取時間信息。此處選用短位置消息。 @@Hbmdyyhmsffffaaaaoooohhhhmmmm VVvvhhddntssrrvvvvvvC 下面僅僅分析它有關定時信息的部分。 實例如下。 @@Hb021C07D4092D280001121A000000000000 00000000000000000000000000000000000000016088 0000503035463039 轉化成16進制的數是021C07D4092D280001,對應的時間是2.28.2004.9:45:40:0001。 對于模擬串口而言,首先應當明確采用哪一種執行方式。其次,就是選定通信波特率。最后就是確定具體的硬件結構。這里采用起始位為1bit,終止位為1bit,無奇偶校驗位,波特率為9600,晶振頻率為11.0592MHz。處理流程如圖4所示。 MRXD代表一個1比特的位地址,它用于檢測串口通信起始位,終止位的有效性;MTXD代表一個1比特的位地址,它用于發送串口通信所需的起始位,終止位;CONT代表一個計數器,用于控制所發比特的個數。 源代碼。 PCON EQU 87H HEAD EQU 20H INT_OK BIT 08H ORG 0000H LJMP START ORG 0023h LJMP RECIEVE ORG 0100H START: MOV PSW,#00H MOV SP,#70H MOV TMOD,#20H MOV TH1,#0FAH MOV TL1,#0FAH MOV PCON.#80H SETB EA SETB TR1 SETB ES SETB P1.0 CLR INT_OK MOV SCON,#70H MOV DPTR,#TAB1 MOV R7,#11H SEND1: CLR A MOVC A,@A+DPTR MOV SBUF,A SWAIT1: ;發送@@Gb數據幀,初始化時間偏移 JNB TI,SWAIT1 CLR TI INC DPTR DJNZ R7,SEND1 MOV DPTR,#TAB2 MOV R7,#08H SEND2: CLR A MOVC A ,@A+DPTR MOV SBUF,A SWAIT2: ;發送@@Hb數據幀,啟動GPS JNB TI,SWAIT2 CLR TI INC DPTR DJNZ R7,SEND2 MOV R5,#00H STOP_HERE: ;檢測接收到的數據幀是否有效 JNB INT_OK,STOP_HERE MOV DPTR,#TAB3 MOV RO,#65H MOV R7,#03H TIME_1: ;與規定的時間相比較,相等時置中斷標志位 CLR A ;不相等時重新接收 MOVC A ,@A+DPTR MOV @RO,A INC RO INC DPTR DJNZ R7,TIME_1 MOV RO,#36H MOV R1,#65H MOV R7,#03H ACALL CMP CJNE A ,#00H,WAIT CPL P1.0 WAIT: CLR INT_OK AJMP STOP_HERE RECIEVE: ;接收程序,完成接收,校驗,置中斷標志位的功能 PUSH PSW PUSH ACC CLR ES CLR RI MOV PSW,#08H MOV A,SBUF CJNE A ,#40H,STOP RR1: JNB RI,RR1 CLR RI MOV A ,SBUF CJNE A ,#40H,STOP;前兩個字節若為@@繼續, 否則,跳出 MOV RO,#30H MOV R7,#34H RR2: JNB RI,RR2 CLR RI MOV A ,SBUF MOV @RO,A INC RO DJNZ R7,RR2 MOV RO,#30H MOV R7,#30H ACALL TEST MOV A,@RO CJNE A ,20H,STOP SETB INT_OK;置中斷標志位 STOP: POP ACC POP PSW SETB ES RETI TEST: MOV A,@RO MOV 20H,A INC RO TT1: MOV A,@RO XRL 20H,A INC RO DJNZ R7,TT1 RET CMP: MOV A ,@RO MOV B,A MOV A,@R1 CJNE A ,B,CMP1 INC R0 INC R1 DJNZ R7,CMP MOV A,#00H LJMP CMP3 CMP1: JC CMP2 MOV A,#OFFH LJMP CMP3 CMP2: MOV A,#01H CMP3: RET TAB1: DB 40H,40H,47H,62H,01H,01H,07H,0D4H,0CH,00H,00H,00H,08H, 00H,0D9H,0DH.0AH TAB2: DB 40H,40H,48H,62H,01H,2BH.0DH,0AH TAB3: DB 0BH,10H,01H END 總結 本文主要介紹了如何使用Motorola公司生產的M12 GPS接收器來完成繼電保護檢測裝置的異地雙端同步試驗,該模塊大大提高了繼電保護測試水平和工作效率,并且有效減少了人為誤差,防止了繼電保護及其安全自動裝置的不正確動作。 |