• 家長登入
  • 報名專線
大拇指教室
  • 教育理念
    • 教育理念
    • 學習地圖
    • 文章分享
  • 課程列表
    • 樂高動力機械SPM 6+
    • 樂高創意程式BOOST 7+
    • 樂高科技機器人EV3 9+
    • Scratch遊戲程式設計 8+
    • Python程式設計 11+
    • C++程式設計 12+
    • 最新課表
  • 2023夏令營
    • 班
  • 學生作品
  • 聯絡我們
    • 大拇指粉絲團
X

訂閱課程訊息

  • Email:
聯絡我們

請您向大拇指按讚! 
我們會用大拇指多鼓勵孩子

地址:台北市忠孝東路五段246號5樓
教室連絡資訊

訂閱電子報
 
部落格

迴圈方塊 | 樂高機器人EV3使用說明

迴圈方塊

迴圈方塊是可以容納程式方塊序列的容器。它會使所含的方塊序列重覆執行。可以選擇不斷重覆執行方塊、重覆特定次數或是直至感應器測試或其他條件爲“是”。

只有迴圈內的方塊會重覆執行。在迴圈結束後,程式會繼續執行迴圈之後的方塊。
提示和技巧
拖動方塊可在迴圈內移動它們。迴圈方塊會擴展以便爲內部的方塊騰出空間。
選擇迴圈模式


模式選擇
輸入
“計數”輸出
迴圈名稱

使用模式選擇可控制迴圈的重覆方式。不同模式指定使迴圈結束的條件。例如,可以使迴圈重覆特定次數、重覆到感應器資料值達到特定預設值或不斷重覆。可用輸入會因模式而異。下面介紹了模式。

可以在迴圈方塊頂部的“迴圈名稱”字段中爲迴圈輸入名稱。此名稱由迴圈中斷方塊用於提供另一種結束迴圈的方式。

迴圈中的方塊可以使用計數輸出得知迴圈已重覆的次數。有關更多資訊,請參考使用“計數”輸出。
模式:無限制、計數、時間、邏輯、感應器模式
模式
無限制


在“無限制”模式中,迴圈內的方塊會不斷重覆執行。永遠不會到達放置在迴圈之後的任何方塊。
範例 1
此程式使機器人反複按交替的直行/轉彎順序驅動,直至程式停止。
提示和技巧
使用 EV3 上的“返回”按鈕可停止程式。
範例 2
此程式會在每次壓下觸碰感應器時在 EV3 顯示上顯示閉合的嘴,否則會顯示張開的嘴。迴圈使選擇方塊中的感應器測試持續重覆。
計數


在“計數”模式中,計數輸入指定迴圈中重覆方塊的次數。
範例
此程式使機器人說一次“Hello”,說六次“Go”,然後說一次“Bravo”。迴圈方塊包含一個聲音方塊,配置爲重覆六次。
時間


在“時間”模式中,可以在秒數輸入中指定使迴圈重覆的時間量。從迴圈開始時測量時間。

僅在迴圈序列結束時才測試時間限制。迴圈序列會始終至少執行一次,僅當當時經過的時間少於秒數時,迴圈會繼續返回到開頭。
邏輯


在“邏輯”模式中,迴圈會一直重覆,直至直到輸入在迴圈序列結束時爲“是”。迴圈序列會始終至少執行一次,在每個迴圈叠代結束時會測試“直到”輸入。

使用資料線可將直到輸入連接到迴圈內程式方塊的邏輯輸出。需要迴圈結束時,此輸出應爲“是”。
範例
此程式使機器人向前驅動,直至壓下了觸碰感應器或顔色感應器檢測到黑色(先發生的情況起作用)。邏輯運算方塊的輸出用於迴圈的直到輸入。當迴圈完成時,機器人會停止。
提示和技巧
可以使用下面介紹的感應器模式,通過迴圈方塊直接測試許多僅涉及一個感應器的感應器測試。
感應器模式
迴圈方塊包含讀取感應器資料並將其與輸入值進行比較的幾個模式。每種感應器類型具有不同模式。某些類型的感應器資料可以與預設值進行比較,其他類型可以與某些特定值進行比較。
將感應器資料與預設值進行比較
在具有預設值輸入的模式中,迴圈方塊會重覆迴圈內的方塊序列,直至預設值比較爲“是”。例如,可以使迴圈重覆,直至顔色感應器檢測到小於指定預設值的反射光線強度值。



模式選擇
連接埠選擇
“比較類型”輸入
“預設值”輸入

使用模式選擇可選擇具有預設值輸入的感應器模式。如果模式使用連接埠,則使用連接埠選擇確保連接埠與感應器或馬達連接到的 EV3 主機上的連接埠匹配。

從比較類型列表中選擇要使用的比較類型,然後輸入預設值。

每當迴圈內的方塊序列完成時,迴圈方塊會讀取感應器資料並測試預設值。如果測試在當時爲“否”,則迴圈會重覆。如果測試爲“是”,則迴圈會結束,並且程式會繼續執行迴圈之後的下一個方塊。

有關使用不同感應器類型及它們提供的資料的更多資訊,請參考“使用感應器”幫助文章。
範例
此程式使機器人向前驅動,同時重覆三種不同聲音,直至顔色感應器檢測到小於 50 的反射光線強度,然後停止機器人。
提示和技巧
僅在迴圈序列結束時測試感應器預設值。在上面的範例中,如果顔色感應器在迴圈中短暫通過深色,則機器人可能不會看到它並且不會停止
將感應器資料與特定值進行比較
以下感應器模式允許迴圈將感應器資料與特定輸入值進行比較。迴圈會重覆,直至感應器資料等於指定輸入值。
模式備註
主機按鈕 迴圈會重覆,直至所選按鈕之一執行所選動作。

請參考使用主機按鈕。
顔色感應器 - 顔色 迴圈會重覆,直至檢測到所選顔色之一。

請參考使用顔色感應器。
紅外線感應器 - 遠程 迴圈會重覆,直至壓下下 IR 訊號上的所選按鈕之一。

請參考使用紅外線感應器“遠程”模式。
觸碰感應器 迴圈會重覆,直至觸碰感應器處於所選狀態。

請參考使用觸碰感應器。
超音波感應器 - 存在 迴圈會重覆,直至檢測到超音波信號。

請參考使用超音波感應器。
訊息傳遞 迴圈會重覆,直至收到指定訊息類型。

請參考訊息傳遞方塊。
提示和技巧
僅在迴圈序列結束時測試感應器。如果感應器資料在迴圈序列執行期間僅短暫地與指定輸入值匹配,則迴圈可能不會停止。
使用“計數”輸出
迴圈方塊開頭處的計數輸出告知迴圈序列已執行的次數。可以在迴圈內使用“計數”使迴圈序列在每次迴圈重覆時執行不同操作。

“計數”在首次執行迴圈期間爲 0,並在每次迴圈重覆時增加 1。
範例
此程式在 EV3 顯示畫面上顯示碰撞(壓下然後鬆開)觸碰感應器的次數計數。迴圈中的等待方塊使迴圈在重覆之前等待每次觸碰感應器碰撞,計數用於顯示方塊的“文字”輸入。
調整迴圈大小
迴圈方塊通常會自動擴展以便爲拖動到其中的新程式方塊騰出空間。還可以在需要時手動調整迴圈方塊大小。要調整迴圈大小,請選擇迴圈方塊,然後拖動外側周圍出現的大小調整手柄。
範例
此迴圈方塊正在調整大小,以便爲其中的第二個方塊序列騰出空間。
輸入與輸出
可用於迴圈方塊的輸入取決於所選模式。可以將輸入值直接輸入到方塊中。或者,可以通過資料線從其他程式方塊的輸出提供輸入值。
輸入類型備註
計數 數字在“計數”模式中要重覆迴圈的次數。
秒數 數字在“時間”模式中要重覆迴圈的秒數。
直到 邏輯在“邏輯”模式中,迴圈會在此輸入爲“是”時結束。
比較類型 數字具有預設值的感應器模式比較類型。
0:=(等於)
1:≠(不等於)
2:>(大於)
3:≥(大於或等於)
4:<(小於)
5:≤(小於或等於)
預設值 數字對於具有預設值的感應器模式,要將感應器資料與之進行比較的值。
(各種感應器類型的輸入)有關感應器資料的更多資訊,請參考各種感應器類型的幫助。
迴圈方塊的輸出是迴圈已重覆的次數。要使用該輸出,請使用資料線將其連接到迴圈內部或之後的程式方塊。
輸出類型備註
計數 數字迴圈已完成的次數。“計數”在首次執行迴圈期間爲 0。
迴圈
快速連結
  • 選擇迴圈模式
  • 無限制
  • 計數
  • 時間
  • 邏輯
  • 感應器模式
  • 使用“計數”輸出
  • 調整迴圈大小
  • 輸入與輸出
返回EV3軟體文件 »
招募夥伴|部落格|Scratch遊戲天堂|運算思維|FB粉絲團|Google商家|聯絡我們
大拇指教室 (北補7153號) 地址:台北市忠孝東路五段246號5樓(永春捷運站旁) 聯絡我們