發表文章

目前顯示的是有「樂高機器人教學 LEGO NXT-G」標籤的文章

2013 WRO 國小組 競賽程式設計 教學

圖片
今年 WRO 機器人競賽的校際盃比賽與全國初賽都已經告一段落, 探奇認為今年的國小組題目,許多老師及同學應該都會基本的作法,也就是: 辨識色瓶顏色,走到對應顏色區域,擊出色瓶。 每打一次色瓶,根據機器人的位置,找出移動的方法。 或是每打一次色瓶,移動到中間基準線(或第一條黑色線),再重複辨識打擊的動作… 邱老師是想破頭才想到這種平面電梯的處理方式,所以我想大部分的新手老師或新手同學需要接受訓練, 才能體會平面電梯的作法,所以探奇邱老師與大家分享這樣的程式設計。 還請有豐富經驗的老師教練及參賽選手多多指導。 以下是本文開始:   探奇曾經多次發文介紹國小組題目的相關資料,硬體設計已經有一些討論,現在就程式設計進行探討。   主要程式   首先需要清楚知道比賽時機器人的動作要求,根據 2103 WRO 國小組比賽規則,機器人需要分段完成下列動作:   1.       機器人出發,到第一條黑線。 2.       根據色瓶顏色分別丟入相同顏色的對應區域 3.       推動紙筒罐子到指定區塊 4.       經過障礙區 5.       回到終點   依據上面的流程,我們可以寫出 2013WROelem1 程式,如下圖:       比賽場地的顏色區域為:第一區綠色,第二區藍色,第三區紅色。   設定三個顏色變數,名稱為 Green, Blue, Red ,將相對應的區域數目寫入變數中。   機器人出發到第一條黑線停止,接著進入判定色塊顏色的 My Block 程式 – ColorKick 。 判斷色塊程式     上面是 ColorKick 程式圖,   先說明相關變數, Now 表示機器人現在所在位置,   Key 表示機器人需要前往的位置,也就是偵測的色瓶顏色區域。   流程如下:   1.       N...

平面電梯 - 用NXT模擬電梯的NXT-G程式

圖片
(這篇文章的圖片因為部落格搬家而遺失,請到 隨意窩分站 觀看文章) http://blog.xuite.net/touch_classroom/twblog/116580876 平面電梯 - 用 NXT 模擬電梯的 NXT-G 程式 2013  探奇教室,這個課程是為了學習分區移動的概念。 電梯系統 探奇很早就想利用 NXT 樂高機器人製作電梯模型,但是因為一台 NXT 主機只能控制三顆馬達及最多四顆感應器,不能完整作出電梯的所有動作,只好分段進行。 電梯系統可以分為車廂,車廂通道以及各樓層的閘門,每個部分都有自己的機構及電控模組。我們首先從車廂開始思考,車廂中也有各種不同的控制,例如車廂門的開閉,除了馬達移動車廂門,也需要有感應器偵測車廂門是否關閉完全。又如車廂中的照明及風扇,長時間的待機狀態下可以自動暫停運轉主。 平面電梯 網路上有許多樂高做成的電梯模型,不論是使用繩子拉動,還是齒輪齒條的組合,似乎都需要很多積木才能完成,既然沒有時間及足夠的積木完成創作,那麼就在地板貼出三條黑線,玩玩「平面電梯」,讓機器人在三條黑線中任意來回移動,應該也是很有趣的挑戰。 樓層選擇按鍵   整個車廂中對乘客最重要的就是「樓層選擇按鍵」。當乘客進入車廂後,會按下想抵達的樓層,電梯系統需要根據目前所在的樓層判斷電梯車廂需要上升還是下降?電梯車廂進行多少樓層的移動。 這聽起來好像很單純,事實上有點複雜。古人說: 登高必自卑 ,我們先從基本開始,等到研究出一些結果,就可以擴充樓層數目。先將樓高設定為三層樓,依照目前電梯所在的樓層,當乘客進入電梯車廂後,按下想要到達的樓層,電梯的對應動作有多少種可能的組合呢?列表是一種最直接的解決方法: 電梯狀況組合表 目前電梯所在樓層 Now 乘客想要去的樓層 Key 電梯需要的動作 Res 1 1 樓 1 樓 不用動 2 1 樓 2 樓 向上 1 樓 3 1 樓 3 樓 向上 2 樓 ...

光源感應器軌跡車的程式寫法

