فهرست مطالب:

استفاده از سونار ، لیدار و دید رایانه ای روی میکروکنترلرها برای کمک به افراد کم بینا: 16 مرحله
استفاده از سونار ، لیدار و دید رایانه ای روی میکروکنترلرها برای کمک به افراد کم بینا: 16 مرحله

تصویری: استفاده از سونار ، لیدار و دید رایانه ای روی میکروکنترلرها برای کمک به افراد کم بینا: 16 مرحله

تصویری: استفاده از سونار ، لیدار و دید رایانه ای روی میکروکنترلرها برای کمک به افراد کم بینا: 16 مرحله
تصویری: Profile elevation using in ArcGIS پروفیل ارتفاعی در آرک جی آی اس 2024, جولای
Anonim
استفاده از سونار ، لیدار ، و دید رایانه ای روی میکروکنترلرها برای کمک به افراد کم بینا
استفاده از سونار ، لیدار ، و دید رایانه ای روی میکروکنترلرها برای کمک به افراد کم بینا

من می خواهم یک "عصا" هوشمند ایجاد کنم که بتواند به افراد دارای نقص بینایی بسیار بیشتر از راه حل های موجود کمک کند. عصا قادر است با ایجاد سر و صدا در هدفون های نوع صدای فراگیر ، اشیاء جلو یا کناری را به کاربر اطلاع دهد. این عصا دارای یک دوربین کوچک و LIDAR (تشخیص و تشخیص نور) است تا بتواند اشیا و افراد داخل اتاق را تشخیص داده و با استفاده از هدفون به کاربر اطلاع دهد. به دلایل ایمنی ، هدفون جلوی همه سر و صدا را نمی گیرد زیرا میکروفونی وجود دارد که می تواند صداهای غیر ضروری را فیلتر کرده و بوق ماشین و افراد را در حال صحبت نگه دارد. در نهایت سیستم دارای GPS است تا بتواند مسیرها را نشان دهد و به کاربر نشان دهد کجا باید برود.

لطفاً در مسابقات میکروکنترلر و تناسب اندام در فضای باز به من رای دهید!

مرحله 1: مرور کلی پروژه

مروری بر پروژه
مروری بر پروژه
مروری بر پروژه
مروری بر پروژه
مروری بر پروژه
مروری بر پروژه

بر اساس دسترسی جهانی نابینایان ، حرکت بدنی یکی از بزرگترین چالش های افراد نابینا است. سفر کردن یا قدم زدن در یک خیابان شلوغ ممکن است بسیار دشوار باشد. به طور سنتی تنها راه حل استفاده از "عصای سفید" بود که عمدتا برای اسکن محیط با برخورد با موانع در مجاورت کاربر استفاده می شد. یک راه حل بهتر می تواند دستگاهی باشد که بتواند با ارائه اطلاعات مربوط به محل موانع ، کمک بینا را جایگزین کند تا فرد نابینا بتواند در محیط های ناشناخته بیرون رفته و احساس امنیت کند. در طول این پروژه ، یک دستگاه کوچک با باتری که این معیارها را دارد ، توسعه داده شد. این دستگاه می تواند اندازه و موقعیت جسم را با استفاده از حسگرهایی تشخیص دهد که موقعیت اجسام را در ارتباط با کاربر اندازه گیری می کنند ، این اطلاعات را به میکروکنترلر منتقل می کنند و سپس آن را به صدا تبدیل می کنند تا اطلاعات را در اختیار کاربر قرار دهند. این دستگاه با استفاده از LIDAR تجاری موجود (تشخیص و اندازه گیری نور) ، SONAR (ناوبری و زنگ صدا) ، و فناوری های بینایی رایانه ای که به میکروکنترلرها متصل شده و برای ارائه خروجی اطلاعات شنیدنی مورد نیاز با استفاده از هدفون یا هدفون برنامه ریزی شده است. فناوری تشخیص در "عصای سفید" تعبیه شده است تا وضعیت کاربر را برای دیگران نشان دهد و ایمنی بیشتری را ارائه دهد.

مرحله 2: تحقیقات پیشین

پیشینه تحقیق
پیشینه تحقیق
پیشینه تحقیق
پیشینه تحقیق
پیشینه تحقیق
پیشینه تحقیق
پیشینه تحقیق
پیشینه تحقیق

در سال 2017 ، سازمان بهداشت جهانی گزارش داد که 285 میلیون نفر دارای مشکل بینایی در سراسر جهان هستند که 39 میلیون نفر از آنها کاملاً نابینا هستند. اکثر مردم به مسائلی که افراد کم بینا هر روز با آن روبرو می شوند فکر نمی کنند. بر اساس دسترسی جهانی نابینایان ، حرکت بدنی یکی از بزرگترین چالش های افراد نابینا است. سفر کردن یا پیاده روی در خیابان شلوغ ممکن است بسیار دشوار باشد. به همین دلیل ، بسیاری از افرادی که دارای بینایی هستند ترجیح می دهند یک دوست یا اعضای خانواده بینا را برای راهنمایی در محیط های جدید بیاورند. به طور سنتی تنها راه حل استفاده از "عصای سفید" بود که عمدتا برای اسکن محیط با برخورد با موانع در مجاورت کاربر استفاده می شد. یک راه حل بهتر می تواند دستگاهی باشد که بتواند با ارائه اطلاعات مربوط به محل موانع ، کمک بینا را جایگزین کند تا فرد نابینا بتواند در محیط های ناشناخته بیرون رفته و احساس امنیت کند. NavCog ، همکاری بین IBM و دانشگاه Carnegie Mellon ، سعی کرده است با ایجاد سیستمی که از چراغ های بلوتوث و تلفن های هوشمند برای راهنمایی کمک می کند ، مشکل را حل کند. با این حال ، راه حل دست و پا گیر بود و برای اجرای مقیاس بزرگ بسیار پرهزینه بود. راه حل من با حذف هرگونه نیاز به دستگاه های خارجی و استفاده از صدا برای راهنمایی کاربر در طول روز (شکل 3) به این مسئله می پردازد. مزیت استفاده از فناوری تعبیه شده در "عصای سفید" این است که به بقیه جهان وضعیت کاربر را نشان می دهد که باعث تغییر در رفتار افراد اطراف می شود.

مرحله 3: الزامات طراحی

الزامات طراحی
الزامات طراحی

پس از تحقیق در مورد فناوری های موجود ، من راه حل های ممکن را با متخصصان بینایی در مورد بهترین رویکرد برای کمک به افراد کم بینا در جهت یابی در محیط خود بحث کردم. جدول زیر مهمترین ویژگیهای مورد نیاز برای انتقال شخص به دستگاه من را نشان می دهد.

ویژگی - توضیحات:

  • محاسبه - سیستم نیاز به پردازش سریع اطلاعات مبادله شده بین کاربر و حسگرها دارد. به عنوان مثال ، سیستم باید بتواند کاربر را از موانع موجود در حداقل 2 متر دورتر مطلع کند.
  • پوشش - سیستم باید خدمات خود را در داخل و خارج از منزل ارائه دهد تا کیفیت زندگی افراد کم بینا بهبود یابد.
  • زمان - سیستم باید در روز و شب عملکرد خوبی داشته باشد.
  • محدوده - محدوده فاصله بین کاربر و شی است که توسط سیستم شناسایی می شود. حداقل برد ایده آل 0.5 متر است ، در حالی که حداکثر برد باید بیش از 5 متر باشد. محاسبه فواصل بیشتر حتی بهتر اما چالش برانگیزتر خواهد بود.
  • نوع شی - سیستم باید ظاهر ناگهانی اشیا را تشخیص دهد. سیستم باید بتواند تفاوت بین اجسام متحرک و اجسام ایستا را تشخیص دهد.

مرحله 4: طراحی مهندسی و انتخاب تجهیزات

طراحی مهندسی و انتخاب تجهیزات
طراحی مهندسی و انتخاب تجهیزات
طراحی مهندسی و انتخاب تجهیزات
طراحی مهندسی و انتخاب تجهیزات
طراحی مهندسی و انتخاب تجهیزات
طراحی مهندسی و انتخاب تجهیزات

پس از بررسی اجزای مختلف ، تصمیم گرفتم در مورد بخشهایی که از دسته های مختلف زیر انتخاب شده اند ، انتخاب کنم.

قیمت قطعات انتخاب شده:

  • پلنگ زونگل: 149.99 دلار
  • LiDAR Lite V3: 149.99 دلار
  • LV-MaxSonar-EZ1: 29.95 دلار
  • سنسور اولتراسونیک - HC -SR04: 3.95 دلار
  • رزبری پای 3: 39.95 دلار
  • آردوینو: 24.95 دلار
  • کینکت: 32.44 دلار
  • Floureon 11.1v 3s 1500mAh: 19.99 دلار
  • LM2596HV: 9.64 دلار

مرحله 5: انتخاب تجهیزات: روش تعامل

انتخاب تجهیزات: روش تعامل
انتخاب تجهیزات: روش تعامل
انتخاب تجهیزات: روش تعامل
انتخاب تجهیزات: روش تعامل

تصمیم گرفتم از کنترل صدا به عنوان روشی برای تعامل با دستگاه استفاده کنم زیرا داشتن دکمه های متعدد روی عصا می تواند برای افراد کم بینا چالش برانگیز باشد ، به خصوص اگر برخی از عملکردها به ترکیبی از دکمه ها نیاز داشته باشند. با کنترل صدا ، کاربر می تواند از دستورات از پیش تعیین شده برای ارتباط با عصا استفاده کند که خطاهای احتمالی را کاهش می دهد.

دستگاه: مزایا --- منفی:

  • دکمه ها: هنگام فشردن دکمه راست خطایی در فرمان وجود ندارد --- اطمینان از فشار دادن دکمه های صحیح ممکن است چالش برانگیز باشد
  • کنترل صدا: آسان است زیرا کاربر می تواند از دستورات از پیش تعیین شده استفاده کند --- تلفظ نادرست ممکن است باعث ایجاد خطا شود

مرحله 6: انتخاب تجهیزات: میکروکنترلر

انتخاب تجهیزات: میکروکنترلر
انتخاب تجهیزات: میکروکنترلر
انتخاب تجهیزات: میکروکنترلر
انتخاب تجهیزات: میکروکنترلر
انتخاب تجهیزات: میکروکنترلر
انتخاب تجهیزات: میکروکنترلر

این دستگاه از رزبری پای به دلیل هزینه کم و قدرت پردازش کافی برای محاسبه نقشه عمق استفاده کرد. اینتل ژول گزینه ترجیحی بود اما قیمت آن هزینه سیستم را دو برابر می کرد که این دستگاه ایده آل نخواهد بود ، زیرا این دستگاه برای ارائه گزینه کم هزینه برای کاربران طراحی شده است. آردوینو در سیستم استفاده شد زیرا به راحتی می تواند از سنسورها اطلاعات دریافت کند. BeagleBone و Intel Edison به دلیل نسبت قیمت به عملکرد پایین مورد استفاده قرار نگرفتند که برای این سیستم کم هزینه بد است.

میکروکنترلر: جوانب مثبت --- منفی:

  • Raspberry Pi: دارای قدرت پردازش کافی برای یافتن موانع و دارای WiFi/Bluetooth یکپارچه --- گزینه های زیادی برای دریافت داده از حسگرها وجود ندارد
  • آردوینو: به راحتی داده ها را از سنسورهای کوچک دریافت کنید. یعنی LIDAR ، Ultrasonic ، SONAR و غیره --- قدرت پردازش کافی برای یافتن موانع وجود ندارد
  • اینتل ادیسون: می تواند با پردازنده سریع موانع را به سرعت پردازش کند --- برای عملکرد سیستم به قطعات برنامه نویس اضافی نیاز دارد
  • Intel Joule: دارای سرعت پردازش هر یک از میکروکنترلرهای موجود در بازار مصرف تا به امروز --- هزینه بسیار بالا برای این سیستم و تعامل با GPIO برای تعامل سنسور مشکل است.
  • BeagleBone Black: جمع و جور و سازگار با حسگرهای مورد استفاده در پروژه با استفاده از خروجی ورودی هدف عمومی (GPIO) --- قدرت پردازش کافی برای یافتن م objectsثر اشیاء

مرحله 7: انتخاب تجهیزات: حسگرها

انتخاب تجهیزات: سنسورها
انتخاب تجهیزات: سنسورها
انتخاب تجهیزات: سنسورها
انتخاب تجهیزات: سنسورها
انتخاب تجهیزات: سنسورها
انتخاب تجهیزات: سنسورها

