هر یک از فایل‌های یک پکیج moveit دربردانده چه اطلاعاتی هستند

در ادامه مطلب توضیحی درباره نقش انواع فایل های موجود در یک پکیج داده شده است.

ابتدا یک توضیح یک خطی درباره هر یک داده شده و سپس به تفصیل تشریح خواهند شد:

  • فایل package.xml : این فایل در‌واقع مانیفست پکیج است یعنی بیان کننده ویژگی‌های پکیج از قبیل نام پکیج، شماره رویژن، پدیدآورندگان و لیست پکیج هایی دیگری که به این پکیج مرتبط اند می‌باشد.
  • فایل CmakeLists.txt : به منظور ساخت پکیج نرم‌افزار،  این فایل به عنوان ورودی سیستم  Cmake build استفاده می‌شود. هر پکیج سازگار با Cmake یک یا چند فایل CmakeLists.txt دارد که بیان می‌کنند چگونه کد باید ساخته شده و کجا باید نصب شود.
  • فایل‌های  launch : فایل‌های اجرایی می‌باشند که با دستور roslaunch در ترمینال لینوکس فراخوانده می‌شوند.
  • فایل‌های py یا cpp فایل‌های اصلی برنامه می‌باشند که به زبان پایتون یا ++C نوشته شده اند.
  • فایل‌های STL مدل سه بعدی ربات، موانع، سلول رباتی، قطعه کار و … می‌باشد که از نرم‌افزار solidworks گرفته می‌شود. البته اکثر سازندگان ربات معمولاً فایل STL مربوط به ربات خود را در اینترنت به اشتراک گذاشته اند.
  • فایل‌های urdf : در‌واقع مخفف Universal Robot Description Format می‌باشد و فایلی است جهت ساختن مدل ربات به گونه‌ای که بتوان ربات را در محیط Rviz مشاهده کرد. .ساخت این فایل چندان مشکل نیست زیرا پلاگینی وجود دارد که روی سالیدورکس نصب شده و مستقیماً از مدل سه بعدی فایل urdf را می‌سازد.
  • فایل‌های xacro : این فایل دقیقاً کاری شبیه به فایل urdf می‌کند ولی مختصرتر و مفیدتر می‌باشد در‌واقع ورژن جدید فایل urdf می‌باشد.
  • فایل‌های srdf : در‌واقع مخفف Semantic Robot Description Format بوده و اطلاعات موجود در urdf را تکمیل می‌کند و شامل اطلاعاتی از این قبیل می‌باشد: گروه مفاصل، پیکربندی‌های پیشفرض ربات، اطلاعات اضافه برای چک کردن برخورد با موانع، و مختصات‌های اضافه‌ای که ممکن است نیاز باشد تا کاملاً حرکت ربات مشخص شود. ساخت این فایل نیز چندان مشکل نیست و توصیه می‌شود از ابزار MoveIt! Setup Assistant برای ساخت این فایل استفاده شود.
  • فایل‌های yaml : این فایل ها برای تنظیم پارامترهای پکیج می باشند. چند مورد رایج این نوع فایل‌ها
    • الف) تظیم پارامترهای پیکربندی سینماتیکی (فایلkinematics.yaml)  از طریق مشخص نمودن پلاگین سینماتیک معکوس با توجه به ربات مورد استفاده
    •  ب) جایگزین کردن اطلاعات حدود مفاصل در فایل urdf یا افزودن اطلاعات به آن (کلاسjoint_limits و فایلjoint_limits.yaml )
    •  ج) پیکربندی moveit  جهت ارتباط با کنترلر رباتمان (کلاس control_configurations)
    •  د) تعریف کنترلر جعلی (کلاس controller_list) توضیح اینکه moveit مجموعه‌ای از کنترلرهای جعلی دارد که در شبیه سازی استفاده می‌شوند مثلاً فایل demo.launch که توسط MoveIt’s setup assistant تولید می‌شود جهت نمایش شبیه سازی در RViz کنترلر جعلی به کار می‌برد.
    •  ه)  تنظیمات پارامترهای OMPL (فایل ompl_planning.yaml) مخفف Open Motion Planning Library  تولیدگر مسیر (planner) پیشفرض  در moeit بوده و مجموعه‌ای از الگوریتم‌های تولید مسیر (motion planning algorithms) بر اساس نمونه گیری را در بردارد که می‌توان تنظیمات پیشفرض آنرا در این فایل تغییر داد.
    •  و) تخصیص و تنظیم پارمتر تولیدگرهای مسیر دیگر مانند STOMP Planner و CHOMP Planner به جای تولیدگر مسیر پیشفرض OMPL که اولی STOM (مخفف Stochastic Trajectory Optimization for Motion Planning) یک چارچوب بهینه سازی احتمالی است که مسیری یکنواخت با در نظر گرفتن عدم برخورد به موانع در یک زمان منطقی تولید می‌کند و دومی CHOMP (مخفف Covariant Hamiltonian optimization for motion planning ) روش جدید بهینه سازی مسیر بر اساس گرادیان است که بسیاری از مشکلات روزمره تولید مسیر را ساده و قابل آموزش می‌کند.
    •  ز) تنظیم پارامتر دیگر پیکربندی‌ها و تولیدکننده‌های مسیر مانند حرکت نقطه به نقطه بدون در نظر گرفتن برخورد
    •  ح) تنظیم پارامتر پیکربندی اولیه ربات
  • فایل‌های  launch . xml . *  : پارامترهای سیستم برای فایل اجرائی launch در این فایل تعریف می‌شوند همچنین پارامترهای مربوط به کنترلر جعلی نیز در این فایل تنظیم می‌شوند
  • فایل‌های rviz : محیط rviz جهت شبیه سازی ربات هست ولی این فایل فقط درتعدادی از پکیج‌ها ایجاد می‌شود
  • فایل‌های dae : می‌توان با دستور rosrun collada_urdf فایل‌های urdf ربات را به فایل dae جهت استفاده در IKFast تبدیل کرد که می‌توان آن‌ها را با دستور openrave باز کرد
  • فایل‌هایh : این فایل‌ها اطلاعات مرتبط با سینماتیک مستقیم و معکوس برای یک ربات خاص را دربردارند و نیز دیگر حلگرهای سینماتیک معکوس مانند ikfast
  • فایل CHANGELOG.rst : اطلاعات لاگ را در بردارد
  • فایل package_name.kdev4 :