Try   HackMD

Free Body Diagram of Quadruped Robots

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

Torque控制(for stance legs)

Note:以下粗體均為向量

[I3I3[p1pc]×[p4pc]×]AFleg=[m(p¨c,d+g)IG\boldsymbolω˙b,d]b,(1)

  • 其中
    b
    項中的
    mg
    為feedforward項,而
    mp¨c,d
    為feedback項,定義如下
    [p¨c,d\boldsymbolω˙b,d]=[Kp,p(pc,dpc)+Kd,p(p˙c,dp˙c)Kp,ωeR+Kd,ω(\boldsymbolωb,d\boldsymbolω)](2)

    pc
    為質心位置,
    pc,d
    為理想的質心位置(可參考此連結)定義如下:
    pc,d=[IrBxd,IrByd,hg+hH(ϕ),0,0,0]T,
    p˙c,d=[vBxd,vByd,0,0,0,ψ˙d]T

    \boldsymbolω
    為角速度,
    \boldsymbolωb,d
    為身體的理想角速度,
    Fleg
    為各隻腳確保穩定性所需的作用力(從地面提供,又稱地面反作用力,包含正向力+摩擦力),
    eR
    定義為
    eR=12(RdTRRTRd),
    R
    Rd
    分別為身體姿態、理想身體姿態。再透過Jacobian matrix,可轉換出的每軸所需力矩。
    τ=JTFleg(3),
    where
    Fleg=[Fleg,1,Fleg,2,...,Fleg,n],
    where
    n
    is the number of stance legs. Vee map (
    ) is inverse of skew operator defined by the relationship
    M=V,
    where
    V=[xyz]
    ,
    M=[0zyz0xyx0]

靜態補償力(重力補償)

如果前述公式所有微分像都為零,可算出靜態下讓機器人穩定條件下,每隻腳所需的力。

[I3I3[p1pc]×[p4pc]×]AFleg=[mg+mKp,p(pc,dpc)Kp,ωeR]b(4),
並可接著算出每軸所需力矩為
τ=JTFleg,(5)

前饋力矩(feedforward重力補償)

如果前述公式只考慮重力,可算出讓機器人穩定條件下,每隻腳所需的力和每軸的力矩。

[I3I3[p1pc]×[p4pc]×]AFleg=[mg0]b,
並可接著算出每軸所需力矩為
τf=JTFleg,
=JT(Ab),

馬達角度控制(for the swing legs)

τi=Kp(qd,iqi)+Kd(q˙d,iq˙)

研究方法之泛化性

演算法

底層控制器

  • 上述的演算法不管是(1)-(3)或是(4)、(5)式都已經考慮不同大小機器人的尺寸(
    pipc
    )和質量(m),且PD gain都為無因次,因此更換機器人不需大量更動程式碼。

上層控制器

  • 在質心軌跡規劃(QP-based COG Trajectory)演算法中,給定跨步的大小(step length),可算出該限制下的質心軌跡,機器人尺寸越大(
    r
    ),步伐可以給的越大(只要不發生joint limit或是Jacobian sigularity)。
  • 質心位移、速度、加速度基本上跟機器人尺寸越大(
    r
    )成正比。
  • 結論:程式只需改參數(跨步的大小),其餘不變。

硬體規格:

硬體規格會跟機器狗大小比例(

r)息息相關,解釋如下。

  • 馬達所需torque會是跟機器狗大小比例(
    r
    )成4次方倍(torque
    r4
    ),馬達所需功率為5次方倍(power
    r5
    )。
  • 所需電池容量也為5次方倍(baterry capacity
    r5
    )。
  • 不同腳在地上,馬達torque不同,例如swing leg跟stance lag的torque需求落差很大,因此腳是否落地的偵測想當重要。宇樹機器狗的腳底具有壓力感測器,增加是否落地的判斷機率。可透過sensor fusion增加判斷機率,參考Leg Phase detection.

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

以下是一份 機器狗設計的標準作業流程(SOP),涵蓋從需求分析到最終測試的完整開發流程。


四足機器人規格預估

針對根據數學模型預估不同尺寸的四足機器人之零件規格,可以從 運動學、動力學、結構強度、電機需求、電池容量等數學模型 進行推導,確保不同尺寸機器狗的零件規格能夠符合性能需求。以下是詳細方法:


