集中式智能電表的抗干擾設計
智能電表要求長年連續地掛網運行,如果不采取有效的抗干擾措施,當遭遇到較強的干擾信號時,其性能的可靠性與運行的**性均會降低,為此我們總結了以下抗干擾方面的措施。
硬件抗干擾設計
電量信號的采集和輸出部分采用光電耦合器,光電耦合器的一次側和二次側是電絕緣的,因此對地電位差干擾有很強的抑制能力,同時也具有很強的抑制電磁干擾的能力。電源在向系統提供電能的同時,也會把干擾噪聲直接由供電端加在控制電路上,而單片機的復位線、中斷線等控制線,*易受到這種外界噪聲的干擾,因此必須采取一定措施來加以抑制、消除這種干擾。具體方法為:加屏蔽罩、隔離變壓器、磁環和π形濾波電路等,但這些只能使干擾脈沖的數量和幅度有所減少,難以從根本上解決。所以,還必須使用象MAX691A之類的單片機專用電源監控芯片,以提高敏感器件的抗干擾能力。
軟件抗干擾設計
本系統采取的軟件抗干擾措施如下:
(1)對輸入信號采用電平檢測而非邊沿檢測,以減少各種隨機干擾脈沖的影響。
(2)對重要的狀態寄存單元備份,當系統狀態受干擾破壞后,能及時查詢備份寄存單元的信息,進行狀態糾正。
(3)電量數據存放之前,對其進行校驗,以保證數據的正確性。
(4)電量數據在6264和2465中都采取多址存放,互為備份,以確保萬無一失。
(5) 設置自檢程序,在某些內存單元設置狀態標志,在開機運行后,對其進行監測,保證信息存儲、傳輸、運算的高可靠性。
(6) 插入空操作指令:在比較條件轉移指令、**轉移指令、中斷、堆棧指令前,以及數據表格后,插入空指令,提高系統的穩定性。
(7) 當程序運行失常,發生諸如:程序“跑飛”、數據區和工作寄存器中的數據遭到破壞,采取措施如下:
(a) 設置監視跟蹤定時器
因本系統設計有CPU**監控電路,所以可通過使用MAX691A的定時中斷即看門狗(Watchdog)來監視程序的運行。只要程序正常運行,定時器就不會出現定時中斷。而當程序運行失常,因“跑飛”等原因不能對WDI進行及時刷新時,看門狗定時器就會引發崩潰復位。
(b) 設置軟件陷阱
在程序存儲器的空白處,填滿空操作指令和長轉移指令(LJMP ERR),來截獲跑飛的程序,*后通過軟件強制復位,使程序返回到初始狀態。在MCS-51單片機的軟件復位過程中,必須連續執行兩次中斷返回指令RETI才能確保**中斷標志,使系統恢復正常。出錯處理程序如下:
ERR:CLR EA ; 正確的軟件復位入口,關中斷
MOV 66H,#0AAH ; 重建上電標志
MOV 67H,#55H
MOV DPTR,#ERR1 ;準備**次返回地址
PUSH DPL
PUSH DPH
RETI ; ****中斷激活標志
ERR1: CLR A
PUSH ACC
PUSH ACC
RETI ; **低級中斷激活標志