Mục lục:

Raspberry Pi Impact Force Monitor !: 16 bước (có hình ảnh)
Raspberry Pi Impact Force Monitor !: 16 bước (có hình ảnh)

Video: Raspberry Pi Impact Force Monitor !: 16 bước (có hình ảnh)

Video: Raspberry Pi Impact Force Monitor !: 16 bước (có hình ảnh)
Video: Trải nghiệm sau 1 tuần sử dụng Mini PC 50$: Raspberry Pi 4B 2024, Tháng mười một
Anonim
Image
Image
cách đọc được đề nghị
cách đọc được đề nghị

Cơ thể con người có thể chịu được bao nhiêu tác động? Cho dù đó là bóng đá, leo núi hay tai nạn xe đạp, biết khi nào cần đến cơ sở y tế ngay lập tức sau khi va chạm là vô cùng quan trọng, đặc biệt nếu không có dấu hiệu chấn thương rõ ràng. Hướng dẫn này sẽ dạy bạn cách xây dựng màn hình lực tác động của riêng bạn!

Thời gian đọc: ~ 15 phút

Thời gian xây dựng: ~ 60-90 phút

Dự án mã nguồn mở này sử dụng Raspberry Pi Zero W và gia tốc kế LIS331 để theo dõi và cảnh báo người dùng về các lực G tiềm ẩn nguy hiểm. Tất nhiên, hãy thoải mái sửa đổi và điều chỉnh hệ thống cho phù hợp với các nhu cầu khoa học công dân khác nhau của bạn.

Lưu ý: Xây dựng nội dung thú vị với Impact Force Monitor! Tuy nhiên, vui lòng không sử dụng nó để thay thế cho lời khuyên và chẩn đoán y tế chuyên nghiệp. Nếu bạn cảm thấy mình bị ngã nghiêm trọng, hãy đến gặp bác sĩ chuyên khoa có trình độ và được cấp phép để được điều trị thích hợp.

Bước 1: Đọc đề xuất

Để giữ cho hướng dẫn này ngắn gọn và dễ hiểu (càng tốt càng tốt), tôi giả sử bạn đang bắt đầu với một chiếc Pi Zero W. Bạn cần trợ giúp? Không vấn đề gì! Đây là hướng dẫn thiết lập đầy đủ.

Chúng tôi cũng sẽ kết nối với Pi từ xa (hay còn gọi là không dây). Để có cái nhìn tổng quan kỹ lưỡng hơn về quy trình này, hãy xem hướng dẫn này.

** Bế tắc hoặc muốn tìm hiểu thêm? Dưới đây là một số tài nguyên hữu ích: **

1. Hướng dẫn "Bắt đầu" tuyệt vời cho Pi.

2. Hướng dẫn kết nối đầy đủ cho bảng đột phá gia tốc kế LIS331.

3. Thông tin thêm về gia tốc kế!

4. Tổng quan về các chân GPIO của Raspberry Pi.

5. Sử dụng các bus nối tiếp SPI và I2C trên Pi.

6. Biểu dữ liệu LIS331

Bước 2: Vật liệu

Vật liệu
Vật liệu
Vật liệu
Vật liệu
  • Bộ cơ bản Raspberry Pi Zero W

    • Bộ này bao gồm những thứ sau: Thẻ SD với Hệ điều hành NOOBS; Cáp USB OTG (microUSB sang USB cái); Mini HDMI sang HDMI; Nguồn cung cấp MicroUSB (~ 5V)
    • Cũng được đề xuất: Bộ chia USB
  • Raspberry Pi 3 Header Pins
  • Bảng đột phá gia tốc kế LIS331
  • Bộ pin với đầu nối MicroUSB
  • Đèn LED đỏ 5mm
  • Điện trở 1k
  • 6 "Ống co nhiệt hoặc băng dính điện
  • Chân tiêu đề cho gia tốc kế (4 - 8) và đèn LED (2)
  • Dây nhảy từ nữ sang nữ (6)

Công cụ

  • Sắt hàn & phụ kiện
  • Epoxy (hoặc chất kết dính lỏng vĩnh cửu, không dẫn điện khác)
  • Chắc cũng là kéo:)

Bước 3: Nhưng Chờ đã! Lực lượng tác động là gì?

May mắn thay, thuật ngữ "lực tác động" khá đơn giản: lượng lực trong một tác động. Giống như hầu hết mọi thứ, việc đo lường nó đòi hỏi một định nghĩa chính xác hơn. Phương trình của lực va chạm là:

F = KE / d

trong đó F là lực tác động, KE là động năng (năng lượng của chuyển động), và d là khoảng cách va chạm hoặc vật thể bị vỡ vụn bao nhiêu. Có hai điểm rút ra chính từ phương trình này:

1. Lực va chạm tỉ lệ thuận với động năng, nghĩa là lực va chạm tăng nếu động năng tăng.

2. Lực tác động tỷ lệ nghịch với khoảng cách tác động, nghĩa là lực tác động giảm nếu khoảng cách tác động tăng lên. (Đây là lý do tại sao chúng tôi có túi khí: để tăng khoảng cách tác động của chúng tôi.)

Lực thường được đo bằng Newton (N), nhưng lực tác động có thể được thảo luận dưới dạng "Lực G", một số được biểu thị bằng bội số của g, hoặc gia tốc trọng trường của trái đất (9,8 m / s ^ 2). Khi chúng ta sử dụng các đơn vị của lực G, chúng ta đang đo gia tốc của vật thể so với khi rơi tự do về phía trái đất.

Về mặt kỹ thuật, g là gia tốc, không phải là lực, nhưng nó rất hữu ích khi nói về va chạm vì gia tốc * là thứ gây hại cho cơ thể con người.

Đối với dự án này, chúng tôi sẽ sử dụng đơn vị lực G để xác định xem tác động có tiềm ẩn nguy hiểm và đáng được chăm sóc y tế hay không. Nghiên cứu đã phát hiện ra rằng lực g trên 9G có thể gây tử vong cho hầu hết con người (nếu không được đào tạo đặc biệt) và 4-6G có thể nguy hiểm nếu duy trì trong hơn một vài giây.

Biết được điều này, chúng ta có thể lập trình theo dõi lực tác động của mình để cảnh báo nếu gia tốc kế của chúng ta đo được lực G trên một trong hai ngưỡng này. Hoan hô khoa học!

Để biết thêm thông tin, hãy đọc về lực tác động và lực g trên Wikipedia!

Gia tốc là sự thay đổi về tốc độ và / hoặc hướng

Bước 4: Định cấu hình Pi Zero W

Định cấu hình Pi Zero W
Định cấu hình Pi Zero W

Tập hợp Raspberry Pi Zero và các thiết bị ngoại vi của bạn để định cấu hình Pi trở nên không đầu!

  • Kết nối Pi với màn hình và các thiết bị ngoại vi liên quan (bàn phím, chuột), cắm nguồn điện và đăng nhập.
  • Cập nhật phần mềm để giữ cho Pi của bạn nhanh chóng và an toàn. Mở cửa sổ dòng lệnh và nhập các lệnh sau:

    Nhập và nhập:

sudo apt-get cập nhật

Nhập và nhập:

sudo apt-get nâng cấp

Cài lại:

sudo shutdown -r now

Bước 5: Bật WiFi & I2C

Bật WiFi & I2C
Bật WiFi & I2C
Bật WiFi & I2C
Bật WiFi & I2C
Bật WiFi & I2C
Bật WiFi & I2C
  • Nhấp vào biểu tượng WiFi ở góc trên bên phải của màn hình và kết nối với mạng WiFi của bạn.
  • Trong terminal, nhập lệnh này để hiển thị Công cụ cấu hình phần mềm của Pi:

sudo raspi-config

  • Chọn “Tùy chọn giao diện”, sau đó chọn “SSH” và chọn “Có” ở dưới cùng để bật.
  • Quay lại “Tùy chọn giao diện”, sau đó “I2C” và chọn “Có” để bật.
  • Trong thiết bị đầu cuối, cài đặt phần mềm kết nối máy tính từ xa:

sudo apt-get install xrdp

  • Nhập ‘Y’ (có) trên bàn phím của bạn cho cả hai lời nhắc.
  • Tìm địa chỉ IP của Pi bằng cách di chuột qua kết nối WiFi (bạn cũng có thể muốn ghi nó ra giấy).
  • Thay đổi mật khẩu của Pi bằng lệnh passwd.

Bước 6: Khởi động lại Pi và đăng nhập từ xa

Khởi động lại Pi và đăng nhập từ xa
Khởi động lại Pi và đăng nhập từ xa

