Home » 산딸기 가지고 놀기 » 라즈베리파이 GPIO 강좌 : 라즈베리파이 서보모터 제어하기

라즈베리파이 서보모터 제어하기

안녕하세요 산딸기마을 이장 나무꾼 입니다.
오늘은 서보모터 제어에 대한 내용을 다루어 볼까 합니다.
집안을 뒤저보니 예전 파이 카메라 제어를 위해 구매해 둔 미니서보인 SG-90이 있어 서버모터를 사용하여 포스트를 위해 사용 하겠습니다.
아래 내용은 제가 보유 중인 Mini Servo SG-90 에 대한 스펙입니다.

0. Mini Servo SG-90 


 
[table caption=””width=100% colwidth=”200|200″colalign=”center|left”]Features:,degree,Dimension:
3 pole ferrite/all nylon gear,Output torque: 1.6kg/cm 4.8V,21.5 x 11.8 x 22.7mm
Top ball bearing,,Weight: 9g
Operating Voltage: 4.8V~6.0V,,Servo Pin
Operating speed: 0.12sec/60,,Red = Battery(+)
,,Brown = Battery(-)
,,Orange(yellow) = Signal[/table]
 

1. 라즈베리파이와 서보모터 결선도

servo
1. 서보모터 구동 테스트

import RPi.GPIO as GPIO
import time
pin = 18
GPIO.setmode(GPIO.BCM)
GPIO.setup(pin, GPIO.OUT)
p = GPIO.PWM(pin,50)
p.start(7.5)
try:
while True:
p.ChangeDutyCycle(7.5)
time.sleep(1)
p.ChangeDutyCycle(12.5)
time.sleep(1)
p.ChangeDutyCycle(2.5)
time.sleep(3)
except KeyboardInterrput:
p.stop()
GPIO.cleanup()

 

2. 서보모터 키보드 제어 테스트


import RPi.GPIO as GPIO
import time
pin = 18
GPIO.setmode(GPIO.BCM)
GPIO.setup(pin, GPIO.OUT)
p = GPIO.PWM(pin,50)
p.start(12.5)
time.sleep(0.5)
p.stop()
p.start(7.5)
time.sleep(0.5)
p.stop
p.start(10.0)
time.sleep(0.5)
p.stop()
var = 1
try:
while True:
var = raw_input("Enter L / R / C: ")
if var == 'R':
print 'R'
p.start(2.5)
time.sleep(1)
p.stop()
elif var == 'L':
print 'L'
p.start(12.5)
time.sleep(1)
p.stop()
elif var == 'C':
print 'C'
p.start(7.5)
time.sleep(1)
p.stop()
except KeyboardInterrput:
GPIO.cleanup()

산딸기마을 포스트 검색

공동제작 공동프로젝트 무상후원 기관

산딸기마을 기부하기

산딸기마을 방문자 현황

Flags Countries Visits Page views
South Korea 626063 1845660
United States 10882 26091
Japan 5011 13204
Germany 2755 5151
India 1897 2902
Canada 1729 4640
United Kingdom 1596 2642
Australia 1240 2901
Russia 1219 1677
China 1077 2239
Total Pageviews: 1936700