1、引言
Profibus技術(shù)以其卓越的性能在全世界贏得了廣泛的用戶群。Profibus技術(shù)及其產(chǎn)品已經(jīng)進(jìn)入中國,在我國的制造業(yè)、流程工業(yè)、冶金、電力、交通、水利、食品加工、環(huán)保、樓宇和鐵路自動化領(lǐng)域都有應(yīng)用實(shí)例。國外先進(jìn)技術(shù)和產(chǎn)品進(jìn)入中國市場在一定程度上帶動了我國儀表技術(shù)的發(fā)展。我國參與 Profibus總線技術(shù)研究開發(fā)應(yīng)用的企業(yè)和科研機(jī)構(gòu)有二十多家。研究Profibus總線協(xié)議和開發(fā)技術(shù),開發(fā)Profibus產(chǎn)品,在中國的市場有著較大的發(fā)展前途。
Profibus總線標(biāo)準(zhǔn)包括3個(gè)方面內(nèi)容:FMS,DP,PA;適用于不同的應(yīng)用領(lǐng)域。DP是目前歐洲乃至全球應(yīng)用最廣泛的總線系統(tǒng);安裝簡單、拓?fù)浣Y(jié)構(gòu)多樣、易于實(shí)現(xiàn)冗余、通信實(shí)時(shí)可靠、功能比較完善,卓越的性能使得它適用于各種工業(yè)自動化領(lǐng)域,DP協(xié)議規(guī)定了用戶數(shù)據(jù)怎樣在總線各站之間進(jìn)行傳遞,而DP行規(guī)具體說明用戶數(shù)據(jù)的含義,并規(guī)定了DP如何在應(yīng)用領(lǐng)域使用。利用行規(guī),設(shè)備操作者和最終用戶可以互換不同生產(chǎn)廠商生產(chǎn)的設(shè)備,甚至還允許互換不同廠商生產(chǎn)的部件,這大大降低了用戶的工程和維護(hù)成本。DP從站只使用了DP協(xié)議的很小一部分,開發(fā)起來十分經(jīng)濟(jì)。
Profibus的通信協(xié)議比較復(fù)雜。從原則上講,它可以在任何微處理器上由軟件實(shí)現(xiàn),只需安裝異步串行收發(fā)器(UART)。但現(xiàn)在開發(fā)人員只要使用專用的通信處理芯片,完全可以將復(fù)雜協(xié)議撇開。Profibus通信協(xié)議芯片已形成廣泛系列,使用這些協(xié)議芯片使Profibus協(xié)議的具體實(shí)現(xiàn)簡單、方便、省時(shí)、省力,還可達(dá)到快速提供產(chǎn)品的目的。適合于智能從站的ASIC種類較多,如IAM公司的PBS,Motorola公司的68302、 68360,SIEMENS公司的SPC4、SPC3,VIPA公司的VPC3+、VPM2L等,其中的SPC3通信協(xié)議芯片比較有代表性。想利用其它芯片的開發(fā)人員可以參考Profibus組織的網(wǎng)站。
SPC3的內(nèi)部結(jié)構(gòu)示意圖見圖2—1。SPC3集成了DP協(xié)議中的FDL層,可以承擔(dān)通信部分的微處線接口是個(gè)可參數(shù)化的同步/異步8位接口,適合于Motorola和Intel的微控制器/處理器。內(nèi)部集成了1.5K的雙口RAM,整個(gè) RAM采用8字節(jié)的段結(jié)構(gòu)方式,分成192段,所有需要分配地址的BUF指針,必須指向段的開頭。DP通信的服務(wù)存取點(diǎn)由SPC3自動建立,各種報(bào)文信息呈現(xiàn)在用戶面前的是不同BUF的內(nèi)部數(shù)據(jù)。用戶可以通過總線接口訪問SPC3內(nèi)部RAM。
SPC3內(nèi)部集成一個(gè)看門狗定時(shí)器,操作于3種不同的狀態(tài):波特率監(jiān)測,波特率控制和DP控制。內(nèi)部的UART實(shí)現(xiàn)串并數(shù)據(jù)流的相互轉(zhuǎn)變,SPC3可以自動標(biāo)識總線的波特率(9.6K~12M)??臻e定時(shí)器控制串行總線電纜上的總線定時(shí)。微序列器(MS,Micro Sequencer)控制整個(gè)SPC3的工作過程。
在SPC3的內(nèi)部1.5KRAM中,自己用到了64個(gè)字節(jié)。這64個(gè)字節(jié)大多需要用戶設(shè)定,如中斷屏蔽字、硬件模式寄存器0和1、各種BUF長度和指針、標(biāo)識字等;還有一部分是SPC3的各種狀態(tài)指示用寄存器,如中斷字、輸入BUF狀態(tài)、輸出BUF狀態(tài)、診斷BUF狀態(tài)等。還有些寄存器在寫入時(shí)作為工作模式設(shè)定寄存器,而讀出時(shí)作為狀態(tài)指示用寄存器,如中斷請求寄存器。RAM的其它1472 個(gè)字節(jié)是提供給各種BUF的空間。SPC3具有3個(gè)輸入BUF,3個(gè)輸出BUF,2個(gè)診斷BUF,2個(gè)輔助BUF,1個(gè)配置BUF,1個(gè)參數(shù)BUF和1個(gè)地址設(shè)置BUF。當(dāng)SPC3工作前,過程特定的參數(shù)(如站地址、標(biāo)識號、各種控制位等)要輸入到特定的寄存器單元之后SPC3才能正常。(具體的過程見 SPC3初始化程序)[page]
3、通信接口的硬件設(shè)計(jì)
SPC3 可以與各種的微處理器連接使用,如Mo-torola的HC11、HC16及HC916,Intel的51、96系列??偩€接口單元形成SPC3到各種微處理器的接口,它是一個(gè)有11條地址線的8位數(shù)據(jù)接口,可以通過配置與上述兩種類型的處理器匹配。配置是借助于SPC3的兩個(gè)輸入引腳—— XINT/MOT和MODE進(jìn)行的。XINT/MOT表示Intel和Motorola芯片類別。MODE表示SPC3的工作模式,包括同步和異步。工作于同步模式時(shí),SPC3的XREADY(請求外部等待)引腳無效。
開發(fā)中使用的微處理器是80C196,其與SPC3的接口電路如圖3—1。應(yīng)當(dāng)注意的是SPC3在使用Intel芯片并工作于同步模式時(shí),內(nèi)部有自己的地址鎖存及解碼電路,所以CPU的低8位地址線不經(jīng)過573鎖存器直接與 SPC3連接(低8位地址線與8位數(shù)據(jù)線分時(shí)共用傳輸線)。而CPU的高8位地址線直接與SPC3的AB0-AB7相連,且必須為00000XXX(X表示0、1信號都行),AB8-AB10必須為低。此時(shí)片選信號輸入引腳不起作用,應(yīng)當(dāng)將其接至高電平。
CPU與SPC3通過SPC3的RAM交換數(shù)據(jù),SPC3的雙口RAM應(yīng)在CPU地址空間中統(tǒng)一分配地址。CPU把這片RAM當(dāng)作自己的外部RAM。CPU采用P3和P4口擴(kuò)展外部存儲器,P3口作為數(shù)據(jù)和低8位地址線,P4口作為高8位地址線。
SPC3與通信接口的電路示意圖見圖3—2。SPC3用于串行通信的4個(gè)管腳分別為XCTS、RTS、TXD和RXD。XCTS的含義為清除發(fā)送,是 SPC3的輸入信號,表示允許SPC3發(fā)送數(shù)據(jù)。此信號低電平有效,應(yīng)一直接低電平。RTS為SPC3的請求發(fā)送信號,其最終接到收發(fā)器的輸出使能端。 RXD和TXD分別為串行接收和發(fā)送端口。
為提高系統(tǒng)的抗干擾性,SPC3內(nèi)部線路必須與物理接口在電氣上隔離。輸入輸出通道上的電氣隔離,采用了6N137高速光耦。電源的電氣隔離,采用了DCP0505這種5V到5V的隔離轉(zhuǎn)換電源。
Profibus通信協(xié)議保障了通信的高可靠性,但這以硬件和軟件設(shè)計(jì)為基礎(chǔ)。在通信接口設(shè)計(jì)時(shí),必須遵循一定的規(guī)范,如信號的隔離,總線接口與收發(fā)間避免線路過長,電源的濾波處理,收發(fā)器和光耦的限流電阻和負(fù)載電阻必須與收發(fā)器光耦配合適當(dāng)?shù)取?/p>
采用的高速光耦為6N137,收發(fā)器為SN75ALS176,通信速率可達(dá)6M波特率,可用于大部分的應(yīng)用系統(tǒng)。如果用戶需要更高的通信速率,可以將光耦換作可達(dá)25M波特率的HCPL-7720/7721。
4、通信接口的軟件設(shè)計(jì)
應(yīng)用程序。程序采用結(jié)構(gòu)化編程思想,以便于以后的功能拓展。SPC3 的初始化程序應(yīng)放在具體IO應(yīng)用的前面;SPC3的中斷輸出作為CPU的中斷輸入,對于C196來說,采用的是外部中斷,中斷入口地址為200EH。
在SPC3正常工作之前,必須進(jìn)行初始化,以配置各個(gè)需要的寄存器。初始化程序功能結(jié)構(gòu)見圖4—1。
中斷處理程序用于完成SPC3發(fā)生的各種事件的處理。主要有新的參數(shù)報(bào)文事件,全局控制命令報(bào)文事件,進(jìn)入或退出數(shù)據(jù)交換狀態(tài)事件,新的配置報(bào)文事件,新的地址設(shè)置報(bào)文事件,監(jiān)測到波特率事件和看門狗溢出事件。
數(shù)據(jù)輸入和輸出處理(輸入輸出相對于主站而言)以及用戶診斷數(shù)據(jù)輸入可以放在應(yīng)用程序循環(huán)中。在一個(gè)應(yīng)用循環(huán)中,由應(yīng)用來刷新輸入BUF中的數(shù)據(jù),保障所有輸入數(shù)據(jù)是最新更新的數(shù)據(jù)。而SPC3在接收到由Profibus主站傳送的不同輸出數(shù)據(jù)時(shí),會產(chǎn)生輸出標(biāo)志位(同樣位于中斷請求字單元),CPU通過在應(yīng)用循環(huán)中輪詢標(biāo)志位來接收主站數(shù)據(jù)。相對于特定應(yīng)用的診斷信息,需要實(shí)時(shí)傳遞到主站;主應(yīng)用程序在應(yīng)用循環(huán)中判斷是否有可用的診斷BUF存在,當(dāng)有空閑BUF時(shí),應(yīng)用程序輸入診斷信息并請求更新。對于實(shí)時(shí)性要求嚴(yán)格的系統(tǒng),應(yīng)采用中斷方式進(jìn)行輸出數(shù)據(jù)和診斷數(shù)據(jù)處理。
5、結(jié)論
為驗(yàn)證所設(shè)計(jì)從站的Profibus功能及系統(tǒng)性能,需要確定實(shí)驗(yàn)方案并組建實(shí)驗(yàn)網(wǎng)絡(luò)。實(shí)驗(yàn)中使用的主站采用SIEMENS的IM180主站模塊和 DPMT主站軟件。IM180附以主站軟件可以實(shí)現(xiàn)對從站的狀態(tài)監(jiān)控及控制。實(shí)驗(yàn)還需要建立自定義從站的GSD文件,目的是為了使用開放的組態(tài)工具組態(tài)。使用SIEMENS的GSD-EditorV2.1建立定制從站的GSD文件,可以減少定制GSD的周期,并能保證文件格式的正確性。
實(shí)驗(yàn)中采用的總線波特率為6M,連接器采用SIEMENS提供的接線器和自己設(shè)計(jì)的連接器。主站與從站可以保持可靠的通信。主站對從站發(fā)送的“從站地址設(shè)置”命令,從站可以正確的接收并處理,對從站的特別工作模式設(shè)定是通過全局命令完成,包括對從站鎖定和同步的命令。實(shí)驗(yàn)結(jié)果表明這些功能都得到較好實(shí)現(xiàn)。
不同波特率下所達(dá)到的通信距離也是Profibus規(guī)范的一個(gè)重要指標(biāo)。本實(shí)驗(yàn)中采用屏蔽雙絞線驗(yàn)證從站的這一特性。表5—1為實(shí)驗(yàn)所達(dá)到的指標(biāo)。
以上實(shí)驗(yàn)表明,所設(shè)計(jì)的從站完全符合Profibus標(biāo)準(zhǔn)。網(wǎng)絡(luò)的數(shù)據(jù)傳送速率可達(dá)6Mbps,且運(yùn)行穩(wěn)定,可以滿足大多數(shù)應(yīng)用的需求。
開發(fā)過程也證明了利用Profibus通信協(xié)議進(jìn)行Profibus產(chǎn)品開發(fā),可以極大地節(jié)約時(shí)間和人力。 SPC3芯片的使用方法簡單,功能相對完善,可以滿足智能DP從站的通信接口設(shè)計(jì)。
責(zé)任編輯:gt
-
芯片
+關(guān)注
關(guān)注
456文章
51008瀏覽量
425276 -
通信
+關(guān)注
關(guān)注
18文章
6046瀏覽量
136206 -
協(xié)議
+關(guān)注
關(guān)注
2文章
604瀏覽量
39281
發(fā)布評論請先 登錄
相關(guān)推薦
評論