ترکیبی از چند سنسور برای به دست آوردن دقت مکان بالا استفاده می شود. Kinect حسگر اصلی است زیرا مقدار مساحت آن می تواند موانع را همزمان اسکن کند. LIDAR که مخفف LIght Detection و Ranging است ، یک روش سنجش از دور است که از نور به شکل یک لیزر پالس برای اندازه گیری فاصله از جایی که سنسور تا اجسام به سرعت اندازه گیری می کند ، استفاده می کند. از این سنسور استفاده می شود زیرا می تواند مساحتی تا 40 متر (متر) را ردیابی کند و از آنجا که می تواند در زوایای مختلف اسکن کند ، می تواند تشخیص دهد که آیا پله ای بالا یا پایین می رود. سنسورهای SOON Navigation And Ranging (SONAR) و فراصوت به عنوان ردیابی پشتیبان در صورت از دست رفتن قطب یا ضربه ای در زمین که ممکن است برای کاربر خطری ایجاد کند ، استفاده می شود. سنسور آزادی 9 درجه برای ردیابی جهت کاربر در جهت استفاده قرار می گیرد تا دستگاه بتواند اطلاعات بعدی را با دقت بالاتری ذخیره کند ، دفعه بعد که فرد در همان مکان راه می رود.

سنسورها: جوانب مثبت --- منفی:

  • Kinect V1: می تواند اشیاء سه بعدی را با --- تنها با یک دوربین برای تشخیص محیط اطراف ردیابی کند
  • Kinect V2: دارای 3 دوربین مادون قرمز و یک دوربین قرمز ، سبز ، آبی ، عمق (RGB-D) برای تشخیص شی سه بعدی با دقت بالا --- می تواند گرم شود و ممکن است به یک فن خنک کننده نیاز داشته باشد و بزرگتر از سنسورهای دیگر است
  • LIDAR: پرتویی که می تواند مکان ها را تا 40 متر دورتر ردیابی کند --- باید به سمت جسم قرار گیرد و فقط می تواند در آن جهت نگاه کند
  • SONAR: پرتويي كه مي تواند 5 متر دورتر اما در فاصله زياد رديابي شود --- اشياء كوچك مانند پرها مي توانند حسگر را فعال كنند.
  • التراسونیک: برد آن تا 3 متر است و بسیار ارزان است --- فاصله ها گاهی اوقات نادرست است
  • سنسور آزادی 9 درجه: برای تشخیص جهت و سرعت کاربر مناسب است --- اگر چیزی با سنسورها تداخل داشته باشد ، محاسبات فاصله را می توان به اشتباه محاسبه کرد

مرحله 8: انتخاب تجهیزات: نرم افزار

انتخاب تجهیزات: نرم افزار
انتخاب تجهیزات: نرم افزار
انتخاب تجهیزات: نرم افزار
انتخاب تجهیزات: نرم افزار
انتخاب تجهیزات: نرم افزار
انتخاب تجهیزات: نرم افزار

نرم افزار انتخاب شده برای اولین نمونه های اولیه ساخته شده با سنسور Kinect V1 Freenect بود اما خیلی دقیق نبود. هنگام تغییر به Kinect V2 و Freenect2 ، نتایج ردیابی به دلیل بهبود ردیابی به میزان قابل توجهی بهبود یافت زیرا V2 دارای یک دوربین HD و 3 دوربین مادون قرمز در مقابل یک دوربین واحد در Kinect V1 است. وقتی از OpenNi2 با Kinect V1 استفاده می کردم ، عملکردها محدود بود و من نمی توانستم برخی از عملکردهای دستگاه را کنترل کنم.

نرم افزار: جوانب مثبت --- منفی:

  • Freenect: کنترل کمتری برای کنترل همه چیز دارد --- فقط از Kinect V1 پشتیبانی می کند
  • OpenNi2: به راحتی می تواند داده های ابر نقطه ای را از جریان اطلاعات Kinect ایجاد کند --- فقط از Kinect V1 پشتیبانی می کند و از کنترل سطح پایین پشتیبانی نمی کند
  • Freenect2: دارای سطح کنترل پایین تر برای نوار سنسور --- فقط برای Kinect V2 کار می کند
  • ROS: سیستم عامل ایده آل برای برنامه نویسی عملکردهای دوربین --- نیاز به نصب روی کارت SD سریع دارد تا نرم افزار کار کند

مرحله 9: انتخاب تجهیزات: سایر قسمتها

انتخاب تجهیزات: سایر قسمتها
انتخاب تجهیزات: سایر قسمتها
انتخاب تجهیزات: سایر قسمتها
انتخاب تجهیزات: سایر قسمتها

باتری های لیتیوم یون به دلیل سبک بودن ، دارای ظرفیت قدرت بالا و قابل شارژ انتخاب شدند. نوع 18650 باتری لیتیوم یونی شکل استوانه ای دارد و کاملاً در نمونه اولیه عصا جای می گیرد. اولین نمونه عصا از لوله PVC ساخته شده است زیرا توخالی است و وزن عصا را کاهش می دهد.

