ロボット専用ブロック#
導入#
ヒーローボット「フロップ」には、インテークモーター、アームモーター、およびIQ AIビジョンセンサーが搭載されています。
すべての標準VEXcode VRブロックは、IQ 26-27レベルアッププレイグラウンドで使用できます。
以下は、利用可能なロボット専用ブロックの一覧です。
動作 – ロボットのモーターを動かし、追跡する。
アクション
スピンモーター – モーターをその方向のいずれかに永久に回転させます。
spin motor for – モーターを特定の角度または回転数だけ回転させます。
モーターを所定の位置に回転 – モーターを特定の位置まで回転させます。
モーター停止 – モーターの回転を停止します。
設定
モーター速度を設定 – モーターに回転速度を指示します。
モータータイムアウトを設定 – モーターが動作を完了しようとする時間を設定します。
位置
価値観
モーター完了 – モーターが動作を完了したかどうかを報告します。
モーターが回転しています – モーターが回転しているかどうかを報告します。
モーター速度 – モーターの回転速度を-100%から100%までのパーセンテージで報告します。
AIビジョン - IQ AIビジョンセンサーを使用して物体をキャプチャおよび分析します。
アクション
オブジェクトデータの取得 - 検出されたAI分類など、特定のシグネチャのデータをキャプチャします。
設定
set object item - リストから特定のオブジェクトを選択します。
価値観
オブジェクトが存在する - 分類が検出されたかどうかを返します。
object is - 特定の分類が検出されたかどうかを返します。
object is AprilTag - 検出されたオブジェクトが特定の ID に一致する AprilTag であるかどうかを返します。
オブジェクト数 - 検出されたオブジェクトの数を返します。
オブジェクトプロパティ - 幅、高さ、centerX、centerY、originX、またはoriginYを返します。
このページに掲載されている例では、Playgroundのデフォルトの開始位置を使用しています。
モーション#
Flopは、インテークモーターを使用してゲーム要素を収集および排出します。アームモーターはアームを上下させます。
各モーターにはそれぞれ独自の方向オプションがあります。方向名は、そのモーターがFlop上でどのように動くかを表しています。
行動#
スピンモーター#
スピンモータースタックブロックは、モーターを2つの方向のいずれかに永久に回転させます。モーターは、別の方向に回転させたり、停止させたりといった別の動作が与えられるまで回転し続けます。
[IntakeMotor v] を [摂取量 v] へ回転
パラメータ |
説明 |
|---|---|
モーター |
回転させるモーター:IntakeMotor または ArmMotor。 |
方向 |
モーターの回転方向:
|
例
開始したとき
[Score a Bean Bag in a Blue Goal.]
[左 v] へ (90) 度旋回 ▶
[前進 v] へ (35) [インチ v] 走行 ▶
[右 v] へ (90) 度旋回 ▶
[ArmMotor v] を [上 v] へ (1) [回転 v] 回転 ▶
[前進 v] へ (40) [インチ v] 走行 ▶
[IntakeMotor v] を [アウトテイク v] へ回転
スピンモーター#
spin motor forスタックブロックは、モーターを特定の距離だけ回転させます。回転はモーターの現在位置を基準としています。プロジェクトは、モーターの回転が終了するまで待機し、その後スタック内の次のブロックが実行されます。
[ArmMotor v] を [上 v] へ (500) [度 v] 回転 ▶
パラメータ |
説明 |
|---|---|
モーター |
回転させるモーター:IntakeMotor または ArmMotor。 |
方向 |
モーターの回転方向:
|
距離 |
モーターが回転する距離。度は整数を使用します。回転数は整数または小数を使用できます。 |
ユニット |
距離の単位:度または回転数。 |
そして待たない |
矢印(▶)を選択してブロックを展開すると、「待機しない」と表示されるので、スタック内の次のブロックがすぐに実行されます。 |
例
開始したとき
[Score a Bean Bag in a Blue Goal.]
[左 v] へ (90) 度旋回 ▶
[前進 v] へ (35) [インチ v] 走行 ▶
[右 v] へ (90) 度旋回 ▶
[ArmMotor v] を [上 v] へ (1) [回転 v] 回転 ▶
[前進 v] へ (40) [インチ v] 走行 ▶
[IntakeMotor v] を [アウトテイク v] へ回転
モーターを回転させて位置を合わせる#
モーターを所定の位置に回転させるスタックブロックは、モーターを特定の位置まで回転させます。
モーターの位置は、回転した角度を表し、度または回転数で測定されます。1回転は360度です。プロジェクトの開始時には、モーターの位置は0度に設定されています。モーターの位置は、モーター位置の設定ブロックを使用して設定することもできます。
位置値は絶対値です。つまり、回転方向はモーターの現在位置によって決まります。
例えば、モーターが0度の位置から始まり、720度の位置まで回転した場合、2回転前進します。その後、360度の位置まで回転した場合、360度は720度より小さいため、1回転後退します。
[ArmMotor v] を位置 (500) [度 v] へ回転 ▶
パラメータ |
説明 |
|---|---|
モーター |
回転させるモーター:IntakeMotor または ArmMotor。 |
位置 |
モーターが回転する位置の値。度は整数を使用します。回転数は整数または小数を使用できます。 |
ユニット |
位置の単位:度または回転。 |
そして待たない |
矢印(▶)を選択してブロックを展開すると、「待機しない」と表示されるので、スタック内の次のブロックがすぐに実行されます。 |
例
開始したとき
[Score a Bean Bag in a Blue Goal.]
[左 v] へ (90) 度旋回 ▶
[前進 v] へ (35) [インチ v] 走行 ▶
[右 v] へ (90) 度旋回 ▶
[ArmMotor v] を位置 (1) [回転 v] へ回転 ▶
[前進 v] へ (40) [インチ v] 走行 ▶
[IntakeMotor v] を [アウトテイク v] へ回転
モーターを停止する#
モーター停止スタックブロックは、選択したモーターを停止します。
[IntakeMotor v] を停止
パラメータ |
説明 |
|---|---|
モーター |
停止するモーター:吸気モーターまたはアームモーター。 |
例
開始したとき
[Score a Bean Bag in a Blue Goal.]
[左 v] へ (90) 度旋回 ▶
[前進 v] へ (35) [インチ v] 走行 ▶
[右 v] へ (90) 度旋回 ▶
[ArmMotor v] を [上 v] へ (1) [回転 v] 回転 ▶
[前進 v] へ (40) [インチ v] 走行 ▶
[IntakeMotor v] を [アウトテイク v] へ回転
(1) 秒待つ
[IntakeMotor v] を停止
設定#
モーター速度を設定する#
モーター速度設定スタックブロックは、モーターの回転速度を指定します。パーセンテージが高いほどモーターは速く回転し、低いほど遅く回転します。
すべてのプロジェクトは、各モーターがデフォルトで50%の速度で回転する状態から始まります。
注: 速度を速くするとモーターの回転速度は速くなりますが、精度が低下する可能性があります。速度を遅くするとモーターの回転速度は遅くなりますが、精度は向上する可能性があります。
[IntakeMotor v] の速度を [50] [% v] に設定
パラメータ |
説明 |
|---|---|
モーター |
IntakeMotor または ArmMotor の速度を設定するモーター。 |
速度 |
モーターの回転速度。パーセントは0%から100%までの整数で表されます。 |
ユニット |
速度の単位:%。 |
例
開始したとき
[Score a Bean Bag in a Blue Goal.]
[左 v] へ (90) 度旋回 ▶
[前進 v] へ (35) [インチ v] 走行 ▶
[右 v] へ (90) 度旋回 ▶
[ArmMotor v] を [上 v] へ (1) [回転 v] 回転 ▶
[前進 v] へ (40) [インチ v] 走行 ▶
[IntakeMotor v] の速度を [100] [% v] に設定
[IntakeMotor v] を [アウトテイク v] へ回転
モータータイムアウトを設定する#
set motor timeoutスタックブロックは、モーターが動作を完了するまでの試行時間を設定します。モーターがその時間内に動作を完了できない場合、試行を停止してスタック内の次のブロックに進みます。これにより、モーターが動作中に停止してしまうのを防ぎます。
[ArmMotor v] のタイムアウトを [1] 秒に設定
パラメータ |
説明 |
|---|---|
モーター |
タイムアウトを設定するモーター: IntakeMotor または ArmMotor。 |
時間 |
モーターが動作を完了するまでの試行時間(秒)。整数または小数を指定できます。 |
例
開始したとき
[Score a Bean Bag in a Blue Goal.]
[左 v] へ (90) 度旋回 ▶
[前進 v] へ (35) [インチ v] 走行 ▶
[右 v] へ (90) 度旋回 ▶
[ArmMotor v] のタイムアウトを [2] 秒に設定
[ArmMotor v] を [上 v] へ (1) [回転 v] 回転 ▶
[前進 v] へ (40) [インチ v] 走行 ▶
[IntakeMotor v] を [アウトテイク v] へ回転
位置#
運動位置#
モーターの位置とは、モーターが回転した角度のことで、度または回転数で測定されます。1回転は360度に相当します。モーター位置レポーターブロックは、モーターの現在の位置を報告します。
プロジェクト開始時、モーターの位置は0度に設定されます。モーターが正方向に1回転すると、位置は360度、つまり1回転となります。モーターが逆方向に回転すると、位置は負の値になります。
([ArmMotor v] の位置([度 v]))
パラメータ |
説明 |
|---|---|
モーター |
IntakeMotor または ArmMotor の位置を報告するモーター。 |
ユニット |
モーターの位置を報告する単位:度または回転数。 |
例
開始したとき
[Score a Bean Bag in a Blue Goal.]
[左 v] へ (90) 度旋回 ▶
[前進 v] へ (35) [インチ v] 走行 ▶
[右 v] へ (90) 度旋回 ▶
<([ArmMotor v] の位置([度 v])) [math_less_than v] [360]> の間繰り返す
[ArmMotor v] を [上 v] へ回転
(0.002) 秒待つ
終わり
[ArmMotor v] を停止
[前進 v] へ (40) [インチ v] 走行 ▶
[IntakeMotor v] を [アウトテイク v] へ回転
モーター位置を設定する#
モーターの位置とは、モーターが回転した角度のことで、度または回転数で表されます。1回転は360度です。モーター位置設定スタックブロックは、モーターの現在の位置を新しい値に変更します。
例えば、モーターが180度まで回転している場合、位置を0度に設定すると、その位置は180度から0度にリセットされます。その後、モーターはその新しい値に基づいて回転できるようになります。
[ArmMotor v] の位置を (0) [度 v] に設定
パラメータ |
説明 |
|---|---|
モーター |
IntakeMotor または ArmMotor の位置を設定するモーター。 |
位置 |
設定する位置の値。度は整数を使用します。回転は整数または小数を使用できます。 |
ユニット |
位置の単位:度または回転。 |
例
開始したとき
[Score a Bean Bag in a Blue Goal.]
[左 v] へ (90) 度旋回 ▶
[前進 v] へ (35) [インチ v] 走行 ▶
[右 v] へ (90) 度旋回 ▶
[ArmMotor v] の位置を [0] [度 v] に設定
[ArmMotor v] を [上 v] へ (1) [回転 v] 回転 ▶
[前進 v] へ (40) [インチ v] 走行 ▶
[IntakeMotor v] を [アウトテイク v] へ回転
価値観#
モーターが完成しました#
モーター完了ブールブロックは、モーターの動作が完了したかどうかを報告します。これは、モーターの動きに基づいて他の動作のタイミングを制御するために使用できます。
正解 — モーターは動作を終えました。
誤り — モーターはまだ動いています。
このブロックは、and don’t wait パラメーターを持つ次のモーションブロックと連携して動作します: spin motor for および spin motor to position。
<[ArmMotor v] 完了?>
パラメータ |
説明 |
|---|---|
モーター |
動作が完了したかどうかを報告するモーター:IntakeMotor または ArmMotor。 |
例
開始したとき
[Score a Bean Bag in a Blue Goal.]
[左 v] へ (90) 度旋回 ▶
[前進 v] へ (35) [インチ v] 走行 ▶
[右 v] へ (90) 度旋回 ▶
[ArmMotor v] を位置 (1) [回転 v] へ回転 ◀ 待たない
<[ArmMotor v] 完了?> まで待つ
[前進 v] へ (40) [インチ v] 走行 ▶
[IntakeMotor v] を [アウトテイク v] へ回転
モーターが回転している#
モーターが回転しています ブール値ブロックは、モーターが回転しているかどうかを報告します。これは、モーターの動きに基づいて他の動作のタイミングを制御するために使用できます。
正解 — モーターは回転しています。
誤り — モーターは回転していません。
このブロックは、and don’t wait パラメーターを持つ次のモーションブロックと連携して動作します: spin motor for および spin motor to position。
<[IntakeMotor v] 回転中?>
パラメータ |
説明 |
|---|---|
モーター |
回転しているかどうかを報告するモーター:IntakeMotor または ArmMotor。 |
例
開始したとき
[Score a Bean Bag in a Blue Goal.]
[左 v] へ (90) 度旋回 ▶
[前進 v] へ (35) [インチ v] 走行 ▶
[右 v] へ (90) 度旋回 ▶
[ArmMotor v] を [上 v] へ (1) [回転 v] 回転 ▶
[前進 v] へ (40) [インチ v] 走行 ▶
[IntakeMotor v] を [アウトテイク v] へ回転
<<[IntakeMotor v] 回転中?> でない> まで待つ
[IntakeMotor v] を停止
モーター速度#
モーター速度レポーターブロックは、モーターの回転速度を-100%から100%までのパーセンテージで報告します。
([IntakeMotor v] の速度([% v]) :: custom-motion)
パラメータ |
説明 |
|---|---|
モーター |
IntakeMotor または ArmMotor の速度を報告するモーター。 |
ユニット |
モーター速度を報告する単位:%。 |
例
開始したとき
[Score a Bean Bag in a Blue Goal.]
[左 v] へ (90) 度旋回 ▶
[前進 v] へ (35) [インチ v] 走行 ▶
[右 v] へ (90) 度旋回 ▶
[ArmMotor v] を [上 v] へ (1) [回転 v] 回転 ▶
[前進 v] へ (40) [インチ v] 走行 ▶
[IntakeMotor v] を [アウトテイク v] へ回転
[0.2] 秒待つ
([IntakeMotor v] の速度([% v]) :: custom-motion) を表示 ▶
AIビジョン#
行動#
オブジェクトデータを取得する#
オブジェクトデータ取得ブロックは、IQ AI Vision Sensorフレームからのデータを単一のシグネチャ(センサーが認識できるもの、例えばフィールド上のゲーム要素などの保存された説明)にフィルタリングします。
このデータセットには、インデックス0から始まる幅の大きい順から小さい順にオブジェクトが格納されます。各オブジェクトのプロパティには、オブジェクトプロパティブロックを使用してアクセスできます。一致するオブジェクトが検出されない場合は、空のデータセットが返されます。
[AIVision v] から [AI 分類 v] データを取得
パラメータ |
説明 |
|---|---|
サイン |
Filters the dataset to only include data of the given signature. Available signatures are:
|
例
開始したとき :: hat events
[Drop the preloaded Bean Bag.]
[IntakeMotor v] を [アウトテイク v] へ (180) [度 v] 回転 ▶
[左 v] へ (90) 度旋回 ▶
[Find and face the nearest red Bean Bag.]
旋回速度を (30) [% v] に設定
[object_counter v] を [1] に設定
[AIVision v] から [AI 分類 v] データを取得
([AIVision v] オブジェクト数) 回繰り返す
[AIVision v] オブジェクトのアイテムを (object_counter) に設定
もし <[AIVision v] オブジェクトは [RedBeanBag v]?> なら
if <([AIVision v] オブジェクト [centerX v]) < (140)> then
[左 v] へ旋回
else if <([AIVision v] object [centerX v]) > (180)> then
[右 v] へ旋回
でなければ
走行停止
終わり
ブレーク
終わり
[object_counter v] を [1] 変える
終わり
設定#
オブジェクトアイテムを設定する#
set object item ブロックは、データセット内のどのアイテムを使用するかを設定します。
[AIVision v] オブジェクトのアイテムを [1] に設定
パラメータ |
説明 |
|---|---|
アイテム |
データセット内で使用する項目の番号。 |
例
開始したとき :: hat events
[Drop the preloaded Bean Bag.]
[IntakeMotor v] を [アウトテイク v] へ (180) [度 v] 回転 ▶
[左 v] へ (90) 度旋回 ▶
[Find the index of the nearest red Bean Bag.]
[object_counter v] を [1] に設定
[AIVision v] から [AI 分類 v] データを取得
([AIVision v] オブジェクト数) 回繰り返す
[AIVision v] オブジェクトのアイテムを (object_counter) に設定
もし <[AIVision v] オブジェクトは [RedBeanBag v]?> なら
([Nearest Red Bean Bag is ] と (object_counter) をつなぐ) を表示 ▶
ブレーク
でなければ
[object_counter v] を [1] 変える
終わり
終わり
価値観#
オブジェクトが存在する#
オブジェクトが存在するブロックは、データセット内にオブジェクトが検出されたかどうかを示すブール値を返します。
正解 - データセットに検出されたオブジェクトが含まれています。
偽 - データセットには検出されたオブジェクトが含まれていません。
<[AIVision v] オブジェクトあり?>
パラメータ |
説明 |
|---|---|
このブロックにはパラメータがありません。 |
例
開始したとき :: hat events
[Drop the preloaded Bean Bag.]
[IntakeMotor v] を [アウトテイク v] へ (180) [度 v] 回転 ▶
[左 v] へ (90) 度旋回 ▶
[Turn until a Bean Bag is detected.]
旋回速度を (30) [% v] に設定
[右 v] へ旋回
<[AIVision v] オブジェクトあり?> まで繰り返す
[AIVision v] から [AI 分類 v] データを取得
終わり
走行停止
オブジェクトは#
object is ブロックは、検出されたオブジェクトが特定の分類に一致するかどうかを示すブール値を返します。
真 - データセット内の項目は特定のオブジェクトです。
偽 - データセット内の項目は、特定のオブジェクトではありません。
<[AIVision v] オブジェクトは [RedBeanBag v]?>
パラメータ |
説明 |
|---|---|
物体 |
比較対象とするオブジェクトはどれですか?RedBeanBag、BlueBeanBag、YellowBeanBag。 |
例
開始したとき :: hat events
[Drop the preloaded Bean Bag.]
[IntakeMotor v] を [アウトテイク v] へ (180) [度 v] 回転 ▶
[左 v] へ (90) 度旋回 ▶
[Find the index of the nearest red Bean Bag.]
[object_counter v] を [1] に設定
[AIVision v] から [AI 分類 v] データを取得
([AIVision v] オブジェクト数) 回繰り返す
[AIVision v] オブジェクトのアイテムを (object_counter) に設定
もし <[AIVision v] オブジェクトは [RedBeanBag v]?> なら
([Nearest Red Bean Bag is ] と (object_counter) をつなぐ) を表示 ▶
ブレーク
でなければ
[object_counter v] を [1] 変える
終わり
終わり
オブジェクトは AprilTag です#
object is AprilTag ブロックは、検出されたオブジェクトが特定の ID に一致する AprilTag であるかどうかを示すブール値を返します。
正解 - 検出されたオブジェクトは、指定されたIDを持つAprilTagです。
偽 - 検出されたオブジェクトは、指定されたIDを持つAprilTagではありません。
<[AIVision v] オブジェクトは AprilTag [0]?>
パラメータ |
説明 |
|---|---|
AprilTag ID |
検出されたAprilTagと比較するためのID番号。 |
例
開始したとき :: hat events
[Stop when you see the Red Goal!]
旋回速度を (30) [% v] に設定
[右 v] へ旋回
<[AIVision v] オブジェクトは AprilTag [1]?> まで繰り返す
[AIVision v] から [AprilTags v] データを取得
終わり
走行停止
[Found the Red Goal!] を表示 ▶
オブジェクト数#
オブジェクト数ブロックは、データセット内で検出されたオブジェクトの数を整数として返します。
([AIVision v] オブジェクト数)
パラメータ |
説明 |
|---|---|
このブロックにはパラメータがありません。 |
例
開始したとき :: hat events
[Drop the preloaded Bean Bag.]
[IntakeMotor v] を [アウトテイク v] へ (180) [度 v] 回転 ▶
[左 v] へ (90) 度旋回 ▶
[Print how many Bean Bags are detected.]
[AIVision v] から [AI 分類 v] データを取得
([AIVision v] オブジェクト数) を表示 ▶
オブジェクトプロパティ#
オブジェクトデータの取得 ブロックが使用された後に保存される各オブジェクトには、6 つのプロパティが含まれています。
([AIVision v] オブジェクト [幅 v])
すべてのプロパティ値は、オブジェクトデータ取得ブロックが使用された時点での、IQ AI Vision Sensorの視野内における検出されたオブジェクトの位置とサイズを表します。これらの値は、センサーの320×240ピクセルの解像度に基づいて、ピクセル単位で測定されます。
パラメータ |
説明 |
|---|---|
財産 |
検出されたオブジェクトのどのプロパティを使用するか:width、height、centerX、centerY、originX、またはoriginY。 |
幅#
widthプロパティは、検出されたオブジェクトの幅をピクセル単位で、1から320までの整数値で報告します。
([AIVision v] オブジェクト [幅 v])
例
開始したとき
[Drop the preloaded Bean Bag.]
[IntakeMotor v] を [アウトテイク v] へ (180) [度 v] 回転 ▶
[左 v] へ (90) 度旋回 ▶
[Approach the Bean Bag, then pick it up.]
走行速度を (30) [% v] に設定
ずっと
[AIVision v] から [AI 分類 v] データを取得
もし <[AIVision v] オブジェクトあり?> なら
[AIVision v] オブジェクトのアイテムを [1] に設定
もし <[AIVision v] オブジェクトは [RedBeanBag v]?> なら
if <([AIVision v] object [width v]) > (180)> then
[前進 v] へ [50] [mm v] 走行 ▶
[IntakeMotor v] を [摂取量 v] へ [90] [度 v] 回転 ▶
ブレーク
でなければ
[前進 v] へ走行
終わり
終わり
終わり
終わり
身長#
heightプロパティは、検出されたオブジェクトの高さをピクセル単位で、1から240までの整数値で報告します。
([AIVision v] オブジェクト [高さ v])
例
開始したとき
[Drop the preloaded Bean Bag.]
[IntakeMotor v] を [アウトテイク v] へ (180) [度 v] 回転 ▶
[左 v] へ (90) 度旋回 ▶
[Approach the Bean Bag, then pick it up.]
走行速度を (30) [% v] に設定
ずっと
[AIVision v] から [AI 分類 v] データを取得
もし <[AIVision v] オブジェクトあり?> なら
[AIVision v] オブジェクトのアイテムを [1] に設定
もし <[AIVision v] オブジェクトは [RedBeanBag v]?> なら
if <([AIVision v] object [height v]) > (100)> then
[前進 v] へ [50] [mm v] 走行 ▶
[IntakeMotor v] を [摂取量 v] へ [90] [度 v] 回転 ▶
ブレーク
でなければ
[前進 v] へ走行
終わり
終わり
終わり
終わり
センターX#
centerXプロパティは、検出されたオブジェクトの中心のx座標をピクセル単位で、0から320までの整数値で報告します。
([AIVision v] オブジェクト [centerX v])
例
開始したとき
[Drop the preloaded Bean Bag.]
[IntakeMotor v] を [アウトテイク v] へ (180) [度 v] 回転 ▶
[左 v] へ (90) 度旋回 ▶
[Steer to keep the Bean Bag centered while approaching.]
旋回速度を (30) [% v] に設定
走行速度を (30) [% v] に設定
ずっと
[AIVision v] から [AI 分類 v] データを取得
もし <[AIVision v] オブジェクトあり?> なら
[AIVision v] オブジェクトのアイテムを [1] に設定
もし <[AIVision v] オブジェクトは [RedBeanBag v]?> なら
if <([AIVision v] オブジェクト [centerX v]) < (140)> then
[左 v] へ (5) 度旋回 ▶
でなければ
[前進 v] へ (150) [mm v] 走行 ▶
[IntakeMotor v] を [摂取量 v] へ回転
ブレーク
終わり
終わり
終わり
終わり
センターY#
centerYプロパティは、検出されたオブジェクトの中心のy座標をピクセル単位で、0から240までの整数値で報告します。
([AIVision v] オブジェクト [centerY v])
例
開始したとき
[Drop the preloaded Bean Bag.]
[IntakeMotor v] を [アウトテイク v] へ (180) [度 v] 回転 ▶
[左 v] へ (90) 度旋回 ▶
[Print the y-position of the Bean Bag.]
[AIVision v] から [AI 分類 v] データを取得
もし <[AIVision v] オブジェクトあり?> なら
[AIVision v] オブジェクトのアイテムを [1] に設定
もし <[AIVision v] オブジェクトは [RedBeanBag v]?> なら
([AIVision v] オブジェクト [centerY v]) を表示 ▶
終わり
終わり
オリジネーション#
originXプロパティは、検出されたオブジェクトのバウンディングボックスの左上隅のx座標をピクセル単位で、0から320までの整数値で報告します。
([AIVision v] オブジェクト [originX v])
例
開始したとき
[Drop the preloaded Bean Bag.]
[IntakeMotor v] を [アウトテイク v] へ (180) [度 v] 回転 ▶
[左 v] へ (90) 度旋回 ▶
[Steer to keep the left edge centered.]
旋回速度を (30) [% v] に設定
走行速度を (30) [% v] に設定
ずっと
[AIVision v] から [AI 分類 v] データを取得
もし <[AIVision v] オブジェクトあり?> なら
[AIVision v] オブジェクトのアイテムを [1] に設定
もし <[AIVision v] オブジェクトは [RedBeanBag v]?> なら
if <([AIVision v] オブジェクト [originX v]) < (100)> then
[左 v] へ (5) 度旋回 ▶
でなければ
[前進 v] へ (150) [mm v] 走行 ▶
[IntakeMotor v] を [摂取量 v] へ回転
ブレーク
終わり
終わり
終わり
終わり
起源Y#
originYプロパティは、検出されたオブジェクトのバウンディングボックスの左上隅のy座標をピクセル単位で、0から240までの整数値として報告します。
([AIVision v] オブジェクト [originY v])
例
開始したとき
[Drop the preloaded Bean Bag.]
[IntakeMotor v] を [アウトテイク v] へ (180) [度 v] 回転 ▶
[左 v] へ (90) 度旋回 ▶
[Print the y-position of the Bean Bag's top edge.]
[AIVision v] から [AI 分類 v] データを取得
もし <[AIVision v] オブジェクトあり?> なら
[AIVision v] オブジェクトのアイテムを [1] に設定
もし <[AIVision v] オブジェクトは [RedBeanBag v]?> なら
([AIVision v] オブジェクト [originY v]) を表示 ▶
終わり
終わり