《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 业界动态 > PROFIBUS-DP现场总线通讯接口的开发

PROFIBUS-DP现场总线通讯接口的开发

2008-12-25
作者:刘 强 甘永梅 王兆安

  摘? 要:從開發(fā)的角度討論了利用西門子公司的Development Kit 4開發(fā)包" title="開發(fā)包">開發(fā)包實(shí)現(xiàn)PROFIBUS-DP" title="PROFIBUS-DP">PROFIBUS-DP現(xiàn)場總線通訊接口" title="通訊接口">通訊接口硬件和軟件的方法,并介紹了PROFIBUS-DP開發(fā)包中的一些重要組件和DPS2的使用。

  關(guān)鍵詞: PROFIBUS-DP? IM183-1? SPC3? DPS2? 接口

?

  現(xiàn)場總線技術(shù)是實(shí)現(xiàn)現(xiàn)場級(jí)設(shè)備數(shù)字化的工業(yè)現(xiàn)場層網(wǎng)絡(luò)通信技術(shù),它具有較強(qiáng)的現(xiàn)場信息集成能力,組成的系統(tǒng)可靠性高、可維護(hù)性好,而且總線協(xié)議是開放的。在現(xiàn)有的各種現(xiàn)場總線標(biāo)準(zhǔn)中,PROFIBUS現(xiàn)場總線是一種很流行的現(xiàn)場總線標(biāo)準(zhǔn),占有很大的市場份額,而且在逐年地增加。鑒于這種情況,如何為一個(gè)設(shè)備開發(fā)一個(gè)PROFIBUS的通訊接口,使設(shè)備能接到PROFIBUS現(xiàn)場總線的網(wǎng)絡(luò)中就顯得尤為重要,而且近年來國內(nèi)關(guān)于這方面的系統(tǒng)介紹很少。

1 PROFIBUS現(xiàn)場總線

  PROFIBUS 是一種開放式現(xiàn)場總線系統(tǒng),應(yīng)用領(lǐng)域包括工業(yè)、加工制造、過程控制和樓宇自動(dòng)化等各個(gè)領(lǐng)域。PROFIBUS是國際化的現(xiàn)場總線標(biāo)準(zhǔn),即EN50170歐洲現(xiàn)場總線標(biāo)準(zhǔn)。該標(biāo)準(zhǔn)保證了PROFIBUS不依賴于個(gè)別廠商的開放性。

  PROFIBUS由3部分組成:PROFIBUS-FMS、PROFIBUS-DP、ROFIBUS-PA,F(xiàn)MS主要用于車間級(jí)控制網(wǎng)絡(luò),是一種令牌結(jié)構(gòu)和實(shí)時(shí)的多主網(wǎng)絡(luò);DP是一種高速的低成本通訊連接,用于設(shè)備級(jí)控制系統(tǒng)與分散式I/O通信;PA是專為過程化而設(shè)計(jì)的,可將傳感器和執(zhí)行機(jī)構(gòu)連在一根總線上,具有本征安全規(guī)范。

  PROFIBUS-DP主要用于現(xiàn)場設(shè)備,有較高的實(shí)時(shí)性,數(shù)據(jù)傳輸速率" title="傳輸速率">傳輸速率為9.5kbit/s~12Mbit/s,響應(yīng)時(shí)間為幾百微秒到幾百毫秒,傳輸技術(shù)主要用RS485,傳輸介質(zhì)是雙絞線和光纖。

PROFIBUS的協(xié)議實(shí)現(xiàn)可通過PROFIBUS的專用協(xié)議芯片與微處理器的結(jié)合來完成,本文主要討論利用PROFIBUS-DP專用開發(fā)包來實(shí)現(xiàn)DP從站的硬件和軟件。

