Как прочитать / рассчитать настройку жесткости соединения на роботе NAO - PullRequest
0 голосов
/ 08 апреля 2019

У меня есть программа на C ++, которая связывается с Naoqi DCM, отправляет команды и считывает информацию о состоянии, но я не могу найти способ непосредственно прочитать настройку жесткости соединения.

Наоки имеет следующие 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

Пока я могу писать ввыше приводов и считывания с датчиков, мне нужно определить настройку жесткости соединения, однако твердость является приводом только для записи и не может быть считана.

Я посмотрел значения, которые возвращает датчик ElectricCurrent иопределили, что это само по себе не дает желаемого результата.Даже при жесткости, установленной на максимум, если рычаг находится в позиции его назначения и нет смещающего крутящего момента, ElectricCurrent сообщает нулевой ток для соединения.Таким образом, вы не можете предполагать, что жесткость отключена при отсутствии тока.

Кто-нибудь знает, как определить настройку жесткости соединения, не используя motionProxy.getSummary()?

1 Ответ

0 голосов
/ 09 апреля 2019

Вы можете использовать ALMotionProxy.getStiffiness (jointNames) .

...