LEGO SPIKE Prime Essential 樂高機器人,LEGO MINDSTORMS Robot Inventor, EV3 ,樂高動力機械 BricQ Motion 程小奔Codey Rocky,mBot2,CyberPi 童芯派 mBlock5 慧編程, Python 專業教學,課程設計。 Scratch, MakeBlock產品 艾多美 Atomy 生活用品 NXT 樂高機器人:創意樂趣,隨心所欲!
2007-08-18
NXT-G:變數的應用(計算次數)
有讀者留言詢問如何計算通過黑線次數,因為在NXT-G找不到Robolab的容器圖示。
其實NXT-G的變數(Variable)就相當於RL的容器(Container)
這個變數除了能夠儲存數值外,還能儲存文字或邏輯值。
我們用下面的範例作一說明:
請參考部落格的舊文章--變數的使用
首先定義一個變數,變數名稱為Count_1,變數型態為數值Numbers
利用Cound_1變數箱,每次光源感應器感應到黑色物體,光源值就會降低,
將變數箱的數值加1,發出GOOD的聲音。
接下來判斷變數箱的數值是否已經達到3,如果還沒有達到3,就在NXT螢幕顯示目前次數。
如果已經達到3,就顯示笑臉,並且結束程式。
(2010.5更正:變數似乎沒有拉資料線連到Switch,請讀者自行加入。)
如果上方圖片看不清楚,請點擊http://tw.myblog.yahoo.com/touch_classroom/photo?pid=904
開啟部落格相簿,再點擊該圖片,就會出現放大的圖片。
利用SWITCH命令方塊,需要設定內容才能執行程式。
第一個開關命令方塊:辨別是否為黑線。
第二個開關命令方塊:辨別變數值是否為3。
參考這個範例,大家應該瞭解如何計算次數。
歡迎討論,謝謝!
訂閱:
張貼留言 (Atom)
可以請教你幾個問題嗎@@?
回覆刪除我本身是NXT的初學者
但是變數很難 不知道該怎麼下手
不知道有沒有可以參考的書籍??或者是網站QQ?
[版主回覆08/30/2007 23:24:19]歡迎討論!我也是NXT初學者!
變數本身很單純,就是設定一個變數箱,寫入資料(數字,文字或邏輯值),需要時再去讀取,也可以對變數箱內的資料進行加減乘除,布林運算。
複雜的是如何應用的問題。
您有什麼需求需要用到變數?怎麼使用?
目前可以參考的有下列資源:
1. NXT-G本身的HELP檔,將滑鼠游標移到變數方塊,NXT-G畫面的右下角就會出現對應的說明,點擊MORE HELP,就會用瀏覽器打開HELP檔。
(筆者曾經發誓要將HELP檔中文化,但是太偷懶,還在努力中,我會優先翻譯變數,再另行撰文討論)
2. 目前最好的自學教案Tutorial就是http://www.ortop.org/NXT_Tutorial/html/advanced.html,可以選擇Variables,有精彩的旁白說明喔!
3. 還有一個High Tech Kids的FLL Programming 101 with Nxt-G(PDF檔)
4.或是買這本書Lego Mindstorms NXT-G Programming Guide (我也要買)
另外就是找人學習,找人討論,多看看別人的程式。
加油喔!
第一張圖片好像有點小
回覆刪除看不清楚
可以更換一下嘛 ??THX
還是我電腦的問題
[版主回覆09/02/2007 16:38:50]重新上傳一張大的圖片,如果還是看不清楚,歡迎EMAIL給我,我將原始程式及圖片寄給您,謝謝!
http://tw.f14.yahoofs.com/myper/8crUvVGGHwKkRrjwPg.PJk7ckkwUHc4-/blog/20070902043354137.jpg?TTDmn2GBBkUwaHJI
不好意思! 右端的迴圈的圖片不清楚,我想要利用光感計算經過黑線的次數,但是看不清您的圖示,
回覆刪除您下面回應新圖片連結不能使用,可否再上傳一次呢,非常感謝!
[版主回覆05/07/2010 11:51:55]你好:
謝謝告知連結失敗。
請點擊http://tw.myblog.yahoo.com/touch_classroom/photo?pid=904
開啟部落格相簿,再點擊該圖片,就會出現放大的圖片。
歡迎討論!