Mục lục:

Theo dõi các biến thể tăng tốc với Raspberry Pi và MMA7455 bằng Python: 6 bước
Theo dõi các biến thể tăng tốc với Raspberry Pi và MMA7455 bằng Python: 6 bước

Video: Theo dõi các biến thể tăng tốc với Raspberry Pi và MMA7455 bằng Python: 6 bước

Video: Theo dõi các biến thể tăng tốc với Raspberry Pi và MMA7455 bằng Python: 6 bước
Video: ADXL335: Raspberry Pi Interfacing with MEMS Sensor - 3 Axis Accelerometer 2024, Tháng mười một
Anonim
Image
Image

Tôi đã không đi, tôi đang kiểm tra lực hấp dẫn. Nó vẫn làm việc…

Một đại diện của một tàu con thoi đang tăng tốc đã làm rõ rằng một đồng hồ ở điểm cao nhất của tàu con thoi sẽ nhanh hơn đồng hồ ở cơ sở vì sự giãn nở thời gian hấp dẫn. Một số cho rằng việc tăng tốc trên tàu con thoi sẽ giống nhau đối với cả hai đồng hồ, vì vậy chúng nên đánh dấu ở cùng một tốc độ. Hãy suy nghĩ về nó.

Suy nghĩ, động lực và thậm chí là kim chỉ nam có thể bắt nguồn từ bất kỳ đâu - tuy nhiên khi bạn tập trung vào sự đổi mới, nó sẽ nhận được sự đóng góp từ những cá nhân tập trung vào điểm đó. Raspberry Pi, PC chạy hệ điều hành Linux mini, bo mạch đơn, cung cấp các cam kết độc đáo và cố vấn bậc thầy về sắp xếp, lập trình và các dự án điện tử. Gần gũi với Raspberry Pi và các nhà sản xuất hướng dẫn thiết bị, chúng tôi có cơ hội lập trình, mày mò và tạo ra những điều đáng kinh ngạc với Khoa học Máy tính và Điện tử. Cuối cùng, chúng tôi đã rất vui khi được chụp một nhiệm vụ bằng cách sử dụng gia tốc kế và những suy nghĩ đằng sau những gì bạn có thể làm với thiết bị này thực sự tuyệt vời. Vì vậy, trong tác vụ này, chúng tôi sẽ kết hợp MMA7455, một cảm biến gia tốc kế kỹ thuật số 3 trục, để đo gia tốc theo 3 chiều, X, Y và Z, với Raspberry Pi bằng Python.

Bước 1: Phần cứng chúng tôi yêu cầu

Phần cứng chúng tôi yêu cầu
Phần cứng chúng tôi yêu cầu
Phần cứng chúng tôi yêu cầu
Phần cứng chúng tôi yêu cầu

Chúng tôi biết có thể rắc rối như thế nào khi cố gắng và thực hiện sau khi không biết phải lấy những bộ phận nào, sắp xếp từ đâu và mọi thứ sẽ tốn bao nhiêu tiền trước. Vì vậy, chúng tôi đã làm tất cả những công việc đó cho bạn. Một khi bạn đã có tất cả các bộ phận bình phương, bạn sẽ thực hiện được nhiệm vụ này trong tích tắc. Thực hiện theo các bước sau để có được một danh sách các bộ phận hoàn chỉnh.

1. Raspberry Pi

Bước đầu tiên là nhận được một bảng Raspberry Pi. Raspberry Pi là một máy tính chạy hệ điều hành Linux. Chiếc PC nhỏ bé này đóng vai trò quan trọng trong việc đăng ký sức mạnh, được sử dụng như một phần của các bài tập điện tử và các hoạt động của PC như bảng tính, xử lý văn bản, lướt web, email và trò chơi. Bạn có thể mua một chiếc ở bất kỳ cửa hàng điện tử hoặc cửa hàng bán đồ theo sở thích nào.

2. I2C Shield cho Raspberry Pi

Mối quan tâm chính mà Raspberry Pi thực sự không có là một cổng I2C. Vì vậy, đầu nối TOUTPI2 I2C cho bạn cảm giác sử dụng Raspberry Pi với BẤT KỲ thiết bị I2C nào. Nó có sẵn trên DCUBE Store

3. Gia tốc kế 3 trục, MMA7455

Được sản xuất bởi Freescale Semiconductor, Inc., Máy đo gia tốc kỹ thuật số 3 trục MMA7455 là công suất thấp, cảm biến được gia công quy mô nhỏ hơn phù hợp để đo gia tốc tăng dọc theo trục X, Y và Z của nó. Chúng tôi nhận được 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

