*本说明为对Phantom Omni的力与力矩操作
****************虚拟夹具的力读取与控制************************
1、首先力的读取要声明【全局变量】
hduVector3Dd F;//三维矢量力(x,y,z三个方向的力)
2、对力的控制可以采用配置函数Set()与Get()函数;
3、对力觉的控制或读取操作需要放到【回调帧】开始与结束之间,如例子1:
例子1:
hdBeginFrame(hdGetCurrentDevice());
/*******力控制操作********/
Set(HL_DEVICE_FORCE,F);//将期望力F送入设备(注意:虚拟夹具稳定时最大为3.3N)
/*******力读取操作********/
/*******力读取前需要获取设备装态********/
hdGetCurrentDevice();//对设备的力进行读取操作之前,需要先获取设备当前设备状态,否则读取的值不会更新。
Get(HL_DEVICE_FORCE,F)//设备力送入F形参中(注意:此时的力为动态力,有抖动最大可达8N,考虑设备安全不建议尝试)
hdEndFrame(hdGetCurrentDevice());
需要注意的是,对设备进行力操作需要对设备进行外设【安全】配置,否则力与力矩操作无效!一般不能直接进行力或力矩操作。配置方法如下:
1、在【任务调度启动】前配置力的【安全】配置,加入力与具使能函数包,接着例1如下:
hdEnable(HD_OUTPUT_F
****************虚拟夹具的力读取与控制************************
1、首先力的读取要声明【全局变量】
hduVector3Dd F;//三维矢量力(x,y,z三个方向的力)
2、对力的控制可以采用配置函数Set()与Get()函数;
3、对力觉的控制或读取操作需要放到【回调帧】开始与结束之间,如例子1:
例子1:
hdBeginFrame(hdGetCurrentDevice());
/*******力控制操作********/
Set(HL_DEVICE_FORCE,F);//将期望力F送入设备(注意:虚拟夹具稳定时最大为3.3N)
/*******力读取操作********/
/*******力读取前需要获取设备装态********/
hdGetCurrentDevice();//对设备的力进行读取操作之前,需要先获取设备当前设备状态,否则读取的值不会更新。
Get(HL_DEVICE_FORCE,F)//设备力送入F形参中(注意:此时的力为动态力,有抖动最大可达8N,考虑设备安全不建议尝试)
hdEndFrame(hdGetCurrentDevice());
需要注意的是,对设备进行力操作需要对设备进行外设【安全】配置,否则力与力矩操作无效!一般不能直接进行力或力矩操作。配置方法如下:
1、在【任务调度启动】前配置力的【安全】配置,加入力与具使能函数包,接着例1如下:
hdEnable(HD_OUTPUT_F