فهرست مطالب:
- تدارکات
- مرحله 1: IDE ها و کتابخانه های لازم را نصب کنید
- مرحله 2: شتاب سنج ها را به پر وصل کنید
- مرحله 3: شتاب سنج ها را به پیراهن وصل کنید
- مرحله 4: اجرای کد بر روی آردوینو
- مرحله 5: اجرای کد در Android
- مرحله 6: آزمایش اتصال سیگنال بلوتوث
- مرحله 7: جمع آوری داده های شخصی خود
- مرحله 8: آموزش داده های خود در Jupyter Notebook
- مرحله 9: اصلاح برنامه Android با مدل جدید
تصویری: پست پیراهنی: تشخیص وضعیت پوشیدنی در زمان واقعی: 9 مرحله
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:52
Postshirt یک سیستم تشخیص وضعیت بی سیم بی سیم است که داده های شتاب سنج را از Adafruit Feather به برنامه Android از طریق بلوتوث منتقل و طبقه بندی می کند. اگر کاربر وضعیت بدی داشته باشد ، سیستم کامل می تواند در زمان واقعی تشخیص دهد و هنگامی که کاربر شروع به لغزش می کند ، یک اعلان فشار ایجاد می کند ، این تشخیص هنگام راه رفتن نیز کار می کند.
تدارکات
الکترونیک
1 عدد گوشی هوشمند اندرویدی
1 عدد پر آدافروت
1 عدد باتری لیتیوم یون پلیمر - 3.7v 100mAh (اختیاری برای استفاده بی سیم)
2 شتاب سنج سه محوره ADXL335
مواد
سیم اتصال
رول نوار
مرحله 1: IDE ها و کتابخانه های لازم را نصب کنید
پر آدافروت
ابتدا Arduino IDE را نصب کرده و سپس مراحل نصب Adafruit nRF51 BLE Library را دنبال کنید
دفترچه یادداشت Jupyter
ابتدا Jupyter Notebook و سپس کتابخانه های مورد نیاز زیر را نصب کنید
- https://scikit-learn.org/stable/
- https://github.com/nok/sklearn-porter
اندروید
Android Studio را نصب کنید
کد پروژه
تمام کد پروژه را از GitHub بارگیری کنید
مرحله 2: شتاب سنج ها را به پر وصل کنید
برای خواندن داده ها از ADXL335s سیم اتصال را به پین های Vin ، ground ، Xout ، Yout و Zout وصل کنید. برای هر دو شتاب سنج ، انتهای دیگر سیم های Vin را به پین 3V روی پر و دیگر انتهای پین های زمین را به پایه زمین روی پر وصل کنید. سیم های Xout ، Yout و Zout اولین شتاب سنج را به پین های A0 ، A1 و A2 در Feather وصل کنید. سیم های Xout ، Yout و Zout شتاب سنج دوم را به پین های A3 ، A4 و A5 در Feather وصل کنید.
شتاب سنجها را می توان به هر طریقی وصل کرد اما لحیم کاری سیمها و کوچک شدن یا پیچاندن نوار برقی در اطراف نقاط اتصال برای جلوگیری از تماس قسمتهای در معرض یکدیگر توصیه می شود.
مرحله 3: شتاب سنج ها را به پیراهن وصل کنید
با استفاده از نوار ، شتاب سنج ها را به پشت پیراهن وصل کنید. شتاب سنجی که به پین A0-2 متصل شده است باید به صورت افقی در وسط قسمت پایین کمر قرار گیرد. شتاب سنج که به پین A3-5 متصل شده است باید به صورت افقی در پشت گردن قرار گیرد. هر دو شتاب سنج باید طوری تراز شوند که پین ها در قسمت پایینی قرار گرفته و سنسورها باید صاف و محکم در برابر پیراهن محکم شوند.
توجه: برای پوشیدن دائمی تر ، سنسورها را می توان روی لباس دوخت ، اما باید ابتدا آنها را چسبانده و آزمایش کرد تا از قرارگیری م sensorثر سنسورها اطمینان حاصل شود.
مرحله 4: اجرای کد بر روی آردوینو
برای شروع جمع آوری داده ها روی Feather ، Arduino IDE را راه اندازی کنید و فایل GestureDataSender را در قسمت Arduino کد پروژه باز کنید. با باز کردن این فایل ، برد و پورت مورد استفاده را تنظیم کنید و سپس "Verify" و "Upload" را برای بارگذاری کد در Feather انتخاب کنید.
مرحله 5: اجرای کد در Android
برای اجرای برنامه در Android ابتدا Android Studio را راه اندازی کنید و سپس گزینه باز کردن یک پروژه Android موجود را انتخاب کنید. به کد پروژه بروید و پوشه "Android" را انتخاب کنید. اندروید استودیو برای همگام سازی فایل های پروژه مدتی طول می کشد و ممکن است درخواست نصب برخی از کتابخانه های مورد نیاز را داشته باشد ، این گزینه ها را بپذیرید. پس از آماده شدن پروژه ، دستگاه Android را به کامپیوتر وصل کرده و گزینه run را در بالای پنجره انتخاب کنید. دستگاه را از اعلان نمایش داده شده انتخاب کنید و سپس اجازه دهید برنامه روی دستگاه نصب شود.
مرحله 6: آزمایش اتصال سیگنال بلوتوث
پس از باز شدن برنامه ، مطمئن شوید که Feather روشن است و سپس Adafruit Bluefruit LE را از لیست دستگاه هایی که روی گوشی ظاهر می شود انتخاب کنید. منتظر بمانید تا دستگاه متصل شود ، اگر اتصال برای اولین بار دوباره متصل نشد قبل از انجام سایر مراحل اشکال زدایی ، اتصال را امتحان کنید. پس از اتصال دستگاه ، ماژول "Posture Detector" را انتخاب کنید که در صورت عملکرد صحیح ، یک نمودار به روز رسانی زنده و همچنین پیش بینی های فعلی وضعیت و حرکت را نشان می دهد. برای بررسی اینکه آردوینو داده های حسگر را به درستی منتقل می کند ، دو شتاب سنج را در جهت های تصادفی حرکت داده و بررسی کنید که آیا همه خطوط روی نمودار تغییر کرده اند. اگر برخی از خطوط به طور مداوم صاف باقی می مانند ، مطمئن شوید که شتاب سنج ها به درستی به پر وصل شده اند. اگر همه چیز در حال کار است پیراهن را بپوشید و آزمایش کنید که تشخیص وضعیت به درستی وضعیت شما را پیش بینی می کند. تبریک می گویم! شما با موفقیت یک پوشه قابل تشخیص تشخیص وضعیت را تنظیم کرده اید. برای آموزش نحوه ایجاد مجموعه داده شخصی خود و سفارشی سازی تشخیص وضعیت خود ، این دستورالعمل را ادامه دهید.
مرحله 7: جمع آوری داده های شخصی خود
برای جمع آوری داده های خود به صفحه انتخاب ماژول بازگردید و ماژول Data Recorder را باز کنید. پس از باز شدن این صفحه ، برچسب داده هایی را که جمع آوری می کنید ، پر کنید. به منظور آموزش آسان بر روی داده های خود ، باید کلمه "خوب" را به نام هرگونه ضبط با وضعیت خوب و "بد" در هرگونه ضبط با وضعیت قرار دهید. برای شروع جمع آوری ، روی دکمه "جمع آوری داده ها" ضربه بزنید و اقدام مورد نظر خود را انجام دهید ، پس از اتمام کار مجدداً روی دکمه ضربه بزنید و داده ها را ذخیره و ذخیره کنید. همه داده های ثبت شده در پوشه ای با نام "GestureData" در زیر پوشه اسناد سیستم فایل شما ذخیره می شوند. پس از اتمام ضبط تمام داده ها ، فایل ها را برای آموزش مدل در رایانه خود کپی کنید.
مرحله 8: آموزش داده های خود در Jupyter Notebook
کد اولیه پروژه شامل داده های اصلی مورد استفاده برای آموزش در پوشه "data" در بخش Jupyter Notebook است ، برای آموزش داده های خود همه فایل های موجود در این پوشه را حذف کرده و سپس داده های خود را در پوشه کپی کنید. سپس Jupyter Notebook را اجرا کرده و "PostureDetectorTrainer.ipynb" را باز کنید. این نوت بوک به گونه ای طراحی شده است که به طور خودکار هرگونه فایل را در پوشه داده ها با وضعیت بد خوب و بد جدا کرده و سپس SVM خطی را برای طبقه بندی آموزش دهد تا مدل را آموزش دهد به سادگی "Cell" را انتخاب کرده و "Run All" را انتخاب کنید. اجرای این دفترچه ممکن است یک لحظه طول بکشد ، اما پس از کامل شدن به نقطه ای که دقت پیش بینی وضعیت را برای مدل ارائه می دهد ، بروید ، اگر دقت پایین است ، ممکن است بخواهید اطمینان حاصل کنید که ضبط های قبلی شما از صحت و سقم دقیق و ثابت برخوردار هستند. اگر نتایج خوب به نظر می رسند ، به سلول بعدی بروید که در آن کلاس جاوا ایجاد شده است. به پایین این سلول بروید تا قسمتی را ببینید که به عنوان پارامترها نظر داده شده است. این مقادیر را کپی کنید زیرا در مرحله بعد به آنها نیاز خواهید داشت.
مرحله 9: اصلاح برنامه Android با مدل جدید
برای تغییر مدل در برنامه اندروید از Android Studio برای رفتن به فایل "PostureDetectorFragment.java" در قسمت java ساختار پروژه استفاده کنید. در این فایل به قسمت مورد نظر که به عنوان "طبقه بندی کننده وضعیت" گفته می شود بروید که دارای 4 متغیر متناظر با 4 متغیری است که در Jupyter Notebook ایجاد شده است. مقادیر این 4 متغیر را با مقادیر کپی شده از Jupyter Notebook جایگزین کنید ، مطمئن باشید که نام متغیرها از p_vector ، p_coefficients و غیره تغییر نکرده است. پس از اتمام این کار فایل را ذخیره کرده و مجددا گزینه Run را انتخاب کنید تا برنامه برای شما ساخته شود. دستگاه برای باز کردن ماژول Posture Detector مراحل مشابه قبلی را دنبال کنید و باید ببینید طبقه بندی کننده اکنون با مدل آموزش دیده خود کار می کند. اگر هنوز به نظر نمی رسد عملکرد خوبی داشته باشد ، باید ضبط داده های بیشتر و بازسازی مدل را در نظر بگیرید. در غیر این صورت تبریک می گویم! شما اکنون طبقه بندی کننده شخصی آموزش دیده خود را به پیراهن وارد کرده اید!
توصیه شده:
تشخیص دستگاه در زمان واقعی با استفاده از رد پای EM: 6 مرحله
تشخیص دستگاه در زمان واقعی با استفاده از رد پای EM: این دستگاه برای طبقه بندی دستگاه های الکترونیکی مختلف با توجه به سیگنال های EM آنها در نظر گرفته شده است. برای دستگاه های مختلف ، سیگنال های EM متفاوتی وجود دارد که توسط آن منتشر می شود. ما یک راه حل اینترنت اشیا برای شناسایی دستگاه های الکترونیکی با استفاده از ذرات
دستگاه پوشیدنی TDCS پوشیدنی: 4 مرحله
دستگاه پوشیدنی DIY TDCS: TDCS (تحریک جریان مستقیم جمجمه ای) در این دستورالعمل ، من: 1. راه اندازی یک دستگاه ساده TDCS را با شما همراه کنید. طرح نظریه پشت مدارها. مقداری تحقیق معرفی کنید و توضیح دهید که چرا چنین دستگاهی ارزش ساخت دارد
تشخیص چهره در زمان واقعی در مراحل تمشک Pi-4: 6 (همراه با تصاویر)
تشخیص چهره در زمان واقعی در RaspberryPi-4: در این دستورالعمل ما قصد داریم تشخیص چهره در زمان واقعی را روی Raspberry Pi 4 با Shunya O/S با استفاده از کتابخانه Shunyaface انجام دهیم. با دنبال کردن این آموزش ، می توانید نرخ فریم تشخیص 15-17 را در RaspberryPi-4 بدست آورید
نحوه ایجاد وضعیت کوتاه وضعیت آب و هوا: 4 مرحله
چگونه می توان وضعیت آب و هوایی کوتاه را نمایش داد: درباره پروژه میکروکنترلر می تواند در عین حال سرگرم کننده و سرگرم کننده باشد ، برای اینترنت واقعی اشیاء ، مقداری اتصال به اینترنت اضافه کنید! اجازه دهید به شما نشان دهم که چگونه با استفاده از صفحه نمایش ماتریس 8x8 و یک صفحه نمایش کوچک وضعیت آب و هوا ایجاد کردم
تشخیص چهره در زمان واقعی: یک پروژه پایان به پایان: 8 مرحله (همراه با تصاویر)
تشخیص چهره در زمان واقعی: پروژه ای به پایان اکنون ما از PiCam خود برای تشخیص چهره در زمان واقعی استفاده می کنیم ، همانطور که در زیر مشاهده می کنید: این پروژه با این & quot؛ کتابخانه چشم انداز رایانه منبع باز & quot & انجام شد