안녕하세요. 오늘은 서보모터 사용에 대해서 알아보겠습니다.
서보모터란 정해진 회전 반경 안에서 PWM 신호에 의해 제어되는
정밀한 동작을 하는 모터입니다.
준비물
※페이지 하단의 그림 클릭※
서보모터 SG90 혹은 MG90,MG996 360도
아두이노 택트 스위치
브레드보드 400핀
아두이노 R3 보드
가변저항 10K
스위치로 SG90 동작하기
이렇게 연결해 주시고
아래의 소스를 업로드해주세요!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | #include <Servo.h> //서보모터 라이브러리 Servo SG90; //서보모터 객체를 선언 int sg90 = 11; int Switch1= 2; int Angle=0; void setup() { Serial.begin(9600); SG90.attach(sg90); // 11번핀에 연결 pinMode(Switch1, INPUT_PULLUP); } void loop() { int SW1 = digitalRead(Switch1); if(SW1 == LOW){ Serial.print("Switch : ★★★ START ★★★"); // 스위치 눌렀을때 스타트 출력 및 동작시작 for(Angle = 0; Angle <= 180; Angle++){ //0부터 180까지 1씩 증가 SG90.write(Angle); Serial.print("Angle : "); Serial.println(Angle); } delay(1000); for(Angle = 180; Angle > 0; Angle--){ //180부터 0까지 1씩 감소 SG90.write(Angle); Serial.print("Angle : "); Serial.println(Angle); } delay(200); } delay(10); } | cs |
스위치를 누르면 시작과 함께 각도가 변하는 것을 볼 수 있어요.
가변저항으로 SG90 동작하기
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | #include <Servo.h> //서보모터 라이브러리 Servo SG90; //서보모터 객체를 선언 int sg90 = 11; int Angle=0; int val = 0; void setup() { Serial.begin(9600); SG90.attach(sg90); // 11번핀에 연결 } void loop() { int val = analogRead(A1); int Angle = map(val, 0, 1023, 0, 179); SG90.write(Angle); Serial.print("Angle : "); Serial.println(Angle); delay(10); } | cs |
오늘은 서보모터 사용법에 대해서 알아봤어요.
다음에는 RFID-RC522 카드리더 모듈에 대해서 알아볼게요
아두이노 arduino 코딩 코딩예제 예제 code coding 서보 서보모터 제어 서보제어 모터제어 가변저항 볼륨저항 볼륨 가변 저항 s/w 스위치 택트스위치 택트 스위치 sg90 360도 mg90s mg90 인투피온 intopion