ST X - آرمUM2275
راهنمای کاربر

شروع به کار با کتابخانه تشخیص سقوط بی‌درنگ MotionFD در بسط X-CUBE-MEMS1 برای STM32Cube

مقدمه

MotionEC یک جزء کتابخانه میان افزار از نرم افزار X-CUBE-MEMS1 است و روی STM3z2 اجرا می شود. این اطلاعات در زمان واقعی در مورد جهت گیری دستگاه و وضعیت حرکت بر اساس داده های یک دستگاه ارائه می دهد.
خروجی های زیر را ارائه می دهد: جهت گیری دستگاه (کواترنیون ها، زوایای اویلر)، چرخش دستگاه (عملکرد ژیروسکوپ مجازی)، بردار گرانش و شتاب خطی.
این کتابخانه فقط برای کار با ST MEMS در نظر گرفته شده است.
این الگوریتم در قالب کتابخانه ایستا ارائه شده است و برای استفاده در میکروکنترلرهای STM32 بر اساس ARM® Cortex®-M0+، ARM® Cortex®-M3، ARM® Cortex®-M33، ARM® Cortex®-M4 و ARM® طراحی شده است. معماری های Cortex®-M7.
این بر روی فناوری نرم افزار STM32Cube ساخته شده است تا قابلیت حمل در میکروکنترلرهای مختلف STM32 را آسان کند.
نرم افزار همراه با sampاجرای بر روی برد توسعه X-NUCLEO-IKS4A1 یا X-NUCLEO-IKS01A3 روی برد توسعه NUCLEO-F401RE، NUCLEO-U575ZI-Q یا NUCLEO-L152RE.

مخفف ها و اختصارات

جدول 1. فهرست کلمات اختصاری

مخفف توضیحات
API رابط برنامه نویسی برنامه
BSP بسته پشتیبانی هیئت مدیره
رابط کاربری گرافیکی رابط کاربری گرافیکی
HAL لایه انتزاع سخت افزار
IDE محیط توسعه مجتمع

کتابخانه میان‌افزار MotionFD در توسعه نرم‌افزار X-CUBE-MEMS1 برای STM32Cube

2.1 MotionFD به پایان رسیدview
کتابخانه MotionFD عملکرد نرم افزار X-CUBE-MEMS1 را گسترش می دهد.
این کتابخانه داده‌ها را از شتاب‌سنج و سنسور فشار دریافت می‌کند و اطلاعات مربوط به رویداد سقوط کاربر را بر اساس داده‌های یک دستگاه ارائه می‌کند.
این کتابخانه فقط برای ST MEMS طراحی شده است. عملکرد و عملکرد هنگام استفاده از سایر حسگرهای MEMS تجزیه و تحلیل نمی شود و می تواند به طور قابل توجهی با آنچه در سند توضیح داده شده متفاوت باشد.
Sampپیاده سازی le برای برد توسعه X-NUCLEO-IKS4A1 و X-NUCLEO-IKS01A3 که بر روی برد توسعه NUCLEO-F401RE، NUCLEO-U575ZI-Q یا NUCLEO-L152RE نصب شده است، در دسترس است.
2.2 کتابخانه MotionFD
اطلاعات فنی که به طور کامل عملکردها و پارامترهای APIهای MotionFD را توصیف می کند را می توان در HTML کامپایل شده MotionFD_Package.chm یافت. file در پوشه Documentation قرار دارد.
2.2.1 شرح کتابخانه MotionFD
کتابخانه تشخیص سقوط MotionFD داده های به دست آمده از شتاب سنج و سنسور فشار را مدیریت می کند. ویژگی های آن:

  • امکان تشخیص اینکه آیا سقوط کاربر رخ داده است یا خیر
  • تشخیص فقط بر اساس داده های شتاب سنج و سنسور فشار
  • داده های شتاب سنج و سنسور فشار مورد نیازampفرکانس لینگ 25 هرتز است
  • منابع مورد نیاز:
    – Cortex-M3: 3.6 کیلوبایت کد و 3.2 کیلوبایت حافظه داده
    – Cortex-M33: 3.4 کیلوبایت کد و 3.2 کیلوبایت حافظه داده
    – Cortex-M4: 3.4 کیلوبایت کد و 3.2 کیلوبایت حافظه داده
    – Cortex-M7: 3.4 کیلوبایت کد و 3.2 حافظه داده
  • موجود برای معماری های ARM Cortex-M3، ARM Cortex-M33، ARM Cortex-M4 و ARM Cortex-M7

2.2.2 API های MotionFD
APIهای کتابخانه MotionFD عبارتند از:

  • uint8_t MotionFD_GetLibVersion (char *نسخه)
    - نسخه کتابخانه را بازیابی می کند
    – *نسخه یک اشاره گر به آرایه ای از 35 کاراکتر است
    – تعداد کاراکترهای رشته نسخه را برمی گرداند
  • void MotionFD_Initialize(void)
    - مقداردهی اولیه کتابخانه MotionFD و راه اندازی مکانیزم داخلی را انجام می دهد

توجه: این تابع باید قبل از استفاده از کتابخانه تشخیص سقوط فراخوانی شود و ماژول CRC در میکروکنترلر STM32 (در ثبت نام ساعت محیطی RCC) باید فعال شود.

  • void MotionFD_Update (MFD_input_t *data_in, MFD_output_t *data_out)
    - الگوریتم تشخیص سقوط را اجرا می کند
    – پارامتر *data_in یک اشاره گر به یک ساختار با داده های ورودی است
    – پارامترهای نوع ساختار MFD_input_t عبارتند از:
    ◦ AccX مقدار حسگر شتاب سنج در محور X بر حسب میلی گرم است
    ◦ AccY مقدار حسگر شتاب سنج در محور Y بر حسب میلی گرم است
    ◦ AccZ مقدار حسگر شتاب سنج در محور Z بر حسب میلی گرم است
    ◦ Press مقدار سنسور فشار بر حسب hPa است
    - پارامتر *data_out یک اشاره گر به یک enum با موارد زیر است:
    ◦ MFD_NOFALL = 0
    ◦ MFD_FALL = 1
  • void MotionFD_SetKnobs (float fall_threshold, int32_t fall_altitude_delta, float lying_time)
    - پارامترهای پیکربندی کتابخانه را تنظیم می کند
    – آستانه شتاب پاییز به میلی گرم
    – پاییز_ارتفاع_دلتا اختلاف ارتفاع بر حسب سانتی متر
    - زمان دراز کشیدن در ثانیه بدون حرکت پس از ضربه
  • void MotionFD_GetKnobs(float *fall_threshold, int32_t *fall_altitude_delta, float *lying_time)
    - پارامترهای پیکربندی کتابخانه را دریافت می کند
    – آستانه شتاب پاییز به میلی گرم
    – پاییز_ارتفاع_دلتا اختلاف ارتفاع بر حسب سانتی متر
    - زمان دراز کشیدن در ثانیه بدون حرکت پس از ضربه

2.2.3 نمودار جریان API

کتابخانه تشخیص سقوط بیدرنگ ST X CUBE MEMS1 MotionFD-

2.2.4 کد نسخه ی نمایشی
کد نمایشی زیر داده ها را از شتاب سنج و سنسور فشار می خواند و کد رویداد سقوط را دریافت می کند.

ST X CUBE MEMS1 MotionFD Real Time Fall Detection Library- Demo code1ST X CUBE MEMS1 کتابخانه تشخیص سقوط واقعی MotionFD- کد نسخه ی نمایشی

2.2.5 عملکرد الگوریتم
الگوریتم تشخیص سقوط تنها از داده های شتاب سنج و سنسور فشار استفاده می کند و در فرکانس پایین (25 هرتز) برای کاهش مصرف برق کار می کند.

کتابخانه تشخیص سقوط در زمان واقعی ST X CUBE MEMS1 MotionFD - زمان سپری شدن الگوریتم

2.3 اسampبرنامه کاربردی
میان افزار MotionFD را می توان به راحتی برای ساخت برنامه های کاربردی دستکاری کرد. به عنوانampبرنامه le در پوشه Application ارائه شده است.
این برای اجرا بر روی یک برد توسعه NUCLEO-F401RE، NUCLEO-U575ZI-Q یا NUCLEO-L152RE که به برد توسعه X-NUCLEO-IKS4A1 یا X-NUCLEO-IKS01A3 متصل است، طراحی شده است.
برنامه رویداد سقوط کاربر را در زمان واقعی تشخیص می دهد.

ST X CUBE MEMS1 کتابخانه تشخیص سقوط در زمان واقعی MotionFD - جامپر

شکل بالا دکمه کاربری B1 و سه ال ای دی برد NUCLEO-F401RE را نشان می دهد. هنگامی که برد روشن می شود، LED LD3 (PWR) روشن می شود.
اتصال کابل USB برای نظارت بر داده‌های بلادرنگ مورد نیاز است. این برد توسط کامپیوتر و از طریق اتصال USB تغذیه می شود. این حالت کار اجازه می دهد تا رویداد سقوط کاربر شناسایی شده، داده های شتاب سنج و سنسور فشار، زمان stamp و در نهایت سایر داده های حسگر، در زمان واقعی، با استفاده از MEMS-Studio.
2.4 برنامه MEMS-Studio
sampبرنامه le از برنامه MEMS-Studio استفاده می کند که می توانید آن را دانلود کنید www.st.com.
مرحله 1. مطمئن شوید که درایورهای لازم نصب شده اند و برد STM32 Nucleo با برد توسعه مناسب به رایانه شخصی متصل است.
مرحله 2. برنامه MEMS-Studio را اجرا کنید تا پنجره اصلی برنامه باز شود.
اگر یک برد STM32 Nucleo با سیستم عامل پشتیبانی شده به رایانه شخصی متصل شود، به طور خودکار شناسایی می شود.
دکمه [اتصال] را فشار دهید تا اتصال به هیئت ارزیابی برقرار شود.

ST X CUBE MEMS1 MotionFD Real Time Fall Detection Library- Connect

مرحله 3. هنگام اتصال به برد STM32 Nucleo با سیستم عامل پشتیبانی شده، برگه [ارزیابی کتابخانه] باز می شود.
برای شروع و توقف جریان داده، [شروع] مناسب را تغییر دهید نماد کتابخانه تشخیص سقوط در زمان واقعی ST X CUBE MEMS1 MotionFD یا [توقف] ST X CUBE MEMS1 کتابخانه تشخیص سقوط در زمان واقعی MotionFD-icon1  دکمه روی نوار ابزار عمودی بیرونی.
داده های حاصل از سنسور متصل می تواند باشد viewبرگه [Data Table] را در ابزار عمودی داخلی ba انتخاب کنید

ST X CUBE MEMS1 کتابخانه تشخیص سقوط بیدرنگ MotionFD- جدول داده

مرحله 4. روی [تشخیص سقوط] کلیک کنید تا پنجره برنامه اختصاصی باز شود.

ST X CUBE MEMS1 MotionFD Real Time Fall Detection Library- Fall Detection

مرحله 5. بر روی [ذخیره در File] برای باز کردن پنجره پیکربندی dataloging. سنسور و داده های تشخیص سقوط را برای ذخیره در آن انتخاب کنید file. با کلیک بر روی دکمه مربوطه می توانید ذخیره را شروع یا متوقف کنید.

ST X CUBE MEMS1 کتابخانه تشخیص سقوط در زمان واقعی MotionFD- ذخیره در File

مرحله 6. از حالت تزریق داده می توان برای ارسال داده های به دست آمده قبلی به کتابخانه و دریافت نتیجه استفاده کرد. برگه [تزریق داده] را در نوار ابزار عمودی انتخاب کنید تا قسمت اختصاصی باز شود view برای این قابلیت

ST X CUBE MEMS1 کتابخانه تشخیص سقوط در زمان واقعی MotionFD- تزریق داده

مرحله 7. برای انتخاب روی دکمه [Browse] کلیک کنید file با داده های قبلی گرفته شده در قالب CSV.
داده ها در جدول در جریان بارگذاری می شوند view.
دکمه های دیگر فعال خواهند شد. می توانید روی:
– دکمه [حالت آفلاین] برای روشن/خاموش کردن حالت آفلاین سیستم عامل (حالتی که از داده های قبلی گرفته شده استفاده می کند).
– دکمه های [Start]/[Stop]/[Step]/[Repeat] برای کنترل فید داده از MEMS-Studio به کتابخانه.

2.5 مراجع
تمام منابع زیر به صورت رایگان در www.st.com موجود است.

  1. UM1859: شروع به کار با MEMS حرکتی X-CUBE-MEMS1 و توسعه نرم افزار حسگر محیطی برای STM32Cube
  2. UM1724: بردهای STM32 Nucleo-64 (MB1136)
  3. UM3233: شروع کار با MEMS-Studio

تاریخچه تجدید نظر

جدول 4. تاریخچه بازنگری سند

تاریخ نسخه تغییرات
 22 سپتامبر 2017 1 انتشار اولیه
6-18 فوریه 2 منابع اضافه شده به برد توسعه NUCLEO-L152RE و جدول 2. الگوریتم زمان سپری شده (μs).
21-مارس-18 3 مقدمه و بخش 2.1 MotionFD به روز شده استview.
19-19 فوریه 4 جدول به روز شده 2. الگوریتم زمان سپری شده (μs) و شکل 2. STM32 Nucleo: LED، دکمه، جامپر.
اطلاعات سازگاری برد توسعه X-NUCLEO-IKS01A3 اضافه شد.
17 سپتامبر 24 5 به روز شده مقدمه بخش، بخش 2.1: MotionFD به پایان رسیدviewبخش 2.2.1: توضیحات کتابخانه MotionFD، بخش 2.2.2: API های MotionFD، بخش 2.2.5: عملکرد الگوریتم، بخش 2.3: Sampبرنامه کاربردی، بخش 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، کتابخانه تشخیص سقوط بی‌درنگ، کتابخانه تشخیص سقوط، کتابخانه تشخیص سقوط، کتابخانه

مراجع

نظر بدهید

آدرس ایمیل شما منتشر نخواهد شد. فیلدهای الزامی مشخص شده اند *