Bây giờ chúng ta có thể loại bỏ HDMI và các thiết bị ngoại vi, thật tuyệt!

  • Thiết lập kết nối máy tính từ xa.

    • Trên PC, mở Kết nối Máy tính Từ xa (hoặc PuTTY nếu bạn cảm thấy hài lòng với điều đó).
    • Đối với Mac / Linux, bạn có thể cài đặt chương trình này hoặc sử dụng chương trình VNC.
  • Nhập IP cho Pi và nhấp vào “Kết nối” (Bỏ qua cảnh báo về thiết bị không xác định).
  • Đăng nhập vào Pi bằng thông tin đăng nhập của bạn và bắt đầu!

Bước 7: Xây dựng nó: Điện tử

Xây dựng nó: Điện tử!
Xây dựng nó: Điện tử!
Xây dựng nó: Điện tử!
Xây dựng nó: Điện tử!

Hai bức ảnh trên cho thấy sơ đồ điện của dự án này và Pi Zero Pinout. Chúng tôi sẽ cần cả hai để giải quyết các kết nối phần cứng.

Lưu ý: Bảng đột phá LIS331 trong sơ đồ là phiên bản cũ hơn - sử dụng các nhãn ghim để được hướng dẫn

Bước 8: Kết nối Gia tốc kế với GPIO của Pi

Kết nối Gia tốc kế với GPIO của Pi
Kết nối Gia tốc kế với GPIO của Pi
Kết nối Gia tốc kế với GPIO của Pi
Kết nối Gia tốc kế với GPIO của Pi
Kết nối Gia tốc kế với GPIO của Pi
Kết nối Gia tốc kế với GPIO của Pi
  • Hàn và loại bỏ cẩn thận bất kỳ dư lượng thông lượng nào trên gia tốc kế và các chân tiêu đề của Pi GPIO.
  • Sau đó kết nối dây jumper giữa bảng đột phá LIS331 và Pi giữa các chân sau:

Bảng đột phá LIS331 Pin GPIO Raspberry Pi

GND GPIO 9 (GND)

VCC GPIO 1 (3.3V)

SDA GPIO 3 (SDA)

SCL GPIO 5 (SCL)

Để giúp kết nối cảm biến với Pi Zero dễ dàng hơn, một bộ điều hợp tùy chỉnh đã được tạo ra bằng cách sử dụng đầu cắm cái và dây jumper. Co nhiệt đã được thêm vào sau khi kiểm tra các kết nối

Bước 9: Thêm đèn LED cảnh báo

Thêm đèn LED cảnh báo!
Thêm đèn LED cảnh báo!
Thêm đèn LED cảnh báo!
Thêm đèn LED cảnh báo!
Thêm đèn LED cảnh báo!
Thêm đèn LED cảnh báo!
Thêm đèn LED cảnh báo!
Thêm đèn LED cảnh báo!
  • Hàn điện trở hạn chế dòng điện vào chân LED âm (chân ngắn hơn) và thêm màng bọc co lại (hoặc băng dính điện) để cách điện.
  • Sử dụng hai cáp jumper hoặc chân tiêu đề để kết nối chân LED dương với GPIO26 và điện trở với GND (vị trí tiêu đề 37 và 39 tương ứng).
  • Kết nối bộ pin với nguồn điện đầu vào của Pi để hoàn tất thiết lập!

Bước 10: Lập trình nó

Lập trình nó!
Lập trình nó!

Mã Python cho dự án này là mã nguồn mở! Đây là liên kết đến kho lưu trữ GitHub.

Đối với những người mới lập trình:

Đọc qua mã chương trình và nhận xét. Những thứ dễ sửa đổi nằm trong phần "Thông số người dùng" ở trên cùng

Đối với người dân thoải mái hơn với kỹ thuật ‘Deets:

Chương trình này khởi chạy gia tốc kế LIS331 với các cài đặt mặc định, bao gồm chế độ nguồn bình thường và tốc độ dữ liệu 50Hz. Đọc qua biểu dữ liệu LIS331 và sửa đổi cài đặt khởi tạo như mong muốn

Tất cả các

  • Quy mô gia tốc tối đa được sử dụng trong dự án này là 24G, bởi vì lực tác động trở nên rất nhanh chóng!
  • Bạn nên nhận xét các câu lệnh in tăng tốc trong chức năng chính khi bạn đã sẵn sàng triển khai đầy đủ.

Trước khi bạn chạy chương trình, hãy kiểm tra kỹ xem địa chỉ gia tốc kế có phải là 0x19 không. Mở cửa sổ đầu cuối và cài đặt một số công cụ hữu ích bằng lệnh này:

sudo apt-get install -y i2c-tools

Sau đó chạy chương trình i2cdetect:

i2cdetect -y 1

Bạn sẽ thấy một bảng địa chỉ I2C được hiển thị như trong hình trên. Giả sử đây là thiết bị I2C duy nhất được kết nối, số bạn thấy (trong trường hợp này là: 19) là địa chỉ gia tốc kế! Nếu bạn thấy một số khác, hãy lưu ý và thay đổi trong chương trình (biến addr).

Bước 11: Tổng quan nhanh về chương trình

Tổng quan nhanh về chương trình
Tổng quan nhanh về chương trình

Chương trình đọc gia tốc x, y và z, tính toán lực g, sau đó lưu dữ liệu vào hai tệp (trong cùng thư mục với mã chương trình) nếu thích hợp:

  • AllSensorData.txt - cung cấp dấu thời gian theo sau là lực g trong các trục x, y và z.
  • AlertData.txt - tương tự như trên nhưng chỉ dành cho các kết quả đọc trên ngưỡng an toàn của chúng tôi (ngưỡng tuyệt đối là 9G hoặc 4G trong hơn 3 giây).

Lực G trên ngưỡng an toàn của chúng tôi cũng sẽ bật đèn LED cảnh báo và giữ cho đèn này sáng cho đến khi chúng tôi khởi động lại chương trình. Dừng chương trình bằng cách gõ “CTRL + c” (ngắt bàn phím) trong cửa sổ lệnh.

Ảnh trên cho thấy cả hai tệp dữ liệu được tạo trong quá trình thử nghiệm.

Bước 12: Kiểm tra hệ thống

Kiểm tra hệ thống!
Kiểm tra hệ thống!
Kiểm tra hệ thống!
Kiểm tra hệ thống!

Mở cửa sổ đầu cuối, điều hướng đến thư mục bạn đã lưu mã chương trình bằng lệnh cd.

đường dẫn cd / đến / thư mục

Chạy chương trình bằng quyền root:

sudo python NameOfFile.py

Kiểm tra xem các giá trị gia tốc theo hướng x, y và z đang in ra cửa sổ đầu cuối có hợp lý không và bật đèn LED nếu lực g nằm trên ngưỡng của chúng ta.

  • Để kiểm tra, xoay gia tốc kế để mỗi trục hướng về phía trái đất và kiểm tra xem các giá trị đo được là 1 hoặc -1 (tương ứng với gia tốc do trọng lực).
  • Lắc gia tốc kế để đảm bảo số đọc tăng lên (dấu hiệu cho biết hướng của trục, chúng tôi quan tâm nhất đến độ lớn của số đọc).

Bước 13: Kết nối điện an toàn và cài đặt nó

Kết nối điện an toàn & cài đặt nó!
Kết nối điện an toàn & cài đặt nó!

Sau khi mọi thứ hoạt động bình thường, hãy đảm bảo rằng màn hình lực tác động thực sự có thể chịu được va đập!

  • Sử dụng ống co nhiệt và / hoặc phủ epoxy lên các kết nối điện của máy đo gia tốc và đèn LED.
  • Đối với các lắp đặt siêu bền, lâu dài, hãy xem xét phủ epoxy toàn bộ khung: Pi Zero, đèn LED và máy đo gia tốc (nhưng KHÔNG phải đầu nối cáp Pi hoặc thẻ SD).

    Cảnh báo! Bạn vẫn có thể truy cập Pi và thực hiện tất cả các nội dung trên máy tính, nhưng một lớp sơn epoxy đầy đủ sẽ ngăn việc sử dụng các chân GPIO cho các dự án trong tương lai. Ngoài ra, bạn có thể tạo hoặc mua một vỏ tùy chỉnh cho Pi Zero, mặc dù hãy kiểm tra độ bền

Đảm bảo an toàn cho mũ bảo hiểm, người của bạn hoặc phương tiện giao thông như ván trượt, xe đạp hoặc mèo * của bạn!

Kiểm tra đầy đủ xem Pi có được gắn chặt hay không hoặc các chân GPIO có thể bị lỏng khiến chương trình gặp sự cố.

* Lưu ý: Ban đầu tôi có ý định nhập "ô tô", nhưng hình dung màn hình lực tác động cho mèo cũng có thể mang lại một số dữ liệu thú vị (tất nhiên là có sự đồng ý của mèo con).

Bước 14: Nhúng mạch vào mũ bảo hiểm

Nhúng mạch vào mũ bảo hiểm
Nhúng mạch vào mũ bảo hiểm
Nhúng mạch vào mũ bảo hiểm
Nhúng mạch vào mũ bảo hiểm
Nhúng mạch vào mũ bảo hiểm
Nhúng mạch vào mũ bảo hiểm

Có một số phương pháp nhúng mạch điện vào mũ bảo hiểm. Đây là cách tiếp cận của tôi để lắp mũ bảo hiểm:

  • Nếu bạn chưa kết nối, hãy kết nối pin với Pi (khi pin đã tắt). Cố định gia tốc kế vào mặt sau của Pi bằng vật liệu cách nhiệt không dẫn điện ở giữa (như bọc bong bóng hoặc xốp đóng gói mỏng).
  • Đo kích thước của kết hợp Pi Zero, gia tốc kế, đèn LED và đầu nối pin. Thêm 10% ở hai bên.
  • Vẽ một hình cắt cho dự án ở một bên của mũ bảo hiểm, với đầu nối pin hướng về phía trên cùng của mũ bảo hiểm. Cắt bỏ phần đệm trong mũ bảo hiểm để lại một vài mm (~ 1/8 in.).
  • Đặt cảm biến, Pi và đèn LED vào phần cắt. Cắt các miếng đệm mũ bảo hiểm thừa hoặc sử dụng xốp đóng gói để cách nhiệt, bảo vệ và giữ các thiết bị điện tử tại chỗ.
  • Đo kích thước của pin, thêm 10% và theo cùng một phần cắt cho pin. Lắp pin vào túi.
  • Lặp lại kỹ thuật cách nhiệt cho pin ở phía bên kia của mũ bảo hiểm.
  • Giữ cố định phần đệm mũ bảo hiểm bằng băng dính (đầu của bạn sẽ giữ nguyên vị trí khi bạn đội nó).

Bước 15: Triển khai

Triển khai!
Triển khai!
Triển khai!
Triển khai!

Tăng sức mạnh cho bộ pin!

Giờ đây, bạn có thể đăng nhập từ xa vào Pi thông qua SSH hoặc máy tính để bàn từ xa và chạy chương trình thông qua thiết bị đầu cuối. Khi chương trình đang chạy, nó bắt đầu ghi dữ liệu.

Khi bạn ngắt kết nối khỏi WiFi tại nhà của mình, kết nối SSH sẽ bị ngắt, nhưng chương trình vẫn sẽ ghi dữ liệu. Cân nhắc kết nối Pi với điểm phát WiFi trên điện thoại thông minh của bạn hoặc chỉ cần đăng nhập lại và lấy dữ liệu khi bạn về nhà.

Để truy cập dữ liệu, hãy đăng nhập từ xa vào Pi và đọc các tệp văn bản. Chương trình hiện tại sẽ luôn nối dữ liệu vào các tệp hiện có - nếu bạn muốn xóa dữ liệu (như trong quá trình thử nghiệm), hãy xóa tệp văn bản (qua màn hình nền hoặc sử dụng lệnh rm trong thiết bị đầu cuối) hoặc tạo tên tệp mới trong chương trình mã (trong Tham số người dùng).

Nếu đèn LED bật, khởi động lại chương trình sẽ tắt nó.

Bây giờ hãy tiếp tục, vui vẻ trong cuộc sống và kiểm tra dữ liệu thường xuyên nếu bạn tình cờ va phải thứ gì đó. Hy vọng rằng đó là một va chạm nhỏ nhưng ít nhất bạn sẽ biết!

Bước 16: Thêm các tính năng khác

Thêm các tính năng khác
Thêm các tính năng khác

Tìm kiếm các cải tiến cho màn hình lực tác động? Nó nằm ngoài phạm vi của hướng dẫn nhưng hãy thử nhìn vào danh sách bên dưới để biết ý tưởng!

Thực hiện một số phân tích về dữ liệu g-force của bạn bằng Python!

Pi Zero có khả năng Bluetooth và WiFi - hãy viết một Ứng dụng để gửi dữ liệu gia tốc kế đến điện thoại thông minh của bạn! Để giúp bạn bắt đầu, đây là hướng dẫn cho Màn hình Pi Twitter.

Thêm các cảm biến khác, như cảm biến nhiệt độ hoặc micrô *!

Tòa nhà hạnh phúc

* Lưu ý: Để nghe những âm thanh vù vù liên quan đến khả năng tăng tốc của bạn!:NS

Đề xuất: