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。



參考這個範例,大家應該瞭解如何計算次數。

歡迎討論,謝謝!

3 則留言:

  1. 可以請教你幾個問題嗎@@?
    我本身是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 (我也要買)
    另外就是找人學習,找人討論,多看看別人的程式。
    加油喔!

    回覆刪除
  2. 第一張圖片好像有點小
    看不清楚
    可以更換一下嘛 ??THX
    還是我電腦的問題
    [版主回覆09/02/2007 16:38:50]重新上傳一張大的圖片,如果還是看不清楚,歡迎EMAIL給我,我將原始程式及圖片寄給您,謝謝!

    http://tw.f14.yahoofs.com/myper/8crUvVGGHwKkRrjwPg.PJk7ckkwUHc4-/blog/20070902043354137.jpg?TTDmn2GBBkUwaHJI

    回覆刪除
  3. 不好意思! 右端的迴圈的圖片不清楚,我想要利用光感計算經過黑線的次數,但是看不清您的圖示,
    您下面回應新圖片連結不能使用,可否再上傳一次呢,非常感謝!
    [版主回覆05/07/2010 11:51:55]你好:

    謝謝告知連結失敗。

    請點擊http://tw.myblog.yahoo.com/touch_classroom/photo?pid=904

    開啟部落格相簿,再點擊該圖片,就會出現放大的圖片。

    歡迎討論!


    回覆刪除

探奇歡迎大家留言討論!謝謝分享你的意見。