2 PROFIBUS-DP通訊接口開發(fā)工具

  PROFIBUS現(xiàn)場總線通訊接口開發(fā)工具是西門子公司的Development Kit 4開發(fā)包,它可使用戶將所選設(shè)備連接到PROFIBUS-DP上,進(jìn)行通信原理級(jí)測試,開發(fā)包主要由硬件組件和軟件組件組成,硬件組件包括IM183-1從站接口模塊" title="接口模塊">接口模塊、IM180主站接口模塊、IM184從站接口模塊及總線連接器等附件。使用這些主站和從站接口模塊及設(shè)備可組成具有完整的總線功能的網(wǎng)絡(luò)。軟件組件包括IM183-1模塊的固態(tài)程序、COM PROFIBUS總線組態(tài)軟件及演示軟件。在接口開發(fā)包中,IM183-1從站接口模塊、COM PROFIBUS總線組態(tài)軟件及ASIC協(xié)議芯片SPC3是最重要的。

2.1 IM183-1從站接口模塊

  IM183-1從站接口模塊可將第三方設(shè)備作為智能從站連接到PROFIBUS-DP上,最大數(shù)據(jù)傳輸速率為12Mbit/s,可自動(dòng)檢測總線數(shù)據(jù)傳輸速率。IM183-1從站接口模塊主要由ASIC芯片SPC3、80C32微處理器、EPROM、RAM和一個(gè)用于PROFIBUS-DP的RS-485接口組成,還包括一個(gè)RS232接口和連接設(shè)備的接口,PROFIBUS協(xié)議由ASIC芯片SPC3來處理。

2.2 COM PROFIBUS總線組態(tài)軟件

  COM PROFIBUS是用于PROFIBUS現(xiàn)場總線的組態(tài)軟件,可以組成PROFIBUS-DP和PROFIBUS-FMS總線系統(tǒng)的控制網(wǎng)絡(luò),可以配置主站與從站,直接讀取從站與主站的輸出、輸入數(shù)據(jù),設(shè)置總線數(shù)據(jù)傳輸速率等功能,更重要的是它可以測試帶有自主開發(fā)的通訊接口的設(shè)備。

  COM PROFIBUS和其它一些組態(tài)軟件的不同之處是:組建控制網(wǎng)絡(luò)的設(shè)備都是通過讀取GDS文件將不同廠商生產(chǎn)的設(shè)備集成在同一總線系統(tǒng)中。GDS文件是電子設(shè)備數(shù)據(jù)文件,為了將不同廠家的PROFIBUS產(chǎn)品集成在一起,生產(chǎn)廠家必須以GSD文件方式提供這些產(chǎn)品的功能參數(shù)。GSD文件應(yīng)該包括三個(gè)部分:總體規(guī)范(生產(chǎn)廠商和設(shè)備名稱、硬件和軟件版本、波特率等)、與DP有關(guān)的規(guī)范(主站的各項(xiàng)參數(shù))、與DP從站有關(guān)的規(guī)范(輸入輸出通道數(shù)、類型、診斷數(shù)據(jù)等)。目前有專用PROFIBUS GDS編輯器軟件。

2.3 SPC3協(xié)議專用芯片

  ASIC協(xié)議芯片SPC3是一種用于從站的智能通訊芯片,它支持PROFIBUS-DP協(xié)議,IM183-1接口模塊用的就是SPC3。SPC3集成了1.5Kbyte的信息報(bào)文存儲(chǔ)器、方式寄存器、狀態(tài)寄存器、中斷寄存器以及各種緩存器指針和緩沖區(qū)等,采用44管腳PQFP封裝,SPC3可獨(dú)立完成全部PROFIBUS-DP通訊協(xié)議,可減少接口模塊微處理器中的軟件程序??偩€存取由硬件驅(qū)動(dòng),而且數(shù)據(jù)的交換獨(dú)立于總線周期。SPC3最大數(shù)據(jù)傳輸率為12Mbit/s,可自動(dòng)檢測并調(diào)整數(shù)據(jù)傳輸率,與80C32、80X86、80C166、80C167及HC16、HC11、HC916系列微處理器兼容。SPC3的方式寄存器0設(shè)置PROFIBUS-DP的操作方式,如SYNC、FREEZE等,方式寄存器1可動(dòng)態(tài)改變狀態(tài)。SPC3中還集成了保護(hù)監(jiān)視定時(shí)器(Watchdog),防止微處理器出現(xiàn)故障而危及外圍設(shè)備,SPC3有一個(gè)公共的中斷輸出,可以通過讀取中斷寄存器來判斷中斷源的性質(zhì)。SPC3有較多的中斷源,如NEW_SSA_DATA、NEW_CFG_DATA,NEW_PRM_DATA、NEW_GC_COMMAND等,作為SPC3的核心,微順序控制器會(huì)控制整個(gè)過程。SPC3的UART可將并行數(shù)據(jù)流變換成串行數(shù)據(jù)流,也可以將串行數(shù)據(jù)流變換成并行數(shù)據(jù)流。

3 PROFIBUS-DP通訊接口開發(fā)的實(shí)現(xiàn)

  利用西門子公司的Development Kit 4PROFIBUS-DP開發(fā)包來實(shí)現(xiàn)PROFIBUS-DP通訊接口,包括軟件和硬件兩部分。

3.1? 硬件部分的實(shí)現(xiàn)

  針對(duì)智能PROFIBUS-DP從站,有兩種實(shí)現(xiàn)方法,一種是利用開發(fā)包中所帶的IM183-1從站接口模塊來實(shí)現(xiàn),這種方法能減少自主開發(fā)時(shí)間,但靈活性不高,不能滿足復(fù)雜智能從站;另一種方法是直接用微處理器、SPC3芯片及一些外設(shè)來實(shí)現(xiàn)通訊接口,這種方法較復(fù)雜,但較為靈活,能滿足各種需要,下面分別介紹這兩種方法。

  利用IM183-1接口模塊實(shí)現(xiàn),要清楚模塊對(duì)設(shè)備的接口以及它自身的結(jié)構(gòu)。模塊對(duì)設(shè)備的接口原理框圖如圖1所示,其中最主要的是IM183-1對(duì)設(shè)備的接口情況,對(duì)設(shè)備的接口為一個(gè)50針的連接口,主要包括12條地址線ABD(11:0)、8條高位地址線ABD(7:0)、兩條片選信號(hào)線(XCS1,XCS2)、讀寫信號(hào)線(XRD,XWR)、設(shè)備復(fù)位輸入和IM183-1復(fù)位輸出信號(hào)線(XREDIN,XREOUT)、設(shè)備的中斷輸入線(XINT)以及URAT信號(hào)線(RXD,TXD,RTS,CTS)等,其中有些線是復(fù)用的。

?

?

  另一種方法是直接用微處理器、SPC3芯片及一些外設(shè)來實(shí)現(xiàn)通訊接口。圖2所示為從站的硬件框圖,其中較重要的是SPC3與微處理器的連接。圖3是80C32微處理器與SPC3的連接,它們之間是通過16位地址線和8位數(shù)據(jù)線進(jìn)行數(shù)據(jù)交換,外擴(kuò)了程序存儲(chǔ)器(EPROM)和數(shù)據(jù)存儲(chǔ)器(RAM),數(shù)據(jù)線和地址線復(fù)用,通過地址鎖存器完成。RS485總線驅(qū)動(dòng)一側(cè)與主站連接,另一側(cè)通過光耦與SPC3連接,必須滿足PROFIBUS-DP的最大數(shù)據(jù)傳輸速率為12Mbit/s這一要求。能滿足這一要求的總線驅(qū)動(dòng)芯片有SN65ALS1176、SN75ALS176等,光耦有HCPL7101、HCPL7721、HCPL0721等。采用雙口RAM(DPRAM)連接微處理器和從站設(shè)備,可節(jié)省微處理器的資源,提高接口的通訊速度,而且通過雙口RAM內(nèi)部的仲裁機(jī)制可防止對(duì)同一地址同時(shí)進(jìn)行讀和寫的操作。雙口RAM可采用MB8441-55、CY7C130/CY7C131等,如果是十六位數(shù)據(jù)時(shí),可采用兩片并聯(lián)。另外,PROFIBUS-DP采用的是屏蔽雙絞線,推薦使用具有下面參數(shù)的電纜:阻抗為135~165Ω;電容<30pF/m;回路電阻110Ω;導(dǎo)線面積>0.34mm2;線規(guī)為0.64mm,這有助于改善電磁兼容性。

?

?

?

