Skip to content

Latest commit

 

History

History
94 lines (66 loc) · 3.87 KB

about_hexapod_param.md

File metadata and controls

94 lines (66 loc) · 3.87 KB

HexapodParamについて

構造体HexapodParamは,脚ロボットのパラメータを保持しており, デフォルト値はPhantomX Mk-2のパラメータを持っています.

目次

パラメータの説明

class HexapodParam:
    coxa_length: float = 52.0     # [mm]
    femur_length: float = 66.0    # [mm]
    tibia_length: float = 130.0   # [mm]
    theta1_max: float = math.radians(81.0)   # [rad]
    theta1_min: float = math.radians(-81.0)  # [rad]
    theta2_max: float = math.radians(99.0)   # [rad]
    theta2_min: float = math.radians(-105)   # [rad]
    theta3_max: float = math.radians(25.5)   # [rad]
    theta3_min: float = math.radians(-145.0) # [rad]
    torque_max: float = 1800.0    # [N*mm] ストールトルク(停動トルク) 

    approx_min_radius: float = 140.0      # [mm]

脚の長さ

HexapodParamでは,各リンクの名前をPhantomXに倣い,coxa, femur, tibiaとしています. また,パラメータはPhantomX Mk-2のリンクの長さをデフォルト値としています.

coxa_lengthは,脚の第1関節から第2関節までの長さを指定します. 単位はmmで,デフォルト値は52.0mmです.

femur_lengthは,脚の第2関節から第3関節までの長さを指定します. 単位はmmで,デフォルト値は66.0mmです.

tibia_lengthは,脚の第3関節から脚先までの長さを指定します. 単位はmmで,デフォルト値は130.0mmです.

すべてのパラメータは0以上の値を指定してください.

間接の可動範囲

関節の角度を表す変数はcoxa, femur, tibiaの順にtheta1, theta2, theta3としています.

theta1は座標軸に対して右ねじの方向を正としています. theta2 theta3は,下図における反時計回りを正としています.

theta1_max theta1_minは,第1関節の最大・最小角度を指定します. 単位はradで,デフォルト値はそれぞれ81.0度と-81.0度です. このプログラムでは2次元平面上に表示するため,実質的にこの値は無意味なものになります.

theta2_max theta2_minは,第2関節の最大・最小角度を指定します.

theta3_max theta3_minは,第3関節の最大・最小角度を指定します.

すべて-πからπの範囲で指定してください.また,最小を最大より大きく指定しないでください.

その他のパラメータ

torque_maxは,サーボモータのストールトルク(停動トルク)を指定します. デフォルト値はサーボモータ"AX-18A"のストールトルクです. 単位が[N*mm]となっていることに注意してください.

approx_min_radiusは,近似された可動範囲のグラフを表示する際の最小半径を指定します. デフォルト値は140.0mmです.

サンプル

以下の図は,coxa_length=0,0femur_length=100.0tibia_length=100.0のパラメータで表示したものです. また,可動域をtheta2_max=100.0theta2_min=-100.0theta3_max=100.0theta3_min=-100.0としています.

sample_main3.pyでは,HexapodParamを用いて脚の可動域を表示しています. 詳細はそちらを参照してください.