Tháp tín hiệu#

Giới thiệu#

Tháp tín hiệu là một thiết bị sử dụng đèn màu để hiển thị trạng thái của robot. Nó cũng có một công tắc cảm biến tích hợp có thể phát hiện khi bị nhấn.

Đối với các ví dụ bên dưới, Tháp tín hiệu đã cấu hình sẽ được đặt tên là signal_tower_1 và sẽ được sử dụng trong tất cả các ví dụ tiếp theo trong toàn bộ tài liệu API này khi đề cập đến các phương thức của lớp SignalTower.

Dưới đây là danh sách tất cả các phương pháp hiện có:

Người thiết lập – Cấu hình màu sắc và kiểu chiếu sáng của Tháp tín hiệu.

  • set_color – Đặt mẫu cho một hoặc tất cả đèn LED Tháp Tín hiệu.

  • set_colors – Đặt trạng thái của từng đèn LED Tháp Tín hiệu.

Những người quan tâm – Hãy đọc thông báo về tình trạng của trạm thu phát tín hiệu.

  • pressing – Trả về trạng thái hiện tại của nút bấm Tháp Tín hiệu.

Hàm gọi lại – Chạy mã khi trạng thái của bộ phận giảm chấn Tháp tín hiệu thay đổi.

  • pressed – Đăng ký một hàm sẽ được gọi khi nút bấm Tháp Tín hiệu được nhấn.

  • released – Đăng ký một hàm sẽ được gọi khi bộ phận giảm chấn Tháp tín hiệu được thả ra.

Người lắp đặt – Tự tay khởi tạo và cấu hình Tháp tín hiệu.

Người chuyền bóng#

set_color#

set_color thiết lập kiểu chiếu sáng của một hoặc tất cả các đèn LED trên Tháp Tín hiệu. Những đèn này có thể được sử dụng để theo dõi vị trí của robot trong một dự án hoặc để hiển thị khi các điều kiện nhất định được đáp ứng.

Usage:
signal_tower_1.set_color(value, state)

Tham số

Sự miêu tả

giá trị

Màu đèn cần điều khiển:

  • SignalTower.RED
  • SignalTower.GREEN
  • SignalTower.BLUE
  • SignalTower.YELLOW
  • SignalTower.WHITE
  • SignalTower.ALL — Áp dụng thao tác cho tất cả các màu.

tình trạng

Trình tự nháy đèn cần áp dụng:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — Đèn nhấp nháy liên tục.

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

set_colors#

set_colors thiết lập trạng thái của từng đèn LED trên Tháp Tín hiệu. Những đèn này có thể được sử dụng để theo dõi vị trí của robot trong dự án hoặc để hiển thị khi các điều kiện nhất định được đáp ứng.

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

Tham số

Sự miêu tả

r

Trạng thái của đèn đỏ:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — Đèn nhấp nháy liên tục.

y

Trạng thái của đèn vàng:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — Đèn nhấp nháy liên tục.

g

Trạng thái đèn xanh:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — Đèn nhấp nháy liên tục.

b

Trạng thái của đèn xanh:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — Đèn nhấp nháy liên tục.

w

Trạng thái của đèn trắng:

  • SignalTower.ON
  • SignalTower.OFF
  • SignalTower.BLINK — Đèn nhấp nháy.

# 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)

Người nhận#

pressing#

Việc nhấn phím pressing sẽ trả về giá trị Boolean cho biết liệu nút bấm an toàn của Tháp Tín hiệu có đang được nhấn hay không. Chức năng này có thể được sử dụng như một nút dừng khẩn cấp.

  • True — Bộ phận giảm xóc của Tháp Tín hiệu hiện đang được nhấn.

  • False — Bộ phận giảm chấn của Tháp Tín hiệu không bị ấn.

Usage:
signal_tower_1.pressing()

Cuộc gọi lại#

pressed#

pressed đăng ký một hàm sẽ được gọi khi nút bấm của Tháp Tín hiệu được nhấn.

Phương thức này trả về một thể hiện của lớp Event.

Usage:
signal_tower_1.pressed(callback, arg)

Thông số

Sự miêu tả

callback

Một hàm được định nghĩa trước đó sẽ được thực thi khi nút bấm của Tháp Tín hiệu được nhấn.

arg

Tùy chọn. Một tuple chứa các đối số để truyền cho hàm gọi lại. Xem Hàm có tham số để biết thêm thông tin.

# 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 đăng ký một hàm sẽ được gọi khi bộ phận giảm chấn của Tháp Tín hiệu được giải phóng.

Phương thức này trả về một thể hiện của lớp Event.

Usage:
signal_tower_1.released(callback, arg)

Thông số

Sự miêu tả

callback

Một hàm được định nghĩa trước đó sẽ thực thi khi bộ phận giảm chấn của Tháp Tín hiệu được nhả ra.

arg

Tùy chọn. Một tuple chứa các đối số để truyền cho hàm gọi lại. Xem Hàm có tham số để biết thêm thông tin.

# 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)

Các hàm tạo#

SignalTower#

SignalTower tạo ra một Tháp tín hiệu.

SignalTower(smartport)

Tham số

Sự miêu tả

smartport

Cổng thông minh mà Tháp tín hiệu được kết nối đến được viết dưới dạng Ports.PORTx , trong đó x là số thứ tự của cổng.

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