다이나믹셀 방향 조절 및 속도 일정하게 유지

다이나믹셀 모터를 같은 속도로 제어하나 방향을 다르게 (역방향/순방향)으로 제어하고 싶습니다. 아두이노에서

dxl.setGoalVelocity(ID, 10, UNIT_PERCENT)
dxl.setGoalVelocity(ID, -10, UNIT_PERCENT)

으로 해서 작동시켜보니까 방향을 알맞게 잘 바뀌는데 속도가 다르네요. 어떻게하면 같은 속도로 바꿀 수 있나요? 감사합니다.

안녕하세요.

어떤 다이나믹셀을 사용하고 있으신가요?

또한, 어떤 예제를 사용하고 있는지도 알려주세요.

감사합니다.

다이나믹셀 mx-28ar 사용 중입니다.

예제는 dynamixel shield_ velocity mode에 있는 dxl.setGoalVelocity 사용 중입니다.

감사합니다.

백분율(UNIT_PERCENT)를 넣지 마지고 아래와 같이 넣어서 확인해주세요.

dxl.setGoalVelocity(DXL_ID, 10)
dxl.setGoalVelocity(DXL_ID, -10)

GoalVelocity 값을 넣어서 사용해주세요

또한, 모터의 실제 속도는 다이나믹셀의 내부 특성과 물리적 제약에 따라 방향(+, -)에 따라 조금씩 차이가 있을 수 있습니다.

그렇게 코드를 설정하면 모터가 돌아가지 않네요. 다른 방법이 있을까요?

그렇게 코드를 설정하면 모터가 돌아가질않네요. 혹시 다른 방법 있을까요? 감사합니다.

dynamixel shield_ velocity mode예제를 이용한 간단한 예시입니다.

setup부분은 사용하시는 다이나믹셀에 맞게 통신속도, ID를 작성을 하셔야 합니다.

loop부분에 아래와 같이 넣어서 사용하시면 됩니다.

dxl.setGoalVelocity(DXL_ID, 200);
delay(5000);
dxl.setGoalVelocity(DXL_ID, -200);
delay(5000);

setup 부분에 통신속도 및 ID도 작성을 했습니다.

올려주신 코드로 돌려보았는데
dxl.setGoalVelocity(DXL_ID, 200);
delay(5000);

부분은 모터가 시계방향으로 잘 돌아가지나,
속도를 음수값을 넣었을 때에는 모터가 아예 돌아가질 않네요.
단위는 UNIT_RPM 으로 했을 때도 음수값은 돌아가지 않고요.
UNIT_PERCENT로 했을 때는 시계반대방향으로 돌아가지만 정방향/역방향 속력이 차이가 많이 심하네요.

테스트 하신 Loop 부분 코드를 첨부해주세요.