陳曉濤,宋 師,李建華,李 俊,吳蘇如
(1.廣州數(shù)控設備有限公司,廣東廣州 510530;2.廣州數(shù)控信息科技有限公司,廣東廣州 510663)
工業(yè)以太網(wǎng)現(xiàn)場總線已越來越廣泛地應用于數(shù)控系統(tǒng)和自動化領域,GSK-Link[1]是廣州數(shù)控設備有限公司推出的自主知識產(chǎn)權工業(yè)以太網(wǎng)現(xiàn)場總線協(xié)議,已成功應用于中高檔數(shù)控系統(tǒng),實現(xiàn)了CNC 與伺服驅(qū)動單元、I/O 單元的實時通信。GSK-Link-PA是本文作者基于GSK-Link總線數(shù)據(jù)鏈路層研發(fā)的設備總線協(xié)議,實現(xiàn)了相互獨立的GSK-Link總線網(wǎng)絡之間的組網(wǎng)和實時通信。
GSK-Link-PA 總線協(xié)議具備與國外主流的Profinet PA、EtherCAT EAP[2]等協(xié)議相似的功能,已成功應用于廣東省科技計劃項目《智能化車間關鍵技術研究及應用示范工程》、廣州市科技計劃項目《機械加工車間網(wǎng)絡控制技術研究及相關設備研制》,實現(xiàn)了基于GSK-Link 總線的可編程控制器(PLC)、數(shù)控系統(tǒng)(CNC)、工業(yè)機器人控制器之間的組網(wǎng)通信,滿足了由數(shù)控機床、工業(yè)機器人和輔助設備構(gòu)成的自動生產(chǎn)線的控制需要。
現(xiàn)場總線的應用特點是:現(xiàn)場設備分散,單個節(jié)點信息量小,但實時性和快速性要求較高[3],所以GSK-Link-PA總線定義了“三層”現(xiàn)場總線參考模型,分別為物理層、鏈路層、應用層。
物理層遵循標準以太網(wǎng)協(xié)議,使用超五類以太網(wǎng)線傳輸媒介和標準以太網(wǎng)接口芯片,主從站都采用同樣的硬件模塊[1]。
鏈路層使用FPGA 來實現(xiàn),主要任務是進行數(shù)據(jù)封裝和數(shù)據(jù)連接的建立。
應用層是自定義的協(xié)議標準,該標準參考了SERCOS[4]、EtherCAT[2]、NCUC-Bus[5-6]等國外先進總線協(xié)議,在實現(xiàn)成本、通訊效率等方面有顯著的優(yōu)勢。
1.2.1 連接拓撲
GSK-Link-PA總線通信物理層協(xié)議規(guī)范的網(wǎng)絡只支持物理拓撲結(jié)構(gòu)為環(huán)型結(jié)構(gòu)(見圖1)。
圖1 環(huán)型網(wǎng)絡拓撲結(jié)構(gòu)
1.2.2 環(huán)型結(jié)構(gòu)
如圖2 所示,每個站點包含兩個相同的網(wǎng)絡接口(端口1 和端口2),通過2 對雙絞線連接形成2個物理環(huán)路。
圖2 環(huán)型結(jié)構(gòu)
1.3.1 報文
(1)報文的基本結(jié)構(gòu)
報文基本結(jié)構(gòu)如圖3所示。
圖3 報文基本結(jié)構(gòu)
幀前導:用來同步和界定報文的起始位置。
源地址:發(fā)送站點的物理地址。
目的地址:接收站點的物理地址。
控制字:包含報文類別以及各種報文的控制信息。
數(shù)據(jù)長度:表示數(shù)據(jù)域的字節(jié)個數(shù)。
CRC 域:數(shù)據(jù)校驗域,采用的是循環(huán)冗余碼校驗方式。CRC 校驗碼計算包括源地址、目的地址、控制字、數(shù)據(jù)長度和數(shù)據(jù)域,也就是說除了幀前導以外都計算在內(nèi)。
(2)報文的分類
主站同步報文(Master Sync Telegram,簡稱MST):初始化階段,每個通訊階段的開始,主站以廣播形式發(fā)送MST報文,用于通知各個從站進入新的通訊階段;正常工作階段,每個周期的開始,主站以廣播形式發(fā)送MST報文,主要用于同步主站和各個從站,同步各從站要考慮環(huán)路的傳輸延時。
令牌報文(Master Command Telegram,簡稱MCT):正常工作階段,GDT的傳輸受令牌報文的控制,MST、MDT、AT 的傳輸由主站控制進行周期傳輸,不受令牌報文的控制。
主站數(shù)據(jù)報文(Master Data Telegram,簡稱MDT):每個通訊周期中,主站以廣播形式發(fā)送一次這種報文,各伺服裝置從MDT 提取屬于自己的數(shù)據(jù)(位置指令值、速度指令值等)。
伺服報文(Drive Telegram,簡稱AT):每個通訊周期中,主站以廣播形式發(fā)送一次這種報文,各伺服裝置將要反饋給主站的數(shù)據(jù)添加到伺服報文中(實際位置值、實際速度值等)。
普通數(shù)據(jù)報文(General Data Telegram,簡稱GDT):用于在主站與從站,從站與從站之間傳送非周期數(shù)據(jù)。
編址報文(Address Assign Telegram,簡稱AAT):用于主站對從站的地址編制。
1.3.2 連接的建立
GSK-Link-PA 總線是一種一主多從式的現(xiàn)場總線,環(huán)路中擁有一個主站設備(主站)和多個從站設備(從站)[6]。主站與從站依次連接,形成雙環(huán)形;GSK-Link-PA 總線環(huán)路中的每個站點設備都包含兩個相同的網(wǎng)絡接口(端口1 和端口2),每個端口包含有獨立的物理層芯片和收發(fā)鏈路兩個通信接口;通信由主站發(fā)起,由從站依次進行通信數(shù)據(jù)讀取反饋和幀的重新打包之后,轉(zhuǎn)發(fā)相鄰從站,最終回到主站。
GSK-Link-PA 總線在總線拓撲檢測中,將對網(wǎng)絡拓撲結(jié)構(gòu)進行掃描,主站通過對各站點的拓撲結(jié)構(gòu)識別和檢查,若環(huán)路連接失敗則給出報警信息。
1.3.3 時鐘的同步
每個周期的開始,主站以廣播形式發(fā)送MST報文,各個從站以主站時鐘為參考時鐘將本地時間校準到與參考時鐘一致,從而使鏈路層的同步達到了納秒級別的精度,并且做到同步誤差不累計。
1.3.4 傳輸?shù)难舆t
傳輸延遲= 發(fā)送延遲+線路延遲+轉(zhuǎn)發(fā)延遲,為了減少傳輸延遲,站點鏈路層對幀的處理是邊收邊轉(zhuǎn)發(fā),轉(zhuǎn)發(fā)延遲約等于零,這種處理方式有效減少了報文的傳輸延遲。
1.3.5 傳輸?shù)目煽啃允侄?/p>
為了實現(xiàn)鏈路層間數(shù)據(jù)傳輸?shù)目煽啃?,鏈路層采用了兩種檢測方式:CRC校驗和超時監(jiān)測窗口。
(1)CRC校驗
發(fā)送站點對返回的報文進行CRC校驗,如果出現(xiàn)錯誤,主站將重新傳送該幀。接收站點對數(shù)據(jù)域進行CRC校驗,如果發(fā)生錯誤,則過濾此幀。
(2)超時監(jiān)測窗口
發(fā)送站點在發(fā)出一個報文后開始計時,如果在規(guī)定的時間內(nèi)沒有收到該幀的返回幀,則認為該數(shù)據(jù)出錯或丟失,并重新發(fā)送該幀。
1.4.1 通信階段管理
通信階段劃分為七個,各個階段的通信行為有明確的行為規(guī)定,具體見表1。階段0~5主要是正常通訊前的各種檢測和配置工作,階段6 進入正常的數(shù)據(jù)交互階段。
1.4.2 通訊時序與資源規(guī)劃
(1)GSK-Link-PA 協(xié)議定義了非周期和周期兩種數(shù)據(jù)傳輸時序。非周期傳輸主要用于對實時性要求不高、數(shù)據(jù)量交互較大的通訊需求,譬如通訊初始化過程,主站使用非周期性數(shù)據(jù)傳輸尋址從站,并為從站配置參數(shù)。周期性運行模式用于正常運行階段,主站用周期性數(shù)據(jù)傳輸實時控制從站。GSK-Link-PA 的雙環(huán)結(jié)構(gòu)規(guī)劃了兩個通訊環(huán)路,A 環(huán)用于周期傳輸模式,B 環(huán)用于非周期傳輸模式,兩個環(huán)路的資源和管理互相獨立。
表1 通信階段分工列表
(2)基于A 環(huán)通訊,從網(wǎng)關定期向設備控制器收集和發(fā)布實時數(shù)據(jù),主網(wǎng)關定期向各從網(wǎng)關收集和發(fā)布實時數(shù)據(jù)。A 環(huán)通訊使用MDT/AT 幀,具體封裝格式見圖4。
基于B 環(huán)通訊,主網(wǎng)關不定期的與GPC1000進行數(shù)據(jù)交互,GPC1000 為通訊主動方。主網(wǎng)關將設備控制器的反饋數(shù)據(jù)提交給GPC1000,并從GPC1000獲取控制指令,分發(fā)到各設備控制器。B環(huán)通訊使用GDT幀,具體封裝格式見圖5。
圖4 MDT/AT幀格式
圖5 GDT幀格式
1.4.3 遠程寄存器池
在加工自動化生產(chǎn)線中,根據(jù)加工需求的不同,接入GSK-Link-PA網(wǎng)絡的加工控制平臺變化多樣,交互的信息繁雜多變,提供一個統(tǒng)一的、低成本、適用性強的信息管理機制,顯得非常重要。
在本總線中,提出了“遠程寄存器池”的概念。由主控制臺統(tǒng)一提供和管理“遠程寄存器池”,并定義“遠程寄存器池”中每個存儲單位的應用意義。主控制臺根據(jù)各從控制平臺的加工任務,給其分配和開放特定區(qū)域的訪問權限,從控制平臺定時從該區(qū)域提取控制指令,并提交自己的執(zhí)行狀態(tài)。
在GSK-Link-PA 網(wǎng)絡,對通訊數(shù)據(jù)進行了抽象,只有遠程寄存器池訪問概念,屏蔽了數(shù)據(jù)具體應用的概念,簡化了GSK-Link-PA網(wǎng)絡的通訊管理。
GSK-Link-PA 總線各平臺的網(wǎng)絡通訊,實際就是完成對“遠程寄存器池”的讀寫訪問事務。例如,機床CNC系統(tǒng)訪問遠程寄存器池的數(shù)據(jù)流程圖如圖6。
1.4.4 網(wǎng)關概述
網(wǎng)關是組網(wǎng)的關鍵設備,參與GSK-Link-PA通訊的對象,要借助網(wǎng)關來接入GSK-Link-PA網(wǎng)絡。本總線中的網(wǎng)關的存在意義類似于以太網(wǎng)網(wǎng)關。
網(wǎng)關有兩個網(wǎng)絡接入接口,代表兩個站點實體,可以同時參與兩個網(wǎng)絡的通訊,并同時遵循兩個網(wǎng)絡的協(xié)議標準,從而起到了網(wǎng)絡橋接和協(xié)議轉(zhuǎn)換的作用。
1.4.5 組網(wǎng)原理
由數(shù)控機床、工業(yè)機器人和輔助設備組成的自動線需要CNC、機器人控制器和PLC 等多種控制器,這些控制器之間存在聯(lián)鎖互鎖邏輯關系及控制時序要求,傳統(tǒng)方法是采用大量信號電纜連接控制器之間的I/O接口。在筆者實施的自動線控制方案中,控制器選用廣州數(shù)控設備有限公司的GSK 系列CNC、機器人控制器、GPC1000 可編程控制器,這些控制器全部采用了GSK-Link 總線,控制器之間通過網(wǎng)關接入GSK-Link-PA總線,通過GSK-Link-PA 總線實現(xiàn)控制器之間控制邏輯、控制時序信息的實時交互。GSK-Link-PA 總線網(wǎng)絡連接拓撲如圖7。
總線網(wǎng)關分為兩類,主網(wǎng)關和子網(wǎng)關。在GSK-Link-PA 網(wǎng)絡中,處于主控地位的車間設備使用主網(wǎng)關接入GSK-Link-PA網(wǎng)絡,其他受控設備使用從網(wǎng)關接入GSK-Link-PA網(wǎng)絡。
網(wǎng)關在不同的網(wǎng)絡擔任不同的通訊角色。主網(wǎng)關作為GSK-Link網(wǎng)絡的從站,通過非周期通信來建立訪問GPC1000 共享內(nèi)存的通道;作為GSK-Link-PA網(wǎng)絡的主站,與各子網(wǎng)關進行周期通信,周期性的觸發(fā)共享內(nèi)存訪問事務。子網(wǎng)關作為GSK-Link網(wǎng)絡的從站,與設備控制器進行周期通信,給設備控制器提供訪問共享內(nèi)存的通道;作為GSK-Link-PA 網(wǎng)絡的從站,與主網(wǎng)關進行周期通信,周期性的響應共享內(nèi)存訪問事務。
1.4.6 特性
(1)跨網(wǎng)功能
每 個 網(wǎng) 關 同 時 面 向GSK-Link-PA 網(wǎng)絡和GSK-Link網(wǎng)絡,在兩個網(wǎng)絡中都具有參與通訊的權利。
圖7 GSK-Link-PA網(wǎng)絡拓撲圖
(2)多站點身份
每個網(wǎng)關具有兩個站點的功能,站點類型可設置為主站或從站。在不同網(wǎng)絡中,可以根據(jù)需求設置為主/從身份,從而滿足不同的通訊需求。
(3)組網(wǎng)功能
通過網(wǎng)關可以將GSK-Link網(wǎng)絡級聯(lián)成一個更大的網(wǎng)絡,實現(xiàn)網(wǎng)絡級別的通訊功能,將通訊對象由站點升級到網(wǎng)絡級別,將通訊范疇從一個網(wǎng)絡擴展到多個網(wǎng)絡。
(4)友好級聯(lián)接口
GSK-Link 網(wǎng)絡無需針對網(wǎng)絡級聯(lián)做任何改動,GSK-Link-PA 網(wǎng)絡對外屏蔽級聯(lián)管理技術,使得GSK-Link-PA網(wǎng)絡具有友好的網(wǎng)絡擴展特性。
總線技術指標見表1。
實驗目的:測量主站到某一個從站的同步報文的傳輸時延。
實驗原理:主站鏈路層通過發(fā)送時延測量報文對網(wǎng)絡時延進行測量。測量原理圖見圖8。
時延測量步驟如下。
Step1:將主站計數(shù)器清零(Tmx=0),同時發(fā)時延測量報文給對應的從站。
Step2:目標從站在Tsx 時間點收到該報文后,在Tsy時間點將該報文原路發(fā)回。
Step3: 主站收到MST 報文后,停止主站計數(shù)器的計數(shù),并記錄當前的計數(shù)值Tmy。
表1 總線技術指標
Step4: 重復Step1~3 若干次,記錄下所有的時間點。
如果忽略從站對時延測試報文的處理延時,即假設Tsy-Tsx=0,又因為Tmx 恒等于0,那么可以得到公式:
實驗結(jié)論:在網(wǎng)線為2 米的情況下,測得發(fā)送時延為30 ns。
實驗目的:測量總線系統(tǒng)中站點間的時鐘同步精度。
實驗原理:直接測量站點鏈路層發(fā)出的指令有效中斷信號。
圖8 時延測量原理圖
實驗結(jié)論:用示波器觀察主從站的中斷。500 μs 周期時,主從站的中斷信號放大之后可以看到信號之間的偏差<±20 ns,如圖9。
圖9 指令有效信號放大圖
實驗目的:測試總線系統(tǒng)中站點的通訊周期定時精度。
實驗原理是:CPU 處理平臺響應站點鏈路層發(fā)出的周期定時中斷,在中斷服務程序中讀取一個硬件計數(shù)器的值,相鄰兩個中斷內(nèi)讀數(shù)的差值就是中斷周期的時間,圖解見圖10。
實驗結(jié)論:設定通訊周期8 ms時,記錄了500個周期時間的統(tǒng)計結(jié)果,平均值為8 012.1 μs。定時器模塊的定時單位是20 μs,所以通訊周期時間應該介于8 000 μs~8 020 μs,實驗結(jié)果和理論分析相吻合。
圖10 定時精度測試原理圖
GSK-Link-PA 總線已成功應用于廣州數(shù)控設備有限公司的伺服電機機加車間3 條自動線,包括:電機軸自動線、電機后端蓋自動線、電機前端蓋自動線。這3條自動線不僅實現(xiàn)了零件的自動化生產(chǎn),還實現(xiàn)了遠程設備監(jiān)控、工藝管理和生產(chǎn)信息管理。下面具體介紹電機軸自動線的情況。
電機軸的加工分三道工序,為了平衡生產(chǎn)節(jié)拍,第一道、第二道工序分別使用一臺機床和各一臺機器人;第三道工序使用兩臺機床,一臺機器人。每兩臺機器人之間有滾道式輸送線傳輸工件,生產(chǎn)線的前端有一個具有分料功能的毛坯料盤,生產(chǎn)線的后端有一放置成品的料車。整條輸送線共有四臺數(shù)控機床、三臺機器人、兩條輸送線、一個毛坯轉(zhuǎn)盤料架、一個成品料車。
圖11 生產(chǎn)自動線拓撲圖
(1)組網(wǎng)
機器人、機床、主控制臺GPC1000 等加工設備網(wǎng)絡通過網(wǎng)關接入GSK-Link-PA網(wǎng)絡。
(2)加工設備網(wǎng)絡信息交互接口
各加工設備網(wǎng)絡通過訪問“遠程寄存器池”,實現(xiàn)與目標網(wǎng)絡的實時或非實時數(shù)據(jù)交互。
(3)通信技術參數(shù)
各技術參數(shù)如表2所示。
表2 技術參數(shù)
圖12 電機軸加工自動線布局圖
圖13 工藝流程
自動線拓撲圖、自動線布局、工藝流程分別如圖11~13所示。
GSK-Link-PA 總線協(xié)議是國內(nèi)數(shù)控系統(tǒng)企業(yè)推出的第一個自主知識產(chǎn)權的工業(yè)以太網(wǎng)設備總線協(xié)議,實現(xiàn)了設備控制器之間實時的信息交互,并可通過局域網(wǎng)接入信息管理系統(tǒng),提供了基于工業(yè)以太網(wǎng)的完整的自動化控制方案。GSK-Link-PA 總線技術的推廣應用將有力推動我國機械加工設備的自動化、信息化進程。
[1]廣州數(shù)控設備有限公司.Q GZSK 323.X-2011 GSK-Link 現(xiàn)場總線協(xié)議規(guī)范[Z].廣州數(shù)控設備有限公司,2011.
[2]EtherCAT Technology Group (ETG).EtherCAT Automation Protocol[Z].Germany:Beckhoff.2012.
[3]IEC61158-6-12.FDIS Part12-Application layer protocol specification[S].
[4]郇極.數(shù)字伺服通訊協(xié)議SERCOS 驅(qū)動程序設計及應用[M].北京:北京航空航天大學出版社,2005.
[5]中國數(shù)控系統(tǒng)總線技術聯(lián)盟工作組.機床數(shù)控系統(tǒng)NCUC-Bus 現(xiàn)場總線協(xié)議規(guī)范 第2 部分:物理層[S].
[6]中國數(shù)控系統(tǒng)總線技術聯(lián)盟工作組.機床數(shù)控系統(tǒng)NCUC-Bus現(xiàn)場總線協(xié)議規(guī)范第3部分:數(shù)據(jù)鏈路層[S].