圖片
探奇邱老師最近很偷懶,已經連續好多天沒有發文。還請見諒! 今天要介紹的是光源軌跡走法,這不是我所寫的,而是 The Roboticist 所發的文章。 有單光源,雙光源以及三光源。 或許大家已經知道,請參考看看! 文章連結: http://www.theroboticist.org/technology/lego-nxt/nxt-line-following/ 網站內還有很多NXT-G的範例喔!

NXT與NXT的藍牙連線方式

圖片
大家都知道NXT樂高機器人的主機具備藍牙功能, 藍牙通訊能擴展NXT與其他NXT的聯絡,共同合作完成任務。 下面就是探奇上課時的教學內容,請各位讀友參考。 首先是藍牙連線(配對), 請參考下面的圖片。 確定連線後,就可以將相對應的NXT-G程式下載到NXT主機與從機中, (請參考探奇舊文章: NXT與NXT之間的藍牙接收發送程式 ) 祝大家連線成功!

『中文乐高』論壇的活動--看谁使用的模块最少

圖片
『中文乐高』論壇的活動--看谁使用的模块最少 這是大陸『 中文樂高 』論壇的會員活動,活動發起人是薛源, 活動內容需要使用最少的NXT-G命令方塊完成任務, 任務規則轉貼如下:(我直接貼簡體字 ) 规则: 1、下图的黑线画出了小车的 行走路径 (不使用光感、超感等进行检测,只是要求小车的行走路径符合下图的黑线形状) 2、小车在每个 直角转弯之前 要发出一个 声音提醒 。(什么声音都行,只要NXT发出声音就行) 3、 不能 使用 自定义模块 , 只能使用NXT——G自带模块 4、无需考虑每段路径的准确长度 5、转弯处是 直角 ,不能弧线代替 機器人行進路線如下圖 我也遼下去參加,不過程式不夠周詳,還需要好好想想。 但是我從大家的發文學到不少喔! 歡迎大家一起討論!

單光源軌跡車的終點設計

圖片
探奇在舊文章『 單光源軌跡車的終點處理方式 』提出幾個建議, 關於如何安排單光源軌跡的終點,最簡單的方式就是更改終點,讓光源感應器測到的光源值與軌跡和背景有較大的差異。 鋁箔紙 鋁箔紙有不錯的反光效果,測得的光源值比地板的背景值還高,所以很容易讓機器人到達終點停車。 請參考探奇示範影片: 彩色電工膠帶 電工膠帶一直是NXT樂高機器人的好朋友,除了黑色膠帶搭配白色壁報紙,還有其他作法。 這種在特力屋購買的仿地毯地墊,正面是深藍色的絨毛,背面是白色塑膠,剛好可以用來安排軌跡路徑, 絨毛反光少的特性,更是最佳的軌跡終點。 經過簡單的光源測試,搭配地墊白色背景,只有黑色,綠色,藍色,灰色等四種顏色可以使用,又因為光源值不太相同,需要動些腦筋,調整光源中間值,以適合四種顏色的軌跡線。這應該是不錯的挑戰。 請參考探奇示範影片: 這個課程可以這樣規劃: 1. 從『量測記錄各種顏色軌跡及不同材質終點的光源值』開始, 2. 比較分析數據,思考如何調整中間值(threshold), 3. 測試尋跡 4. 加上自動計時功能 5. 加上自動折返功能 6. 以地墊組合安排不同軌跡的競賽。 上面第四及第五點對大家都是不錯的挑戰喔! 歡迎讀友一起討論! 下篇再來探討『各種光源值分析』以及『使用軟體處理單光源軌跡終點』的程式。

NXT-G 的 Switch block 補充說明

