《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 业界动态 > C8051F020和SPC3在现场总线分布式控制系统中的应用

C8051F020和SPC3在现场总线分布式控制系统中的应用

2008-07-15
作者:孙树文,杨建武

??? 摘 要:針對(duì)印刷機(jī)外圍設(shè)備" title="外圍設(shè)備">外圍設(shè)備多、分散廣、實(shí)時(shí)性和可靠性要求高等特點(diǎn),設(shè)計(jì)了一種基于C8051F020和SPC3的現(xiàn)場(chǎng)總線分布式控制系統(tǒng)" title="分布式控制系統(tǒng)">分布式控制系統(tǒng)。詳細(xì)介紹了該系統(tǒng)的總體結(jié)構(gòu)、I/O" title="I/O">I/O從站的硬件電路、軟件設(shè)計(jì)流程。給出了基于PROFIBUS現(xiàn)場(chǎng)總線的分布式控制系統(tǒng)網(wǎng)絡(luò)組態(tài)與調(diào)試的方法。
??? 關(guān)鍵詞: SPC3? PROFIBUS? 現(xiàn)場(chǎng)總線? 分布式控制系統(tǒng)

?

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

?


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

?


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

?


??? 在SPC3正常工作之前,微處理器需要對(duì)其進(jìn)行初始化以配置所需要的寄存器,SPC3的初始化流程包括:設(shè)置協(xié)議芯片的中斷允許、寫入從站識(shí)別號(hào)和地址、設(shè)置SPC3方式寄存器、設(shè)置診斷緩沖區(qū)、參數(shù)緩沖區(qū)、配置緩沖區(qū)、地址緩沖區(qū)、初始化長(zhǎng)度,并根據(jù)以上初始值得出各個(gè)緩沖區(qū)的指針和輔助緩沖區(qū)的指針。根據(jù)傳輸?shù)臄?shù)據(jù)長(zhǎng)度,確定輸出緩沖區(qū)、輸入緩沖區(qū)及指針。

2.3 I/O從站的軟件設(shè)計(jì)

??? I/O從站的主程序流程如圖4所示,包括:系統(tǒng)初始化、I/O控制程序和PROFIBUS-DP總線通信程序。初始化程序完成對(duì)C8051F020微處理器和SPC3協(xié)議芯片的初始化,PROFIBUS-DP通信程序?qū)崿F(xiàn)I/O從站與監(jiān)控主站間的通信。

?


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

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。

相關(guān)內(nèi)容