睿尔曼超轻量仿人机械臂之-灵巧手动作编写及程序调用

一、灵巧手动作编写

1.连接设备

2. 运动控制

3. 参数设置

4 动作库使用

本软件可以设置灵巧手内部第 1-第 13 套动作序列数据,每套动作序列最多能有 8 步 分解动作,每一步分解动作的手指角度、运动速度、力度以及等待时间都可以单独设置。

步骤数:动作序列的步骤数目,可设置为 0-8;

手指角度:设置动作序列的某一步骤的手指目标角度,角度输入范围 0-1000,0 对 应手指最大程度弯曲,1000 对应手指完全张开,空格代表手指不运动。

运动速度:设置动作序列的某一步骤的手指运动速度, 1-1000。  

力度设置:设置动作序列的某一步骤的手指设置力度, 1-1000。

延时:设置动作序列的某一步骤的手指运动速度。 某一动作序列数据设置完成后,

点击表格右侧“下载”按钮,将数据下载到灵巧手中。 点击表格右侧的“测试”按钮,控制灵巧手触发相应的动作序列进行运动。

点击表格右侧的“上传”按钮,软件将读取灵巧手中相应的动作序列并在表格中显示。

5 动作序列操作

“打开离线文件”,可以打开一份动作序列数据文件的数据,并在软件的动作序列数 据区域显示。

“将文件数据下载到设备中”,可以将一份动作序列数据文件的数据批量下载到灵巧手中。

“保存为离线文件”,可以将软件所显示和编辑的动作序列数据整体保存到指定的文件中.

二、通过Api来调用机械臂灵巧手

上述操作保存好编辑的动作序列后,我们就可以用我们提供的api来进行灵巧手的调用,我们分别提供了以下的函数来进行灵巧手的操作。

1、设置灵巧手手势序号 Set_Hand_Posture

Set_Hand_Posture (posture_num, block)

描述: 设置灵巧手手势序号,设置成功后,灵巧手按照预先保存在 Flash 中的手 势运动。

参数 :(1)posture_num 预先保存在灵巧手内的手势序号,范围:1~40 (2)block False-非阻塞,发送后立即返回; True-阻塞,等待控制器返回 设置成功指令。

返回值 :成功返回:0;失败返回:错误码,查询 API 错误类型

2、设置灵巧手动作序列序号 Set_Hand_Seq

Set_Hand_Seq (seq_num, block)

描述:设置灵巧手动作序列序号,设置成功后,灵巧手按照预先保存在 Flash 中 的动作序列运动。

参数:(1)seq_num  预先保存在灵巧手内的动作序列序号,范围:1~40

           (2)block False-非阻塞,发送后立即返回; True-阻塞,等待控制器返回 设置成功指令。

返回值: 成功返回:0;失败返回:错误码,查询 API 错误类型。

3、设置灵巧手角度 Set_Hand_Angle

Set_Hand_Angle(angle, block)

描述: 设置灵巧手角度,灵巧手有 6 个自由度,从 1~6 分别为小拇指,无名指, 中指,食指,大拇指弯曲,大拇指旋转。

参数 (1)angle 手指角度数组,6 个元素分别代表 6 个自由度的角度。范围: 0~1000。另外,-1                 代表该自由度不执行任何操作,保持当前状态

        (2)block False-非阻塞,发送后立即返回; True-阻塞,等待控制器返回 设置成功指令。

返回值: 成功返回:0;失败返回:错误码,查询 API 错误类型。

4.、设置灵巧手各关节速度 Set_Hand_Speed

Set_Hand_Speed (speed, block)

描述: 设置灵巧手各关节速度

参数 :(1)speed 灵巧手各关节速度设置,范围:1~1000

            (2)block False-非阻塞,发送后立即返回; True-阻塞,等待控制器返回设 置成功指令

返回值 :成功返回:0;失败返回:错误码,查询 API 错误类型

5、设置灵巧手各关节力阈值 Set_Hand_Force

Set_Hand_Force (force, block)

描述 设置灵巧手各关节力阈值。

参数 :(1)force 灵巧手各关节力阈值设置,范围:1~1000,代表各关节的力矩阈 值(四指握力                  0~10N,拇指握力 0~15N)。

           (2)block False-非阻塞,发送后立即返回; True-阻塞,等待控制器返回设 置成功指令。 返回值: 成功返回:0;失败返回:错误码,查询 API 错误类型

这里以设置灵巧手手势序号举例进行调用。可以从我们的api协议当中看到函数参数的描述,Set_Hand_Seq(seq,block)seq代表着着我们在上面操作中上位机软件里面保存的手势序号,block 代表着阻塞与非阻塞。届时我们可以在提供的Api接口中调用这个函数来进行灵巧手来进行运动。代码示例如下:

同理,我们也可以根据api的说明来调用其他的函数来实现不同的方式来调用我们的灵巧手,结合自己使用场景的需求来进行对应函数的选择,值得注意的是在调用函数时候最好对返回值加逻辑判断。如demo8()所示。

代码如下:

# 灵巧手使用例程(需机械臂末端安装对应的灵巧手)
def demo8(robot):

    # 设置灵巧手手势序号
    ret = robot.Set_Hand_Seq(2, False)
    if ret != 0:
        print("动作执行失败:" + str(ret))
        sys.exit()
    else:
        print("动作执行成功" + str(ret))

    time.sleep(1)

  • 23
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值