Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 1차원 DP
- 2차원 dp
- 99클럽
- @BeforeAll
- @BeforeEach
- @Builder
- @Entity
- @GeneratedValue
- @GenericGenerator
- @NoargsConstructor
- @Query
- @Table
- @Transactional
- Actions
- Amazon EFS
- amazon fsx
- Android Studio
- ANSI SQL
- ApplicationEvent
- assertThat
- async/await
- AVG
- AWS
- Azure
- bind
- builder
- button
- c++
- c++ builder
- c03
Archives
- Today
- Total
기록
Servo모터 제어하기 본문
서보모터(SG-90)
서보모터는 모터와 기어박스 그리고 제어회로로 구성되어있어, 특정 위치로 이동하거나, 특정한 수치(속도 등)만큼 가동시킬 때, 모터로 부터의 피드백을 통해 정확하게 제어할 수 있는 구조를 갖추고 있는 모터로 자동화 생산 시스템, 로봇, 장난감, 가전제품 등 광범위하게 쓰이고 있습니다.
서보모터에는 3개의 단자가 있습니다. 일반적으로 3개의 케이블은 검은색(또는 갈색), 붉은색, 황색(또는 주황색, 흰색)으로 표시되어 있으며, 붉은색 선은 +전원, 검은색 선은 -전원에 연결되어 서보모터에 전기를 공급하는 역할을 하며, 노란색 선은 서보모터의 동작을 제어하는 신호선입니다.
듀티비(Duty Cycle)
듀티 사이클은 기계 제어 방법 중 하나로, On 신호가 지속되는 특정기간의 백분율이다.
각도 | 듀티비 |
0 | 2.5 |
90 | 7.5 |
180 | 12.5 |
브레드 보드 연결
라즈베리 파이 | SG-90 서보모터 |
VCC(5V) | 빨간색 |
GPIO 18 | 오렌지색 |
GND | 갈색 |
코드
#-*-coding:utf-8-*-
# 필요한 라이브러리를 불러옵니다.
import RPi.GPIO as GPIO
import time
#서보모터를 PWM으로 제어할 핀 번호 설정
SERVO_PIN = 18
# 불필요한 warning 제거
GPIO.setwarnings(False)
# GPIO핀의 번호 모드 설정
GPIO.setmode(GPIO.BCM)
# 서보핀의 출력 설정
GPIO.setup(SERVO_PIN, GPIO.OUT)
# PWM 인스턴스 servo 생성, 주파수 50으로 설정
servo = GPIO.PWM(SERVO_PIN,50)
# PWM 듀티비 0 으로 시작
servo.start(0)
try:
while True:
# 듀티비를 변경하여 서보모터를 원하는 만큼 움직임
servo.ChangeDutyCycle(7.5) # 90도
time.sleep(1)
servo.ChangeDutyCycle(12.5) # 180도
time.sleep(1)
servo.ChangeDutyCycle(2.5) # 0도
time.sleep(1)
except KeyboardInterrupt:
servo.stop()
GPIO.cleanup()
실습
'라즈베리파이' 카테고리의 다른 글
PWM_LED 밝기 제어 (0) | 2020.10.20 |
---|---|
버튼으로 LED 제어하기 (0) | 2020.10.18 |
Button으로 입력받기 (0) | 2020.10.17 |
LED 제어하기 (0) | 2020.10.16 |
Raspeberry Pi 초기설정 (0) | 2020.10.15 |
Comments