[{"data":1,"prerenderedAt":1641},["ShallowReactive",2],{"wiki-page-\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1600-moveit2-gong-ye-ji-qi-ren-ji-xie-bi":3,"wiki-doc-items-\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1600-moveit2-gong-ye-ji-qi-ren-ji-xie-bi":1332,"language-switcher-data-\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1600-moveit2-gong-ye-ji-qi-ren-ji-xie-bi":1625,"wiki-i18n-paths-\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1600-moveit2-gong-ye-ji-qi-ren-ji-xie-bi":1640},{"id":4,"title":5,"body":6,"canonicalPath":1311,"chapterDepth":1312,"chapterOrder":1313,"date":1314,"description":15,"docI18nKey":1315,"docKey":1316,"docRoot":1317,"docTitle":1318,"extension":1319,"i18nKey":1320,"isBlogPost":1321,"isWikiDoc":1322,"isWikiIndex":1321,"layout":1323,"legacyPath":1323,"locale":1324,"localeSlug":1325,"meta":1326,"navigation":1322,"path":1311,"seo":1327,"sourcePath":1328,"sourceStem":1320,"stem":1329,"wikiDepth":1330,"__hash__":1331},"content\u002F_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1600-Moveit2工业机器人机械臂.md","Moveit2工業機器人機械臂",{"type":7,"value":8,"toc":1308},"minimark",[9,18,22,28,34,38,43,59,62,69,72,77,80,84,87,90,99,104,107,112,115,123,128,131,139,142,145,148,153,158,163,166,169,174,177,180,183,188,193,198,201,206,209,212,215,220,225,228,236,239,244,250,255,258,261,264,267,270,273,276,283,286,291,298,305,310,313,318,326,329,334,337,342,347,350,353,356,363,368,373,376,379,384,391,394,399,402,410,415,418,423,426,429,432,435,440,443,446,451,454,457,460,465,468,473,476,479,484,487,492,495,500,503,506,509,514,517,520,525,528,533,536,539,542,545,550,553,556,559,562,565,573,576,581,586,589,592,595,600,603,606,611,614,617,622,627,630,641,644,647,650,653,656,660,663,668,671,674,677,682,685,688,691,694,697,702,705,708,713,716,719,722,727,730,735,738,741,746,749,754,757,760,763,768,771,774,779,783,788,793,796,799,802,805,810,813,818,821,826,829,834,837,842,845,850,853,858,863,866,869,872,875,878,882,887,890,895,898,901,904,907,910,915,918,923,926,929,934,937,940,943,948,951,956,959,964,967,972,975,980,983,986,989,992,995,998,1003,1006,1011,1014,1018,1023,1031,1035,1040,1043,1051,1055,1060,1065,1068,1073,1077,1082,1085,1088,1091,1094,1099,1102,1107,1112,1120,1128,1136,1139,1147,1150,1153,1156,1161,1164,1167,1173,1178,1183,1186,1191,1194,1199,1202,1207,1212,1217,1220,1223,1228,1236,1239,1242,1247,1250,1255,1258,1261,1266,1269,1272,1275,1278,1283,1286,1291,1294,1297,1302,1305],[10,11,12],"p",{},[13,14,15],"a",{"href":15,"rel":16},"https:\u002F\u002Fmoveit.ros.org\u002F",[17],"nofollow",[19,20,21],"h3",{"id":21},"機器人學",[10,23,24],{},[13,25,26],{"href":26,"rel":27},"https:\u002F\u002Fwww.bilibili.com\u002Fvideo\u002FBV1v4411H7ez",[17],[10,29,30],{},[13,31,32],{"href":32,"rel":33},"https:\u002F\u002Fwww.bilibili.com\u002Fvideo\u002Fav59243185",[17],[35,36,37],"h4",{"id":37},"理論基礎",[39,40,42],"h5",{"id":41},"dof自由度","DOF(自由度)",[10,44,45,46,50,51,54,55,58],{},"簡單來說，自由度(以下統稱爲dof)指的是 ",[47,48,49],"strong",{},"物體在空間裏面的基本運動方式"," ，總共有6種。任何運動都可以拆分成這6種基本運動方式，而這6種基本運動方式又可以分爲兩類： ",[47,52,53],{},"位移"," 和 ",[47,56,57],{},"旋轉"," 。",[10,60,61],{},"位移：X軸、Y軸、Z軸的平動",[10,63,64],{},[65,66],"img",{"alt":67,"src":68},"","https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1834.webp",[10,70,71],{},"旋轉：Roll橫滾角(繞X轉動)、Pitch俯仰角(繞Y轉動)、Yaw航向角(繞Z轉動)",[10,73,74],{},[65,75],{"alt":67,"src":76},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1835.webp",[35,78,79],{"id":79},"數理基礎",[39,81,83],{"id":82},"位姿位置與姿態的表示","位姿（位置與姿態）的表示",[10,85,86],{},"倘若在一個空間裏有一個剛體（frame），我們如何確定剛體在這個空間裏的位姿呢？",[10,88,89],{},"首先要建立一個世界座標系（world frame），然後要在剛體上建立剛體座標系（body frame）.",[91,92,93],"ol",{},[94,95,96],"li",{},[47,97,98],{},"位置的描述",[10,100,101],{},[65,102],{"alt":67,"src":103},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1836.webp",[10,105,106],{},"描述剛體的質心(一個點)在世界中的位置，就可以用一個3X1向量來表示.",[10,108,109],{},[65,110],{"alt":67,"src":111},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1837.webp",[10,113,114],{},"這樣就知道了平動的三個DOF。",[91,116,118],{"start":117},2,[94,119,120],{},[47,121,122],{},"方位的描述",[10,124,125],{},[65,126],{"alt":67,"src":127},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1838.webp",[10,129,130],{},"設世界座標系爲A，剛體座標系爲B。",[10,132,133,136],{},[65,134],{"alt":67,"src":135},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1839.webp",[65,137],{"alt":67,"src":138},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1840.webp",[10,140,141],{},"上面這個矩陣就叫旋轉矩陣（Rotation Matrix），是一個3*3的正交矩陣，ABR描述的是A爲參考座標系，B相對於A的方向。",[10,143,144],{},"每一個列向量，都代表B的對應座標軸各自指向的方向。",[10,146,147],{},"每一列向量都是B的對應的座標軸相對於A的方向餘弦（Direct Cosines）。",[10,149,150],{},[65,151],{"alt":67,"src":152},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1841.webp",[10,154,155],{},[65,156],{"alt":67,"src":157},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1842.webp",[10,159,160],{},[65,161],{"alt":67,"src":162},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1843.webp",[10,164,165],{},"旋轉矩陣的每個元素 r ij代表 B 的第 j 軸與 A 的第 i 軸的方向餘弦.",[10,167,168],{},"實在看不懂，先來看下面來看例子：",[10,170,171],{},[65,172],{"alt":67,"src":173},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1844.webp",[10,175,176],{},"B的X軸在A中怎麼表示？可以看出來，B的X正好是A的Z軸的負半軸，那就是0，0，-1.",[10,178,179],{},"B的Y軸在A中怎麼表示？可以看出來，B的Y正好是A的Y軸的正半軸，那就是0，1，0.",[10,181,182],{},"B的Z軸在A中怎麼表示？可以看出來，B的Z正好是A的X軸的正半軸，那就是1，0，0.",[10,184,185],{},[65,186],{"alt":67,"src":187},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1845.webp",[10,189,190],{},[65,191],{"alt":67,"src":192},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1846.webp",[10,194,195],{},[65,196],{"alt":67,"src":197},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1847.webp",[10,199,200],{},"這個例子裏，AB的Z重合了，所以我們只看上視圖就可以了。",[10,202,203],{},[65,204],{"alt":67,"src":205},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1848.webp",[10,207,208],{},"就是把XB這個單位向量，投影到A的X和Y上看分量即可。",[10,210,211],{},"同理YB也一樣。",[10,213,214],{},"ZB和ZA重合，比較簡單。",[10,216,217],{},[65,218],{"alt":67,"src":219},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1849.webp",[10,221,222],{},[65,223],{"alt":67,"src":224},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1850.webp",[10,226,227],{},"答案是B。",[91,229,231],{"start":230},3,[94,232,233],{},[47,234,235],{},"位姿的描述",[10,237,238],{},"通過BF在WF的狀態，就可以知道剛體在世界中的位姿。",[10,240,241],{},[65,242],{"alt":67,"src":243},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1851.webp",[91,245,247],{"start":246},4,[94,248,249],{},"運動的描述",[10,251,252],{},[65,253],{"alt":67,"src":254},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1852.webp",[10,256,257],{},"紅色是剛體運動的軌跡線，",[10,259,260],{},"軌跡（平動DOF）對時間的微分(導數)，就是剛體線速度。",[10,262,263],{},"剛體速度再對時間的微分(導數)，就是剛體線加速度。",[10,265,266],{},"同理,轉動DOF對時間的微分(導數)，就是剛體的角速度。",[10,268,269],{},"角速度再對時間的微分(導數)，就是剛體角加速度。",[39,271,272],{"id":272},"旋轉矩陣",[10,274,275],{},"特性：",[10,277,278,279,282],{},"由於旋轉矩陣R裏每個元素都是兩個向量內積，內積是可以交換位置且最後結果",[47,280,281],{},"數值不變","的。",[10,284,285],{},"所以我們選擇交換位置。",[10,287,288],{},[65,289],{"alt":67,"src":290},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1853.webp",[10,292,293,294,297],{},"原始的R是每一 ",[47,295,296],{},"列"," 都是B的某一軸在A系的分量。",[10,299,300,301,304],{},"交換位置後的R是每一 ",[47,302,303],{},"行"," 都是A的某一軸在B系的分量。",[10,306,307],{},[65,308],{"alt":67,"src":309},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1854.webp",[10,311,312],{},"結論：所以說Rab = Rba的T。",[10,314,315],{},[65,316],{"alt":67,"src":317},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1855.webp",[10,319,320,323],{},[65,321],{"alt":67,"src":322},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1856.webp",[65,324],{"alt":67,"src":325},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1857.webp",[10,327,328],{},"他倆明顯是轉置關係。",[10,330,331],{},[65,332],{"alt":67,"src":333},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1858.webp",[10,335,336],{},"RT*R=I3（3*3單位陣）(正交陣orthogonal matrix的性質)",[10,338,339],{},[65,340],{"alt":67,"src":341},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1859.webp",[10,343,344],{},[65,345],{"alt":67,"src":346},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1860.webp",[10,348,349],{},"還有個性質就是|R|=1",[10,351,352],{},"雖然有9個數字，但是啊，因爲正交陣的性質，所以是有約束條件的，這9個數字裏有6個數字是隨着其他數字變化而變化的，所以這9個數字實際上只有3個參數可以任意選擇，也就是旋轉矩陣實際上只有3個自由度。(轉動DOF)",[10,354,355],{},"旋轉矩陣的一個功能如下：",[10,357,358,359,362],{},"比如說另一個座標系B相對於A座標系繞X,Y,Z軸各自",[47,360,361],{},"逆時針","轉動theta度的旋轉矩陣。",[10,364,365],{},[65,366],{"alt":67,"src":367},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1861.webp",[10,369,370],{},[65,371],{"alt":67,"src":372},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1862.webp",[10,374,375],{},"在中國大陸教材中，常用R(X,theta)來代替圖中的RXA(theta)。圖中這個A指的是原座標系，得出來的AP`也是原座標下的座標。",[10,377,378],{},"這樣的話，AP左乘一個R就得出來了P轉動後在A系的座標。（一定要與下面講的旋轉座標變換分清楚，很容易混淆）",[10,380,381],{},[65,382],{"alt":67,"src":383},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1863.webp",[10,385,386,387,390],{},"P逆時針轉動30度後，在",[47,388,389],{},"原座標系","中的座標爲002.",[10,392,393],{},"總結：旋轉矩陣主要是三種用法，如下圖：",[10,395,396],{},[65,397],{"alt":67,"src":398},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1864.webp",[39,400,401],{"id":401},"座標變換",[91,403,404,407],{},[94,405,406],{},"平移座標變換",[94,408,409],{},"旋轉座標變換",[10,411,412],{},[65,413],{"alt":67,"src":414},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1865.webp",[10,416,417],{},"這裏的APX是個數值，XA等是矢量，加法是矢量加法，最後得出來的是AP向量。",[10,419,420],{},[65,421],{"alt":67,"src":422},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1866.webp",[10,424,425],{},"重要結論就是AP = ABR*BP.(注意是矩陣的左乘)",[10,427,428],{},"AP就是P在A系的座標。",[10,430,431],{},"BP就是P在B系的座標。",[10,433,434],{},"ABR就是A爲參考座標系，B相對於A的旋轉矩陣。",[10,436,437],{},[65,438],{"alt":67,"src":439},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1867.webp",[39,441,442],{"id":442},"物體的變換及逆變換",[10,444,445],{},"物體平動的順序可以互相顛倒,但是物體轉動的順序不能互相顛倒,否則姿態會不一樣.",[10,447,448],{},[65,449],{"alt":67,"src":450},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1868.webp",[10,452,453],{},"主要是兩種拆解方式,一個是設一個固定的座標系,一直按這個座標系轉動,",[10,455,456],{},"另一個方式是假設物體的座標系.",[35,458,459],{"id":459},"機械臂描述方式",[10,461,462],{},[65,463],{"alt":67,"src":464},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1869.webp",[10,466,467],{},"Link 0一般也叫base_Link",[10,469,470],{},[65,471],{"alt":67,"src":472},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1870.webp",[10,474,475],{},"先看好相對關係，Axis i-1的後面纔是Link i - 1(當然其他描述也成立)",[35,477,478],{"id":478},"描述各關節之間的關係",[10,480,481],{},[65,482],{"alt":67,"src":483},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1871.webp",[10,485,486],{},"也就是公垂線(唯一解)，其長度爲Link Length連桿長度",[10,488,489],{},[65,490],{"alt":67,"src":491},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1872.webp",[10,493,494],{},"現在只是限制住了兩個軸的距離，兩個軸還是可以轉動的，所以需要下一個參數，Link Twist連桿扭角。",[10,496,497],{},[65,498],{"alt":67,"src":499},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1873.webp",[10,501,502],{},"這個角就是沿中垂線，把後一個軸線沿中垂線往當前軸移動，然後形成的夾角叫Link Twist連桿扭角。",[10,504,505],{},"也就是說，針對空間中任意兩個轉軸，我們需要兩個參數來進行描述，也就是Link Length和Link Twist。",[10,507,508],{},"如果是多個串起來的轉軸，我們就無法找到對應關係了，比如說",[10,510,511],{},[65,512],{"alt":67,"src":513},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1874.webp",[10,515,516],{},"上面這個圖，我沒法表示ai-1與ai在軸線Axis i上的相對關係以及相對姿態是什麼樣子的。",[10,518,519],{},"所以還需要其他參數。",[10,521,522],{},[65,523],{"alt":67,"src":524},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1875.webp",[10,526,527],{},"首先肯定需要一個長度，兩個公垂線在Axis i上的距離，叫做Link Offset，連桿偏距。",[10,529,530],{},[65,531],{"alt":67,"src":532},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1876.webp",[10,534,535],{},"然後還需要一個角，Joint Angle連桿夾角，也叫關節角。",[10,537,538],{},"其實發現，這四個參數，只有一個參數是變化的，其他都是固定的。",[10,540,541],{},"如果ioint type是revolute joint，那麼thetai變化，其他不變。",[10,543,544],{},"如果joint type是prismatic joint，那麼di變化，其他不變。",[10,546,547],{},[65,548],{"alt":67,"src":549},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1877.webp",[10,551,552],{},"描述兩個軸需要2個參數，連桿長度與連桿扭角。",[10,554,555],{},"描述多個軸串在一起需要4個參數(每兩兩杆件都需要4個參數)，連桿長度Link Length，連桿扭角Link Twist，連桿偏距Link Offset，連桿夾角Joint Angle。",[35,557,558],{"id":558},"在joint上建立frame",[10,560,561],{},"咱們一般把Z方向定義成和轉軸的方向一樣，Z朝上或朝下是看怎麼朝向，這兩個軸的夾角最小，這樣就能夠確定Z的方向了。",[10,563,564],{},"Xi的方向是沿着ai的方向。",[10,566,567,570],{},[65,568],{"alt":67,"src":569},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1878.webp",[65,571],{"alt":67,"src":572},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1879.webp",[10,574,575],{},"Xi與Zi+1和Zi都垂直。",[10,577,578],{},[65,579],{"alt":67,"src":580},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1880.webp",[10,582,583],{},[65,584],{"alt":67,"src":585},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1881.webp",[10,587,588],{},"右手定則，判斷Y方向。",[10,590,591],{},"原點是Z和X的交點。",[10,593,594],{},"若是建立base_link(link0)與link1的話，則是特殊情況。（base_link是immobile不動的）",[10,596,597],{},[65,598],{"alt":67,"src":599},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1882.webp",[10,601,602],{},"frame0和frame1重疊(重合)。通常，比如說是個旋轉關節，雖然規定theta是arbitrary任意的，但是我把theta固定成0，然後讓frame0和frame1(theta",[10,604,605],{},"= 0)重合。如果是平動關節，那麼同理也取d=0的時候的frame1。注意，這裏是重疊重合，並不是形狀相同，而是完全重疊的座標系。",[10,607,608],{},[65,609],{"alt":67,"src":610},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1883.webp",[10,612,613],{},"最後一個杆件，也差不多，因爲Xn和Xn-1都要垂直於Axis n(Zn)，所以最簡單的方法就是讓Xn與Xn-1方向一致。",[10,615,616],{},"Xn取Xn-1的方向。也就是framen和framen-1是延長的。",[10,618,619],{},[47,620,621],{},"下面是重點中的重點：(有好幾種方法判斷，如有錯誤請討論後修改)",[10,623,624],{},[65,625],{"alt":67,"src":626},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1884.webp",[10,628,629],{},"需要知道的常識：",[91,631,632,635,638],{},[94,633,634],{},"一般連桿扭角按逆時針是正值。",[94,636,637],{},"我們常說的轉向，是從逆着的方向去看，也就是讓箭頭指向眼睛的方向去看的。",[94,639,640],{},"從軸的逆方向去看和順着方向去看轉向，是完全相反的方向，但是在平面上容易產生視覺錯覺，難以理解。可以拿支筆或者電機，轉動一下試試。",[10,642,643],{},"①alphai-1是正值還是負值，要看Zi-1到Zi的角是順時針還是逆時針，伸出右手，讓拇指沿Xi-1的方向，如果alphai-1順着四指方向則爲逆時針，正值，反之爲順時針，負值。",[10,645,646],{},"所以如圖，alphai-1是逆時針，所以是正值。",[10,648,649],{},"②ai-1的長度因爲是長度，所以永遠是正值，然後值爲Z軸間的相對距離。",[10,651,652],{},"③thetai的角度也基本同理，將右手大拇指沿着Zi的方向，若thetai順着四指方向則爲逆時針，逆着則爲順時針。",[10,654,655],{},"④di的大小方向要看從ai-1沿着zi的方向到ai，則是正值，反之爲負值，大小即爲距離。",[35,657,659],{"id":658},"link-transformations","Link Transformations",[39,661,662],{"id":662},"理論",[10,664,665],{},[65,666],{"alt":67,"src":667},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1885.webp",[10,669,670],{},"我們兩個關節都有倆軸，一個Axisi-1一個是Axisi，我們也有倆frame，一個是framei-1一個是framei。",[10,672,673],{},"我們需要找到兩個frame之間的關係式是什麼，也就是找到變換矩陣Transformation Matrix。",[10,675,676],{},"然後將Trans Matrix量化即可。",[10,678,679],{},[65,680],{"alt":67,"src":681},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1886.webp",[10,683,684],{},"假設說有一個點P，他在frame i下的表達是Pi，如果我們找到了Ti-1 i的矩陣，那麼就有辦法，獲得P在frame i-1下的表達了。",[10,686,687],{},"所以我們現在需要，用剛纔找到的四個參數，轉化成我們的Trans Matrix。",[10,689,690],{},"這四個參數，也就是ai-1，alphai-1，di和thetai，足以可以表達framei-1到framei了。",[10,692,693],{},"①首先在Axis i-1上，",[10,695,696],{},"先描述alpha，就把framei-1的Zi-1旋轉到差不多Zi的方向，生成FrameR（只旋轉Z，X不動，然後右手定則判斷Y）",[10,698,699],{},[65,700],{"alt":67,"src":701},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1887.webp",[10,703,704],{},"②然後描述a，",[10,706,707],{},"就把FrameR沿着ai-1的方向移動到Zi上，",[10,709,710],{},[65,711],{"alt":67,"src":712},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1888.webp",[10,714,715],{},"③再描述theta",[10,717,718],{},"我們轉動frameR中的ZR，使其與ai方向相同，生成frameP（X動，Z不動，右手定則判斷Y）",[10,720,721],{},"這樣搞完之後，Xp的方向與Xi是相同的，Zp的方向也與Zi相同。",[10,723,724],{},[65,725],{"alt":67,"src":726},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1889.webp",[10,728,729],{},"④再描述d，也就是把FrameP往上拉，最後會與Framei重合。",[10,731,732],{},[65,733],{"alt":67,"src":734},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1890.webp",[10,736,737],{},"也就是從Framei - 1到Frame R，然後再到Frame Q，然後再到Frame P，最後到Frame i。一共四次轉化。",[10,739,740],{},"剛纔我們演示的是從Pi-1到Pi，現在我們要求的是從我們的Pi要到Pi-1，那麼就是倒着左乘，先乘Tp i接着往下以此類推。",[10,742,743],{},[65,744],{"alt":67,"src":745},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1891.webp",[10,747,748],{},"從連桿i到連桿i-1的座標系間的齊次變換矩陣T i-1 i=Rot(X，aplhai-1)Trans(ai-1,0,0)Rot(Z,thetai)Trans(0,0,di)",[10,750,751],{},[65,752],{"alt":67,"src":753},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1892.webp",[10,755,756],{},"左上角是3X3的旋轉矩陣，所以只有角度theta和alpha參數，",[10,758,759],{},"右上角3X1的矩陣，也就是frame i的原點相對於frame i - 1的原點的向量。然後是從frame i - 1去看。所以他是長度與角度的複合。",[10,761,762],{},"最後一行的1X4的矩陣，是0001是固定數不動的。",[10,764,765],{},[65,766],{"alt":67,"src":767},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1893.webp",[10,769,770],{},"對於連續的杆件，我們可以從base_link一直算到linkx，x想是幾就是幾。",[10,772,773],{},"比如說，現在有三個杆件，我們找到T23（3對2的），T12（1對2的）T01（地對1的），就可以找到T03（地對3的）",[10,775,776],{},[65,777],{"alt":67,"src":778},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1894.webp",[39,780,782],{"id":781},"example","Example",[784,785,787],"h6",{"id":786},"平面rrr類型","平面RRR類型",[10,789,790],{},[65,791],{"alt":67,"src":792},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1895.webp",[10,794,795],{},"①先找到關節轉軸Joint Axes",[10,797,798],{},"三個轉軸是三個紅點，是點的話，也就是出紙面的方向。（因爲，他是個平面的，所以說，每個Z軸之間的角度都是0，所以說Link Twist Alpha是0，所以Z的方向都隨便取，但是咱們這裏，假設關節都是逆時針旋轉，按右手螺旋定則來看，Z就都朝上）",[10,800,801],{},"②再找到公垂線Common Perpendiculars",[10,803,804],{},"但是由於Axis都是互相平行的，所以說，這個公垂線有無數多條，所以我們就在一個平面內表達即可。",[10,806,807],{},[65,808],{"alt":67,"src":809},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1896.webp",[10,811,812],{},"③下一步定義Zi向量（Z方向與轉軸方向相同所以也是向上。）",[10,814,815],{},[65,816],{"alt":67,"src":817},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1897.webp",[10,819,820],{},"④然後判斷中間的Xi向量",[10,822,823],{},[65,824],{"alt":67,"src":825},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1898.webp",[10,827,828],{},"⑤然後判斷中間的Yi向量",[10,830,831],{},[65,832],{"alt":67,"src":833},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1899.webp",[10,835,836],{},"⑥然後判斷頭和尾，也就是frame 0 和frame n",[10,838,839],{},[65,840],{"alt":67,"src":841},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1900.webp",[10,843,844],{},"其實，我們可以把frame0和frame1建的完全重合，就是讓alpha和theta都爲0，如圖並沒有重合，所以有theta大小。",[10,846,847],{},[65,848],{"alt":67,"src":849},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1901.webp",[10,851,852],{},"最後一個杆件也一樣，建議讓X3的方向和X2方向重合，這樣的話，theta和alpha都是0。",[10,854,855],{},[65,856],{"alt":67,"src":857},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1902.webp",[10,859,860],{},[65,861],{"alt":67,"src":862},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1903.webp",[10,864,865],{},"因爲每個軸都是平行的，所以alpha是0，由於ai都是同平面的，所以d也爲0.",[10,867,868],{},"因爲frame0和frame1重合，所以a0 = 0，然後a1 = L1，a2 = L2",[10,870,871],{},"由於全是RRR，所以，theta都是變化的角。",[10,873,874],{},"P點末端執行器，也可以算出，沿X3方向走，獲得P在frame n的表達，然後就可以推出P在frame 0中的表達了。",[10,876,877],{},"如圖的，P點在Frame3裏的座標是（L3，0，0）",[784,879,881],{"id":880},"rpr類型","RPR類型",[10,883,884],{},[65,885],{"alt":67,"src":886},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1904.webp",[10,888,889],{},"①先找到轉軸",[10,891,892],{},[65,893],{"alt":67,"src":894},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1905.webp",[10,896,897],{},"按右手螺旋來。",[10,899,900],{},"②找公垂線",[10,902,903],{},"因爲frame1的Z1和frame2的Z2相交，所以，沒有公垂線。",[10,905,906],{},"frame2的Z2和frame3的Z3重合，所以也沒有公垂線。",[10,908,909],{},"也就是說a全是0.",[10,911,912],{},[65,913],{"alt":67,"src":914},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1906.webp",[10,916,917],{},"③建立Zi向量",[10,919,920],{},[65,921],{"alt":67,"src":922},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1907.webp",[10,924,925],{},"Zi方向與轉軸方向相同。",[10,927,928],{},"④Xi的向量",[10,930,931],{},[65,932],{"alt":67,"src":933},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1908.webp",[10,935,936],{},"當Z1和Z2相交時，我們挑X的方向就挑和Z1和Z2都垂直的，有兩種方案，要麼X往前，要麼往後，如圖是往後的。",[10,938,939],{},"X1和X2必須平行，因爲是個P類型的關節",[10,941,942],{},"⑤Y軸",[10,944,945],{},[65,946],{"alt":67,"src":947},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1909.webp",[10,949,950],{},"⑥Frame 0和frame n",[10,952,953],{},[65,954],{"alt":67,"src":955},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1910.webp",[10,957,958],{},"frame 0 和frame1重合",[10,960,961],{},[65,962],{"alt":67,"src":963},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1911.webp",[10,965,966],{},"讓X3方向與X2方向相同",[10,968,969],{},[65,970],{"alt":67,"src":971},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1912.webp",[10,973,974],{},"如圖，驅動的關節參數分別是theta1，d2，theta3",[10,976,977],{},[65,978],{"alt":67,"src":979},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1913.webp",[10,981,982],{},"由於frame0和frame1重合，那麼alpha0 = 0，",[10,984,985],{},"從Z1到Z2的角，伸右手大拇指指向X1，然後四指與Z1到Z2方向相同，所以是逆時針，爲正值，所以是90度。",[10,987,988],{},"然後fame2到frame3，Z共線，所以alpha2=0",[10,990,991],{},"然後由於Zi有的相交，有的共線，所以a全是0",[10,993,994],{},"然後d1是0，因爲frame0和frame1重合，",[10,996,997],{},"d2是d2，d3是L2（d是X在Axis上的距離）",[10,999,1000],{},[65,1001],{"alt":67,"src":1002},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1914.webp",[10,1004,1005],{},"P點在Frame3上的座標爲（0，0，L3）",[10,1007,1008],{},[65,1009],{"alt":67,"src":1010},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1915.webp",[10,1012,1013],{},"其實Z方向有倆選擇，X也有倆選擇，一共四種選擇，選擇自己好理解，好計算的方案即可。",[784,1015,1017],{"id":1016},"中國臺積電晶圓機器人prrr類型4個自由度","中國臺積電晶圓機器人(PRRR類型4個自由度)",[10,1019,1020],{},[65,1021],{"alt":67,"src":1022},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1916.webp",[10,1024,1025,1028],{},[65,1026],{"alt":67,"src":1027},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1917.webp",[65,1029],{"alt":67,"src":1030},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1918.webp",[784,1032,1034],{"id":1033},"scara機器人rrrp類型4個自由度","SCARA機器人(RRRP類型4個自由度)",[10,1036,1037],{},[65,1038],{"alt":67,"src":1039},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1919.webp",[10,1041,1042],{},"該機器人最後一個關節是既可以R又可以P的，所以是個RP關節，既可以先算R也可以先算P。",[10,1044,1045,1048],{},[65,1046],{"alt":67,"src":1047},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1920.webp",[65,1049],{"alt":67,"src":1050},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1921.webp",[784,1052,1054],{"id":1053},"rp類型","RP類型",[10,1056,1057],{},[65,1058],{"alt":67,"src":1059},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1922.webp",[10,1061,1062],{},[65,1063],{"alt":67,"src":1064},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1923.webp",[10,1066,1067],{},"選D，因爲倆自由度，所以有倆驅動參數。",[10,1069,1070],{},[65,1071],{"alt":67,"src":1072},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1924.webp",[35,1074,1076],{"id":1075},"執行器關節與笛卡爾空間actuator-joint-and-cartesian-spaces","執行器關節與笛卡爾空間(Actuator Joint and Cartesian Spaces)",[10,1078,1079],{},[65,1080],{"alt":67,"src":1081},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1925.webp",[10,1083,1084],{},"我們這裏的驅動是theta1-3，",[10,1086,1087],{},"當我們知道theta1-3的值之後，我們就會知道P點在世界座標系上的表達。",[10,1089,1090],{},"這被叫做正向運動學（Forward Kinematics）。",[10,1092,1093],{},"由P點世界座標系反算關節角度，那麼叫逆向運動學（Inverse Kinematics）。",[10,1095,1096],{},[65,1097],{"alt":67,"src":1098},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1926.webp",[10,1100,1101],{},"Actuator Space就是驅動器空間，比如一個電機怎麼操控能轉joint space下的固定角（經過一系列轉換）。",[10,1103,1104],{},[65,1105],{"alt":67,"src":1106},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1927.webp",[10,1108,1109],{},[65,1110],{"alt":67,"src":1111},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1928.webp",[10,1113,1114,1117],{},[65,1115],{"alt":67,"src":1116},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1929.webp",[65,1118],{"alt":67,"src":1119},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1930.webp",[10,1121,1122,1125],{},[65,1123],{"alt":67,"src":1124},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1931.webp",[65,1126],{"alt":67,"src":1127},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1932.webp",[10,1129,1130,1133],{},[65,1131],{"alt":67,"src":1132},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1933.webp",[65,1134],{"alt":67,"src":1135},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1934.webp",[10,1137,1138],{},"有轉動有移動的部分（所以需要兩個電機來達到這兩個自由度）",[10,1140,1141,1144],{},[65,1142],{"alt":67,"src":1143},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1935.webp",[65,1145],{"alt":67,"src":1146},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1936.webp",[10,1148,1149],{},"同步帶機構使其旋轉。（第一個電機）",[10,1151,1152],{},"齒輪齒條機構達到上下移動。（第二個電機）",[10,1154,1155],{},"但是，這兩個並不是獨立的，因爲是同軸驅動的，所以有些負荷。",[10,1157,1158],{},[65,1159],{"alt":67,"src":1160},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1937.webp",[10,1162,1163],{},"兩個轉動變成一個轉動一個移動。",[35,1165,1166],{"id":1166},"正運動學",[10,1168,1169,1172],{},[47,1170,1171],{},"定義"," ：已知機器人各個關節（或輪子等驅動單元）的運動參數（如角度、位移、速度等），計算末端執行器的位置和姿態。",[10,1174,1175],{},[65,1176],{"alt":67,"src":1177},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1938.webp",[10,1179,1180],{},[65,1181],{"alt":67,"src":1182},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1939.webp",[10,1184,1185],{},"ads=dv\u002Fdt * ds = ds\u002Fdt *dv = vdv",[10,1187,1188],{},[65,1189],{"alt":67,"src":1190},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1940.webp",[10,1192,1193],{},"牛頓第二定律，能量守恆，衝量與動量",[10,1195,1196],{},[65,1197],{"alt":67,"src":1198},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1941.webp",[10,1200,1201],{},"Wp就是P點在世界座標系下的座標",[10,1203,1204],{},[65,1205],{"alt":67,"src":1206},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1942.webp",[10,1208,1209],{},[65,1210],{"alt":67,"src":1211},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1943.webp",[10,1213,1214],{},[65,1215],{"alt":67,"src":1216},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1944.webp",[10,1218,1219],{},"可以根據該公式，得知末端執行器在世界座標系中的座標。",[35,1221,1222],{"id":1222},"逆運動學",[10,1224,1225,1227],{},[47,1226,1171],{}," ：已知末端執行器的目標位置和姿態，計算需要讓各個關節（或輪子等驅動單元）運動到什麼角度或速度才能達到該目標。",[10,1229,1230,1233],{},[65,1231],{"alt":67,"src":1232},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1945.webp",[65,1234],{"alt":67,"src":1235},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1946.webp",[10,1237,1238],{},"先知道末端執行器的某個點P在世界座標系中的表達，也就是給出Pw或者末端執行器某個點上的frameH，",[10,1240,1241],{},"通過Pw求出theta。",[10,1243,1244],{},[65,1245],{"alt":67,"src":1246},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1947.webp",[10,1248,1249],{},"這樣手臂就有6個未知數",[10,1251,1252],{},[65,1253],{"alt":67,"src":1254},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1948.webp",[10,1256,1257],{},"16個數字，轉動的部分佔了9個數字，也就是左上角的3X3的旋轉矩陣，然後右上角3X1的向量表示相對於原點的位移量是什麼。（也就是frame6的原點相對於frame0的原點位移量是什麼）",[10,1259,1260],{},"下面的0001是整數，固定的，不變的。",[10,1262,1263],{},[65,1264],{"alt":67,"src":1265},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1949.webp",[10,1267,1268],{},"這個旋轉矩陣裏，有3個長度條件，3個互相垂直條件，所以9個數字裏，就剩3個自由度。（也就是向量長度爲1限制3個，向量兩兩垂直限制3個，所以是平移矩陣，3個自由度）",[10,1270,1271],{},"然後右上角3X1的向量中，相對原點的座標X,Y,Z,那麼就是3個自由度。",[10,1273,1274],{},"所以總共有6個自由度。",[10,1276,1277],{},"這12個方程式就是除了低下的0001，上面的參數都可以列一個式子。我們要做的，就是從12個式子中求出6個未知數。",[10,1279,1280],{},[65,1281],{"alt":67,"src":1282},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1950.webp",[10,1284,1285],{},"靈活工作空間Dexterous workspace是可達工作空間Reachable workspace的子集。",[10,1287,1288],{},[65,1289],{"alt":67,"src":1290},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1951.webp",[10,1292,1293],{},"它的可達工作空間是個圓環。",[10,1295,1296],{},"對於某個點，在這個例子中，只有1種或2種姿態可以達到。這個機器人只有RWS，沒有DWS。",[10,1298,1299],{},[65,1300],{"alt":67,"src":1301},"https:\u002F\u002Fcdn.tungchiahui.cn\u002Ftungwebsite\u002Fassets\u002Fimages\u002F2023\u002F12\u002F30\u002Fimage1952.webp",[10,1303,1304],{},"手臂一樣長的話，那樣工作空間就是個圓了，",[10,1306,1307],{},"有一個點就是DWS,就是原點，當手臂內折，那麼可以以360度任意一個角度來達到這個點，所以該點就是DWS。",{"title":67,"searchDepth":117,"depth":117,"links":1309},[1310],{"id":21,"depth":230,"text":21},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1600-moveit2-gong-ye-ji-qi-ren-ji-xie-bi",0,"1600","2023-12-30","wiki\u002F2023-12-30-ros2-tutorial","zh-hant:2023-12-30-ros2-tutorial","\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial","Ros2 Tutorial","md","wiki\u002F2023-12-30-ros2-tutorial\u002F1600-Moveit2工业机器人机械臂",false,true,null,"zh-Hant","zh-hant",{},{"title":5,"description":15},"\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1600-moveit2-gong-ye-ji-qi-ren-ji-xie-bi","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1600-Moveit2工业机器人机械臂",1,"ZhHlRxVkweeiJyirEj2o-8EHn23MBYqvyVDtlvbINqI",[1333,1338,1343,1348,1353,1358,1363,1368,1373,1378,1383,1388,1393,1398,1403,1408,1413,1418,1423,1428,1433,1438,1443,1448,1453,1458,1462,1467,1471,1476,1481,1486,1491,1496,1501,1506,1511,1516,1521,1526,1531,1536,1541,1546,1551,1556,1561,1566,1571,1576,1581,1586,1591,1596,1601,1602,1607,1612,1617,1622],{"path":1334,"stem":1335,"title":1336,"date":1314,"chapterOrder":1337,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0100-ros2-jie-shao","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0100-ROS2介绍","ROS2介紹","0100",{"path":1339,"stem":1340,"title":1341,"date":1314,"chapterOrder":1342,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0200-ru-men-cao-zuo","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0200-入门操作","入門操作","0200",{"path":1344,"stem":1345,"title":1346,"date":1314,"chapterOrder":1347,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0300-gong-zuo-kong-jian-yu-gong-neng-bao","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0300-工作空间与功能包","工作空間與功能包","0300",{"path":1349,"stem":1350,"title":1351,"date":1314,"chapterOrder":1352,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0400-si-da-tong-xin","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0400-四大通信","四大通信","0400",{"path":1354,"stem":1355,"title":1356,"date":1314,"chapterOrder":1357,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0500-ros2-qi-ta-tong-xin-ji-zhi","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0500-ROS2其他通信机制","ROS2其他通信機制","0500",{"path":1359,"stem":1360,"title":1361,"date":1314,"chapterOrder":1362,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0600-launch","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0600-Launch","Launch","0600",{"path":1364,"stem":1365,"title":1366,"date":1314,"chapterOrder":1367,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0700-hui-su-rosbag2","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0700-回溯rosbag2","回溯rosbag2","0700",{"path":1369,"stem":1370,"title":1371,"date":1314,"chapterOrder":1372,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0800-zuo-biao-bian-huan-tf","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0800-坐标变换TF","座標變換TF","0800",{"path":1374,"stem":1375,"title":1376,"date":1314,"chapterOrder":1377,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0900-ke-shi-hua-ping-tai-rviz2-yu-urdf-jian-mo-yu-yan","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F0900-可视化平台RVIZ2与URDF建模语言","可視化平臺RVIZ2與URDF建模語言","0900",{"path":1379,"stem":1380,"title":1381,"date":1314,"chapterOrder":1382,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1000-stage-ros2-fang-zhen-ping-tai","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1000-Stage_Ros2仿真平台","Stage_Ros2仿真平臺","1000",{"path":1384,"stem":1385,"title":1386,"date":1314,"chapterOrder":1387,"chapterDepth":1330,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1100-0100-gazeboclassic","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1100-0100-GazeboClassic","Gezebo Classic","1100-0100",{"path":1389,"stem":1390,"title":1391,"date":1314,"chapterOrder":1392,"chapterDepth":1330,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1100-0200-ignitiongazebo","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1100-0200-IgnitionGazebo","Ignition Gazebo（Gazebo Fortress）","1100-0200",{"path":1394,"stem":1395,"title":1396,"date":1314,"chapterOrder":1397,"chapterDepth":1330,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1100-0300-gazebosim","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1100-0300-GazeboSim","Gz Sim（Gazebo Harmonic）","1100-0300",{"path":1399,"stem":1400,"title":1401,"date":1314,"chapterOrder":1402,"chapterDepth":1330,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1100-0400-igngz2gzsim","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1100-0400-Igngz2gzsim","將Ign Gazebo遷移至Gz Sim","1100-0400",{"path":1404,"stem":1405,"title":1406,"date":1314,"chapterOrder":1407,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1100-gezebo-fang-zhen-ping-tai","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1100-Gezebo仿真平台","Gezebo仿真平臺","1100",{"path":1409,"stem":1410,"title":1411,"date":1314,"chapterOrder":1412,"chapterDepth":1330,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-0100-humble-ban-ben","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-0100-Humble版本","Humble導航仿真","1200-0100",{"path":1414,"stem":1415,"title":1416,"date":1314,"chapterOrder":1417,"chapterDepth":1330,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-0200-jazzy-ban-ben","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-0200-Jazzy版本","Jazzy導航仿真","1200-0200",{"path":1419,"stem":1420,"title":1421,"date":1314,"chapterOrder":1422,"chapterDepth":1330,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-0300-humble2jazzy","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-0300-Humble2Jazzy","Humble與Jazzy導航的差異","1200-0300",{"path":1424,"stem":1425,"title":1426,"date":1314,"chapterOrder":1427,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-ji-qi-ren-dao-hang-navigation2-fang-zhen-pian","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1200-机器人导航Navigation2(仿真篇)","機器人導航Navigation2(仿真篇)","1200",{"path":1429,"stem":1430,"title":1431,"date":1314,"chapterOrder":1432,"chapterDepth":117,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0100-0100-boost-aiso","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0100-0100-Boost.Aiso","Boost.Asio庫","1300-0100-0100",{"path":1434,"stem":1435,"title":1436,"date":1314,"chapterOrder":1437,"chapterDepth":117,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0100-0200-ros2-serial-driver","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0100-0200-ros2_serial_driver","ROS2 Serial Driver庫","1300-0100-0200",{"path":1439,"stem":1440,"title":1441,"date":1314,"chapterOrder":1442,"chapterDepth":1330,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0100-chuan-kou-tong-xin","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0100-串口通信","UART串口通信","1300-0100",{"path":1444,"stem":1445,"title":1446,"date":1314,"chapterOrder":1447,"chapterDepth":117,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0200-0100-socketcan","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0200-0100-socketcan","SocketCAN","1300-0200-0100",{"path":1449,"stem":1450,"title":1451,"date":1314,"chapterOrder":1452,"chapterDepth":117,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0200-0200-ros2-socketcan","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0200-0200-ros2_socketcan","ROS2_SocketCAN","1300-0200-0200",{"path":1454,"stem":1455,"title":1456,"date":1314,"chapterOrder":1457,"chapterDepth":1330,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0200-can-tong-xin","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0200-CAN通信","CAN通信","1300-0200",{"path":1459,"stem":1460,"title":1431,"date":1314,"chapterOrder":1461,"chapterDepth":117,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0300-0100-boost-aiso","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0300-0100-Boost.Aiso","1300-0300-0100",{"path":1463,"stem":1464,"title":1465,"date":1314,"chapterOrder":1466,"chapterDepth":1330,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0300-tcp-tong-xin","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0300-TCP通信","TCP通信","1300-0300",{"path":1468,"stem":1469,"title":1431,"date":1314,"chapterOrder":1470,"chapterDepth":117,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0400-0100-boost-aiso","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0400-0100-Boost.Aiso","1300-0400-0100",{"path":1472,"stem":1473,"title":1474,"date":1314,"chapterOrder":1475,"chapterDepth":1330,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0400-udp-tong-xin","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-0400-UDP通信","UDP通信","1300-0400",{"path":1477,"stem":1478,"title":1479,"date":1314,"chapterOrder":1480,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-linux-ying-jian-tong-xin","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1300-Linux硬件通信","Linux硬件通信","1300",{"path":1482,"stem":1483,"title":1484,"date":1314,"chapterOrder":1485,"chapterDepth":1330,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0100-ji-qi-ren-zu-cheng","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0100-机器人组成","機器人組成","1400-0100",{"path":1487,"stem":1488,"title":1489,"date":1314,"chapterOrder":1490,"chapterDepth":117,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0200-0100-yuan-cheng-kai-fa-ssh","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0200-0100-远程开发SSH","遠程開發SSH","1400-0200-0100",{"path":1492,"stem":1493,"title":1494,"date":1314,"chapterOrder":1495,"chapterDepth":117,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0200-0200-yuan-cheng-fang-wen-zhuo-mian","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0200-0200-远程访问桌面","遠程訪問桌面","1400-0200-0200",{"path":1497,"stem":1498,"title":1499,"date":1314,"chapterOrder":1500,"chapterDepth":1330,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0200-gong-kong-ji-zhi-yuan-cheng-kai-fa-huan-jing","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0200-工控机之远程开发环境","工控機之遠程開發環境","1400-0200",{"path":1502,"stem":1503,"title":1504,"date":1314,"chapterOrder":1505,"chapterDepth":1330,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0300-gong-kong-ji-zhi-wai-jie-usb-she-bei","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0300-工控机之外接USB设备","工控機之外接USB設備","1400-0300",{"path":1507,"stem":1508,"title":1509,"date":1314,"chapterOrder":1510,"chapterDepth":1330,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0400-fen-bu-shi-da-jian","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0400-分布式搭建","分佈式搭建","1400-0400",{"path":1512,"stem":1513,"title":1514,"date":1314,"chapterOrder":1515,"chapterDepth":1330,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0500-you-hua-ri-zhi","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0500-优化日志","優化日誌","1400-0500",{"path":1517,"stem":1518,"title":1519,"date":1314,"chapterOrder":1520,"chapterDepth":117,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0100-li-cheng-ji-odom","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0100-里程计Odom","里程計Odom","1400-0600-0100",{"path":1522,"stem":1523,"title":1524,"date":1314,"chapterOrder":1525,"chapterDepth":117,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0200-guan-xing-ji-imu","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0200-惯性计IMU","慣性計IMU","1400-0600-0200",{"path":1527,"stem":1528,"title":1529,"date":1314,"chapterOrder":1530,"chapterDepth":117,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0300-ji-guang-lei-da-lidar","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0300-激光雷达LiDAR","激光雷達LiDAR","1400-0600-0300",{"path":1532,"stem":1533,"title":1534,"date":1314,"chapterOrder":1535,"chapterDepth":117,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0400-xiang-ji-camera","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0400-相机Camera","相機Camera","1400-0600-0400",{"path":1537,"stem":1538,"title":1539,"date":1314,"chapterOrder":1540,"chapterDepth":117,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0500-quan-qiu-ding-wei-gnss","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0500-全球定位GNSS","全球定位GNSS","1400-0600-0500",{"path":1542,"stem":1543,"title":1544,"date":1314,"chapterOrder":1545,"chapterDepth":117,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0600-shou-bing-joy","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0600-手柄joy","手柄JOY","1400-0600-0600",{"path":1547,"stem":1548,"title":1549,"date":1314,"chapterOrder":1550,"chapterDepth":117,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0700-jian-pan-kong-zhi-jie-dian","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-0700-键盘控制节点","鍵盤控制節點","1400-0600-0700",{"path":1552,"stem":1553,"title":1554,"date":1314,"chapterOrder":1555,"chapterDepth":1330,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-ying-jian-ping-tai","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0600-硬件平台","硬件平臺","1400-0600",{"path":1557,"stem":1558,"title":1559,"date":1314,"chapterOrder":1560,"chapterDepth":1330,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0700-zuo-biao-xi-yu-hua-ti-guan-xi","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0700-坐标系与话题关系","座標系與話題關係","1400-0700",{"path":1562,"stem":1563,"title":1564,"date":1314,"chapterOrder":1565,"chapterDepth":230,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0100-0100-lun-shi-li-cheng-ji-biao-ding","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0100-0100-轮式里程计标定","輪式里程計標定","1400-0800-0100-0100",{"path":1567,"stem":1568,"title":1569,"date":1314,"chapterOrder":1570,"chapterDepth":230,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0100-0200-lun-shi-li-cheng-ji-yu-imu-rong-he","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0100-0200-轮式里程计与IMU融合","輪式里程計與IMU融合","1400-0800-0100-0200",{"path":1572,"stem":1573,"title":1574,"date":1314,"chapterOrder":1575,"chapterDepth":117,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0100-lun-shi-li-cheng-ji-biao-ding-yu-rong-he","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0100-轮式里程计标定与融合","輪式里程計標定與融合","1400-0800-0100",{"path":1577,"stem":1578,"title":1579,"date":1314,"chapterOrder":1580,"chapterDepth":117,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0200-ji-guang-lei-da-gong-ju","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0200-激光雷达工具","激光雷達工具","1400-0800-0200",{"path":1582,"stem":1583,"title":1584,"date":1314,"chapterOrder":1585,"chapterDepth":117,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0300-xiang-ji-shi-yong-jin-jie","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-0300-相机使用进阶","相機使用進階","1400-0800-0300",{"path":1587,"stem":1588,"title":1589,"date":1314,"chapterOrder":1590,"chapterDepth":1330,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-ying-jian-ping-tai-jin-jie","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-0800-硬件平台进阶","硬件平臺進階","1400-0800",{"path":1592,"stem":1593,"title":1594,"date":1314,"chapterOrder":1595,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-ji-qi-ren-ying-jian","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1400-机器人硬件","機器人硬件","1400",{"path":1597,"stem":1598,"title":1599,"date":1314,"chapterOrder":1600,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1500-ros2-control","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1500-ROS2_Control","ROS2_Control","1500",{"path":1311,"stem":1329,"title":5,"date":1314,"chapterOrder":1313,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},{"path":1603,"stem":1604,"title":1605,"date":1314,"chapterOrder":1606,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1700-ji-qi-ren-dao-hang-navigation2-shi-ti-pian","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1700-机器人导航Navigation2(实体篇)","機器人導航Navigation2(實體篇)","1700",{"path":1608,"stem":1609,"title":1610,"date":1314,"chapterOrder":1611,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1800-microros","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1800-MicroROS","MicroROS","1800",{"path":1613,"stem":1614,"title":1615,"date":1314,"chapterOrder":1616,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1900-webots-fang-zhen-ping-tai","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1900-Webots仿真平台","Webots仿真平臺","1900",{"path":1618,"stem":1619,"title":1620,"date":1314,"chapterOrder":1621,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1321},"\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F2000-opencv","_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F2000-OpenCV","OpenCV","2000",{"path":1317,"stem":1623,"title":1624,"date":1314,"chapterOrder":1323,"chapterDepth":1312,"docKey":1316,"docRoot":1317,"docTitle":1318,"isWikiDoc":1322,"isWikiIndex":1322},"_i18n\u002Fzh-hant\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002Findex","ROS2機器人操作系統教程",{"variants":1626},[1627,1630,1631,1634,1637],{"path":1628,"localeSlug":1629,"i18nKey":1320},"\u002Fen-us\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1600-moveit2-gong-ye-ji-qi-ren-ji-xie-bi","en-us",{"path":1311,"localeSlug":1325,"i18nKey":1320},{"path":1632,"localeSlug":1633,"i18nKey":1320},"\u002Fzh-hk\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1600-moveit2-gong-ye-ji-qi-ren-ji-xie-bi","zh-hk",{"path":1635,"localeSlug":1636,"i18nKey":1320},"\u002Fzh-tw\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1600-moveit2-gong-ye-ji-qi-ren-ji-xie-bi","zh-tw",{"path":1638,"localeSlug":1639,"i18nKey":1320},"\u002Fzh-cn\u002Fwiki\u002F2023-12-30-ros2-tutorial\u002F1600-moveit2-gong-ye-ji-qi-ren-ji-xie-bi","zh-cn",[1628,1328,1311,1328,1632,1328,1635,1328,1638,1328],1784646803181]