運動#

介紹#

VEX AIM 編程機器人採用全向傳動系統,可前進、後退、左轉、右轉或以一定角度移動,並且能夠獨立轉向。運動模組控制機器人的移動和轉向方式、移動速度以及 x 軸和 y 軸位置的追蹤方式。

圓形羅盤刻度盤,刻度範圍為 0-315 度,環繞著深灰色顯示器和藏藍色螢幕。機器人的正面朝向羅盤刻度盤上的 0 度。

以下是所有模組的列表:

動作-移動和轉向機器人。

設定 — 調整移動和轉向速度。

位置 — 追蹤並修改機器人的位置。

數值 — 檢查移動狀態。

行動#

移動#

移动 指令块会使机器人以当前的移动速度 永远地向前、向后、向左或向右移动。机器人会一直移动,直到收到另一个动作指令,例如改变移动方向、转弯或停止。

向前移動堆疊塊#
移動 [前方 v]

參數

描述

方向

機器人移動方向:

  • 前進
  • 後退
  • 左轉
  • 右轉

例子

開始之後,向前走。#
當開始時
[Move forward]
移動 [前方 v]

以一定角度移動#

以特定角度移动指令块会使机器人以当前移动速度持续以特定角度移动。该角度相对于机器人的当前位置。机器人将持续移动,直到收到其他动作指令,例如改变移动方向、转弯或停止。

以 90 度角移動堆疊塊#
以 (90) 度移動

參數

描述

角度

機器人移動的角度,以度為單位。該值可以是介於 -360 到 360 之間的整數或小數。

範例

啟動時,向右移動 90 度,等待 1 秒鐘,然後向前移動 0 度,等待 1 秒鐘,並停止所有移動。#
當開始時
[Move right, then move forward and stop.]
以 (90) 度移動
等待 (1) 秒
以 (0) 度移動
等待 (1) 秒
停止所有動作

啟動時,沿對角線向右移動 45.33 度,等待 1 秒鐘,然後停止所有移動。#
當開始時
[Move diagonally to the right and stop.]
以 (45.33) 度移動
等待 (1) 秒
停止所有動作

移動#

移动至 指令块使用当前的移动速度 控制机器人向前、向后、向左或向右移动指定的距离。移动方向相对于机器人的当前位置。程序会等待机器人完成移动后,才会运行指令块中的下一个指令块。

推進 200 毫米堆疊塊#
移動 [前方 v] (200) [mm v] ▶

參數

描述

方向

機器人移動方向:

  • 前進
  • 後退
  • 左轉
  • 右轉

距離

機器人移動的距離。可以是整數或小數。

單元

距離單位:mm(毫米)或英吋。

不要等待

選擇箭頭(▶)展開程式碼區塊,顯示“不要等待”,這樣堆疊中的下一個程式碼區塊就會立即運作。

例子

啟動後,向前移動 200 毫米堆疊塊#
當開始時
[Move forward for 200 mm]
移動 [前方 v] (200) [mm v] ▶

以一定角度移動#

「以特定角度移動」堆疊塊使用當前的移動速度使機器人以特定角度移動特定距離。該角度相對於機器人的當前位置。程式會等待機器人完成移動後,才會執行堆疊中的下一個程式碼區塊。

以一定角度移動堆疊塊#
以 (45) 度移動 (200) [mm v] ▶

參數

描述

角度

機器人移動的角度,以度為單位。該值可以是介於 -360 到 360 之間的整數或小數。

距離

機器人移動的距離。可以是整數或小數。

單元

距離單位:mm(毫米)或英吋。

不要等待

選擇箭頭(▶)展開程式碼區塊,顯示“不要等待”,這樣堆疊中的下一個程式碼區塊就會立即運作。

範例

啟動時,向右以 90 度移動 50 毫米,然後向前以 0 度移動 100 毫米。#
當開始時
[Move right, then move forward.]
以 (90) 度移動 (50) [mm v] ▶
以 (0) 度移動 (100) [mm v] ▶

