موضوع مقاله: نرم‌افزار ربات | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # نرم‌افزار ربات | مقدمه: نرم‌افزار ربات مجموعه‌ای از دستورات کدگذاری‌شده یا دستورالعمل‌هایی است که به یک دستگاه مکانیکی و سامانه الکترونیکی، که با هم به عنوان یک ربات شناخته می‌شوند، می‌گوید که چه وظایفی را انجام دهد. | ## بخش 1: نرم‌افزار ربات | بسیاری از سامانه‌ها و چارچوب‌های نرم‌افزاری برای آسان‌تر کردن برنامه‌نویسی ربات‌ها پیشنهاد شده‌اند. وظایف رایج شامل حلقه‌های بازخورد، کنترل، مسیریابی، فیلتر کردن داده‌ها، مکان‌یابی و هم‌رسانی داده‌ها است. مقدمه اگرچه نرم‌افزارهای رباتیک نوع خاصی از نرم‌افزار به حساب می‌آیند، اما تنوع زیادی دارند. اکثر نرم‌افزارها برای پردازش و تغییر اطلاعات طراحی شده‌اند و نتیجه کارشان روی صفحه نمایش قابل مشاهده است، اما نرم‌افزارهای رباتیک برای کنترل و حرکت دادن اشیا و ابزارها در دنیای واقعی استفاده می‌شوند. نرم‌افزار ربات صنعتی نرم‌افزار ربات‌های صنعتی از دو بخش اصلی تشکیل شده است: داده‌ها و دستورالعمل‌ها. دستورالعمل‌ها که به آن‌ها «جریان برنامه» هم گفته می‌شود، فهرستی از کارهایی هستند که ربات باید انجام دهد. مثلا: برو به Jig1 این دستورالعملی برای ربات است که به داده‌های موقعیتی به نام Jig1 برود. البته، برنامه‌ها همچنین می‌توانند حاوی داده‌های ضمنی باشند، به عنوان مثال به محور ۱ بگویید ۳۰ درجه حرکت کند. اطلاعات و برنامه‌های ربات معمولاً در بخش‌های جداگانه‌ای از حافظه سامانهٔ کنترل ربات ذخیره می‌شوند. این به این معنی است که شما می‌توانید اطلاعات را بدون نیاز به تغییر برنامه و برعکس، تغییر دهید. برای مثال، می‌توانید یک برنامه جدید بنویسید که از همان موقعیت Jig1 استفاده کند یا می‌توانید موقعیت Jig1 را بدون تغییر برنامه‌هایی که از آن استفاده می‌کنند، تنظیم کنید. نمونه‌هایی از زبان‌های برنامه‌نویسی برای ربات‌های صنعتی از آنجایی که نرم‌افزارهای رباتیک بسیار تخصصی هستند، اکثر تولیدکنندگان ربات، نرم‌افزار مخصوص خودشان را هم ارائه می‌دهند. این موضوع در سامانه‌های کنترل خودکار دیگر هم رایج است، اما نبود یک استاندارد مشخص برای برنامه‌نویسی ربات‌ها، مشکلاتی را ایجاد می‌کند. | ## بخش 2: نرم‌افزار ربات | به عنوان مثال، بیش از ۳۰ شرکت مختلف ربات‌های صنعتی تولید می‌کنند و هر کدام زبان برنامه‌نویسی خاص خود را دارند. البته، شباهت‌های زیادی بین ربات‌های مختلف وجود دارد، بنابراین می‌توان اصول کلی برنامه‌نویسی ربات‌ها را یادگرفت، بدون اینکه نیاز باشد زبان برنامه‌نویسی هر شرکت را جداگانه یادگرفت. یکی از روش‌های کنترل ربات‌ها از چندین تولیدکننده، استفاده از یک پساپردازشگر (پُست‌پروسسور) و نرم‌افزار برنامه‌نویسی آفلاین است. با این روش، می‌توان زبان برنامه‌نویسی خاص هر شرکت را به یک زبان برنامه‌نویسی عمومی‌تر، مثل پایتون، تبدیل کرد. برای مثال، چون کد برنامه از قبل نوشته و به سامانه کنترل ربات منتقل می‌شود، ربات نمی‌تواند با تغییرات محیط اطرافش سازگار شود و واکنش نشان دهد. در حال حاضر، چند ابزار جانبی وجود دارند که امکان کنترل تطبیقی و بلادرنگ را برای انواع ربات‌ها فراهم می‌کنند. اگر از آن با دستور `appro` استفاده کنیم، نیازی به آموزش نقاط P2 و P4 نداریم، بلکه به صورت پویا یک رویکرد به موقعیت برداشتن و قرار دادن برای تولید مسیر تبدیل می‌کنیم. برنامه با کشیدن نمادها به داخل ناحیه برنامه و اضافه کردن یا درج در دنباله ساخته می‌شود. به عنوان مثال، برای نماد درایو موتور، مشخص می‌کنید که کدام موتورها و چقدر حرکت می‌کنند. زبان‌های اسکریپت‌نویسی زبان اسکریپت‌نویسی یک زبان برنامه‌نویسی سطح بالا است که برای کنترل برنامه نرم‌افزاری استفاده می‌شود و به جای کامپایل شدن از قبل، در زمان واقعی تفسیر می‌شود یا «در حال پرواز ترجمه می‌شود». یک زبان اسکریپت‌نویسی ممکن است یک زبان برنامه‌نویسی همه منظوره باشد یا ممکن است به توابع خاصی محدود شود که برای تقویت اجرای یک برنامه کاربردی یا برنامه سیستمی استفاده می‌شود. برخی از زبان‌های اسکریپت‌نویسی، مانند RoboLogix، دارای اشیاء داده‌ای هستند که در ثبات‌ها قرار دارند و جریان برنامه نشان‌دهنده لیست دستورالعمل‌ها یا مجموعه دستورالعمل‌هایی است که برای برنامه‌ریزی ربات استفاده می‌شود. در نتیجه، مجموعه دستورالعمل‌های زبان اسکریپت‌نویسی معمولاً یک لیست ساده از دستورات برنامه است که برای ساده‌سازی فرایند برنامه‌نویسی و ارائه توسعه سریع برنامه‌ها استفاده می‌شود. | ## بخش 3: نرم‌افزار ربات | زبان‌های موازی رویکرد جالب دیگری که شایان ذکر است، زبان‌های برنامه‌نویسی موازی هستند. URBI با ادغام موازی‌سازی و رویدادها در هسته معنایی زبان، سطح بالاتری از انتزاع را فراهم می‌کند. نرم‌افزار کاربردی ربات صرف نظر از اینکه از چه زبانی استفاده می‌شود، نتیجه نرم‌افزار ربات، ایجاد برنامه‌های رباتیکی است که به مردم کمک می‌کند یا آن‌ها را سرگرم می‌کند. نرم‌افزار فرمان و کنترل شامل رابط‌های کاربری گرافیکی (GUI) کنترل ربات برای ربات‌های از راه دور، نرم‌افزار فرمان نقطه‌ای برای ربات‌های خودمختار، و نرم‌افزار زمان‌بندی برای ربات‌های متحرک در کارخانه‌ها می‌شود. نرم‌افزار وظایف شامل رابط‌های ساده کشیدن و رها کردن برای تنظیم مسیرهای تحویل، گشت‌های امنیتی و تورهای بازدیدکنندگان است. همچنین شامل برنامه‌های سفارشی نوشته شده برای استقرار برنامه‌های کاربردی خاص است. نرم‌افزار کاربردی ربات همه منظوره بر روی پلتفرم‌های رباتیک به‌طور گسترده توزیع شده است. ملاحظات ایمنی خطاهای برنامه‌نویسی یک ملاحظه ایمنی جدی است، به ویژه در ربات‌های صنعتی بزرگ. قدرت و اندازه ربات‌های صنعتی به این معنی است که در صورت برنامه‌ریزی نادرست یا استفاده ناایمن، قادر به ایجاد صدمات شدید هستند. با توجه به جرم و سرعت بالای ربات‌های صنعتی، ماندن انسان در محل کار ربات در حین کار خودکار همیشه ناامن است. سامانه می‌تواند در زمان‌های غیرمنتظره شروع به حرکت کند و یک انسان در بسیاری از موقعیت‌ها، حتی اگر آماده انجام این کار باشد، نمی‌تواند به اندازه کافی سریع واکنش نشان دهد؛ بنابراین، حتی اگر نرم‌افزار عاری از خطاهای برنامه‌نویسی باشد، باید دقت زیادی کرد تا یک ربات صنعتی برای کارگران انسانی یا تعامل انسانی، مانند بارگیری یا تخلیه قطعات، پاکسازی قطعات گیر کرده یا انجام تعمیر و نگهداری، ایمن باشد. کتاب "استاندارد ملی آمریکا ANSI/RIA R15.06-1999 برای ربات‌های صنعتی و سامانه‌های ربات - الزامات ایمنی (بازنگری ANSI/ R15.06-1992)" از انجمن صنایع رباتیک، استاندارد پذیرفته شده در مورد ایمنی ربات است. این شامل دستورالعمل‌هایی برای طراحی ربات‌های صنعتی و همچنین پیاده‌سازی یا ادغام و استفاده از ربات‌های صنعتی در کارخانه است. | ## جمع‌بندی | مفاهیم ایمنی متعددی مانند کنترل‌کننده‌های ایمنی، حداکثر سرعت در طول حالت آموزش، و استفاده از موانع فیزیکی پوشش داده شده است.