X시리즈 모터 Present Load값 읽어오기

안녕하세요. 질문이 있어 글을 남깁니다.

현재 시스템을 X시리즈 모터를 이용해 구성한 상태입니다. 보다 정확히로는 XM모터 7개, XH모터 1개, XC모터 1개를 구동부로 사용하고 OpenRB-150을 제어기로 사용하고 있습니다.

제가 하고자 하는 것은 XM430-W350-T모터와 XH540-W270-T모터의 Present Load를 구하고 싶습니다.

e-Manual을 확인해보았는데, X시리즈 모터에는 Present Load에 대한 설명이 없고 AX와 MX모터에는 Present Load 설명이 나와있는걸 보니… 아마 X시리즈 모터에서는 해당 기능을 제공하지 않는 것으로 파악됩니다.

현재 시스템을 변경할 수는 없는 상황인데 혹시 전류, 전압, PWM 등 모니터링 가능한 지표들을 이용해 Load를 측정할 수 있는 방법은 없을까요?

같은 맥락에서 Overload Error가 발생하는 프로토콜이 어떻게 되는지도 궁금합니다. 해당 에러가 발생한다는 것은 내부에서 하중을 모니터링 하다가 특정 값이 넘어가면 에러가 발생하는 것이라 생각하는데 어떤 방식으로 작동하는지 알 수 있을까요?

  1. The equivalent control table item to determine load for X series servos is Present Current (126). This can be easily read on your OpenRB using the getPresentCurrent() function from the DYNAMIXEL2Arduino Library.
  2. An overload error is triggered when a DYNAMIXEL has detected a stall condition. This is determined by monitoring current and movement status. Periods of high current output with little to no movement trigger stall conditions.