Mục lục:
Video: Raspberry Pi - ADXL345 3-Axis Accelerometer Hướng dẫn Python: 4 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:30
ADXL345 là một máy đo gia tốc 3 trục nhỏ, mỏng, công suất cực thấp, có độ phân giải cao (13-bit) với phép đo lên đến ± 16 g. Dữ liệu đầu ra kỹ thuật số được định dạng dưới dạng bổ sung 16 bit hai chiều và có thể truy cập thông qua giao diện kỹ thuật số I2 C. Đo gia tốc tĩnh của trọng lực trong các ứng dụng cảm biến độ nghiêng, cũng như gia tốc động do chuyển động hoặc sốc. Độ phân giải cao của nó (3,9 mg / LSB) cho phép đo các thay đổi độ nghiêng nhỏ hơn 1,0 °. Đây là phần trình diễn với raspberry pi bằng cách sử dụng mã python.
Bước 1: Những gì bạn cần.. !
1. Raspberry Pi
2. ADXL345
3. Cáp I²C
4. I²C Shield cho Raspberry Pi
5. Cáp Ethernet
Bước 2: Kết nối:
Lấy một tấm chắn I2C cho raspberry pi và nhẹ nhàng đẩy nó qua các chân gpio của raspberry pi.
Sau đó kết nối một đầu của cáp I2C với cảm biến ADXL345 và đầu kia với tấm chắn I2C.
Đồng thời kết nối cáp Ethernet với pi hoặc bạn có thể sử dụng mô-đun WiFi.
Các kết nối được hiển thị trong hình trên.
Bước 3: Mã:
Có thể tải xuống mã python cho ADXL345 từ kho lưu trữ GitHub của chúng tôi- Dcube Store
Đây là liên kết cho cùng một:
github.com/DcubeTechVentures/ADXL345..
Chúng tôi đã sử dụng thư viện SMBus cho mã python, các bước để cài đặt SMBus trên raspberry pi được mô tả ở đây:
pypi.python.org/pypi/smbus-cffi/0.5.1
Bạn cũng có thể sao chép mã từ đây, nó được đưa ra như sau:
# Được phân phối với một giấy phép tự do.
# Sử dụng nó theo bất kỳ cách nào bạn muốn, lợi nhuận hoặc miễn phí, miễn là nó phù hợp với giấy phép của các tác phẩm liên quan.
# ADXL345
# Mã này được thiết kế để hoạt động với Mô-đun Mini ADXL345_I2CS I2C có sẵn trong Dcube Store.
nhập khẩu smbus
thời gian nhập khẩu
# Nhận xe buýt I2C
bus = smbus. SMBus (1)
Địa chỉ # ADXL345, 0x53 (83)
# Chọn thanh ghi tốc độ băng thông, 0x2C (44) # 0x0A (10) Chế độ bình thường, Tốc độ dữ liệu đầu ra = 100 Hz
bus.write_byte_data (0x53, 0x2C, 0x0A)
Địa chỉ # ADXL345, 0x53 (83)
# Chọn thanh ghi điều khiển công suất, 0x2D (45)
# 0x08 (08) Tắt Tự động Ngủ
bus.write_byte_data (0x53, 0x2D, 0x08)
Địa chỉ # ADXL345, 0x53 (83)
# Chọn thanh ghi định dạng dữ liệu, 0x31 (49)
# 0x08 (08) Đã tắt tính năng tự kiểm tra, giao diện 4 dây
# Độ phân giải đầy đủ, Phạm vi = +/- 2g
bus.write_byte_data (0x53, 0x31, 0x08)
time.sleep (0,5)
Địa chỉ # ADXL345, 0x53 (83)
# Đọc lại dữ liệu từ 0x32 (50), 2 byte
# X-Axis LSB, X-Axis MSB
data0 = bus.read_byte_data (0x53, 0x32)
data1 = bus.read_byte_data (0x53, 0x33)
# Chuyển đổi dữ liệu thành 10-bit
xAccl = ((data1 & 0x03) * 256) + data0
nếu xAccl> 511:
xAccl - = 1024
Địa chỉ # ADXL345, 0x53 (83)
# Đọc lại dữ liệu từ 0x34 (52), 2 byte
# Y-Axis LSB, Y-Axis MSB
data0 = bus.read_byte_data (0x53, 0x34)
data1 = bus.read_byte_data (0x53, 0x35)
# Chuyển đổi dữ liệu thành 10-bit
yAccl = ((data1 & 0x03) * 256) + data0
nếu yAccl> 511:
yAccl - = 1024
Địa chỉ # ADXL345, 0x53 (83)
# Đọc lại dữ liệu từ 0x36 (54), 2 byte
# Z-Axis LSB, Z-Axis MSB
data0 = bus.read_byte_data (0x53, 0x36)
data1 = bus.read_byte_data (0x53, 0x37)
# Chuyển đổi dữ liệu thành 10-bit
zAccl = ((data1 & 0x03) * 256) + data0
nếu zAccl> 511:
zAccl - = 1024
# Xuất dữ liệu ra màn hình
in "Gia tốc theo Trục X:% d"% xAccl
print "Gia tốc theo trục Y:% d"% yAccl
in "Gia tốc theo Trục Z:% d"% zAccl
Bước 4: Ứng dụng:
ADXL345 là một máy đo gia tốc 3 trục nhỏ, mỏng, công suất cực thấp, có thể được sử dụng trong Thiết bị cầm tay, Thiết bị đo đạc y tế, v.v. Ứng dụng của nó cũng bao gồm Thiết bị chơi game và trỏ, Thiết bị đo công nghiệp, Thiết bị định vị cá nhân và Bảo vệ ổ đĩa cứng (HDD).
Đề xuất:
Hướng dẫn sử dụng Python về cảm biến độ ẩm và nhiệt độ Raspberry Pi SHT25: 4 bước
Cảm biến độ ẩm và nhiệt độ Raspberry Pi SHT25 Hướng dẫn sử dụng Python: Cảm biến độ ẩm và nhiệt độ SHT25 I2C ± 1,8% RH ± 0,2 ° C I2C Mini Module. Cảm biến nhiệt độ và độ ẩm có độ chính xác cao SHT25 đã trở thành một tiêu chuẩn công nghiệp về yếu tố hình thức và độ thông minh, cung cấp dấu hiệu cảm biến được hiệu chỉnh, phân loại theo dòng
Raspberry Pi - Cảm biến đo độ cao chính xác MPL3115A2 Hướng dẫn sử dụng Python: 4 bước
Raspberry Pi - MPL3115A2 Cảm biến đo độ cao chính xác Hướng dẫn Python: MPL3115A2 sử dụng cảm biến áp suất MEMS với giao diện I2C để cung cấp dữ liệu Áp suất / Độ cao và Nhiệt độ chính xác. Các đầu ra cảm biến được số hóa bằng ADC 24-bit có độ phân giải cao. Xử lý nội bộ loại bỏ các nhiệm vụ bồi thường khỏi
Raspberry Pi - BH1715 Cảm biến ánh sáng xung quanh kỹ thuật số Hướng dẫn Python: 4 bước
Hướng dẫn Python cho cảm biến ánh sáng xung quanh kỹ thuật số Raspberry Pi - BH1715: BH1715 là cảm biến ánh sáng xung quanh kỹ thuật số với giao diện bus I²C. BH1715 thường được sử dụng để lấy dữ liệu ánh sáng xung quanh để điều chỉnh công suất đèn nền của màn hình LCD và bàn phím cho các thiết bị di động. Thiết bị này cung cấp độ phân giải 16-bit và điều chỉnh
Làm thế nào để viết một hướng dẫn sử dụng các tài liệu hướng dẫn: 14 bước
Làm thế nào để viết một hướng dẫn bằng cách sử dụng các bảng hướng dẫn: Tài liệu này chỉ ra cách sử dụng các bảng hướng dẫn để viết một chỉ dẫn
Bộ đếm xem hướng dẫn + Hướng dẫn ESP8266: 6 bước (có hình ảnh)
Bộ đếm lượt xem hướng dẫn + Hướng dẫn ESP8266: Bộ đếm số người đăng ký cho Youtube và Facebook khá phổ biến, nhưng tại sao không tạo một cái gì đó tương tự cho Bộ đếm hướng dẫn? Đó chính xác là những gì chúng ta sẽ làm: trong hướng dẫn này, chúng tôi sẽ tạo bộ đếm lượt xem Người hướng dẫn! lượt xem sẽ phải được captu