SG90 서보모터 제어

2019. 6. 26. 00:56임베디드/ATmega128

서보모터는 3개의 핀으로 동작하게 되는 2개의 핀으로 DC 전압을 주고나서, 나머지 하나의 핀으로 PWM 신호를 줘서 각도를 유지하는 모터(안에 피드백(모터드라이버) 회로가 내장되어 있다)

 

주의사항으로는 서보모터를 강제로 돌렸을 때, 내부 회로가 망가질 수 있다

 

다시 말해, 펄스의 폭으로 각도를 조절할 수 있는데 서보모터마다 구동스펙이 달라서 일일이 확인해야 한다

 

SG90 datasheet : http://www.ee.ic.ac.uk/pcheung/teaching/DE1_EE/stores/sg90_datasheet.pdf

 

위 두 그림은 데이터시트 안의 내용으로 20ms 펄스에서 

1. 1ms는 -90도 회전각

2. 1.5ms는 0도 회전각

3. 2ms는 90도 회전각

로 동작하게 된다

 

데이터시트의 내용이 잘못되어있다. 실제론 0.5ms가 -90도, 2.5ms가 90도에 해당된다

 

최대, 최소 듀티 사이클을 넘어간다면 탈조현상이 일어나면서, 지지직 소리를 내며 모터가 고장나거나, 주변회로에 문제가 발생할 수 있다. 따라서 정해진 듀티 사이클에서 동작시켜야만 한다

 

1. delay로 서보모터 제어

2. 스위치 입력으로 서보모터 제어

3. UART 수신입력(인터럽트)으로 서보모터 제어

 

'임베디드 > ATmega128' 카테고리의 다른 글

AVR 스터디 [2019.06.30]  (0) 2019.06.30
ATS75 온도값  (0) 2019.06.30
bps와 대역폭  (0) 2019.06.22
ATS75D8 ATmega128 I2C 소스  (0) 2019.06.22
ATmega128 I2C(TWI) Template  (0) 2019.06.21