圖片
探奇在『 NXT樂高機器人:創意樂趣,隨心所欲 』書本,第15章『猜猜我是誰』,提到如何增加Switch的選項,書中的範例只增加到三個選項。 也許有讀友注意到,如果增加的選項超過五個時,在Switch Block上方也只能顯示5個分頁標籤,除非在Switch中放入一些命令方塊,擴大Switch的圖示。 但是當Switch只有顯示5個分頁標籤,我們該如何切換第6個以後的分頁選項呢? 有兩種方式: 1. 請直接到參數區,點選Conditions的項次,橘色背景的選項表示現在Switch Block顯示的分頁。 2. 直接擴大Switch Block的圖示: 請將滑鼠游標移到Switch Block裡面的積木軌道,游標會變成左右箭頭狀(如下圖) 按住滑鼠左鍵,向右拖拉,就可以延長積木軌道,擴大Switch Block的圖示,上方的分頁標籤也都出現了。 在參數區Conditions的第6個選項是橘色背景,Switch Block的第6個分頁標籤也是變成淺橘色。 這種延長積木軌道的方法可以在任何地方使用,也可以用來縮短積木軌道,但是請大家小心拖移,萬一發生奇怪的狀況,例如積木軌道亂跳,請多多利用復原(Undo)回復原狀,避免程式錯亂。 另外要告訴大家的是如何在Switch Block中執行『多工程式』, 一般來說,Switch Block或是Loop Block的軌道都只有一條,由於橘色邊界的包圍,沒有足夠的空間放置多工的命令方塊。我們可以利用命令方塊的資料集線器『擴大』圖示。 首先在Switch Block中放入一些命令方塊,打開資料集線器。 (下圖中我以上面的Switch 分頁直接示範,其實打開一個命令方塊的資料集線器就可以了。) 接著把需要多工空間的資料集線器收起來。 放入你所需要多工的命令方塊。(下圖) 再按住Shift鍵,拖拉積木軌道將多工的命令方塊連接起來。(下圖) 最後記得將用來『擴大圖示範圍』的命令方塊刪除。 同樣的,請讀友小心延伸積木軌道,老話一句,發生特殊狀況時,請不用心急,使用復原(Undo)回歸到拉線前的狀態。隨時記住儲存你的程式,避免發生欲哭無淚的情形。 其實在Switch 或 Loop中也可以使用另一個Switch Block作為『擴大圖示範圍』的命令方塊,效果也不錯喔! (看看『寵物娃娃』中,Switch包住Switch的效果,空間是不是...

Khan Academy的LEGO NXT-G教學

Khan Academy 由Salman Khan創辦,目前已經有超過2700部的教學影片,教學內容包含語文、數學、科學、財經等專業知識。 前兩天在網路上偶然發現Khan Academy在幾年前就已經使用樂高機器人舉辦活動,請參考這篇報導: Khan Academy: Out of the Screen, Into the Physical World (這種提倡『遠離螢幕,走回現實』的活動,不正是探奇希望樂高機器人幫助孩子離開虛擬的遊戲世界,重新在現實生活中尋找親自動手的樂趣嗎?!) 他們使用樂高機器人進行相撲賽,可以到 http://youtu.be/PcebYbQ31RA 觀看比賽影片。 在2012年6月, Brit Cruise ,Khan Academy的一員,也在Youtube上發佈一些LEGO NXT的教學影片,有興趣的讀友不妨看看。 例如: Lego NXT: intro to switch statements ,還有其他LEGO NXT教學影片可以到 Brit Cruise的Youtube頻道 觀看。 (這些影片並還沒有正式納入Khan Academy中) 最後要提到的是Brit Cruise有一部介紹樂高機器人的影片, Lego Robots. Anything is possible! 片中說明生活中機器人可以做的事,樂高也都可以做到。影片的對比效果很不錯喔!

研發養成所的NXT新題目--NXT digital voice recorder

圖片
研發養成所 的Bridan先生在 他的部落格 發文提供大家NXT的挑戰題目, 這次的題目是『 NXT digital voice recorder 』 轉貼題目如下: 『設計—個錄音機,按左鍵可以錄音三秒鐘,按右鍵撥放聲音』 樂高機器人的聲音感應器只能感應聲音大小,所以需要記錄的就是音量大小,取樣頻率。 (可惜無法知道頻率高低) 比起讓機器人模仿敲擊節奏,這個挑戰會比較困難, 讀友也可以想一想喔! 2012.09更新: 剛剛寫了一個程式,還請大家指正。 https://docs.google.com/open?id=0B8aMeqYeJfEIM0dRYW1BUmk3bzA 有很多改善空間,因為下列因素: 1. NXT因為軔體緣故,聲音大小只有四段,(leJOS可以八段) 2. 取樣頻率不容易調整。 3. 發聲也不連續。 4. File Access很慢。 5.應該用換軔體,改用其他語言會改善。

Mountain Lion OS X 10.8 and NXT-G

根據國外玩家的報告,有人將蘋果的作業系統更新至Mountain Lion OS X 10.8,結果造成NXT-G無法正常執行。 不知道台灣地區是否有玩家遇到這種情況? 在The NXT STEP, Marc-Andre Bazergui (bazmarc) 發表文章,告訴大家解決的方法。 請有需要的讀友前往觀看。 文章連結: WARNING: Mountain Lion OS X 10.8 and NXT-G 文中說明要用到 這篇樂高官方網頁文章的iso檔 ,這個光碟檔案在Windows下也可以安裝喔! (不知道教育版的NXT-G是不是也有同樣問題?)

單光源軌跡車的終點處理方式

圖片
探奇在『 NXT樂高機器人:創意樂趣,隨心所欲 』書中有討論單光源軌跡車的章節, 在探奇部落格也有多篇文章討論單光源軌跡車,請參考探奇舊文章: NXT樂高機器人軌跡車的研究---PID控制 樂高NXT機器人單光源軌跡車的實驗(4/8增補) NXT彩色感應器軌跡車 在實驗測試過程中都是使用封閉式路徑,讓機器人繞圈圈,不斷前進,永無止盡。 直到探奇看到『 有趣的樂高機器人趣味競賽:Xander的新文章--GIA Tooling Team Building Event 』, 邱老師才想到一個問題,如何使用單光源行走開放式軌跡路徑,又能讓機器人知道路徑終點,自動停止呢? 一般來說可以改變路徑環境,有幾種方式: 1. 路徑終點的環境變化一: 例如在路徑終點設置『牆壁』或『障礙物』,可以利用觸碰感應器或超音波感應器偵測終點。 (探奇課程中的雪中送炭就是這類應用) 2. 路徑終點的環境變化二: 在路徑終點貼上鋁箔,藉由光感數值的不同,讓機器人偵測終點。這是從 Xnader的文章 得到的點子。 這些方法都要在環境上動手腳,有點麻煩。 如果路徑環境不改變,也不用額外貼上鋁箔,只用一顆光源感應器呢? 讀友可以想一想如何利用軟體解決問題,歡迎討論! (下面是我的想法,請讀友先想一想,看看我們是否有相同的想法 ) ↓ ↓ ↓ ↓ ↓ ↓ ↓ 1. 利用角度感應器 (Rotation Sensor) 2. 利用計時器 (Timer) 雖然應用軟體控制無法立即使機器人停止,但還是有一點效果。 你的看法呢?

電腦以藍牙遙控樂高機器人

圖片
探奇曾經在很久以前介紹過『 透過網路遠端控制NXT 』,文中提到作者Anders Søborg也提供藍牙汽車遙控程式,讓你能在電腦端以藍牙遙控你的樂高機器人。 下載網頁如下:網頁連結 http://www.norgesgade14.dk/bluetoothremote.php 進入網頁後請向下拉動,會出現Download vehicle remote字樣,請點擊下載。 下載後請解壓縮,執行nxt-remote.exe檔案。 進入程式後如下圖: 我們需要設定藍牙的模擬Comport,探奇的筆電是Com 38,以下拉式選單設定好之後,再按下Connect,過一會兒就會連線。 如果不知道藍牙裝置的Com port,請先以Windows的藍牙『新增無線裝置』尋找NXT主機, 連線後,再按下Bluetooth設定, 你應該可以在COM連接埠的分頁看到COM38的連出設定。 輸入你的COM port號碼,按下Connect,就如下圖,顯示Connected,表示連線正常。 接下來要設定你的左右輪胎馬達,一般來說,從機器人後方(獨立輪)向前(大輪胎)看,左輪都是Motor C,右輪都是Motor B。 Speed是前進後退的馬力(速度);Spin Speed是機器人轉彎的馬力(速度);Turn Radio是機器人轉彎的弧度,讓機器人轉得急一點還是緩一點。 終於可以使用視窗下方的Drive箭頭控制樂高機器人了,先按BEEP,試試你的喇叭! 依照箭頭方向,點擊滑鼠按下箭頭,機器人就會動作,放開滑鼠按鍵,就停止動作。 你也可以設定使用鍵盤操作,例如WSAD鍵,W表示前進,S表示後退等。 類似的功能也能在 BricxCC 找到,如果你無法以藍牙連線,也能用USB連線操縱。 如果懶得安裝BricxCC,可以下載 test release ,解壓縮後直接執行。 剛好John Hansen先生在7/24發表新版的test release,韌體也更新為 lms_arm_nbcnxc_132_20120724_1125.rfw 祝大家玩得愉快!