مرحله 10: توسعه سیستم: ایجاد سخت افزار قسمت 1

توسعه سیستم: ایجاد سخت افزار قسمت 1
توسعه سیستم: ایجاد سخت افزار قسمت 1
توسعه سیستم: ایجاد سخت افزار قسمت 1
توسعه سیستم: ایجاد سخت افزار قسمت 1
توسعه سیستم: ایجاد سخت افزار قسمت 1
توسعه سیستم: ایجاد سخت افزار قسمت 1

ابتدا باید Kinect را جدا کنید تا سبک تر شود و در داخل عصا جا بگیرد. من با بیرون آوردن تمام پوشش بیرونی از Kinect شروع کردم زیرا پلاستیک استفاده شده وزن زیادی دارد. سپس مجبور شدم کابل را قطع کنم تا پایه برداشته شود. سیمها را از کانکتور نشان داده شده در تصویر برداشته و با سیمهای سیگنال به کابل usb لحیم کردم و دو اتصال دیگر برای برق ورودی 12 ولت بود. از آنجا که می خواستم فن داخل عصا با قدرت کامل کار کند تا همه اجزای دیگر را خنک کند ، اتصال فن را از Kinect قطع کردم و 5 ولت را از رزبری پای سیم کشی کردم. من همچنین یک آداپتور کوچک برای سیم LiDAR تهیه کردم تا بتواند مستقیماً بدون هیچ سیستم دیگری در بین آن به Raspberry Pi متصل شود.

من به طور تصادفی سیم سفید را به سیم سیاه وصل کردم ، بنابراین برای نمودارهای سیم کشی به تصاویر نگاه نکنید

مرحله 11: توسعه سیستم: ایجاد سخت افزار قسمت 2

توسعه سیستم: ایجاد سخت افزار قسمت 2
توسعه سیستم: ایجاد سخت افزار قسمت 2
توسعه سیستم: ایجاد سخت افزار قسمت 2
توسعه سیستم: ایجاد سخت افزار قسمت 2
توسعه سیستم: ایجاد سخت افزار قسمت 2
توسعه سیستم: ایجاد سخت افزار قسمت 2
توسعه سیستم: ایجاد سخت افزار قسمت 2
توسعه سیستم: ایجاد سخت افزار قسمت 2

من یک قطعه تنظیم کننده ایجاد کردم تا بتوانم همه دستگاههایی را که به رزولوشن Pi نیاز دارند به 5 ولت تغذیه کند. من تنظیم کننده را با قرار دادن یک متر در خروجی و تنظیم مقاومت به طوری که تنظیم کننده 5.05V را تأمین می کند ، تنظیم کردم. من آن را کمی بالاتر از 5V قرار دادم زیرا با گذشت زمان ، ولتاژ باتری کاهش می یابد و کمی بر ولتاژ خروجی تأثیر می گذارد. همچنین یک آداپتور تهیه کردم که به من امکان می دهد تا 5 دستگاه را که از باتری به 12 ولت نیاز دارند ، تغذیه کنم.

مرحله 12: توسعه سیستم: برنامه ریزی سیستم قسمت 1

توسعه سیستم: برنامه ریزی سیستم قسمت 1
توسعه سیستم: برنامه ریزی سیستم قسمت 1
توسعه سیستم: برنامه نویسی سیستم قسمت 1
توسعه سیستم: برنامه نویسی سیستم قسمت 1
توسعه سیستم: برنامه ریزی سیستم قسمت 1
توسعه سیستم: برنامه ریزی سیستم قسمت 1

یکی از چالش برانگیزترین بخش های این سیستم برنامه نویسی است. وقتی برای اولین بار Kinect را مجبور کردم با آن بازی کند ، برنامه ای به نام RTAB Map نصب کردم که جریان داده ها را از Kinect می گیرد و به یک ابر نقطه ای تبدیل می کند. با ابر نقطه ای ، یک تصویر سه بعدی ایجاد کرد که می تواند بچرخد تا عمق جایی که همه اجسام در آن هستند را ببینید. پس از مدتی بازی با آن و تنظیم همه تنظیمات ، تصمیم گرفتم نرم افزاری را روی Raspberry Pi نصب کنم تا بتوانم جریان داده ها را از Kinect ببینم. دو تصویر آخر بالا نشان می دهد که رزبری پای چه چیزی را می تواند با سرعت 15-20 فریم در ثانیه تولید کند.

توصیه شده: