HXT900 마이크로 서보모터 컨트롤 소스

1. HXT900 마이크로 서보모터

HXT900은 -90 ~ 90′ 범위 약 180′ 이내에서 위치를 제어하는 마이크로 서보모터입니다. 상세 제원은 아래와 같습니다.

HXT900 9g / 1.6kg / .12sec Micro Servo

Operating voltage : 3v ~ 6v
Speed : 0.12 sec/60(4.8V)
Torque : 2.5 kg-cm
Temperature range : -30C~60C
Plastic Bushing, 25cm wire

Servo arms & screw included
Gears: Nylon White type

 

2. 연결방법

표준 RC 서보에는 3가닥의 전선이 있습니다. 검정색(GND), 적색(PWR = Power), 황색(SIG = Signal). 검정색 대신 갈색선을 사용하기도 합니다. 3가닥의 선을 각각 아두이노에 연결합니다.

주의!!: 서보모터가 약하거나 제대로 동작하지 않는다면 아두이노 보드의 출력보다 많은 전류를 요구하기 때문일 수 있습니다. 이때는 외부 전원으로 파워를 공급해줘야 합니다. 아래 PWR, GND를 외부 전원의(일반적으로 4.5 ~ 6V) +, – 에 연결합니다. 이 때 외부전원의 (-) 를 아두이노 GND, 서보모터 GND와 연결되도록 해야 합니다.

서보모터 아두이노
GND (검정색 혹은 갈색) GND
PWR (적색) 5V
SIG (황색) D2

 

3. 동작 방법

아두이노와 연결된 핀으로 입력되는 신호의 지속시간(pulse width)으로 위치를 제어합니다.

펄스폭 1.5ms (= 1500us)를 입력하면 중심 위치에 맞춰지며, 0.5ms 에서 -90′, 2.5ms 에서 90′ 회전한 위치에 맞춰집니다. 따라서 0.5 ~ 2.5ms 의 범위를 넘어가지 않도록 코드상에서 제어해줘야 합니다. 아두이노와 연결한 디지털 핀에 우리가 원하는 위치에 해당하는 펄스 주기 시간만큼 High 신호를 주고 다시 Low 신호를 주면 됩니다. 서보모터는 각도 요청을 받기위해 20ms 주기로 펄스를 기다리므로 디지털 핀에 신호를 주고 20ms 가 지나지 않았으면 다시 신호를 주지 않도록 해야합니다.

rcservo_pwm_vs_angle

아래 코드상에서는 약간 여유를 둬서 0.6 ~ 2.4ms 의 범위를 넘어가지 않도록 제어하고 있습니다.

 

4. 코드 (스케치)

코드를 아두이노에 업로드 하고 Serial Monitor 창을 엽니다. ‘<‘ 를 입력하고 전송하면 각도가 줄어들고, ‘>’를 입력하고 전송하면 각도가 커집니다. 스페이스를 누르고 전송하면 중심 위치로 갑니다.

Servo 라이브러리를 사용하면 간단하게 서보모터를 제어할 수 있습니다. 서버모터에 연결된 핀 설정 후 원하는 각만 입력해주면 됩니다.

 

 

Post Author: TORTUGA

TORTUGA
궁금하신 점은 새로 개편한 홈페이지의 QnA 게시판을 이용해주세요!!!!!!! http://www.hardcopyworld.com/gnuboard5/bbs/board.php?bo_table=qna

2 thoughts on “HXT900 마이크로 서보모터 컨트롤 소스

    emilie

    (2015년 1월 22일 - 12:45 오후)

    안녕하세요? 코딩 무식자 입니다..
    아두이노를 써서 2축으로 움직이는 서보 모터 움직임을 구현하고 싶은데
    어떤식으로 소스코드를 짜야할지 도통 감이 안옵니다…
    조이스틱이나 터치 디스플레이의 위치에서 받은 x,y 좌표를 그대로 servo.write에 변환하고싶은데
    각도라서 어떻게 계산해야 할지 모르겠어요… 혹시 알려주시면 큰 도움이 될 것같습니다.

      TORTUGA

      TORTUGA

      (2015년 1월 26일 - 1:06 오전)

      아 제가 답을 잘못 달았네요.. 찾고 계신것이 로봇팔 움직임이죠? 좀 복잡한데… 아래 내용을 참고하셔야 할 것 같습니다. 어쩔수 없이 삼각함수를 사용하셔야;;;
      http://www.matlabinuse.com/10640

댓글 남기기

이메일은 공개되지 않습니다.