1. 機械結構與尺寸縮放規則

不同尺寸的機器狗,其機械結構可以參照「幾何相似性定律(Geometric Similarity Laws)」,進行比例縮放。但機械強度和動力需求不會線性變化,需要考慮尺度效應(Scaling Effect),其影響如下:

  • 長度 L 縮放比例:
    k
  • 體積 V 縮放比例:
    k3
  • 重量 W 縮放比例:
    k3
    (假設相同材質)
  • 關節扭矩需求縮放:
    k4
    (與重量和長度相關)
  • 電機功率需求縮放:
    k5
    (與扭矩與速度相關)

範例:
若機器狗尺寸從 0.5m 增加到 1.0m,則:

  • 體積變為 8 倍
    23
  • 重量變為 8 倍
    23
  • 扭矩需求變為 16 倍
    24
  • 電機功率需求變為 32 倍
    25

這代表若要放大尺寸,零件(馬達、電池、材料強度)必須按這些非線性比例增強,否則會影響穩定性。


2. 動力學與電機選擇

電機的選擇取決於關節所需的扭矩 (

τ) 及功率 (
P
) 需求:

2.1 扭矩計算

關節所需扭矩可根據牛頓-歐拉方程計算:

τ=Iα+mgr
其中:

  • I
    :關節的慣性矩
  • α
    :角加速度
  • m
    :負載質量
  • g
    :重力加速度
  • r
    :關節長度

如果機器狗的尺寸變為

k 倍,則:
τ=k4τ

這表示尺寸增加會使扭矩需求增大四次方,因此應選擇更大扭矩的伺服馬達或使用減速比提升輸出扭矩。

2.2 電機功率需求

馬達功率需求:

P=τω
其中:

  • (
    ω
    ):馬達轉速

假設機器狗速度 (

v ) 按比例 (
k
) 增加,則:
P=k5P

因此,機器狗尺寸放大 2 倍時,所需馬達功率會增加 32 倍,電池容量與散熱設計必須同步提升。


3. 電池容量與續航時間

電池需求可用功率與時間關係計算:

E=P×T
其中:

  • (
    E
    ):電池容量(Wh)
  • (
    P
    ):平均功率消耗(W)
  • (
    T
    ):續航時間(h)

若尺寸增為 (

k ) 倍,則:

  • 馬達功率 (
    P=k5P
    )
  • 若希望續航時間 (
    T
    ) 不變,則電池容量 (
    E=k5E
    )

例如:

  • 小型機器狗 (0.5m, 5kg),功率需求 50W,使用 100Wh 電池,續航時間 2 小時
  • 若尺寸變成 1m, 40kg,則功率需求變成 1600W,若要維持 2 小時續航,則需 3200Wh 電池

這表示大型機器狗需要更高能量密度的電池,如 高壓鋰電池


4. 感測器與運算資源

感測器與運算能力需求會隨機器狗大小變化:

  • IMU/陀螺儀:不受尺寸影響,但要確保精度提高
  • 視覺感測器: 若機器狗視角高度增加,則鏡頭分辨率與視野範圍要增加
  • LIDAR/雷達: 大型機器狗應用於更複雜環境時,LIDAR 需更高解析度。
  • 嵌入式運算: AI 推理(SLAM、步態控制)需求增加,可選擇 NVIDIA Jetson Orin / Xilinx FPGA

5. 機械結構與材料強度計算

較大機器狗需使用更高強度材料:

  • 骨架強度分析(有限元素分析 FEA)

    • 計算應力 (
      σ=FA
      )
    • 若尺寸變為 (
      k
      ) 倍,則結構受力增為 (
      k3
      ),需選擇高強度輕量材料(如碳纖維、鈦合金)。
  • 足部結構與減震設計

    • 增加減震層與避震機構(彈簧阻尼系統)。

