Mắt#

Giới thiệu#

Robot VEX 123 được tích hợp cảm biến mắt có khả năng phát hiện vật thể và màu sắc. Nó cũng có thể báo cáo lượng ánh sáng phản xạ trở lại cảm biến và giá trị sắc độ của màu sắc được phát hiện.

Cảm biến mắt có đèn có thể bật hoặc tắt để giúp nó nhìn rõ vật thể và màu sắc hơn.

Có nhiều cách để lập trình cảm biến mắt. Dưới đây là danh sách tất cả các phương pháp lập trình cảm biến mắt:

Bộ điều chỉnh — Điều chỉnh cài đặt cảm biến mắt.

  • set_light — Bật hoặc tắt đèn của Cảm biến mắt.

  • set_light_power — Đặt mức công suất ánh sáng của Cảm biến Mắt.

Getters — Trả về những gì Cảm biến Mắt phát hiện.

  • get_hue — Trả về màu sắc được phát hiện bởi Cảm biến Mắt.

  • get_brightness — Trả về độ sáng được phát hiện bởi Cảm biến Mắt.

  • is_object_detected — Trả về liệu Cảm biến Mắt có phát hiện vật thể trong phạm vi hay không.

  • is_color_detected — Trả về liệu Cảm biến mắt có phát hiện một màu cụ thể hay không.

  • is_bright — Trả về liệu Cảm biến Mắt có phát hiện vật thể sáng hay không.

Biến đổi#

set_light#

set_light bật hoặc tắt đèn của cảm biến mắt.

Usage:
robot.eye.set_light(state)

Thông số

Sự miêu tả

state

Trạng thái ánh sáng của cảm biến mắt: OFF hoặc ON.

# Continuously blink the light.
while True:
    robot.eye.set_light(ON)
    wait(2, SECONDS)
    robot.eye.set_light(OFF)
    wait(2, SECONDS)

set_light_power#

set_light_power thiết lập độ sáng của đèn cảm biến mắt. Ánh sáng có thể giúp cảm biến mắt phát hiện vật thể và màu sắc rõ ràng hơn.

Tỷ lệ phần trăm càng cao thì ánh sáng càng sáng. Tỷ lệ phần trăm càng thấp thì ánh sáng càng mờ.

Nếu đèn của cảm biến mắt đang tắt, việc đặt công suất đèn trên 0% sẽ bật đèn lên.

Nếu đèn của cảm biến mắt đang sáng, việc đặt công suất đèn về 0% sẽ tắt đèn.

Usage:
robot.eye.set_light_power(value)

Thông số

Sự miêu tả

value

Điều chỉnh độ sáng của đèn cảm biến mắt, từ 0% đến 100%. Sử dụng số nguyên.

# Set the light to different power levels.
robot.eye.set_light_power(25)
wait(2, SECONDS)
robot.eye.set_light_power(50)
wait(2, SECONDS)
robot.eye.set_light_power(100)

Người nhận#

get_hue#

get_hue trả về màu sắc được cảm biến mắt phát hiện dưới dạng số nguyên từ 0 đến 359,00 độ.

Sắc độ là một cách để mô tả màu sắc bằng các con số xung quanh vòng tròn màu.

Một vòng tròn màu hiển thị toàn bộ quang phổ màu được dán nhãn bằng các giá trị độ xung quanh chu vi, tăng dần theo từng bước 30 độ từ 0° ở trên cùng đến 360°.

Usage:
robot.eye.get_hue()

Thông số

Sự miêu tả

Phương pháp này không có tham số.

# Display if an object is pink.
while True:
    console.clear()
    if 290 < robot.eye.get_hue() < 350:
        console.print("Pink!")
    else:
        console.print("Not pink!")
    wait(0.1, SECONDS)

get_brightness#

get_brightness trả về độ sáng của ánh sáng được phát hiện, dưới dạng số nguyên từ 0% đến 100%.

Tỷ lệ phần trăm càng cao nghĩa là càng nhiều ánh sáng được phản xạ trở lại cảm biến mắt. Tỷ lệ phần trăm càng thấp nghĩa là càng ít ánh sáng được phản xạ trở lại.

Usage:
robot.eye.get_brightness()

Thông số

Sự miêu tả

Phương pháp này không có tham số.

# Display whether a detected object is bright.
robot.eye.set_light_power(100)
robot.drive(FORWARD)
while not robot.eye.is_object_detected():
    wait(0.1, SECONDS)
wait(0.1, SECONDS)
if robot.eye.get_brightness() < 70:
    console.print("Object not bright.")
else:
    console.print("Bright object!")

is_object_detected#

is_object_detected trả về một Boolean cho biết liệu Cảm biến Mắt có phát hiện vật thể trong phạm vi hay không.

  • True — Cảm biến mắt phát hiện vật thể.

  • False — Cảm biến mắt không phát hiện vật thể.

Usage:
robot.eye.is_object_detected()

Thông số

Sự miêu tả

Phương pháp này không có tham số.

# Stop driving after detecting an object.
robot.eye.set_light(ON)
robot.drive(FORWARD)
wait(0.1, SECONDS)
while not robot.eye.is_object_detected():
    wait(0.1, SECONDS)
robot.stop()

is_color_detected#

is_color_detected trả về một Boolean báo cáo liệu Cảm biến Mắt có phát hiện màu được chỉ định hay không, dựa trên giá trị sắc độ được phát hiện.

  • True — Cảm biến mắt phát hiện màu đã chọn.

  • False — Cảm biến mắt không phát hiện màu đã chọn.

Cảm biến mắt hoạt động tốt nhất khi vật thể ở gần và ánh sáng rõ.

Usage:
robot.eye.is_color_detected(color)

Thông số

Sự miêu tả

color

Màu sắc mà cảm biến mắt cần kiểm tra:

  • BLUE – Giá trị sắc độ từ 160° đến 254°.
  • GREEN – Giá trị sắc độ từ 75° đến 154°.
  • NONE
  • RED – Giá trị sắc độ từ 340° đến 20°.

# Stop driving after detecting a green object.
robot.eye.set_light(ON)
robot.drive(FORWARD)
wait(0.1, SECONDS)
while not robot.eye.is_color_detected(GREEN):
    wait(0.1, SECONDS)
robot.stop()

is_bright#

is_bright trả về một Boolean cho biết liệu vật thể được phát hiện bởi Cảm biến Mắt có sáng hay không.

Một vật thể được coi là sáng khi nó phản chiếu hơn 70% độ sáng trở lại cảm biến mắt.

  • True — Vật thể được phát hiện phản chiếu độ sáng hơn 70%.

  • False — Vật thể được phát hiện phản chiếu độ sáng 70% hoặc ít hơn.

Usage:
robot.eye.is_bright()

Thông số

Sự miêu tả

Phương pháp này không có tham số.

# Display whether a detected object is bright.
robot.eye.set_light_power(100)
robot.drive(FORWARD)
while not robot.eye.is_object_detected():
    wait(0.1, SECONDS)
wait(0.1, SECONDS)
if robot.eye.is_bright():
    console.print("Bright object!")
else:
    console.print("Object not bright.")