3.2? 軟件部分的實(shí)現(xiàn)

  PROFIBUS-DP的狀態(tài)機(jī)構(gòu)能保證DP站在每種情況下行為的一致性,SPC3內(nèi)部集成了狀態(tài)機(jī)構(gòu),用戶對(duì)狀態(tài)機(jī)構(gòu)的控制是很有限的。下面對(duì)PROFIBUS-DP的狀態(tài)機(jī)構(gòu)做簡單的介紹。

  在POWER-ON狀態(tài),從站能從兩類主站接收Set_Slave_ Add電文來改變它的地址,然后從站進(jìn)入WAIT-PRM狀態(tài),等待參數(shù)化。另外,此狀態(tài)從站還可以接收Get_Cfg、Slave_Diag電文。參數(shù)化完成后,從站進(jìn)入WAIT-CFG狀態(tài),等待Chk_Cfg電文,另外還可以接收Slave_Diag、Set_Prm、Get_Cfg電文。如果Chk_Cfg完成后,從站將進(jìn)入DATA-XCHG狀態(tài),進(jìn)行數(shù)據(jù)通訊,此時(shí)從站還可以接收Writing_Outputs Reading_Inputs、Global_Control、Slave_Diag、Chk_Diag、Get_Cfg電文。若組態(tài)和數(shù)據(jù)交換不成功,就會(huì)返回到參數(shù)化階段(WAIT-PRM)。

  PROFIBUS-DP的ASIC芯片SPC3集成了完整的PROFIBUS-DP協(xié)議,并能完全處理PROFIBUS-DP狀態(tài)機(jī)構(gòu),因此微處理器不需要考慮狀態(tài)機(jī)構(gòu),主要任務(wù)是根據(jù)SPC3產(chǎn)生的中斷,對(duì)SPC3接收到的主站輸出數(shù)據(jù)進(jìn)行處理,還要處理通過SPC3發(fā)給主站的數(shù)據(jù),以及完成各種外部診斷等。

  在Development Kit 4PROFIBUS-DP開發(fā)包中,包括DPS2固態(tài)程序,利用它可以方便地設(shè)置方式寄存區(qū)、狀態(tài)寄存區(qū)、中斷寄存區(qū)以及各個(gè)緩沖區(qū),并能根據(jù)初始化求出各個(gè)緩沖區(qū)的指針及輔助緩沖區(qū)的指針等功能。圖4給出了利用DPS2實(shí)現(xiàn)的主程序的流程圖。首先利用開發(fā)包中的DPS2對(duì)SPC3進(jìn)行初始化,然后啟動(dòng)SPC3,通過SPC3進(jìn)行主站和從站的數(shù)據(jù)交換,處理外部診斷。

?

?

  本文從開發(fā)的角度討論了利用Development Kit 4開發(fā)包來實(shí)現(xiàn)PROFIBUS-DP現(xiàn)場總線通訊接口硬件和軟件的方法。PROFIBUS-DP對(duì)數(shù)據(jù)傳輸速度有較高的要求,在器件的選用上,要給予充分的考慮。在進(jìn)行軟件的設(shè)計(jì)中,必須非常清楚各個(gè)模塊和芯片的內(nèi)部機(jī)理及DPS2的使用。使用本文所討論的方法,在自主開發(fā)的設(shè)備配上PROFIBUS-DP接口,很好地滿足了相關(guān)行業(yè)的需要,具有廣泛的應(yīng)用前景。

?

參考文獻(xiàn)

1 IM 183-1 PROFIBUS Interface Module.Siemens,1996

2 SPC3 and DPS2 User Description.Siemens,1996

3 PROFIBUS Development Kits Manuals.Siemens,1998

4 COM PROFIBUS? Manual.Siemens,1999?

5 Germany PRIFIBUS Interface Center/Lab.Manfred Popp The?Rapid Way to PROFIBUS-DP,1997

6 唐濟(jì)揚(yáng).現(xiàn)場總線(PROFIBUS)技術(shù)應(yīng)用指南.中國現(xiàn)場總線(PROFIBUS)專業(yè)委員會(huì),1998

7 郝 麗,王興東.PROFIBS-DP從站開發(fā)研究.機(jī)械工業(yè)學(xué)院學(xué)報(bào),2000;15(1)

本站內(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)容