6. 總結與建議

  • 關鍵設計原則

    1. 幾何縮放非線性影響 → 尺寸變 (
      k
      ) 倍,動力需求 (
      k5
      ) 倍。
    2. 動力學計算 → 確保關節扭矩足夠(
      k4
      倍增長)。
    3. 電池續航 → 尺寸變 (
      k
      ) 倍,需 (
      k5
      ) 倍能量。
    4. 感測器與控制 → 根據應用場景優化 AI 算法與傳感器。
  • 不同尺寸機器狗的設計對應

    尺寸 扭矩需求 馬達功率 電池容量
    0.5m 5Nm 50W 100Wh
    1.0m 80Nm 1600W 3200Wh
    1.5m 400Nm 8000W 16000Wh

其他設計標準作業流程(SOP)

1. 需求分析

1.1 確定設計目標

  • 應用場景(如:巡邏、救援、娛樂、教育)
  • 移動方式(四足步行、跳躍、跑步)
  • 負載能力(是否需要夾取物品、運載設備)
  • 自主性(遙控 vs. AI 自主運行)

1.2 確定性能需求

  • 移動速度、穩定性、續航時間
  • 適應地形(平地、樓梯、崎嶇地形)
  • 通訊方式(Wi-Fi、5G、藍牙)
  • 感測器需求(相機、雷達、IMU、壓力感測器)

2. 機構與結構設計

2.1 設計機械結構

  • 骨架材料選擇(鋁合金、碳纖維、塑膠)
  • 關節數量與自由度(DOF)
  • 伺服馬達或驅動系統選擇

2.2 模擬與優化

  • 使用 SolidWorks / CATIA / Fusion 360 進行 3D 建模
  • 進行剛性與耐久性分析(有限元素分析 FEA)
  • 計算機器狗在不同動作下的受力與能耗

3. 電子與感測系統

  • 運動控制器選擇(如 STM32、NVIDIA Jetson、ROS 控制板)
  • 馬達驅動器與電源管理
  • 感測器選擇
    • IMU(慣性測量單元)
    • 力/力矩感測器(足端壓力感測)
    • 深度相機或 LiDAR(環境感知)
    • GPS / SLAM(定位與導航)
  • 通訊協議
    • 內部通訊(如 CAN Bus、SPI、I2C)
    • 遠端控制(如 Wi-Fi、BLE、5G)

4. 運動學與動力學分析

  • 正運動學 (FK) / 逆運動學 (IK)
  • 運動規劃與控制
    • 基於 ZMP(零力矩點)控制
    • 基於 MPC(模型預測控制)
    • 模仿生物學控制(如 CPG 中樞模式產生器)
  • 足端接觸動力學
    • 地面反作用力 (GRF) 模擬
    • 足端滑移與摩擦分析

5. 步態規劃與控制

  • 靜態步態(Static Gait)
    • 三足支撐步態(Tripod Gait)
    • 爬行步態(Crawling)
  • 動態步態(Dynamic Gait)
    • 小跑步 (Trot)
    • 跳躍 (Bounding)
    • 跑步 (Galloping)
  • 步態轉換與穩定性分析
  • 實時控制
    • 足端力回饋
    • 重心 (CoM) 調整
    • 落腳點 (Foot Placement) 計算

6. 軟體架構與高階行為開發

  • 嵌入式控制 (Firmware)
    • 實時控制迴圈(低延遲驅動馬達)
    • 傳感器數據融合(EKF / UKF)
  • 行為層 (Behavior Layer)
    • 適應性行走(足端避障、自適應步態)
    • 強化學習 / 模仿學習控制
  • 導航與感知
    • VSLAM(視覺 SLAM)與 LiDAR SLAM
    • AI 目標識別(透過 CNN / Transformer)
    • 路徑規劃(A*、Dijkstra、RRT)

7. 測試與調試

  • 硬體測試
    • 馬達驅動與關節靈活度測試
    • 負載與扭矩測試
    • 電池壽命與散熱測試
  • 運動測試
    • 運動學與動力學誤差分析
    • 步態穩定性測試
    • 適應不同地形測試(沙地、草地、斜坡、樓梯)
  • 自動化測試
    • 模擬環境測試(如 Mujoco、Gazebo)
    • 強化學習訓練與策略驗證

結論

四足機器人的設計是一個跨領域的工程問題,涉及機械、電子、控制與 AI 算法等多方面知識。透過系統性的 SOP 流程,可以高效開發穩定且高性能的四足機器人,應用於各種實際場景,如巡邏、搜索救援、物流運輸及軍事應用。