関節制御

class akari_client.joint_manager.JointManager(joint_controllers)[ソース]
パラメータ

joint_controllers (Sequence[RevoluteJointController]) --

get_joint_names()[ソース]

関節名を取得する。

戻り値

AKARIの全関節名のlist

戻り値の型

List[str]

get_joint_limits()[ソース]

サーボの位置リミットを取得する。

戻り値

関節名と位置リミット(min,max)[rad]のDict

戻り値の型

Dict[str, PositionLimit]

サンプル

>>> from akari_client import AkariClient
>>> akari = AkariClient()
>>> joints = akari.joints
>>> print(joints.get_joint_limits())
# 各軸のリミット値が出力される
set_joint_accelerations(*, pan=None, tilt=None, **kwargs)[ソース]

サーボの目標加速度を設定する。

パラメータ
  • pan (Optional[float]) -- pan軸の加速度 [rad/s^2]

  • tilt (Optional[float]) -- tilt軸の加速度 [rad/s^2]

  • kwargs (float) --

戻り値の型

None

サンプル

>>> from akari_client import AkariClient
>>> akari = AkariClient()
>>> joints = akari.joints
>>> joints.set_joint_accelerations(pan=10, tilt=8)
# pan軸の目標加速度が10rad/s^2, tilt軸の目標加速度が8rad/s^2
get_joint_accelerations()[ソース]

サーボの目標加速度を取得する。

戻り値

関節名と目標加速度[rad/s^2]のDict

戻り値の型

Dict[str, float]

サンプル

>>> from akari_client import AkariClient
>>> akari = AkariClient()
>>> joints = akari.joints
>>> print(joints.get_joint_accelerations())
# 各軸の目標加速度値が出力される
set_joint_velocities(*, pan=None, tilt=None, **kwargs)[ソース]

サーボの目標速度を設定する。

パラメータ
  • pan (Optional[float]) -- pan軸の速度 [rad/s]

  • tilt (Optional[float]) -- tilt軸の速度 [rad/s]

  • kwargs (float) --

戻り値の型

None

サンプル

>>> from akari_client import AkariClient
>>> akari = AkariClient()
>>> joints = akari.joints
>>> joints.set_joint_velocities(pan=10, tilt=8)
# pan軸の目標加速度が10rad/s, tilt軸の目標加速度が8rad/s
get_joint_velocities()[ソース]

サーボの目標速度を取得する。

戻り値

関節名と目標速度[rad/s]のDict

戻り値の型

Dict[str, float]

サンプル

>>> from akari_client import AkariClient
>>> akari = AkariClient()
>>> joints = akari.joints
>>> print(joints.get_joint_velocities())
# 各軸の目標速度値が出力される
move_joint_positions(*, sync=False, pan=None, tilt=None, **kwargs)[ソース]

サーボの目標角度を設定する。 ここで設定した値まで移動する。

パラメータ
  • sync (bool) -- Trueにすると、サーボの移動が完了するまで関数の終了を待機する。デフォルト値はFalse。

  • pan (Optional[float]) -- pan軸の目標角度 [rad]

  • tilt (Optional[float]) -- tilt軸の目標角度 [rad]

  • kwargs (float) --

戻り値の型

None

サンプル

>>> from akari_client import AkariClient
>>> akari = AkariClient()
>>> joints = akari.joints
>>> joints.move_joint_positions(pan=0.4,tilt=-0.2)
# pan軸が0.4rad, tilt軸の目標加速度が-0.2radの位置へ移動
get_joint_positions()[ソース]

サーボの現在角度を取得する。

戻り値

サーボ名と現在角度[rad]のdict

戻り値の型

Dict[str, float]

サンプル

>>> from akari_client import AkariClient
>>> akari = AkariClient()
>>> joints = akari.joints
>>> print(joints.get_joint_positions())
# 各軸の現在角度[rad]が出力される
set_servo_enabled(*, pan=None, tilt=None, **kwargs)[ソース]

サーボの有効無効状態を設定する。

パラメータ
  • pan (Optional[bool]) -- pan軸のサーボ有効無効の設定。True であればサーボを有効にする。

  • tilt (Optional[bool]) -- tilt軸のサーボ有効無効の設定。True であればサーボを有効にする。

  • kwargs (bool) --

戻り値の型

None

サンプル

>>> from akari_client import AkariClient
>>> akari = AkariClient()
>>> joints = akari.joints
>>> joints.set_servo_enabled(pan=True,tilt=False)
# panのサーボを有効、tiltのサーボを無効に設定
enable_all_servo()[ソース]

全サーボを有効状態に設定する。

サンプル

>>> from akari_client import AkariClient
>>> akari = AkariClient()
>>> joints = akari.joints
>>> joints.enable_all_servo()
# pan、tiltのサーボ両方を有効に設定
戻り値の型

None

disable_all_servo()[ソース]

全サーボを無効状態に設定する。

サンプル

>>> from akari_client import AkariClient
>>> akari = AkariClient()
>>> joints = akari.joints
>>> joints.disable_all_servo()
# pan、tiltのサーボ両方を無効に設定
戻り値の型

None

get_moving_state()[ソース]
サーボが現在移動中かを取得する。

停止中ならTrue、移動中ならFalseを返す。

戻り値

サーボ名と現在状態のdict

戻り値の型

Dict[str, bool]

サンプル

>>> from akari_client import AkariClient
>>> akari = AkariClient()
>>> joints = akari.joints
>>> print(joints.get_moving_state())
# 各軸の現在状態が出力される
class akari_client.joint_controller.RevoluteJointController[ソース]
abstract get_servo_enabled()[ソース]

サーボの有効無効状態を取得する。

戻り値

サーボ有効なら``True``、無効なら``False``

戻り値の型

bool

abstract set_servo_enabled(enabled)[ソース]

サーボの有効無効状態を設定する。

パラメータ

enabled (bool) -- True であればサーボを有効にする

戻り値の型

None

abstract get_position_limit()[ソース]

Positionの上限値と下限値を取得する。

戻り値

現在角度の下限値、上限値 [rad]

戻り値の型

PositionLimit

abstract set_profile_acceleration(rad_per_sec2)[ソース]

サーボの目標加速度を設定する。

パラメータ

rad_per_sec2 (float) -- 加速度 [rad/s^2]

戻り値の型

None

abstract get_profile_acceleration()[ソース]

Profile Acceleration を取得する。

戻り値

加速度 [rad/s^2]

戻り値の型

float

abstract set_profile_velocity(rad_per_sec)[ソース]

サーボの目標速度を設定する。

パラメータ

rad_per_sec (float) -- 速度 [rad/s]

戻り値の型

None

abstract get_profile_velocity()[ソース]

Profile Velocity を設定する

パラメータ

rad_per_sec -- 速度 [rad/s]

戻り値の型

float

abstract set_goal_position(rad)[ソース]

サーボの目標角度を設定する。 ここで設定した値まで移動する。

パラメータ

rad (float) -- 目標角度 [rad]

戻り値の型

None

abstract get_present_position()[ソース]

サーボの現在角度を取得する。

戻り値

現在角度 [rad]

戻り値の型

float

abstract get_moving_state()[ソース]

モーターが動作中かどうか判定する。

戻り値

現在のモーター状態。

戻り値の型

bool