API 说明
Denso 工控机主控支持的 API
指令号 |
命令 |
支持情况 |
---|---|---|
100 |
获取机械臂程序版本号 |
支持 |
101 |
发送速度数据 |
支持 |
102 |
发送加速度数据 |
支持 |
103 |
发送圆滑过渡参数 |
支持 |
104 |
发送工具坐标系(TCP)参数 |
支持 |
105 |
设置数字量输出 |
支持 |
106 |
SetJointsMovej |
支持 |
107 |
SetCartMovel |
支持 |
108 |
SetJoinsMovel |
支持 |
109 |
SetCartMovej |
支持 |
110 |
MovejSequence |
支持 |
111 |
MovelSequence |
支持 |
112 |
SetJointsMovejDo |
不支持 |
113 |
SetCartMovelDo |
不支持 |
114 |
SetJointsMovelDo |
不支持 |
115 |
SetJointsMovejGroupDo |
不支持 |
116 |
SetCartMovelGroupDo |
不支持 |
117 |
SetJointsMovelGroupDo |
不支持 |
118 |
MovelUntil |
不支持 |
119 |
获取数字量输入状态 |
支持 |
120 |
获取数字量输出状态 |
支持 |
121 |
获取模拟量输入口数值 |
不支持 |
122 |
获取机械臂当前角度 |
支持 |
123 |
获取机械臂当前位姿 |
支持 |
200 |
机械臂后台发送状态 |
支持 |
Denso 机械臂主控支持的 API
denso 支持传入变量传出。在 denso 的编程语言(PacScript)中数组下标从零开始。 通过 Dim 指令生成数组时,需要在变量处填写的数值为数组长度减一。例如:Dim aaa(3) As Integer 则表示声明一个长度为4的整数型数组。
- Sub xyzMasterConnect()
连接到工控机
- Function xyzSwitchTask(task_codename As String) As Integer
切换应用
- 参数
task_codename (String) – 应用名称
- 返回
err_code
- 返回类型
Integer
- Function xyzSwitchTool(tool_id As Integer) As Integer
切换工具
- 参数
tool_id (Integer) – 工具编号
- 返回
err_code
- 返回类型
Integer
- Function xyzCallVisionCmd(vs_id As Integer, vision_codename As String) As Integer
呼叫视觉
- 参数
vs_id (Integer) – 视觉服务id
vision_codename (String) – 呼叫视觉的指令名称
- 返回
err_code
- 返回类型
Integer
- Function xyzReqGraspPose(vs_id As Integer, ByRef token As Integer) As Integer
请求抓取位姿
- 参数
vs_id (Integer) – 需要获取抓取点位的工作空间id
token (Integer) – 返回的用于获取目标点位时使用的token
- 返回
err_code
- 返回类型
Integer
- Function xyzGetGraspPose(token As Integer, ByRef num As Integer, ByRef pipe_num As Integer, ByRef regi_num As Integer, ByRef grasp_pose As Position, ByRef out_ints(5) As Integer) As Integer
获取抓取位姿
- 参数
token (Integer) – 求抓取目标点位时返回的token
num (Integer) – 可供抓取的点数量
pipe_num (Integer) – 运动流程编号
regi_num (Integer) – 抓取序号
grasp_pose (Position) – 抓取位姿
out_ints(5) (Array of Integer) – 可以task中自定义含义
- 返回
err_code
- 返回类型
Integer
- Function xyzReqObjPose(vs_id As Integer, ByRef token As Integer) As Integer
请求物体位姿
- 参数
vs_id (Integer) – 需要获取物体位姿的工作空间id
token (Integer) – 物体位姿识别的token
- 返回
err_code
- 返回类型
Integer
- Function xyzGetObjPose(token As Integer, ByRef num As Integer, ByRef obj_pose As Position, ByRef object_name As String, ByRef out_ints(5) As Integer) As Integer
获取物体位姿
- 参数
token (Integer) – 请求物体位姿时得到的token
num (Integer) – 物体数量
obj_pose (Position) – 物体位姿
object_name (String) – 当前返回的物体 pose 类型
- 返回
err_code
- 返回类型
Integer
- Function xyzResetTask() As Integer
重置任务
- 返回
err_code
- 返回类型
Integer
- Function xyzSendCurrentJoints(cur_jnt As Joint) As Integer
发送机械臂当前角度:j1~j6: 机械臂当前的角度信息,如果机械臂轴数小于6轴,则需要对应位置补零,依旧发送六个数。
- 返回
err_code
- 返回类型
Integer
- Function xyzSendCurrentCartPose(cur_pos As Position) As Integer
发送机械臂法兰当前位姿
- 返回
err_code
- 返回类型
Integer
- Function xyzSendCurrentExtJoints() As Integer
发送机械臂外部轴角度信息
- 返回
err_code
- 返回类型
Integer
- Function xyzReqPickPlace(vs_id As Integer) As Integer
请求抓放规划
- 参数
vs_id (Integer) – 请求规划的工作空间id
- 返回
err_code
- 返回类型
Integer
- Function xyzGetPickin(vs_id As Integer, ByRef pipe_num As Integer, ByRef regi_num As Integer, ByRef num As Integer, ByRef traj As Variant) As Integer
获取取料入框轨迹
- 参数
vs_id (Integer) – 需要获取取料入框点位的工作空间id
pipe_num (Integer) – 运动流程编号
regi_num (Integer) – 抓取序号
num (Integer) – 可供抓取的点数量
traj (Variant) – 路径点数据
- 返回
err_code
- 返回类型
Integer
- Function xyzGetPickout(vs_id As Integer, ByRef pipe_num As Integer, ByRef regi_num As Integer, ByRef num As Integer, ByRef traj As Variant) As Integer
获取取料出框轨迹
- 参数
vs_id (Integer) – 需要获取取料出框点位的工作空间id
pipe_num (Integer) – 运动流程编号
regi_num (Integer) – 抓取序号
num (Integer) – 可供抓取的点数量
traj (Variant) – 路径点数据
- 返回
err_code
- 返回类型
Integer
- Function xyzGetPlacein(vs_id As Integer, ByRef pipe_num As Integer, ByRef regi_num As Integer, ByRef num As Integer, ByRef traj As Variant) As Integer
获取放料入框轨迹
- 参数
vs_id (Integer) – 需要获取放料入框点位的工作空间id
pipe_num (Integer) – 运动流程编号
regi_num (Integer) – 抓取序号
num (Integer) – 可供抓取的点数量
traj (Variant) – 路径点数据
- 返回
err_code
- 返回类型
Integer
- Function xyzGetPlaceout(vs_id As Integer, ByRef pipe_num As Integer, ByRef regi_num As Integer, ByRef num As Integer, ByRef traj As Variant) As Integer
获取放料出框轨迹
- 参数
vs_id (Integer) – 需要获取放料出框点位的工作空间id
pipe_num (Integer) – 运动流程编号
regi_num (Integer) – 抓取序号
num (Integer) – 可供抓取的点数量
traj (Variant) – 路径点数据
- 返回
err_code
- 返回类型
Integer
- Function xyzUpdateTotePose(vs_id As Integer) As Integer
- 参数
vs_id (Integer) – 料箱重定位工作空间id
- 返回
err_code
- 返回类型
Integer
- Function xyzUpdateObjPoseOnHand(ByRef pos As Position) As Integer
工件在上手的二次定位
- 参数
pos (Position) –
- 返回
err_code
- 返回类型
Integer
- Function xyzSwitchItem(vs_id As Integer, item_codename As String) As Integer
切换工件
- 参数
vs_id (Integer) – 视觉空间id
item_codename (String) – 工件代号
- 返回
err_code
- 返回类型
Integer
- Function xyzCalculateGraspPose(vs_id As Integer, ByRef num As Integer, ByRef pipe_num As Integer, ByRef regi_num As Integer, ByRef grasp_pose As Position, ByRef out_ints(5) As Integer) As Integer
计算抓取目标点位
- 参数
vs_id (Integer) – 需要获取抓取点位的工作空间id
num (Integer) – 可供抓取的点数量
pipe_num (Integer) – 运动流程编号
regi_num (Integer) – 抓取序号
grasp_pose (Position) – 抓取位姿
out_ints(5) (Array of Integer) – 可以task中自定义含义
- 返回
err_code
- 返回类型
Integer
- Function xyzCalculateObjectPose(vs_id As Integer, ByRef num As Integer, ByRef obj_pose As Position, ByRef object_name As String, ByRef out_ints(5) As Integer) As Integer
计算物体位姿
- 参数
vs_id (Integer) – 需要获取物体点位的工作空间id
num (Integer) – 物体数量
obj_pose (Position) – 物体位姿
object_name (String) – 当前返回的物体 pose 类型
- 返回
err_code
- 返回类型
Integer
- Function xyzUsrCmd(strs(4) As Variant, ints(9) As Integer, floats(9) As Single, pos As Position, jnt As Joint, ByRef out_strs(4) As String, ByRef out_ints(9) As Integer, ByRef out_floats(9) As Single, ByRef out_pos As Position, ByRef out_jnt As Joint) As Integer
用户自定义指令
- 参数
strs (Array of Variant) – 发给上位机的字符串数组
ints (Array of Integer) – 发给上位机的整型数组
floats (Array of Single) – 发给上位机的浮点型数组
pos (Position) – 发给上位机的笛卡尔坐标
jnt (Joint) – 发给上位机的关节坐标
out_strs (Array of String) – 上位机发来的字符串数组
out_ints (Array of Integer) – 上位机发来的整型数组
out_floats (Array of Single) – 上位机发来的浮点型数组
out_pos (Position) – 上位机发来的笛卡尔坐标
out_jnt (Joint) – 上位机发来的关节坐标
- 返回
err_code
- 返回类型
Integer
- Sub xyzExecuteTraj(num As Integer, traj As Variant)
执行轨迹
- 参数
num (Integer) – 轨迹点的个数
traj (Variant) – 轨迹数据