Profibus-DP總線技術(shù)及其在伺服傳動中的應(yīng)用
1 引言
Profibus是一種國際化、開放式、不依賴于生產(chǎn)商的現(xiàn)場總線標(biāo)準(zhǔn),廣泛應(yīng)用于工業(yè)自動化領(lǐng)域。Profibus根據(jù)應(yīng)用特點分為Profibus-DP、Profibus-FMS、Profibus-PA三個兼容版本。其中Profibus-DP是一種高速(數(shù)據(jù)傳輸速率9.6kbit/s-12Mbit/s)經(jīng)濟的設(shè)備級網(wǎng)絡(luò),主要用于現(xiàn)場控制器與分散I/O之間的通信,可滿足交直流調(diào)速系統(tǒng)快速響應(yīng)的時間要求。由于其高可靠性、高性能、實時性好及其獨特的設(shè)計,已被幾乎所有的生產(chǎn)廠商和用戶所接受。
伺服電機具有結(jié)構(gòu)緊湊、控制容易、運行平穩(wěn)、相應(yīng)快等優(yōu)異特性,已越來越成為現(xiàn)代工業(yè)自動化運動控制的重要力量。特別是在自動化程度比較高、需精確控制速度、位置、力矩等應(yīng)用場合,如紡織機械、印刷機械、造紙機械,數(shù)控機床、工業(yè)機器人等重要行業(yè)得到了普遍的應(yīng)用。雖然PROFIBUS-DP不像 SERCOS、MACRO、Fire Wire是專門為運動控制而開發(fā)的,但在實際控制中由于PROFIBUS-DP的廣泛存在,所以運用PROFIBUS總線對伺服的控制具有很重要的現(xiàn)實意義。
2 PROFIBUS-DP總線技術(shù)
2.1 PROFIBUS-DP簡介
PROFIBUS以 ISO7498為基礎(chǔ),以開放式系統(tǒng)互聯(lián)網(wǎng)絡(luò)OSI(open system interconnection)作為參考模型,定義了物理傳輸特性、總線存取協(xié)議和應(yīng)用功能。其傳輸速率為 9.6kbps-12Mbps,最大傳輸距離在12Mbps時為100m,在1.5Mbps時為400m,可用中繼器延長至10km。最多可掛接127個站點。PROFIBUS-DP是一種高速和便宜的通訊連接,使用了第1層、第2層(即物理層和數(shù)據(jù)鏈路層)和用戶接口層,第3層至第7層未加以描述,這種流體型結(jié)構(gòu)確保了數(shù)據(jù)傳輸?shù)目焖俸陀行АK菍iT為自動控制系統(tǒng)和設(shè)備分散的I/O之間進行的通訊而設(shè)計的。使用PROFIBUS-DP模塊可取代24V 或4~20mA的串聯(lián)式信號傳輸,減少投資成本。直接數(shù)據(jù)鏈路映像(DDLM)提供的用戶接口,使得對數(shù)據(jù)鏈路層的存取變的簡單方便,傳輸可使用RS- 485傳輸技術(shù)或光纖媒體。
標(biāo)準(zhǔn)現(xiàn)場總線PROFIBUS-DP的硬件由主設(shè)備、從設(shè)備、網(wǎng)絡(luò)網(wǎng)路等三部分組成。其中主設(shè)備用以控制總線上的數(shù)據(jù)傳輸,且在沒有提供外部請求時發(fā)送信息和被授權(quán)可訪問總線.從設(shè)備是相對于主設(shè)備而言較為簡單的外部設(shè)備,且未被授權(quán)訪問總線;網(wǎng)絡(luò)網(wǎng)路如傳輸介質(zhì)和網(wǎng)絡(luò)鏈接器,前者用屏蔽雙絞電纜構(gòu)成電氣網(wǎng)絡(luò),用塑料或玻璃纖維光纜構(gòu)成的光纖網(wǎng)絡(luò),或是基于兩種媒介之間由OLM轉(zhuǎn)換的混合網(wǎng)絡(luò);后者如RS- 485總線連接器、RS-485總線終端、RS-485中繼器、光鏈路模塊OLM等。
2.2 PROFIBUS-DP通信協(xié)議及特點
PROFIBUS-DP物理層與ISO/OSI參考模型的第一層相同,采用EIA—RS485協(xié)議,根據(jù)數(shù)據(jù)傳輸速率的不同,可選用雙絞線和光纖兩種傳輸媒體。
圖1 RS485總線段結(jié)構(gòu)圖
圖1中兩根數(shù)據(jù)線通常被稱為A線和B線,分別對應(yīng)RXD/TXD-N和RXD/TXD-P信號。
PROFIBUS- DP數(shù)據(jù)鏈路層協(xié)媒體訪問控制(MAL)部分采用受控訪問的令牌總線(Token Bus)和主從方式。其中令牌總線與局域網(wǎng)IEEE8024協(xié)議一致,令牌在總線上的各主站間傳遞,持有令牌的主站獲得總線控制權(quán),該主站依照關(guān)系表與從站或其他主站進行通信。主從方式的數(shù)據(jù)鏈路協(xié)議與局域網(wǎng)標(biāo)準(zhǔn)不同,它符合HDLC中的非平衡正常響應(yīng)模式(NRM)。該模式的工作特點是:總線上一個主站控制著多個從站,主站與每一個從站建立一條邏輯鏈路;主站發(fā)出命令(Command),從站給出響應(yīng)(Respond);從站可以連續(xù)發(fā)送多個幀,直到無信息發(fā)送、達(dá)到發(fā)送數(shù)量或被主站停止為止。數(shù)據(jù)鏈路中幀的傳輸過程分為三個階段:數(shù)據(jù)鏈路建立、幀傳輸和數(shù)據(jù)鏈路釋放。
圖2中F為幀標(biāo)志字段(8位)。A為從站地址字段。控制字段C表示幀類型、編號、命令和控制信息,它將HDLC幀分為三種類型:信息幀(1)、監(jiān)控幀(S)和無編號幀(U)。其中信息幀用于應(yīng)用數(shù)據(jù)(Useful Data)的傳輸并捎帶應(yīng)答;監(jiān)控幀用于監(jiān)視鏈路上的正常操作,對鏈路狀態(tài)做出各種響應(yīng)(如認(rèn)可幀、請求重傳或暫停等);無編號幀(不含信息字段)用于傳輸各種元編號命令和響應(yīng),例如建立鏈路工作模式,釋放鏈路及報告特殊情況等。信息字段由PKW+PZD的應(yīng)用數(shù)據(jù)構(gòu)成,PKW用于讀寫參數(shù)值,如寫入控制字或讀出狀態(tài)字等,一般為4B長,而PZD用于存放控制器的具體控制值,設(shè)置站點或狀態(tài)字的參數(shù),一般為2~10B長。例如,PKW=P554.1代表向變頻器的主驅(qū)動模塊寫入一個16位的控制字,控制字的每一位都代表一種不同的控制含義;PZD的第二個字節(jié)為0#~7#電機的起停控制位。FCS是幀校驗字段,它對整個幀的內(nèi)容進行循環(huán)冗余碼(CRC)校驗,該HDLC幀最長可達(dá)24B。
圖2 正常響應(yīng)模式主站與從站間傳輸幀的格式
3 伺服電機接入PROFIBUS-DP網(wǎng)絡(luò)
施耐德公司的TWINLINE型伺服控制系統(tǒng)由于其控制器提供了專門的PROFIBUS-DP總線接口模塊,可以像其他的PROFIBUS-DP一樣,用普通的雙絞線作為通信介質(zhì),很方便的連接到基于PROFIBUS-DP總線的工業(yè)控制系統(tǒng)上,如圖3所示。
上位機由西門子的S7-300PLC組成,型號為6ES7315-2AG10-0AB0,它有一個專門的PROFIBUS-DP接口,一個MPI通信接口,可接入64個從站。PROFIBUS-DP總線負(fù)責(zé)對整個系統(tǒng)的中的所有伺服控制器進行管理,包括速度、力矩、位置等參數(shù)的命令傳送與設(shè)置等。作為一個窗口,由組態(tài)軟件ProTool編織的人機界面可方便的對整個控制系統(tǒng)進行監(jiān)視和參數(shù)的修改。
TWINLINE的伺服控制器與伺服電機之間采用旋轉(zhuǎn)編碼器或光電編碼器建立反饋,形成高精度的伺服控制系統(tǒng),伺服電機實時的將其運行狀態(tài)與信息上傳給伺服控制器。作為PROFIBUS-DP總線上的節(jié)點,伺服控制器可以與PLC主機進行通信,通過總線接受上位機的各種操作、控制和參數(shù)設(shè)定命令等。
圖3 伺服電機接入PROFIBUS-DP網(wǎng)絡(luò)系統(tǒng)結(jié)構(gòu)示意圖
4 軟件結(jié)構(gòu)設(shè)計
通過PROFIBUS-DP總線進行通信與控制的伺服系統(tǒng),主要解決的是上位主機的軟件設(shè)計問題,以下是PLC程序的主要設(shè)計框圖
圖4 PLC程序設(shè)計框圖
PLC程序由STEP 7 進行編程。程序主要由幾大部分組成:OB100、OB1和FB40組成。
OB100是暖啟動組織塊,系統(tǒng)啟動就調(diào)用OB100,它包括功能FC35即INIT_FIELDBUS,主要作用是初始化已經(jīng)打開的背景數(shù)據(jù)快,為伺服控制器設(shè)置輸入/輸出總線地址。
OB1 是主程序組織塊,包括功能FC32、功能塊FB40、功能FC37和背景數(shù)據(jù)塊DB40。FC32即CYCL_UPDATE,它的功能是定期的讀和更新來自總線上的背景數(shù)據(jù)塊的數(shù)據(jù)。功能塊FB40是控制伺服控制器的主要程序塊,它將完成伺服控制器的初始化和位置控制,主要包括功能FC40和功能 FC41。FC40即INIT_SERVO,它主要完成多個軸的初始化即多個伺服控制器的初始化。FC41即POS_SEQ_SERVO,它是整個伺服控制的核心部分,一些控制命令如速度命令、位置命令、力矩命令、原點復(fù)歸命令以及從總線上讀取伺服控制器的反饋值等都是由它完成的。FC37即 FAULT_RESET,它是復(fù)位模塊,清除總線的錯誤信息并產(chǎn)生一個復(fù)位命令使伺服控制器重新復(fù)位。DB40是功能塊FB40的背景數(shù)據(jù)快。
FC30 是FC40的子塊,完成從PLC到伺服控制器的命令傳送,檢查命令是否被正確執(zhí)行并且對錯誤進行處理。FC31是FC41的子塊,它對FC41的完成情況加以診斷并報告總線。FC33和FC34也是功能塊FB40的附屬部分,F(xiàn)C33對當(dāng)前伺服控制器的狀態(tài)進行檢查,如果空閑向總線發(fā)送命令表示下一個命令可以發(fā)送。FC34處理多個伺服控制器的同步和異步錯誤信息并產(chǎn)生錯誤報告。
5 結(jié)束語
TWINLINE型伺服控制器PROFIBUS-DP接口的引入,提高了工業(yè)自動化運動控制的水平,使伺服電機在工業(yè)控制網(wǎng)絡(luò)中的通信與控制更為方便、靈活和可靠,實際情況已證明這種控制方式效果好。
PROFIBUS-DP總線和伺服控制系統(tǒng)在工業(yè)控制中應(yīng)用非常廣泛,這為帶PROFIBUS-DP總線接口的伺服控制器提供了廣闊的應(yīng)用前景。