omx-setup

0 downloads 0 likes on Hugging Face updated

Model card

OMX Follower 그립퍼 설정 (2026-10-28)

ROBOTIS OMX + LeRobot 환경에서 팔로워 그립퍼(ID 16) 과부하를 해결한 설정.

모터 설정 (ID 16, Operating Mode 5 = Current-Based Position Control)

레지스터 주소 값 영역
Current_Limit 38 600 EEPROM
Goal_Current (유지) 102 100 RAM
Goal_Current (이동 부스트) 102 200 RAM
Position_P_Gain 84 800 RAM
Position_I_Gain 82 0 RAM
Position_D_Gain 80 0 RAM
Min_Position_Limit 52 2123 EEPROM
Max_Position_Limit 48 2873 EEPROM

리더 그립퍼(ID 6): homing_offset 100, range 917~2577

명령줄 옵션

--teleop.gripper_open_pos=95

없으면 리더 정규화 출력이 62에서 막혀 팔로워가 충분히 열리지 않는다.

원인 (세 겹 + 기구)

  1. 캘리브레이션 부재. 리더와 팔로워 그립퍼 가동 범위가 달랐는데 원시값을 1:1로 전달. JSON만 수정하면 is_calibrated 불일치로 calibrate()가 기본값(0~4095)으로 되돌림. 모터 EEPROM(Position Limit, Homing_Offset)과 JSON을 함께 맞춰야 적용됨.
  2. Position 게인 P 250 / D 600. 작은 위치 오차에서 구동량이 부족해 마찰을 못 넘음.
  3. 쥐는 동안 PWM이 상한 885에 포화되어 약 2.5초 뒤 Overload(error 32). 전류는 162로 Current_Limit 600에 한참 못 미쳤음. Overload 판정은 전류 초과가 아니라 "최대 출력이 지속되는 것" 기준.
  4. 그립퍼 측 나사 하나가 열림을 물리적으로 막고 있었음. 조인 뒤 열림 끝이 2573에서 2902로 확대.

중요한 성질

  • Position 게인과 Goal_Current는 RAM. 전원을 끄거나 reboot하면 초기화됨
  • LeRobot이 connect 시 configure()에서 다시 쓰므로, 소스에 넣어야 유지됨
  • Current_Limit과 Position Limit은 EEPROM. 쓰려면 Torque_Enable=0이고 Hardware Error가 0이어야 함
  • Hardware Error Status(주소 70)는 reboot 또는 전원 재투입으로만 지워짐

파일

  • omx_patches.diff : lerobot 소스 수정 (git apply로 적용)
  • omx_calibration.tar.gz : ~/.cache/huggingface/lerobot/calibration 전체