반응형

안녕하세요, 츄르 사려고 코딩하는 집사! 코집사입니다.

오늘도 12시를 넘기고 아두이노 관련 일을 맡아 서보모터에 대해 포스팅을 해보려고 합니다.


서보모터는 아래의 사진과 같이 생겼습니다.


서보모터의 명칭은 Micro Servo Motor SG90입니다.


서보모터는 아두이노에서도 여러 용도로 많이 사용되고 있는데요. 예를 들어, 로봇에 관련된 팔에 관절제어나 방향 등을 제어하거나, 물체를 밀어내는 용도 등으로 많이 사용되고 있습니다. 또한, 자동차 같은 경우에도 사용을 합니다. 


서보 모터에는 연속으로 회전하는 '연속회전 서보모터'와 0도에서 180도까지만 회전을 하는 '표준 서보모터'로 나뉩니다. 연속회전 서보모터는 360도 전체가 회전을 합니다. 


서보모터(Micro Servo SG90)는 총 3가지 색의 선이 있습니다.

주황색, 빨간색, 갈색이 있습니다.


- 주황색 : 제어신호를 의미

- 빨간색 : VCC

- 갈색    : GND

를 연결을 하면 됩니다. 






저는 아두이노 우노(Arduino Uno)를 가지고, 서보모터(Servo Motor)를 연결하였습니다.


- 주황색 : Digital 7번 PIN

- 빨간색 : 5V

- 갈색    : GND




위의 사진과 같이, 아두이노 우노(Arduino Uno)와 서보 모터(Servo Motor)를 연결을 하였습니다.

이제는 아두이노 스케치에 코딩을 할 차례입니다.

저는 for문을 이용하여 0에서 180까지 움직이는 것을 코딩하려고 합니다.

if 문이나 다른 조건문을 사용을 해서 servo를 제어할 수 있습니다.



위의 사진과 같이, 코딩을 했습니다. 아래는 코드를 복사하기 쉽게 텍스트로 남깁니다.



#include <Servo.h> //Servo를 사용

Servo servo; //Servo를 servo로 사용


int SERVO_PIN = 7; // 서보 모터의 제어 신호를 디지털 7번 핀에 꽂음

int FIRST_ANGLE = 0; // 초기 각도를 0도로 맞춤


void setup() {

  // put your setup code here, to run once:

  servo.attach(SERVO_PIN); // 디지털 7번 핀 서보모터 초기화

}


void loop() {

  // put your main code here, to run repeatedly:

  for(int i=0; i<180; i++)

  {

    servo.write(i);

    delay(20);

  }

}


이것으로 아두이노 우노(Arduino Uno)에서 서보 모터(Servo Motor, SG90)를 제어해봤습니다. 다음 포스팅에선, 인체 감지 센서와 비접촉식 적외선 온도 측정 센서를 가지고 서보모터를 제어하는 것을 포스팅을 해보겠습니다.

이상으로 츄르를 사려고 코딩하는 집사! 코집사였습니다.

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기