基于ATmega128的32路遙信單元的設計及應用
The design and Application under the RTU ATmega128 with 32 DI
楊玉龍1 李海全2 周 中2
(1. 吉林油田勘測設計院,吉林 松原 100724)
(2. 江蘇安科瑞電器制造有限公司,江蘇 江陰 214405)
摘要:
介紹一款基于8位單片機ATmega128為主控芯片,具有監測32路開關量信號輸入的ARTU-K32型遙信單元設計原理,以及該產品主要技術指標與應用案例。
關鍵字:ATmega128芯片;遙信單元;ARTU-K32 型
0引言
在電力及工業自動化控制系統中,存在著大量如斷路器的分合、電機的啟停,電磁閥的開閉等執行機構狀態需要檢測并把狀態反饋回控制單元,從而構成閉環控制。在以往的系統設計中常使用多個PLC或帶有通訊和開關量輸入功能的現場儀表組成一個遠程自動控制系統,但PLC高昂的成本和繁瑣的系統結構給自動化設計、應用帶來困擾。
本文介紹一款具有32路遙信接點輸入的ARTU-K32,該裝置可接受32路有源或無源接點,把開關量信號經通訊實現和上位機監控系統的數據交換,32個通道掃描一周僅需時間為1ms,同時擁有2000組輸入狀態事件記錄,帶GPS校時功能,在外部電源掉電后可以保證SOE事件記錄一個月內不丟失,相對以往控制方式,本設計在簡化控制網絡結構的同時,提供了一種低成本,高可靠性的替代方案。
1 電路設計原理
ARTU-K32遙信單元硬件電路包括主CPU芯片、撥碼開關設定輸入、實時時鐘、雙路RS485通訊、SOE事件記錄存儲、看門狗控制、光電隔離輸入采集、供電電源模塊等8部分組成。(見圖1)
1.1 主控CPU
32路開關量信號采集單元(ARTU-K32)設計采用ATMEL公司的ATmega128,單芯片實現雙路RS485通訊、數據處理、事件記錄存取,顯示狀態控制等。ATmega128是ATMEL公司推出的一款8位RISC結構高速低功耗單片機,在16M時鐘頻率時系統性能可達16MIPS,內帶128k的Flash、4k的EEPROM、4k系統SRAM;可擴展64k外部存儲器;兩路UART通訊口。同時該芯片擁有JTAG在線編程口,方便用戶調試,降低了開發成本,53個可編程I/O口可以掛接足夠多的外圍設備。
1.2 撥碼開關設定輸入
撥碼開關提供用戶一個簡化的人機接口,用于設定RS485通訊中的地址、波特率、數據格式等設定功能,撥碼開關(SW1)的10位數據口都接10k電阻上拉到Vcc,電路使用一個74HC244(IC5)數據緩沖器,把撥碼開關的狀態傳送到8位數據總線,剩余兩根數據線則直接接到CPU的I/O端口。(見圖2)

1.3 實時時鐘
實時時鐘芯片RX-8025A(IC4)提供給系統SOE事件的時間記錄點,該芯片擁有400kHz 串行IIC總線接口,其內置的32.768 kHz 石英振蕩器,提供寬溫、高穩定性的實時時間數據。
1.4 通訊方式
通訊方式采用雙路RS485方式,調試及設定和上位機通訊部分在物理上分成兩路,互不干擾,有效防止可能存在的誤操作。(見圖3)
1.5 SOE事件記錄存儲
SOE事件記錄存儲器使用32k低功耗SRAM(IC3)IC61C256AH和后備電源形成一個斷電不丟失的數據存儲單元,使用數據鎖存器74HC373(IC2)和CPU的PC端口組成15位數據地址對IC3進行數據存儲操作。(見圖4)

1.6看門狗控制
掉電自動保存部分使用MAX691CWE(IC8)作為電源管理,在系統有輔助供電的情況下保證IC3由主電源Vcc供電,當主電源掉電時則自動切換到后備電池供電方式。同時此芯片還兼有看門狗功能,在系統死機的極端情況下及時復位CPU,使系統快速恢復至受控狀態。(見圖5)

1.7 光電隔離的輸入信號狀態采集
外部開關信號采集使用光耦(IC1,IC2只畫出其中四路)作電器隔離,光耦輸出端使用一個數據緩沖器74HC244(IC9)對光耦輸出信號進行緩沖后傳送到CPU的數據總線供CPU讀取。(6)
1.8 電源部分
電源模塊采用PI公司的開關電源芯片,輸入范圍為AC/DC 80-270V,電源共有3路輸出,分別給CPU,12V電源輸出、通訊等部分電路提供電源。
2 軟件設計
3 產品結構特點
ARTU-K32采用DIN35mm導軌安裝。前端帶通信指示和信號運行通道指示2組指示燈,通信有兩路RS485接口,(使用ModBus—RTU協議)一路用于通用參數的設置及調試,另一路用于和上位機通訊。產品頂端設有撥碼開關窗口,可通過撥碼開關設置產品通訊地址和波特率。產品符合JB/T10388-2002《帶總線通信功能的智能測控節點產品通用技術條件》、GB/T7261-2000《繼電器及裝置基本試驗方法》和GB/T13729-2002《遠動終端設備》標準。