Come to the Light

當偵測到大於50的光值時, 機器人開始直走, 等到觸碰感應器被壓下後, 機器人停止。

第三章開始使用到馬達了, 其中我們用到了 “同步持續直走(Sync Unlimited)” 與 “同步停止(Sync Stop)”這兩個指令。

同步當然要兩個馬達才能同步, 預設值是B C 馬達, 和NXT-G的設定是一樣的。

請看到同步持續直走vi, 我們給它一個參數, 把電力設成50. 預設值是75。

大家可以看到有一條淺綠色的線由光感應器接到同步持續直走, 再接到同步停止。 這條線稱為Sequence Flow (從右側出去稱為 Out, 左側近入稱為In )。這也是LabVIEW強調的資料流(data Flow)概念。

本程式中一共有兩個loop, 第一個loop當偵測到一個比50大的光值後就會跳出迴圈, 有關運算(比大小, 加減乘除)的指令大概都長這樣子, 可愛的小三角形。

有學過電子電路或邏輯的朋友一定很熟悉這樣子的符號囉~

當下的光值和50來比會產生兩個結果, 真或假 (由於光值會一直波動, 所以等於50的狀況可以不考慮)。

等於50的話, 它會產出一個 boolean值, 來判斷迴圈要不要繼續執行下去。

由於Sequence Flow相接的關係, 第一個loop結束後會讓馬達啟動, 並啟動第二個loop。

第二個loop的結束條件是觸碰感應器被壓下, 壓下之後會接到同步停止。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *