2015/07/06


本篇的主角是萊恩大兵的兩個兒子 Willie 和 Kenny. 萊恩大兵為他們兩個安排了 LEGO NXT 機器人的家教.

2015/6/6, 第七課, 拉小提琴的音樂機器人


第一段, Sound 程式格, 參上




兩兄弟已經和 Move 與 Record/Play 兩種程式格打過照面. 今天則要來認識 Sound 程式格.



Sound 程式格的屬性有:




  * Action: 可選擇 Sound File 或 Tone. 
    - 選 Sound File 要進一步選檔案.
    - 選 Tone 則要選定音階與時間.
  * Control: 可選擇 Play 或 Stop.
  * Volume: 決定聲音大小聲.
  * Function: 決定是否重複播放.

一個程式格一個音階, 要完成一首歌就要拉好多個程式格出來. 燒錄到 NXT 主機並執行程式, NXT 主機就會發出悅耳(?)的單音旋律.




第二段, 機器人要怎麼拉小提琴呢?

若只是讓 NXT 發出單音旋律多無聊啊. 至少得讓機器人手動一動, 像是拉小提琴的樣子, 呈現出來才會是完整的作品. 機器人的頭身四肢都不難做, 但如何能讓機器人拉小提琴呢?

關鍵詞~ 來回動一動. 兩兄弟一點就通, 是要用 "往復式運動" 來做出持弓拉弦的動作.

//-- 往復式運動是來來回回週而復始的運動, 基本是由圓周運動投射在 x 軸而形成的. 
實作則是在齒輪偏軸心的位置加上一根連桿, 讓馬達帶動齒輪做圓周運動, 繼而帶動這根連桿做往復式運動. --//

就這麼多提示, 老師不示範實作, 直接讓兩兄弟動手做.

Willie 的拉小提琴音樂機器人







Kenny 的拉小提琴音樂機器人







第三段, 隱藏版主題~ 多工

講解程式演算法:
  - 音樂旋律是由一串的 Audio 程式格組成.
  - 拉小提琴的往復式運動則由 Move 程式格來控制.

老師丟出一個問題來考兩兄弟~ Move 程式格是要放在 Audio 程式格的前面? 中間或後面? 答案~ 都不是.

這邊帶出一個重要概念~ 多工執行.



Move 程式格要和 Audio 程式格並行執行, 機器人才會邊拉小提琴, 同時發出音樂旋律, 甚至隨音樂改變表情都可以.



多工的概念就是這一點訣. 掌握了這概念, 實作出來的作品都有一定水準.

Willie 的作品:
  - 音樂旋律: 瑪麗的小綿羊
  - 往復式運動拉小提琴
  - 顯示笑臉表情


Kenny 的作品
  - 音樂旋律: 鐘聲響了
  - 往復式運動拉小提琴
  - 顯示笑臉表情




[萊恩大兵的其它文章]

LEGO NXT 機器人 學習記錄

學習記錄, LEGO NXT 機器人, (1) 聲控自走車 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (2) 簡易程式控制車 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (3) 第一隻程式與荷蘭風車 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (4) 雙馬達驅動車 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (5) 萬向輪與三輪車 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (6) 模仿動作的學習機器人 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (7) 拉小提琴的音樂機器人 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (8) 和聲音啟動車玩一二三木頭人 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (9) 用觸踫感應器做賽馬比賽 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (10) 用超音波感應器玩鬼抓人 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (11) 用光源感應器讓車車折返跑 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (12) 用光源感應器做直線遊園車 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (13) 用光源感應器做迴轉遊園車 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (14) 踫踫車, 感應器與程式格進階應用 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (15) 絕地逢生車, 感應器與程式格進階應用 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (16) 自動車庫門, 迴圈程式格進階應用 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (17) 摩天輪, 減速齒輪組進階應用 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (18) 直線競速車, 加速齒輪組進階應用 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (19) 倒車入庫 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (20) 伸縮毛毛蟲 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (21) 學習手臂 (LEGO, NXT)

0 意見:

張貼留言