??? 摘 要:針對印刷機外圍設備" title="外圍設備">外圍設備多、分散廣、實時性和可靠性要求高等特點,設計了一種基于C8051F020和SPC3的現場總線分布式控制系統" title="分布式控制系統">分布式控制系統。詳細介紹了該系統的總體結構、I/O" title="I/O">I/O從站的硬件電路、軟件設計流程。給出了基于PROFIBUS現場總線的分布式控制系統網絡組態與調試的方法。
??? 關鍵詞: SPC3? PROFIBUS? 現場總線? 分布式控制系統
?
??? PROFIBUS以其卓越的性能在全球得到了廣泛的應用,已成為現場總線的國際標準之一,并成為眾多國家的國家標準。目前PROFIBUS的標準包括:德國國家標準DIN19245、歐洲標準EN50170和中國國家標準B/T20540-2006。PROFIBUS作為一種不依賴于制造廠商的開放式現場總線標準,已廣泛應用于制造加工自動化、過程自動化和樓宇自動化等領域中。根據應用特點的不同,可以分為PROFIBUS-DP" title="PROFIBUS-DP">PROFIBUS-DP、PROFIBUS-FMS、PROFIBUS-PA三個兼容版本[1]。其中,PROFIBUS-DP是一種經過優化的高速且廉價的通信連接,專門為自動控制系統與設備分散的I/O之間的通信而設計,為工廠自動化提供了很好的解決方案。
??? 印刷設備中存在大量的外圍I/O信號,必須保證外圍設備與控制主機之間實時通信,才能使印刷機可靠運行,若采用傳統的PLC構成集散型控制系統(DCS),則存在系統不開放、硬件投資大、布線復雜、維修不便等缺點,具有明顯的局限性[2];若采用基于現場總線的分布式I/O系統,則基本局限于國外產品,如西門子公司的基于PROFIBUS分布式I/O系統、WAGO公司的基于CANbus、DeviceNET、PROFIBUS分布式I/O系統等,而且價格較高。因此,本文設計了基于C8051F020微控制器和SPC3協議芯片的PROFIBUS-DP智能從站" title="智能從站">智能從站,將其應用于印刷設備的現場總線分布式控制系統中。
1 分布式控制系統的構成
??? 分布式控制系統由內置主站通信適配卡的監控計算機和智能I/O從站構成,并由PROFIBUS專用電纜連接成分布式總線網絡,其結構如圖1所示。分布在現場的I/O從站連接印刷機的外圍設備,通過PROFIBUS總線通信接口與總線網絡相連;監控計算機運行監控軟件,通過PROFIBUS主站適配卡和連接在總線網絡上的各個智能從站之間進行實時通信,從而實現整個印刷機組的分布式控制和集中監管[2]。
?

??? 監控計算機可以選用普通計算機(PC)或工控機(IPC);軟PLC可以選用德國3S公司的CoDeSys或西門子公司的WINAC 。總線適配卡用來完成現場總線和監控計算機之間的協議轉換。各個控制節點之間通過專用屏蔽電纜互聯構成PROFIBUS總線網絡,總線兩端連接PROFIBUS總線終端器,用來提高系統的穩定性、增強系統的抗干擾能力。
2 I/O從站的設計
??? 控制系統的I/O智能從站采用功能模塊化設計,從站由C8051F020微處理器和封裝了PROFIBUS-DP協議的芯片SPC3構成其核心部分。此外還有數字量輸入/輸出口、PROFIBUS總線驅動器、擴展模塊接口、光電隔離電路及電源模塊等部分組成,其構成框圖如圖2所示。
?

??? 智能從站由24V直流電源供電,而從站中的芯片都采用5V的電源,所以選用DC/DC電源模塊將24V轉換成5V。總線驅動器(RS-485)及光電隔離電路是SPC3與PROFIBUS-DP總線之間的接口,對通信信號進行光電隔離,用以消除來自總線的干擾。采用雙路電源供電,進行了完全的輸入/輸出通道上的電氣隔離。電氣隔離采用ADUM1301芯片,該芯片采用AD公司最新的iCoupler隔離技術,與傳統的光耦器件相比優勢明顯:完全可滿足工業現場寬范圍的溫度(-40℃~+105℃)要求;低功耗;傳輸速率最高可達90Mbps;所需的外圍元件少;從站地址開關可用手動設置從站地址。
2.1 微處理器芯片C8051F020
??? 本設計采用的微處理器是美國Cygnal公司推出的工業級微處理器[3] C8051F020。它內含CIP-51的CPU內核,其指令系統與MCS-51完全相同,具有64kB片內Flash程序存儲器、4352B的RAM、128B的非易失性存儲器。C8051F020的片上資源豐富,包括:8組I/O端口、5個16位通用定時/計數器、多個中斷源、A/D和D/A轉換器、增強型UART、片內振蕩器及時序電路等。C8051F020內的存儲器支持JTAG調試功能,其優點是在系統編程時不需要移出微處理器,只需要通過JTAG接口結合上位機軟件就可以實現PC機對MCU的重復編程,而且硬件電路連接簡單。這樣,程序調試方便,縮短了設計開發周期,提高了系統的可靠性和穩定性。
2.2? 協議芯片SPC3
??? SPC3[4](Siemens PROFIBUS Controller)是西門子公司設計的一款ASIC芯片,專門用于PROFIBUS從站或從設備的開發,可以和多種單片機(51系列、80C32、80C165、 HC916)配合使用,能滿足PROFIBUS-DP的高速數據傳輸要求。SPC3內部集成了PROFIBUS-DP從站通信協議,最大傳輸速率可達12Mbps,可以自動檢測總線上傳輸速率,內部有1.5KB的RAM、方式寄存器、狀態寄存器、中斷寄存器及各種緩沖器指針和緩沖區等,其內部結構如圖3所示。此外,SPC3從初始化到正常工作,都由芯片內部集成的狀態機來控制,不需要過多人為的干預。只要按正確方法對SPC3中的寄存器和數據區進行初始化后,對其雙口RAM進行數據的讀寫操作即可完成從站與主站間的通信。
?

??? 在SPC3正常工作之前,微處理器需要對其進行初始化以配置所需要的寄存器,SPC3的初始化流程包括:設置協議芯片的中斷允許、寫入從站識別號和地址、設置SPC3方式寄存器、設置診斷緩沖區、參數緩沖區、配置緩沖區、地址緩沖區、初始化長度,并根據以上初始值得出各個緩沖區的指針和輔助緩沖區的指針。根據傳輸的數據長度,確定輸出緩沖區、輸入緩沖區及指針。
2.3 I/O從站的軟件設計
??? I/O從站的主程序流程如圖4所示,包括:系統初始化、I/O控制程序和PROFIBUS-DP總線通信程序。初始化程序完成對C8051F020微處理器和SPC3協議芯片的初始化,PROFIBUS-DP通信程序實現I/O從站與監控主站間的通信。
?

??? 由于SPC3內部集成了完整的PROFIBUS-DP協議,因此用戶不用參與處理PROFIBUS狀態機制,SPC3可以自主實現從站狀態機的轉換, 同主站進行通信。主站可以讀取SPC3輸入緩沖區的數據或向輸出緩沖區寫入要輸出的數據。只有當SPC3進入了數據交換狀態時,對其輸入輸出緩沖區的讀寫才有意義。SPC3處于數據交換狀態時,除了同主站進行輸入輸出數據交換外,還可以接收新的參數化報文、組態報文、從站地址設置報文以及全局控制命令報文等,這些報文的到來都可以觸發一個公用的中斷,當中斷到來時應用程序通過讀取SPC3的中斷寄存器來判斷觸發中斷的原因并進行相應的中斷處理。
3 分布式控制系統的調試
??? 分布式控制系統調試之前必須連接好總線網絡,并在計算機上進行網絡組態。通常的網絡組態方法有三種:(1)基于組態軟件+主站通信卡構成PROFIBUS-DP二類主站網絡結構。(2)由具有PROFIBUS-DP接口的硬件PLC構成PROFIBUS-DP一類主站結構。(3)基于PC+軟PLC構成PROFIBUS-DP一類主站結構。本文調試采用的是最后一種方式(其總線系統網絡結構見圖1)。
??? 監控計算機運行德國西門子公司的WINAC軟PLC軟件,并作為PROFIBUS總線網絡的主站(相當于一臺高性能可編程控制器)。分布式控制系統正常工作前還要進行PROFIBUS–DP總線網絡的硬件組態,硬件組態通過SIMATIC-NET V6.2軟件包完成,其過程包括:(1)通過Configur-Station加載CP5613通信卡建立網絡的主站。(2)加載從站設備的GSD文件。(3)設置PROFIBUS總線相關參數(如通信波特率、從站ID號等)。(4)通過HW-Configuration組態整個PROFIBUS-DP總線網絡。組態好的信息下載到主站中即可。通過PROFIBUS專用電纜連接CP5613通信卡與自行設計開發的I/O從站,構成基于軟PLC和PROFIBUS現場總線的分布式I/O控制系統。在監控計算機上用SETP7軟件編寫相應的PLC調試程序,進行控制系統測試實驗。
?? ?本文設計的基于C8051F020和SPC3的現場總線分布式控制系統已經過調試,實現了監控主站與智能從站之間的正常通信,并與其他公司的產品進行了兼容性實驗,運行良好,可靠性高。通過編寫PLC的測試程序,檢查了整體方案的可行性;驗證了整個系統信息傳遞及控制的可靠性、準確性和實時性。所設計的PROFIBUS總線分布式控制系統可以很好地滿足印刷機組外圍設備的控制要求。開發過程中所提出的技術方案和實現方法可以在類似的分布式控制系統中推廣應用。
參考文獻
[1]? ?陽憲惠. 現場總線技術及其應用[M].北京:清華大學出版社,1999.
[2]? ?孫樹文,張慧慧,楊建武,等.CAN總線在潛水電機分布式監控系統中的應用[J],計算機測量與控制,2006,(11).
[3]? ?潘琢金,施國君.C8051FXXX高速SOC單片機及運用[M]. 北京:航空航天大學出版社,2002.
[4]? ?SIEMENS.DPC31 HARDWARE DESCRIPTION[Z].2002.
