ST X - 로고UM2275
사용자 설명서

STM1Cube용 X-CUBE-MEMS32 확장에서 MotionFD 실시간 낙상 감지 라이브러리 시작하기

소개

MotionEC는 X-CUBE-MEMS1 소프트웨어의 미들웨어 라이브러리 구성 요소이며 STM3z2에서 실행됩니다. 장치의 데이터를 기반으로 장치 방향 및 이동 상태에 대한 실시간 정보를 제공합니다.
다음과 같은 출력을 제공합니다: 장치 방향(사원수, 오일러 각), 장치 회전(가상 자이로스코프 기능), 중력 벡터 및 선형 가속도.
이 라이브러리는 ST MEMS에서만 작동하도록 고안되었습니다.
이 알고리즘은 정적 라이브러리 형식으로 제공되며 ARM® Cortex®-M32+, ARM® Cortex®-M0, ARM® Cortex®-M3, ARM® Cortex®-M33 및 ARM® Cortex®-M4 아키텍처를 기반으로 하는 STM7 마이크로컨트롤러에서 사용되도록 설계되었습니다.
STM32Cube 소프트웨어 기술을 기반으로 구축되어 다양한 STM32 마이크로컨트롤러 간의 이식성을 용이하게 합니다.
소프트웨어는 s와 함께 제공됩니다.ampNUCLEO-F4RE, NUCLEO-U1ZI-Q 또는 NUCLEO-L01RE 개발 보드의 X-NUCLEO-IKS3A401 또는 X-NUCLEO-IKS575A152 확장 보드에서 실행되는 구현입니다.

두문자어 및 약어

표 1. 약어 목록

두문자어 설명
API 애플리케이션 프로그래밍 인터페이스
비에스피(BSP) 보드 지원 패키지
그래픽 사용자 인터페이스(GUI) 그래픽 사용자 인터페이스
하드웨어 추상화 계층
IDE 통합 개발 환경

STM1Cube용 X-CUBE-MEMS32 소프트웨어 확장의 MotionFD 미들웨어 라이브러리

2.1 MotionFD 오버view
MotionFD 라이브러리는 X-CUBE-MEMS1 소프트웨어의 기능을 확장합니다.
라이브러리는 가속도계와 압력 센서로부터 데이터를 수집하고, 장치에서 수집된 데이터를 기반으로 사용자 낙상 이벤트에 대한 정보를 제공합니다.
라이브러리는 ST MEMS 전용으로 설계되었습니다. 다른 MEMS 센서를 사용할 때의 기능과 성능은 분석되지 않으며 문서에 설명된 내용과 크게 다를 수 있습니다.
Samp이 구현은 NUCLEO-F4RE, NUCLEO-U1ZI-Q 또는 NUCLEO-L01RE 개발 보드에 장착된 X-NUCLEO-IKS3A401 및 X-NUCLEO-IKS575A152 확장 보드에서 사용할 수 있습니다.
2.2 MotionFD 라이브러리
MotionFD API의 기능과 매개변수를 완전히 설명하는 기술 정보는 MotionFD_Package.chm 컴파일된 HTML에서 찾을 수 있습니다. file Documentation 폴더에 있습니다.
2.2.1 MotionFD 라이브러리 설명
MotionFD 낙상 감지 라이브러리는 가속도계와 압력 센서에서 수집한 데이터를 관리하며 다음과 같은 기능을 제공합니다.

  • 사용자가 넘어졌는지 아닌지를 구별할 수 있는 가능성
  • 가속도계 및 압력 센서 데이터만을 기반으로 인식
  • 필요한 가속도계 및 압력 센서 데이터amp링 주파수는 25Hz입니다
  • 리소스 요구사항:
    – Cortex-M3: 3.6kB 코드 및 3.2kB 데이터 메모리
    – Cortex-M33: 3.4kB 코드 및 3.2kB 데이터 메모리
    – Cortex-M4: 3.4kB 코드 및 3.2kB 데이터 메모리
    – Cortex-M7: 3.4kB 코드 및 3.2kB 데이터 메모리
  • ARM Cortex-M3, ARM Cortex-M33, ARM Cortex-M4 및 ARM Cortex-M7 아키텍처에 사용 가능

2.2.2 MotionFD API
MotionFD 라이브러리 API는 다음과 같습니다.

  • uint8_t MotionFD_GetLibVersion(char *버전)
    – 라이브러리 버전을 검색합니다
    – *version은 35자 배열을 가리키는 포인터입니다.
    – 버전 문자열의 문자 수를 반환합니다.
  • void MotionFD_Initialize(void)
    – MotionFD 라이브러리 초기화 및 내부 메커니즘 설정을 수행합니다.

메모: 이 기능은 낙하 감지 라이브러리를 사용하기 전에 호출되어야 하며, STM32 마이크로컨트롤러의 CRC 모듈(RCC 주변 장치 클록 활성화 레지스터)이 활성화되어야 합니다.

  • void MotionFD_Update(MFD_입력_t *데이터_입력, MFD_출력_t *데이터_출력)
    – 낙상 감지 알고리즘을 실행합니다.
    – *data_in 매개변수는 입력 데이터가 있는 구조에 대한 포인터입니다.
    – 구조 유형 MFD_input_t의 매개변수는 다음과 같습니다.
    ◦ AccX는 X축의 가속도계 센서 값(mg)입니다.
    ◦ AccY는 Y축의 가속도계 센서 값(mg)입니다.
    ◦ AccZ는 Z축의 가속도계 센서 값(mg)입니다.
    ◦ Press는 hPa 단위의 압력 센서 값입니다.
    – *data_out 매개변수는 다음 항목이 포함된 열거형에 대한 포인터입니다.
    ◦ MFD_NOFALL = 0
    ◦ MFD_낙하 = 1
  • void MotionFD_SetKnobs(float 낙하 임계값, int32_t 낙하 고도 델타, float 낙하 시간)
    – 라이브러리 구성 매개변수를 설정합니다.
    – 낙하 임계값 가속 임계값 (mg)
    – fall_altitude_delta 고도 차이(cm)
    – 충격 후 움직임이 없는 시간(초)
  • void MotionFD_GetKnobs(float *낙하_임계값, int32_t *낙하_고도_델타, float *누워_시간)
    – 라이브러리 구성 매개변수를 가져옵니다.
    – 낙하 임계값 가속 임계값 (mg)
    – fall_altitude_delta 고도 차이(cm)
    – 충격 후 움직임이 없는 시간(초)

2.2.3 API 흐름도

ST X CUBE MEMS1 MotionFD 실시간 낙상 감지 라이브러리-

2.2.4 데모 코드
다음 데모 코드는 가속도계와 압력 센서에서 데이터를 읽고 낙하 이벤트 코드를 가져옵니다.

ST X CUBE MEMS1 MotionFD 실시간 낙상 감지 라이브러리 - 데모 코드1ST X CUBE MEMS1 MotionFD 실시간 낙상 감지 라이브러리 - 데모 코드

2.2.5 알고리즘 성능
낙상 감지 알고리즘은 가속도계와 압력 센서의 데이터만을 사용하며 저주파(25Hz)로 실행되어 전력 소모를 줄입니다.

ST X CUBE MEMS1 MotionFD 실시간 낙상 감지 라이브러리 - 알고리즘 경과 시간

2.3 초amp르 신청
MotionFD 미들웨어는 사용자 애플리케이션을 구축하기 위해 쉽게 조작될 수 있습니다.amp파일 애플리케이션은 Application 폴더에 제공됩니다.
X-NUCLEO-IKS401A575 또는 X-NUCLEO-IKS152A4 확장 보드에 연결된 NUCLEO-F1RE, NUCLEO-U01ZI-Q 또는 NUCLEO-L3RE 개발 보드에서 실행되도록 설계되었습니다.
해당 애플리케이션은 실시간으로 사용자 낙상 이벤트를 인식합니다.

ST X CUBE MEMS1 MotionFD 실시간 낙상 감지 라이브러리 - 점퍼

위 그림은 사용자 버튼 B1과 NUCLEO-F401RE 보드의 세 개의 LED를 보여줍니다. 보드에 전원이 공급되면 LED LD3(PWR)이 켜집니다.
실시간 데이터를 모니터링하려면 USB 케이블 연결이 필요합니다. 보드는 USB 연결을 통해 PC에서 전원을 공급받습니다. 이 작업 모드에서는 감지된 사용자 낙하 이벤트, 가속도계 및 압력 센서 데이터, 시간 stamp 그리고 MEMS-Studio를 사용하여 다른 센서 데이터도 실시간으로 수집합니다.
2.4 MEMS-Studio 응용 프로그램
Sample 애플리케이션은 MEMS-Studio 애플리케이션을 사용하며, 이 애플리케이션은 다음에서 다운로드할 수 있습니다. www.st.com.
1단계. 필요한 드라이버가 설치되어 있고 STM32 Nucleo 보드와 적절한 확장 보드가 PC에 연결되어 있는지 확인하세요.
2단계. MEMS-Studio 애플리케이션을 실행하여 메인 애플리케이션 창을 엽니다.
지원되는 펌웨어가 있는 STM32 Nucleo 보드가 PC에 연결되어 있으면 자동으로 감지됩니다.
[연결] 버튼을 눌러 평가 보드에 연결을 설정합니다.

ST X CUBE MEMS1 MotionFD 실시간 낙상 감지 라이브러리 - Connect

3단계. 지원되는 펌웨어가 있는 STM32 Nucleo 보드에 연결되면 [라이브러리 평가] 탭이 열립니다.
데이터 스트리밍을 시작하거나 중지하려면 해당 [시작]을 토글합니다. ST X CUBE MEMS1 MotionFD 실시간 낙상 감지 라이브러리- 아이콘 또는 [중지] ST X CUBE MEMS1 MotionFD 실시간 낙상 감지 라이브러리- icon1  외부 수직 도구 모음의 버튼.
연결된 센서에서 나오는 데이터는 다음과 같습니다. view내부 수직 도구 모음에서 [데이터 표] 탭을 선택한 후

ST X CUBE MEMS1 MotionFD 실시간 낙상 감지 라이브러리 - 데이터 테이블

