بخشی از مقاله

*** این فایل شامل تعدادی فرمول می باشد و در سایت قابل نمایش نیست ***

هدایت و کنترل ربات هوشمند زیر آبی دراجتناب از برخورد با مانع
چکیده
در هدایت و کنترل ربات های هوشمند زیر آبی) AUV( اجتناب از برخورد با مانع امری اجتناب ناپذیر است. ربات استفاده شده در این مقاله رباتی ست به نام ریموس که معادلات حرکت آن توسط prestero [1] استخراج شده است. ما با توجه به موانعی که معمولا در کف اقیانوس ها مثل دیوارهای دریای، صخره های مرجانی، دره ها و... وجود دارند و استفاده از مدل سونار که بتواند موانع را تشخیص دهد توانستیم الگوریتمی ارائه دهیم که بتواند از موانع عبور کند. الگوریتم اجتناب از مانع با سعی و خطا با حذف بعضی از مفاهیم و بهبود آنها بر اساس نتایج قبلی ارتقا داده شد و یک دستور خیزش یا مایل برای جلوگیری از برخورد با مانع نیز استفاده شده است. یعنی به محض تشخیص مانع در میدان دید سونار وسیله، دستور برای افزایش ارتفاع صادر می شود و با پشت سر گذاشتن مانع دوباره به ارتفاع سه متری از کف دریا که برای آن تعریف کرده ایم باز می۔گردد.
کلمات کلیدی: ربات زیر آبی، مدلسازی، اجتناب از مانع، سونار، کنترلر، سنسور
۱- مقدمه
با توجه به مرزهای دریایی طولانی در کشورمان، نیاز به امکانات و تجهیزات پیشرفته امری لازم و ضروری است.[2] یکی از این تجهیزات که در دنیای امروزه کاربرد فراوان دارند ربات های هوشمند زیر آبی است. و از آنجا که این ربات ها کاربرد فراوانی در امور نظامی دارند دور از دسترس بودن آنها برای دشمن امری لازم و ضروری است، که یکی از راههای ایمنی بیشتر و در امان بودنشان از دید دشمن تنظيم ارتفاع آن در ارتفاعی نزدیک به کف دریاست. ولی از آنجا که سطح دریا دارای فراز و نشیب ها و صخره و کوههای فراوان است عبور از این موانع امری مهم محسوب می شود که در این مقاله با مدلسازی ربات و سونار و استفاده از کنترلر برای تنظیم ارتفاع دلخواه توانستیم ربات را در ارتفاع مورد نظر از کف دریا حفظ کنیم.
۲- مدلسازی دینامیکی
اولین قدم استخراج معادلات وسیله می باشد که این تحقیقات بر روی ربات زیر آبی به نام ریموس انجام گرفته و از نتایج آنها استفاده شده است. این وسیله شامل تجهیزات و سنسورهای زیادی می باشد، شکل این وسیله به صورت زیر می باشد.

از سیستم به دست آوریم، بطوریکه مدل رفتار سیستم را نسبت به محرک های مختلف به خوبی نشان دهد. در بسیاری از موارد امکان استخراج معادلات دقیق سیستم بسیار مشکل است، بنابراین پیدا کردن نزدیک ترین مدل ریاضی که تا حد ممکن به واقعیت نزدیک باشد و در ضمن از ساختار ساده ای نیز برخوردار باشد، بسیار مهم است. بدیهی است که هر چه مدل بدست آمده به واقعیت نزدیک تر باشد، طراحی سیستم دقیق تر انجام خواهد شد.
برای تعیین مدل دینامیکی نیاز به تعریف دستگاه مختصات کلی و دستگاه مختصات بدنه داریم. دستگاه مختصات بدنه، دستگاه XYZ است که در نقطه ای دلخواه به جسم متصل شده باشد و نسبت به آن حرکتی نداشته باشد. استفاده از این دستگاه باعث سادگی استخراج معادلات می۔ شود، زیرا سرعت زاویه ای دستگاه بدنه برابر با سرعت زاویه ای UV است. محور X این دستگاه به گونه ای انتخاب می شود که در امتداد طولی وسیله قرار بگیرد و جهت آن جلوی وسیله را نشان می دهد. محور Y در امتداد محور جانبی قرار دارد، بطوریکه برای داشتن یک دستگاه مختصات راستگرد، محور Z در سمت پایین قرار می گیرد. چرخش حول محور X را غلتش"، حول محور Y را پیچش و حول محور Z را دور زدن" می گویند. نمایش این دو دستگاه در شکل زیر آمده است. [4]

لازم است که وضعیت زیر دریایی با توجه به فریم معمولی نیز قابل تعريف باشد. نرخ تغییرات این موقعیت ها بسیار مهم اند، زیرا که تغییرات منتجه در مرکزیت سرعت جرم در روابط دینامیکی بسیار تاثیر گذار است. سه زاویه ی اویلری این وضعیت را مشخص می کنند. چرخش آزیموس ، یعنی ، چرخش مثبت در جهت محور Z عمومی است. چرخش در جهت محور Y نیز تعریف شده است. چرخش مثبت دیگر در جهت محور X می باشد . این سه زاویه همواره برای تعیین وضعیت وسیله بکار می روند. ماتریس انتقالی برای انتقال مختصات محلی به
عمومی اینچنین قابل تعریف است:

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

و به طور مشابه مینویسیم:


حال برای سادگی و با فرض کوچک بودن زوایا اینگونه می نویسیم:

۳- روابط حرکت
حال با پیش زمینه های قبلی معادلات حرکت می تواند مورد بحث قرار گیرد. شش معادله حرکت از دو معادله ی مجموع نیروهای وارده و مجموع ممونتم های اعمالی بر جسم صلب بدست می آیند. مجموع نیروهای اعمالی بر حسب جسم صلب بر اساس علم دینامیک چنین است:

مجموع مومنتهای اعمالی بر حسب جسم صلب از برابری مجموع ممونتم های اعمالی بر مرکز جرم وسیله و نرخ تغییر ممونتم زاویه ای مرکز جرم وسیله بدست می آید. رابطه حرکت چنین است:

با اعمال جمله های وزن و شناوری اعمالی بر مرکز جرم و جاذبه معادلات حرکت برای مدل با شش درجه آزادی چنین است:

برای یک وسیله در حال فعالیت در صفحه عمودی می توان فرض کرد که:

با استفاده از تحقیقات انجام شده روی auv ها در این تحقیق مرکز جرم پایین تر از مبدا و مرکز شناوری در مرکز محور مختصات محلی فرض شد، پس


معادلات ساده شده حرکت برابرند با:
حال پس از بدست آوردن معادلات و مدل حرکت باید مدل سونار را نیز بدست آوریم.[4]

- مدل سونار اگرچه ارتفاع وسیله در برابر تغییرات کف اقیانوس، اثرات شناوری و جریان اقیانوس قابل تنظیم است اما این کنترل برای تغییرات شدید مانند صخره های مرجانی و دیگر موانع کافی نیست. برای مثال ارتفاع سنج، صخره های مرجانی با ارتفاع سه متر را تشخیص نخواهد داد ، مگر با برخورد وسیله با آن. حتی با اخطار قبلی برای موانع بزرگ در مسیر نیاز به دقت بالایی برای پیشروی با شیب مناسب است. برای رفع مشکل نیاز به یک سنسور forward look است. یک سنسور از این نوع با دامنهی ۱۰۰ متری با شیب ۲۴ درجه در شکل زیر نشان داده شده است:

های کوچک از این نوع در فاز ابتدایی تولید هستند. مشکل نهایی مربوط به شکل هندسی auv و قابلیت های ارتفاع سنج و سونار forward
- look است. با توجه به شکل (۴) می بینیم که یک نقطه ی کور در زیر ناحیه جاروب سونار و ارتفاع سنج قرار دارد . البته سونار قادر به شناسایی آن هست اما این ناحیه می تواند مشکلاتی را برای کنترلر در تعیین حرکت و عبور مطمئن آن بوجود آورد که در مبحث شبیه سازی به آن خواهیم پرداخت.

در این مقاله برای عبور از مانع پیش فرض های زیر اختیار شده اند:
• از برخورد با تمامی موانع عمومی بایستی اجتناب شود.
• تمامی موانع توسط سونار قابل مشاهده است.
• جریان اقیانوسی وجود ندارد.
• حرکت چرخشی در صفحه ی افقی وجود ندارد. با این فرضیات فرآیند زیر در زمان وجود مانع در مسير auv اتفاق می افتد .auv مانع را با کمک سونار شناسایی کرده، سپس کامپیوتر ارتفاع مانع و فاصله آنرا تشخیص می دهد.

الگوریتم اجتناب از مانع نرخ تغییر مناسب را برای افزایش ارتفاع تعیین می کند که می تواند از موانع با ارتفاع سه متر عبور کند. شکل زیر مثالی از این حرکت را نشان می
دهد.

وجود دارد که با عبور از آن هر شی واقع در این ناحیه بایستی سبب تحریک الگوریتم اجتناب از مانع و بالارفتن auv شود.
- مدل سازی محیط اقیانوس:
برای تست کنترل اجتناب از مانع یک محیط اقیانوسی دو بعدی در محیط متلب در نظر گرفته شد. سطح و کف اقیانوس مطابق تصویر (۷) است. جهت مثبت X حرکت افقی رو به جلو را نشان می دهد. در این کار عمق ۲۰ متر فرض شده است که برای اجتناب از مانع تغییراتی در آن وجود دارد.

در نرم افزار متلب نیز مطابق شکل (۷) دو آرایه دو بعدی مجزای X و در نظر گرفته شده است. اولین دسته آرایه X مدل و Z مدل، کف اقیانوس را در یک مدل حوزه فضایی مدل می کند. مدل حوزه فضا برای شبیه سازی سونار لازم است. آرایه دوم Z_ t در حوزه زمان است و عمق اقیانوس را مشخص می کند. این دو آرایه در مدل ارتفاع سنج بکار گرفته شده اند. همچنین با استفاده از تابع ode23 در متلب روابط حرکتی auv با استفاده از زمان انتگرالگیری شده و همینطور نحوه حرکت وسیله با سرعت ثابت و بطور افقی مشخص می شود. هر انتگرال گیری منجر به ایک موقعیت جدید X و L وسیله می شود که این موقعیت ها برای نمایش ذخیره شده اند.
حال بایستی کنترلر ارتفاع وسیله مورد بررسی و آزمایش قرار گیرد. کنترلر فیدبک هایی از ارتفاع سنج دریافت کرده و در حین عملیات ارتفاع سه متری را حفظ می کند. در متلب ارتفاع سنج با استفاده از مقایسه موقعیت Z وسیله با آرایه Z _ t در حوزه زمان شبیه سازی شده است. بنابراین ضروری است که آرایه Z
_ t در حوزه زمان تعریف شود تا بتواند موقعیت وسیله را حفظ نماید. اختلاف موقعیت Z وسیله یا عمق
آن با Z _ t برابر با ارتفاع است.
تابع با دنبال کردن ارتفاع می تواند با تغییرات عمق وسیله با کف اقیانوس تغییر کند تا قادر به حفظ آن باشد. کنترلر ارتفاع در حقیقت
کنترلر عمق ویرایش شده است و برای سادگی پیاده سازی با علم به روابط حرکت بر مبنای عمق استفاده شده است. در عمل ارتفاع اندازه گیری شده و با مقدار ارتفاع altcom مقایسه می شود و خطا به کنترلر فیدبک ارسال می گردد . به عبارت دیگر :

تصاویر زیر ارتفاع کنترلر را با یک شبیه سازی موفق با ارتفاع اولیه هفده متری و ارتفاع مشخص شده پنج متری از سطح دریا و همچنین یکی متری از کف دریا نشان می دهد. پاسخ بدون اورشوت و حداقل جابجایی صفحه بالابرنده است. این پاسخ با قرار دادن چهار قطب در (۰, ۰۶و ۰ . ۶۲ و 0 . ۶۳-) که به روش صحیح وخطا بدست آمده است صورت گرفت

در متن اصلی مقاله به هم ریختگی وجود ندارد. برای مطالعه بیشتر مقاله آن را خریداری کنید