【问题标题】:How to read/calculate the stiffness setting of a joint on a NAO robot如何读取/计算 NAO 机器人关节的刚度设置
【发布时间】:2019-04-09 16:13:35
【问题描述】:

我有一个与 Naoqi DCM 通信、发送命令和读取状态信息的 C++ 程序,但我找不到直接读取关节刚度设置的方法。

Naoqi 有以下ALMemory 键用于特定关节,左肩间距在下面的示例中。

Device/SubDeviceList/LShoulderPitch/Position/Actuator/Value
Device/SubDeviceList/LShoulderPitch/Position/Sensor/Value
Device/SubDeviceList/LShoulderPitch/ElectricCurrent/Sensor/Value
Device/SubDeviceList/LShoulderPitch/Temperature/Sensor/Value
Device/SubDeviceList/LShoulderPitch/Hardness/Actuator/Value
Device/SubDeviceList/LShoulderPitch/Temperature/Sensor/Status

虽然我能够写入上述执行器并从传感器读取数据,但我需要确定关节的刚度设置,但 Hardness 是只写执行器,无法读取。

我查看了ElectricCurrent 传感器返回的值,并确定它本身并不能提供所需的结果。即使将刚度设置为最大值,如果手臂处于其目标姿势并且没有位移扭矩力,ElectricCurrent 也会报告关节的零电流。因此,您不能假设没有电流时刚度会关闭。

有人知道如何在不使用motionProxy.getSummary() 的情况下确定关节的刚度设置吗?

【问题讨论】:

  • 开始时,设置一个默认值,然后跟踪您设置的值吗?
  • 我已经这样做了。但是,如果流程被重置,或者 walk 模块在进行调整时直接写入 DCM,那么状态就会变得不清楚。我需要能够通过读取一些值来确定机器人的当前状态。
  • 我不同意你的说法:“Device/SubDeviceList/LShoulderPitch/Hardness/Actuator/Value”是只写的。我很确定您可以阅读它。

标签: c++ nao-robot


【解决方案1】:

【讨论】:

    猜你喜欢
    • 2019-11-12
    • 1970-01-01
    • 1970-01-01
    • 2022-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多