4단계. [낙하 감지]를 클릭하면 전용 애플리케이션 창이 열립니다.

ST X CUBE MEMS1 MotionFD 실시간 낙상 감지 라이브러리 - 낙상 감지

5단계. [저장]을 클릭하세요 File] 데이터 로깅 구성 창을 엽니다. 저장할 센서 및 낙상 감지 데이터를 선택합니다. file해당 버튼을 클릭하면 저장을 시작하거나 중지할 수 있습니다.

ST X CUBE MEMS1 MotionFD 실시간 낙상 감지 라이브러리 - 저장 File

6단계. 데이터 주입 모드는 이전에 획득한 데이터를 라이브러리로 보내고 결과를 수신하는 데 사용할 수 있습니다. 수직 도구 모음에서 [데이터 주입] 탭을 선택하여 전용을 엽니다. view 이 기능을 위해서.

ST X CUBE MEMS1 MotionFD 실시간 낙상 감지 라이브러리 - 데이터 주입

7단계. [찾아보기] 버튼을 클릭하여 선택하세요. file 이전에 수집한 데이터를 CSV 형식으로 변환합니다.
데이터는 현재 테이블에 로드됩니다. view.
다른 버튼이 활성화됩니다. 다음을 클릭할 수 있습니다.
– [오프라인 모드] 버튼을 눌러 펌웨어 오프라인 모드를 켜거나 끕니다(이전에 캡처한 데이터를 활용하는 모드).
– MEMS-Studio에서 라이브러리로의 데이터 공급을 제어하기 위한 [시작]/[중지]/[단계]/[반복] 버튼.

2.5 참고문헌
다음 리소스는 모두 www.st.com에서 무료로 이용할 수 있습니다.

  1. UM1859: X-CUBE-MEMS1 모션 MEMS 및 STM32Cube용 환경 센서 소프트웨어 확장 시작하기
  2. UM1724: STM32 Nucleo-64 보드(MB1136)
  3. UM3233: MEMS-Studio 시작하기

개정 내역

표 4. 문서 개정 내역

날짜 버전 변화
 22년 2017월 XNUMX일 1 최초 출시.
6-18-XNUMX 2 NUCLEO-L152RE 개발 보드 및 표 2. 경과 시간(μs) 알고리즘에 대한 참조가 추가되었습니다.
21년 18월 XNUMX일 3 업데이트된 소개 및 섹션 2.1 MotionFDview.
19-19-XNUMX 4 업데이트된 표 2. 경과 시간(μs) 알고리즘 및 그림 2. STM32 Nucleo: LED, 버튼, 점퍼.
X-NUCLEO-IKS01A3 확장 보드 호환성 정보를 추가했습니다.
17년 24월 XNUMX일 5 업데이트된 섹션 소개, 섹션 2.1: MotionFDview, 섹션 2.2.1: MotionFD 라이브러리 설명, 섹션 2.2.2: MotionFD API, 섹션 2.2.5: 알고리즘 성능, 섹션 2.3: Sample 응용 프로그램, 섹션 2.4: MEMS-Studio 응용 프로그램

중요 공지 – 주의 깊게 읽어보세요
STMicroelectronics NV 및 그 자회사("ST")는 언제든지 통지 없이 ST 제품 및/또는 이 문서를 변경, 수정, 개선, 수정 및 개선할 권리를 보유합니다. 구매자는 주문하기 전에 ST 제품에 대한 최신 관련 정보를 얻어야 합니다. ST 제품은 주문 확인 시점에 적용되는 ST의 판매 약관에 따라 판매됩니다.
구매자는 ST 제품의 선택, 선정 및 사용에 대한 전적인 책임을 지며, ST는 구매자의 제품 설계나 애플리케이션 지원에 대한 책임을 지지 않습니다.
ST는 본 계약에 따라 어떠한 지적 재산권에 대한 명시적 또는 묵시적 라이센스도 부여하지 않습니다.
여기에 명시된 정보와 다른 조항이 적용된 ST 제품을 재판매할 경우, ST가 해당 제품에 대하여 부여한 모든 보증은 무효화됩니다.
ST 및 ST 로고는 ST의 상표입니다. ST 상표에 대한 추가 정보는 다음을 참조하십시오. www.st.com/trademarks. 다른 모든 제품 또는 서비스 이름은 해당 소유자의 자산입니다.
이 문서의 정보는 이 문서의 이전 버전에서 제공된 정보를 대체하고 교체합니다.

© 2024 STMicroelectronics – 모든 권리 보유

문서 / 리소스

ST X-CUBE-MEMS1 MotionFD 실시간 낙상 감지 라이브러리 [PDF 파일] 사용자 매뉴얼
X-CUBE-MEMS1 MotionFD 실시간 낙상 감지 라이브러리, X-CUBE-MEMS1, MotionFD 실시간 낙상 감지 라이브러리, 실시간 낙상 감지 라이브러리, 낙상 감지 라이브러리, 감지 라이브러리, 라이브러리

참고문헌

댓글을 남겨주세요

이메일 주소는 공개되지 않습니다. 필수 항목은 표시되어 있습니다. *