作者:Bil Schweber 貿澤電子 現在復雜的機器人手臂的控制,無(wú)論它們的大小與功率,都需要多軸同步管理才能實(shí)現動(dòng)作控制,F代電子器件——電動(dòng)機、電源切換器件(MOSFET、IGBT)、設備驅動(dòng)、控制系統(現在主要是數字化、之前是模擬控制)、反饋傳感器——使得精確的動(dòng)作控制相比幾年前顯得更加簡(jiǎn)單(如圖1所示)。然而與此同時(shí)對于系統性能需要也明顯增加了,所以現在整個(gè)項目的搭建也是相當的困難。 ![]() 圖1:機器人基礎的動(dòng)作控制系統,包括算法執行功能、電動(dòng)機驅動(dòng)、電源設備、反饋環(huán)節;機械傳動(dòng)、電動(dòng)機和傳感器(在大多數情況下);關(guān)鍵節點(diǎn)設置電壓和電流測量和控制(來(lái)源:NI) 無(wú)論怎樣有一個(gè)實(shí)際情況是不可避免的:機器人是一個(gè)大型的機械系統,因此這部分實(shí)際系統必須是控制回路的重要組成部分。這就涉及到齒輪反彈、機械誤差、震動(dòng)、電動(dòng)機性能、旋轉慣性、動(dòng)量、機械結構的彎曲程度、載荷變化等等。因此選擇哪種類(lèi)型的電動(dòng)機非常的重要——對于中/低功率應用場(chǎng)景,通常我們會(huì )在無(wú)刷直流電動(dòng)機和步進(jìn)電動(dòng)機之間選擇。 另一個(gè)重要的決定則是傳感器反饋。大多數機器人應用系統采用某種類(lèi)型的反饋傳感器來(lái)準確測量末端執行器的行程、加速度和加速度(重申一下:速度是行程對時(shí)間的導數,加速度是速度對時(shí)間的導數)。反饋傳感器可以采用霍爾效應傳感器、自動(dòng)同步器或者光編碼器。由于上文提到的機械問(wèn)題,盡管我們很容易的將編碼器安裝到電動(dòng)機上,對于應用準確性的要求它可能也不能夠提供末端執行器精確的數據。因此傳感器需要安裝在距離負載端更近的位置。 一些運動(dòng)控制應用沒(méi)有傳感器,這會(huì )降低成本和機械復雜度。不采用傳感器反饋,無(wú)傳感器的面向應用控制(FOC,也稱(chēng)為矢量控制)利用的是電動(dòng)機每相繞組電壓和電流的精確同步的數據;然后FOC采用復雜的框架參考進(jìn)行實(shí)時(shí)轉換和矩陣計算來(lái)確定電動(dòng)機的轉動(dòng)位置。省去傳感器降低了硬件成本,但是需要更強的計算能力和更加復雜的編程設計。很多機器人設計還是傾向于使用傳感器,因為相對于直接的傳感器讀數,FOC不能夠提供相同水平的自信度、可行度和可靠性。 理解基礎的機器人系統配置 雖然公眾傾向于將“機器人”這個(gè)名詞與移動(dòng)的、生活輔助或助手聯(lián)系起來(lái),在工業(yè)領(lǐng)域大部分機器人系統都是靜止的,采用各種各樣的機械臂,通過(guò)之前的配置完成各種任務(wù)。最常見(jiàn)的設計如下: • 笛卡爾機器人,設置三個(gè)線(xiàn)性的運動(dòng)軸,分別分布在X、Y、Z平面上(如圖2所示)。這個(gè)設計主要用于挑選和放置機器、無(wú)縫應用和基礎的組裝。 ![]() 圖2:笛卡爾機器人是最容易理解和控制的,分別等價(jià)為X、Y、Z平面的控制(來(lái)源:RobotPark) • 柱型機器人,所有運動(dòng)都限制的一個(gè)圓形的區域內。它結合了Y平面的線(xiàn)性運動(dòng)、Z平面的線(xiàn)性運動(dòng)和圍繞Z軸的旋轉運動(dòng)(如圖3所示)。這類(lèi)機器人用于裝配、工具處理和點(diǎn)焊操作。 ![]() 圖3:柱型機器人有兩個(gè)線(xiàn)性運動(dòng)軸和一個(gè)旋轉軸(來(lái)源:RobotPark) • 球形或極性機器人結合了兩個(gè)旋轉節點(diǎn)和一個(gè)線(xiàn)性節點(diǎn),機械臂通過(guò)反肘關(guān)節與基座連接(如圖4所示)。運動(dòng)的定義則是通過(guò)一個(gè)極坐標系統,同樣限制在一個(gè)球形區域內。主要應用在焊接、鑄造和工具處理等場(chǎng)景中。 ![]() 圖4:球形或極性機器人結合了兩個(gè)旋轉軸和一個(gè)線(xiàn)性軸,它需要根據參考系進(jìn)行大量的計算密集型轉換操作(來(lái)源:RobotPark) 這里提到的方法具有三個(gè)方向的自由度,使用了線(xiàn)性和旋轉的結合,然而一些應用場(chǎng)景僅需要一個(gè)或者兩個(gè)方向的自動(dòng)度。更高級的機械臂或者鉸接式機器人集成了額外的線(xiàn)性和旋轉運動(dòng),具有像人一樣的靈活性(如圖5所示),一些更高級的機械臂能夠提供六、八甚至更多方向的自由度。 ![]() 圖5:鉸接式機器人手臂集成了多個(gè)旋轉和線(xiàn)性運動(dòng)模式,具有多個(gè)自由度,但是也需要在制動(dòng)器和手臂之間進(jìn)行仔細的協(xié)調。 其他一些設計適用不同的線(xiàn)性和旋轉運動(dòng)的組合用于特定的應用場(chǎng)景,比如平行四邊形的實(shí)現方案,用于精確和快速地在短距離內實(shí)現移動(dòng),例如拾取和放置小型組件。隨著(zhù)自由度的提升,對每個(gè)方向自由度快速、流暢、準確和同步控制的要求也呈指數級增長(cháng)。 就軌跡配置文件而言 機器人的運動(dòng)控制方法看似非常簡(jiǎn)單:有驅動(dòng)器的支持末端執行器快速準確的到達指定的位置,當然也會(huì )涉及一些調整,和所有工程決策一樣,取決于給定應用的最優(yōu)結果相關(guān)的優(yōu)先級設置。 舉個(gè)例子,如果結果偏離過(guò)大或者有可能出現碰撞,我們設置加速和減速過(guò)快來(lái)快速達到更高的運動(dòng)速度,這樣操作能夠接收嗎?對于速度精確度控制值得嗎,要達到什么程度?加速度、速度和行程的選擇與從位置A到位置B期望的轉換有什么關(guān)聯(lián)?在某些特殊應用中定義“最優(yōu)”的優(yōu)先級和參數的標準是什么? 機器人運動(dòng)控制和其它運動(dòng)控制方面的專(zhuān)家已經(jīng)制定了標準的軌跡配置規范,對于給定應用能夠提供各種方法來(lái)實(shí)現期望的平衡方案。所有選型都涉及到根據現在的情形和反饋信號進(jìn)行實(shí)時(shí)的計算,但是某些應用可能會(huì )需要更重要、更高分辨率計算的需求。這些配置類(lèi)型包括: • 簡(jiǎn)單的梯形配置,電動(dòng)機以固定的加速度從零加速到期望的速度,并進(jìn)行保持,然后以固定的加速度減速到零,到達指定的位置(圖6)。雖然較大的加速度能夠加速整個(gè)過(guò)程,但是整個(gè)過(guò)程可能不夠平緩,出現突然的變化,我們成為驟;蛘唧E起,這樣反而會(huì )造成不準確和超量。 ![]() 圖6:最簡(jiǎn)單的運動(dòng)軌跡配置方式就是梯形模式,分別設置常量加速度、常量速度、常量減速度,從起始點(diǎn)和目標點(diǎn)之間的運動(dòng)控制是均勻的(來(lái)源:Performance Motion Devices) • S曲線(xiàn)型,這種方式比梯形模式更常見(jiàn),加速度從零不斷上升,達到指定速度后不斷下降(圖7)。到達指定位置后,減速度逐漸上升然后在目標點(diǎn)附近減為零。實(shí)際上S型曲線(xiàn)可以劃分為七個(gè)不同的階段,與梯形模式的三個(gè)階段相對比。 ![]() 圖7:相比梯形模式S曲線(xiàn)型控制更加的復雜,但是在轉換的實(shí)際路徑過(guò)程中不會(huì )出現突然的抖動(dòng)(加速的突然變化)(來(lái)源:Performance Motion Devices) •波浪型運動(dòng)控制,用戶(hù)設置一系列所要達到的位置點(diǎn),運動(dòng)控制器會(huì )平滑的通過(guò)所有這些點(diǎn)(圖8)。這種模式在靈活性和控制上都具有最大的優(yōu)越性,對于高級的運行控制場(chǎng)景非常有必要。實(shí)現平滑的曲線(xiàn)控制和計算過(guò)程都非常的復雜,盡管需要非常大的計算量,但是由于舍入或截斷誤差需要在保證分辨率的情況下實(shí)現。 ![]() 圖8:波浪型運動(dòng)控制允許用戶(hù)在起始點(diǎn)和目標點(diǎn)之間定義一系列的位置標記點(diǎn),控制器需要控制末端執行器平滑的通過(guò)這些點(diǎn)(來(lái)源:NI) 當然還有其他的運動(dòng)控制配置模型,這與專(zhuān)用應用場(chǎng)景或者行業(yè)有關(guān),無(wú)論哪種控制模式,首先要先明確需求然后是如何實(shí)現。眾所周知高效的PID閉環(huán)控制算法是驅動(dòng)電動(dòng)機和末端執行器最常用的方法,具有足夠高的準確度和精密度(參考1)。 單個(gè)軸的高效控制是非常好實(shí)現的,但是機器人的控制則變得非常的復雜,因為他需要擴展兩個(gè)、三個(gè)甚至更多的電動(dòng)機以及不同的自由度,當其中一個(gè)獨立組件的狀態(tài)變化時(shí),我們需要及時(shí)的同步和協(xié)調其他的組件,實(shí)現我們所期望的功能和性能要求。 標準vs自定義運動(dòng)控制應 對于標準的運動(dòng)控制應用,采用專(zhuān)用固定功能的嵌入式IC能夠大大簡(jiǎn)化系統設計,并且讓產(chǎn)品快速面市。相反,對于非標準的應用,運動(dòng)控制模型需要我們自定義,如果各個(gè)運動(dòng)軸之間的關(guān)聯(lián)比較復雜,必須適配異;颡毺氐氖录,那么設計團隊就需要采用全可編程的處理器。而且還需要處理器集成數字信號處理(DSP)功能來(lái)滿(mǎn)足計算密集型任務(wù)需求或者采用可編程邏輯器件(FPGA)。當我們考慮可編程器件時(shí),除了IC器件本身的硬件功能外,供應商、第三方工具、可用的軟件模塊都是我們做出選擇是需要考慮的重要因素。 需要注意的是控制器與電動(dòng)機驅動(dòng)器是不同的,一般采用MOSFET/IGBT驅動(dòng)/器件來(lái)控制電動(dòng)機的功率,主要是兩個(gè)原因。首先這些功率器件需要能夠驅動(dòng)電動(dòng)機,獨立于控制器。其次基于MOSFET的高密度互補處理技術(shù)用于數字控制器與功率器件的處理過(guò)程完全不同。對于小型的電動(dòng)機,我們可以將控制器、驅動(dòng)器和電源器件集成在一起。盡管存在著(zhù)根本上的差異,“控制器”通常指具備電源功能的模塊,因此一般會(huì )在關(guān)鍵詞搜索時(shí)造成困擾。 一些運動(dòng)控制IC的實(shí)例展示了這些器件的使用范圍,基本的單功能器件如Toshiba TB6560AFTG是一款PWM斬波型步進(jìn)電動(dòng)機控制器和驅動(dòng)IC,可用于雙極步進(jìn)電動(dòng)機的正弦信號輸入,實(shí)現微調(圖9)。采用QFN(方形扁平無(wú)引腳)封裝,物理尺寸7x7mm,采用一個(gè)時(shí)鐘信號就可以提供高性能的正向和反向雙極型步進(jìn)電機的驅動(dòng),并且能夠給電動(dòng)機繞組輸送2.5A的電流。 ![]() 圖9:Toshiba TB6560AFTG是一款步進(jìn)電動(dòng)機控制器,具有微調功能,集成2.5A MOSFET功率模塊,能夠直接驅動(dòng)電動(dòng)機繞組。(來(lái)源:Toshiba公司) 即使在微調模式下,步進(jìn)電動(dòng)機的一個(gè)問(wèn)題就是在啟動(dòng)和停止時(shí)它的輸出存在振動(dòng),盡管在很多應用中這不算是個(gè)問(wèn)題,但是如果我們處理像玻璃器皿這樣的精致物品時(shí)就是一個(gè)大問(wèn)題,還有可能導致整個(gè)系統的振動(dòng)。因此,TB6560AFTG允許用戶(hù)調整驅動(dòng)電流的上升/下降,并且建立完善的電流上升/下降的轉換,從而將振動(dòng)減小到最低(圖10)。 ![]() 圖10:在具體應用中,Toshiba TB6560AFTG需要很少的外部組件,并且接收系統處理器的高級指令,最后轉換為詳細的步進(jìn)控制信號(來(lái)源:Toshiba公司) 機器人運動(dòng)控制系統的最頂端是一些高級的單元,例如TI C2000微控制器系列。C2000包括多個(gè)系列的器件,分別集成不同的功能,如基礎的處理功能、數字計算能力、輸入/輸出接口的數量和類(lèi)型以及管家功能如定時(shí)器、看門(mén)狗和脈沖寬度調制發(fā)生器。 舉個(gè)例子,C2000分組下的TMS320 Delfino系列處理器(圖11)提供原生浮點(diǎn)支持,消除了定點(diǎn)開(kāi)發(fā)的挑戰,當然它也支持帶有IQMath虛擬浮點(diǎn)引擎的原生器件之間的定點(diǎn)和浮點(diǎn)代碼的移植。這就系統中就不需要設計第二個(gè)集成單核或者雙核的處理器了,同樣能夠提供高效的數字信號處理的算數任務(wù)以及微控制器的系統控制任務(wù)。它們同樣也集成了三角數學(xué)單元(TMU)加速器,這樣就加速了很多控制回路中常見(jiàn)三角算法的執行速度,比如轉矩閉環(huán)算法。 ![]() 圖11:TI C2000系列器件包括多個(gè)子系列,每個(gè)子系列有包含多個(gè)不同規格的器件;Delfino分組就包括一個(gè)強大的處理器和嵌入式協(xié)處理器,內部集成了很多基于硬件的功能,很大程度上降低了編程難度,加速了執行速度。(來(lái)源:TI) 支持這些處理器的是開(kāi)發(fā)工具和套件,比如 LAUNCHXL-F28377S C2000 Delfino LaunchPad就是基于TMS320C28x 32位CPU處理器(圖12)。這款套件還集成了F28377S微控制器單元(MCU),能提供400MIPS的系統性能,介于200MHz C28x中央處理單元和200MHz實(shí)時(shí)控制協(xié)處理器之間。這款微控制器還包含1MB板載FLASH以及豐富的外圍設備比如16位/12位模數轉換器、比較器、12位數模轉換器、正弦濾波器、高分辨率脈寬調制器、增強的捕獲模塊、增強的積分編碼模塊、CAN總線(xiàn)網(wǎng)絡(luò )模塊等等。 ![]() 圖12:一些工具如TI公司推出的LaunchPad對于開(kāi)發(fā)、集成和評估基于C2000 Dlifino系列處理器應用的硬件和軟件功能至關(guān)重要(來(lái)源:TI) 除了MCU,LaunchPad內置了獨立的XDS100v2 JTAG仿真器,支持通過(guò)USB實(shí)現實(shí)時(shí)的系統內編程和調試。LaunchPad還設計了兩個(gè)40-pin的接口,支持兩個(gè)BoosterPacks的同時(shí)操作;包含一個(gè)免費無(wú)限制的CCS集成開(kāi)發(fā)環(huán)境(IDE);免費下載controlSUITE軟件包。 總結 機器人運動(dòng)控制系統選型從基礎專(zhuān)用功能IC到高集成非常靈活的MCU,集成豐富的輔助和支持功能。盡管嵌入式器件看似功能有限,但是它們也支持多有不同的運動(dòng)控制模型設計,設置嚴格的參數,這類(lèi)器件供貨重組、成本低而且易于使用。對于一些高級的設計可能需要極其復雜的要求或者需要額外的互聯(lián)、控制燈需求,有平臺和開(kāi)發(fā)套件的支持如代碼包的驗證、調試和程序開(kāi)發(fā)工具以及工程驗證等,MCU能夠提供高效的解決方案。 |