SPIKE 樂高機器人

我的網頁

2008-10-29

NXT樂高機器人--探奇小鱷魚

這一台鱷魚需要大家的想像力!(因為有人說是蜥蜴,壁虎........,又沒有吐舌頭!)

這一台也是一時興起,看到WEDO可以做,當然也要用NXT挑戰看看。

(請點擊連結參考WEDO的照片

剛好運用教育版NXT9797有較多的TECHNIC BRICK,可以使用顆粒做出鱷魚外表。

親自動手做了以後,才知道痛苦的地方。前後修改三次才完成目前的樣子,還有許多改進的地方:

鱷魚張嘴的機構,
齒輪減速的機構,
超音波感應器的擺放位置,
尾巴也可以有動作,
四隻腳的修飾,
程式控制流程,

大家也可以想一想!

下圖:張嘴時比較像,因為鱷魚的眼睛是連在嘴巴上方。



下圖:閉嘴時就有一點怪怪的,看尾巴就好了!尾巴是可以上下活動的喔!可以改進做成左右搖擺的結構。



下圖:為了做出Q版的小鱷魚,NXT放在後方控制。(模仿WEDO


有了動作當然還要有聲音效果,原來用的是『Good Bye!』,聽了之後有點爆笑,但是動物的聲音不容易取得,還好有這個網站,Soundsnap,提供許多免費聲音資源,輸入『Alligator』,找到許多鱷魚嘶嘶的聲音,老師們也可以多加利用!

下面是我放在youtube的示範短片,當鱷魚張開嘴時就可以聽到嘶嘶聲,不小心背景還有廁所衝水聲,就當作是鱷魚在馬桶玩耍!




2008-10-26

iCommand 0.7的程式問題

有許多學校運用NXT進行JAVA程式教學,或是機器人課程以JAVA進行控制。

參考何老師的書籍,裡面的範例程式應該是使用iCommand 0.5

目前iCommand 0.7的程式庫已經有一些修改。

從JAVA討論區得知這個問題,原始程式碼如下:

import icommand.nxtcomm.*;
public class GetDeviceInfo {

    public static void main(String[] args) {
         NXTCommand.setVerify(true);
         DeviceInfo nxt = NXTCommand.getDeviceInfo();
         FirmwareInfo firmware = NXTCommand.getFirmwareVersion();
         System.out.println("==============================");
         System.out.println("NXT name: "+ nxt.NXTname.trim());
         System.out.println("藍芽裝置位址: "+ nxt.bluetoothAddress);
         System.out.println("剩餘記憶體: "+ nxt.freeFlash);
         System.out.println("NXT 韌體版本: "+ firmware.firmwareVersion);
         NXTCommand.close();
    }
}

=======================================

一開始我從一些範例程式學習,
只知道import icommand.nxtcomm.*;
需要改為import icommand.nxt.comm.*;

接下來卻遇到這樣的錯誤訊息:

Cannot make a static reference to the non-static method getDeviceInfo() from the type NXTCommand

Cannot make a static reference to the non-static method getFirmwareVersion() from the type NXTCommand


由於我不瞭解JAVA,當場傻眼,做了許多嘗試還是無法解決問題,最後只好向LeJOS論壇求援。

還好馬上獲得善心人士ChrisB01的解答(請點擊連結觀看論壇文章),

終於知道如何更正程式,最後的程式碼如下:

import icommand.nxt.comm.*;

public class GetDeviceInfo {
   static NXTCommand command = NXTCommand.getSingleton(); // Create own pointer here

   public static void main(String[] args) {
      
      NXTCommand.open(); //You might also need this static method to open the connection

      NXTCommand.setVerify(true);  // This IS a static method so you CAN use the class name
      DeviceInfo Devinfo = command.getDeviceInfo(); // NOTICE command NOT NXTCommand
      FirmwareInfo firmware = command.getFirmwareVersion(); // NOTICE command NOT NXTCommand

      System.out.println("===============================");
      System.out.println("NXT Name: " + Devinfo.NXTname.trim());
      System.out.println("藍牙裝置位置: " + Devinfo.bluetoothAddress);
      System.out.println("剩餘記憶體: " + Devinfo.freeFlash);
      System.out.println("NXT韌體版本: " + firmware.firmwareVersion);

      NXTCommand.close(); // This IS a static method so you CAN use the class name
   }
}

不過執行結果還是有一點小問題,NXT名稱的前一個字母不見了。

總之經過這一次實驗的心得是:
1. JAVA真難懂。
2. iCommand真難懂,或許還要修正。
3. 善用論壇,總有善心前輩熱心幫忙。

使用iCommand的達人請多多幫忙喔!謝謝!

2008-10-24

NXT高低槓體操機器人

探奇曾經發文介紹台北奇岩蔡老師的傑作--很棒的單槓機器人

最近在NXTLog搜尋時,剛好看到這台機器人,是玩雙槓的NXT機器人喔!。

有興趣的人務必下載作者所公布的WMV影片,好好欣賞一下!

NXTLog連結:

NXT Gymnast




愛迪爾斯(IDEAS)創意教室LEGO-Robots的新文章--站起來~NXTWay

這是創意機器人教育推廣中心-北區分校,謝老師的部落格

最近推出一系列文章,站起來~NXTWay,介紹RCX與NXT兩輪機器人。

剛好配合創意德霖盃全國機器人程式設計競賽-二輪平衡車競速大賽」

大家也可以試試看。

順帶介紹一下NXTLog裡面的相關作品(使用LEGWAY關鍵字搜尋)

http://mindstorms.lego.com/nxtlog/projectlist.aspx?SearchText=LEGWAY

2008-10-23

探奇五號NXT單觸碰折返車

利用觸碰感應器讓NXT機器人『撞牆』是大家都很喜歡的創作遊戲。

可是只能向前撞,當機器人向後退時,後方如何偵測碰撞呢?

9797內附兩顆觸碰感應器,所以可以在機器人的前方及後方各裝一顆觸碰感應器。

但是8527只有一顆觸碰感應器,要如何完成這個任務呢?

雖然探奇在上課時使用的是教育版的NXT9797,不過也只拿出一顆觸碰感應器,考驗大家解決問題的能力。

下圖是一個簡單的示範,將一顆觸碰感應器裝在前方,利用槓桿原理,讓機器人後方的『碰撞』傳遞到前方的觸碰感應器。

我是使用探奇五號改裝,有一點像恐龍。



觸碰感應器前端放大圖:



拍了兩段影片供大家參考:

1. 側面觀察碰撞情形。

2. 俯視影片,由於槓桿部位沒有強化結構,所以會出現『機器人發瘋』,一直用屁股撞壁的失敗影片。

大家也一起動手試試看吧!


2008-10-22

NXT的新韌體Ver 1.21

感謝彰化施老師的提醒。

下載前一篇文章的LabVIEW tutorial mov檔案之後,就沒有認真看過影片。

昨天施老師問我哪裡可以下載FW 1.21,我才知道這個畫面。





看來新版的NXT-G增加了Datalog功能,當然韌體也一併更新為1.21版。

樂高官網低價廉售NXT-G v1.1 Update CDROM的情形看來,

新版的NXT-G 2.0很快就會上市。

到底有哪些改進?需要付出多少代價?

一切等待樂高的消息.............

(探奇舊文章:期待NXT-G 2.0)

2008-10-20

靈機一動!窮人的樂高替代品--吸管萬向接頭

星期六動力機械課程的中午休息時間,剛好中餐便當附了飲料,還有一根可彎曲吸管。

臨時起意,想把心裡醞釀已久的『萬向接頭替代品』做出來。

拿了兩條樂高紅色橡皮筋,將吸管綁在十字軸上,簡單做了一個彎曲的機構,加上黃色指示器當成螺旋槳。



圖片下方是樂高的Technic Universal Joint (part 9244,樂高萬向接頭),在9649及9648補充零件組都有這種零件。

運轉效果還不錯,只是無法彎折成太大的角度,大約45度以上就會造成馬達轉速降低。

配合NXT又可以改變動力輸出方向。

或許可以讓孩子進行實驗研究,是否可以當成科展的研究主題呢?

先看看實際運轉影片!



2008-10-17

2009第四屆工業機器人競賽

比賽官網連結:2009第四屆工業機器人競賽 (網頁標題未改,是2008工業機器人競賽)

一開始看到這個比賽網頁就覺得似曾相識,應該是由大葉大學連續主辦三屆的比賽吧?

今年移師到國立屏東科技大學,最重要的是不用報名費用!

將比賽消息轉貼如下:

--------------------------------------------------------------------

‧競賽時間:2009年1月3日(星期六)。


‧競賽地點:國立屏東科技大學演藝廳,屏東縣內埔鄉學府路1號。


參加本競賽不需報名費用


‧如對競賽有相關疑問,請參閱「常問問題」,如有其它問題請e-mail至robot@mail.npust.edu.tw。


‧聯絡人: 方小姐(0930625481)



參賽資格分為A、B兩組,每隊成員二至四人,每人限參加一隊,每隊限報名一組。

‧A組:國小、國中 學生。


‧B組:高中(職)、專科、大學、研究所及產業界人士。


‧A組限額30隊,B組限額30隊,以報名時間為準。台、澎、金、馬以外地區之隊伍不在限額內。


一律網路線上報名,報名後不接受更改。

‧ A組限額30隊,B組限額30隊,以報名時間為準。台、澎、金、馬以外地區之隊伍不在限額內。


‧報名時間自2008年11月10日起至2008年12月10日24:00止


(網路線上報名功能將於報名開始前開啟)


-----------------------------------------------------------------------

有意願參賽的隊伍可以詳細參考比賽官網的『常問問題』

這個比賽沒有限制機器人的材料及零件,所以可以使用任何零件。(當然國小同學可以使用樂高NXT或RCX機器人,比較方便參加競賽)

B組的『產業界人士』根據官方解釋是各行業的人士,所以大人即可參加,那麼......

各位樂高老師,各位學校老師,大家一起組隊來車拼吧!

(我會默默為大家加油!

大家要把握這個免費的機會喔!

創意德霖盃全國機器人程式設計競賽-二輪平衡車競速大賽

由德霖技術學院主辦的機器人競賽,競賽官網連結

比賽日期:九十七年12月5日(星期五)

比賽地點在
臺北縣土城市青雲路380巷1號 德霖技術學院 體育館

參賽資格:全國大專校院大學、四技、二技部在學學生組隊參加,每隊成員至多2~4人,指導老師一至二人,每人限參加一隊。

競賽主題非常有趣,二輪平衡車競速大賽,

簡單的講就是用LEGO NXT做出SegWay(中文維基連結英文維基連結

探奇舊文章曾經做過一些討論:

Segway, LegWay, NXTway 樂高的兩輪平衡機器人

Touch_way 探奇教室的雙輪機器人

畢業論文的雙輪平衡機器人


記得前一陣子TOYOTA也發表類似的產品Winglet

有興趣的人也可以試試組裝你自己的NXT兩輪平衡機器人喔!

2008-10-15

Odin--會量測行走路程的機器人

這是Philo先生的新作品。
四顆輪子直行前進,利用下方的旋轉盤底座,改變行進方向。
可以精確計算行走過的路程,所以可以自行回到出發點。

當然這台機器人必須在空曠平坦的地方行走,也無法承受各種碰撞(會使計算的路徑失去準確度)

號稱一套NXT即可完成,也提供相關組裝說明PDF檔及MLCAD檔案,還有相關NXT-G程式可以下載,這些程式需要安裝Square Root and Atan2 block (written by Claude Baumann

看看Philo先生的影片檔案,就可以瞭解這台機器人的動作。

請點擊連結網頁,Philo先生的網頁,Odin, a robot for odometry

2010補充:

有人發表Odin的影片:Lego Mindstorms NXT: OdinScout



Mindsensors新的感應器設計 PSP-Nx-v3


(圖片來源:Mindsensors公司)

Mindsensors公司不久前才推出新版的NXTCAM以及新版的加速度感應器

最近又再度更新其他感應器的外表,包裝得更精美,不再是裸露的電路板,精緻光滑的表面以及黑色系的外觀,搭配NXT白色的機殼,組裝之後的機器人反倒可以有另一種美的視覺。

雖然沒有樂高公司的認證,外觀也不是傳統樂高感應器方方正正的外型,精緻輕薄的外觀,讓人感覺像是手機等電子消費品的設計,讓感應器走向高雅尊貴的風格。

這次推出的是PSP-Nx-v3,讓你可以使用PS2搖桿控制NXT機器人。

針對沒有PS2搖桿的消費者,另外也推出搭配2.4GHZ RF 無線搖桿的組合套件
(圖片來源:Mindsensors公司)

在Mindsensors官網還提供許多PS2相容搖桿的資訊,也有許多搖桿控制NXT機器人的示範影片,不容錯過喔!



2008-10-14

NXT使用第三方感應器範例程式(Robolab vi)

HiTechnic及 Mindsensors還有Codatex都有生產NXT相關的感應器。

LEGO Engineering官網最近提供相關感應器的範例程式 。

有Codatex的RFID sensor

有HiTechnic的IR Seeker,Gyro,Acceleration

有Mindsensors的Real Time Clock,Proximity sensor,Servo motor

有興趣的同好可以參考程式寫法,使用其他語言的人也可以看看程式架構。

請點擊下載網頁連結

關於NXT與MSRS、C++等相關資訊

在大學時代,老師就一直提醒我們圖書館的實用及重要性。

通識課程中的教授更告訴我們『學會如何問問題』才能找到你所需要的答案!

在學生的生涯我學到如何尋找資料、過濾資料及掌握資料,最後才能運用資訊。(注意喔!資料最後才會變資訊

現今網路發達,當然也有一部分人依賴『知識+』,所以『思考』對於一些人來說變得有一點困難。

於是好像『茶來伸手,飯來張口』,這樣一來雖然有許多大餅圍在脖子上,有一天還是會餓死的喔!

如何尋找資料、過濾資料及掌握資料,最後才能運用資訊這應該是新一代人才需要的重要能力!

我在教導樂高課程時也順便將這種思考的方式教給孩子!

希望大家一起加油!

======================================

說了一堆,回到正題,關於使用MSDN或是C++程式庫,撰寫程式透過藍牙控制NXT,我就個人印象所及,回覆如下,有興趣的同好可以做為參考:


你好:

建議你,學生應該要培養自己搜尋資料的能力,不論是網路或是圖書館都是一個很棒的知識庫。

我並不會使用MSRS,連MSDN都不會,更不用說是C#,VB或是C++,所以這一方面我並不是非常瞭解。

關於MSRS,你可以買這本書看一看,(我沒有看過)

http://www.books.com.tw/exep/prod/booksfile.php?item=0010413003
Microsoft Robotics Studio 程式開發 - 新一代超智慧機器人開發平台  Programming Microsoft Robotics Studio

至於MSRS,你可以參考相關載點的說明文件:
http://www.microsoft.com/downloads/details.aspx?familyid=57ce326b-2125-4163-a33f-ed2f69e03b56&displaylang=en#RelatedLinks

網路上就有一些相關範例:
Lego NXT + wiimote with MSRS tutorial
http://alandtech.blogspot.com/2007/11/lego-nxt-wiimote-with-msrs-tutorial.html

還有Microsoft Robotics Studio and Lego Mindstorms NXT
http://blogs.msdn.com/coding4fun/archive/2007/07/16/3902344.aspx

MSRS與VC++的關連性,我不知道!!

你可以使用C++與NXT的關鍵字做一些搜尋。

例如有人提問,可以使用C++寫程式嗎?
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1674576&SiteID=1

或是這一個程式庫The NXT Bluetooth c++ library
http://www.norgesgade14.dk/bluetoothlibrary.php

還有這個人的例子:
Remote-controlling Lego Mindstorms NXT by using Visual C++
http://www.kyb.tuebingen.mpg.de/bu/people/berger/nxt/nxt.html?printversion=1
加油!你可以成功的!

2008-10-13

HiTechnic IR Link sensor 使用範例



有人在機器人學苑論壇提到HiTechnic IR Link sensor,使用NXT-G撰寫程式時有一些狀況,雖然發文者已經解決問題,不過探奇發現這個RCX IRLink Block有一個BUG。

一開始拖拉命令方塊時,選擇RCX Command後,MOTOR(或SENSOR)的預設值都是"1",



如果沒有重新輸入數值(或是使用上下箭頭調整數值),這個預設值又會變回"0"。


我已經去函HiTechnic,請他們修正這個錯誤,希望很快有消息回應。

下面是一些使用範例:

1. 控制RCX的A馬達旋轉一秒。

(註解的最後一行似乎出了問題,應該更正為『RCX的馬達A仍然一直轉動』)



2. 類似Try Touch的動作,觸碰感應器是接在RCX的一號輸入端,在NXT LCD上顯示笑臉。




3. 兩秒鐘以內,計算按下觸碰感應器的次數(也就是感應器讀值在0與1的變化次數,可以當成脈衝訊號)




4. 綜合應用,RCX發出聲音,令RCX的A馬達轉動一秒後停止,RCX 發出另一個聲音,持續在NXT LCD顯示數值,數值來源是接在RCX 2號輸入端的光源感應器之原始數值(0-1023)。愈亮數值愈低,愈暗數值愈高。



有興趣的朋友也可以留言討論或索取程式,謝謝!



2008-10-12

NXT + 8291 遙控摩托車

看完荷蘭的作品,我們再看看德國的作品,leggor.de

探奇也曾經介紹他的作品:NXT與RCX通訊--只使用光源感應器

這次的新作是改造8291摩托車,變成NXT遙控摩托車。

大家已經發表許多NXT機器車,特別是利用NXT的藍牙功能進行遙控的例子,

但這一台特別的地方是:遙控器做成摩托車龍頭的形狀,除了右手把可以轉動加油,還有左手把的煞車器。

摩托車的輪胎也更換為較寬的輪胎,才能維持平衡。(當然還是有用到腳架支撐)

(至於是更換哪一種輪胎?大家可以參考玩家的樂高輪胎說明網頁,也歡迎大家留言告知,謝謝!)

請參考原作者網頁8291 Fat Boy(德文),網頁的圖片都有超連結,有更詳盡的說明,也有NXT-G程式可以下載。

還是先看看影片!做得很棒喔!






大型樂高NXT保險箱(6.5公斤重)

許多人買了NXT,大部分都是做一台會移動的機器人,

其實可以利用NXT的主題非常多,還是老話一句:『積木有限,創意無限!』

不會『趴趴造』的機器人也很有趣喔!

原本探奇有一個製作保險箱的計畫,不過只完成了第一部份:密碼鎖,請參考LEGO NXT金庫密碼(Part 1)

後續就是....嗯....偷懶!

偷懶的結果是.....

這個自認偉大的想法竟然已經被人捷足先登!

http://www.bouwvoorbeelden.nl/ 已經做出重達6.5公斤的樂高NXT保險箱。

請看英文網頁介紹:http://www.bouwvoorbeelden.nl/home_eng.htm

(探奇舊文章已經介紹過他們的作品:吃角子老虎機及樂高NXT槍戰遊戲機

這次的保險箱是使用NXC程式完成,也提供NXT執行程式,可以直接下載執行,不用重新編譯NXC程式。

詳細的圖文是使用荷蘭文介紹,利用Google翻譯,可以很輕鬆地將網頁轉換成中文,可惜的是翻譯機器人還不夠厲害,翻譯之後的網頁很『有趣』,只好半看半猜........

請點擊Google翻譯的網頁

還有youtube的影片可以直接觀賞。



2008-10-06

台灣學術界使用NXT的情況?

NXT機器人適合各個階層的人士使用,

從小學、國中,高中職的社團(才藝課程或學校正式課程),到專科大學專題,研究所的論文,

教育單位的研究計畫,或是成年人的嗜好『玩具』,還是公司研發原型機(prototype)的研發工具?

NXT真的是從9歲到99歲老少咸宜的用品。

最近看了機器人世界情報網,張乃文君的研究報告,

台灣學界機器人相關研究分布資訊整理-學界教授訪談整理

詳細列出台灣各大專院校研究機器人的實驗室團隊及老師教授。

張君也從碩博士論文查出相關的研究論文,並且做出詳盡的分析。

台灣碩博士論文之機器人相關研究方向資料整理

其實還有一些相關應用尚未列出,張君也在文中說明會繼續更新資訊。

在GOOGLE搜尋中,使用『NXT+論文』等關鍵字搜尋也是一件有趣的事。

想到有一些同學留言詢問NXT相關的操作及程式問題,再加上貝登堡公司最近在大專院校推廣NXT機器人,

不知道有哪些學校系所正在使用NXT進行專題論文的研究?

不一定是直接研究NXT,就算是利用NXT做為工具也是一件很棒的事。

不知道台灣地區有沒有人做這樣的統計及資料蒐集。

如果你知道相關計畫或研究主題,歡迎你留言討論。

(當然牽涉研究機密就不用明說了!

有需要購買HiTechnic及Mindsensors的東西嗎?

最近有人提到要購買感應器,所以探奇特別發起這次團購活動,節省運費。

原則上兩家的東西都會採購。

HiTechnic官網

Mindsensors官網

預定的價格都是(官網定價*1.2*32)+台灣運費

由於匯率變動非常快速,最終價格等貨品送到台灣再做計算。

歡迎大家寄信到touch_classroom@yahoo.com.tw

預定募集到期日:2008/10/15

謝謝!


更新:2008.10.16訂單已經處理完畢,請大家耐心等待,謝謝!



LabVIEW NXT Toolkit Tutorial

這也是LEGO Engineering新的資料。放在Podcasts目錄下。

提供簡易的LabVIEW NXT Toolkit 教學

將近15分鐘的影片詳細告訴你如何使用LabVIEW NXT Toolkit控制NXT機器人

包含基本操作及10個教學範例程式。

請有興趣的同好趕緊下載觀賞。

LEGO Engineering 2008 的樂高課程教案(包含NXT)

最近LEGO Engineering新增加了一些課程教案。

(請參考探奇舊文章:LEGO Engineering 新發表的教案

除了修訂以前的舊教案,還增加了三個新教案,總共有四個主題,都是利用樂高積木及NXT為教具,設計
各種關於科學的課程,讓孩子瞭解科學相關的知識。

總標題為
Science through LEGO engineering 適合國小3-5年級的孩子

 This series of curricula engages upper elementary students in explorations of science principles (animals, simple machines, properties of materials, and sound) through LEGO design projects.

分為四大主題,動物,簡單機械,物體的特性(形狀結構)以及聲音。

Design a Musical Instrument: The Science of Sound
Design a Model House: The Properties of Materials
Design an Animal Model: Animal Studies
Design a People Mover: Simple Machines

詳細說明在
這個網頁連結,包和教師上課所需要的教學海報,圖片,程式等檔案提供下載。

(不過我發現Simple Machines下載的連結有誤,已經去函告知)

另一個
教案PDF檔的下載連結在這個網頁

內容都非常豐富,包含完整的教師計畫,學生的學習單,還有詳細的課程內容。

真是教學的好資料!



2008-10-03

2008 十月份的PCHome Life 別刊有介紹NXT及其他機器人喔!

記得前一陣子曾經買過一本PCHome,附送一本別刊PCHome Life,就是為了看看裡面介紹的NXT。

今天在麥當勞看到2008十月份的PCHome Life的封面故事也是機器人,大概是配合前一陣子機器人大展的話題吧!

匆匆翻閱了一下,封面故事有羅仁權教授等人的照片,當然還有他們對機器人產業的見解,特別是歐美日韓機器人發展的顯況及比較。

第一篇介紹貝登堡公司的KONDO及樂高NXT機器人,還特地說明NXT除了原本搭配的軟體之外(應該是NXT-G,連NI的名號都沒打上去),還可以配合M$的MSRS進行控制,真是太有心了!

第二篇是介紹利基公司的機器人,有很多造型變化喔!

第三篇介紹各種電子寵物。(有史賓家族,好像沒看到PLEO)

有興趣的同好可以買來參考參考!(或是到麥當勞找一找