2차시: 스피커를 이용한 멜로디 연주 장치 만들기 스피커 연결하기 (디지털 2번 핀 연결) 스피커 명령어 이해하기 소리 생성 실습 단순한 멜로디 만들어 보기 옥타브 음계표 동요를 멜로디로 연주하기 모둠별 창작 멜로디 작곡 후 발표하기 변수 이해하기 및 실습하기 For 반복문 간단한 실습 반복문을 이용한 사이렌 소리 만들기 모둠별로 재미있는 소리를 만들어서 발표해 보기 소요시간: 90분 SPL-Duino 보드 컴퓨터 출력 장치 스피커 준비물
1. 스피커 연결하기 디지털 핀은 2번~13번 이름으로 총 12개를 사용할 수 있음. 스피커는 디지털 핀에 연결해야 함
1. 스피커 연결하기 스피커를 디지털 2번 핀에 연결합니다. 스피커는 극성이 없으므로 특별히 방향에 신경 쓰지 않고 연결해도 됩니다.
1. 스피커 연결하기 – 센서 연결하는 방법 스피커를 다른 디지털 핀에 연결해도 됩니다. 예를 들어 3번에 연결할 경우에는 이후 진행되는 실습에서 핀 번호를 3으로 지정해 주면 됩니다. 새로운 센서를 연결할 때에는 디지털이든 아날로그이든 핀 번호가 낮은 쪽부터 연결하는 습관을 가지는 것이 좋습니다. 디지털 핀에서는 디지털 4, 5, 6, 7번은 가능한 한 연결하지 말고 비워두기 바랍니다. 4, 5, 6, 7번은 모터제어 및 로봇제어할 때 사용되기 때문입니다.
톤 (Tone) 1) 스피커에서 소리가 발행하도록 하기 위해서는 이라는 명령어를 사용합니다. 목소리 톤이 굵다. 2. 스피커 명령어 이해하기 1) 스피커에서 소리가 발행하도록 하기 위해서는 톤 (Tone) 이라는 명령어를 사용합니다. 목소리 톤이 굵다. 목소리 톤이 가늘다 등 일생생활에서 톤이라는 단어를 들어 볼 수 있습니다.
1) 아두이노에서 사용되는 Tone 명령어는 3가지 값을 필요로 합니다. 2. 스피커 명령어 이해하기 1) 아두이노에서 사용되는 Tone 명령어는 3가지 값을 필요로 합니다. 스피커가 연결되어 있는 디지털 핀번호를 정의합니다. 얼마의 시간 동안 소리를 만들 지 지속시간을 정의합니다. 1000 밀리초는 1초입니다. 얼마의 진동수로 소리를 발생시킬 것인지 진동수를 Hz (헤로츠) 단위로 정의합니다.
아두이노에서 사용되는 Tone 명령어는 기다리기 명령어와 쌍으로 같이 있어야 소리가 납니다. 2. 스피커 명령어 이해하기 아두이노에서 사용되는 Tone 명령어는 기다리기 명령어와 쌍으로 같이 있어야 소리가 납니다. 톤 명령어는 항상 뒤에 기다리기 (Delay) 명령어가 같이 와야 합니다. 기다리기 명령어가 없으면 소리가 나지 않습니다.
아두이노에서 사용되는 Tone 명령어는 기다리기 명령어와 쌍으로 같이 있어야 소리가 납니다. 2. 스피커 명령어 이해하기 아두이노에서 사용되는 Tone 명령어는 기다리기 명령어와 쌍으로 같이 있어야 소리가 납니다. 기다리기 명령어의 시간과 톤 명령어의 지속 시간을 같게 설정해 줍니다.
1초간 1,000 헤르츠로 소리를 발생시키는 명령어는 다음과 같습니다. 2. 스피커 명령어 이해하기 1초간 1,000 헤르츠로 소리를 발생시키는 명령어는 다음과 같습니다.
1 2 아두이노에서 스피커 소리 발생 실습을 하게 되면 시끄러운 소리가 계속 나게 됩니다. 3. 스피커 소리를 끄는 방법 아두이노에서 스피커 소리 발생 실습을 하게 되면 시끄러운 소리가 계속 나게 됩니다. 소리가 나는 것을 확인한 후, 소리를 끄려면, 새 파일을 연 후, 바로 실행시켜서 보드에 있는 프로그램을 지워주면 됩니다. 1 새파일 클릭 2 비어 있는 상태로 실행버튼 클릭하여 실행
다음과 같이 다이어그램을 작성한 후 실행시켜 봅니다. 4. 스피커 소리 실습 다음과 같이 다이어그램을 작성한 후 실행시켜 봅니다.
4. 스피커 소리 실습 소리를 끕니다. 1 새파일 클릭 2 비어 있는 상태로 실행버튼 클릭하여 실행
다음과 같이 2,000 헤르츠로 1초간 소리를 내는 명령어를 더 추가해 봅니다. 5. 소리의 진동수를 변경해 봅니다. 다음과 같이 2,000 헤르츠로 1초간 소리를 내는 명령어를 더 추가해 봅니다. 프로그램을 실행한 후, 결과를 비교해 봅니다.
다음과 같이 3,000 헤르츠로 1초간 소리를 내는 명령어를 더 추가해 봅니다. 5. 소리의 진동수를 변경해 봅니다. 다음과 같이 3,000 헤르츠로 1초간 소리를 내는 명령어를 더 추가해 봅니다. 프로그램을 실행한 후, 결과를 비교해 봅니다.
다음과 같이 기다리기 명령어의 시간을 더 작게 줄여 봅니다. 6. 소리의 간격을 짧게 해 봅니다. 다음과 같이 기다리기 명령어의 시간을 더 작게 줄여 봅니다. 짧은 간격으로 음이 연주됩니다.
진동수 값을 0으로 하면 소리가 나지 않습니다. 7. 일정한 시간 동안 소리가 나지 않게 하기 위의 예는 200 밀리초 (0,2초) 동안 소리가 나지 않게 하는 명령입니다.
아래의 표를 참조하여, 도, 레, 미, 파, 솔, 라, 시 를 연주해 봅니다. 8. 옥타브 연주해 보기 아래의 표를 참조하여, 도, 레, 미, 파, 솔, 라, 시 를 연주해 봅니다. 음계를 연주해 봅니다.
9. 동요 연주하기 아래의 표를 참조하여, 동요를 연주해 봅니다.
10. 아두아노 보드의 프로그램을 처음부터 다시 시작시키기 검은색 리셋 스위치를 누르면 아두이노에서 실행중인 프로그램을 처음부터 다시 실행시킬 수 있습니다. 프로그램을 다시 처음 부터 실행시키고 싶은 경우, 컴퓨터에서 다시 실행하지 말고, 단지 보드에 있는 리셋스위치만 눌러 주기만 하면 됩니다.
여러 명이 화음을 만 든 후, 동시에 같이 실행하고자 할 경우에도 10. 아두아노 보드의 프로그램을 처음부터 다시 시작시키기 여러 명이 화음을 만 든 후, 동시에 같이 실행하고자 할 경우에도 동시에 리셋 스위치를 같이 눌러서 프로그램이 같이 실행되도록 하면 됩니다. 고급과정에서는 아두이노 보드에 내장되어 있는 아날로그 스위치를 이용하여 프로그램이 같은 시간에 실행되도록 하는 방법이 있으나, 이 방법은 조금 더 프로그래밍을 배운 후에 할 수 있습니다.
모둠별로 창작 멜로디를 작곡해서 발표해 봅니다. 2 명이 두 개의 화음을 만들어 동시에 연주해 봅니다. 11. 모둠별로 창작 음악을 작곡해 봅니다. 모둠별로 창작 멜로디를 작곡해서 발표해 봅니다. 2 명이 두 개의 화음을 만들어 동시에 연주해 봅니다.
a = 10 b = 20 사이렌 소리 만들기 실습에 앞서 프로그램을 반복 시키는 방법과 변수에 대해 배웁니다. 12. 변수란 무엇인가? 사이렌 소리 만들기 실습에 앞서 프로그램을 반복 시키는 방법과 변수에 대해 배웁니다. 2) 변수는 프로그램 내에서 값을 저장하는 용도로 사용됩니다. a = 10 b = 20 변수 변수는 알파벳으로 시작해야 하며, 숫자로 시작하면 않됩니다. 시작 문자는 특수문자나 영문 대소문자 등을 사용할 수 있습니다. 숫자는 중간에 올 수 있습니다.
O O O O X X a = 10 B = 20 _c123 = “Hello” A_b_123_d = -30 1Abc = 100 12. 변수란 무엇인가? 변수의 올바른 표기와 잘못된 표기 a = 10 B = 20 _c123 = “Hello” A_b_123_d = -30 1Abc = 100 에이 = 100 O O O O X 숫자로 시작하면 않됨 X 한글은 변수 사용이 않됨
왼쪽 위쪽에 있는 명령어 중에서 [0-1] 수식 명령어를 마우스로 추가해 줍니다. 13. 변수를 사용하는 방법 수식 명령어를 이용해 변수 사용하기 왼쪽 위쪽에 있는 명령어 중에서 [0-1] 수식 명령어를 마우스로 추가해 줍니다. 수식 명령어는 일반적인 변수 사용이나 계산을 위해 사용할 수 있습니다.
13. 변수를 사용하는 방법 a 라는 이름의 변수에 숫자 100을 저장해 봅니다. 키보드로 수식을 입력해 봅니다.
문자열 출력 (PrintLine) 명령어를 추가해서 값이 출력될 수 있도록 합니다. 13. 변수를 사용하는 방법 문자열 출력 (PrintLine) 명령어를 추가해서 값이 출력될 수 있도록 합니다.
문자열 출력 (PrintLine) 명령어를 추가해서 값이 출력될 수 있도록 합니다. 13. 변수를 사용하는 방법 문자열 출력 (PrintLine) 명령어를 추가해서 값이 출력될 수 있도록 합니다. 변수 a를 입력해 줍니다.
기다리기 명령을 추가해서 1초 간격으로 출력되도록 합니다. 13. 변수를 사용하는 방법 기다리기 명령을 추가해서 1초 간격으로 출력되도록 합니다. 프로그램을 실행하여 결과를 확인해 봅니다.
13. 변수를 사용하는 방법 두 숫자의 합을 구하는 방법을 배워 봅니다. 프로그램을 실행하여 결과를 확인해 봅니다.
13. 변수를 사용하는 방법 두 숫자의 차이를 구하는 방법을 배워 봅니다. 프로그램을 실행하여 결과를 확인해 봅니다.
두 숫자의 곱셈 결과를 구하는 방법을 배워 봅니다. 13. 변수를 사용하는 방법 두 숫자의 곱셈 결과를 구하는 방법을 배워 봅니다. 곱하기는 * 문자를 이용합니다. 프로그램을 실행하여 결과를 확인해 봅니다.
두 숫자의 나눗셈 결과를 구하는 방법을 배워 봅니다. 13. 변수를 사용하는 방법 두 숫자의 나눗셈 결과를 구하는 방법을 배워 봅니다. 나누기는 / 문자를 이용합니다. 프로그램을 실행하여 결과를 확인해 봅니다.
아두이노에서는 알파벳 또는 숫자만 문자로 출력이 가능합니다. 한글은 깨져서 보이게 됩니다. 13. 변수를 사용하는 방법 문자를 출력하는 방법 아두이노에서는 알파벳 또는 숫자만 문자로 출력이 가능합니다. 한글은 깨져서 보이게 됩니다. 문자열 값은 “ … “ 등 따옴표로 감싸 주어야 합니다. 프로그램을 실행하여 결과를 확인해 봅니다.
문자는 더하기만 할 수 있으며, 빼거나 곱하거나 하는 연산을 할 수 없습니다. 13. 변수를 사용하는 방법 문자를 더해서 출력하는 방법 문자는 더하기만 할 수 있으며, 빼거나 곱하거나 하는 연산을 할 수 없습니다. 프로그램을 실행하여 결과를 확인해 봅니다.
문자 출력 (Print) 명령어는 변수의 값을 옆으로 붙여서 출력합니다. 13. 변수를 사용하는 방법 문자를 옆으로 붙여서 출력하는 방법 문자 출력 (Print) 명령어는 변수의 값을 옆으로 붙여서 출력합니다. 프로그램을 실행하여 결과를 확인해 봅니다.
문자출력 명령어를 이용하여 수식을 출력해 봅니다. 13. 변수를 사용하는 방법 문자출력 명령어를 이용하여 수식을 출력해 봅니다. 화면에 100 + 255 = 355 라는 결과를 표시해 봅니다.
For 명령어 사이렌 소리 만들기 실습에 앞서 프로그램을 반복 시키는 방법에 대해 배웁니다. 2) 프로그램을 반복시키는 방법은 여러 가지가 있지만, 가장 쉬운 방법은 일정한 횟수만 큼 프로그램을 반복시키는 것입니다. For 명령어 일정한 횟수 만큼 프로그램을 반복 (Loop) For Loop 명령어는 반복하는 횟수를 지정하여 해당 횟수만 큼 프로그램을 반복시킵니다. 이 때 For 명령어는 숫자를 증가시키는 변수를 사용하며, 이 변수를 다양한 용도로 사용할 수 있습니다.
위의 예에서는 i 라는 이름의 변수가 1 부터 시작해서 10이 될 때 까지 반복을 합니다. 14. For 반복문 배우기 For 반복 명령어를 추가해 줍니다. 위의 예에서는 i 라는 이름의 변수가 1 부터 시작해서 10이 될 때 까지 반복을 합니다.
반복될 때 마다 i의 값이 어떻게 변하는 지 관찰해 봅니다. 14. For 반복문 배우기 For 명령어의 변수 값 출력해 보기 변수 i 의 값을 1초 간격으로 출력해 봅니다. 반복될 때 마다 i의 값이 어떻게 변하는 지 관찰해 봅니다.
14. For 반복문 배우기 1부터 10까지의 숫자 합을 구하여 출력하시오
For 명령어와 톤(Tone) 명령어를 이용하여 사이렌 소리를 만들어 봅니다. 프로그램을 실행하여 결과를 확인해 봅니다.
For 명령어와 톤(Tone) 명령어를 이용하여 사이렌 소리를 만들어 봅니다. 반복 숫자를 더 크게 해 봅니다. 프로그램을 실행하여 결과를 확인해 봅니다.
For 명령어와 톤(Tone) 명령어를 이용하여 사이렌 소리를 만들어 봅니다. 증가되는 규칙을 변경해 봅니다. 프로그램을 실행하여 결과를 확인해 봅니다.
For 명령어와 톤(Tone) 명령어를 이용하여 사이렌 소리를 만들어 봅니다. 값이 작아지도록 변경해 봅니다. 프로그램을 실행하여 결과를 확인해 봅니다.
For 명령어와 톤(Tone) 명령어를 이용하여 사이렌 소리를 만들어 봅니다. 명령어를 더 추가해 봅니다. 예를 들어 일정 시간 진동수가 증가했다가 다시 감소하도록 해 봅니다. 프로그램을 실행하여 결과를 확인해 봅니다.
모둠별로 누가 가장 재미있고 멋진 소리를 만드는지 발표해 봅니다. 16. 모둠별로 재미있는 소리를 만들어서 발표해 보기 모둠별로 누가 가장 재미있고 멋진 소리를 만드는지 발표해 봅니다.