Tuy nhiên, vướng mắc nhỏ nhất về mức độ cần thiết của nguồn điện là Raspberry Pi! Cách tiếp cận được quy định nhiều nhất và ít đòi hỏi nhất để quản lý chiến lược là sử dụng cáp Micro USB. Một con đường chuyên biệt và tiên tiến hơn là cung cấp điện cụ thể bằng các cổng GPIO hoặc USB.

6. Hỗ trợ mạng

Kết hợp Raspberry Pi của bạn với cáp Ethernet (LAN) và kết nối nó với mạng gia đình của bạn. Mặt khác, hãy quét tìm đầu nối WiFi và sử dụng một trong các cổng USB để kết nối mạng từ xa. Đó là một quyết định nhạy bén, cơ bản, ít và đơn giản!

7. Cáp HDMI / Truy cập từ xa

Raspberry Pi có cổng HDMI mà bạn có thể giao tiếp đặc biệt 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 để thiết lập với Raspberry Pi của mình từ PC hoặc Mac chạy Linux 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í nghe có vẻ là một suy nghĩ thông minh.

Bước 2: Kết nối phần cứng

Kết nối phần cứng
Kết nối phần cứng
Kết nối phần cứng
Kết nối phần cứng
Kết nối phần cứng
Kết nối phần cứng

Làm cho mạch như được chỉ ra bởi sơ đồ hiển thị. Trong giản đồ, bạn sẽ thấy các kết nối của các thành phần điện tử khác nhau, dây kết nối, cáp nguồn và cảm biến I2C.

Kết nối Raspberry Pi và I2C Shield

Như một vấn đề quan trọng đầu tiên, hãy lấy Raspberry Pi và tìm I2C Shield trên đó. Nhấn chặt Shield qua các chân GPIO của Pi và chúng ta đã hoàn thành quá trình này dễ dàng như chiếc bánh (xem phần chụp nhanh).

Raspberry Pi và kết nối cảm biến

Mang theo cảm biến và giao diện cáp I2C với nó. Để có hoạt động phù hợp của cáp này, vui lòng xem lại Đầu ra I2C LUÔN có 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 khuyên bạn nên sử dụng cáp I2C vì nó phủ nhận yêu cầu về việc mổ xẻ sơ đồ chân, bảo vệ và làm phiền được thực hiện ngay cả khi lộn xộn nhỏ nhất. Với sự liên kết quan trọng và cáp chơi này, bạn có thể trình bày, hoán đổi các cấu trúc hoặc thêm nhiều tiện ích hơn vào một ứng dụng phù hợp. Điều này hỗ trợ khối lượng công việc lên đến một mức độ lớn.

Lưu ý: Dây màu nâu nên lấy một cách đáng tin cậy sau kết nối Nối đất (GND) giữa đầu ra của một thiết bị và đầu vào của thiết bị khác

Truy cập Internet là chìa khóa

Để nỗ lực giành chiến thắng, chúng tôi yêu cầu kết nối Internet cho Raspberry Pi của mình. Đối với điều này, bạn có các lựa chọn thay thế như giao tiếp kết nối Ethernet (LAN) với mạng gia đình. Ngoài ra, để thay thế, một khóa học thỏa mãn là sử dụng đầu nối USB WiFi. Nói chung đại diện 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 phần 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 nối cáp HDMI với một Màn hình / TV khác. Đôi khi, bạn cần truy cập Raspberry Pi mà không cần kết nối nó với màn hình hoặc bạn có thể cần xem thông tin từ Raspberry Pi từ nơi khác. Có thể, có những cách sáng tạo và thông minh về mặt tài chính để giải quyết mọi việc được cân nhắc. 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 đó.

Bước 3: Mã hóa Python cho Raspberry Pi

Mã hóa Python cho Raspberry Pi
Mã hóa Python cho Raspberry Pi

Bạn có thể xem Mã Python cho Cảm biến Raspberry Pi và MMA7455 trong GithubRepository của chúng tôi.

Trước khi tiếp tục mã, hãy đảm bảo rằng bạn đã đọc các tiêu chuẩn được đưa ra trong biên niên sử Readme và Thiết lập Raspberry Pi của bạn như được chỉ ra bởi nó. Nó chỉ đơn giản là nhẹ nhõm trong một phút để làm trong hoàn cảnh hiện tại.

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 cùng với mã python và bạn có thể sao chép và thay đổi 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. # MMA7455L # Mã này được thiết kế để hoạt động với Mô-đun mini MMA7455L_I2CS I2C có sẵn trên dcubestore.com # https://dcubestore.com/product/mma7455l-3-axis-low-g-digital-output-accelerometer-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ỉ # MMA7455L, 0x1D (16)

