Perpustakaan Pengenalan Aktivitas STMicroelectronics UM2193 MotionAR

Perpustakaan Pengenalan Aktivitas STMicroelectronics UM2193 MotionAR

Perkenalan

Motion AR adalah bagian perpustakaan middleware dari perangkat lunak X-CUBE-MEMS1 dan berjalan pada STM32. Ini memberikan informasi real-time tentang jenis aktivitas yang dilakukan oleh pengguna. Ia mampu membedakan aktivitas berikut: stasioner, jalan kaki, jalan cepat, jogging, bersepeda, mengemudi.

Perpustakaan ini dimaksudkan untuk bekerja dengan ST MEMS saja.

Algoritma ini disediakan dalam format perpustakaan statis dan dirancang untuk digunakan pada mikrokontroler STM32 berdasarkan arsitektur ARM® Cortex®-M3, ARM® Cortex®-M33, ARM® Cortex®-M4 atau ARM® Cortex®-M7.

Ini dibangun di atas teknologi perangkat lunak STM32Cube yang memudahkan portabilitas di berbagai mikrokontroler STM32.

Perangkat lunak ini dilengkapi dengan sample implementasi berjalan pada papan ekspansi X-NUCLEO-IKS01A3 atau X-NUCLEO-IKS4A1 pada papan pengembangan NUCLEO-F401RE, NUCLEO-L152RE atau NUCLEO-U575ZI-Q.

Akronim dan singkatan

Tabel 1. Daftar akronim

Akronim Keterangan
API Antarmuka pemrograman aplikasi
BSP Paket dukungan papan
Antarmuka Pengguna (GUI) Antarmuka pengguna grafis
HAL Lapisan abstraksi perangkat keras
ide Lingkungan pengembangan terintegrasi

Pustaka middleware Motion AR dalam perluasan perangkat lunak X-CUBE-MEMS1

Gerak AR berakhirview

Perpustakaan Motion AR memperluas fungsionalitas perangkat lunak X-CUBE-MEMS1.
Perpustakaan memperoleh data dari accelerometer dan memberikan informasi tentang jenis aktivitas yang dilakukan oleh pengguna.

Perpustakaan dirancang hanya untuk ST MEMS. Fungsionalitas dan kinerja saat menggunakan sensor MEMS lainnya tidak dianalisis dan mungkin berbeda secara signifikan dari yang dijelaskan dalam dokumen.
Sampimplementasi le tersedia pada papan ekspansi X-NUCLEO-IKS01A3 atau X-NUCLEO-IKS4A1, dipasang pada papan pengembangan NUCLEO-F401RE, NUCLEO-L152RE atau NUCLEO-U575ZI-Q.

Perpustakaan Gerak AR

Informasi teknis yang menjelaskan secara lengkap fungsi dan parameter API Motion AR dapat ditemukan di HTML kompilasi MotionAR_Package.chm file terletak di folder Dokumentasi.

Deskripsi perpustakaan Motion AR

  • Pustaka pengenalan aktivitas Motion AR mengelola data yang diperoleh dari akselerometer; itu fitur:
  • kemungkinan untuk membedakan aktivitas berikut: stasioner, berjalan kaki, jalan cepat, joging, bersepeda, mengemudi
  • pengenalan berdasarkan data accelerometer saja
  • data akselerometer yang diperlukan sampfrekuensi ling: 16 Hz
  • kebutuhan sumber daya:
    • Cortex-M3: kode 8.5 kB dan memori data 1.4 kB
    • Cortex-M33: kode 7.8 kB dan memori data 1.4 kB
    • Cortex-M4: kode 7.9 kB dan memori data 1.4 kB
    • Cortex-M7: kode 8.1 kB dan memori data 1.4 kB
  • tersedia untuk arsitektur ARM Cortex-M3, Cortex-M33, Cortex-M4 dan Cortex-M7

API MotionAR

API MotionAR adalah:

  • uint8_t MotionAR_GetLibVersion(char *versi)
    • mengambil versi perpustakaan
    • *version adalah penunjuk ke array 35 karakter
    • mengembalikan jumlah karakter dalam string versi
  • batal MotionAR_Inisialisasi(batal)
    • melakukan inisialisasi perpustakaan MotionAR dan pengaturan mekanisme internal
    • modul CRC di mikrokontroler STM32 (dalam register pengaktifan jam periferal RCC) harus
      diaktifkan sebelum menggunakan perpustakaan
      Catatan: Fungsi ini harus dipanggil sebelum menggunakan perpustakaan kalibrasi akselerometer.
  • batal MotionAR_Reset(batal)
    • mengatur ulang algoritma pengenalan aktivitas
  • batal MotionAR_Update(MAR_input_t *data_in, MAR_output_t *data_out, int64_t
    waktuamp)
    • mengeksekusi algoritma pengenalan aktivitas
    • *Parameter data_in adalah penunjuk ke struktur dengan data masukan
    • parameter untuk tipe struktur MAR_input_t adalah:
      • acc_x adalah nilai sensor accelerometer pada sumbu X di g
      • acc_y adalah nilai sensor accelerometer pada sumbu Y di g
      • acc_z adalah nilai sensor accelerometer pada sumbu Z di g
    • *parameter data_out adalah penunjuk ke enum dengan item berikut:
      • MAR_NOAKTIVITAS = 0
      • MAR_STATIONARY = 1
      • MAR_WALKING = 2
      • MAR_JALAN CEPAT = 3
      • MAR_JOGGING = 4
      • MAR_BERSEPEDA = 5
      • MAR_DRIVING = 6
    • waktuamp adalah waktu relatif untuk s sebenarnyaample di ms
  • void MotionAR_ Atur Orientasi_ Acc(const char *acc_ orientasi)
    • mengatur orientasi data akselerometer
    • konfigurasi biasanya dilakukan segera setelah pemanggilan fungsi Motion AR_ Initialize
    • *parameter orientasi acc_ adalah penunjuk ke string tiga karakter yang menunjukkan arah masing-masing orientasi positif dari kerangka acuan yang digunakan untuk keluaran data akselerometer, dalam urutan x, y, z. Nilai yang valid adalah: n (utara) atau s (selatan), w (barat) atau e (timur), u (atas) atau d (bawah)
    • Seperti terlihat pada gambar di bawah, sensor accelerometer X-NUCLEO-IKS4A1 mempunyai SEU (x-South, y- East, z-Up), sehingga stringnya adalah: “seu”.

Gambar 1. Orientasi sensor example

Pustaka middleware MotionAR dalam perluasan perangkat lunak X-CUBE-MEMS1

Karakter aliran API

Gambar 2. Urutan logika Motion AR API

Pustaka middleware MotionAR dalam perluasan perangkat lunak X-CUBE-MEMS1

Kode demo

Kode demonstrasi berikut membaca data dari sensor accelerometer dan mendapatkan kode aktivitas

[…] #define VERSION_STR_LENG 35 […] /*** Inisialisasi ***/ char lib_version[VERSION_STR_LENG]; char acc_orientation[] = "seu"; /* Fungsi inisialisasi API pengenalan aktivitas */ MotionAR_Initialize(); /* Opsional: Dapatkan versi */ MotionAR_GetLibVersion(lib_version); /* Mengatur orientasi akselerometer */ MotionAR_SetOrientation_Acc(acc_orientation); […] /*** Menggunakan algoritma pengenalan aktivitas ***/ Timer_ OR_ Data Rate_ Interrupt_ Handler() {
MAR_input_t data_ masuk; MAR_ keluaran_ t aktivitas; /* Dapatkan akselerasi X/Y/Z di g */ MEMS_Read_AccValue(&data_in.acc_x, &data_in.acc_y, &data_in.acc_z); /* Dapatkan waktu saat ini dalam ms */ TIMER_Get_TimeValue(×tamp_MS); /* Pembaruan algoritma pengenalan aktivitas */ MotionAR_Update(data_in, data_out, timestamp_MS); }

Kinerja algoritma

Algoritma pengenalan aktivitas hanya menggunakan data dari accelerometer dan berjalan pada frekuensi rendah (16 Hz) untuk mengurangi konsumsi daya.

Tabel 2. Kinerja algoritma

Aktivitas Probabilitas deteksi (khas)(1) Performa terbaik Rentan Membawa posisi
Tidak bergerak 92.27% Berpegangan tangan dan mengirim pesan yang berat Semua: saku celana, saku baju, saku belakang, dekat kepala, dll.
Sedang berjalan 99.44% Kecepatan langkah ≥ 1.4 langkah/dtk Kecepatan langkah ≤ 1.2 langkah/dtk semua
Jalan cepat 95.94% Kecepatan langkah ≥ 2.0 langkah/dtk Semua
Joging 98.49% Kecepatan langkah ≥ 2.2 langkah/dtk Durasi <1 menit; kecepatan <8 Km/jam Saku celana, lengan ayun, di tangan
Bersepeda 91.93% Kecepatan luar ruangan ≥11 Km/jam Kursi penumpang, kompartemen sarung tangan Ransel, saku baju, saku celana
Penggerak 78.65% Kecepatan ≥ 48 Km/jam Kursi penumpang, kompartemen sarung tangan Tempat cangkir, papan dasbor, saku baju, saku celana
  1. Spesifikasi tipikal tidak dijamin

Tabel 3. Algoritma Cortex-M4 dan Cortex-M3: Waktu berlalu (µs). 

Korteks-M4 STM32F401RE pada 84MHz Korteks-M3 STM32L152RE pada 32MHz
menit Rata-rata Maksimal menit Rata-rata Maksimal
2 6 153 8 130 4883

Tabel 4. Algoritma Cortex-M33 dan Cortex-M7: waktu berlalu (μs). 

Korteks-M33 STM32U575ZI-Q pada 160 MHz Korteks-M7 STM32F767ZI pada 96 MHz
menit Rata-rata Maksimal menit Rata-rata Maksimal
< 1 2 74 5 9 145

Sampaplikasi

Middleware MotionAR dapat dengan mudah dimanipulasi untuk membangun aplikasi pengguna; sebagaiample aplikasi disediakan di folder Aplikasi.
Ini dirancang untuk berjalan pada papan pengembangan NUCLEO-F401RE, NUCLEO-L152RE atau NUCLEO-U575ZI-Q yang terhubung ke papan ekspansi X-NUCLEO-IKS01A3 atau X-NUCLEO-IKS4A1.

Aplikasi ini mengenali aktivitas yang dilakukan secara real-time. Data dapat ditampilkan melalui GUI. Algoritme ini mengenali aktivitas diam, berjalan kaki, jalan cepat, joging, bersepeda, dan mengemudi. Koneksi kabel USB diperlukan untuk memantau data waktu nyata. Papan ini didukung oleh PC melalui koneksi USB. Hal ini memungkinkan pengguna untuk menampilkan aktivitas yang terdeteksi, data accelerometer, waktu stamp dan akhirnya data sensor lainnya, secara real-time, menggunakan aplikasi MEMS-Studio GUI.

Aplikasi MEMS-Studio

Sampaplikasi le menggunakan aplikasi MEMS-Studio GUI, yang dapat diunduh dari www.st.com.

Langkah 1. Pastikan driver yang diperlukan telah diinstal dan papan Nukleo STM32 dengan papan ekspansi yang sesuai terhubung ke PC.
Langkah 2. Luncurkan aplikasi MEMS-Studio untuk membuka jendela aplikasi utama.

Jika papan Nucleo STM32 dengan firmware yang didukung terhubung ke PC, maka secara otomatis terdeteksi port COM yang sesuai. Tekan tombol Connect untuk membuka port ini.

Gambar 3. MEMS-Studio – Hubungkan 

Aplikasi MEMS-Studio

Langkah 3. Saat terhubung ke papan Nucleo STM32 dengan firmware yang didukung, tab Evaluasi Perpustakaan terbuka.

Untuk memulai dan menghentikan streaming data, alihkan tombol yang sesuai Ikon awal / Ikon tombol stop pada bilah alat vertikal luar.
Data yang berasal dari sensor yang terhubung bisa berupa viewed memilih tab Tabel Data pada bilah alat vertikal bagian dalam.

Gambar 4. MEMS-Studio – Evaluasi Perpustakaan – Tabel Data 

Gambar 5. MEMS-Studio – Evaluasi Perpustakaan – Pengenalan Aktivitas

Aplikasi MEMS-Studio

Langkah 5. Pilih Simpan ke File tab pada bilah alat vertikal bagian dalam untuk membuka jendela konfigurasi pencatatan data. Pilih sensor dan data aktivitas mana yang akan disimpan untuk dicatat file. Anda dapat memulai atau berhenti menyimpan dengan mengklik tombol Start/Stop yang sesuai.

Gambar 6. MEMS-Studio – Evaluasi Perpustakaan – Simpan ke File

Aplikasi MEMS-Studio

Referensi

Semua sumber daya berikut tersedia secara gratis di www.st.com.

  1. UM1859: Memulai dengan MEMS gerak X-CUBE-MEMS1 dan perluasan perangkat lunak sensor lingkungan untuk STM32Cube
  2. UM1724: Papan Nukleo-32 STM64 (MB1136)
  3. UM3233: Memulai MEMS-Studio

Riwayat revisi

Tabel 5. Riwayat revisi dokumen

Tanggal Versi Perubahan
10 April 2017 1 Rilis awal.
26 Januari 2018 2 Diperbarui Bagian 3 Sampaplikasi.
Menambahkan referensi ke papan pengembangan NUCLEO-L152RE dan Tabel 3. Algoritma waktu berlalu (μs).
19 Maret 2018 3 Pendahuluan yang Diperbarui, Bagian 2.1 Motion AR selesaiview dan Bagian 2.2.5 Kinerja Algoritma.
14 Februari 2019 4 Diperbarui Gambar 1. Orientasi sensor misample, Tabel 3. Algoritma waktu berlalu (µs) dan Gambar 3. Inti STM32: LED, tombol, jumper.
Menambahkan informasi kompatibilitas papan ekspansi X-NUCLEO-IKS01A3.
20 Maret 2019 5 Bagian yang Diperbarui 2.2.2 Motion AR API, Gambar 3. MEMS-Studio – Connect, Gambar 4. MEMS-Studio – Evaluasi Perpustakaan – Tabel Data, Gambar 5. MEMS-Studio – Evaluasi Perpustakaan – Pengenalan Aktivitas dan Gambar 6. MEMS-Studio – Evaluasi Perpustakaan – Simpan ke File.
04 April 2024 6 Memperbarui Bagian Pendahuluan, Bagian 2.1: MotionAR selesaiview, Bagian 2.2.1: Perpustakaan MotionAR keterangan, API MotionAR, Bagian 2.2.4: Kode demo, Bagian 2.2.5: Kinerja algoritma, Bagian 3: Sampaplikasi Dan Bagian 4: Aplikasi MEMS-Studio.

PEMBERITAHUAN PENTING – BACA DENGAN SEKSAMA

STMicroelectronics NV dan anak perusahaannya (“ST”) berhak melakukan perubahan, koreksi, penyempurnaan, modifikasi, dan perbaikan pada produk ST dan/atau dokumen ini kapan saja tanpa pemberitahuan. Pembeli harus memperoleh informasi relevan terkini tentang produk ST sebelum melakukan pemesanan. Produk ST dijual sesuai dengan syarat dan ketentuan penjualan ST yang berlaku pada saat konfirmasi pemesanan.

Pembeli bertanggung jawab penuh atas pilihan, pemilihan, dan penggunaan produk ST dan ST tidak bertanggung jawab atas bantuan aplikasi atau desain produk pembeli.

Tidak ada lisensi, tersurat maupun tersirat, terhadap hak kekayaan intelektual apa pun yang diberikan oleh ST di sini.

Penjualan kembali produk ST dengan ketentuan yang berbeda dari informasi yang ditetapkan di sini akan membatalkan garansi apa pun yang diberikan oleh ST untuk produk tersebut.

ST dan logo ST adalah merek dagang ST. Untuk informasi tambahan tentang merek dagang ST, lihat www.st.com/merek dagangSemua nama produk atau layanan lainnya adalah milik pemiliknya masing-masing.

Informasi dalam dokumen ini menggantikan dan mengganti informasi yang sebelumnya diberikan dalam versi dokumen ini sebelumnya.

© 2024 STMicroelectronics – Semua hak dilindungi undang-undang

Logo

Dokumen / Sumber Daya

Perpustakaan Pengenalan Aktivitas STMicroelectronics UM2193 MotionAR [Bahasa Indonesia:] Panduan Pengguna
Perpustakaan Pengenalan Aktivitas MotionAR UM2193, UM2193, Perpustakaan Pengenalan Aktivitas MotionAR, Perpustakaan Pengenalan Aktivitas, Perpustakaan Pengenalan, Perpustakaan

Referensi

Tinggalkan komentar

Alamat email Anda tidak akan dipublikasikan. Bidang yang wajib diisi ditandai *