[Mindsensors] NXTTouchPanel測試-小鋼琴七音階

Mindsensors有出一款觸碰面板叫作NXTTouchPanel,可觸碰對應液晶螢幕的像素點並提供8個虛擬按鍵,今天我們就要用它來做成 NXT-小鋼琴,先來看一下我們的主角長什麼樣子

nxttouchpanel

就像這樣固定在NXT的螢幕上,感覺像小時候在玩GameBoy…

nxt+touchpanel

要做出NXT-小鋼琴,要先下載以下三個程式

1.NXTTouchPanel NXT-G Block:觸碰面板程式。要使用NXTTouchPanel的必要Block

2.NXTRICedit V2:圖片編輯程式。因為本篇使用的是NXT-G 2.1版,不像2.0版有內建圖片編輯程式,所以要額外下載

3.Wav 2 Rso:音效轉檔程式。將下載的音效檔轉為可在NXT播放的sound檔(進入網頁後往下找到Wav 2 Rso)

下載安裝好之後,首先我們需要使用NXTRICedit V2來編輯出鋼琴的琴鍵,程式的使用介面如下:

ricedit

NXTRICedit算是滿好上手的圖片編輯程式,且本篇重點不在此,故不多加介紹,可自行上NXTRICedit的網站閱讀相關教學,繪製完成的琴鍵圖如下:

pianokeyboard

編輯好的圖片可另存到NXT-G目錄下的engine\picture資料夾中,接著使用Display加上Loop顯示在螢幕上

piano2

執行後顯示

keyboard

接下來要能夠觸碰琴鍵發出聲音,這邊可以分為1.觸碰到琴鍵的座標位置  2.發出聲音,先來解決第一個觸碰琴鍵的問題,在這邊要使用到剛才下載的Touch Block,有分為Read Current Stylus Point(讀取目前座標點)、Read Buttons(讀取按鍵),本篇是使用Read Current Stylus Point讀取座標點來對應琴鍵的座標,概念是希望觸碰琴鍵下半部白色區域範圍

PIANO4

PIANO3

使用Range讓x與y在琴鍵範圍內時就觸發條件,再加上Logic讓x與y同時成立(選擇and)才觸發

piano5

在這邊的x與y座標範圍是剛才所編輯的琴鍵座標,每一個琴鍵分別需要範圍內左下角和右上角的二點座標,使用nxtRICedit的好處就是它會顯示出座標位置,不必再一點一點去算座標,再來加上聲音條件,本篇是網路上的wav音效檔,再使用Wav 2 Rso轉成nxt可用的聲音檔,先讓第一個琴鍵發出Do的音

piano6

最後將其餘的六個音按此法寫入,更改x的座標範圍即可,本篇是將七個音分別用My Block包起來後再用多工執行,以下影片示範完成後的NXT-小鋼琴

最後附上NXT-G的小鋼琴程式piano七個音的wav檔,希望大家可以做出更多好玩的樂器。

舊文章連結

[MindSensors測試]追蹤物件顏色的利器-NXT-Cam-v4

麻花救星 – MindSensors 滾珠軸承座,特價$750

MindSensors 系列產品 更新 MindSensors for EV3韌體

 

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *