2015/05/11


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

2015/5/2, 第三課 (1.5hr), 第一隻程式與荷蘭風車

第一段, 電腦操作與樂高開發環境介紹

老師才剛進門, 兩兄弟得知今天會電腦寫程式, 掩飾不住興奮.

先來認識電腦. 老師從開/關機, 鍵盤~ 包括英文與數字鍵, 功能鍵, 組合鍵. 網路~ 無線, 有線, 藍牙, 滑鼠~ 左鍵/右鍵, 拖拉操作一一解說, 很詳細也很沈悶. (Kenny 已失去專注力快要打瞌睡了.)



讓兩兄弟振作精神之後, 老師繼續介紹樂高開發環境. 先從桌面找出 NXT Programming 的圖示並點擊執行.



//-- 等待開發環境 ready 時, 老師還不忘交待小朋友~ 要有耐心, 按一次就好. 不要看畫面沒出現, 就一直猛按猛點擊.. --//

開發環境 ready 後, 第一步是要從左上角的 File 選單, 選 New 起一份空的程式文檔. (或 Load 一份已經編好的程式文檔.)



//-- 兩兄弟還沒有檔案系統的概念, 這段就不解釋操作細節, 讓他們硬記操作了. --//

在程式文檔的介面上, 左邊有一排圖示. 



老師逐個解說, 並舉例讓兩兄弟能從圖示聯想到功能.
* 齒輪 -> Move -> 齒輪轉動會讓車子移動.
* 播放與錄影 -> Record/Play -> 三角形是播放, 紅色圓圈是錄影.
* 聲音 -> Sound -> 喇叭發出聲音.
* 螢幕 -> Display -> 螢幕會有畫面.
* 等待 -> Wait -> 沙慢慢漏.. 等待.
* 迴圈 -> Loop -> 轉圈圈, 重覆做.
* 切換 -> Switch -> 分岔走不同路.

用滑鼠左鍵點按圖示並拖拉, 就能把程式格放在畫布上.




//-- 看兩兄弟又快要失神了. 老師讓兩兄弟動一動, 讓他們動手開啟新文檔並拖拉一個程式格到畫布上 --//.

今天就專注在齒輪的圖示上. 老師用滑鼠左鍵拖拉了一個齒輪程式格, 下方區域會看到齒輪程式格的進階設定.



* Port (埠): 要使用哪幾個輸出埠(馬達)? A / B / C (可多選). 埠位使用和程式定義要一致, 沒用到的不要勾, 否則程式遇到空的埠時會當掉.

* Direction (方向): 馬達可由程式控制轉動方向 (往前 / 往後 / 不動).

* Steering (掌舵): 這個設定值是在用到兩個馬達時才會出現.  它能設定馬達的轉速, 藉由轉速速差造成車體轉向.

* Power (出力): 設定馬達的出力 (0 ~ 100%).

* Duration (作用期間): 設定馬達的動作模式 (可控制轉動圈數 / 角度 / 時間 / 無限).

* Next Action (與下一個指令的銜接): 設定切換到下一個指令時, 馬達的動作模式 (急停 / 緩停).



老師繼續說明. 在電腦上把程式寫好後, 得將程式放進 NXT 主機裡. 這時就要透過 USB 傳輸線, 將程式放進去 (Download). 這個把程式放進去的動作, 又可分成 Download Only 與 Download & Run. 老師教兩兄弟用 Download Only 的作法, 來避免莽撞的執行.



//-- 萊恩大兵有點意外兩兄弟竟然聽的懂 download 的概念, 一點沒有虛無飄渺的迷惑 --//

第二段, NXT 指令操作

用說的沒感覺. 老師把一個馬達安裝在 NXT 主機上做示範~ 埠B, 往前轉, 76% 的出力, 轉 12 秒.





//-- 寫程式前要先畫出設計圖. 謀定而後動, 這作法蠻不錯的. --//

第三段, 荷蘭風車實作

給兩兄弟的題目~ 做一架荷蘭風車, 並寫程式控制它. 兩兄弟得自己決定馬達要插在哪一槽, 風車扇葉長什麼樣, 程式寫好後, 還得自己接上 USB 線下載程式到 NXT 主機.


哥哥 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 意見:

張貼留言