MBC 循行者 8 路 × MBC SPIKE 積木網站

三個步驟用 MBC 積木網站讀循行者

在 MBC SPIKE 圖控編程網站 上,循行者不用匯入函式庫:先在「開機時執行一次」裡告訴網站感應器接哪個埠,再放主迴圈,最後把讀值積木放進主迴圈。左邊一步一步做,右邊的積木會跟著長出來;這些積木圖是直接從網站拼好匯出的,跟你在網站上看到的一樣。

網站免費、免登入;主機要裝 Pybricks 韌體(網站「SPIKE 主機」選單可以幫你燒)。

1

設定:哪個埠接循行者

程式的第一件事,是在黃色「開機時執行一次」下面接一塊「○ 埠 接 MBC 循行者8路」,網站才知道那個埠接的是循行者。

感應器接在哪個埠?
  1. 打開 MBC SPIKE 圖控編程網站,按「+」開一個新程式。
  2. 左邊積木類別點「MBC 感應器」→「循行者8路」,第一顆就是「○ 埠 接 MBC 循行者8路」。
  3. 把它接在「開機時執行一次」下面,下拉選單選 C。
2

放主迴圈

讀感應器要一直重複讀,所以要有黃色的「主迴圈(一直重複)」。裡面先放一顆「等待 100 毫秒」,讓它每 0.1 秒讀一次,不會讀太快。

  1. 從「控制」拖出「主迴圈(一直重複)」,放在設定積木下面空白的地方(不用接在一起)。
  2. 再拖一顆「等待 100 毫秒」放進主迴圈。

網站產生的程式會自動放進多工架構(async),不用自己選,也不用寫 await。

3

使用讀值積木

「MBC 感應器 → 循行者8路」裡面還有 18 顆讀值積木(Pybricks 函式庫有的功能都有),每顆中間都有埠的下拉選單,要選跟第 1 步一樣的埠(C)。點一個功能,積木和輸出會換成它的範例。

模擬感應器(從車子後面往前看):拖動黑線,看右邊的輸出怎麼變

模擬畫面是示意:數值換算簡化過,實際感應器可能差一兩格。光值 0 = 黑、100 = 白;紅框 = 那一路判斷在線上。

每顆讀值積木的範例

18 顆讀值積木,每顆都有一組可以照著拼的範例(C 埠)。按「試試看」會切到第 3 步,右邊的積木和輸出會換成這個範例。

使用注意

  1. 設定積木只要一顆。同一個埠只能設定一次;讀值積木的埠要跟設定積木一樣,選錯埠網站會在下載前提醒。
  2. 不用下載函式庫。網站下載程式時會自動把循行者的讀值程式一起傳到主機。
  3. 跟 Pybricks 函式庫一樣:MBC_line8.py 有的功能這裡都有積木(bin_raw/bitmap =「8 路黑白值」、ir_ch =「第 N 路光值」),讀到的值也一樣。拔線不會讓程式停,讀不到時回傳上一次的值;用「感應器有接好」可以知道有沒有接好。
  4. 丟線時:線完全離開感應器時,線位置回傳最後離開的那一側(−8/+8、−100/+100);要判斷「真的看不到線」用「有偵測到線」或線寬等於 0。
  5. 方向:站在車後面往前看,線在左邊是負數、右邊是正數;第 1 路在最左邊。