Cảm biến vật thể#
Giới thiệu#
Cảm biến vật thể là một cảm biến tiệm cận hồng ngoại (IR) phát hiện khi có vật thể ở gần bằng cách sử dụng ánh sáng hồng ngoại phản xạ.

Trang này sử dụng object_sensor làm ví dụ về tên Cảm biến Đối tượng. Hãy thay thế bằng tên do bạn cấu hình nếu cần.
Dưới đây là danh sách các phương pháp có sẵn:
reflectivity– Trả về mộtintegerbiểu thị lượng ánh sáng phản xạ từ vật thể dưới dạng phần trăm.is_object_detected– Trả về liệu Cảm biến Đối tượng có đang phát hiện đối tượng hay không.set_threshold– Đặt lượng ánh sáng phản xạ cần thiết trước khi một vật thể được coi là đã được phát hiện.object_detected– Đăng ký một hàm được gọi bất cứ khi nào Cảm biến Đối tượng phát hiện một đối tượng mới.object_lost– Đăng ký một hàm được gọi bất cứ khi nào Cảm biến Đối tượng mất một đối tượng được phát hiện.changed– Đăng ký một hàm được gọi bất cứ khi nào giá trị của Cảm biến Đối tượng thay đổi.
Hàm khởi tạo – Khởi tạo thủ công một cảm biến đối tượng.
ObjectDetector– Tạo một cảm biến đối tượng.
độ phản xạ#
reflectivity trả về một integer biểu thị lượng ánh sáng phản xạ từ vật thể dưới dạng phần trăm.
Ghi chú:
Độ phản xạ 0% có nghĩa là vật thể rất tối.
Độ phản xạ 100% có nghĩa là vật thể rất sáng.
Usage:
object_sensor.reflectivity()
Thông số |
Sự miêu tả |
|---|---|
Phương pháp này không có tham số. |
# Drive forward when the reflectivity is greater than 50%.
while True:
if object_sensor.reflectivity() > 50:
drivetrain.drive(FORWARD)
else:
drivetrain.stop()
wait(5, MSEC)
is_object_detected#
is_object_detected trả về trạng thái cho biết Cảm biến vật thể có đang phát hiện vật thể hay không.
True– Cảm biến vật thể đang phát hiện một vật thể.False– Cảm biến vật thể không phát hiện vật thể nào.
Usage:
object_sensor.is_object_detected()
Thông số |
Sự miêu tả |
|---|---|
Phương pháp này không có tham số. |
# Drive forward when the object sensor is detecting an object.
while True:
if object_sensor.is_object_detected():
drivetrain.drive(FORWARD)
else:
drivetrain.stop()
wait(5, MSEC)
đặt ngưỡng#
set_threshold thiết lập lượng ánh sáng phản xạ cần thiết dưới dạng phần trăm trước khi một vật thể được coi là đã được phát hiện.
Usage:
object_sensor.set_threshold(value)
Thông số |
Sự miêu tả |
|---|---|
|
Giá trị độ phản xạ cần thiết để một vật thể được coi là đã được phát hiện, từ 0 đến 100. |
# Set the reflectivity threshold to 50%.
object_sensor.set_threshold(50)
# Drive forward when the object sensor is detecting an object.
while True:
if object_sensor.is_object_detected():
drivetrain.drive(FORWARD)
else:
drivetrain.stop()
wait(5, MSEC)
đối tượng được phát hiện#
object_detected đăng ký một hàm sẽ được gọi bất cứ khi nào Cảm biến Đối tượng phát hiện một đối tượng mới.
Usage:
object_sensor.object_detected(callback, arg)
Thông số |
Sự miêu tả |
|---|---|
|
Một hàm được định nghĩa trước đó sẽ thực thi khi Cảm biến Đối tượng phát hiện một đối tượng mới. |
|
Tùy chọn. Một |
def my_function():
brain.screen.print("Object detected.")
# Call my_function whenever object_sensor detects an object
object_sensor.object_detected(my_function)
vật thể bị mất#
object_lost đăng ký một hàm sẽ được gọi bất cứ khi nào Cảm biến Đối tượng mất một đối tượng đã được phát hiện.
Usage:
object_sensor.object_lost(callback, arg)
Thông số |
Sự miêu tả |
|---|---|
|
Một hàm được định nghĩa trước đó sẽ thực thi khi Cảm biến Đối tượng mất một đối tượng được phát hiện. |
|
Tùy chọn. Một |
def my_function():
brain.screen.print("Object lost.")
# Call my_function whenever object_sensor loses an object
object_sensor.object_lost(my_function)
đã thay đổi#
changed đăng ký một hàm sẽ được gọi bất cứ khi nào giá trị của Cảm biến Đối tượng thay đổi.
Usage:
object_sensor.changed(callback, arg)
Thông số |
Sự miêu tả |
|---|---|
|
Một hàm được định nghĩa trước đó sẽ thực thi khi giá trị của Cảm biến Đối tượng thay đổi. |
|
Tùy chọn. Một |
def my_function():
brain.screen.print("Reflectivity changed.")
# Call my_function whenever object_sensor's value changes
object_sensor.changed(my_function)
Các hàm tạo#
Các hàm tạo được sử dụng để tạo thủ công ObjectDetector , cần thiết cho việc cấu hình Cảm biến Đối tượng.
ObjectDetector#
ObjectDetector tạo ra một Cảm biến đối tượng.
Usage:
ObjectDetector(port, reverse_det)
Tham số |
Sự miêu tả |
|---|---|
|
Cổng 3 dây mà Cảm biến vật thể được kết nối:
|
|
Tùy chọn. Có đảo ngược logic phát hiện hay không:
|
# Create an Object Sensor in Port A
object_sensor = ObjectDetector(brain.three_wire_port.a)