作者:Jens Sorensen, Dara O’Sullivan, and Christian Aaen
實(shí)時(shí)確定性以太網(wǎng)協(xié)議(如 EtherCAT)實(shí)現(xiàn)了多軸運(yùn)動(dòng)控制系統(tǒng)的同步運(yùn)行。1此同步有兩個(gè)方面。首先,各個(gè)控制節(jié)點(diǎn)之間的命令和參考傳遞必須同步到一個(gè)公共時(shí)鐘,其次,控制算法和反饋功能的執(zhí)行必須同步到同一個(gè)時(shí)鐘。第一種同步很好理解,是網(wǎng)絡(luò)控制器的固有部分。然而,到目前為止,第二種同步一直被忽視,現(xiàn)在是運(yùn)動(dòng)控制性能的瓶頸。
本文介紹了從網(wǎng)絡(luò)控制器到電機(jī)端子和傳感器一路同步電機(jī)驅(qū)動(dòng)器的新概念。所提出的技術(shù)能夠大大改善同步,從而顯著提高控制性能。
問(wèn)題陳述和最新技術(shù)
為了定義最先進(jìn)解決方案的局限性,請(qǐng)考慮一個(gè)2軸聯(lián)網(wǎng)運(yùn)動(dòng)控制系統(tǒng),如圖1所示。運(yùn)動(dòng)控制主機(jī)通過(guò)實(shí)時(shí)網(wǎng)絡(luò)向兩個(gè)伺服控制器發(fā)送命令和參考,每個(gè)伺服控制器構(gòu)成網(wǎng)絡(luò)上的從節(jié)點(diǎn)。伺服控制器本身由網(wǎng)絡(luò)控制器、電機(jī)控制器、電源逆變器和電機(jī)/編碼器組成。
圖1.典型的 2 軸網(wǎng)絡(luò)運(yùn)動(dòng)控制系統(tǒng)。
實(shí)時(shí)網(wǎng)絡(luò)協(xié)議采用不同的方法將從節(jié)點(diǎn)同步到主節(jié)點(diǎn),但常用的方法是在每個(gè)節(jié)點(diǎn)上有一個(gè)本地同步時(shí)鐘。這種對(duì)時(shí)間的共同理解確保了所有伺服軸的參考和命令緊密同步。換句話(huà)說(shuō),實(shí)時(shí)網(wǎng)絡(luò)上的所有網(wǎng)絡(luò)控制器都是同步的。
通常,網(wǎng)絡(luò)控制器和電機(jī)控制器之間有兩條中斷線(xiàn)。第一個(gè)通知電機(jī)控制器何時(shí)需要收集輸入并將其放入網(wǎng)絡(luò)。第二個(gè)通知電機(jī)控制器何時(shí)從網(wǎng)絡(luò)讀取數(shù)據(jù)。按照這種方法,運(yùn)動(dòng)控制器和電機(jī)控制器之間的數(shù)據(jù)交換以同步方式進(jìn)行,并且可以實(shí)現(xiàn)非常高的定時(shí)精度。然而,僅僅將同步數(shù)據(jù)傳遞到電機(jī)控制器是不夠的;電機(jī)控制器還必須能夠以同步方式響應(yīng)數(shù)據(jù)。如果沒(méi)有此功能,電機(jī)控制器就無(wú)法利用網(wǎng)絡(luò)的定時(shí)精度。在響應(yīng)參考和命令時(shí),電機(jī)控制器的I/O會(huì)帶來(lái)問(wèn)題。
電機(jī)控制器中的每個(gè)I/O(如脈寬調(diào)制(PWM)定時(shí)器和ADC)都具有固有的延遲和時(shí)間量化。例如,PWM定時(shí)器為電源逆變器生成柵極驅(qū)動(dòng)信號(hào),如圖2所示。定時(shí)器通過(guò)將參考Mx與上下計(jì)數(shù)器進(jìn)行比較來(lái)生成柵極信號(hào)。當(dāng)控制算法改變Mx時(shí),新的占空比要到下一個(gè)PWM周期才會(huì)生效。這相當(dāng)于零階保持效應(yīng),這意味著占空比在每個(gè)PWM周期T中僅更新一次,如果使用雙更新模式,則更新兩次。
圖2.更新PWM定時(shí)器的占空比。
無(wú)論數(shù)據(jù)交換在實(shí)時(shí)網(wǎng)絡(luò)上同步得多么緊密,PWM定時(shí)器的時(shí)間量化最終都會(huì)成為軸同步的決定因素。當(dāng)收到新的基準(zhǔn)時(shí),在新占空比生效之前無(wú)法響應(yīng)它。這引入了高達(dá)一個(gè)PWM周期的時(shí)間不確定性,通常在50 μs至100 μs的范圍內(nèi)。實(shí)際上,網(wǎng)絡(luò)同步周期和PWM周期之間將存在未定義且不斷變化的相位關(guān)系。將此與實(shí)時(shí)網(wǎng)絡(luò)上低于1 μs的時(shí)間不確定性進(jìn)行比較,很明顯,電機(jī)控制器的I/O在通過(guò)網(wǎng)絡(luò)同步運(yùn)動(dòng)控制時(shí)起著至關(guān)重要的作用。事實(shí)上,決定同步精度的不是實(shí)時(shí)網(wǎng)絡(luò),而是系統(tǒng)的I/O。
再次參考圖 1,系統(tǒng)有三個(gè)同步域 A、B 和 C,它們沒(méi)有綁定在一起。它們實(shí)際上與高達(dá)一個(gè)PWM周期的可變不確定性不同步。
同步不確定性和應(yīng)用影響
在用于機(jī)器人和機(jī)械加工等應(yīng)用的高性能多軸伺服系統(tǒng)中可以清楚地看到時(shí)序不確定性的影響。I/O級(jí)電機(jī)控制軸之間的時(shí)間偏移變化對(duì)機(jī)器人或機(jī)床的最終三維定位精度有直接且可測(cè)量的影響。
考慮一個(gè)簡(jiǎn)單的運(yùn)動(dòng)曲線(xiàn),如圖3所示。在此示例中,電機(jī)速度參考(紅色曲線(xiàn))斜坡上升,然后再次下降。如果斜坡速率在機(jī)電系統(tǒng)的能力范圍內(nèi),則實(shí)際速度應(yīng)遵循參考值。但是,如果系統(tǒng)中任何地方存在延遲,則實(shí)際速度(藍(lán)色曲線(xiàn))將滯后于參考,從而導(dǎo)致位置誤差Δθ。
圖3.定時(shí)延遲對(duì)位置精度的影響。
在多軸機(jī)床中,根據(jù)機(jī)床的機(jī)械結(jié)構(gòu),將目標(biāo)位置(x,y,z)轉(zhuǎn)換為角軸輪廓(θ1,...,θn)。角度軸輪廓為每個(gè)軸定義一系列等時(shí)間間隔的位置/速度命令。軸之間的任何時(shí)序差異都會(huì)導(dǎo)致機(jī)器精度降低??紤]圖 4 中所示的 2 軸示例。機(jī)器的目標(biāo)路徑由一組 (x, y) 坐標(biāo)描述。延遲會(huì)導(dǎo)致 y 軸命令出現(xiàn)時(shí)序錯(cuò)誤,并且實(shí)際路徑最終變得不規(guī)則。在某些情況下,可以通過(guò)適當(dāng)?shù)难a(bǔ)償將持續(xù)延遲的影響降至最低。更關(guān)鍵的是無(wú)法補(bǔ)償?shù)目勺兒臀粗难舆t。此外,不同的延遲會(huì)導(dǎo)致不同的控制環(huán)路增益,這使得調(diào)整環(huán)路以獲得最佳性能變得困難。
應(yīng)該注意的是,系統(tǒng)中任何地方的延遲都會(huì)導(dǎo)致機(jī)器精度不準(zhǔn)確。因此,最大限度地減少或消除延遲可以提高生產(chǎn)率和最終產(chǎn)品質(zhì)量。
圖4.定時(shí)延遲對(duì)位置精度的影響。
同步和新的控制拓?fù)?/p>
傳統(tǒng)的運(yùn)動(dòng)控制方法如圖5的頂部所示。運(yùn)動(dòng)控制器(通常是 PLC)通過(guò)實(shí)時(shí)網(wǎng)絡(luò)將位置參考 (θ*) 發(fā)送到電機(jī)控制器。電機(jī)控制器由三個(gè)級(jí)聯(lián)反饋回路組成,內(nèi)回路控制扭矩/電流 (T/i),中間回路控制速度 (ω),另一個(gè)回路控制位置 (θ)。扭矩環(huán)路具有最高的帶寬,位置環(huán)路具有最低的帶寬。來(lái)自工廠(chǎng)的反饋保存在電機(jī)控制器的本地,并與控制算法和脈寬調(diào)制器緊密同步。
圖5.傳統(tǒng)(頂部)和新興(底部)運(yùn)動(dòng)控制拓?fù)洹?/strong>
使用這種系統(tǒng)拓?fù)浣Y(jié)構(gòu),軸通過(guò)運(yùn)動(dòng)控制器和電機(jī)控制器之間的位置參考交換來(lái)同步,但電機(jī)控制器的I/O(反饋和PWM)與同步的相關(guān)性?xún)H在CNC加工等非常高精度的應(yīng)用中成為一個(gè)問(wèn)題。位置環(huán)路通常具有相當(dāng)?shù)偷膸?,因此?duì)I/O同步不太敏感。這意味著在參考級(jí)別同步節(jié)點(diǎn)通常提供可接受的性能,即使網(wǎng)絡(luò)和 I/O 位于不同的同步域中也是如此。
雖然圖5頂部所示的控制拓?fù)浜艹R?jiàn),但也使用了其他控制分區(qū)方法,其中在運(yùn)動(dòng)控制器端實(shí)現(xiàn)位置和/或速度環(huán)路,并通過(guò)網(wǎng)絡(luò)傳遞速度/扭矩參考。業(yè)界的最新趨勢(shì)表明,正在向一種新的分區(qū)方法發(fā)展,其中所有控制環(huán)路都從電機(jī)控制器轉(zhuǎn)移到網(wǎng)絡(luò)主機(jī)側(cè)的強(qiáng)大運(yùn)動(dòng)控制器(參見(jiàn)圖5底部)。實(shí)時(shí)網(wǎng)絡(luò)上的數(shù)據(jù)交換是電機(jī)控制器的基準(zhǔn)電壓(v*)和運(yùn)動(dòng)控制器的工廠(chǎng)反饋(i,ω,θ)。這種控制拓?fù)溆蓮?qiáng)大的多核PLC和實(shí)時(shí)網(wǎng)絡(luò)實(shí)現(xiàn),具有多個(gè)優(yōu)點(diǎn)。首先,架構(gòu)非??蓴U(kuò)展。軸也可以輕松添加/移除,而不必?fù)?dān)心電機(jī)控制器的處理能力。其次,由于軌跡規(guī)劃和運(yùn)動(dòng)控制都在一個(gè)中心位置完成,因此可以提高精度。
新的控制拓?fù)湟灿腥秉c(diǎn)。從電機(jī)控制器中移除控制算法后,代碼執(zhí)行和I/O的緊密同步將丟失。控制環(huán)路的帶寬越高,I/O同步丟失的問(wèn)題就越嚴(yán)重。轉(zhuǎn)矩/電流環(huán)路對(duì)同步特別敏感。
建議的解決方案
將更快的控制環(huán)路移動(dòng)到運(yùn)動(dòng)控制器會(huì)產(chǎn)生從網(wǎng)絡(luò)主站一直到電機(jī)端子的同步需求。
總體思路是使所有軸的 I/O 與網(wǎng)絡(luò)同步,以便所有內(nèi)容都在一個(gè)同步域中運(yùn)行。圖6所示為位于網(wǎng)絡(luò)控制器和電機(jī)控制器之間的I/O事件調(diào)度器。I/O 事件調(diào)度器的主要功能是生成到所有外設(shè)的同步/復(fù)位脈沖,以便它們與網(wǎng)絡(luò)流量保持同步。I/O 事件調(diào)度程序獲取幀同步信號(hào)(源自網(wǎng)絡(luò)控制器的本地時(shí)鐘),并為必須與網(wǎng)絡(luò)保持同步的所有 I/O 輸出適當(dāng)?shù)?a href="http://ttokpm.com/v/tag/1751/" target="_blank">硬件觸發(fā)器。
圖6.I/O 調(diào)度程序?qū)⑼接蚪壎ㄔ谝黄稹?/strong>
每個(gè) I/O 都有自己的一組計(jì)時(shí)/重置要求,這意味著 I/O 事件調(diào)度程序必須為每個(gè) I/O 提供定制的觸發(fā)器。雖然觸發(fā)要求不同,但一般原則適用于所有觸發(fā)要求。首先,所有觸發(fā)器都必須引用到幀同步。其次,每個(gè)觸發(fā)器都有一個(gè)延遲/偏移。這種延遲與I/O的固有延遲有關(guān),例如,ADC的轉(zhuǎn)換時(shí)間或sinc濾波器的群延遲。第三,I/O的響應(yīng)時(shí)間,例如,從ADC傳輸數(shù)據(jù)。I/O事件調(diào)度器知道每個(gè)I/O的時(shí)序要求,并根據(jù)本地時(shí)鐘連續(xù)調(diào)整觸發(fā)/復(fù)位脈沖。生成I/O事件調(diào)度器每個(gè)輸出脈沖的原理總結(jié)于圖7。
圖7.I/O 調(diào)度程序生成觸發(fā)脈沖。
在大多數(shù)聯(lián)網(wǎng)運(yùn)動(dòng)控制系統(tǒng)中,幀速率以及幀同步速率等于或低于電機(jī)控制器的PWM更新速率。這意味著 I/O 事件調(diào)度器必須在每個(gè)幀周期提供至少一個(gè)甚至多個(gè)觸發(fā)脈沖。例如,如果幀速率為 10 kHz,PWM 速率為 10 kHz,則 I/O 事件調(diào)度器必須為每個(gè)網(wǎng)絡(luò)幀提供 1 個(gè)觸發(fā)脈沖,同樣,如果幀速率為 1 kHz,PWM 速率為 10 kHz,則 I/O 事件調(diào)度器必須為每個(gè)網(wǎng)絡(luò)幀提供 10 個(gè)觸發(fā)脈沖。這相當(dāng)于圖7中的倍頻器。延遲,tD,應(yīng)用于每個(gè)同步脈沖,以補(bǔ)償每個(gè) I/O 的固有延遲。I/O 事件調(diào)度程序的最后一個(gè)元素是智能篩選功能。在每個(gè)網(wǎng)絡(luò)上,流量都會(huì)有一些抖動(dòng)。濾波器可降低觸發(fā)脈沖上的抖動(dòng),并確保幀同步頻率的變化率受到限制。
圖7的下半部分顯示了PWM同步的示例時(shí)序圖。在本例中,請(qǐng)注意幀同步頻率如何是PWM頻率的倍數(shù),以及如何減少I(mǎi)/O觸發(fā)信號(hào)上的抖動(dòng)。
實(shí)現(xiàn)
圖8顯示了在聯(lián)網(wǎng)運(yùn)動(dòng)控制系統(tǒng)中實(shí)現(xiàn)和測(cè)試的擬議同步方案的示例。網(wǎng)絡(luò)主機(jī)是 Beckhoff CX2020 PLC,它連接到 PC 以開(kāi)發(fā)和部署 PLC 程序。實(shí)時(shí)網(wǎng)絡(luò)的協(xié)議(紅色箭頭)是EtherCAT。
圖8.同步方案的實(shí)現(xiàn)。
電機(jī)控制器的主要元件是ADI公司的fido5200和ADSP-CM408。兩者共同為網(wǎng)絡(luò)連接的電機(jī)驅(qū)動(dòng)器提供了高度集成的芯片組。
fido5200 是一款具有兩個(gè)以太網(wǎng)端口的實(shí)時(shí)以太網(wǎng)多協(xié)議 (REM) 交換機(jī)。它在主機(jī)處理器和工業(yè)以太網(wǎng)物理層之間提供靈活的接口。fido5200包括一個(gè)可配置的定時(shí)器控制單元(TCU),可以為各種工業(yè)以太網(wǎng)協(xié)議實(shí)現(xiàn)高級(jí)同步方案。輸入捕獲和方波信號(hào)輸出等附加功能也可以通過(guò)專(zhuān)用定時(shí)器引腳實(shí)現(xiàn)。定時(shí)器輸入/輸出與同步的本地時(shí)間保持同相,因此與網(wǎng)絡(luò)流量保持同相。這樣不僅可以同步單個(gè)從節(jié)點(diǎn)的 I/O,還可以同步整個(gè)網(wǎng)絡(luò)中的從節(jié)點(diǎn)。
REM 交換機(jī)有兩個(gè)以太網(wǎng)端口,因此連接到兩個(gè)物理(PHY1 和 PHY2)。此拓?fù)渫瑫r(shí)支持環(huán)形和線(xiàn)形網(wǎng)絡(luò)。但是,在實(shí)驗(yàn)設(shè)置中,只有一個(gè)從節(jié)點(diǎn)用于說(shuō)明,并且只有一個(gè)以太網(wǎng)端口處于活動(dòng)狀態(tài)。
REM 交換機(jī)通過(guò)并行內(nèi)存總線(xiàn)與主機(jī)處理器通信,從而確保高吞吐量和低延遲。
用于實(shí)現(xiàn)電機(jī)控制器的主機(jī)處理器是ADSP-CM408。它是基于 ARM Cortex-M4F 內(nèi)核的特定應(yīng)用處理器,用于實(shí)現(xiàn)控制和應(yīng)用功能。該處理器包括支持工業(yè)控制應(yīng)用的外設(shè),例如用于PWM逆變器控制的定時(shí)器、ADC采樣和位置編碼器接口。為了使所有外圍設(shè)備與網(wǎng)絡(luò)保持同步,使用了靈活的觸發(fā)路由單元(TRU)。TRU將fido5200的TCU生成的觸發(fā)器重定向到ADSP-CM408上的所有時(shí)序關(guān)鍵型外設(shè)。這些器件包括脈寬調(diào)制器、用于相電流測(cè)量的sinc濾波器、ADC和絕對(duì)編碼器接口。同步 I/O 背后的原理如圖 9 所示。??
圖9.為 I/O 生成同步事件。
在圖 9 中,請(qǐng)注意如何使用 REM 交換機(jī)上的 TCU 和電機(jī)控制處理器上的 TRU 實(shí)現(xiàn) I/O 事件調(diào)度器。換句話(huà)說(shuō),該功能是通過(guò)兩個(gè)集成電路實(shí)現(xiàn)的。
電機(jī)控制器的反饋是三相伺服電機(jī)的相電流和轉(zhuǎn)子位置。相電流使用隔離式Σ-Δ型ADC測(cè)量,轉(zhuǎn)子位置使用EnDat絕對(duì)編碼器測(cè)量。Σ-Δ型ADC和編碼器均可直接與ADSP-CM408接口,無(wú)需任何外部FPGA或CPLD。
PWM 開(kāi)關(guān)頻率為 10 kHz,每個(gè) PWM 周期執(zhí)行一次控制算法。如本文所述,TCU在每個(gè)PWM周期向ADSP-CM408提供一次同步脈沖。
實(shí)驗(yàn)結(jié)果
實(shí)驗(yàn)設(shè)置的照片如圖10所示。為了說(shuō)明系統(tǒng)的同步,PLC被設(shè)置為運(yùn)行任務(wù)時(shí)間為200 μs的程序。任務(wù)時(shí)間還決定了 EtherCAT 網(wǎng)絡(luò)上的幀速率。電機(jī)控制器以 PWM 運(yùn)行,控制更新周期為 100 μs (10 kHz),因此需要以該速率發(fā)生同步脈沖。結(jié)果如圖 11 所示。
圖10.同步方案的實(shí)現(xiàn)。
圖11.為 I/O 生成同步事件。
信號(hào)“數(shù)據(jù)就緒”指示 REM 開(kāi)關(guān)何時(shí)將網(wǎng)絡(luò)數(shù)據(jù)提供給電機(jī)控制應(yīng)用。信號(hào)每 200 μs 置位一次,對(duì)應(yīng)于 EtherCAT 幀速率。PWM同步信號(hào)也由REM開(kāi)關(guān)產(chǎn)生,用于保持電機(jī)控制器的I/O與網(wǎng)絡(luò)流量同步。由于PWM周期為100 μs,REM開(kāi)關(guān)為每個(gè)EtherCAT幀安排兩個(gè)PWM同步脈沖。圖11中較低的兩個(gè)信號(hào)HS PWM和LS PWM是其中一個(gè)電機(jī)相位的高邊和低邊PWM。請(qǐng)注意 PWM 信號(hào)如何與網(wǎng)絡(luò)流量同步。
總結(jié)
實(shí)時(shí)以太網(wǎng)廣泛用于運(yùn)動(dòng)控制系統(tǒng),一些協(xié)議實(shí)現(xiàn)了精度低于1 μs的時(shí)間同步。但是,同步僅涉及網(wǎng)絡(luò)主站和從站之間的數(shù)據(jù)流量?,F(xiàn)有的網(wǎng)絡(luò)解決方案不包括運(yùn)動(dòng)控制I/O的同步,這限制了可實(shí)現(xiàn)的控制性能。
本文提出的同步方案可實(shí)現(xiàn)從網(wǎng)絡(luò)主站到電機(jī)端子的全程同步。由于同步性大大改進(jìn),所提出的方案在控制性能方面提供了顯著的改進(jìn)。所提出的方案還提供了跨多個(gè)軸的無(wú)縫同步??梢暂p松添加軸,并根據(jù)單個(gè)電機(jī)控制器定制同步。
同步基于 I/O 事件調(diào)度程序,該調(diào)度程序位于網(wǎng)絡(luò)控制器和電機(jī)控制器之間。I/O事件調(diào)度器可動(dòng)態(tài)編程,并可進(jìn)行調(diào)節(jié)以最大程度地減少抖動(dòng)/頻率變化的影響。
本文提出的方案已在實(shí)驗(yàn)設(shè)置中得到驗(yàn)證,并給出了結(jié)果。實(shí)驗(yàn)中以EtherCAT作為通信協(xié)議。但是,所提出的想法適用于任何實(shí)時(shí)以太網(wǎng)協(xié)議。
審核編輯:郭婷
-
傳感器
+關(guān)注
關(guān)注
2546文章
50491瀏覽量
751191 -
控制器
+關(guān)注
關(guān)注
112文章
16132瀏覽量
177137 -
以太網(wǎng)
+關(guān)注
關(guān)注
40文章
5348瀏覽量
170846
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論