信号塔#

導入#

シグナルタワーは、色付きのライトを使ってロボットの状態を表示する装置です。また、押されたことを検知するバンパースイッチも内蔵されています。

For the examples below, the configured Signal Tower will be named signal_tower_1 and will be used in all subsequent examples throughout this API documentation when referring to SignalTower class methods.

以下に、利用可能なメソッドの一覧を示します。

設定担当者 – 信号塔のライトの色とパターンを設定します。

  • set_color – 信号塔の LED の 1 つまたはすべてにパターンを設定します。

  • set_colors – 各信号塔LEDの状態を設定します。

ゲッターズ – シグナルタワーバンパーの状態を確認してください。

  • pressing – シグナルタワーのバンパーが現在押されているかどうかを返します。

コールバック – シグナルタワーバンパーの状態が変化したときにコードを実行します。

  • pressed – シグナルタワーバンパーが押されたときに呼び出される関数を登録します。

  • released – シグナルタワーバンパーが解放されたときに呼び出される関数を登録します。

建設者向け – 信号塔を手動で初期化および構成します。

セッター#

set_color#

set_color は、シグナルタワー上の 1 つまたはすべての LED の点灯パターンを設定します。これらのライトは、プロジェクト内でロボットがどこにいるかを追跡したり、特定の条件が満たされたときに表示したりするために使用できます。

Usage:
signal_tower_1.set_color(value, state)

パラメータ

説明

価値

制御するライトの色:

  • SignalTower.RED
  • SignalTower.GREEN
  • SignalTower.BLUE
  • SignalTower.YELLOW
  • SignalTower.WHITE
  • SignalTower.ALL — すべての色にアクションを適用します。

州

適用するライトパターン:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — ライトが点滅します。

# Set the Signal Tower to start blinking the blue LED
signal_tower_1.set_color(SignalTower.BLUE, signal_tower.BLINK)

set_colors#

set_colors は、各シグナルタワーLEDの状態を設定します。これらのライトは、ロボットがプロジェクト内のどこにいるかを追跡したり、特定の条件が満たされたことを示したりするために使用できます。

Usage:
signal_tower_1.set_colors(r, y, g, b, w)

パラメータ

説明

r

赤信号の状態:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — ライトが点滅します。

y

黄色信号の状態:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — ライトが点滅します。

g

青信号の状態:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — ライトが点滅します。

b

青色ライトの状態:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — ライトが点滅します。

w

白色ライトの状態:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — ライトが点滅します。

# Turn on all LEDs
signal_tower_1.set_colors(SignalTower.ON, SignalTower.ON, SignalTower.ON, SignalTower.ON, SignalTower.ON)

# Turn on just the red LED
signal_tower_1.set_colors(SignalTower.ON, SignalTower.OFF, SignalTower.OFF, SignalTower.OFF, SignalTower.OFF)

ゲッター#

pressing#

pressing 押すと、信号塔のバンパーが現在押されているかどうかを示すブール値が返されます。これは緊急停止として使用できます。

  • True — シグナルタワーのバンパーが現在押されています。

  • False — シグナルタワーのバンパーが押されていません。

Usage:
signal_tower_1.pressing()

コールバック#

pressed#

pressed 押され、信号塔のバンパーが押されたときに呼び出される関数が登録されます。

このメソッドは、 Event クラスのインスタンスを返します。

Usage:
signal_tower_1.pressed(callback, arg)

パラメータ

説明

callback

信号塔のバンパーが押されたときに実行される、事前に定義された関数。

arg

Optional. A tuple containing arguments to pass to the callback function. See Functions with Parameters for more information.

# Define a function tower_button_pressed()
def tower_button_pressed():
    # Print that the Signal Tower's button was pressed
    # to the Brain's screen.
    brain.screen.print("button pressed")

# Run tower_button_pressed when the Signal Tower's
# button is pressed.
signal_tower_1.pressed(tower_button_pressed)

released#

released シグナルタワーのバンパーがリリースされたときに呼び出される関数を登録します。

このメソッドは、 Event クラスのインスタンスを返します。

Usage:
signal_tower_1.released(callback, arg)

パラメータ

説明

callback

シグナルタワーのバンパーが解放されたときに実行される、事前に定義された関数。

arg

Optional. A tuple containing arguments to pass to the callback function. See Functions with Parameters for more information.

# Define a function tower_button_released()
def tower_button_released():
    # Print that the Signal Tower's button was released
    # to the Brain's screen.
    brain.screen.print("button released")

# Run tower_button_released when the Signal Tower's
# button is released.
signal_tower_1.released(tower_button_released)

建設業者#

SignalTower#

SignalTower は信号塔を作成します。

SignalTower(smartport)

パラメータ

説明

smartport

シグナルタワーが接続されているスマートポートは、 Ports.PORTx と表記されます。ここで、x はポート番号です。

# Construct a Signal Tower "signal_tower_1" with the
# SignalTower class
signal_tower_1 = SignalTower(Ports.PORT1)