API 使用说明

API(Application Programming Interface),即应用程序接口函数,是一些预先定义好的函数。在使用下列函数接口的时候请先在开头导入我们的 API 库,即输入下方代码,否则无法运行成功:

#适用于myCobot、mechArm系列
from pymycobot.mycobot import MyCobot

#适用于myPalletizer系列
from pymycobot.mypalletizer import MyPalletizer

#适用于myBuddy系列
from pymycobot.mybuddy import MyBuddy

# 适用于myArm
from pymycobot.myarm import MyArm

1. 系统状态

1.1 get_system_version()

  • 功能: 获取固件版本
  • 参数:
  • 返回值:

2. 总体状况

2.1 power_on()

  • 功能: Atom 打开通信(默认为打开)

  • 返回值:

2.2 power_off()

  • 功能: Atom 关闭通信

  • 返回值:

2.3 is_power_on()

  • 功能: 判断机械臂是否通电

  • 返回值:

    • 1- 机械臂已通电
    • 0 - 机械臂已断电
    • -1- 错误

2.4 release_all_servos()

  • 功能: 设置机械臂为自由移动模式(能手动自由摆动机械臂)
  • 返回值:

2.5 is_controller_connected()

  • 功能: 判断是否与 Atom 连接

  • 返回值:

    • 1- 已连接
    • 0 - 未连接
    • -1- 错误

2.6 read_next_error()

  • Fuction: 机械臂错误检测

  • 返回值:

    • 0- 无异常
    • 1 - 通讯中断
    • 2 - 通讯不稳定
    • 3 - 舵机异常

2.7 set_fresh_mode(mode)

  • Fuction: 设置插补/刷新运动模式
  • 参数:
    • mode – int
      1:执行第一个指令 0:按序执行指令
  • 返回值:

2.8 get_fresh_mode()

  • Fuction: 查询插补/刷新运动模式

  • 返回值:

    • 0:按序执行指令
    • 1: 执行第一个指令

2.9 set_free_mode(mode)

  • Fuction: 设置自由模式
  • 参数:
    • mode – int
      • 0 - 关闭
      • 1 - 打开
  • 返回值:

2.10 is_free_mode()

  • Fuction: 检查是否为自由模式

  • 返回值:

    • 0 - 否
    • 1 - 是

3. 输入程序控制模式(MDI 模式

3.1 get_angles()

  • 功能: 获取所有关节角度
  • 返回值: list 一个浮点值的列表代,表示所有关节的角度

3.2 send_angle(id, degree, speed)

  • 功能: 发送指定的单个关节运动至指定的角度

  • 参数:

    • id: 代表机械臂的关节,六轴有六个关节,四轴有四个关节,有特定的表示方法 关节一的表示法:Angle.J1.value。(也可以用数字 1-6 来表示)
    • degree: 表示关节的角度
    • speed:表示机械臂运动的速度,范围 0~100

3.3 send_angles(degrees, speed)

  • 功能: 发送所有角度给机械臂所有关节
  • 参数:
    • degrees: (List[float])包含所有关节的角度 ,六轴机器人有六个关节所以长度为 6,四轴长度为 4,表示方法为:[20,20,20,20,20,20]
    • speed: 表示机械臂运动的速度,取值范围是 0-100

3.4 get_coords()

  • 功能: 获取当前坐标和姿态

  • 返回值: list 包含坐标和姿态的列表:

    • 六轴:长度为 6,[x, y, z, rx, ry, rz]
    • 四轴:长度为 4,[x, y, z, rx]

3.5 send_coord(id, coord, speed)

  • 功能: 发送单个坐标值给机械臂进行移动

  • 参数:

    • id:代表机械臂的坐标,六轴有六个坐标,四轴有四个坐标,有特定的表示方法 X 坐标的表示法:Coord.X.value,也有简易的表示方法:如 X 轴可以填写 1,Y 填写 2,以此类推
    • coord: 输入您想要到达的坐标值
    • speed: 表示机械臂运动的速度,范围是 0-100

3.6 send_coords(coords, speed, mode)

  • 功能: 发送整体坐标和姿态,让机械臂头部从原来点移动到您指定点
  • 参数:
    • coords:
      • 六轴:[x,y,z,rx,ry,rz]的坐标值,长度为 6
      • 四轴:[x,y,z,rx]的坐标值,长度为 4
    • speed: (int) 表示机械臂运动的速度,范围是 0-100
    • mode: (int): 取值限定 0 和 1
      • 0 表示机械臂头部移动的路径为非线性,即随机规划路线,只要机械臂头部以保持规定的姿态移动到指定点即可。
      • 1 表示机械臂头部移动的路径为线性的,即智能规划路线让机械臂头部以直线的方式移动到指定点.

3.7 is_in_position(data, flag)

  • 功能: 判断机器人有没有到达指定的位置
  • 参数:
    • data: 您给出的一组数据可以是角度也可以是坐标值,如:[10,20,20,10,20,10]
    • flag: 数据类型(取值范围 0 或 1)
      • 0: 表示给入的数值是角度值
      • 1: 表示给入的数值是坐标值
  • 返回值:
    • 1 - 已到达
    • 0 - 未到达
    • -1 - 错误

3.8 is_moving()

  • 功能: 判断机械臂有没有移动
  • 返回值:
    • 1 正在移动
    • 0 没有移动
    • -1 错误

3.9 pause()

  • 功能: 让机械臂暂停当前运动
  • 返回值: 无.

3.10 is_paused()

  • 功能: 判断机械臂是否为暂停状态
  • 返回值:
    • 1 - 已经暂停
    • 0 - 没有暂停
    • -1 - 错误

3.11 resume()

  • 功能: 让机械臂恢复之前所设置的运动
  • 返回值: 无

3.12 stop()

  • 功能: 让机械臂停止所有运动
  • 返回值: 无

3.13 get_joint_min_angle(joint_id)

  • 功能: 获取指定关节最小能运行到的角度
  • Parameter: 范围为 1-6
  • 返回值: 度数

3.14 get_joint_max_angle(joint_id)

  • 功能: 获取指定关节最大能运行到的角度
  • Parameter: 范围为 1-6
  • 返回值: 度数

3.15 set_joint_min(id,angle)

  • 功能: 设置指定关节最小能运行到的角度

  • 参数:

    • id: (int) 1-6.
    • angle: 0 - 180.
  • 返回值:

3.16 set_joint_max(id,angle)

  • 功能: 设置指定关节最大能运行到的角度
  • Parameter:
    • id: (int) 1-6.
    • angle: 0 - 180
  • 返回值:

4. JOG Mode and Operation

4.1 jog_angle(joint_id, direction, speed)

  • 功能: 控制机器人按照指定的角度持续移动

  • 参数:

    • joint_id: (int) 1 ~ 6
    • direction: 主要控制机器臂移动的方向,给入 0 为负值移动,给入 1 为正值移动
    • speed: 0 ~ 100

4.2 jog_coord(coord_id, direction, speed)

  • 功能: 控制机器人按照指定的坐标或姿态值持续移动

  • 参数:

    • coord_id: (int) 1 ~ 6,代表机械臂的关节,按照关节 id 给入 1~6 来表示
    • direction: 主要控制机器臂移动的方向,给入 0 为负值移动,给入 1 为正值移动
    • speed: 0 ~ 100

4.3 jog_increment(joint_id,angle,speed)

  • 功能: 步进模式,使运动角度以给定的增量运行
  • 参数:
    • joint_id: (int) 1-6,代表机械臂的关节,按照关节 id 给入 1~6 来表示
    • angle: 增量范围
    • speed: 0 ~ 100
  • 返回值: 无

5. 电机控制

5.1 set_encoder(joint_id, encoder)

  • 功能: 发送指定的单个关节运动至指定的电位值
  • 参数:
    • joint_id: (int) 1 ~ 6,代表机械臂的关节,六轴机器人有六个关节所以长度为 6,四轴长度为 4,有特定的表示方法, 关节一的表示法:Angle.J1.value(也可以用数字 1-6 来表示)
    • encoder: 表示机械臂的电位值,取值范围是 0 ~ 4096

5.2 get_encoder(joint_id)

  • 功能: 获取机械臂指定的单个关节的电位值

  • 参数: joint_id: (int) 1 ~ 6,代表机械臂的关节,六轴机器人有六个关节所以长度为 6,四轴长度为 4,有特定的表示方法, 关节一的表示法:Angle.J1.value(也可以用数字 1-6 来表示)

  • 返回值:
    • encoder: 表示机械臂的电位值,取值范围是 0 ~ 4096

5.3 set_encoders(encoders, speed)

  • 功能: 发送电位值给机械臂所有关节

  • 参数:

    • encoders: 表示机械臂的电位值,取值范围是 0 ~ 4096,六轴长度为 6,四轴长度为 4,表示方法为:[2048,2048,2048,2048,2048,2048]
    • sp: 表示机械臂运动的速度,取值范围是 0-100

5.4 get_encoders()

  • 功能: 获取机械臂所有关节的电位值

  • 返回值:包含机械臂所有关节电位值的列表 (list)

6. 伺服控制

6.1 is_servo_enable(servo id)

  • 功能: 判断舵机是否连接
  • Parameter: 从 1-6
  • 返回值:
    • 1: enabled
    • 0: not enabled
    • -1: error

6.2 is_all_servo_enable()

  • 功能: 判断机器人的所有关节是否连通
  • 返回值:
    • 1: 连通
    • 0: 不连通
    • -1: 错误

6.3 release_servo(servo_id)

  • 功能: 放松指定的关节
  • Parameter: 范围 1-6
  • 返回值:
    • 1: 放松
    • 0: 未放送
    • -1: 错误

6.4 set_servo_data(servo_no, data_id, value)

  • 功能: 设置舵机指定地址的数据参数

  • 参数:

    • servo_no: 舵机的序列号,按照关节 id 给入 1 - 6
    • data_id: 数据地址
    • value: 取值范围 0 - 4096
  • 返回值:

6.5 get_servo_data(servo_no, data_id)

  • 功能: 读取舵机指定地址的数据参数。

  • 参数:

    • servo_no: 各个舵机的序列号,按照关节 id 给入 1 - 6
    • data_id: 数据地址
  • 返回值: 数据参数值,范围 0-4096

6.6 set_servo_calibration(servo_no)

  • 功能: 校准指定关节,设置当前位置为角度零点,对应电位值为 2048
  • 参数:
    • servo_no: 机械臂的指定关节,1 - 6。
  • 返回值:

6.7 focus_servo(servo_id)

  • 功能: 给指定关节上电
  • 参数: servo_id: 1 ~ 6
  • 返回值:

6.8 joint_brake(joint_id)

  • 功能: 在关节运动的状态下使其停止运动,缓冲距离与现有速度正相关
  • 参数: joint_id: 机械臂的指定关节,范围为 1~6
  • 返回值:

6.9 get_servo_speeds()

  • 功能: 获得关节运行速度
  • 返回值: list 每个关节的运行速度

6.10 get_servo_currents()

  • 功能: 获得关节当前运行速度
  • 返回值: list 每个关节的速度

6.11 get_servo_voltages()

  • 功能: 获得关节电压
  • 返回值: list 每个关节的电压

6.12 get_servo_temps()

  • 功能: 获得关节的温度
  • 返回值: list 每个关节的温度

6.13 get_servo_status()

  • 功能: 获得关节状态
  • 返回值: list 每个关节的状态

6.14 get_servo_last_pdi(id)

  • 功能: 获取修改前单个舵机的 pdi 值
  • 返回值: 关节的 pdi 值

7. Atom IO

7.1 set_pin_mode(pin_no, pin_mode)

  • 功能: 设置 atom 中指定引脚的状态模式
  • 参数:
  • pin_no (int): 引脚号
  • pin_mode (int): 0 - 输入, 1 - 输出, 2 - 上拉输入

  • 返回值:

7.2 set_digital_output(pin_no, pin_signal)

  • 功能: 设置末端引脚号的工作状态
  • 参数

    • pin_no (int): 设备末端标注的编号仅取数字部分
    • pin_signal (int): 输入 0 表示设置为运行状态,输入 1 表示停止状态
  • 返回值:

7.3 get_digital_input(self, pin_no)

  • 功能: 获取末端引脚号的工作状态
  • 参数: pin_no (int) 表示机械臂末端的具体引脚号
  • 返回值: 当返回的值为 0 表示在工作状态运行,1 表示停止状态

7.4 set_pwm_output(channel, frequency, pin_val)

  • 功能: 脉宽调制控制(pwmS)
  • 参数:
    • channel (int): 机械臂顶部的具体引脚号
    • frequency (int): 时钟频率
    • pin_val (int): 占空比 0~256;128 为 50%
  • 返回值: 无

8. 夹爪控制

8.1 set_eletric_gripper(mode)

  • 功能: 设置夹爪模式(仅作用于 350)
  • 参数:
    • 1: 表示夹爪合拢状态
    • 0: 表示夹爪打开状态。
  • 返回值:

8.2 init_eletric_gripper()

  • 功能: 初始化电动夹爪
  • 返回值:

8.3 set_gripper_mode(mode)

  • 功能: 设置夹爪模式
  • 参数:
    • 1: 串口模式
    • 0: 透传模式
  • 返回值:

8.4 get_gripper_mode(mode)

  • 功能: 获取夹爪状态
  • 返回值:
    • 1: 串口模式
    • 0: 透传模式

8.5 is_gripper_moving()

  • 功能: 判断夹爪是否在移动

  • 返回值:

    • 0 : 不动
    • 1 : 正在移动
    • -1: 错误数据

8.6 set_gripper_value(value, speed, gripper_type=无)

  • 功能: 让夹爪以指定的速度转动到指定的位置
  • 参数说明:
    • value: 表示夹爪所要到达的位置,取值范围 0~256
    • speed: 表示以多少的速度转动,取值范围 0~1000
    • gripper_type: 夹爪类型,默认为自适应夹爪
      • 1: 自适应夹爪
      • 3: 平行钳口
      • 4: 柔性夹爪
  • 返回值:

8.7 get_gripper_value(gripper_type=无)

  • 功能: 获取夹爪的当前位置数据信息
  • 参数说明:
    • gripper_type: 夹爪类型,默认为自适应夹爪
      • 1: 自适应夹爪
      • 3: 平行钳口
      • 4: 柔性夹爪
  • 返回值: 夹爪数据信息

8.8 set_gripper_calibration()

  • 功能: 设置夹爪初始化位置,设置当前位置为 2048
  • 返回值:

8.9 set_gripper_state(flag, speed, _type=无)

  • 功能: 让夹爪以指定的速度进入到指定的状态
  • 参数说明:
    • flag: 1 表示夹爪合拢状态,0 表示夹爪打开状态。
    • speed: 表示以多快的速度达到指定的状态,取值范围 0~100
    • _type: 夹爪类型,默认为自适应夹爪
      • 1: 自适应夹爪
      • 2: 五指灵活夹爪
      • 3: 平行钳口
      • 4: 柔性夹爪
  • 返回值:

9. Atom RGB 控制

9.1 set_color(r, g, b)

  • 功能: 设置 RGB 灯光面板的颜色
  • 参数:
    • R: 0-255
    • G: 0-255
    • B: 0-255
  • 返回值:

10. 坐标设置

10.1 set_tool_reference(coords)

  • 功能: 设置工具坐标系。
  • 参数:

    • coords: (list) [x, y, z, rx, ry, rz].
  • Return:无

10.2 set_world_reference(coords)

  • 功能: 设置世界坐标系。
  • 参数:
    • coords: (list) [x, y, z, rx, ry, rz].
  • Return:无

10.3 get_world_reference()

  • 功能: 获取世界坐标系

  • Return: list [x, y, z, rx, ry, rz].

10.4 set_reference_frame(rftype)

  • 功能: 设置基坐标系

  • 参数:

    • rftype: 0 - 基坐标(默认) 1 - 世界坐标
  • Return:无

10.5 get_reference_frame()

  • 功能: 获取基坐标系

  • Return: 0 - 基坐标 1 - 工具坐标.

10.6 set_movement_type(move_type)

  • 功能: 设置移动类型

  • 参数:

    • move_type: 1 - movel, 0 - moveJ.
  • Return:无

10.7 get_movement_type()

  • 功能: 获取移动类型

  • Return: 1 - movel, 0 - moveJ.

10.8 set_end_type(end)

  • 功能: 设置末端坐标系
  • 参数:
    • end: 0 - 法兰(默认) 1 - 工具
  • Return:无

10.9 get_end_type()

  • 功能: 获取末端坐标系

  • Return: 0 - 法兰(默认) 1 - 工具

10.10 get_tool_reference()

  • 功能: 获取工具坐标系

  • Return:

    • coords: (list) [x, y, z, rx, ry, rz]

11. 基本 IO 控制

11.1 get_basic_input(pin_no)

  • 功能: 获取底部引脚号的工作状态
  • 参数:
  • pin_no (int) 引脚号
  • 返回值:
    • 0: 工作状态
    • 1: 停止状态

11.2 set_basic_output(pin_no, pin_signal)

  • 功能: 设置底部引脚号的工作状态。

  • 参数:

    • pin_no (int) 引脚号
    • pin_signal (int): 输入 0 表示设置为运行状态,输入 1 表示停止状态

← 上一页 | 下一页 →

results matching ""

    No results matching ""