스파이크 프라임(Spike Prime)_ 겨울 학기 11주 차
이번 시간은 '사운드 메이커' ‘피아노’ 수업으로 모형을 살펴본 후, 코딩을 통해 다양한 악기를 연주할 수 있게 만들어 봤습니다.
![[마곡 코딩] 2026년 2월 28일 토요일 1시_ Spike Prime : 사운드 메이커, 피아노 1차시 사진 1](/blog/224199308135/001.png)
모형에는 하나의 중형모터와 컬러 센서, 힘 센서가 활용되었습니다. 컬러 센서와 힘 센서를 통해 작곡한 음악을 재생시키는데 활용하며 모터의 회전을 통해 레고 피규어들이 춤을 출 수 있게 구현했습니다.
![[마곡 코딩] 2026년 2월 28일 토요일 1시_ Spike Prime : 사운드 메이커, 피아노 1차시 사진 2](/blog/224199308135/002.png)
오늘 미션에서는 컬러 센서와 힘 센서를 활용해 작곡한 음악이 재생되도록 했습니다.
이를 위해 '음악' 블록이라는 새로운 블록을 확장하여 사용했습니다. 해당 블록은 피아노뿐만 아니라 타악기를 비롯한 다양한 종류의 악기를 제공하는 블록들로 해당 블록을 활용한다면 원하는 악기의 음정, 박자를 결정해 재생하도록 할 수 있습니다.
코드를 살펴보면 컬러 센서가 특정 색을 인식하게 되면 라이트 매트릭스를 통해 특정 이미지가 짧게 출력된 후, 다양한 타악기들이 연주될 수 있도록 코딩할 수 있었습니다.
동영상은 블로그 원문에서 볼 수 있습니다.
다음은 힘 센서를 활용해 봤습니다. '센서' 블록을 사용하여 힘 센서가 정확히 3N(뉴턴), 6N, 9N이라는 힘이 인식되게 되면 서로 다른 높낮이의 사운드가 재생되도록 만들었습니다.
동영상은 블로그 원문에서 볼 수 있습니다.
마지막으로는 모터의 '위치'에 따라 허브의 가운데 버튼 색상이 바뀌도록 만들었습니다.
![[마곡 코딩] 2026년 2월 28일 토요일 1시_ Spike Prime : 사운드 메이커, 피아노 1차시 사진 3](/blog/224199308135/003.png)
코드를 살펴보면 '만약 ~라면' 블록을 사용하여 모터의 위치가 90도가 된다면, 가운데 버튼 라이트가 빨간색으로 정해지고 마찬가지로 각각 180도, 270도일 때 가운데 버튼 라이트가 '초록색', '파란색'으로 변하도록 만들었습니다.
![[마곡 코딩] 2026년 2월 28일 토요일 1시_ Spike Prime : 사운드 메이커, 피아노 1차시 사진 4](/blog/224199308135/004.jpg)
이후에는 '피아노' 모형을 완성하고 간단하게 코딩을 진행했습니다.
![[마곡 코딩] 2026년 2월 28일 토요일 1시_ Spike Prime : 사운드 메이커, 피아노 1차시 사진 5](/blog/224199308135/005.jpg)
'피아노' 모형에는 거리센서가 활용되어 피아노 연주에 활용되었습니다. 거리센서와 건반 사이의 거리는 각자 다릅니다. 이를 이용해 거리 센서와 상대적으로 가까운 노란색 건반에서는 낮은 소리가, 상대적으로 먼 파란색 건반에서는 높은 소리가 날 수 있게 만들 수 있었습니다.
예를 들어 노란색 건반은 '도' 소리가 나고 초록색 건반은 '레' 소리가 나며 파란색과 빨간색은 각각 '미', '파' 소리가 나게 해 4가지의 건반을 연주할 수 있는 '피아노'를 구현할 수 있습니다.
하지만 이렇게 만들게 된다면 건반끼리 소리가 겹치는 것을 알 수 있습니다.
동영상은 블로그 원문에서 볼 수 있습니다.
![[마곡 코딩] 2026년 2월 28일 토요일 1시_ Spike Prime : 사운드 메이커, 피아노 1차시 사진 6](/blog/224199308135/006.png)
이를 해결하기 위해서는 '~초 기다리기' 블록을 활용해야 합니다. 이를 이용한다면, 한 건반이 연주가 된 후, 일정 시간 동안 다른 건반의 소리가 나지 않게 해 소리가 겹치는 것을 막을 수 있었습니다.
![[마곡 코딩] 2026년 2월 28일 토요일 1시_ Spike Prime : 사운드 메이커, 피아노 1차시 사진 7](/blog/224199308135/007.png)
동영상은 블로그 원문에서 볼 수 있습니다.
이렇게 이번 시간에는 '사운드 메이커' 모형과 '피아노' 모형을 통해 음악 블록이라는 새로운 블록을 사용해 봤습니다. 다음 시간에는 새로운 주제로 돌아오겠습니다~
#마곡역코딩학원 #신방화역코딩학원 #유아코딩 #공항초 #공진초 #코드페어 #송화초 #초딩코딩 #AI #대회 #마곡나루맛집 #신방화역학원 #코딩학원 #소프트웨어 #대회준비 #VR #올림피아드 #엔트리 #신방화역맛집 #신방화역카페 #라온lc #laonlc #엔트리 #coding #파이썬 #스크래치