JAKA 机械臂常用 API

本文梳理了 JAKA 机械臂在开关机、运动控制、状态读取与工具管理中的高频 API 及其基础用法。

开关机

import jkrc

robot = jkrc.RC("192.168.0.110") # 返回机器人对象
robot.login()
robot.power_on() # 上电
robot.enable_robot() # 上使能

robot.disable_robot() # 下使能
robot.power_off() # 下电
robot.shut_down() # 控制柜关机

拖拽模式

robot.drag_mode_enable(True)
ret = robot.is_in_drag_mode()
print(ret)
a = input()
robot.drag_mode_enable(False)
ret = robot.is_in_drag_mode()
print(ret)

机器人关节运动到目标点位

ABS = 0  # 绝对运动
INCR = 1  # 增量运动

joint_move(joint_pos, move_mode, is_block, speed)

# 例:robot.joint_move(joint_pos, ABS, True, 0.1)
  • joint_pos: 机器人关节运动目标位置。
  • move_mode: 0 表示绝对运动,1 表示相对运动。
  • is_block:设置接口是否为阻塞接口。TRUE 为阻塞接口,FALSE 为非阻塞接口。阻塞表示机器人运动完成后才返回结果;非阻塞表示接口调用完成后立即返回结果。
  • speed: 机器人关节运动速度,单位:rad/s

机器人末端直线运动到目标点位

linear_move(end_pos, move_mode, is_block, speed)
  • end_pos: 机器人末端运动目标位置。
  • move_mode: 0 表示绝对运动,1 表示相对运动。
  • is_block: 设置接口是否为阻塞接口。TRUE 为阻塞接口,FALSE 为非阻塞接口。阻塞表示机器人运动完成后才返回结果;非阻塞表示接口调用完成后立即返回结果。
  • speed: 机器人直线运动速度,单位:mm/s,默认 500 mm/s

获取当前机器人的六个关节角度值

get_joint_position()
  • 返回成功:(0, joint_pos)joint_pos 是一个包含 6 个元素的元组 (j1, j2, j3, j4, j5, j6),分别表示关节 1 到关节 6 的角度值。

获取当前设置下工具末端的位姿

get_tcp_position()
  • 返回成功:(0, cartesian_pose)cartesian_pose 是一个包含 6 个元素的元组 (x, y, z, rx, ry, rz),分别表示机器人工具末端的位姿值。

查询机器人当前使用的工具 ID

get_tool_id()
  • 返回成功:(0, id)id 取值范围为 015,其中 0 代表末端法兰盘(已被控制器使用)。