啟動時,以 0 度角向前行駛 100 毫米,同時所有 LED 指示燈閃爍紅色。#
當開始時
[Drive forward and blink all LEDs red.]
以 (0) 度移動 (100) [mm v] ◀ 且不等待
設定 [lightall v] LED 顏色為 [紅色 v]
等待 (0.5) 秒
設定 [lightall v] LED 顏色為 [關 v]
等待 (0.5) 秒
設定 [lightall v] LED 顏色為 [紅色 v]
等待 (0.5) 秒
設定 [lightall v] LED 顏色為 [關 v]
等待 (0.5) 秒

轉動#

turn 指令堆疊塊會使機器人以目前的轉彎速度持續向左或向右轉。機器人會一直轉彎,直到收到其他動作指令,例如移動或停止。

向右旋轉堆疊塊#
向 [右 v] 轉

參數

描述

方向

機器人轉向的方向:向左或向右。

例子

啟動後,向左轉,等待 1 秒鐘,然後停止所有動作。#
當開始時
[Turn left, then stop.]
向 [左 v] 轉
等待 (1) 秒
停止所有動作

轉向#

turn for 程式碼區塊會根據目前的轉彎速度使機器人向左或向右轉指定的角度。轉彎方向相對於機器人目前朝向。程式會等待機器人完成轉彎後,才會執行程式碼區塊中的下一個程式碼區塊。

向右轉 90 度堆疊塊#
向 [右 v] 轉 (90) 度 ▶

參數

描述

方向

機器人轉向的方向:向左或向右。

角度

機器人旋轉的角度數。可以是整數,也可以是小數。

不要等待

選擇箭頭(▶)展開程式碼區塊,顯示“不要等待”,這樣堆疊中的下一個程式碼區塊就會立即運作。

範例

啟動時,先向左轉90度,再向右轉180度。#
當開始時
[Turn left, then turn around to the right.]
向 [左 v] 轉 (90) 度 ▶
向 [右 v] 轉 (180) 度 ▶

啟動時,向右旋轉 180 度,同時所有 LED 燈閃爍藍色。#
當開始時
[Turn right and blink all LEDs blue.]
向 [右 v] 轉 (180) 度 ◀ 且不等待
設定 [lightall v] LED 顏色為 [藍色 v]
等待 (0.5) 秒
設定 [lightall v] LED 顏色為 [關 v]
等待 (0.5) 秒
設定 [lightall v] LED 顏色為 [藍色 v]
等待 (0.5) 秒
設定 [lightall v] LED 顏色為 [關 v]
等待 (0.5) 秒

轉向標題#

航向角是指機器人面向的方向,以度為單位。 轉向航向 程式碼區塊使用目前的轉向速度使機器人轉向指定的航向角。機器人將沿著最短路徑轉向以達到目標航向角。

機器人的初始航向角為0度。

該專案將等待機器人完成轉向後,才會運行堆疊中的下一個模組。

轉向90度堆疊塊#
轉向航向 (270) 度 ▶

參數

描述

標題

機器人應面向的方向,範圍從 -360 度到 360 度。

不要等待

選擇箭頭(▶)展開程式碼區塊,顯示“不要等待”,這樣堆疊中的下一個程式碼區塊就會立即運作。

範例

當開始時
[Turn to face each cardinal direction.]
轉向航向 (90) 度 ▶
等待 (2) 秒
轉向航向 (180) 度 ▶
等待 (2) 秒
轉向航向 (270) 度 ▶
等待 (2) 秒
轉向航向 (0) 度 ▶
等待 (2) 秒

啟動時,迅速旋轉 180 度,同時所有 LED 燈閃爍綠色。#
當開始時
[Turn around quickly and blink all LEDs green.]
轉向航向 (180) 度 ◀ 且不等待
設定 [lightall v] LED 顏色為 [綠色 v]
等待 (0.5) 秒
設定 [lightall v] LED 顏色為 [關 v]
等待 (0.5) 秒
設定 [lightall v] LED 顏色為 [綠色 v]
等待 (0.5) 秒
設定 [lightall v] LED 顏色為 [關 v]
等待 (0.5) 秒

使用控制器移動#

「使用控制器移動」堆疊模組可讓您使用單搖桿控制器來驅動機器人。除非放置在循環(例如無限循環)中,否則該模組只會讀取一次控制器輸入。如果循環停止且沒有其他模組指示機器人移動,則機器人將繼續沿著您最後一次推動搖桿的方向移動。

以控制器移動

參數

描述

此程式碼區塊沒有參數。

例子

當開始時
[Drive with the controller for five seconds.]
重設計時器
當 <(計時器(秒)) [math_less_than v] [5]>
以控制器移動
結束
停止所有動作

停止一切動作#

停止所有運動堆疊塊會停止機器人的所有運動。

停止所有移動堆疊方塊#
停止所有動作

參數

描述

此程式碼區塊沒有參數。

例子

啟動後,向右轉,等待 1 秒鐘,然後停止所有動作。#
當開始時
[Turn right, then stop.]
向 [右 v] 轉
等待 (1) 秒
停止所有動作

設定#

設定移動速度#

設定移動速度 代碼塊告訴機器人移動的速度。百分比越高,機器人移動速度越快;百分比越低,機器人移動速度越慢。

每個專案開始時,機器人預設以 50% 的速度移動。

100% 的移動速度相當於每秒 200 毫米(mmps)。

將移動速度設定為 50% 堆疊格擋#
設定移動速度為 (50)%

參數

描述

速度

移動速度從 0% 到 100%。

例子

當開始時
[Move forward at the default velocity.]
設定移動速度為 (50)%
以 (0) 度移動 (100) [mm v] ▶
等待 (1) 秒
[Move slower.]
設定移動速度為 (20)%
以 (0) 度移動 (100) [mm v] ▶
等待 (1) 秒
[Move faster.]
設定移動速度為 (100)%
以 (0) 度移動 (100) [mm v] ▶
等待 (1) 秒

設定轉彎速度#

設定轉彎速度 代碼塊告訴機器人轉彎的速度。百分比越高,機器人轉彎越快;百分比越低,機器人轉彎越慢。

每個專案開始時,機器人預設以 50% 的速度旋轉。

100% 的轉彎速度相當於每秒 150 度 \(dps\)。

將轉彎速度設定為 50% 堆疊方塊#
設定轉向速度為 (50)%

參數

描述

速度

轉彎速度從 0% 到 100%。

例子

當開始時
[Turn around at default velocity.]
設定轉向速度為 (50)%
向 [右 v] 轉 (180) 度 ▶
等待 (1) 秒
[Turn around slower.]
設定轉向速度為 (20)%
向 [右 v] 轉 (180) 度 ▶
等待 (1) 秒
[Turn around faster.]
設定轉向速度為 (100)%
向 [右 v] 轉 (180) 度 ▶
等待 (1) 秒

位置#

位置#

位置報告模組報告機器人的當前 x 或 y 座標。

在專案開始時,機器人的 x 和 y 位置設定為 0。位置值隨著機器人的移動而改變,可以使用 設定機器人位置 區塊進行設定。

x 位置在毫米報告區塊中#
[x v] 位置([mm v])

參數

描述

協調

要報告的座標軸:x 或 y。

單元

位置單位:mm(毫米)或英吋。

例子

啟動時,向前移動 200 毫米,重設位置,以 45 度角斜向移動 200 毫米,並在螢幕上列印更新後的 X 和 Y 座標。#
當開始時
以 (0) 度移動 (200) [mm v] ▶
[Move forward and print the new coordinate and heading.]
設定機器人位置 x: [0] y: [0]
以 (45) 度移動 (200) [mm v] ▶
在螢幕上列印 ([x v] 位置([mm v])) ▶
將游標移至螢幕下一列
在螢幕上列印 ([y v] 位置([mm v])) ▶

設定機器人位置#

設定機器人位置 堆疊區塊將機器人的當前 x 和 y 位置變更為新值。

例如,如果機器人偏離了起始位置,將 x 和 y 都設為 0,則機器人的目前位置將變為新的 (0, 0) 位置。然後,機器人可以根據這個新值追蹤未來的位置。

設定位置堆疊塊#
設定機器人位置 x: [0] y: [0]

參數

描述

x

要設定的機器人 x 軸位置值,單位為毫米。

是

要設定的機器人 y 軸位置值,單位為毫米。

例子

當開始時
[Reset the robot's position after moving.]
移動 [前方 v] [60] [mm v] ▶
設定機器人位置 x: [0] y: [0]
在螢幕上列印 ([y v] 位置([mm v])) ▶

價值觀#

行動活躍#

move active 布林模組用於報告機器人是否正在移動。這可以根據機器人的移動狀態來控制其他行為的執行時機。

  • 正確 — 機器人正在移動。

  • 錯誤 — 機器人沒有移動。

此模組可與具有 and don’t wait 參數的運動模組配合使用。

移動活躍記者塊#
<移動中?>

參數

描述

此程式碼區塊沒有參數。

例子

啟動後,機器人向前移動 200 毫米,同時所有 LED 指示燈呈紅色閃爍。機器人移動過程中,LED 指示燈每 0.5 秒亮起和熄滅一次,移動停止後保持熄滅狀態。#
當開始時
[Blink all of the LEDs when the robot is moving.]
以 (0) 度移動 (200) [mm v] ◀ 且不等待
當 <移動中?>
設定 [lightall v] LED 顏色為 [紅色 v]
等待 (0.5) 秒
設定 [lightall v] LED 顏色為 [關 v]
等待 (0.5) 秒
結束
設定 [lightall v] LED 顏色為 [關 v]

啟用設定#

turn active 布林模組用於報告機器人是否正在轉向。這可以根據機器人的運動狀態來控制其他行為的執行時機。

  • 正確-機器人正在轉向。

  • 錯誤 — 機器人沒有轉彎。

此模組可與具有 and don’t wait 參數的運動模組配合使用。

啟用活躍記者區塊#
<轉向中?>

參數

描述

此程式碼區塊沒有參數。

例子

啟動後,車輛向右旋轉180度,同時所有LED燈閃爍紅色。旋轉過程中,LED燈每0.5秒閃爍一次,旋轉結束後熄滅。#
當開始時
[Blink all of the LEDs while the robot is turning.]
向 [右 v] 轉 (180) 度 ◀ 且不等待
當 <轉向中?>
設定 [lightall v] LED 顏色為 [紅色 v]
等待 (0.5) 秒
設定 [lightall v] LED 顏色為 [關 v]
等待 (0.5) 秒
結束
設定 [lightall v] LED 顏色為 [關 v]

停止#

stopped 布林模組用於報告機器人是否處於靜止狀態(既不移動也不轉向)。這可用於根據機器人的運動狀態來控制其他行為的執行時機。

  • 正確 — 機器人沒有移動或轉彎。

  • 錯誤 — 機器人正在移動或轉彎。

記者已停止阻撓#
<已停止?>

參數

描述

此程式碼區塊沒有參數。

例子

啟動後,機器人向前移動 200 毫米,同時進行燈光秀表演,然後向右旋轉 180 度,燈光秀仍在繼續。機器人移動或旋轉期間,LED 燈每 0.5 秒在綠色和紫色之間交替閃爍。機器人停止後,燈光秀結束,LED 燈熄滅。#
定義 light show
[Flash LEDs while the robot is moving or turning.]
重複直到 <已停止?>
設定 [lightall v] LED 顏色為 [綠色 v]
等待 (0.5) 秒
設定 [lightall v] LED 顏色為 [紫色 v]
等待 (0.5) 秒
結束


當開始時
[Blink all the LEDs while the robot is moving or turning.]
以 (0) 度移動 (200) [mm v] ◀ 且不等待
light show
向 [右 v] 轉 (180) 度 ◀ 且不等待
light show