서보모터(SG90)(씨마스 정보교과서): 두 판 사이의 차이

아두위키 : Arduwiki
(새 문서: {{#seo:|title=아두위키 : 아두이노 서보모터(SG90)(씨마스 정보교과서) 가이드|title_mode=append|keywords=아두이노, 정보과학, 메이커학습, 수행평가, 서보모터(SG90), 아두이노 작품, 아두이노 예제코드, 엔트리 아두이노, 파이썬 아두이노|description=씨마스 고교 정보교과서 내용에 따라 아두이노로 서보모터(SG90)를 제어하는 방법(기본정보, 회로, 예제 코드)을 소개합니다. 정보...)
 
편집 요약 없음
 
(같은 사용자의 중간 판 2개는 보이지 않습니다)
2번째 줄: 2번째 줄:


'''[[서보모터(Servo motor, SG90)]]''' 문서에서 모듈에 대한 기본 정보를 참고해주세요.
'''[[서보모터(Servo motor, SG90)]]''' 문서에서 모듈에 대한 기본 정보를 참고해주세요.
※ 교과서 내용에 따라 엔트리파이선을 사용합니다.
[[아두이노 사용 방법|'''아두이노 사용 방법''']] 문서에서 엔트리파이선 활용 방법을 참고하세요.


== '''P. 215 스스로 해결하기④ (서보 모터, 부저, LED)''' ==
== '''P. 215 스스로 해결하기④ (서보 모터, 부저, LED)''' ==
본 예제는 교과서 내용에 따라 엔트리파이선을 사용합니다.
모터가 움직이는 각도가 커질수록 LED가 밝아지고 높은 소리가 나오는 프로그램입니다.
 
[[아두이노 사용 방법]] 문서에서 엔트리파이선을 활용 방법을 참고하세요.


=== 연결 ===
=== 연결 ===
13번째 줄: 15번째 줄:


=== 예제 코드 ===
=== 예제 코드 ===
<syntax
<syntaxhighlight lang="python3" line="1">
import Entry
import Arduino
 
pos = 1
brightness = 1
 
def when_start():
    pos = 1
    brightness = 1
    while True:
        while (pos < 180):
            Arduino.servomotorWrite(9, pos)
            Arduino.analogWrite(11, brightness)
            if (pos == 30):
                Arduino.tone(6, "C", 4, 0.5)
            if (pos == 60):
                Arduino.tone(6, "D", 4, 0.5)
            if (pos == 90):
                Arduino.tone(6, "E", 4, 0.5)
            if (pos == 120):
                Arduino.tone(6, "F", 4, 0.5)
            if (pos == 150):
                Arduino.tone(6, "G", 4, 0.5)
            if (pos == 179):
                Arduino.tone(6, "A", 4, 0.5)
            brightness += 1.4
            pos += 1
            Entry.wait_for_sec(0.015)
        pos = 1
        brightness = 1
</syntaxhighlight>

2024년 2월 1일 (목) 15:17 기준 최신판

본 위키는 씨마스 고교 정보교과서 내 서보모터(SG90)에 해당하는 내용을 서술합니다.

서보모터(Servo motor, SG90) 문서에서 모듈에 대한 기본 정보를 참고해주세요.

※ 교과서 내용에 따라 엔트리파이선을 사용합니다.

아두이노 사용 방법 문서에서 엔트리파이선 활용 방법을 참고하세요.

P. 215 스스로 해결하기④ (서보 모터, 부저, LED)

모터가 움직이는 각도가 커질수록 LED가 밝아지고 높은 소리가 나오는 프로그램입니다.

연결


예제 코드

import Entry
import Arduino

pos = 1
brightness = 1

def when_start():
    pos = 1
    brightness = 1
    while True:
        while (pos < 180):
            Arduino.servomotorWrite(9, pos)
            Arduino.analogWrite(11, brightness)
            if (pos == 30):
                Arduino.tone(6, "C", 4, 0.5)
            if (pos == 60):
                Arduino.tone(6, "D", 4, 0.5)
            if (pos == 90):
                Arduino.tone(6, "E", 4, 0.5)
            if (pos == 120):
                Arduino.tone(6, "F", 4, 0.5)
            if (pos == 150):
                Arduino.tone(6, "G", 4, 0.5)
            if (pos == 179):
                Arduino.tone(6, "A", 4, 0.5)
            brightness += 1.4
            pos += 1
            Entry.wait_for_sec(0.015)
        pos = 1
        brightness = 1