아두이노는 서보 모터 제어를 위한 Servo 라이브러리를 기본 라이브러리로 제공하고 있다.
1. 라이브러리 추가
전처리 지시자 # include 로 Servo 라이브러리를 추가한다.
#include <Servo.h> |
2. 객체 선언
Servo 클래스의 멤버 함수를 사용하기 위해 객체를 선언한다.
Servo myServo ; |
위 예시의 객체명은 myServo 이다.
3. attach
서보 모터를 지정한 핀에 연결하고 현재 서보 모터가 연결된 채널을 반환
uint8_t Servo::attach ( int pin ) uint8_t Servo::attach ( int pin , int min, int max ) |
매개변수
pin : 서보 모터의 제어선이 연결된 핀 번호
min : 0도에 해당되는 마이크로초 단위의 펄스 폭
max : 180도에 해당되는 마이크로초 단위의 펄스 폭
/* 사용 예시 */ myServo.attach ( 10 ) ; // 10 번핀에 연결 |
4. write
void Servo::write (int value) |
서보 모터로 0에서 180사이의 값을 출력
/* 사용 예시 */ myServo.write ( 60 ) ; // 60도 회전 |
표준 서보 모터의 경우 value 값은 축의 회전 위치를 나타낸다.
5. writeMicroseconds
void Servo::writeMicroseconds (int value) |
서보 모터로 마이크로초 단위의 값을 출력 한다.
표준 서보 모터의 경우 1000이 0도, 1500이 90도, 2000이 180도에 해당된다.
/* 사용 예시 */ myServo.writeMicroseconds ( 1500 ) ; // 90도 |
6. read
void Servo::read ( ) |
매개변수는 없고 Write 함수를 사용하여 마지막으로 쓴 값을 [0,180] 범위의 값으로 반환
7. attached
bool Servo ::attached (bool) |
서보 모터의 핀을 지정한뒤, 그 해당 객체의 핀이 연결되어있는지 상태를 반환한다.
8. detach
void Servo ::detach () |
서보 모터의 연결을 해체한다.
9. 코드 연습
'Embedded System > 소프트웨어 (C,C++)' 카테고리의 다른 글
[C/C++] Call By Value, Call by address (0) | 2023.08.07 |
---|---|
[Arduino] Wire 라이브러리 (0) | 2023.04.19 |
[C/C++] 이상형 월드컵 (ideal_worldCup) (0) | 2023.04.06 |
임베디드 C언어/ 툴체인 개념 (0) | 2023.01.31 |
[C/C++] 포인터 개념 정리 (0) | 2022.12.21 |