این مقاله به بررسی استفاده از مدلهای واقعیت مجازی و تکنیکهای تشخیص برخورد در سیستمهای آموزش تعمیر و نگهداری آسانسور میپردازد.
ایجاد و بهینهسازی مدلهای واقعیت مجازی
مژگان حسینی – مدلهای واقعیت مجازی اجزای اصلی عملکرد این سیستم، عملیات صحنه و نمایش بصری آن هستند. در این سیستم، مدلهای اصلی واقعیت مجازی شامل گاورنرها و تسترها، گیرههای ایمنی، موتورهای اصلی، اتاقکهای کنترل، آسانسورها و محیطهای تعمیر و نگهداری است. مدلهای کارکردی پیچیده و با دقت بالا، مانند گاورنرها و تسترها، با استفاده از نرمافزار مدلسازی صنعتی کریو ایجاد شدهاند، در حالی که مدلهای دیگر با نرمافزار مدلسازی سهبعدی مایا ساخته شدند.
بهینهسازی مدلهای سهبعدی برای واقعیت مجازی
مدلسازی پارامتری با استفاده از کریو، منجر به مدلهای سهبعدی با مجموعه دادههای گستردۀ حاوی اطلاعات مونتاژ، روابط هندسی و دقت بالا میشود. با این حال، وجود اطلاعات اضافی فراوان در این مدلها سبب میشود مدلها حجم بالایی داشته باشند که میتواند سرعت بارگذاری مدل در سیستم را کاهش دهد، اجرای روان فرایند شبیهسازی را مختل کند و تأثیر قابلتوجهی بر عملکرد رایانه داشته باشد.
به همین دلیل، مدلها باید برای پردازش سبکتر به نرمافزار مایا وارد شوند. برای این منظور لازم است که مدلهای واقعیت مجازی به گونهای طراحی شوند که همزمان با حفظ دقت و جزئیات، حجم دادهها بهینهسازی شده و عملکرد سیستم بهبود یابد. همچنین موارد زیر نیز باید رعایت شوند:
- اطلاعات ویژگی استخراج شده را پیمایش و در دستههای مربوط ذخیره کنید.
- ماتریس اندازهگیری خطا را طبق الگوریتم QEM محاسبه کنید.
- ضریب تا شدن مثلثِ مدل گرید را محاسبه کنید.
- از الگوریتم QEM برای تا کردن مدل مش استفاده کنید.
پس از ایجاد مدل سهبعدی سبکتر، مدل در حالت low-poly باقی میماند. برای اطمینان از عملکرد دقیق سیستم، مدل با استفاده از نرمافزار Substance Painter بهینهسازی میشود. با استفاده از کارکرد پخت این نرمافزار، اطلاعات خاص مورد نیاز برای نگاشت به مدلهای high-poly بر اساس نیازهای مدل انتخاب میشود. گزینههای رایج عبارتاند از: Diffuse، Specular، Metalness، Normal، Roughness و Ambient Occlusion. با تغییر این اطلاعات، نقشههای بافت واقعگرایانه تولید میشوند. فرایند مدلسازی سهبعدی و مدلهای واقعیت مجازی در شکل ۱ نشان داده شده است.
شکل ۱. ایجاد و بهینهسازی مدلهای سهبعدی.
جنبههای کلیدی توسعه سیستم
برای اجرای آموزش مبتنی بر واقعیت مجازی تعمیر و نگهداری آسانسور، اولین گام طراحی رابط کاربری سیستم است که از طریق نمایش پیامهایی کاربر را راهنمایی میکند. رابط اصلی باید شامل نام سیستم و گزینههایی برای انتخاب حالت آموزش باشد. بر اساس نیاز، دو حالت باید طراحی شود: حالت آموزش، که دستورالعملهای گام به گام ارائه میدهد و حالت ارزیابی که محتوای ارزیابی تصادفی موجود در یک پایگاه داده را نمایش میدهد.
در گام دوم، لازم است یک رابط کاربری پیام طراحی شود تا بر اساس فرایند آموزش، اطلاعات عملیاتی مورد نیاز را بهطور خودکار در رابط کاربری نمایش دهد و برای انجام اقدامات بعدی کاربران را راهنمایی کند. سرانجام، در گام سوم رابطهای کاربری صفحۀ نمایش دستگاه باید طراحی شود، که یکی از آنها رابط نمایش دادهها روی دستگاه بازرسی است. دادههای نمایشدادهشده از طریق یک پایگاهدادۀ SQL Server همگامسازی میشوند، همانطور که در شکل ۲ نشان داده شده است.
بیشتر بخوانید:
- مفاهيم مرتبط با بازرسي كالاي وارداتي
- کدام گیربکس در دما و فشار بالا برای سیستمهای پیچیده بهتر عمل میکند؟
طراحی چارچوب سیستم و مدلهای واقعیت مجازی
طراحی چارچوب، مهمترین و پیچیدهترین بخش طراحی منطقی کل سیستم است. برای این سیستم، چارچوب به یک معماری سهلایه تقسیم میشود: لایه داده، لایه نمایش و لایه کنترل.
لایه داده در درجۀ اول برای ذخیرهسازی دادههایی که کل سیستم نیاز دارد یا دادههای مشترک استفاده میشود و در لایه مشترکِ سیستم قرار دارد. این لایه شامل دادههای وضعیت است و از جفتهای کلید-مقدار بولی برای ارزیابیهای منطقی استفاده میکند. برای نمونه، این لایه، منطق انتخاب حالت آموزش یا ارزیابی، استفاده از وسایل جانبی، شروع دستگاه بازرسی، جدا کردن قرقرۀ طناب و بازنشانی گاورنر را کنترل میکند.
لایه داده همچنین دادههای عددی مانند تعداد چرخههای ترمز گاورنر و نتایج آزمون را با ذخیرهسازی جفتهای کلید-مقدار صحیح یا اعشاری نگهداری میکند. علاوه بر این، سیستم دادههای متنی مانند محتوای فرایند تأیید گاورنر و محتوای ارزیابی را با جفتهای کلید-مقدار رشتهای ذخیره میکند.
لایه نمایش و لایه کنترل سیستم
لایه نمایش، عمدتاً مسئول ذخیرهسازی نمونههای رابط کاربری مرتبط با هر بخش، مدیریت مستقل تمامی پنجرههای رابط کاربری و ارائه رابطهای باز برای ادغام آسان با سایر ماژولهای عملیاتی است. این لایه بهطور خاص شامل رابط اصلی، رابط دستگاه، رابط پیام و پنلهای رابط کاربری مربوط به دکمههای عملیات است.
این پنلها شامل عناصری مانند متن عنوان، دکمههای مختلف و رابط کاربریِ صفحهنمایش دستگاه بازرسی هستند که اطلاعاتی مثل سرعت چرخش موتور و سرعت چرخش گاورنر را نمایش میدهند.
لایه کنترل در درجه اول مسئول کنترل منطقی کلیه عملیات سیستم است. در مورد سیستم آموزش، فرایند عملیات عملی مهمترین قسمت سیستم است. لایه کنترل شامل کنترل رفتار کاربر، کنترل گاورنر، کنترل دستگاه بازرسی و کنترل ابزارِ قفل میان کابلهای آسانسور و اتاقک آسانسور است.
شکل ۲. اجزای اصلی سیستم
فناوری تشخیص برخورد بلادرنگ
فناوری تشخیص برخورد برای تعیین اینکه آیا دو جسم در یک سیستم یا محیط مجازی در یک زمان خاص با هم برخورد میکنند، از اهمیت بالایی برخوردار است. توسعهدهندگان اطلاعات، تشخیص برخورد را برای اجسام مختلف بازی تنظیم میکنند و این اطلاعات را در یک پنجرۀ خروجی نمایش میدهند و به کاربران بازخورد عملیاتی ارائه میدهند.
در محیط مجازی، تشخیص برخورد برای تصمیمگیری در مورد فعال شدن یا فعال نشدن یک رویداد واکنشی ضروری است. دقتِ فناوری تشخیص برخورد مستقیماً بر تعامل و غوطهوریِ سیستم تأثیر میگذارد. در سیستم آموزش تعمیر و نگهداری آسانسور، به مدلسازی دستگاههای تعاملی متعددی نیاز است که این امر انتخاب روشهای تشخیص برخورد را به موضوع بسیار مهمی تبدیل میکند.
الگوریتمها و تکنیکهای تشخیص برخورد در مدلهای واقعیت مجازی
با توسعه و استفاده از فناوری واقعیت مجازی، برخی محققان تحلیلهای جامع و پژوهشهایی در مورد تکنیکهای تشخیص برخورد در زمینۀ واقعیت مجازی انجام دادهاند. آنها الگوریتمهای تشخیص برخورد دقیقی برای اجسام مختلف پیشنهاد کردهاند. تکنیکهای تشخیص برخورد موجود عمدتاً در دو دسته قرار میگیرند: روشهای افرازبندی حوزه زمان و روشهای افرازبندی حوزه فضا. روشهای افرازبندی حوزه زمان شامل روشهای تشخیص برخورد ایستا، الگوریتمهای تشخیص برخورد گسسته و روشهای تشخیص برخورد پیوسته است.
روشهای افرازبندی حوزه فضا شامل تشخیص برخورد مبتنی بر جسم و تشخیص برخورد مبتنی بر تصویر است. محققان الگوریتمهای مختلف تشخیص برخورد را معرفی کردهاند و کاربردها و محدودیتهای اصلی آنها را نشان دادهاند.
برای نمونه، الگوریتمهای تشخیص برخورد حوزه زمان عمدتاً برای اشکال هندسی منتظم و اجسام داخل صحنهای که از عناصر هندسی تشکیل شدهاند، مناسب هستند. یکی از محدودیتهای این الگوریتمها این است که میتوانند مشکلاتی در رسوخ متقابل مدلها داشته باشند. از طرف دیگر، روشهای افرازبندی حوزه فضا با چالش نحوه تقسیمِ منطقی فضای عمل مواجه هستند.
روشهای بهینه برای تشخیص برخورد در سیستمهای آموزشی
با این حال، آنها نیازی به پیشپردازش ندارند و برای مدلهای multi-soft-body در ساختارهای پیچیده مناسب هستند. طبقهبندی الگوریتمهای تشخیص برخورد در شکل ۳ ارائه شده است.
در سیستم آموزش تعمیر و نگهداری آسانسور، اجزای مدل نسبتاً کوچک هستند و وقوع رسوخ متقابل میان مدلها میتواند بر زیباییشناسی و دقت سیستم تأثیر منفی بگذارد. علاوه بر این، سیستم به تشخیص برخورد میان اجسام متحرک در صحنۀ مجازی نیاز دارد و به تشخیص برخورد در محیطهای ایستایی که روابط فضایی بین مدلها بدون تغییر میماند، نیازی ندارد؛ بنابراین، هنگام در نظر گرفتن مزایا و سناریوهای کاربردِ الگوریتمهای مختلف، سیستم با استفاده از روش افرازبندی حوزه فضایی با الگوریتم سلسلهمراتبهای حجم محصورکننده (BVH) توسعه داده شد. با تحلیل نظری الگوریتم BVH پنج ویژگی کلیدی آن را شناسایی کردیم:
- حداقل استفاده از حافظه سیستم در هنگام فراخوانی
- خواص محصورکننده و سختی عالی برای اجسام صحنه
- ساخت ساده با حداقل سربار محاسباتی
- سهولت سازگاری با تغییرات کادر محصورکننده
- سهولت آزمایش همدیگر را قطع کردن اجسام در طول تشخیص برخورد.
انواع مختلف کادر محصورکننده دارای ویژگیهای عملکرد متمایزی در هنگام استفاده روی یک جسم در صحنه مجازی هستند. انواع رایج کادر محصورکننده شامل کادر محصورکننده موازی با محور (AABB)، کادر محصورکننده کروی (Sphere)، کادر محصورکننده جهتدار و کادر محصورکننده K-Dops است، که در شکل ۴ نشانداده شدهاند.
شکلها:
شکل ۳. الگوریتم تشخیص برخورد
شکل ۴. نمودار شماتیک کادرهای محصورکننده؛ (الف) AABB. (ب) کروی. (ج) OBB. (د) K-Dops
تشخیص برخورد در سیستمهای آموزش آسانسور
هنگامی که دانشجویان با اجزای آسانسور کار میکنند، عملیاتی مانند جابهجایی و چرخش را انجام میدهند، تشخیص برخورد برای جلوگیری از تداخل میان این اجزا ضروری است. سیستم فقط به انجام آزمایشهای تقاطع نیاز دارد، به همین دلیل ما کادر محصورکننده موازی با محور (AABB) را انتخاب کردیم.
هنگامی که اجزا در حین حرکت توسط کاربر کنترل میشوند، مقدار حرکت را میتوان تنظیم کرد. هنگامی که یک قطعه در حال حرکت است، AABB آن قطعه، متناسب با آن حرکت تغییر میکند و رئوس برای نمایش حرکت تنظیم میشوند. این تبدیل منجر به رابطه میان رئوس اولیه و رئوس پس از حرکت میشود.
هنگامی که یکی از اجزا در صحنه مجازی تغییر موقعیت میدهد، AABB آن جزء، با جابهجایی رئوس کادر محصورکننده بهروز میشود. بردار حرکت از پیش تعریفشده برای آن جزء به صورت نشان داده میشود. فرمول تبدیل برای تغییر بین رئوس کادر محصورکننده پیش از جابهجایی و رئوس کادر محصورکننده پس از جابهجایی را میتوان به صورت زیر بیان کرد:
اگر یک جزء با زاویههای 𝛼، 𝜃 و 𝛽 به ترتیب حول محورهای X، Y و Z بچرخد، این حرکت را میتوان با استفاده از ماتریس به صورت زیر نشان داد:
سپس ماتریس تبدیل به صورت زیر نمایش داده میشود:
استفاده از مدلهای واقعیت مجازی در تشخیص برخورد
طبق معادله (۱)، مشاهده میشود وقتی جسم تنها در حال حرکت چرخشی است، رابطه به شکل زیر است:
اگر جسم در حال حرکت چرخشی و انتقالی باشد، رابطه به شکل زیر است:
در آموزش گاورنر سرعت بیش از حدِ آسانسور با استفاده از کادر محصورکننده همتراز با محور (AABB)، هنگامی که برخورد بین اجسام رخ میدهد، سیستم بر اساس اطلاعات موقعیت افزونۀ DoTween، قطعه را به موقعیت مناسب منتقل میکند. محدودیتهای مونتاژ بهطور خودکار برآورده میشوند. تشخیص برخورد، پیش از اجرا و برای اطمینان از اثربخشی انجام میشود.
فرایند الگوریتم تشخیص برخورد برای AABB در شکل ۵ نشان داده شده است. در نمودار فرایند الگوریتم تشخیص برخورد AABB میتوان مشاهده کرد در مرحله تشخیص اولیه، کادرهای محصورکننده برای اجسام مختلف داخل صحنه ساخته میشوند تا تشخیص برخورد اولیه را انجام دهند.
اگر کادرهای محصورکننده اجسام مختلف یکدیگر را قطع نکنند، این بدان معناست که اجسام نمیتوانند با هم برخورد کنند. پس از مرحله تشخیص اولیه، کادرهای محصورکننده بهروزرسانی میشوند و تشخیص برخورد بیشتری انجام میشود که منجر به مرحله تشخیص دقیق میشود.
در مرحله تشخیص دقیق، اگر برخورد شامل وجوه مثلث تشخیص داده شود، نشان میدهد اجسام واقعاً با هم برخورد میکنند. این مرحله، سیستم اطلاعات مربوط به تشخیص برخورد را ارائه و نتایج تشخیص را نمایش میدهد.