IEEE1588在分散運動控制系統(tǒng)中的應(yīng)用
引言
本文說明IEEE1588在一個分散運動控制系統(tǒng)中的應(yīng)用,目前的解決方案依靠分散運動部件對時間同步的專門實現(xiàn)。隨著IEEE1588的出現(xiàn),可以開發(fā)一種在標(biāo)準(zhǔn)網(wǎng)絡(luò)(如以太網(wǎng))上使用商用技術(shù)的運動控制解決方案。本文要說明在一個網(wǎng)絡(luò)范例內(nèi)IEEE1588和運動的基本操作。
分散運動控制要求系統(tǒng)節(jié)點之間緊密地同步,通常這要求在系統(tǒng)內(nèi)時鐘間的波動是微秒數(shù)量級。更高性能的應(yīng)用驅(qū)動將這個性能提高到幾分一微秒范圍。當(dāng)前的解決方案是使用適當(dāng)?shù)木W(wǎng)絡(luò)和接口部件達(dá)到使分散系統(tǒng)內(nèi)節(jié)點間的緊密同步。定制的接口卡控制整個系統(tǒng)時鐘的分配和同步以及控制數(shù)據(jù)的定時傳送。
IEEE1588精確時間協(xié)議提供分布網(wǎng)絡(luò)上的標(biāo)準(zhǔn)化的同步機(jī)制,通過使用IEEE1588協(xié)議就可在標(biāo)準(zhǔn)網(wǎng)絡(luò)上用標(biāo)準(zhǔn)化的解決方案取代專用解決方案。就可用現(xiàn)成的部件代替專用的網(wǎng)絡(luò)接口部件。
現(xiàn)使用IEEE1588協(xié)議和以太網(wǎng)實現(xiàn)一個簡單的分布運動控制系統(tǒng),用以演示這個原理。
范例說明
范例運動系統(tǒng)由三個控制器組成,每個控制器通過一個SERCOS適配器連接一個驅(qū)動器。SERCOS是連接數(shù)字驅(qū)動器的工業(yè)標(biāo)準(zhǔn)。所有的運動節(jié)點都用以太網(wǎng)卡連接到標(biāo)準(zhǔn)的以太網(wǎng)。
調(diào)節(jié)器內(nèi)的“運動計劃器”管理每個驅(qū)動器的位置信息,以控制點動、移動、和聯(lián)動操作。每個驅(qū)動器作為一個運動軸,其中一個軸是主軸,其它兩個為從動軸。每個從動軸都與主軸以1:1的比率聯(lián)動。連接到主軸的控制器以一定時間間隔向連接到從動軸的控制器發(fā)送位置基準(zhǔn)。
在系統(tǒng)內(nèi)所有節(jié)點的時鐘是同步的,它使用IEEE1588協(xié)議達(dá)到以太網(wǎng)的時鐘同步。在底板上的時鐘同步是用先與IEEE1588的專用協(xié)議實現(xiàn)的。
系統(tǒng)時鐘同步
網(wǎng)絡(luò)時鐘同步是在以太網(wǎng)適配卡上實現(xiàn)的,這個適配卡包含一個FPGA硬件輔助電路,用于對進(jìn)入和輸出的IEEE1588協(xié)議報文打上時間印記。這個FPGA包含一個64位,每片25納秒的高分辨率的可調(diào)諧時鐘。
1588協(xié)議運行在一個50MHz PowerPC CPU上,1588代碼和按1588協(xié)議的規(guī)定的FPGA交互作用使從站的時間與子網(wǎng)上與此相關(guān)的主站時鐘同步。調(diào)諧算法在每個1588同步刷新周期調(diào)節(jié)這個FPGA可調(diào)諧時鐘的頻率。
這個適配器也包含一個連接底版的接口芯片,底版芯片的時鐘與1588時鐘同步。在這個適配器上的底版接口作為主時鐘,在底版上的其它時鐘都與這個適配器上的主時鐘同步。底版時鐘與1588時鐘的同步使用一個簡單的算法。這個適配器表示一個1588邊界時鐘節(jié)點而底版時鐘劃為“外部”時鐘。
運動的同步
基本的運動控制要求在一個節(jié)點的運動任務(wù)的運行要與其它所有節(jié)點同步。節(jié)點之間的所有事務(wù)都建立在同步刷新周期基礎(chǔ)上。對控制器與傳動和控制器與控制器之間的兩種事務(wù)是相同的。
控制器對驅(qū)動的事務(wù):在周期的開始控制器發(fā)送插值位置刷新每個驅(qū)動器,驅(qū)動器使用這個位置刷新值控制電機(jī)的閉環(huán)位置和速度,每臺驅(qū)動器向控制器返回它的實際位置,控制器計算一個新位置并周期重復(fù),這個操作持續(xù)一個位置刷新周期。
控制器對控制器的事務(wù):在周期的開始,主軸控制器向每個從動軸發(fā)送位置基準(zhǔn),每個從動軸的控制器用這個位置基準(zhǔn)計劃本軸的運動。
為了同步整個系統(tǒng)的運動,運動任務(wù)和位置的刷新要與1588時鐘同步,F(xiàn)PGA內(nèi)的一個小電路提供對CPU的周期中斷來觸發(fā)這個位置刷新周期。這個電路將一個裝入目標(biāo)寄存器的時間與當(dāng)前的1588時鐘時間比較,在當(dāng)前時間與目標(biāo)時間符合時產(chǎn)生一個中斷。在這個中斷子程序內(nèi),CPU還會裝入一個新的目標(biāo)時間,它等于當(dāng)前目標(biāo)時間加上周期時間,然后重復(fù)這個過程。周期時間和相位是在節(jié)點配置過程中設(shè)置的。
評論