發表文章

目前顯示的是有「深入NXT」標籤的文章

免費電子書:Fully ARMed NXT

圖片
Fully ARMed NXT 這是由 School of Computer Sciences, Universiti Sains Malaysia 的Tat-Chee Wan所編著的電子書。 關於NXT的心臟,ARM處理器的書(很硬,我完全看不懂 ) 如果你想好好研究ARM,直接控制NXT,應該是本不錯的參考書。 消息來源:BOT BENCH - Free E-Book: Fully ARMed NXT

介紹一個半新的NXT樂高機器人公用程式--NeXT Commander

圖片
有時候只是為了檢查NXT主機的一些狀況,例如電池電量,重新下載韌體,主機記憶體使用等,就習慣性打開NXT-G軟體,卻又必須等待NXT-G漫長的開機時間。這時就需要一些公用軟體來執行這些功能。 這類的軟體其實不少,探奇曾經介紹過『 在Mac上使用的NXT公用程式--NeXT Tools(9/3更新下載點) 』, 還有BricxCC裡面的 NeXTExplorer ,都是很好用的NXT主機工具軟體。 (探奇舊文章的 OnBrick :一個可以遙控NXT的軟體 ,也有類似的功能 ) 今天要介紹的是半新的公用程式,因為它在2011年就已經在MindBoards發佈,不過沒有什麼人注意。 NeXT Commander 由SavedCoder在2011年完成,目前還一直是0.9.0.0版,使用 FreeBasic 撰寫的。 下圖是啟始畫面,會自動搜尋所以已經接線的NXT主機,包含USB及藍牙連線。 下圖是使用畫面,可以看到NXT主機的所有資訊,電池電量,記憶體空間,韌體版本等。 當然也少不了監視感應器及馬達動作操控等檢查功能。 其他的功能跟NXT-G的NXT Window差不多,可以上傳下載NXT程式,遙控執行NXT程式,更改NXT主機名稱。也能透過USB連線下載韌體。 根據作者解釋,目前還沒有支援彩色感應器,因為他沒有這個東西,也不知如何控制。 寫了這麼多,有興趣的讀友又多了一套『遙控器』,可以善加利用。 但是探奇覺得這個軟體的重點是作者寫了3000多行的FreeBasic程式,程式碼是公開的。 我很好奇如何使用Basic語言以兩種連線方式(USB與藍牙)控制NXT,除了NXT Direct Command以外,一定還有許多技巧值得探討。(這就非常非常值得我學習,因為我不會 ,或許也可以套用在其他語言完成這種操控NXT的工作) 延伸資訊: NeXT Commander官網 NeXT Commander下載 FreeBasic官網 FBIde--Free Basic的半官方整合開發環境

NXT樂高機器人的鋰電池拆解圖

圖片
去年NXT樂高機器人推出新版的白色鋰電池,號稱容量為2100mAh, 大陸的NXT玩家將鋰電池拆解,並且在中文樂高論壇發表文章,請讀友直接到論壇觀看詳細圖片。 (不知道我的舊電池還有沒有救?) scd555的文章: 新版NXT电池暴力拆解 yybb123的文章: 拆个nxt电池看看~~~长见识

RoBoard與NXT感應器

DM&P (或者還是稱為瞻營全?)公司販售的 RoBoard 是 32位元的 X86架構 超小型主機板,這塊主機板的主要功能是提供機器人的控制核心。 RoBoard魔人 分析NXT樂高機器人的四種感應器接線,並且在 部落格 貼文示範,教導大家如何使用RoBoard接收感應器資料。 請直接到 RoBoard魔人部落格 觀看詳細文章。

NXT樂高機器人的PID控制影片

圖片
這是巴西 Ivan Seidel 所做的停格動畫(Stop Motion),說明PID控制的意義,還製作NXT樂高機器人實際驗證P的比例控制。 The NXT STEP 前一陣子就已經發文介紹這部影片,但是影片是葡萄牙文,當時原作者答應加上英文字幕,現在更新影片,總算比較容易看懂。 有興趣也可以到他的網頁看看: http://techlego.blogspot.com/ (請練習葡萄牙語 ,或是 Google翻譯 ) 不知道有沒有人願意翻成中文呢?

Xander的文章--解剖NXT超音波感應器

雖然NXT超音波感應器的外殼不容易復原,Xander 仍然秉持著大無畏的精神,將NXT超音波感應器拆開來。 有興趣的讀友可以比對樂高官網的電路圖,瞭解超音波感應器。 請直接到Xander部落格觀看精彩圖片。 Exposed: LEGO Ultrasonic Sensor

『樂高機器人8547的彩色感應器』大解剖

