V-REP使用笔记(1) —— 力传感器的配置和使用

时间:2024-04-03 18:43:30

1.Force Sensors的添加

AddForce sensor

然后拖到响应的模型树位置,调整位姿即可

2. 传感器 介绍

V-REP使用笔记(1) —— 力传感器的配置和使用
如上图所示,Force sensor是一个六维力传感器,分别可测量沿x、y和z轴施加在传感器上的力以及围绕x、y和z轴施加在传感器上的扭矩。

对于关节中的力矩,可直接通过API函数simxGetJointForce来获取,本文主要记录传感器的使用,不涉及关节力矩的获取。

Force sensor相当于一个刚性连接,在仿真过程中,如果外力超过指定的力/扭矩阈值或满足某些其他用户定义的条件时,力传感器可能会损坏,即这个刚性连接会被破坏掉。

注意:要想力传感器工作,必须enable动力学属性

关于力传感器的本地帮助文档位于:①CoppeliaSim_Edu_V4_0_0_Win/helpFiles/en/forceSensors.htm;②forceSensors.htm

3. 传感器属性设置

  • Filter:当通过力传感器获取力或扭矩数据时,会对其进行累加并可以进行过滤,以减少抖动值。
  • Sample size:滤波器应使用的值数。默认值1为不使用滤波器(原始输出)。
  • Average value:如果选择,则传感器将提供平均值(样本的平均值)
  • Median value:如果选择,则传感器将提供样本中值
  • Trigger settings:允许设置一些自动触发条件,触发器将调用触发器回调函数simBreakForceSensor,具体参照手册
  • Force threshold:设置力矢量阀值
  • Torque threshold:设置扭矩矢量阀值
  • Consecutive threshold violations for breaking:触发前允许传感器连续超过阀值的次数
  • Object size:调整传感器3D表示大小,没有实际的功能作用
  • Adjust color A / B: 可调整力传感器的两种颜色

4. API使用及数据可视化

  • Step1:使用simxGetObjectHandle获取传感器Handle
  • Step2:通过Handle调用simxReadForceSensor

具体参见手册Remote API
V-REP使用笔记(1) —— 力传感器的配置和使用
数据可视化方案:

  • 方案1:使用相应的语言调用相应的包,如MATLAB使用plot
  • 方案2:在V-REP中使用Graph工具进行可视化,下图为一个5㎏重物*落体在机械臂末端产生的力数据
    V-REP使用笔记(1) —— 力传感器的配置和使用

注意:使用Bullet和ODE引擎时,接触边界也进行了碰撞计算,会导致数据一直产生不正确的跳动,解决方案:在Common中设置碰撞掩码(mask),使其掩码位错开,不进行碰撞计算即可
V-REP使用笔记(1) —— 力传感器的配置和使用

来看下大佬搞的称重器:
V-REP使用笔记(1) —— 力传感器的配置和使用

5. 应用场景

  • 机械臂末端力传感器
  • 手爪夹持力的检测
  • 足式机器人地面接触力的检测
  • 其他

参考文献: