舵机

class ukitai.apis.Servo.ServoDirection[源代码]

Bases: enum.Enum

运动方向

CLOCKWISE: 顺时针

ANTICLOCKWISE: 逆时针

STOP: 停止

class ukitai.apis.Servo.SpeedMode[源代码]

Bases: enum.Enum

速度档位

VERY_SLOW: 非常慢

SLOW: 慢

MEDIUM: 中速

FAST: 快

VERY_FAST: 非常快

ukitai.apis.Servo.read_servo_angle(*, id: int, link: <module 'ukitai.link.uKitAiLink' from '/home/naoki/app/Workspace/ukitai-sdk/ukitai/link/uKitAiLink.py'>)[源代码]

读取舵机角度

参数值说明:

id: 舵机 id

link: 设备连接

返回值说明:
(int): 舵机角度,范围[-120, 120],读取失败时返回None
ukitai.apis.Servo.stop_servo(*, id: int, mode: int = 0, link: <module 'ukitai.link.uKitAiLink' from '/home/naoki/app/Workspace/ukitai-sdk/ukitai/link/uKitAiLink.py'>)[源代码]

控制舵机停止转动

参数值说明:
id: 舵机 id mode: 保留字段,默认为0
返回值说明:
(ack, response): ack: 接口调用结果,response: 接口返回数据
ukitai.apis.Servo.turn_servo_angle(*, id: int, angle: int, duration_ms: int, link: <module 'ukitai.link.uKitAiLink' from '/home/naoki/app/Workspace/ukitai-sdk/ukitai/link/uKitAiLink.py'>) → tuple[源代码]

控制舵机用指定的时长转转至某个角度

参数值说明:

id: 舵机 id

angle (int): 指定舵机旋转到达的角度值,单位:度, 范围:[-118, 118]

duration_ms (int): 旋转耗时,单位:毫秒,范围:[20, 5000]

link: 设备连接

返回值说明:
(ack, response): ack: 接口调用结果,response: 接口返回数据
示例:

# 控制 id 为 2 的舵机用 500 毫秒转动到 100°

Motion.turn_servo_angle(id=2, angle=100, duration_ms=500, link=link)

# 控制 id 为 1 的舵机用 1 秒转动到 -80°

Motion.turn_servo_angle(id=1, angle=-80, duration_ms=1000, link=link)

ukitai.apis.Servo.turn_servo_speed(*, id: int, direction: ukitai.apis.Servo.ServoDirection, speed: int, link: <module 'ukitai.link.uKitAiLink' from '/home/naoki/app/Workspace/ukitai-sdk/ukitai/link/uKitAiLink.py'>)[源代码]

控制舵机按照指定的方向和速度旋转

参数值说明:
id: 舵机 id direction (Servo.ServoDirection): 指定转动方向, 如果参数为 Servo.ServoDirection.STOP, 舵机会停止 speed (int): 速度, 单位: 度/秒, 范围:[0, 1000] link: 设备连接
返回值说明:
(ack, response): ack: 接口调用结果,response: 接口返回数据
示例:

# 控制 id 为 2 的舵机以100 度/秒的速度逆时针转动

Servo.turn_servo_speed(id=2, direction=Servo.ServoDirection.ANTICLOCKWISE, speed=100, link=link)

# 停止舵机 1

Servo.turn_servo_speed(id=1, direction=Servo.ServoDirection.STOP, speed=0, link=link)

ukitai.apis.Servo.turn_servo_speed_mode(*, id: int, direction: ukitai.apis.Servo.ServoDirection, speed_mode: ukitai.apis.Servo.SpeedMode, link: <module 'ukitai.link.uKitAiLink' from '/home/naoki/app/Workspace/ukitai-sdk/ukitai/link/uKitAiLink.py'>)[源代码]

控制舵机按照指定的方向和速度档位转动

参数值说明:
id: 舵机 id direction (Servo.ServoDirection): 指定转动方向, 如果参数为 Servo.ServoDirection.STOP, 舵机会停止 speed_mode (Servo.SpeedMode): 速度档位 link: 设备连接
返回值说明:
(ack, response): ack: 接口调用结果,response: 接口返回数据
示例:

# 控制 id 为 2 的舵机以非常慢的速度逆时针转动

Servo.turn_servo_speed_mode(id=2, direction=Servo.ServoDirection.ANTICLOCKWISE, speed_mode=Servo.SpeedMode.VERY_SLOW, link=link)

# 停止舵机 1

Servo.turn_servo_speed_mode(id=1, direction=Servo.ServoDirection.STOP, speed_mode=Servo.SpeedMode.VERY_SLOW, link=link)

ukitai.apis.Servo.turn_servo_speed_percent(*, id: int, direction: ukitai.apis.Servo.ServoDirection, speed_percent: int, link: <module 'ukitai.link.uKitAiLink' from '/home/naoki/app/Workspace/ukitai-sdk/ukitai/link/uKitAiLink.py'>)[源代码]

控制舵机按照指定的方向和速度百分比旋转

参数值说明:
id: 舵机 id direction (Servo.ServoDirection): 指定转动方向, 如果参数为 Servo.ServoDirection.STOP, 舵机会停止 speed_percent (int): 全速 658 度/秒 的百分比, 范围:[0, 100] link: 设备连接
返回值说明:
(ack, response): ack: 接口调用结果,response: 接口返回数据
示例:

# 控制 id 为 1 的舵机以全速 50% 的速度顺时针转动

Servo.turn_servo_speed_percent(id=1, direction=Servo.ServoDirection.CLOCKWISE, speed_percent=50, link=link)

# 控制 id 为 2 的舵机以全速逆时针转动

Servo.turn_servo_speed_percent(id=2, direction=Servo.ServoDirection.ANTICLOCKWISE, speed_percent=100, link=link)