機器人專用模組#

介紹#

英雄機器人 Huey 包含兩種馬達選項、IQ AI 視覺感測器、光學感測器和觸控 LED。

所有標準 VEXcode VR 模組可在 IQ 25-26 Mix & Match Playground 中使用。

以下是所有可用的機器人專用模組清單:

驅動系統-控制機器人的移動和轉向。

  • 操作

    • drive — 使機器人無限向前或向後移動。

    • 驅動 — 使機器人向前或向後移動指定的距離。

    • turn — 使機器人永遠向左或向右轉。

    • turn for — 使機器人向左或向右旋轉指定的角度數。

    • 轉向航向 — 將機器人轉向面向特定航向。

    • 轉向旋轉 — 將機器人轉向指定的旋轉方向。

    • 停止駕駛 — 停止機器人的移動。

  • 設定

  • 價值觀

運動控制-移動並追蹤機器人的馬達。

AI視覺-使用IQ AI視覺感測器捕捉和分析物體。

感知-利用機器人的各種感測器。

本頁範例使用 Playground 的預設起始位置。

傳動系統#

動力系統控制VR機器人的駕駛和轉向。動力系統可以前進或後退、左轉或右轉、轉向特定航向並追蹤其旋轉。

行動#

駕駛#

驅動 模組使機器人能夠無限向前或向後移動。機器人將持續移動,直到收到其他指令,例如轉向或停止。

行駛 [前方 v]

參數

描述

方向

機器人移動方向:前進或後退。

例子

當開始時 :: hat events
[Drive forward, then stop.]
行駛 [前方 v]
等待 (2) 秒
停止行駛

驅動#

驅動堆疊模組控制機器人前進或後退一段特定距離。程式會等待機器人完成移動後,才會執行堆疊中的下一個模組。

行駛 [前方 v] (200) [mm v] ▶

參數

描述

方向

機器人移動方向:前進或後退。

距離

機器人行駛的距離。可以是整數,也可以是小數。

單元

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

不要等待

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

例子

當開始時 :: hat events
[Drive forward.]
行駛 [前方 v] (500) [mm v] ▶

轉動#

轉向 積木塊會讓機器人無限向左或向右轉向。機器人會一直轉向,直到收到其他動作指令,例如行駛或停止。

向 [右 v] 轉

參數

描述

方向

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

例子

當開始時 :: hat events
[Turn right, then stop.]
向 [右 v] 轉
等待 (2) 秒
停止行駛

轉向#

「轉向」堆疊模組會使機器人向左或向右旋轉指定的角度。旋轉角度是相對於機器人的當前位置而言的。程式會等待機器人完成旋轉後,才會執行堆疊中的下一個模組。

向 [右 v] 轉 (90) 度 ▶

參數

描述

方向

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

角度

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

不要等待

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

例子

當開始時 :: hat events
[Turn left, then turn around to the right.]
向 [左 v] 轉 (90) 度 ▶
向 [右 v] 轉 (180) 度 ▶

轉向標題#

航向角是指機器人面向的方向,以度為單位。 轉向航向角 代碼塊可以將機器人轉向 -359 度到 359 度之間的特定航向角。機器人會選擇到達目標航向角的最短路徑。

起始航向為0度。

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

轉向航向 (90) 度 ▶

參數

描述

標題

機器人應面向的航向,範圍從 -359 度到 359 度。

不要等待

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

例子

當開始時 :: hat events
[Turn to face the cardinal directions.]
轉向航向 (90) 度 ▶
等待 (2) 秒
轉向航向 (180) 度 ▶
等待 (2) 秒
轉向航向 (270) 度 ▶
等待 (2) 秒
轉向航向 (0) 度 ▶
等待 (2) 秒

轉向旋轉#

旋轉到旋轉 堆疊塊使機器人旋轉到特定角度。

旋轉角度是指機器人轉動的幅度,以度為單位。在專案開始時,旋轉角度值設定為 0 度。也可以使用 set drive rotation 程式碼區塊來設定旋轉角度。

旋轉角度是絕對值。這意味著轉彎方向取決於機器人目前的旋轉角度。向右轉會增加旋轉角度,向左轉彎會減少旋轉角度。

例如,如果機器人從0度開始,你將其旋轉720度,它會向右轉兩次。如果你再將其旋轉360度,它會向左轉一次,因為360小於720。

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

轉至旋轉 (90) 度 ▶

參數

描述

旋轉

機器人將旋轉到的角度值。該值可以是整數或小數。

不要等待

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

例子

當開始時 :: hat events
[Turn left, then spin in a circle clockwise and face right.]
轉至旋轉 (-90) 度 ▶
等待 (2) 秒
轉至旋轉 (450) 度 ▶

停止駕駛#

停止驅動堆疊塊會停止機器人的移動。

停止行駛

參數

描述

此程式碼區塊沒有參數。

例子

當開始時 :: hat events
[Drive forward, then stop.]
行駛 [前方 v]
等待 [4] 秒
停止行駛

設定#

設定驅動速度#

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

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

注意:速度越高,機器人行駛速度越快,但精度可能越低;速度越低,機器人行駛速度越慢,但精度可能越高。

設定行駛速度為 (50) [% v]

參數

描述

速度

行駛速度,範圍從 0% 到 100%。

單元

速度單位:%

例子

當開始時 :: hat events
[Drive forward at the default velocity.]
行駛 [前方 v] (100) [mm v] ▶
等待 (1) 秒
[Move slower.]
設定行駛速度為 (20) [% v]
行駛 [前方 v] (100) [mm v] ▶
等待 (1) 秒
[Move faster.]
設定行駛速度為 (100) [% v]
行駛 [前方 v] (100) [mm v] ▶
等待 (1) 秒

設定轉彎速度#

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

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

注意:速度越高,機器人轉彎越快,但精度可能越低;速度越低,機器人轉彎越慢,但精度可能越高。

設定轉向速度為 (50) [% v]

參數

描述

速度

轉彎速度從 0% 到 100%。

單元

速度單位:%

例子

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

設定驅動航向#

航向角是指機器人朝向的方向,以度為單位。 設定驅動航向堆疊區塊會將機器人的目前航向角變更為新的航向角值。

例如,如果機器人轉向右側,將航向設定為 0 度,則該右側位置將成為新的 0 度航向。然後,機器人可以根據新的航向轉向其他位置。

設定行駛航向為 (0) 度

參數

描述

標題

要設定的機器人航向值(以度為單位)。

例子

當開始時 :: hat events
[Turn to the left.]
設定行駛航向為 (90) 度
轉向航向 (0) 度 ▶

設定驅動旋轉#

旋轉角度是指機器人轉動的程度,以度為單位。在專案開始時,旋轉角度值設定為 0 度。 設定驅動旋轉角度 程式碼區塊會將機器人的當前旋轉角度變更為新值。

例如,如果機器人向右轉了兩圈,它的旋轉角度將為 720 度。將旋轉角度設為 0 度會將旋轉角度從 720 度重設為 0 度。然後,機器人可以根據這個新的旋轉角度進行旋轉。

設定行駛旋轉為 (0) 度

參數

描述

旋轉

機器人旋轉角度的設定值,單位為度數。可以是整數或小數。

例子

當開始時 :: hat events
[Spin counterclockwise two times.]
設定行駛旋轉為 (720) 度
轉至旋轉 (0) 度 ▶

設定驅動超時#

設定驅動超時 程式碼區塊用於設定機器人嘗試完成一次動作的秒數。如果機器人無法在規定時間內完成,它將停止嘗試並執行程式碼區塊中的下一個。這樣可以防止機器人卡在某個動作上。

設定行駛超時為 (1) 秒

參數

描述

時間

機器人嘗試完成一次動作的秒數。該值可以是整數或小數。

例子

啟動時,將行駛時間限制為 1 秒,然後旋轉 90 度。#
當開始時 :: hat events
[Drive forward for 1 second, then turn.]
設定行駛超時為 (1) 秒
行駛 [前方 v] (25) [英吋 v] ▶
向 [右 v] 轉 (90) 度 ▶

價值觀#

駕駛已完成#

「驅動完成」布林模組用於報告機器人是否已停止移動。這可用於根據機器人的移動狀態來控制其他行為的執行時間。

  • 正確 — 機器人已停止移動。

  • 錯誤 — 機器人仍在移動。

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

<行駛完成?>

參數

描述

此程式碼區塊沒有參數。

例子

當開始時 :: hat events
[Start spinning when the drive is complete.]
行駛 [前方 v] (200) [mm v] ◀ 且不等待
等待直到 <行駛完成?>
向 [右 v] 轉 (360) 度 ▶

車輛正在行駛#

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

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

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

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

<行駛中?>

參數

描述

此程式碼區塊沒有參數。

例子

當開始時 :: hat events
[Print that the robot is moving while it is still driving.]
行駛 [前方 v] (200) [mm v] ◀ 且不等待
當 <行駛中?>
列印 [Still Moving...] ▶
等待 (0.1) 秒
清除螢幕
結束
列印 [Done!] ▶

行駛方向#

航向角是指機器人朝向的方向,以度為單位。 驅動航向報告模組會報告 0 到 359.99 度的航向角。

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

(行駛航向(度))

參數

描述

此程式碼區塊沒有參數。

例子

當開始時 :: hat events
[Display the heading after turning.]
向 [右 v] 轉 (450) 度 ▶
在螢幕上列印 (行駛航向(度)) ◀ 並將游標移至下一列

驅動旋轉#

旋轉角度是指機器人轉動的程度,以度為單位。專案開始時,旋轉角度值設定為 0 度。 「驅動旋轉」報告模組會報告機器人目前的旋轉角度。

向右轉會增加旋轉角度,向左轉會減少旋轉角度。例如,向右轉兩圈,旋轉角度將達到 720 度。

(行駛旋轉(度))

參數

描述

此程式碼區塊沒有參數。

例子

當開始時 :: hat events
[Display the rotation after turning.]
向 [右 v] 轉 (450) 度 ▶
在螢幕上列印 (行駛旋轉(度)) ◀ 並將游標移至下一列

驅動速度#

驅動速度報告模組會報告機器人的行駛速度。

(行駛速度([% v]))

參數

描述

單元

速度單位:%

例子

當開始時 :: hat events
[Display the velocity after driving.]
行駛 [前方 v] (200) [mm v] ▶
在螢幕上列印 (行駛速度([% v])) ◀ 並將游標移至下一列

運動#

休伊利用爪式馬達來打開和關閉爪子,以便抓取或放下銷釘和梁。升降馬達則負責升降銷釘或梁,使它們能夠相互連接。

每個馬達都有自己的方向選項。方向名稱描述了該馬達在Huey上的運動方式。

行動#

旋轉馬達#

旋轉馬達 模組可以使馬達沿著兩個方向之一持續旋轉。馬達將持續旋轉,直到收到其他指令,例如改變旋轉方向或停止。

旋轉 [ClawMotor v] [打開 v]

參數

描述

引擎

旋轉馬達:爪式馬達或升降馬達。

方向

馬達旋轉方向:

  • 爪形馬達 — 開啟 或 關閉
  • 升降馬達 — 向上 或 向下

例子

當開始時
[Place a pin atop another pin.]
旋轉 [LiftMotor v] [上升 v] [600] [度 v] ▶
行駛 [前方 v] (140) [mm v] ▶
旋轉 [ClawMotor v] [打開 v]

用於旋轉馬達#

「旋轉馬達」堆疊模組會使馬達旋轉一段特定距離。旋轉距離是相對於馬達目前位置的。程式會等待馬達旋轉完畢後,才會運作堆疊中的下一個模組。

旋轉 [ClawMotor v] [打開 v] (90) [度 v] ▶

參數

描述

引擎

旋轉馬達:爪式馬達或升降馬達。

方向

馬達旋轉方向:

  • 爪形馬達 — 開啟 或 關閉
  • 升降馬達 — 向上 或 向下

距離

馬達旋轉的距離。 角度使用整數。 圈數可以使用整數或小數。

單元

距離單位:度或圈。

不要等待

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

例子

當開始時
[Place a pin atop another pin.]
旋轉 [LiftMotor v] [上升 v] [600] [度 v] ▶
行駛 [前方 v] (140) [mm v] ▶
旋轉 [ClawMotor v] [打開 v]

旋轉馬達定位#

旋轉馬達定位 堆疊模組使馬達旋轉到特定位置。

馬達的位置是指它旋轉了多少度,以度或圈數來衡量。一圈等於360度。在專案開始時,馬達位置設定為0度。也可以使用set motor position代碼塊來設定馬達位置。

位置值是絕對值。這意味著旋轉方向取決於馬達的當前位置。

例如,如果馬達從0度開始旋轉到720度,它將正轉兩圈。如果它接著旋轉到360度,它將反轉一圈,因為360小於720。

旋轉 [ClawMotor v] 至位置 (90) [度 v] ▶

參數

描述

引擎

旋轉馬達:爪式馬達或升降馬達。

位置

馬達旋轉到的位置值。 角度使用整數。 圈數可以使用整數或小數。

單元

位置單位:度或圈。

不要等待

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

例子

當開始時
[Place a pin atop another pin.]
旋轉 [LiftMotor v] 至位置 [-2] [圈 v] ▶
行駛 [前方 v] (140) [mm v] ▶
旋轉 [ClawMotor v] [打開 v]

停止馬達#

停止馬達 堆疊塊停止選定的馬達。

停止 [ClawMotor v]

參數

描述

引擎

要停止的馬達:爪式馬達或升降馬達。

例子

當開始時
[Raise the lift for 2 seconds, then stop.]
旋轉 [LiftMotor v] [上升 v]
等待 (2) 秒
停止 [LiftMotor v]

設定#

設定馬達速度#

“設定馬達轉速”模組用於控制馬達的轉速。百分比越高,馬達轉速越快;百分比越低,馬達轉速越慢。

每個項目開始時,每個馬達預設以 50% 的速度旋轉。

注意:更高的速度會使馬達轉速更快,但精度可能會降低。更低的速度會使馬達轉速更慢,但精度可能會更高。

設定 [ClawMotor v] 速度為 (50) [% v]

參數

描述

引擎

用於設定下列馬達速度的馬達:爪式馬達或升降馬達。

速度

馬達旋轉的速度。 百分比使用0%到100%之間的整數。

單元

速度單位:%。

例子

當開始時
[Raise the lift at full speed.]
設定 [LiftMotor v] 速度為 [100] [% v]
旋轉 [LiftMotor v] [上升 v] [600] [度 v] ▶

設定馬達超時#

設定馬達逾時 代碼區塊用於設定馬達嘗試完成一次動作的超時時間。如果馬達無法在規定時間內完成,它將停止嘗試並執行程式碼區塊堆疊中的下一個程式碼區塊。這樣可以防止馬達卡在某個運動中。

設定 [ClawMotor v] 超時為 (1) 秒

參數

描述

引擎

設定下列馬達超時時間:爪式馬達或升降馬達。

時間

馬達嘗試完成一次運動的秒數。該值可以是整數或小數。

例子

當開始時
設定 [LiftMotor v] 超時為 [2] 秒
旋轉 [LiftMotor v] [上升 v] [5] [圈 v] ▶

位置#

馬達位置#

馬達的位置是指它旋轉的距離,以度或圈數來衡量。一圈等於360度。 馬達位置報告模組會報告馬達的目前位置。

專案開始時,馬達位置設定為 0 度。如果馬達正向旋轉一周,則位置為 360 度或 1 圈。如果馬達反向旋轉,則位置為負值。

([ClawMotor v] 位置([度 v]))

參數

描述

引擎

用於報告以下設備位置的馬達:爪式馬達或升降馬達。

單元

報告馬達位置的單位:度或圈。

例子

當開始時
[Raise the lift until it reaches 600 degrees.]
旋轉 [LiftMotor v] [上升 v]
等待直到 <([LiftMotor v] 位置([度 v])) [math_less_than v] [-600]>
停止 [LiftMotor v]

設定馬達位置#

馬達的位置是指它旋轉的距離,以度或圈數來衡量。一圈等於360度。 設定馬達位置堆疊塊會將馬達的目前位置變更為新值。

例如,如果馬達旋轉了 180 度,將位置設為 0 度會將該位置從 180 度重設為 0 度。然後,馬達可以根據這個新值旋轉到其他位置。

設定 [ClawMotor v] 位置為 (0) [度 v]

參數

描述

引擎

用於設定以下位置的馬達:爪式馬達或升降馬達。

位置

要設定的馬達位置值。 角度使用整數。 圈數可以使用整數或小數。

單元

位置單位:度或圈。

例子

當開始時
設定 [LiftMotor v] 位置為 [100] [度 v]
旋轉 [LiftMotor v] 至位置 [-500] [度 v] ▶

價值觀#

馬達已完成#

「馬達已完成」布林模組用於報告馬達是否已停止運轉。這可用於根據馬達的運轉狀態來控制其他行為的執行時間。

  • 正確 — 馬達已停止運轉。

  • 錯誤 — 馬達仍在運轉。

此模組與以下具有and don’t wait參數的運動模組配合使用:spin motor for 和 spin motor to position。

<[ClawMotor v] 完成?>

參數

描述

引擎

報告其是否已完成移動的馬達:爪式馬達或升降馬達。

例子

當開始時
[Flash the Touch LED while the lift is moving.]
旋轉 [LiftMotor v] [上升 v] [600] [度 v] ◀ 且不等待
等待 [0.1] 秒
重複直到 <[LiftMotor v] 完成?>
設定 [TouchLED v] 顏色為 [紅色 v]
等待 [0.5] 秒
設定 [TouchLED v] 顏色為 [無 v]
等待 [0.5] 秒
結束

馬達正在旋轉#

「馬達是否旋轉」布林模組用於報告馬達是否正在旋轉。這可以根據馬達的運動狀態來控制其他行為的執行時間。

  • 正確-馬達正在旋轉。

  • 錯誤 — 馬達沒有轉動。

此模組與以下具有and don’t wait參數的運動模組配合使用:spin motor for 和 spin motor to position。

<[ClawMotor v] 旋轉中?>

參數

描述

引擎

若要報告其是否旋轉的馬達:爪式馬達或升降馬達。

例子

當開始時
[Flash the Touch LED while the lift is spinning.]
旋轉 [LiftMotor v] [上升 v] [600] [度 v] ◀ 且不等待
等待 [0.1] 秒
重複直到 <非 <[LiftMotor v] 旋轉中?>>
設定 [TouchLED v] 顏色為 [紅色 v]
等待 [0.5] 秒
設定 [TouchLED v] 顏色為 [無 v]
等待 [0.5] 秒
結束

馬達速度#

馬達速度報告模組以百分比形式報告馬達的旋轉速度,範圍從 -100% 到 100%。

([ClawMotor v] 速度([% v]) :: custom-motion)

參數

描述

引擎

若要報告下列馬達速度的馬達:爪式馬達或升降馬達。

單元

馬達速度的報告單位:%。

例子

當開始時
設定 [LiftMotor v] 速度為 [100] [% v]
旋轉 [LiftMotor v] [上升 v] [600] [度 v] ◀ 且不等待
等待 [0.5] 秒
列印 ([LiftMotor v] 速度([% v]) :: custom-motion) ▶

人工智慧視覺#

行動#

取得對象數據#

取得物件資料 模組將來自 IQ AI 視覺感測器幀的資料過濾為單一簽章—感測器可以識別的事物的保存描述,例如場上的遊戲元素。

The dataset stores objects ordered from largest to smallest by width, starting at index 0. Each object’s properties can be accessed using the object property block. An empty dataset is returned if no matching objects are detected.

取得物件資料堆疊塊。#
從 [AIVision v] 取得 [AI Classifications v] 資料

範圍

描述

簽名

Filters the dataset to only include data of the given signature. Available signatures are:

  • AI Classifications - Detects Beams and Blue, Red, and Orange Pins.

例子

當開始時
[Place the Red Pin on the top left Blue Pin.]
旋轉 [LiftMotor v] [上升 v] [600] [度 v] ▶
向 [左 v] 轉 [38] 度 ▶
重複直到 <([AIVision v] 物件 [寬度 v]) [math_greater_than v] [48]>
從 [AIVision v] 取得 [AI Classifications v] 資料
行駛 [前方 v]
結束
行駛 [前方 v] [160] [mm v] ▶
旋轉 [ClawMotor v] [打開 v]

設定#

設定對象項#

設定物件項目 區塊設定要使用資料集中的哪個項目。

設定物件項堆疊塊。#
設定 [AIVision v] 物件項目為 [1]

參數

描述

物品

要使用的資料集中的項目編號。

例子

當開始時
[Find the object index of the nearest Orange Pin.]
設定 [object_counter v] 為 [1]
從 [AIVision v] 取得 [AI Classifications v] 資料
重複 ([AIVision v] 物件數量) 次
設定 [AIVision v] 物件項目為 (object_counter)
如果 <[AIVision v] object is [Orange Pin v]> 則
列印 (連接 [Nearest Orange Pin is ] (object_counter)) ▶
否則
將 [object_counter v] 改變 [1]
結束
結束

價值觀#

對象存在#

物件存在 程式碼區塊傳回布林值,指示是否在資料集中偵測到任何物件。

  • 正確 - 資料集包含偵測到的物件。

  • 錯誤 - 該資料集不包含任何偵測到的物件。

AI Vision 物件存在布爾塊。#
<[AIVision v] 物件存在?>

參數

描述

此程式碼區塊沒有參數。

例子

當開始時
[Raise the Lift until a Pin or Beam is detected.]
重複直到 <[AIVision v] 物件存在?>
從 [AIVision v] 取得 [AI Classifications v] 資料
旋轉 [LiftMotor v] [上升 v]
結束
停止 [LiftMotor v]

對像是#

object is 區塊傳回布林值,指示偵測到的物件是否與特定分類相符。

  • 正確 - 資料集中的項是特定物件。

  • 錯誤 - 資料集中的項不是特定物件。

該物件是布爾塊。#
<[AIVision v] 物件為 [Beam v]?>

範圍

描述

目的

將該物品與哪個物體進行比較:

  • 梁
  • 藍色圖釘
  • 紅色圖釘
  • 橙色圖釘

例子

當開始時
[Find the object index of the nearest Orange Pin.]
設定 [object_counter v] 為 [1]
從 [AIVision v] 取得 [AI Classifications v] 資料
重複 ([AIVision v] 物件數量) 次
設定 [AIVision v] 物件項目為 (object_counter)
如果 <[AIVision v] object is [Orange Pin v]> 則
列印 (連接 [Nearest Orange Pin is ] (object_counter)) ▶
否則
將 [object_counter v] 改變 [1]
結束
結束

對象計數#

物件計數 模組傳回資料集中偵測到的物件數量,以整數形式表示。

對象計數報告器模組。#
([AIVision v] 物件數量)

參數

描述

此程式碼區塊沒有參數。

例子

當開始時
從 [AIVision v] 取得 [AI Classifications v] 資料
列印 ([AIVision v] 物件數量) ▶

物件屬性#

使用 get object data 區塊儲存的每個物件都包含六個屬性。

AI視覺物件屬性報告器模組。#
([AIVision v] 物件 [寬度 v])

所有屬性值均描述了在呼叫「取得物件資料」模組時,IQ AI 視覺感測器視野中偵測到的物件的位置和大小。這些值以像素為單位,基於感測器的 320 x 240 像素解析度。

範圍

描述

財產

要使用检测到的对象的哪个属性:

寬度#

width 屬性以像素為單位報告偵測到的物件寬度,數值為 1 到 320 之間的整數。

已選擇寬度的 AI Vision 物件屬性報告區塊。#
([AIVision v] 物件 [寬度 v])
高度#

height 屬性以像素為單位報告偵測到的物件的高度,數值為 1 到 240 之間的整數。

已選擇高度的 AI Vision 物件屬性報告區塊。#
([AIVision v] 物件 [高度 v])
centerX#

centerX 屬性以像素為單位報告偵測到的物件中心的 x 座標,數值為 0 到 320 之間的整數。

選取 centerX 的 AI Vision 物件屬性報告器模組。#
([AIVision v] 物件 [centerX v])
中心Y#

centerY 屬性以像素為單位報告偵測到的物件中心的 y 座標,數值為 0 到 240 之間的整數。

選取 centerY 的 AI Vision 物件屬性報告器模組。#
([AIVision v] 物件 [centerY v])
originX#

originX 屬性以像素為單位報告偵測到的物件邊界框左上角的 x 座標,數值為 0 到 320 之間的整數。

已選擇 originX 的 AI Vision 物件屬性報告器區塊。#
([AIVision v] 物件 [originX v])
originY#

originY 屬性以像素為單位報告偵測到的物件邊界框左上角的 y 座標,數值為 0 到 240 之間的整數。

已選擇 originY 的 AI Vision 物件屬性報告器模組。#
([AIVision v] 物件 [originY v])

感測#

光學的#

光學儀器發現了一個物體#

光學感測器偵測到物體布林模組報告光學感測器是否在範圍內偵測到物體。

  • 正確 — 光學感測器偵測到了物體。

  • 錯誤 — 光學感測器未偵測到物體。

<[Optical v] 偵測到物件?>

參數

描述

此程式碼區塊沒有參數。

例子

當開始時
[Place a pin atop another pin.]
旋轉 [LiftMotor v] [上升 v] [600] [度 v] ▶
行駛 [前方 v] (140) [mm v] ▶
旋轉 [ClawMotor v] [打開 v]
等待直到 <非 <[Optical v] 偵測到物件?>>
旋轉 [LiftMotor v] 至位置 [0] [度 v] ▶

光學檢測顏色#

光學檢測顏色布林模組根據偵測到的色調值報告光學感測器是否偵測到指定的顏色。

  • 正確 – 感測器偵測到了指定的顏色。

  • 錯誤 – 感測器未偵測到指定顏色。

注意: 光學感測器正在尋找與指定顏色相符的色調範圍。有關檢測特定色調範圍的信息,請參閱光學色調模組。

<[Optical v] 偵測到 [紅色 v]?>

參數

描述

顏色

Which color to look for:

  • red – A detected hue value between 340° - 20°.
  • green – A detected hue value between 80° - 140°.
  • blue – A detected hue value between 200° - 240°.
  • yellow – A detected hue value between 40° - 60°.
  • orange – A detected hue value between 20° - 40°.
  • purple – A detected hue value between 240° - 280°.

例子

當開始時
[Place a pin atop another pin.]
旋轉 [LiftMotor v] [上升 v] [600] [度 v] ▶
行駛 [前方 v] (140) [mm v] ▶
旋轉 [ClawMotor v] [打開 v]
等待直到 <[Optical v] 偵測到 [紅色 v]?>
旋轉 [LiftMotor v] 至位置 [0] [度 v] ▶

光學亮度#

光學亮度報告模組以百分比(0% 到 100%)報告有多少光反射迴光學感測器。

百分比越高,表示反射迴光學感測器的光線越多;百分比越低,表示反射回的光線越少。

([Optical v] 亮度(%))

參數

描述

此程式碼區塊沒有參數。

光學色調#

光學色調模組傳迴光學感測器偵測到的顏色的色調值。

色相是用色輪上的數字來描述顏色的一種方法。

一個圓形色輪,顯示完整的色調光譜,邊緣標有度數,從頂部的 0 度到 360 度,以 30 度為增量遞增。

([Optical v] 色相(度))

參數

描述

此程式碼區塊沒有參數。

光學#

當光學感測器偵測到或遺失物體時,when Optical 模組會運作所連接的模組堆疊。

當 [Optical v] [偵測到 v] 物件時

參數

描述

狀態

當附加的積木堆疊運行時:detects 會在偵測到未偵測到的物件時執行,而 loses 會在偵測到的物件不再被偵測到時運行。

例子

當 [Optical v] [遺失 v] 物件時
[Lower the lift when the object is no longer in the claw.]
旋轉 [LiftMotor v] 至位置 [0] [度 v] ▶

觸摸 LED#

設定觸控LED顏色#

設定觸控LED顏色模組用於設定觸控LED的顏色。

設定 [TouchLED v] 顏色為 [無 v]

參數

描述

顏色

設定 LED 燈顏色:

  • 無 - 關閉觸控 LED 燈
  • 紅色
  • 綠色
  • 藍色
  • 白色
  • 黃色
  • 橘色
  • 紫色
  • 紅紫色
  • 紫色
  • 藍紫色
  • 藍綠色
  • 黃綠色26 紫色
  • 藍紫色
  • 藍綠色

例子

當開始時
[Light the Touch LED while placing a pin.]
設定 [TouchLED v] 顏色為 [紅色 v]
旋轉 [LiftMotor v] [上升 v] [600] [度 v] ▶
行駛 [前方 v] (140) [mm v] ▶
旋轉 [ClawMotor v] [打開 v]
設定 [TouchLED v] 顏色為 [無 v]