EasyArm机械臂控制模块

class EasyArm.EasyArm(uart, L1=13, L2=14, beta_offset=0, theta_offset=0)

机械臂控制类

toward(t)

设置转盘的朝向

末端转盘的朝向. 默认为’F’即朝前,无论机械臂如何运动,转盘始终朝前

可设为’R’朝右或’L’朝左

参数:

t – ‘F’ 前/’R’ 右/’L’ 左

reset()

复位机械臂至初始状态,alpha、beta、theta角归零

release()

舵机释放扭力,可手动拖动,用于校准零点或示教

recover()

舵机恢复扭力

setInitPos()

各舵机记录当前位置为零点

moveto(x, y, speed=1, wait=True)

机械臂末端移动到(x,y)坐标处。

机器人车头方向为x轴正方向,左侧为y轴正方向

参数:
  • x (float) – x坐标,单位cm

  • y (float) – y坐标,单位cm

  • speed (int, optional) – 移动速度. Defaults to 1.

  • wait (bool, optional) – 是否等待运行到位. Defaults to True.

示例

>>> arm.moveto(20,0) #机械爪移动到车体正前方20cm处
>>> arm.moveto(0,20) #机械爪移动到车体左侧20cm处
moveY(dy)

Y方向平移

参数:

dy (float) – Y方向移动距离,单位cm

moveX(dx)

X方向平移

参数:

dy (float) – X方向移动距离,单位cm

upfor(t)

机械臂Z轴上升指定秒数

参数:

t (float) – 抬起的秒数

downfor(t)

机械臂Z轴下降指定秒数

参数:

t (float) – 下降的秒数

get_Z()

读取机械臂Z轴位置

返回:

距离传感器返回值

返回类型:

_type_

set_Z(volt, wait=True)

设置机械臂Z轴位置

参数:
  • volt (_type_) – 目标位置的距离传感器返回值

  • wait (bool) – 是否等待升降完成

waitZstop()

等待Z轴升降动作完成

get_pos()

获取各舵机角度值

返回:

列表形式返回alpha、beta、theta角度值

返回类型:

list

setPWMServo(num, a)

设置PWM舵机的角度值

参数:
  • num (int) – 舵机编号1~3

  • a (int) – 舵机角度值0~180°

s1(a)

设置1号舵机角度值

该方法为setPWMServo的快捷方式,类似地可使用s2、s3设置对应舵机角度

参数:

a (int) – 角度值0~180°

示例

>>> arm.s1(70)
>>> arm.s2(120)
test()

运行测试动作

转盘转动120° 下降3秒 1号PWM舵机转动到120° 上升3秒 末端移动到(150,0)坐标