# Chọn thanh ghi điều khiển chế độ, 0x16 (22) # 0x01 (01) Chế độ đo, +/- 8g bus.write_byte_data (0x1D, 0x16, 0x01)

time.sleep (0,5)

Địa chỉ # MMA7455L, 0x1D (16)

# Đọc lại dữ liệu từ 0x00 (00), 6 byte # X-Axis LSB, X-Axis MSB, Y-Axis LSB, Y-Axis MSB, Z-Axis LSB, Z-Axis MSB data = bus.read_i2c_block_data (0x1D, 0x00, 6)

# Chuyển đổi dữ liệu thành 10-bit

xAccl = (data [1] & 0x03) * 256 + data [0] nếu xAccl> 511: xAccl - = 1024 yAccl = (data [3] & 0x03) * 256 + data [2] nếu yAccl> 511: yAccl - = 1024 zAccl = (data [5] & 0x03) * 256 + data [4] nếu zAccl> 511: zAccl - = 1024

# 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 thực tiễn của Quy tắc

Tính thực tiễn của Quy tắc
Tính thực tiễn của Quy tắc

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. Để đảm bảo rằng mọi thứ hoạt động dễ dàng, bạn có thể sử dụng việc đi lang thang này mỗi ngày hoặc biến việc đi lang thang này trở thành một phần nhỏ của một nhiệm vụ nổi bật hơn nhiều. Bất kể nhu cầu của bạn là gì, bây giờ bạn có thêm một tiện ích trong cuộc tụ tập của bạn.

Bước 5: Ứng dụng và tính năng

MMA7455, được sản xuất bởi Freescale Semiconductor, một máy đo gia tốc kỹ thuật số 3 trục hiệu suất cao công suất thấp có thể được sử dụng cho các Thay đổi Dữ liệu Cảm biến, Định hướng Sản phẩm và Phát hiện Cử chỉ. Nó hoàn hảo cho các ứng dụng như Điện thoại di động / PMP / PDA: Phát hiện định hướng (Chân dung / Phong cảnh), Ổn định hình ảnh, Cuộn văn bản, Quay số chuyển động, Nhấn để tắt tiếng, Máy tính xách tay: Chống trộm, Chơi game: Phát hiện chuyển động, Tự động đánh thức / Ngủ để Tiêu thụ Điện năng thấp và Máy ảnh Kỹ thuật số: Ổn định Hình ảnh.

Bước 6: Kết luận

Nếu bạn đang dự tính khám phá vũ trụ của các cảm biến Raspberry Pi và I2C, thì bạn có thể gây sốc bằng cách sử dụng các kiến thức cơ bản về phần cứng, mã hóa, sắp xếp, có thẩm quyền, v.v. Khi bạn đang cố gắng sáng tạo hơn trong ít mạo hiểm, nó không bao giờ thiệt hại khi đu theo các nguồn bên ngoài. Trong phương pháp này, có thể có một vài việc lặt vặt có thể đơn giản, trong khi một số việc có thể kiểm tra bạn, khiến bạn cảm động. Trong mọi trường hợp, bạn có thể tạo ra một con đường và hoàn thiện nó bằng cách thay đổi và tạo ra một sự hình thành của bạn.

Ví dụ: Bạn có thể bắt đầu với ý nghĩ về Nguyên mẫu trọng lực để đo Trường hấp dẫn cục bộ của Trái đất với MMA7455 và Raspberry Pi bằng Python. Trong liên doanh trên, chúng tôi đã sử dụng các tính toán cơ bản. Nguyên tắc cơ bản của thiết kế là đo những thay đổi phân số rất nhỏ trong trọng lực 1 g của Trái đất. 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. Thuật toán là để đo tốc độ thay đổi của vectơ trọng lực thẳng đứng theo cả ba hướng vuông góc làm phát sinh một tensor gradient trọng lực. Nó có thể được suy ra bằng cách phân biệt giá trị của lực hấp dẫn tại hai điểm cách nhau một khoảng nhỏ theo phương thẳng đứng, l, và chia cho khoảng cách này. Chúng tôi sẽ cố gắng thực hiện một phiên bản hoạt động của nguyên mẫu này sớm hơn là muộn hơn, cấu hình, mã và mô hình hoạt động để phân tích tiếng ồn và độ rung do cấu trúc gây ra. Chúng tôi tin rằng tất cả các bạn đều thích nó!

Để giúp bạn an ủi, chúng tôi có một video hấp dẫn trên YouTubewhich có thể giúp ích cho việc kiểm tra của bạn. Hãy tin tưởng nỗ lực này sẽ tiếp tục điều tra thêm. Nếu cơ hội không gõ cửa, hãy xây dựng một cánh cửa.

Đề xuất: