PROFIBUS-DP總線I/O設(shè)備開發(fā)及應(yīng)用
總線I/O是"現(xiàn)場(chǎng)總線遠(yuǎn)程I/O"的簡(jiǎn)稱,是基于現(xiàn)場(chǎng)總線控制系統(tǒng)FCS中的主要設(shè)備,PROFIBUS-DP是總線I/O的主流通信協(xié)議??偩€I/O的主要功能分為輸入、輸出兩部分。輸入是采集現(xiàn)場(chǎng)模擬信號(hào)(如4~20 mA)和開關(guān)量信號(hào)(如24 V DC)轉(zhuǎn)換成為數(shù)字量并按照通信協(xié)議傳送到現(xiàn)場(chǎng)總線。輸出是將現(xiàn)場(chǎng)總線通信數(shù)據(jù)轉(zhuǎn)換成模擬輸出和開關(guān)量輸出。PROFIBUS-DP總線I/O設(shè)備以從站的形式存在。
PROFIBUS – DP的DP即Decentralized Periphery.它具有高速低成本,用于設(shè)備級(jí)控制系統(tǒng)與分散式I/O的通信。它與PROFIBUS-PA(Process Automation )、PROFIBUS-FMS (Fieldbus Message Specification )共同組成了PROFIBUS標(biāo)準(zhǔn)。用于現(xiàn)場(chǎng)層的高速數(shù)據(jù)傳送。主站周期地讀取從站的輸入信息并周期地向從站發(fā)送輸出信息??偩€循環(huán)時(shí)間必須要比主站(PLC)程序循環(huán)時(shí)間短。除周期性用戶數(shù)據(jù)傳輸外,PROFIBUS-DP還提供智能化設(shè)備所需的非周期性通信以進(jìn)行組態(tài)。診斷和報(bào)警處理。
1 總線I/O設(shè)備結(jié)構(gòu)
總線I/O的開發(fā)可分為兩大部分,一是從站功能單元,該部分是設(shè)備的主體;另一部分是通信接口單元。圖 1是典型開關(guān)量總線I/O的結(jié)構(gòu)圖。一個(gè)總線I/O設(shè)備可能需要多種總線接口,對(duì)于設(shè)備的開發(fā)人員來(lái)講,他們專注于設(shè)備功能單元的核心技術(shù),如果讓他們從頭開發(fā)各種通信接口,勢(shì)必會(huì)分散設(shè)備開發(fā)人員的精力,增加開發(fā)成本和開發(fā)周期。另外,通信協(xié)議的一致性認(rèn)證也是一個(gè)比較費(fèi)時(shí)和麻煩的事情。使用現(xiàn)有的成熟的通信接口模塊無(wú)疑是解決這一問(wèn)題的最好選擇,它具有設(shè)計(jì)快捷、成本低廉、安全可靠等優(yōu)點(diǎn)。
2 XGate-DPS10簡(jiǎn)介
XGate-DPS10嵌入式從站模塊適用于自主開發(fā)PROFIBUS-DP從站設(shè)備,且不需要掌握PROFIBUS-DP相關(guān)理論知識(shí)。 XGate-DPS10模塊提供一個(gè)全隔離PROFIBUS通訊接口,支持高達(dá)12Mbps通訊速率,集成增強(qiáng)的ESD保護(hù),可以保護(hù)用戶設(shè)備在網(wǎng)絡(luò)中可靠工作。用戶通過(guò)串行UART/SPI接口來(lái)訪問(wèn)XGate-DPS10模塊,實(shí)現(xiàn)高速實(shí)時(shí)的數(shù)據(jù)傳輸。 XGate-DPS10提供中斷指示,大大減輕用戶MCU負(fù)擔(dān),有效增強(qiáng)總線的實(shí)時(shí)性。 XGate-DPS10模塊提供有配套的編程示例(C代碼)、GSD配置文件、電路實(shí)例等開發(fā)資料,可以幫助用戶快速完成PROFIBUS產(chǎn)品項(xiàng)目。 XGate-DPS10及其接口如圖2所示。
XGate-DPS10的主要功能特點(diǎn)如下:
· PROFIBUS-DP 協(xié)議,符合EN50170 V2 和IEC61158標(biāo)準(zhǔn),支持DP-V1;
· 總線傳輸率自適應(yīng),最大傳輸率12 Mb/s,支持最大244 B I/O;
· 支持用戶參數(shù)化功能, 提高總線效率,最大用戶參數(shù)長(zhǎng)度238 B;
· 支持最大244 B用戶診斷;
· 3.3 V~5 V系統(tǒng)兼容,配套R(shí)SM485P隔離收發(fā)器使用;
· 可選的串行UART/SPI接口,支持波特率自設(shè)置;
· 數(shù)據(jù)交換CRC檢驗(yàn)功能,保證數(shù)據(jù)安全可靠;
· 提供完整的開發(fā)包和應(yīng)用解決方案;
· 單電源5 V供電,最大工作電流≤75 mA;
· 工作環(huán)境溫度:-40 ℃~+85 ℃;
· 外形尺寸:DIP24封裝,32 mm×20.4 mm×11 mm.
3 硬件設(shè)計(jì)
工業(yè)現(xiàn)場(chǎng)中,總線I/O的另一種應(yīng)用是作為PLC的I/O擴(kuò)展,總線I/O顯著優(yōu)點(diǎn)是可以集成第三方產(chǎn)品,使整體PLC的性價(jià)比達(dá)到最優(yōu);另一個(gè)優(yōu)點(diǎn)是I/O的遠(yuǎn)程布置,可以組成分布式系統(tǒng)。本期及下期將以XGate-DPS10的應(yīng)用為例設(shè)計(jì)具有8路開關(guān)量輸入、8路開關(guān)量輸出、16位觸發(fā)計(jì)數(shù)器的總線I/O設(shè)備。
圖3是XGate-DPS10的外圍連接電路。U3是XGate-DPS10的引腳分配,本例使用UART接口(默認(rèn)接口),傳輸率19 200 b/s.如果使用其他傳輸率或接口需要使用軟件配置,此時(shí)ISP/CFG引腳電路是必需的,ISP/CFG引腳同時(shí)用于在線升級(jí)固件;不使用ISP /CFG,則必須上拉到VCC.模塊指示燈指示了模塊的狀態(tài)及通信的狀況,也可以根據(jù)實(shí)際情況來(lái)設(shè)置指示燈。RSM485P是隔離收發(fā)器,并提供總線終端電源??偩€端ESD保護(hù)器件不是必須的,RSM485P提供了增強(qiáng)的ESD保護(hù)。如圖2所示,引腳TXD/MOSI、RXD/NSS分別連接到MCU的 RXD、TXD,INT連接到MCU的外部中斷,注意RXD和TXD的交叉,這與XGate-DPS10與RSM485P的RXD和TXD連接法是不同的。PROFIBUS總線連接器為DB9頭,RxD/TxD-P和RxD/TxD-N分別接3、8腳,方向控制信號(hào)CNTR-P接4腳。
工業(yè)產(chǎn)品中,開關(guān)量I/O設(shè)備一般都是采用了隔離+驅(qū)動(dòng)電路來(lái)實(shí)現(xiàn)的。本文旨在介紹如何設(shè)計(jì)設(shè)備通信接口,對(duì)功能單元硬件只做了示例性的設(shè)計(jì),為方便演示,開關(guān)量輸入使用8位撥碼開關(guān)代替,開關(guān)量輸出使用8位LED燈代替,16位計(jì)數(shù)器使用MCU內(nèi)部計(jì)數(shù)器模擬,如圖 4所示。主MCU部分可以使用撥碼開關(guān)等來(lái)獲取從站的地址設(shè)置,該參數(shù)作為網(wǎng)絡(luò)標(biāo)識(shí)將傳輸給XGate-DPS10模塊,最簡(jiǎn)單的一種方式是直接將撥碼開關(guān)連接到MCU的GPIO,當(dāng)然,可以使用圖 4的方式合理利用MCU的外部存儲(chǔ)器擴(kuò)展端口(EMC)。
4 GSD及軟件設(shè)計(jì)簡(jiǎn)介
GSD文件是設(shè)備描述文件,當(dāng)一個(gè)設(shè)備確定了其功能和參數(shù)后,GSD文件也就確定了。使用XGate-DPS10模塊設(shè)計(jì)的設(shè)備的GSD文件和軟件設(shè)計(jì)比較簡(jiǎn)單,下期將詳細(xì)介紹如何編寫GSD文件及使用軟件包開發(fā)設(shè)備代碼,操作軟件包的基本步驟如圖5所示。
PROFIBUS-DP從站應(yīng)用廣泛,使用通信接口模塊來(lái)開發(fā)總線I/O設(shè)備可以有效地縮短開發(fā)周期、節(jié)省成本投入,并在可靠性上得到了保障。XGate-DPS10符合大多數(shù)應(yīng)用場(chǎng)合,其高可靠性、方便性、低成本性使其成為開發(fā)DP從站設(shè)備的首選。