Mục lục:
- Bước 1: Phần cứng cơ bản mà chúng tôi yêu cầu
- Bước 2: Kết nối phần cứng
- Bước 3: Mã hóa Python cho Raspberry Pi
- Bước 4: Tính khả thi của mã
- Bước 5: Ứng dụng và tính năng
- Bước 6: Kết luận
Video: Điều khiển chuyển động với Raspberry Pi và LIS3DHTR, Gia tốc kế 3 trục, Sử dụng Python: 6 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:31
Vẻ đẹp bao quanh chúng ta, nhưng thông thường, chúng ta cần đi dạo trong một khu vườn để biết nó. - Rumi
Là nhóm có học thức như chúng tôi, chúng tôi đầu tư phần lớn năng lượng để làm việc trước máy tính và điện thoại di động. Do đó, chúng ta thường để sức khỏe của mình ở sảnh phụ, không bao giờ thực sự tìm thấy cơ hội lý tưởng để đến phòng tập thể dục hoặc một lớp học thể dục và theo quy luật, chọn đồ ăn nhanh thay vì những lựa chọn có lợi hơn nhiều. Tin vui là cho dù tất cả những gì bạn cần là hỗ trợ ghi chép sổ sách hoặc theo dõi sự thăng tiến của mình, bạn có thể sử dụng sự đổi mới ngày nay để sản xuất một số thiết bị giúp ích cho chính mình.
Công nghệ đang phát triển nhanh chóng. Nhất quán, chúng tôi nắm bắt được luồng gió của một số cải tiến mới sẽ thay đổi thế giới và cách chúng tôi học hỏi trong đó. Khi bạn say mê PC, mã hóa và rô bốt hoặc chỉ thích mày mò, thì có một cơ hội công nghệ dành cho bạn. Raspberry Pi, máy tính Linux vi bảng đơn, được dành riêng để cải thiện cách bạn học bằng công nghệ tiên tiến nhưng cũng là chìa khóa để cải thiện việc học tập trong giáo dục trên toàn thế giới. Vì vậy, những kết quả khả thi mà chúng ta có thể làm là gì nếu chúng ta có Raspberry Pi và Gia tốc kế 3 trục ở gần? Làm thế nào về chúng tôi tìm thấy điều này! Trong tác vụ này, chúng tôi sẽ kiểm tra gia tốc trên 3 trục vuông góc, X, Y và Z bằng cách sử dụng Raspberry Pi và LIS3DHTR, một máy đo gia tốc 3 trục. Vì vậy, chúng ta nên xem trong hành trình này để tạo ra một hệ thống để kiểm tra gia tốc 3 chiều lên hoặc G-Force.
Bước 1: Phần cứng cơ bản mà chúng tôi yêu cầu
Chúng tôi ít gặp vấn đề hơn vì chúng tôi có một lượng lớn công việc cần giải quyết. Trong mọi trường hợp, chúng tôi biết việc những người khác tích lũy đúng phần trong thời gian vô tận từ vị trí hữu ích sẽ gặp rắc rối như thế nào và điều đó được bảo vệ khi trả ít sự chú ý đến từng xu. Vì vậy, chúng tôi sẽ giúp bạn. Làm theo phần đi kèm để có được danh sách các bộ phận đầy đủ.
1. Raspberry Pi
Bước đầu tiên là nhận được một bảng Raspberry Pi. Raspberry Pi là một PC chạy hệ điều hành Linux một bo mạch. Chiếc PC nhỏ bé này có sức mạnh tính toán, được sử dụng như một phần của các hoạt động tiện ích và các hoạt động đơn giản như bảng tính, chuẩn bị văn bản, quét web, email và trò chơi.
2. I2C Shield cho Raspberry Pi
Mối quan tâm chính mà Raspberry Pi thực sự không có là cổng I²C. Vì vậy, đầu nối TOUTPI2 I²C cho bạn cảm giác sử dụng Rasp Pi với BẤT KỲ thiết bị I²C nào. Nó có sẵn trên DCUBE Store
3. Gia tốc kế 3 trục, LIS3DHTR
LIS3DH là máy đo gia tốc tuyến tính ba trục hiệu suất cao cực thấp thuộc họ “nano”, với đầu ra tiêu chuẩn giao diện nối tiếp I2C / SPI kỹ thuật số. Chúng tôi đã mua cảm biến này từ DCUBE Store
4. Cáp kết nối
Chúng tôi đã mua lại cáp Kết nối I2C từDCUBE Store
5. Cáp micro USB
Sự hoang mang nhỏ nhất, nhưng nghiêm ngặt nhất về mức độ nhu cầu điện năng là Raspberry Pi! Cách dễ nhất để đối phó là sử dụng cáp Micro USB.
6. Truy cập web là một nhu cầu
INTERNET trẻ em KHÔNG BAO GIỜ ngủ
Liên kết Raspberry Pi của bạn với cáp Ethernet (LAN) và kết nối nó với bộ định tuyến mạng của bạn. Lựa chọn, tìm kiếm đầu nối WiFi và sử dụng một trong các cổng USB để truy cập hệ thống từ xa. Đó là một quyết định nhạy bén, đơn giản, ít và kém chất lượng!
7. Cáp HDMI / Truy cập từ xa
Raspberry Pi có cổng HDMI mà bạn có thể kết nối cụ thể với màn hình hoặc TV bằng cáp HDMI. Tự chọn, bạn có thể sử dụng SSH để kết hợp với Raspberry Pi của mình từ PC Linux hoặc Macintosh từ thiết bị đầu cuối. Tương tự như vậy, PuTTY, một trình giả lập thiết bị đầu cuối mã nguồn mở và miễn phí có vẻ như là một sự thay thế phù hợp.
Bước 2: Kết nối phần cứng
Làm cho mạch điện theo sơ đồ xuất hiện. Vẽ một sơ đồ và thực hiện chính xác sau khi phác thảo. Trí tưởng tượng quan trọng hơn Kiến thức.
Kết nối giữa Raspberry Pi và I2C Shield
Trên hết, hãy lấy Raspberry Pi và tìm I2C Shield trên đó. Nhấn nhẹ Shield qua các chân GPIO của Pi và chúng ta đã hoàn thành quá trình này đơn giản như chiếc bánh (xem phần chụp nhanh).
Kết nối của Cảm biến và Raspberry Pi
Mang theo cảm biến và giao diện Cáp I2C với nó. Để có hoạt động thích hợp của Cáp này, vui lòng nhớ lại Đầu ra I2C LUÔN liên kết với Đầu vào I2C. Điều tương tự cũng phải được thực hiện đối với Raspberry Pi với tấm chắn I2C được gắn trên các chân GPIO.
Chúng tôi xác nhận việc sử dụng cáp I2C vì nó phủ nhận sự cần thiết của việc kiểm tra sơ đồ chân, dây buộc và sự khó chịu do ngay cả việc vặn nhỏ nhất mang lại. Với phần đính kèm cơ bản và cáp chơi này, bạn có thể trình bày, hoán đổi các tiện ích hoặc thêm nhiều tiện ích hơn vào ứng dụng một cách hiệu quả. Điều này tạo điều kiện cho khối lượng công việc tăng lên mức đáng kể.
Lưu ý: Dây màu nâu phải tuân theo kết nối Nối đất (GND) đáng tin cậy giữa đầu ra của một thiết bị và đầu vào của thiết bị khác
Mạng web là chìa khóa
Để nỗ lực của chúng tôi giành được chiến thắng, chúng tôi yêu cầu một liên kết Internet cho Raspberry Pi của chúng tôi. Đối với điều này, bạn có các lựa chọn như kết nối kết nối cáp Ethernet (LAN) với mạng gia đình. Hơn nữa, như một giải pháp thay thế, nếu có thể, một khóa học phù hợp là sử dụng đầu nối USB WiFi. Theo quy tắc cho điều này, bạn yêu cầu một trình điều khiển để làm cho nó hoạt động. Vì vậy, hãy nghiêng về phía có Linux trong mô tả.
Nguồn cấp
Cắm cáp Micro USB vào giắc cắm nguồn của Raspberry Pi. Punch up và chúng tôi đã sẵn sàng.
Kết nối với màn hình
Chúng tôi có thể kết hợp cáp HDMI với một màn hình khác. Trong một số trường hợp, bạn phải truy cập Raspberry Pi mà không kết nối nó với màn hình hoặc bạn có thể cần xem một số dữ liệu từ nó từ một nơi khác. Có thể hình dung, có những cách tiếp cận sáng tạo và hiểu biết về tài chính để làm như vậy. Một trong số đó là sử dụng -SSH (đăng nhập bằng dòng lệnh từ xa). Bạn cũng có thể sử dụng phần mềm PUTTY cho việc đó. Đây là dành cho người dùng nâng cao. Vì vậy, các chi tiết không được bao gồm ở đây.
Bước 3: Mã hóa Python cho Raspberry Pi
Mã Python cho Cảm biến Raspberry Pi và LIS3DHTR có thể truy cập được trong GithubRepository của chúng tôi.
Trước khi tiếp tục mã, hãy đảm bảo bạn đã đọc các quy tắc được đưa ra trong kho lưu trữ Readme và thiết lập Raspberry Pi của bạn theo nó. Nó sẽ chỉ cần nghỉ ngơi trong giây lát để làm tất cả những việc được xem xét.
Gia tốc kế là một tiện ích cơ điện sẽ đo lực gia tốc. Những sức mạnh này có thể là tĩnh, tương tự như lực hấp dẫn không đổi kéo dưới chân bạn, hoặc chúng có thể thay đổi được - được tạo ra bằng cách di chuyển hoặc rung động gia tốc kế.
Đi kèm là mã python và bạn có thể sao chép và điều chỉnh mã theo bất kỳ cách nào bạn nghiêng về phía trước.
# Được phân phối với 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. # LIS3DHTR # Mã này được thiết kế để hoạt động với Mô-đun nhỏ LIS3DHTR_I2CS I2C có sẵn từ dcubestore.com # https://dcubestore.com/product/lis3dhtr-3-axis-accelerometer-digital-output-motion-sensor-i%C2 % B2c-mini-mô-đun /
nhập khẩu smbus
thời gian nhập khẩu
# Nhận xe buýt I2C
bus = smbus. SMBus (1)
Địa chỉ # LIS3DHTR, 0x18 (24)
# Chọn thanh ghi điều khiển1, 0x20 (32) # 0x27 (39) Chế độ BẬT nguồn, Chọn tốc độ dữ liệu = 10 Hz # X, Y, Z-Axis đã bật bus.write_byte_data (0x18, 0x20, 0x27) # Địa chỉ LIS3DHTR, 0x18 (24) # Chọn thanh ghi điều khiển4, 0x23 (35) # 0x00 (00) Cập nhật liên tục, Lựa chọn toàn quy mô = +/- 2G bus.write_byte_data (0x18, 0x23, 0x00)
time.sleep (0,5)
Địa chỉ # LIS3DHTR, 0x18 (24)
# Đọc lại dữ liệu từ 0x28 (40), 2 byte # X-Axis LSB, X-Axis MSB data0 = bus.read_byte_data (0x18, 0x28) data1 = bus.read_byte_data (0x18, 0x29)
# Chuyển đổi dữ liệu
xAccl = data1 * 256 + data0 nếu xAccl> 32767: xAccl - = 65536
Địa chỉ # LIS3DHTR, 0x18 (24)
# Đọc lại dữ liệu từ 0x2A (42), 2 byte # Y-Axis LSB, Y-Axis MSB data0 = bus.read_byte_data (0x18, 0x2A) data1 = bus.read_byte_data (0x18, 0x2B)
# Chuyển đổi dữ liệu
yAccl = data1 * 256 + data0 nếu yAccl> 32767: yAccl - = 65536
Địa chỉ # LIS3DHTR, 0x18 (24)
# Đọc lại dữ liệu từ 0x2C (44), 2 byte # Z-Axis LSB, Z-Axis MSB data0 = bus.read_byte_data (0x18, 0x2C) data1 = bus.read_byte_data (0x18, 0x2D)
# Chuyển đổi dữ liệu
zAccl = data1 * 256 + data0 nếu zAccl> 32767: zAccl - = 65536
# Xuất dữ liệu ra màn hình
print "Acceleration in X-Axis:% d"% xAccl print "Acceleration in Y-Axis:% d"% yAccl print "Acceleration in Z-Axis:% d"% zAccl
Bước 4: Tính khả thi của mã
Tải xuống (hoặc git pull) mã từ Github và mở nó trong Raspberry Pi.
Chạy các lệnh để Biên dịch và Tải lên mã trong thiết bị đầu cuối và xem năng suất trên Màn hình. Sau một vài phút, nó sẽ hiển thị từng thông số một. Do đó, để đảm bảo rằng mọi thứ hoạt động dễ dàng, bạn có thể thực hiện điều này để thực hiện một cam kết đáng chú ý hơn.
Bước 5: Ứng dụng và tính năng
Được sản xuất bởi STMicroelectronics, LIS3DHTR có các thang đo đầy đủ có thể lựa chọn của người dùng linh hoạt là ± 2g / ± 4g / ± 8g / ± 16g và nó có khả năng đo gia tốc với tốc độ dữ liệu đầu ra từ 1Hz đến 5kHz. LIS3DHTR thích hợp cho các chức năng kích hoạt Chuyển động và Phát hiện rơi tự do. Nó định lượng Gia tốc tĩnh của Trọng lực trong các Ứng dụng Phát hiện Nghiêng và ngoài ra Tăng tốc Động sắp ra mắt do Chuyển động hoặc Sốc. Các ứng dụng khác bao gồm như Nhận dạng lần nhấp / nhấp đúp, Tiết kiệm điện thông minh cho thiết bị cầm tay, Máy đếm bước đi, Định hướng hiển thị, Thiết bị đầu vào trò chơi và thực tế ảo, Nhận dạng tác động và ghi nhật ký và giám sát và đền bù rung động.
Bước 6: Kết luận
Tin tưởng rằng việc thực hiện này sẽ thúc đẩy thử nghiệm sâu hơn. Cảm biến I2C này có khả năng thích ứng phi thường, khiêm tốn và sẵn có. Vì nó là một khuôn khổ vô thường ở mức độ tuyệt vời, có những cách thú vị để bạn có thể mở rộng nhiệm vụ này và nâng cao nó thậm chí.
Ví dụ: Bạn có thể bắt đầu với ý tưởng về Máy đếm bước chân sử dụng LIS3DHTR và Raspberry Pi. Trong nhiệm vụ trên, chúng tôi đã sử dụng các phép tính cơ bản. Gia tốc có thể là thông số liên quan để phân tích quyết định đi bộ. Bạn có thể kiểm tra ba thành phần của chuyển động cho một cá nhân là phía trước (cuộn, X), bên (cao độ, Y) và dọc (trục yaw, Z). Một mẫu điển hình của cả 3 trục được ghi lại. Ít nhất 1 trục sẽ có giá trị gia tốc tuần hoàn tương đối lớn. Vì vậy, hướng đỉnh và một thuật toán là điều cần thiết. Tính đến các bước Tham số (Bộ lọc kỹ thuật số, Phát hiện đỉnh, Cửa sổ thời gian, v.v.) của thuật toán này, bạn có thể nhận ra và đếm các bước, cũng như đo khoảng cách, tốc độ và lượng calo đã đốt cháy ở một mức độ nào đó. Vì vậy, bạn có thể sử dụng cảm biến này theo nhiều cách khác nhau mà bạn có thể cân nhắc. Chúng tôi tin tưởng tất cả các bạn thích nó! Chúng tôi sẽ cố gắng thực hiện một phiên bản hoạt động của máy đếm bước chân này sớm hơn là muộn hơn, cấu hình, mã, phần tính toán các phương tiện để tách biệt việc đi bộ và chạy và lượng calo bị đốt cháy.
Để giúp bạn an ủi, chúng tôi có một video hấp dẫn trên YouTube có thể hỗ trợ việc kiểm tra của bạn. Tin tưởng vào liên doanh này thúc đẩy sự khám phá sâu hơn. Tiếp tục nghiền ngẫm! Hãy nhớ chăm sóc sau vì nhiều hơn nữa sẽ liên tục xuất hiện.
Đề xuất:
Cách điều khiển động cơ bánh răng DC bằng cách sử dụng bộ điều khiển tốc độ điện tử có chải 160A và bộ thử Servo: 3 bước
Cách điều khiển động cơ bánh răng DC bằng cách sử dụng bộ điều khiển tốc độ điện tử chải 160A và bộ thử Servo: Đặc điểm kỹ thuật: Điện áp: 2-3S Lipo hoặc 6-9 NiMH Dòng liên tục: 35A Dòng nổ: 160A BEC: 5V / 1A, chế độ tuyến tính Các chế độ: 1. chuyển tiếp & đảo ngược; 2. chuyển tiếp &phanh; 3. chuyển tiếp & phanh & ngược lại Trọng lượng: 34g Kích thước: 42 * 28 * 17mm
Gia tốc kế 3 trục, ADXL345 với Raspberry Pi sử dụng Python: 6 bước
Gia tốc kế 3 trục, ADXL345 Với Raspberry Pi Sử dụng Python: Suy nghĩ về một tiện ích có thể kiểm tra điểm mà Offroader của bạn nghiêng về phía tồn tại. Sẽ không phải là một điều dễ chịu trong trường hợp ai đó được điều chỉnh khi có khả năng bị lật? Chắc chắn đúng. Nó sẽ là thật
ESP8266 RGB LED STRIP Điều khiển WIFI - NODEMCU làm điều khiển từ xa hồng ngoại cho dải đèn Led được điều khiển qua Wi-Fi - Điều khiển điện thoại thông minh RGB LED STRIP: 4 bước
ESP8266 RGB LED STRIP Điều khiển WIFI | NODEMCU làm điều khiển từ xa hồng ngoại cho dải đèn Led được điều khiển qua Wi-Fi | Điều khiển bằng điện thoại thông minh RGB LED STRIP: Xin chào các bạn trong hướng dẫn này, chúng ta sẽ học cách sử dụng gật đầu hoặc esp8266 làm điều khiển từ xa IR để điều khiển dải LED RGB và Nodemcu sẽ được điều khiển bằng điện thoại thông minh qua wifi. Vì vậy, về cơ bản bạn có thể điều khiển DÂY CHUYỀN LED RGB bằng điện thoại thông minh của mình
Cách điều khiển Động cơ DC không chổi than Drone Quadcopter (Loại 3 dây) bằng cách sử dụng Bộ điều khiển tốc độ động cơ HW30A và Arduino UNO: 5 bước
Cách điều khiển Động cơ DC không chổi than Drone Quadcopter (Loại 3 dây) bằng cách sử dụng Bộ điều khiển tốc độ động cơ HW30A và Arduino UNO: Mô tả: Bộ điều khiển tốc độ động cơ HW30A có thể được sử dụng với pin 4-10 NiMH / NiCd hoặc 2-3 cell LiPo. BEC hoạt động với tối đa 3 ô LiPo. Nó có thể được sử dụng để điều khiển tốc độ của động cơ DC không chổi than (3 dây) với tối đa lên đến 12Vdc
Arduino Nano và Visuino: Chuyển đổi gia tốc thành góc từ cảm biến gia tốc và con quay hồi chuyển MPU6050 I2C: 8 bước (có hình ảnh)
Arduino Nano và Visuino: Chuyển đổi gia tốc thành góc từ cảm biến gia tốc kế và con quay hồi chuyển MPU6050 I2C: Một thời gian trước, tôi đã đăng một hướng dẫn về cách bạn có thể kết nối Cảm biến gia tốc, con quay hồi chuyển và la bàn MPU9250 với Arduino Nano và lập trình nó với Visuino để gửi dữ liệu gói và hiển thị nó trên Phạm vi và Dụng cụ trực quan. Gia tốc kế gửi X, Y,