2016/09/02


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

2016/6/18, 第四十三課, 四向驅動車

萊恩大兵最欣賞的課程安排, 就是把先前的作品拿出來重做, 用新的方法解決過去的難題.


在先前線控車的課程, 遇到最大的限制, 就是 NXT 主機盒只能同步執行三條程式碼. 這讓兩兄弟做出來的遙控器只能有前進, 左轉與右轉共三個動作, 無法遙控車子後退.

這.. 再也不是難題了, 應用切換的概念, 就能把車子前進後退左轉右轉全部的動作都做進來.

今天就來做一台四向驅動車, 要能遙控它前進後退與左右轉.

課程第一段, 四向驅動車的功能與結構

先來分析四向驅動車的功能與結構

(1) 它是一台線控車 (2) 遙控器要能控制前進/後退/左轉/右轉.

一項一項來思考該怎麼做:

(1) 它是一台線控車

這部份沒問題, 在先前的課程(線控車)已有做過.

(2) 它的遙控器要能控制前進/後退/左轉/右轉.

這邊要克服幾個問題:
- 應用切換的概念, 來做到能控制前進/後退/左轉/右轉. 
- 汽車的打檔/換檔/排擋桿正是切換的概念.
- 就用馬達的角度感應器來實作成排擋桿.
這台車還要有萬向輪或導桿的結構, 才能支撐後退左/右轉.




課程第二段, 實作, 修改與調整


已有先前做線控車的經驗, 兩兄弟很快就把車體做出來. 開始動手寫程式. 





基本的程式的邏輯分兩大段.

第一段是在按了按鍵後啟動直接前進. 再利用 Switch 程式格判斷有無按下左邊的觸踫感應器, 有按下則左轉. 若按下又放開, 則去判斷右邊的觸踫感應器, 有按下則右轉, 若按下又放開則停止. 最後再判斷排檔桿的位置(角度) 來做前進後退的切換.

第二段是在按了按鍵後啟動直接直接後退. 再利用 Switch 程式格判斷有無按下左邊的觸踫感應器, 有按下則左轉. 若按下又放開, 則去判斷右邊的觸踫感應器, 有按下則右轉, 若按下又放開則停止. 最後再判斷排檔桿的位置(角度) 來做前進後退的切換.


Willie 的作品很完整, 程式編寫基本也符合老師解說的演算法.







Kenny 車的結構做的不錯, 只是程式裡面沒做角度偵測. 直接按鈕來切換前進後退.








兩兄弟的作品合照




[萊恩大兵的其它文章]

LEGO NXT 機器人 學習記錄

學習記錄, LEGO NXT 機器人, (20) 伸縮毛毛蟲 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (26) 母雞帶小雞之排隊機器人 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (27) 小雞找母雞之雷達機器人 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (28) 高爾夫球機器人 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (30) 會闖迷宮的機器人 (LEGO, NXT)
學習記錄, LEGO NXT 機器人, (31) 線控車 (LEGO, NXT)

或請參考



0 意見:

張貼留言