vl53l1x --- Driver cảm biến đo khoảng cách ToF VL53L1X¶
Module này cung cấp driver cho cảm biến đo khoảng cách time-of-flight VL53L1X của STMicroelectronics qua I2C. VL53L1X đo khoảng cách tuyệt đối lên đến ~4 m sử dụng bộ phát laser vô hình 940 nm và mảng thu SPAD.
Ví dụ sử dụng:
import time
from machine import I2C
import vl53l1x
bus = I2C(1)
tof = vl53l1x.VL53L1X(bus)
while True:
print("Distance: {} mm".format(tof.read()))
time.sleep_ms(100)
Các lớp¶
- class vl53l1x.VL53L1X(bus: machine.I2C, address: int = 0x29)¶
Khởi tạo instance driver VL53L1X.
buslà đối tượng busmachine.I2Cđã được cấu hình dùng để giao tiếp với cảm biến.addresslà địa chỉ I2C 7-bit của thiết bị. Mặc định là0x29.
Constructor thực hiện đặt lại mềm, xác minh ID model chip, ghi khối cấu hình mặc định vào thiết bị, và áp dụng bản vá thanh ghi khởi động mà ST API thực hiện khi bắt đầu đo khoảng cách lần đầu. Lệnh gọi này sẽ bị chặn khoảng ~200 ms trong khi cảm biến ổn định. Đưa ra
RuntimeErrornếu thanh ghi ID model không trả về giá trị mong đợi0xEACC.- writeReg(reg: int, value: int) None¶
Ghi một
value8-bit đơn vào địa chỉ thanh ghi thiết bị 16-bitreg.
- writeReg16Bit(reg: int, value: int) None¶
Ghi một
value16-bit (big-endian) vào địa chỉ thanh ghi thiết bị 16-bitreg.
- readReg(reg: int) int¶
Đọc một giá trị 8-bit đơn từ địa chỉ thanh ghi thiết bị 16-bit
regvà trả về dưới dạngint.
- readReg16Bit(reg: int) int¶
Đọc một giá trị 16-bit (big-endian) từ địa chỉ thanh ghi thiết bị 16-bit
regvà trả về dưới dạngint.
- read_model_id() int¶
Trả về nội dung của thanh ghi ID model 16-bit tại
0x010F. Giá trị mong đợi cho VL53L1X là0xEACC.
Các hằng số¶
- vl53l1x.VL51L1X_DEFAULT_CONFIGURATION: bytes¶
Khối cấu hình 91-byte mặc định được ghi vào thiết bị bắt đầu từ thanh ghi
0x2Dtrong quá trình khởi tạo. Khối này thiết lập cực tính ngắt, ngưỡng sigma, ngưỡng tín hiệu, chu kỳ đo giữa các lần, ngưỡng khoảng cách, tâm/kích thước ROI, và các thông số đo khoảng cách khác được khuyến nghị bởi driver siêu nhẹ ST. Hầu hết các byte không thể sửa đổi bởi người dùng; tham khảo các chú thích trong mã nguồn để biết các trường có thể điều chỉnh.