近日復習robotik(機器人技術(shù)/機器人學),以應(yīng)對考試。 剛才心血來潮,試圖整理了一下復習的內(nèi)容。
首先第一章,導論
Was ist Robotik? Die Robotik befasst sich mit der Entwicklung und Steuerung von Robotern und umfasst Teilgebiete der Informatik (insbesondere der Künstlichen Intelligenz), der Elektrotechnik und des Maschinenbaus. Ziel der Robotik ist es, durch Programmierung ein gesteuertes Zusammenarbeiten der Roboter-Elektronik und Roboter-Mechanik herzustellen. (aus Wikipedia) 什么是機器人學? 機器人學致力于機器人的發(fā)展和控制,并包括信息學(尤其是人工智能),電氣工程學和機械工程的子領(lǐng)域。機器人學的目標是,通過編程建立機器人電子設(shè)備和機械設(shè)備的可控合作。
那么,到底什么是機器人呢? 目前比較統(tǒng)一的說法是,機器人是可重復編程的,多功能的可操縱器。(reprogrammable multifunctional manipulator)
工業(yè)機器人的主要任務(wù): 連接 (包括焊接,粘連等) 加工 (包括打磨,拋光,等) 涂層 (包括上漆等) 組裝
第二章 工業(yè)機器人的構(gòu)造(Aufbau von Industrierobotern) 從第一章工業(yè)機器人的主要任務(wù)可以看出,機器人主要是通過對作業(yè)部/Endeffektor(如機器手)的運動控制來完成任務(wù)的。也就是說,核心的內(nèi)容就是如何實現(xiàn)對作業(yè)部運動的良好控制。 現(xiàn)在就說說工業(yè)機器人的主要構(gòu)件。 Roboterarm 機器手 Anbieten/Motoren 動力機構(gòu) 通常也叫執(zhí)行部(Aktoren) Sensoren 傳感器 Endeffektor 終端作業(yè)部 Steuerung 控制 Bedienpanel 控制面板 Anwendungsrechner mit Software 帶軟件的應(yīng)用計算機
要想機器人運動起來,就必須要有動力。下面介紹Aktoren (Anbiete/ Motoren)部分。常用的動力包括: 1,氣動 Pneumatischer Antrieb 優(yōu)點:反應(yīng)時間快 schnelle Reaktionszeit;便宜 kostenguenstig;組裝簡單 einfacher Aufbau 缺點:因為空氣的可壓縮,定位不準;太吵;沒法控制運動速度。 適合:快速工作循環(huán)和力量小的小機器人 kleinere Roboter mit schnellen Arbeitszyklen und wenig Kraft 2,液壓 Hydraulisch Antrieb 優(yōu)點:力量極大;中等的速度。 缺點:額外的空間給液壓設(shè)備;吵鬧;污染風險;定位能力和反應(yīng)時間受到油的粘性的限制。 3,電動 多用于伺服馬達(servomotoren) 優(yōu)點:緊湊 kompakt;旋轉(zhuǎn)角度和扭力矩的易控性;很高的定位能力。 缺點:非常小的力量 relativ wenig Kraft; 速度不快 適合:各種小機器人 4,壓電 非常緊湊,非常高定位能力,但是很小的移動范圍。適合微型控制件。
而要將動力機構(gòu)的動力傳遞到作業(yè)部,就需要傳動裝置。接下來介紹機器手的傳動裝置,關(guān)節(jié)(gelenk)。 最重要的四種關(guān)節(jié): 1,Rotationsgelenk 旋轉(zhuǎn)關(guān)節(jié) 類似肘部 2,Lineargelenk 線狀關(guān)節(jié) 只能沿關(guān)節(jié)方向伸縮,不能旋轉(zhuǎn) 3,Torsionsgelenk 扭轉(zhuǎn)關(guān)節(jié) 4,Revolvergelenk 左輪關(guān)節(jié)
在前文有提到,機器人學的一個核心的內(nèi)容就是如何實現(xiàn)對作業(yè)部運動的良好控制。而每個關(guān)節(jié)都是可以運動的,每個關(guān)節(jié)都有自己的傳動自由度(Getriebefreiheitsgrade),用g來表示。而一個物體(機器手)相對于一個固定的坐標系,其運動的自由度,用f來表示。在3D空間內(nèi),一個物體的狀態(tài)包括:位置(Position, 3 unabhaengige Werte)和方向(Orientierung, 3 unabhaenigige Werte)。對于一個可以完全自由運動的物體而言,f=6。也就是說,用6個獨立的值就可以完整表述一個物體在空間中的狀態(tài)。即一個物體在空間的狀態(tài)對應(yīng)于一個六元組。有了完整精確的對狀態(tài)進行描述的數(shù)學表示后,所有的運動控制都將建立在這個數(shù)學表示基礎(chǔ)上。
第三章 運動學基礎(chǔ)(Grundlagen der Kinematik) 上一章提到了用6個獨立的值就可以完整表述一個物體在三維空間內(nèi)的狀態(tài)。在這一章則介紹到底如何得到這些值,以及如何用這些值反應(yīng)物體在空間的運動。 首先要建立三維空間的坐標系。坐標系可以分為2種:BKS和OKS。BKS又叫Weltkoordinanten/Rastsystem,以一個固定的點為原點,XYZ三個坐標軸也是固定的。描述的是物體在三維空間中的絕對位置。而OKS,則是以某個物體(坐標物體)為坐標原點,以該物體的方向為坐標軸。描述的是物體在三維空間中相對坐標物體的相對位置。
按右手法則約定坐標軸和角度方向:拇指為X,食指為Y,中指為Z,右手手握方向為正。
由此可以得到某個物體在三維空間的狀態(tài)為(x,y,z,alfa1,alfa2,alfa3)
Roll-Pitch-Yaw 任何旋轉(zhuǎn)運動都可以分解成為繞三個坐標軸的旋轉(zhuǎn)運動。也就是分解成為Roll-Pitch-Yaw。這三個旋轉(zhuǎn)可以分別用一個3X3的矩陣來表示。而旋轉(zhuǎn)的合成可以用3個矩陣的乘法來計算。不過需要注意的是,對于BKS而言,矩陣乘法是從右向左,就是說最后完成的旋轉(zhuǎn)在最左邊。而OKS正好相反,是從左向右。這就是“絕對”和“相對”的區(qū)別。
而一個物體的狀態(tài)同樣的可以用一個4X4的矩陣來表示。其中左上角的3X3表示方向,最后一列的頭三個數(shù)字表示的是空間位置(即,(a14,a24,a34)為(x,y,z))。很明顯,六元組的表示方法,描述簡單,但是不方便計算物體的運動,如方向的旋轉(zhuǎn)。而4X4矩陣的表示方法,信息有冗余,但是非常方便計算物體的運動。
下面考慮一個新的問題,如何一個物體繞給定軸旋轉(zhuǎn)旋轉(zhuǎn)給定角度后的狀態(tài)。例如繞(0,0,2)這個向量旋轉(zhuǎn)60°。 對于這個問題,用4X4矩陣就非常方便計算。
再進一步,如果一個復雜的有多個旋轉(zhuǎn)組成的操作又該如何計算呢? 這里又引入了一個和復數(shù)概念接近的四元數(shù)(quaternion)。利用四元數(shù)可以非常方便的計算剛體在三維空間的復雜運動。以繞V(1,0,0)旋轉(zhuǎn)θ為例,Q = (Cosθ/2, Sinθ/2(1,0,0)) = (Cosθ/2, Sinθ/2, 0, 0)。
今天先寫到這里,這個禮拜會陸續(xù)整理完成整個講座內(nèi)容。 順便補充一下,日本在之前定下機器人發(fā)展戰(zhàn)略之后,國家投入大量的資源在機器人領(lǐng)域,將其作為戰(zhàn)略性的行業(yè)。在整個機器人研究領(lǐng)域,尤其是類人服務(wù)型機器人領(lǐng)域日本真的是非常的強大。無論是本田還是豐田又或是索尼都開發(fā)出世界領(lǐng)先的機器人。回頭看看我們,哎,年輕人寶貴的精力和創(chuàng)造力都只是為了換取一堆堆的鋼筋水泥。就算是國家投入資金發(fā)展高科技,換來的不是實在的技術(shù),而是一堆創(chuàng)造性高度極低的“廢紙”。到頭來,估計還是得花錢向人買技術(shù)。悲哀!真是悲哀啊!
上一次復習到第三章
這一次將復習第四到第六章,這三章是robotik的重點。
第四章 直接運動學(Direkte Kinematik)
一個物體在BKS里的狀態(tài)(Stellung)能夠被清楚的描述。
旋轉(zhuǎn)軸是已知的。
各肢體(Armglieder)可以利用轉(zhuǎn)換矩陣相互描述。
本章將介紹如何根據(jù)各關(guān)節(jié)的變量值確定終端作業(yè)部(Endeffektor)在BKS中的位置。
(Direkte Kinematik/ Vorw?0?1rtsrechnung liefert zu Gelenkwinkel die Endeffektorstellung.)
(我的思考:在機器人基座相對BKS位置和各關(guān)節(jié)變量已知的情況下如何計算終端作業(yè)部相對于BKS的位置?尤其是對于既有線性關(guān)節(jié)又有旋轉(zhuǎn)關(guān)節(jié)的機器手來說,如果從基座開始,一個一個關(guān)節(jié)的位置按照六元組的模式計算的話會特別的麻煩。原因主要有對于不同的關(guān)節(jié)需要不同的計算公式等。而如果全部關(guān)節(jié)采用相對BKS的矩陣表示的話,又因為不知道各關(guān)節(jié)相對BKS的位置,而沒辦法由各關(guān)節(jié)變量直接得到。)
基本思路:
1,每個肢體都有各自的OKS。
2,對于每2個由關(guān)節(jié)相連接的肢體存在將各自所屬的坐標系進行轉(zhuǎn)換的轉(zhuǎn)換矩陣。
3,對于機器人基座(Roboterbasis)來說,存在一個相對于BKS的轉(zhuǎn)換矩陣。
4,對于終端作業(yè)部存在一個相對于最后一個肢體的轉(zhuǎn)換矩陣。
5,將經(jīng)由所有肢體的轉(zhuǎn)換矩陣鏈接起來就可以計算出終端作業(yè)部在BKS中的位置。
Denavit-Hartenberg-Regeln DH規(guī)則
根據(jù)ai, αi, di 和 θi四個變量得到變換矩陣。具體規(guī)則就不細說了?傊巴扑惴ǎ╒orw?0?1rtsrechnung)提供了一個唯一的描述終端作業(yè)部相對于BKS的狀態(tài)的變換矩陣。DH規(guī)則使得用四變量描述變換矩陣成為可能。
第五章 逆向運動學(inverse Kinematik/ Rückw?0?1rtsrechnung)
前一章是根據(jù)各關(guān)節(jié)的已知變量值求的終端作業(yè)部的狀態(tài)。而在機器人學的實際應(yīng)用中,通常需要根據(jù)終端作業(yè)部的狀態(tài)來計算各個關(guān)節(jié)的變量值。例如,某個焊接機器手,要將終端作業(yè)部從當前作業(yè)點移動到下一作業(yè)點,就需要計算到達目標作業(yè)點時,各個關(guān)節(jié)的變量值是多少。
Vorw?0?1rtsrechnung : Bestimmen der Lage des Endeffektor für gegebene Gelenkparameter.
Rückw?0?1rtsrechnung: Bestimmen der Gelenkparameter für gegebene Endeffektorstellung (Position und Orientierung).
很明顯,對于傳動自由度(Getriebsfreiheitgrad) 大于6的機器人來說,在工作區(qū)域內(nèi),只要不處于邊界就都有多個逆推算法的解。
第六章 逐步逆向運動學
已知:想要的狀態(tài)變化(beabsichtigte ?0?2nderung der Stellung)
求: 關(guān)節(jié)變量值的變化(erforderliche ?0?2nderung der Gelenkparameter)
|