非实时命令
非实时命令是阻塞的、基于 TCP/IP 的,并且总是在任何实时控制循环之外执行。它们包含所有的夹爪命令和一些与臂 的配置相关的命令。

臂和夹爪的非实时命令。
与夹爪最相关的是
homing校准夹爪的最大抓取宽度。
move,grasp和stop, 用夹爪移动或抓取。
readOnce,读取夹爪状态。
关于臂,一些有用的非实时命令是:
setCollisionBehavior它设置接触和碰撞检测阈值。
setCartesianImpedance和setJointImpedance为内部笛卡尔阻抗和内部关节阻抗控制器设置阻抗参数。
setEE设置从名义末端执行器到末端执行器坐标系的变换 NE_T_EE。从法兰坐标系到末端执行器坐标系的变换 F_T_EE 被分为两个变换: F_T_NE 和 NE_T_EE。从法兰坐标系到名义末端执行器坐标系的变换 F_T_NE 只能通过管理员界面进行设置。
setK设置从末端执行器坐标系到刚度坐标系的变换 EE_T_K。
setLoad设置负载的动力学参数。
automaticErrorRecovery清除之前在机器人中发生的任何命令或控制异常。
对于完整且详尽的列表,请查看 Robot类 或 Gripper类 的 API 文档 。
臂或夹爪上的所有操作(非实时或实时)分别通过 franka::Robot 和 franka::Gripper 对象执行 。创建对象时,将建立与臂/夹爪的连接:
#include <franka/robot.h>
#include <franka/gripper.h>
...
franka::Gripper gripper("<fci-ip>");
franka::Robot robot("<fci-ip>");该地址可以作为主机名或 IP 地址传递。如果出现任何错误,无论是由于网络还是库版本冲突,franka::Exception 类型的异常都会被抛出。同时使用多个机器人时,只需创建多个具有适当 IP 地址的对象即可。
要运行特定命令,只需调用相应的方法,例如
gripper.homing(); robot.automaticErrorRecovery();