در یک آزمایشگاه روباتیک در مراسم TEDGlobal، رافائلو آندره آ کوادکوپتر های پرنده ی خود را به نمایش می گذارد: ربات هایی که مانند ورزشکاران فکر می کنند و مسائل فیزیکی را با الگوریتم هایی که به آن ها کمک می کند تا فرا بگیرند حل می کند.
در یک سری نمایش باحال، آندره آ روبات های پرنده ای را به نمایش می گذارد که اشیاء را در هوا می قاپند، توانایی برقرار کردن تعادل را دارند و می توانند با هم تصمیم بگیرند — و حتماً قسمت بداهه ای که به کمک سنسور های فضایی کواد ها را کنترل می کند ببینید.
مفهوم توان ورزشی یک روبات چیست؟
ما مفهوم توان ورزشی یک ماشین، و تحقیقاتی که برای رسیدن به آن انجام دادیم را به کمک این روبات های پرنده به نام “کوادروکوپتر” یا به اختصار؛ “کواد” ها، به نمایش در خواهیم آوردیم.
کوادکوپتر ها
کواد ها مدت زیادی است که در کار های مختلف مورد استفاده قرار می گیرند. دلیل این که آن ها این روز ها خیلی پر طرفدار هستند، این است که آن ها از لحاظ مکانیکی ساختار بسیار ساده ای دارند. با کنترل سرعت این چهار پروانه، این روبات ها می توانند حرکت کنند، پرتاب شوند، مسیر خود را عوض کنند، و با شتاب دور خود بچرخند. روی بدنه ی این روبات یک باتری، یک کامپیوتر، سنسور های مختلف و سیستم های کنترل از راه دور وجود دارد.
الگوریتم های کنترل کوادکوپتر ها
کواد ها فوق العاده فرز و چابک هستند، اما این چابکی نیازمند سیستم هایی است. آن ها به طور ذاتی ناپایدار هستند، و برای پرواز نیازمند سیستم های کنترل واکنش های اتوماتیک هستند.
در رابطه با کنترل پرواز این مقاله را بخوانید: طراحی و شبیه سازی جبران کننده مناسب برای کنترل اتوماتیک پرواز (AFC)
ولی این وسیله چطور این کار را انجام داد ؟ دوربین های روی سقف و یک لپ تاپ مرکزی، در مجموع نقش یک سیستم تشخیص موقعیت داخلی را ایفا می کنند. این سیستم برای تشخیص موقعیت اشیائی در فضا استفاده می شود که این نشانگر های بازتاب کننده را بر روی خود دارند. این اطلاعات، سپس به لپ تاپ دیگری فرستاده می شوند که تخمین جزئیات، و الگوریتم های کنترل بر روی آن صورت می گیرد، و آن ها دستور های لازم را به کواد می فرستد، که کامپیوتر درون آن هم در حال انجام دادن تخمین جزئیات، و الگوریتم های کنترل است. قسمت عمده ی تحقیقات ما مربوط به الگوریتم ها بود. این جادو است که به این روبات ها حیات می بخشد.
اما چگونه یک نفر می تواند الگوریتم هایی را بنویسد، که یک روبات ورزیده از آن نتیجه شود؟ ما از سیستمی کلی، به نام طراحی پایه-مدلی استفاده می کنیم. ما ابتدا رفتار فیزیکی روبات را با یک مدل ریاضی شبیه سازی می کنیم. ما ابتدا رفتار فیزیکی روبات را با یک مدل ریاضی شبیه سازی می کنیم. سپس ما بخشی از ریاضیات را استفاده می کنیم که به آن نظریه ی کنترل گفته می شود و برای تحلیل این مدل ها و برای نوشتن الگوریتم های کنترل آن ها استفاده می شود. به طور مثال، ما این طور یک کواد را در هوا معلق نگه می داریم. ما ابتدا قوانین دینامیکی را با معادلات دیفرانسیلی شبیه سازی می کنیم. سپس ما این معادلات را با کمک نظریه ی کنترل تعیین می کنیم، تا الگوریتم هایی را برای متعادل کردن کواد به دست آوریم.
نمایش قدرت کواد ها
اجازه بدهید قدرت این نحوه ی نوشتن الگوریتم ها را به شما نشان دهم. تصور کنید ما می خواهیم نه تنها در هوا معلق بماند بلکه وزن این میله را نیز متعادل کند. با کمی تمرین، یک انسان به راحتی می تواند این کار را انجام دهد، اگرچه ما این برتری را نسبت به آن ها داریم که دو پای ما بر روی زمین تکیه دارند اگرچه ما این برتری را نسبت به آن ها داریم که دو پای ما بر روی زمین تکیه دارند و همین طور دست های فوق العاده منعطف و قابل تحرک در چند بعد را داریم. اگر تنها یک پا بر روی زمین داشته باشم، و از دستانم استفاده نکنم، این کار فوق العاده سخت تر می شود. دقت کنید که این میله یک نشانگر در بالای خود دارد، که به این معناست که موقعیت این میله در فضا قابل تشخیص است.
گرانیگاه کواد
شما به راحتی می توانید بفهمید که این کواد تنظیمات دقیقی انجام می دهد تا این میله را در تعادل نگه دارد. اما ما چگونه الگوریتم ها را طراحی کردیم تا این کار را انجام دهد؟ ما مدل ریاضی میله را به مدل ریاضی تعیین گرانیگاه کواد اضافه کردیم. وقتی ما مدلی از سیستم ترکیبی کواد و میله داشته باشیم، می توانیم از نظریه ی کنترل برای نوشتن الگوریتم هایی برای کنترل آن استفاده کنیم. ببینید، در تعادل قرار دارد، و حتی اگر به آن ضربه ی کوچکی وارد کنیم، کواد دوباره خود را به موقعیت تعادل مناسبی باز می گرداند.
کلید انجام این مانور های آکروباتیک کوادها
ما همچنین می توانیم این مدل را با دادن موقعیت کواد در فضا بهبود ببخشیم. ما همچنین می توانیم این مدل را با دادن موقعیت کواد در فضا بهبود ببخشیم. با استفاده از این دستگاه تعیین کننده ی موقعیت، که از نشانگر های بازتاب کننده ساخته شده است، من می توانم جایی که می خواهم کواد به آن جا برود را، البته با فاصله ی مشخصی از خودم تعیین کنم. کلید انجام این مانور های آکروباتیک الگوریتم ها هستند، که با کمک مدل های ریاضی و نظریه ی کنترل طراحی شده اند. اجازه بدهید کواد را به این جا بازگردانیم و میله را بندازیم، و من اهمیت درک مدل های فیزیکی و فعالیت های دنیای فیزیکی را بعداً برای شما به نمایش در خواهم آورد. دقت کنید هنگامی که این لیوان آب را بر روی کواد قرار دادم چگونه ارتفاعش را کم کرد. بر خلاف میله ی قبلی، من مدل ریاضی لیوان آب را وارد سیستم نکردم. بر خلاف میله ی قبلی، من مدل ریاضی لیوان آب را وارد سیستم نکردم. در حقیقت، سیستم حتی نمی داند لیوان آبی روی کواد قرار دارد. مثل قبل، می توانم از دستگاه تعیین موقعیت برای بردن کواد به نقطه ای از فضا که می خواهم استفاده کنم.
چطور آب از داخل لیوان بیرون نمی ریزد؟
خیلی خب، حتماً از خود می پرسید، چطور آب از داخل لیوان بیرون نمی ریزد؟ دو حقیقت وجود دارد: اولاً این که نیروی جاذبه ی زمین بر تمامی اشیاء مثل هم عمل می کند. دوماً این که پروانه ها دقیقاً در مسیری که لیوان آب حرکت می کند، حرکت می کنند، یعنی به سمت بالا. و اگر شما برآیند این دو نیرو را حساب کنید، به این نتیجه می رسید که نیرو های غیر عمودی وارد شده بر لیوان بسیار ناچیز هستند، و غالباً با اثرات آیرودینامیکی قابل جبران هستند، که در این سرعت ها قابل چشم پوشی است. و به همین دلیل شما نیازی به افزودن معادلات مدل لیوان به کواد ندارید. به طور طبیعی کواد مایع درون لیوان را نمی ریزد، هر کاری که می خواهد انجام بدهد.
نوشته مرتبط: روبات حفظ تعادل از نوع آنالوگ
اما مزیت این روبات نسبت به سایرین این است که، بعضی از کار های پیچیده را، راحت تر از بقیه ی دستگاه ها انجام می دهند، و این درک فیزیکی مسئله، به شما می گوید چه کار هایی ساده و چه کار هایی دشوار هستند. در این مثال، حمل کردن یک لیوان آب ساده است. اما حفظ تعادل یک میله سخت است.
پرواز کوادکوپتر تنها با دوموتور
ما همه داستان هایی درباره ی ورزشکارانی شنیده ایم، که با آسیب فیزیکی مسابقه داده بودند. آیا یک روبات می تواند در شرایطی که به شدت آسیب دیده است، همچنان به عملکرد خود ادامه دهد؟ دانش متداول ما می گوید که حداقل چهار موتور پروانه دار ثابت برای پرواز نیاز دارید، دانش متداول ما می گوید که حداقل چهار موتور پروانه دار ثابت برای پرواز نیاز دارید، زیرا چهار عملکرد برای کنترل کواد وجود دارد: حرکت کردن، پرتاب شدن، تغییر مسیر و شتاب گرفتن.
هگزاکوپتر ها و اوکتاکوپتر ها، با شش و هشت پروانه، می توانند کار های اضافه تری انجام دهند، اما کوادروکوپتر ها بیشتر جا افتاده اند، زیرا حداقل تعداد موتور های پروانه دار ثابت را دارند: چهار تا. اما آیا واقعاً به این تعداد هم نیاز دارند؟ اگر ما مدل ریاضی ابن روبات را تنها با دو پروانه ی سالم تحلیل کنیم، اگر ما مدل ریاضی ابن روبات را تنها با دو پروانه ی سالم تحلیل کنیم، می فهمیم که یک راه غیر متعارف نیز برای به پرواز در آوردن آن وجود دارد. ما توانایی تغییر مسیر را از دست می دهیم، اما همچنان حرکت، پرتاب و شتاب دادن به آن به کمک الگو هایی که با این ساختار جدید سازگاری دارند قابل کنترل است. مدل های ریاضی به طور دقیق به ما نشان می دهند که چه زمانی و به چه دلیل این شرایط امکان پذیر هستند. در این اختراع، این دانش به ما اجازه می دهد تا ساختاری جدید از روبات ها را طراحی کنیم یا الگوریتم های هوشمندانه ای که دقیقاً همان طور که انسان های ورزشکار می توانند، به آرامی از پس آسیب های وارده به سیستم بر می آیند، که این مکانیزم از اضافه کردن موتور ها و سیستم های اضافی به آن بسیار بهتر است.
پشتک زدن کوادکوپتر
دیدن یک قهرمان شیرجه از ارتفاع، که در راه رسیدن به آب در هوا پشتک می زند، یا دیدن یک قهرمان پرش با نیزه، که روی هوا پیچ و تاب می خورد، و با شتاب به زمین نزدیک می شود، خیره کننده است. آیا قهرمان شیرجه می تواند رکورد جدیدی بزند؟ آیا قهرمان پرش با نیزه می تواند از روی مانع بپرد؟ تصور کنید ما می خواهیم این کواد در این جا سه پشتک پشت سر هم بزند، و نهایتاً به همان نقطه ای که از آن جا شروع کرده است باز گردد. این حرکت به قدری سریع انجام می شود که ما نمی توانیم از بازخورد اطلاعات موقعیت سیستم استفاده کنیم تا حرکت را هنگام انجام این عملیات تصحیح کنیم. به طور خیلی ساده می توان گفت زمان کافی وجود ندارد. در عوض، کواد می تواند این مانور را به صورت کور انجام دهد، به عبارت دیگر این که ابتدا ببیند وقتی مانور به پایان می رسد در چه موقعیتی قرار دارد، و سپس از اطلاعات استفاده می کند تا عملکردش را تصحیح کند، و پشتک بعدی را به نحو بهتری انجام دهد. مانند قضیه ی قهرمان شیرجه و پرش با نیزه، دستگاه تنها با استفاده از تکرار و تمرین می تواند تصحیح و بهتر شود، تا به بالاترین سطح استاندارد برسد.
کوادکوپتر بدمینتون باز
کواد با راکت بدمینتون
ضربه زدن به یک توپ در حال حرکت مهارتی الزامی در بسیاری از ورزش ها است. اما ما می توانیم روباتی بسازیم که همان کاری را که ورزشکار انجام می دهد، ظاهراً بدون هیچ زحمتی انجام دهد.
یک راکت بدمینتون کوچک به بالای این کواد بسته شده است که اندازه ی صفحه ی مرتجع آن به زحمت به اندازه ی یک سیب می رسد، آن قدر ها بزرگ نیست. محاسبات مورد نیاز هر ۲۰ میلی ثانیه انجام می شوند، یا به عبارت دیگر ۵۰ بار در هر ثانیه. ابتدا ما باید مسیر توپ را تعیین کنیم. سپس محاسبه می کنیم که کواد چطور باید به توپ ضربه بزند تا به همان جایی برگردد که از آن جا پرتاب شده است. سوم، مسیری مشخص می شود که کواد را از موقعیت اولیه اش، به محل ضربه زدن به توپ می برد. چهارم، ما تنها ۲۰ میلی ثانیه از عملیات را انجام داده ایم. بیست میلی ثانیه بعد، تمامی این مراحل تکرار می شوند تا کواد به توپ ضربه بزند.
نوشته مرتبط: روبات بازو فوق العاده سریع که در هوا اجسام را می گیرد
عملکرد گروهی کوادها (تصمیم گیری همزمان رباتها)
روبات ها نه تنها می توانند حرکات دینامیک را به تنهایی انجام دهند، بلکه این کار را به طور گروهی نیز انجام می دهند. این سه کواد، به طور مشترک یک شبکه را در هوا تشکیل می دهند.
آن ها یک مانور کاملاً دینامیکی و گروهی را برای برگرداندن توپ به من انجام می دهند. توجه کنید، هنگام باز شدن کامل تور، کواد ها به حالت عمودی قرار دارند. در حقیقت، وقتی تور به طور کامل باز می شود، این کشش نزدیک به ۵ برابر، بیشتر از کششی است که یک ورزشکار بانجی جامپینگ، در طناب بسته شده به پایش احساس می کند.
الگوریتم هایی که برای این کار نوشته شده اند، تا حدود زیادی شبیه به الگوریتم هایی هستند که، یک کواد به تنهایی برای بازگرداندن توپ به سمت من استفاده می کند. مدل های ریاضی طبق برنامه ریزی هر ثانیه ۲۰ بار تکرار می شوند. مدل های ریاضی طبق برنامه ریزی هر ثانیه ۲۰ بار تکرار می شوند.
مطلب مرتبط : 1024 تا روبات کوچولو که در تعامل با یکدیگر شگفتی ایجاد می کنند
اتصال کواد به کینکت (Kinect Sensor)
تمام چیز هایی که تا به حال دیده ایم درباره ی این روبات ها و توانایی های آن ها بوده است. اما وقتی ما این ورزشکاری ماشینی را با یک انسان هماهنگ کنیم، چه اتفاقی می افتد؟ چیزی که در این جا دارم یک سنسور حرکت سنج موجود در بازار است که غالباً در بازی های رایانه ای استفاده می شود. این سنسور می تواند حرکات اعضای بدن مرا در همان لحظه تشخیص دهد. این سنسور می تواند حرکات اعضای بدن مرا در همان لحظه تشخیص دهد. مثل همان دستگاه تعیین کننده ی موقعیتی که قبل تر از آن استفاده کردم، ما می توانیم از آن برای دادن اطلاعات به سیستم استفاده کنیم. چیزی که در این جا داریم یک تعامل طبیعی بین توانمندی خام این کواد ها و حرکات من است.
ثابت ماندن کواد در یک نقطه خاص
تعامل الزاماً نباید به صورت مجازی باشد. به طور مثال، این کواد را تصور کنید. این کواد تلاش می کند تا در نقطه ی ثابتی در فضا بماند. اگر بخواهم آن را از جایی که ایستاده است جا به جا کنم، با من مقابله خواهد کرد، و به جایی که می خواهد در آن بماند باز خواهد گشت. اگرچه، ما می توانیم این رفتار را تغییر دهیم. ما می توانیم از مدل های ریاضی استفاده کنیم تا نیرویی که به کواد وارد می کنم را تخمین بزنیم. از آن جایی که ما این نیرو را می شناسیم، حتی می توانیم قوانین فیزیک را تغییر دهیم، البته قوانینی که برای کواد تعریف می شود. در این حرکت کواد طوری رفتار می کند که انگار در یک سیال لزج است. در این حرکت کواد طوری رفتار می کند که انگار در یک سیال لزج است.
وای ! حتماً الآن با خودتان فکر می کنید، کسانی که روی این روبات کار می کنند خیلی تفریح می کنند، و احتمالاً از خودتان می پرسید، دقیقاً چرا آن ها روبات های ورزشکار می سازند؟ به این دلیل که وظیفه ی ما در قلمروی جانوران ارتقاء مهارت ها و بهبود بخشیدن توانایی های ماست. دیگران ممکن است فکر کنند این بیشتر یک وظیفه ی اجتماعی است، تا این که گروه را متحد کند. همین طور، ما از مقایسه ی بین ورزش و ورزیدگی استفاده می کنیم، تا الگوریتم های جدیدی برای روبات ها طراحی کنیم و از آن ها نهایت بهره را ببریم. اما تأثیر سرعت روبات ها بر مسیر زندگی ما چیست؟ همانند ابداعات و نوآوری های پیشین بشر، می توان از آن ها برای بهبود بخشیدن به شرایط زندگی انسان استفاده کرد، یا این که از آن ها استفاده های نادرست یا سوء استفاده بشود. اما ما با یک انتخاب تکنیکی مواجه نیستیم؛ بلکه این یک انتخاب اجتماعی است. اجازه دهید انتخاب درست را انجام دهیم، انتخابی که بهتری شرایط را در آینده ی ماشین ها برای ما فراهم خواهد کرد، همانند ورزیدگی در ورزش ها، روبات ها می توانند توانایی ما را تا حد زیادی بهبود ببخشند.
سازندگان کوادها
اجازه بدهید جادوگران پشت پرده ی سبز را به شما معرفی کنم. آن ها اعضای تیم تحقیقاتی روبات های پرنده ی آرنا (Arena) هستند. فدریکو آگوگلیارو، داریو برسیانینی، مارکوس هن، سرگی لوپاشین، مارک مولر و رابین ریتز. آن ها آینده ی درخشانی خواهند داشت.
متشکرم.
مطلب مشابه: آشنايي با انواع ربات ها
منبع : TED.COM ارائه توسط رافائلو آندره آ زیرنویس از Amirpouya Ghaemian بازبینی زیرنویس از Narsis Sh و بازنشر توسط میکرو دیزاینر الکترونیک.
اگر این نوشته برایتان مفید بود لطفا کامنت بنویسید.