這種解剖感應器的大手術,也只有Xander做得出來(Philo應該是另一位大師), 原始圖文:Xander的 Exposed: LEGO Colour Sensor 有人在mindboards論壇提問:樂高彩色感應器的第三顆『眼睛』是做什麼用的呢? 確實,探奇也曾經想過這個問題,但是卻無疾而終, 目前也沒有這顆感應器的相關資料,還好現在有Xander進行解剖,讓我們得以一窺彩色感應器的真面目。 根據Xander的圖文說明,這顆彩色感應器只有兩個『眼睛』,一顆是三色LED(紅藍綠),另外一顆就是光源接收器(photo-detector)。第三顆『眼睛』是假的,只有塑膠蓋子。 電路板上還有一顆小顆IC,加上Philoh好像提及這是一顆類比感應器, 因為是類比感應器,探奇大膽假設三色燈光的切換應該類似我們家裡電燈的電子開關,所以只能顯示單色或三色,無法同時顯示兩種顏色,或許變更IC的設定可以做到顯示兩種顏色。 延伸閱讀: Plilo先生的精彩文章--NXT彩色感應器的比較 樂高教育官網正式開賣8547的彩色感應器 新版NXC支援8547的彩色感應器

Arduino與NXT的I2C通訊

圖片
繼上次的『 連接 NXT 與 Arduino 的 RS485通訊 』精彩說明文章, 昨天CH Lego先生又發表新文章,是兩篇喔! 有興趣研究Arduino與NXT的讀友千萬不要錯過很棒的圖文說明,還有程式範例! 快點點擊下列連結: 兩部Arduino之間的I2C通訊 Mindstorms NXT與Arduino之間的I2C通訊 2011.08.24更新文章: NXT與Arduino多重I2C Master之實作測試 2013.02.28更新:DI的 Interfacing the Arduino and LEGO MINDSTORMS

再更換大腦的Android樂高機器人

圖片
探奇在前幾天發過一篇文章: 更換大腦的Arduino樂高機器人 ,提到mindsensors將要發佈 關於Android的新產品 。 感謝CH Lego大大的留言提醒,終於有一點瞭解mindsensors的新產品。 就是 Teemino - Arduino and Android ADK compatible board ,這是一塊符合Google2011大會上所提出的 Android Open Accessory Development Kit 的板子,這塊板子以Arduino Mega設計,可以連接Android裝置的USB埠。 再加上一塊 NXShield for Android ADK (or Arduino Mega) ,那麼就可以由Android裝置直接控制NXT馬達及感應器。 有點複雜,我想可以利用下面的文字解釋: Android裝置<-->Teemino<-->NXShield for Android ADK (or Arduino Mega)<-->NXT馬達感應器 總之,不用透過藍牙,可以直接由Android大腦控制NXT的馬達,也可以充分利用Android的所有感應器、鏡頭、3G、WiFi、........強大的運算功能,超小體積的大腦。 真是太棒了!Android樂高機器人成形! 不過還是需要寫程式,在Teemino和Android都要寫程式控制,說不定很快就有SDK! 先看看 以Arduino做成的 Google IO Android ADK 板子示範, 再看看將這些功能裝在Android小機器人的跳舞控制, 機器人的出路真的越來越寬廣了! 2011.07.10新增 Teemino 官網的實際應用影片

更換大腦的Arduino樂高機器人

圖片
通常探奇在文章中都是標明『NXT樂高機器人』,這次變成『Arduino樂高機器人』,大家應該可以想像是什麼情況了吧。 探奇一直認為機器人就是『機構+控制』。 用PC電腦控制是大家常見的一種方式,但是不容易移動。現在有許多智慧型手機或是平板電腦,讓『控制』不再是一件困難的事。 但是『機構』方面就不容易上手,鎖螺絲,鋁擠型、鋼架,加上木板壓克力,要像組合家具一樣,全部由自己組合一堆感應器或馬達,需要很多的經驗。 樂高的NXT機器人套件就具有許多便利性,特別是組裝方面的長處。 但是控制器NXT主機讓人有種遺憾,包含體積,孔位,及韌體,看似好像不太能夠發揮原有的硬體優勢。 於是大家紛紛發揮創意,用藍牙,RS485,I2C等方式,讓NXT能夠跟手機、Arduino等裝置聯繫,藉由其他強大的控制系統來指揮樂高機器人。 既然手機、Arduino可以透過NXT主機控制NXT馬達及感應器,那麼何不跳過NXT主機,直接控制這些周邊呢? 當然我們還是需要等待懂電路的高手提供實體連接的電路, mindsensors的NXShield for Arduino 就是這樣的產品。 可以搭配Arduino Duemilanove or Uno,提供RC servo motor端口,四個NXT馬達輸出端,四個感應器輸入端,可惜的是輸入端中只有一個支援I2C,這意味著只能用串接方式擴充不同位置的數位感應器。例如沒有辦法接上兩個超音波感應器(因為無法更改超音波感應器I2C位址)。 探奇想到的問題有兩個: 1. 電源供應:需要9V電源,可以同時使用那麼多馬達感應器嗎? 2. 擴充性:這個Shield好像沒有其他擴充腳座,無法再堆疊其他arduino擴充板?那麼還可以接其他的感應器嗎? 這些問題還請專家提供意見討論。 延伸閱讀: mindsensors 官網Coming soon 官網還告訴大家,7/8星期五要宣布另一個神秘嘉賓,跟Android有關,莫非是Android手機或平板電腦的專用擴充電路板?還是有硬體可以讓Andorid系統的USB實際連接NXT主機?真是令人期待! CH Lego Blug的文章: Arduino的NXT裝置擴充板-mindsensors NXShield for Arduino =================================================...

有趣的NXT燈光秀

圖片
起因是Laurens Valk需要利用NXT主機輸入端的dig0跟dig1,送出PWM訊號控制非NXT的馬達。 (探奇想到這樣真的可以讓NXT主機控制第四顆馬達 ) 所以Xander就教他利用NXT主機第四個輸入端的RS485送出PWM訊號。 Xander使用聲音感應器接收擴音器放出的音樂,再透過4號輸入端的RS485,送出脈衝訊號,剛好可以用來控制光源感應器的LED燈。 這個實驗一口氣用到許多東西,聲音感應器,光源感應器,RS485,真是有趣。 程式當然是使用RobotC,示範影片如下: 第二天Sidneys1也在他的部落格發表文章,詳細說明PWM原理,也用NXC改寫出進階版程式, 示範影片如下: 這些文章真得很值得參考,也可以應用在許多地方喔! I'd Rather Be Building Robots 的文章 Disco Inferno I'd Rather Be Building Robots 的另一篇文章 Disco Inferno Part II Sidneys1's Blog的 PWM via RS485.. Demonstrated in a cool way!

Tetrix 與 NXC 的驅動程式

擁有Tetrix的人應該不多,大多數人都是使用RobotC或LabVIEW撰寫程式,以NXT主機控制Tetrix。 如果有需要,也可以用NXC喔! 這裡有一位 mattallen37 自行撰寫NXC驅動程式,透過I2C架構,可以讓NXT主機控制HiTechnic的控制器。 請參考 他的部落格 ,有詳細的說明。 Tetrix, and NXC drivers 附上Pitsco的最新Tetrix廣告影片:

NXT超音波感應器的一次量測(Ultrasonic Sensor Single Shot)

圖片
WRO的比賽陸續展開,大家對於比賽的解題方法及技巧也非常有興趣。 看到陳慶明老師對國小迷宮使用超音波的討論,想到超音波之間互相干擾的問題。 原因是超音波感應器的超音波一直連續發射,在狹窄的空間中反射,會影響其他超音波感應器的接收。 如果能關閉(隨意控制)超音波的發射,應該可以專心接收自己發射的超音波。 在各大論壇中也有許多人討論如何應用各種程式語言設定超音波感應器,例如NXC, RobotC, Java等。 那麼用NXT-G寫程式就束手無策嗎?其實不然,只要有高手提供適當的工具。 讓我想起來在很久以前,Guy Ziv曾經教導大家在NXT-G使用I2C Write Block,直接設定超音波感應器,可以切換成一次測量(Single Shot)。 (I2C Write Block的下載請參考 探奇舊文章:重要記錄:MindBOARDS的NXT-G命令方塊資料庫 ) 超音波感應器是一顆數位感應器,透過I2C的通訊協定跟NXT主機溝通, 大家可以參考LEGO MINDSTORMS NXT Hardware Developer Kit的Appendix 7-LEGO MINDSTORMS NXT Ultrasonic Sensor I2C communication protocol。 下面的程式說明: 先用一個命令方塊設定超音波感應器,進入迴圈後,用I2C Write命令設定為一次發射,讀取超音波數值,顯示在NXT主機螢幕,每隔一秒發射一次。 迴圈在按下NXT主機向左鍵後結束,將超音波感應器設定為『連續發射』,發出聲音,等待按下橘色按鍵。 那麼該如何確認超音波是連續發射呢?我沒有儀器可以量測。 探奇用的是一個笨方法:用另一個NXT的超音波感應器去接收。 擋住另外一台超音波感應器的發射端,就能夠接收到其他超音波感應器所發射的超音波。 下圖是I2C Write Block的設定,輸入都是使用十進位值。 歡迎大家一起討論,測試這個功能。 延伸閱讀: 童年萬歲的『慎用超音波』 以及 優勝家機器人教室的『2011WRO國小組的好朋友-超音波感應器』 ,討論超音波的精度及反應時間。

ch lego大大的新文章:連接 NXT 與 Arduino 的 RS485通訊

圖片
我一直認為NXT主機上Port 4的RS485可以有很多用途, 今天看到ch lego大大發表的新文章: 連接 NXT 與 Arduino 的 RS485通訊 。 這篇文章詳細介紹RS485在NXT與Arduino的通信應用,還有範例程式,真是太專業了! 請直接到 ch lego大大的部落格 觀看文章。

NXT主機的故障維修(2011.05.02更新)

圖片
跟大部分的電子產品相同,NXT樂高機器人的主機也有一年保固, 如果NXT主機故障,應該可以向原始購買的教室或廠商詢問處理方式。(所以購買時還是需要挑一下賣家 ) 探奇對於電子零件的構造及原理,向來都是『知其然,不知其所以然』,所以如果NXT主機壞了,只能請其他老師幫忙。 我曾在2009發表過舊文章: 如果你的NXT主機螢幕出現問題...... ,討論維修NXT主機螢幕的問題。 前幾天的探奇文章提到 NXT主機與電腦的USB連線問題 ,其實網路上已經有人更換NXT主機上的USB母座,我想一定是USB線還插在NXT主機上,不慎大力拉扯的結果。 請參考這位仁兄的文章及圖片說明:HEXABOT的 Inside NXT Brick. Replacing broken USB port 關於NXT主機其他部位的維修,台灣的樂高老師也是臥虎藏龍喔! 手創兒童機械科學館詳細說明NXT 1.0及2.0內部電路版構造的不同,請參考他們的文章: NXT 1.0與2.0的內部構造 ,真的是大開眼界,我都不敢打開NXT主機外殼。 還有童年萬歲的這篇文章: 我們的啞巴機通通康復了! ,更換NXT主機的喇叭。 2010.5.2更新:更棒的是童年萬歲有詳細圖解文章: 修復啞巴機 歡迎大家一起提供相關資訊。

NXT藍牙通訊的原理

圖片
探奇正在準備 中正清江中心成人NXT樂高機器人研習 的藍牙通訊課程。 恰巧 研發養成所 的Bridan先生寫了一篇文章,說明NXT藍牙通訊的兩種控制方式,讓我獲益良多。 請參考: Mailbox, NXT's communication method 同時最近探奇也偶然在youtube上發現這段影片: 『 LEGO 樂高 NXT機器人 手機遙控程式寫法 』 是由高雄市中正高工創造發明社楊益綸同學上傳 , 影片中說明如何撰寫NXT-G的藍牙接收程式,根據藍牙信箱的內容,對應到不同的動作,手機端應該是使用JAVA程式完成?可惜影片中並沒有說明。 感興趣的讀友不妨參考一下。

重要記錄:CAVE的大方分享

圖片
CAVE教育團隊( CAVE小小原始人科學創意工坊 - 專業熱情的機器人教學團隊 )發行許多種NXT程式語言書籍,也恭喜CAVE的書大賣。 前一陣子還有年終發表會,他們也大方的提供相關簡報檔案, 可以到 CAVE的File Cabin 下載。

iPhone直接控制NXT

終於有高手破解,使用iPhone直接控制NXT。 詳細情況還需要更多資訊。 MATRIXSYNTH的文章: LEGO NXT and iPhone talk over Bluetooth 影片示範如下:

Renewable Energy Add-On Set的LEGO Energy Meter

圖片
探奇曾經發文介紹日本公開發表 9688 Renewable Energy Add-On Set ( 樂高官網介紹 ) (探奇舊文章: 9688 Renewable Energy Add-On Set在日本公開發表! ) 這個套件中有一台LEGO Energy Meter,可以作為NXT的感應器,偵測電流電壓值。 Xander在這篇文章中 Exposed: The Lego E-Meter 拆解LEGO Energy Meter,同時也提供I2C的暫存器資料,據稱近期也會發表NXC與RobotC的相關函式庫。 至於NXT-G, LEGO Education官網 早就提供相關命令方塊的下載,還有示範活動的PDF檔案,影片等 請參考探奇舊文章: 超級重要的NXT更新 。 9688官網定價99.95美金,很期待喔!

自製NXT感應器--Sharp紅外線感應器

對於自製感應器有興趣的讀友,這是一篇不錯的文章。 記錄如何將 Sharp IR Rangers 變成NXT感應器,包含電子零件電路圖,感應器的韌體,leJOS的驅動程式。 文章中有非常詳盡的說明,適合想自製感應器的同好。 請連結到 Stew’s Spot 的文章 Designing Lego Mindstorms NXT sensors 。