ST X - logoUM2275
Hướng dẫn sử dụng

Bắt đầu với thư viện phát hiện ngã thời gian thực MotionFD trong phần mở rộng X-CUBE-MEMS1 cho STM32Cube

Giới thiệu

MotionEC là thành phần thư viện trung gian của phần mềm X-CUBE-MEMS1 và chạy trên STM3z2. Nó cung cấp thông tin thời gian thực về hướng thiết bị và trạng thái chuyển động dựa trên dữ liệu từ thiết bị.
Nó cung cấp các đầu ra sau: hướng thiết bị (quaternion, góc Euler), độ quay của thiết bị (chức năng con quay hồi chuyển ảo), vectơ trọng trường và gia tốc tuyến tính.
Thư viện này chỉ hoạt động với ST MEMS.
Thuật toán được cung cấp ở định dạng thư viện tĩnh và được thiết kế để sử dụng trên các bộ vi điều khiển STM32 dựa trên kiến ​​trúc ARM® Cortex®-M0+, ARM® Cortex®-M3, ARM® Cortex®-M33, ARM® Cortex®-M4 và ARM® Cortex®-M7.
Nó được xây dựng dựa trên công nghệ phần mềm STM32Cube để dễ dàng di chuyển trên các bộ vi điều khiển STM32 khác nhau.
Phần mềm đi kèm với sampViệc triển khai chạy trên bo mạch mở rộng X-NUCLEO-IKS4A1 hoặc X-NUCLEO-IKS01A3 trên bo mạch phát triển NUCLEO-F401RE, NUCLEO-U575ZI-Q hoặc NUCLEO-L152RE.

Từ viết tắt và chữ viết tắt

Bảng 1. Danh sách các từ viết tắt

Từ viết tắt Sự miêu tả
Giao diện lập trình ứng dụng (API) Giao diện lập trình ứng dụng
BSP Gói hỗ trợ hội đồng quản trị
Giao diện người dùng Giao diện người dùng đồ họa
HAL Lớp trừu tượng phần cứng
Ý TƯỞNG Môi trường phát triển tích hợp

Thư viện phần mềm trung gian MotionFD trong phần mở rộng phần mềm X-CUBE-MEMS1 cho STM32Cube

2.1 MotionFD quaview
Thư viện MotionFD mở rộng chức năng của phần mềm X-CUBE-MEMS1.
Thư viện thu thập dữ liệu từ máy đo gia tốc và cảm biến áp suất và cung cấp thông tin về sự kiện người dùng ngã dựa trên dữ liệu từ thiết bị.
Thư viện được thiết kế chỉ dành cho ST MEMS. Chức năng và hiệu suất khi sử dụng các cảm biến MEMS khác không được phân tích và có thể khác biệt đáng kể so với những gì được mô tả trong tài liệu.
SampViệc triển khai có sẵn cho bo mạch mở rộng X-NUCLEO-IKS4A1 và X-NUCLEO-IKS01A3, được gắn trên bo mạch phát triển NUCLEO-F401RE, NUCLEO-U575ZI-Q hoặc NUCLEO-L152RE.
2.2 Thư viện MotionFD
Thông tin kỹ thuật mô tả đầy đủ các chức năng và tham số của API MotionFD có thể được tìm thấy trong tệp HTML được biên dịch MotionFD_Package.chm file nằm trong thư mục Tài liệu.
2.2.1 Mô tả thư viện MotionFD
Thư viện phát hiện té ngã MotionFD quản lý dữ liệu thu được từ cảm biến gia tốc và cảm biến áp suất; thư viện này có các tính năng:

  • khả năng phân biệt xem người dùng có ngã hay không
  • nhận dạng chỉ dựa trên dữ liệu cảm biến gia tốc và áp suất
  • dữ liệu cảm biến áp suất và gia tốc kế cần thiếtamptần số dao động là 25 Hz
  • Yêu cầu về nguồn lực:
    – Cortex-M3: 3.6 kB mã và 3.2 kB bộ nhớ dữ liệu
    – Cortex-M33: 3.4 kB mã và 3.2 kB bộ nhớ dữ liệu
    – Cortex-M4: 3.4 kB mã và 3.2 kB bộ nhớ dữ liệu
    – Cortex-M7: 3.4 kB mã và 3.2 kB bộ nhớ dữ liệu
  • có sẵn cho kiến ​​trúc ARM Cortex-M3, ARM Cortex-M33, ARM Cortex-M4 và ARM Cortex-M7

2.2.2 API MotionFD
Các API của thư viện MotionFD là:

  • uint8_t MotionFD_GetLibVersion(char *version)
    – truy xuất phiên bản thư viện
    – *version là một con trỏ tới một mảng gồm 35 ký tự
    – trả về số ký tự trong chuỗi phiên bản
  • khoảng trống MotionFD_Initialize(khoảng trống)
    – thực hiện khởi tạo thư viện MotionFD và thiết lập cơ chế bên trong

Ghi chú: Chức năng này phải được gọi trước khi sử dụng thư viện phát hiện ngã và mô-đun CRC trong vi điều khiển STM32 (trong thanh ghi kích hoạt xung nhịp ngoại vi RCC) phải được bật.

  • void MotionFD_Update (MFD_input_t *data_in, MFD_output_t *data_out)
    – thực hiện thuật toán phát hiện ngã
    – Tham số *data_in là con trỏ tới cấu trúc có dữ liệu đầu vào
    – các tham số cho kiểu cấu trúc MFD_input_t là:
    ◦ AccX là giá trị cảm biến gia tốc theo trục X tính bằng mg
    ◦ AccY là giá trị cảm biến gia tốc theo trục Y tính bằng mg
    ◦ AccZ là giá trị cảm biến gia tốc theo trục Z tính bằng mg
    ◦ Press là giá trị cảm biến áp suất tính bằng hPa
    – Tham số *data_out là con trỏ tới một enum có các mục sau:
    ◦ MFD_KHÔNG_GÌ = 0
    ◦ MFD_FALL = 1
  • void MotionFD_SetKnobs(float ngưỡng rơi, int32_t độ cao rơi, float thời gian nằm)
    – thiết lập các tham số cấu hình thư viện
    – ngưỡng gia tốc fall_threshold tính bằng mg
    – fall_altitude_delta chênh lệch độ cao tính bằng cm
    – thời gian nằm thời gian tính bằng giây không chuyển động sau khi va chạm
  • void MotionFD_GetKnobs(float *fall_threshold, int32_t *fall_altitude_delta, float *lying_time)
    – lấy các tham số cấu hình thư viện
    – ngưỡng gia tốc fall_threshold tính bằng mg
    – fall_altitude_delta chênh lệch độ cao tính bằng cm
    – thời gian nằm thời gian tính bằng giây không chuyển động sau khi va chạm

2.2.3 Biểu đồ luồng API

ST X CUBE MEMS1 Thư viện phát hiện té ngã thời gian thực MotionFD-

2.2.4 Mã demo
Mã trình diễn sau đây đọc dữ liệu từ cảm biến gia tốc và cảm biến áp suất và lấy mã sự kiện ngã.

ST X CUBE MEMS1 Thư viện phát hiện té ngã thời gian thực MotionFD- Mã demo1ST X CUBE MEMS1 Thư viện phát hiện té ngã thời gian thực MotionFD- Mã demo

2.2.5 Hiệu suất thuật toán
Thuật toán phát hiện ngã chỉ sử dụng dữ liệu từ cảm biến gia tốc và áp suất và chạy ở tần số thấp (25 Hz) để giảm mức tiêu thụ điện năng.

ST X CUBE MEMS1 Thư viện phát hiện té ngã thời gian thực MotionFD- Thuật toán thời gian trôi qua

2.3 giâyampứng dụng le
Phần mềm trung gian MotionFD có thể dễ dàng được thao tác để xây dựng các ứng dụng người dùng; nhưamptập tin ứng dụng được cung cấp trong thư mục Ứng dụng.
Nó được thiết kế để chạy trên bo mạch phát triển NUCLEO-F401RE, NUCLEO-U575ZI-Q hoặc NUCLEO-L152RE được kết nối với bo mạch mở rộng X-NUCLEO-IKS4A1 hoặc X-NUCLEO-IKS01A3.
Ứng dụng này nhận diện sự kiện người dùng ngã theo thời gian thực.

ST X CUBE MEMS1 MotionFD Thư viện phát hiện té ngã thời gian thực - jumper

Hình trên cho thấy nút người dùng B1 và ​​ba đèn LED của bo mạch NUCLEO-F401RE. Khi bo mạch được cấp nguồn, đèn LED LD3 (PWR) sẽ BẬT.
Cần có kết nối cáp USB để theo dõi dữ liệu thời gian thực. Bo mạch được cấp nguồn từ PC thông qua kết nối USB. Chế độ làm việc này cho phép phát hiện sự kiện ngã của người dùng, dữ liệu cảm biến gia tốc và áp suất, thời gianamp và cuối cùng là dữ liệu cảm biến khác, theo thời gian thực, bằng cách sử dụng MEMS-Studio.
2.4 Ứng dụng MEMS-Studio
Các sampỨng dụng này sử dụng ứng dụng MEMS-Studio, có thể tải xuống từ www.st.com.
Bước 1. Đảm bảo rằng các trình điều khiển cần thiết đã được cài đặt và bo mạch Nucleo STM32 với bo mạch mở rộng thích hợp được kết nối với PC.
Bước 2. Khởi chạy ứng dụng MEMS-Studio để mở cửa sổ ứng dụng chính.
Nếu bo mạch STM32 Nucleo có chương trình cơ sở được hỗ trợ được kết nối với PC, nó sẽ tự động được phát hiện.
Nhấn nút [Kết nối] để thiết lập kết nối với bảng đánh giá.

ST X CUBE MEMS1 MotionFD Thư viện phát hiện té ngã thời gian thực - Kết nối

Bước 3. Khi kết nối với bo mạch STM32 Nucleo có phần mềm được hỗ trợ, tab [Đánh giá thư viện] sẽ mở ra.
Để bắt đầu và dừng phát dữ liệu, hãy chuyển đổi [Bắt đầu] thích hợp ST X CUBE MEMS1 Thư viện phát hiện té ngã thời gian thực MotionFD- biểu tượng hoặc [Dừng lại] ST X CUBE MEMS1 Thư viện phát hiện té ngã thời gian thực MotionFD- icon1  nút trên thanh công cụ dọc bên ngoài.
Dữ liệu đến từ cảm biến được kết nối có thể viewed chọn tab [Bảng dữ liệu] trên công cụ dọc bên trong ba

ST X CUBE MEMS1 Thư viện phát hiện té ngã thời gian thực MotionFD - Bảng dữ liệu

Bước 4. Nhấp vào [Phát hiện ngã] để mở cửa sổ ứng dụng chuyên dụng.

ST X CUBE MEMS1 Thư viện phát hiện té ngã thời gian thực MotionFD - Phát hiện té ngã

Bước 5. Nhấp vào [Lưu vào File] để mở cửa sổ cấu hình ghi dữ liệu. Chọn cảm biến và dữ liệu phát hiện ngã để lưu trong file. Bạn có thể bắt đầu hoặc dừng lưu bằng cách nhấp vào nút tương ứng.

ST X CUBE MEMS1 MotionFD Thư viện phát hiện té ngã thời gian thực - Lưu vào File

Bước 6. Chế độ Data Injection có thể được sử dụng để gửi dữ liệu đã thu thập trước đó đến thư viện và nhận kết quả. Chọn tab [Data Injection] trên thanh công cụ dọc để mở chuyên dụng view cho chức năng này.

ST X CUBE MEMS1 Thư viện phát hiện té ngã thời gian thực MotionFD - Tiêm dữ liệu

Bước 7. Nhấp vào nút [Duyệt] để chọn file với dữ liệu đã thu thập trước đó ở định dạng CSV.
Dữ liệu sẽ được tải vào bảng trong hiện tại view.
Các nút khác sẽ hoạt động. Bạn có thể nhấp vào:
– Nút [Chế độ ngoại tuyến] để bật/tắt chế độ ngoại tuyến của phần mềm (chế độ sử dụng dữ liệu đã thu thập trước đó).
– Các nút [Start]/[Stop]/[Step]/[Repeat] để điều khiển việc cấp dữ liệu từ MEMS-Studio vào thư viện.

2.5 Tài liệu tham khảo
Tất cả các tài nguyên sau đây đều có sẵn miễn phí trên www.st.com.

  1. UM1859: Bắt đầu với phần mềm mở rộng MEMS chuyển động và cảm biến môi trường X-CUBE-MEMS1 cho STM32Cube
  2. UM1724: Bảng STM32 Nucleo-64 (MB1136)
  3. UM3233: Bắt đầu với MEMS-Studio

Lịch sử sửa đổi

Bảng 4. Lịch sử sửa đổi tài liệu

Ngày Phiên bản Thay đổi
 22-Tháng 2017-XNUMX 1 Phiên bản phát hành đầu tiên.
6-18-XNUMX 2 Đã thêm các tham chiếu đến bảng phát triển NUCLEO-L152RE và Bảng 2. Thuật toán thời gian đã trôi qua (μs).
21-18-XNUMX 3 Cập nhật Giới thiệu và Mục 2.1 MotionFD quaview.
19-19-XNUMX 4 Bảng cập nhật 2. Thuật toán thời gian đã trôi qua (μs) và Hình 2. Nucleo STM32: đèn LED, nút, dây nhảy.
Đã thêm thông tin tương thích bảng mở rộng X-NUCLEO-IKS01A3.
17-Tháng 24-XNUMX 5 Phần giới thiệu đã cập nhật, Phần 2.1: MotionFD quaview, Phần 2.2.1: Mô tả thư viện MotionFD, Phần 2.2.2: API MotionFD, Phần 2.2.5: Hiệu suất thuật toán, Phần 2.3: Sampứng dụng le, Mục 2.4: Ứng dụng MEMS-Studio

THÔNG BÁO QUAN TRỌNG – ĐỌC KỸ
STMicroelectronics NV và các công ty con (“ST”) có quyền thực hiện các thay đổi, chỉnh sửa, cải tiến, sửa đổi và cải thiện đối với các sản phẩm ST và/hoặc tài liệu này bất kỳ lúc nào mà không cần thông báo. Người mua nên tìm hiểu thông tin mới nhất có liên quan về các sản phẩm ST trước khi đặt hàng. Các sản phẩm ST được bán theo các điều khoản và điều kiện bán hàng của ST có hiệu lực tại thời điểm xác nhận đơn hàng.
Người mua chịu toàn bộ trách nhiệm về việc lựa chọn, cân nhắc và sử dụng các sản phẩm ST và ST không chịu trách nhiệm về việc hỗ trợ ứng dụng hoặc thiết kế các sản phẩm của người mua.
ST không cấp bất kỳ giấy phép nào, dù là rõ ràng hay ngụ ý, cho bất kỳ quyền sở hữu trí tuệ nào ở đây.
Việc bán lại các sản phẩm ST với các điều khoản khác với thông tin được nêu ở đây sẽ làm mất hiệu lực bất kỳ bảo hành nào mà ST cấp cho sản phẩm đó.
ST và logo ST là thương hiệu của ST. Để biết thêm thông tin về thương hiệu ST, hãy tham khảo www.st.com/trademarks. Tất cả tên sản phẩm hoặc dịch vụ khác là tài sản của chủ sở hữu tương ứng.
Thông tin trong tài liệu này thay thế và thay thế thông tin đã cung cấp trước đó trong bất kỳ phiên bản nào trước đây của tài liệu này.

© 2024 STMicroelectronics – Bảo lưu mọi quyền

Tài liệu / Tài nguyên

ST X-CUBE-MEMS1 MotionFD Thư viện phát hiện té ngã thời gian thực [tập tin pdf] Hướng dẫn sử dụng
Thư viện phát hiện ngã thời gian thực X-CUBE-MEMS1 MotionFD, X-CUBE-MEMS1, Thư viện phát hiện ngã thời gian thực MotionFD, Thư viện phát hiện ngã thời gian thực, Thư viện phát hiện ngã, Thư viện phát hiện, Thư viện

Tài liệu tham khảo

Để lại bình luận

Địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu *