基于CAN總線的模塊化冗余PLC結(jié)構(gòu)設(shè)計(jì)
賈 甜
(長江大學(xué),湖北 荊州 434023)
0 引 言
冗余可編程工業(yè)控制器是一種新型的可編程工業(yè)控制器,在通用性,可靠性等方面比傳統(tǒng)可編程工業(yè)控制器更有優(yōu)勢。在總結(jié)可編程工業(yè)控制器的基本結(jié)構(gòu),工作原理基礎(chǔ)上, 提出了一種基于ATMEL 公司的 ARM9 微控制器AT91SAM9M10-G45 的可編程工業(yè)控制器的設(shè)計(jì)方案。
1 CAN總線的發(fā)展及前景
CAN 總線是德國 BOSCH 公司為解決汽車中眾多的控制與測試儀器之間的數(shù)據(jù)交換而開發(fā)的串行數(shù)據(jù)通信協(xié)議。在多年的應(yīng)用過程中,CAN 以它卓越的特性、極高的可靠性在工業(yè)過程監(jiān)控設(shè)備的互連方面得到廣泛的應(yīng)用。本測控系統(tǒng)采用 CAN 總線作為分布式控制系統(tǒng)的網(wǎng)絡(luò)通信部分,正是利用了CAN 總線的實(shí)時(shí)性和可靠性的特點(diǎn)。CAN 總線是一種串行通信總線,傳輸介質(zhì)可以為雙絞線、同軸電纜和光纖。通信速率最高達(dá)到 1 Mb/s,可掛接設(shè)備最多可達(dá) 110 個(gè),支持點(diǎn)對點(diǎn)、一點(diǎn)對多點(diǎn)和全局廣播的傳輸方式。
2 模塊化PLC結(jié)構(gòu)
模塊化結(jié)構(gòu)的可編程工業(yè)控制器將CPU 模塊、存儲(chǔ)模塊、I/O 模塊、電源模塊、通訊模塊的工作單元分別模塊化。各個(gè)模塊插在卡槽上用螺絲固定,各個(gè)模塊之間用通信電纜連通, 通過總線進(jìn)行通信。模塊化結(jié)構(gòu)的可編程工業(yè)控制器配置比較靈活,需要哪些模塊就配置哪些模塊,目前大中型PLC 都已經(jīng)采用了這種結(jié)構(gòu)。模塊化的可編程工業(yè)控制器的結(jié)構(gòu)框圖如圖 1 所示:
圖1 系統(tǒng)總體框架
3 冗余 PLC測控系統(tǒng)架構(gòu)
硬件冗余的可編程工業(yè)控制器是通過系統(tǒng)硬件實(shí)現(xiàn)冗余所需的數(shù)據(jù)同步以及主備設(shè)備的切換。系統(tǒng)由主/ 備兩套PLC 系統(tǒng)組成。在系統(tǒng)啟動(dòng)階段,主 / 備兩個(gè) CPU 模塊、通信接口A 和B、主 / 備I/O 模塊、主 / 備總線等冗余設(shè)備由手動(dòng)設(shè)備其中的一個(gè)為主設(shè)備,另一個(gè)設(shè)備為備用設(shè)備。I/O 模塊與現(xiàn)場的儀表通過FAT 模塊進(jìn)行數(shù)據(jù)通信。雙PLC 冗余測控系統(tǒng)架構(gòu)如圖 2 所示:
圖 2 雙 PLC 冗余測控系統(tǒng)架構(gòu)
4 模塊化冗余 PLC的架構(gòu)
針對上述PLC 整機(jī)冗余技術(shù)的特點(diǎn),我們提出基于雙CAN 總線模塊化冗余PLC 設(shè)計(jì),系統(tǒng)架構(gòu)如圖 3 所示。
圖3雙CAN總線模塊化冗余PLC結(jié)構(gòu)
整套冗余系統(tǒng)啟動(dòng)后,CPU 模塊首先進(jìn)行冗余功能軟件初始化。主 / 備 CPU 相互發(fā)出握手信號后,反饋給冗余模塊, 主CPU 處于工作狀態(tài),備用CPU 處于熱備狀態(tài)。主CPU 將工作中的通信數(shù)據(jù)實(shí)時(shí)的備份給備用CPU。同時(shí)備用CPU 不斷檢測主CPU 的工作狀態(tài),一旦主CPU 發(fā)生故障,主CPU 就會(huì)發(fā)出一個(gè)錯(cuò)誤的握手信號給備用CPU,備用CPU 立即激活,備用CPU 再瞬間無擾切換的主動(dòng)狀態(tài)接替主CPU 的繼續(xù)工作,同時(shí)發(fā)出一個(gè)備用CPU 啟動(dòng)的信號給上位機(jī),通知設(shè)備維護(hù)人員對先前的主 CPU 進(jìn)線維護(hù)。主 CPU 執(zhí)行讀取輸入數(shù)據(jù)、輸出數(shù)據(jù)、拷貝冗余數(shù)據(jù)、分析狀態(tài)等操作 ;備用CPU 接受主CPU 熱備的冗余數(shù)據(jù),只有當(dāng)接替主CPU 的工作時(shí)才會(huì)擁有主CPU 的一切功能。
4.1CPU模塊結(jié)構(gòu)設(shè)計(jì)
CPU模塊是可以編程工業(yè)控制器的核心。CPU處理器主要完成數(shù)據(jù)處理、運(yùn)算與外設(shè)施通訊等功能。AT91SAM9M10-G45芯片內(nèi)部資源比較豐富,外圍擴(kuò)展接口也比較豐富。在本文所設(shè)計(jì)的可編程工業(yè)控制器中主要是利用該芯片擴(kuò)展外部存儲(chǔ)器、靜態(tài)存儲(chǔ)器、E2PROM、DDR2 SDRAM、電源控制單元、串行外設(shè)接口(SPI)、I/O 控制器、定時(shí)器、以太網(wǎng)接口、USB 接口、UART 接口等。CPU 模塊硬件結(jié)構(gòu)如圖 4 所示。
圖 4 CPU 模塊硬件結(jié)構(gòu)
4.2 雙CAN 總線I/O 模塊結(jié)構(gòu)
I/O 模塊采用基于Microchip 的dsPIC30F6014 單片機(jī)開發(fā)設(shè)計(jì)。該單片機(jī)采用精簡指令集(RISC),哈佛總線結(jié)構(gòu),流水線取指令方式,具有實(shí)用、低價(jià)、低功耗、功能和抗干擾能力強(qiáng)等優(yōu)點(diǎn)。它內(nèi)含12 位A/D 轉(zhuǎn)換器(200 kS/s)、內(nèi)部 E2PROM存儲(chǔ)器、比較輸出、I2C 和SPI 接口、異步串行通信(USART) 接口等,具有強(qiáng)大的數(shù)字信號處理能力。模塊如圖 5 所示。
圖 5 I/O 模塊結(jié)構(gòu)圖
5 結(jié)語
本文在內(nèi)核CPU硬件設(shè)計(jì)中核心處理器主芯片選用的是Atmel公司的AT91SAM9M10-G45的ARM9芯片,外部擴(kuò)展了一片 256 MB 的 NandFlash 存儲(chǔ)器和 4 片 64 MB 的 DDR2 SDRAM 存儲(chǔ)器,本文研制的可編程工業(yè)控制器已經(jīng)基本達(dá)到了預(yù)期的效果,運(yùn)行結(jié)果表明該可編程工業(yè)控制器在技術(shù)上有一定的可靠性。
參考文獻(xiàn)
[1]劉沖,付江梅. 雙重冗余PLC 控制系統(tǒng)的可靠性與可用性研究[J].
自動(dòng)化與儀表,2010,31(9):44-46,53
[2]王黎明,夏立,邵英,等 . CAN 現(xiàn)場總線系統(tǒng)的設(shè)計(jì)與應(yīng)用[M].
北京 :電子工業(yè)出版社,2008.
[3]廖常初.S7-300PLC 應(yīng)用技術(shù)[M]. 北京 :機(jī)械工業(yè)出版社,2008.
[4]黃中平.關(guān)于提高 PLC 程序可靠性的探討 [J].裝備制造技術(shù), 2006(3):73-75.
[5]陸沉,郁梅.?dāng)?shù)據(jù)安全及雙機(jī)容錯(cuò)解決方案 [J].計(jì)算機(jī)研究應(yīng)用, 2000(2):51-62.