#Isaac #IsaacSim #Nvidia #ROS2
تکانه پشت سر توسعه رباتیک توسط Nvidia رشد شدیدی کرده است و خوشبختانه همه چیز Open Source هست. افرادی که این ریسمان را بگیرند میتوانند پیشگامان جهان باشند.
----------
@roboticknowledge
تکانه پشت سر توسعه رباتیک توسط Nvidia رشد شدیدی کرده است و خوشبختانه همه چیز Open Source هست. افرادی که این ریسمان را بگیرند میتوانند پیشگامان جهان باشند.
----------
@roboticknowledge
👍3
#منهای_رباتیک
میشود که ما هم پیشگام بشویم؟ برای آینده خواهم نوشت!
فضا یکی از زمینهای بازی پیشگامان بوده و است. امروز شرکت مشهور موفقیتی کسب کرده که مبارکشان باد.
وقتی سطح و حجم پیشرفت آنها را میبینم، از خود جویا میشوم که آیا ما هم به چنین موفقیتهایی و رضایت روحی پس از آن میرسیم؟ تصور آن هم زیباست که در جهان موازی ما پیشگام باشیم و پرچم سه رنگ زیبای مملکت ما بالا باشد.
این هدف والای شخصی من است: روزی رباتهایی با اسمهای پارسی خواهم ساخت تا زندگی بشر را بهتر کنند و نا ممکنها را ممکن. گرچه دست ما از امکانات و شرایط به دور است، اما افکار ما چون پرندههایی بلند پرواز هستند که با قدرت سختکوشی و لطف آنکه باید (خداوند) ما را به مقصد میرسانند.
—————
@roboticknowledge
میشود که ما هم پیشگام بشویم؟ برای آینده خواهم نوشت!
فضا یکی از زمینهای بازی پیشگامان بوده و است. امروز شرکت مشهور موفقیتی کسب کرده که مبارکشان باد.
وقتی سطح و حجم پیشرفت آنها را میبینم، از خود جویا میشوم که آیا ما هم به چنین موفقیتهایی و رضایت روحی پس از آن میرسیم؟ تصور آن هم زیباست که در جهان موازی ما پیشگام باشیم و پرچم سه رنگ زیبای مملکت ما بالا باشد.
این هدف والای شخصی من است: روزی رباتهایی با اسمهای پارسی خواهم ساخت تا زندگی بشر را بهتر کنند و نا ممکنها را ممکن. گرچه دست ما از امکانات و شرایط به دور است، اما افکار ما چون پرندههایی بلند پرواز هستند که با قدرت سختکوشی و لطف آنکه باید (خداوند) ما را به مقصد میرسانند.
—————
@roboticknowledge
👍11
Robotic Knowledge
#Isaac #IsaacSim #IsaacRos #IsaacPerceptor #ROS2 ————— @roboticknowledge
#Isaac #IsaacSim #IsaacRos #IsaacPerceptor #ROS2
https://developer.nvidia.com/blog/create-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows/
https://developer.nvidia.com/blog/create-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows/
NVIDIA Technical Blog
Create, Design, and Deploy Robotics Applications Using New NVIDIA Isaac Foundation Models and Workflows
The application of robotics is rapidly expanding in diverse environments such as smart manufacturing facilities, commercial kitchens, hospitals, warehouse logistics, and agricultural fields.
#منهای_رباتیک #تجربه
مدیریت پروژه یا Project Management
#Project_Management #PM
از حضور در صنعت میتوان درسهای بزرگی گرفت، مدیریت پروژه یکی از آنها است. اگر PM شما کار خود را درست انجام ندهد، کنترل امور تیم از دست خواهد رفت و محصول به مشتری نخواهد رسید و عواقب بعدی ظاهر میشوند!
برنامهنویسها باید اصول PM را دنبال کنند تا بدانند کجای نقشه راه یا Road Map هستند و در صنعت این بحث بسیار جدیتر است. پس از 2.5 سال دوری از دانشگاه قرار است دوباره وارد دانشگاه شوم و دکتری خود را ادامه دهم، اما در این فاصله حدود 1 سال و 3 ماه برای شرکتی چینی کار کردم که در آن به عنوان مهندس الگوریتم در حال توسعه و تطبیق نرمافزار خودرو برای رانندگی خودکار در سطوح مختلف برای خودروسازهای مطرح چینی و آمریکایی بودم. انواع روشهای PM را با آزمون و خطا دنبال کردیم و دعواهای زیادی داشتیم و بعضی مواقع خوشحال و بعضی مواقع ناراحت بودیم - اما برآیند مثبت است وقتی تیم تا حدی حرفهای باشد.
اکنون دید من نسبت به دکتری یک پروژه R&D صنعتی منعطف در محیط آکادمیک است (نه چیزی که عمده افراد وقتی بدون کار صنعتی مفید، پشت سر هم ادامه تحصیل میدهند) و علاوه بر دانش نظری و مهارتهای رباتیکی، یک ابزار قوی در دستانم دارم که مهارتهای PM شکل گرفته از صنعت است! ما یک کارگروه توسعه نرمافزار رباتیک در مرکز تحقیقاتی خود داریم که منه تازه وارد به نظریهپرداز روش مدیریت کردن امور آنها تبدیل شدهام. 🙂😎 با کارهایی که انجام میدهیم، کارها سرعت بهتری دارد و همه میدانند که چه میکنند و باید چه کنند و چطور به هدف خواهیم رسید.
نکته این است: ابعاد دیگر را در خود رشد دهید تا شتاب به حرکت خود بدهید و کیفیت کار خوبی داشته باشید. برای همه ما انبوهی از چیزها وجود دارد که یاد بگیریم، اما مهارتهای نرم مثل PM واقعا نیاز جدی هستند (و تفاوتساز) که اگر یاد نگیریم، خود را محدود کردهایم.
—————
@roboticknowledge
مدیریت پروژه یا Project Management
#Project_Management #PM
از حضور در صنعت میتوان درسهای بزرگی گرفت، مدیریت پروژه یکی از آنها است. اگر PM شما کار خود را درست انجام ندهد، کنترل امور تیم از دست خواهد رفت و محصول به مشتری نخواهد رسید و عواقب بعدی ظاهر میشوند!
برنامهنویسها باید اصول PM را دنبال کنند تا بدانند کجای نقشه راه یا Road Map هستند و در صنعت این بحث بسیار جدیتر است. پس از 2.5 سال دوری از دانشگاه قرار است دوباره وارد دانشگاه شوم و دکتری خود را ادامه دهم، اما در این فاصله حدود 1 سال و 3 ماه برای شرکتی چینی کار کردم که در آن به عنوان مهندس الگوریتم در حال توسعه و تطبیق نرمافزار خودرو برای رانندگی خودکار در سطوح مختلف برای خودروسازهای مطرح چینی و آمریکایی بودم. انواع روشهای PM را با آزمون و خطا دنبال کردیم و دعواهای زیادی داشتیم و بعضی مواقع خوشحال و بعضی مواقع ناراحت بودیم - اما برآیند مثبت است وقتی تیم تا حدی حرفهای باشد.
اکنون دید من نسبت به دکتری یک پروژه R&D صنعتی منعطف در محیط آکادمیک است (نه چیزی که عمده افراد وقتی بدون کار صنعتی مفید، پشت سر هم ادامه تحصیل میدهند) و علاوه بر دانش نظری و مهارتهای رباتیکی، یک ابزار قوی در دستانم دارم که مهارتهای PM شکل گرفته از صنعت است! ما یک کارگروه توسعه نرمافزار رباتیک در مرکز تحقیقاتی خود داریم که منه تازه وارد به نظریهپرداز روش مدیریت کردن امور آنها تبدیل شدهام. 🙂😎 با کارهایی که انجام میدهیم، کارها سرعت بهتری دارد و همه میدانند که چه میکنند و باید چه کنند و چطور به هدف خواهیم رسید.
نکته این است: ابعاد دیگر را در خود رشد دهید تا شتاب به حرکت خود بدهید و کیفیت کار خوبی داشته باشید. برای همه ما انبوهی از چیزها وجود دارد که یاد بگیریم، اما مهارتهای نرم مثل PM واقعا نیاز جدی هستند (و تفاوتساز) که اگر یاد نگیریم، خود را محدود کردهایم.
—————
@roboticknowledge
👍9
#توسعه_نرمافزار #مدیریت_پروژه
#Software_Development #Project_Management
از روشهای مطرح برای مدیریت پروژه توسعه نرمافزار روش Agile است که در واقع تعدادی اصل ساده است و میتوانید در اینجا بیابید:
https://agilemanifesto.org/principles.html
برخی از این اصول در انواع پروژهها قابل پیریزی است و آشنایی ذهن با این موارد خوب است.
—————
@roboticknowledge
#Software_Development #Project_Management
از روشهای مطرح برای مدیریت پروژه توسعه نرمافزار روش Agile است که در واقع تعدادی اصل ساده است و میتوانید در اینجا بیابید:
https://agilemanifesto.org/principles.html
برخی از این اصول در انواع پروژهها قابل پیریزی است و آشنایی ذهن با این موارد خوب است.
—————
@roboticknowledge
👍2
#Planning
#وسیله_خودران
در حرکت خودمختار [به اتوموبیل محدود نکردم و منظور ربات پرنده یا کشتی یا زیرسطحی و ... نیز میتواند باشد] طراح ریزی مسیر یا Path Planning اهمیت بسیاری دارد - ورودی مرجع کنترلکننده در این داده است. در بحث اتوموبیل خودران، به دلیل وجود انواع ماشین در اطراف، حضور افراد و قوانین رانندگی و ایمنی، این قضیه بسیار مهم است.
طرحریزها یا Planner ها، بصورت rule-based هستند و بر اساس فرضیهها توسعه داده شدهاند تا در شرایط ترافیکی متفاوت، مسیرهای کنترلی مطلوب و منطقی که با اثبات ایمنی همراه هستند را برای کنترلکننده فراهم سازند.
اما با پیچیدگی شرایط، برای مثال تعدد ایجنتهای خارجی، یک Planner مبتنی برrule چالشهایی خواهد داشت که ناشی از عدم قطعیت و محدود بودن دانش دینامیکی است. در اینجا AI وارد میشود و مفهومی به نام Planner مبتنی بر learning به وجود میآید که مزیت آن قابلیت انجام Planning های پیچیده بر اساس داده است - هر چند نیاز به یادگیری و training دارد و مهمتر اینکه ذاتا اثباتی برای ایمنی آنها وجود ندارد.
ترکیب دو روش میتواند راهگشا باشد. یک مثال Hydra-MDP از تیم توسعه Nvidia است که مقاله آن در اینجا قابل رویت است. کد آنها هنوز منتشر نشده، اما گویی بزودی خواهد شد.
—————
@roboticknowledge
#وسیله_خودران
در حرکت خودمختار [به اتوموبیل محدود نکردم و منظور ربات پرنده یا کشتی یا زیرسطحی و ... نیز میتواند باشد] طراح ریزی مسیر یا Path Planning اهمیت بسیاری دارد - ورودی مرجع کنترلکننده در این داده است. در بحث اتوموبیل خودران، به دلیل وجود انواع ماشین در اطراف، حضور افراد و قوانین رانندگی و ایمنی، این قضیه بسیار مهم است.
طرحریزها یا Planner ها، بصورت rule-based هستند و بر اساس فرضیهها توسعه داده شدهاند تا در شرایط ترافیکی متفاوت، مسیرهای کنترلی مطلوب و منطقی که با اثبات ایمنی همراه هستند را برای کنترلکننده فراهم سازند.
اما با پیچیدگی شرایط، برای مثال تعدد ایجنتهای خارجی، یک Planner مبتنی برrule چالشهایی خواهد داشت که ناشی از عدم قطعیت و محدود بودن دانش دینامیکی است. در اینجا AI وارد میشود و مفهومی به نام Planner مبتنی بر learning به وجود میآید که مزیت آن قابلیت انجام Planning های پیچیده بر اساس داده است - هر چند نیاز به یادگیری و training دارد و مهمتر اینکه ذاتا اثباتی برای ایمنی آنها وجود ندارد.
ترکیب دو روش میتواند راهگشا باشد. یک مثال Hydra-MDP از تیم توسعه Nvidia است که مقاله آن در اینجا قابل رویت است. کد آنها هنوز منتشر نشده، اما گویی بزودی خواهد شد.
—————
@roboticknowledge
NVIDIA Technical Blog
End-to-End Driving at Scale with Hydra-MDP
Building an autonomous system to navigate the complex physical world is extremely challenging. The system must perceive its environment and make quick, sensible decisions. Passenger experience is also…
👍2
#Tools
#Cpp
#AnalyticalDynamics
#OptimalControl
کتابخانهای برای ++C و البته بصورت bind شده در Python وجود دارد که مسائل دینامیک چندجسمی را برای شما حل میکند. مدل میتواند براحتی بصورت URDF در ورودی تعریف شود.
این کتابخانه pinocchio نام دارد:
https://github.com/stack-of-tasks/pinocchio
همچنین این کتابخانه میتواند با CasADI که خود کتابخانه کنترل بهینه است نیز کار کند! فکر نکنید رباتهای Boston Dynamics کنترل بهینه را از هیچ کامل در خود دارند بدون این ابزارها.
پیشروها با اینها و امثال اینها کارهای بزرگ میکنند. متاسفانه سیستم آموزشی کشور ما در قرن پیش مانده است و همین الان در بهترین دانشگاههای مملکت معادلات را بصورت اشتباه پیاده و غیر بهینه حل و برای جبران نتایج دست به تغییر دستی نتایج زده میشود! در هیچ دورهای به اینها اشاره نمیکنند چون نمیدانند و اینها چیزهای مدرن هستند که تفاوت میسازند.
—————
@roboticknowledge
#Cpp
#AnalyticalDynamics
#OptimalControl
کتابخانهای برای ++C و البته بصورت bind شده در Python وجود دارد که مسائل دینامیک چندجسمی را برای شما حل میکند. مدل میتواند براحتی بصورت URDF در ورودی تعریف شود.
این کتابخانه pinocchio نام دارد:
https://github.com/stack-of-tasks/pinocchio
همچنین این کتابخانه میتواند با CasADI که خود کتابخانه کنترل بهینه است نیز کار کند! فکر نکنید رباتهای Boston Dynamics کنترل بهینه را از هیچ کامل در خود دارند بدون این ابزارها.
پیشروها با اینها و امثال اینها کارهای بزرگ میکنند. متاسفانه سیستم آموزشی کشور ما در قرن پیش مانده است و همین الان در بهترین دانشگاههای مملکت معادلات را بصورت اشتباه پیاده و غیر بهینه حل و برای جبران نتایج دست به تغییر دستی نتایج زده میشود! در هیچ دورهای به اینها اشاره نمیکنند چون نمیدانند و اینها چیزهای مدرن هستند که تفاوت میسازند.
—————
@roboticknowledge
GitHub
GitHub - stack-of-tasks/pinocchio: A fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives
A fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives - stack-of-tasks/pinocchio
👍1🤯1
Robotic Knowledge
#Tools #Cpp #AnalyticalDynamics #OptimalControl کتابخانهای برای ++C و البته بصورت bind شده در Python وجود دارد که مسائل دینامیک چندجسمی را برای شما حل میکند. مدل میتواند براحتی بصورت URDF در ورودی تعریف شود. این کتابخانه pinocchio نام دارد: https://github.com/stack…
هر دو کتابخانهای که معرفی شد توسط فاند اروپایی در اتحادیه اروپا توسعه داده شده است - این کارها را باز هم ادامه میدهند و چرخه نشر علم و ابزار آن را متوقف نمیکنند. اینکه علم را با بودجه خود پیاده میکنند و متنباز در اختیار جهان قرار میدهند فرهنگ بالایی است و قابل احترام.
—————
@roboticknowledge
—————
@roboticknowledge
👍5
#ROS2
#Callbacks
در ساختار نرمافزاری ROS2 رایج است که از callback functions برای subscribe کردن به یک topic استفاده کنیم. مثال آن این چنین است:
اما این روش بهینه نیست زیرا تعدد node ها منجر به تعدد callback ها و نهایتا بار زیاد بر روی CPU میشود. راه حل بهینه استفاده از متد take است.
یک مثال:
این ساختار توسط منبع تیم Autoware پیشنهاد شده است و مزیت آن جلوگیری از CPU Load است.
[Ref 1] [Ref 2]
—————
@roboticknowledge
#Callbacks
در ساختار نرمافزاری ROS2 رایج است که از callback functions برای subscribe کردن به یک topic استفاده کنیم. مثال آن این چنین است:
auto topic_callback =
[this](std_msgs::msg::String::UniquePtr msg) -> void {
RCLCPP_INFO(this->get_logger(), "I heard: '%s'", msg->data.c_str());
};
subscription_ =
this->create_subscription<std_msgs::msg::String>("topic", 10, topic_callback);
اما این روش بهینه نیست زیرا تعدد node ها منجر به تعدد callback ها و نهایتا بار زیاد بر روی CPU میشود. راه حل بهینه استفاده از متد take است.
Subscription->take()
یک مثال:
SteeringReport::SharedPtr msg;
rclcpp::MessageInfo msg_info;
if (sub_->take(msg, msg_info)) {
// processing and publishing after this
این ساختار توسط منبع تیم Autoware پیشنهاد شده است و مزیت آن جلوگیری از CPU Load است.
[Ref 1] [Ref 2]
—————
@roboticknowledge
ROS Discourse
New documentation on how to take a message from a subscriber without executing a callback function
Hello everyone! Autoware Documentation provides a guideline to take a message from Subscription without executing any callback function. https://autowarefoundation.github.io/autoware-documentation/main/contributing/coding-guidelines/ros-nodes/topic-message…
👍2
#ROS2
#Autoware
به Autoware اشاره شد. یک استک نرمافزاری متن باز برای Autonomous Driving که بر اساس ROS ساخته شده است.
https://autoware.org/
—————
@roboticknowledge
#Autoware
به Autoware اشاره شد. یک استک نرمافزاری متن باز برای Autonomous Driving که بر اساس ROS ساخته شده است.
https://autoware.org/
—————
@roboticknowledge
Autoware
Home Page - Autoware
👍2
Media is too big
VIEW IN TELEGRAM
#China
#AGV
فیلمی که دوست عزیز ما در هتلی در چین گرفتهاند و یک ربات را برای تحویل غذا به ساکنین هتل ارائه میدهد.
بسیار جالب است و توصیه میکنم به دیدن. چین از آن چه که فکر میکنید پیشرفتهتر است!
----------
@roboticknowledge
#AGV
فیلمی که دوست عزیز ما در هتلی در چین گرفتهاند و یک ربات را برای تحویل غذا به ساکنین هتل ارائه میدهد.
بسیار جالب است و توصیه میکنم به دیدن. چین از آن چه که فکر میکنید پیشرفتهتر است!
----------
@roboticknowledge
👍3
Robotic Knowledge
#China #AGV فیلمی که دوست عزیز ما در هتلی در چین گرفتهاند و یک ربات را برای تحویل غذا به ساکنین هتل ارائه میدهد. بسیار جالب است و توصیه میکنم به دیدن. چین از آن چه که فکر میکنید پیشرفتهتر است! ---------- @roboticknowledge
#China
#AGV
۱. ربات با آسانسور به طبقه هدف میآید.
۲. ربات به روبروی درب واحد میرود و زنگ میزند.
۳. فرد احتمالا با ID Card قفل ربات را باز و بسته را میگیرد.
۴. ربات به چینی کارتونی چیزی میگوید! 😃
۵. ربات به سمت آسانسور میرود و سوار میشود.
۶. احتمالا در طبقه هدف وارد داک شارژر خود میشود.
----------
@roboticknowledge
#AGV
۱. ربات با آسانسور به طبقه هدف میآید.
۲. ربات به روبروی درب واحد میرود و زنگ میزند.
۳. فرد احتمالا با ID Card قفل ربات را باز و بسته را میگیرد.
۴. ربات به چینی کارتونی چیزی میگوید! 😃
۵. ربات به سمت آسانسور میرود و سوار میشود.
۶. احتمالا در طبقه هدف وارد داک شارژر خود میشود.
----------
@roboticknowledge
👍2
#PM #Project_Management
سخنی زیبا، اما همراه با دروغی بزرگ!
اگر این ادعای آقای ماسک را صحیح بدانیم، آیا او میتواند یک موشک، یک خودرو، یک ربات انساننما، یک شبکه اجتماعی، یک رمزارز، یک سیستم مالی و ... را طراحی کند؟ چون در هر صورت ایشان CEO همه اینها بوده و هستند. :)
نخیر جناب ماسک، اگرچه درست است که CEO باید دانش حداقلی و آشنایی با کار مهندسان خود داشته باشد، اما پول مهمترین چیز است. شما با پول خود ذهنهای برتر را جمع میکنید و آنها را در راستای طرح خود به خط میکنید. آنها هستند که موفقیت درو میکنند، اما پول و اعتبارش در جیب یک فرد مالی و سیاسی چون شما میرود. این بحث در شرکتهای کوچک تا بزرگ بوده و است.
در هر صورت این بخشی از ناعدالتی ذاتی این جهان است. ذهنهای برتر باید خود CEO شوند - چنانچه تلاش برتر نیز داشته باشند - وگرنه ابزار این افراد خواهند شد. #PM بودن را یاد بگیرید. 😉
—————
@roboticknowledge
سخنی زیبا، اما همراه با دروغی بزرگ!
اگر این ادعای آقای ماسک را صحیح بدانیم، آیا او میتواند یک موشک، یک خودرو، یک ربات انساننما، یک شبکه اجتماعی، یک رمزارز، یک سیستم مالی و ... را طراحی کند؟ چون در هر صورت ایشان CEO همه اینها بوده و هستند. :)
نخیر جناب ماسک، اگرچه درست است که CEO باید دانش حداقلی و آشنایی با کار مهندسان خود داشته باشد، اما پول مهمترین چیز است. شما با پول خود ذهنهای برتر را جمع میکنید و آنها را در راستای طرح خود به خط میکنید. آنها هستند که موفقیت درو میکنند، اما پول و اعتبارش در جیب یک فرد مالی و سیاسی چون شما میرود. این بحث در شرکتهای کوچک تا بزرگ بوده و است.
در هر صورت این بخشی از ناعدالتی ذاتی این جهان است. ذهنهای برتر باید خود CEO شوند - چنانچه تلاش برتر نیز داشته باشند - وگرنه ابزار این افراد خواهند شد. #PM بودن را یاد بگیرید. 😉
—————
@roboticknowledge
👍1👏1
#Tools #CAD
#URDF #SDF
#Gazebo
مدلهای شبیهسازی رباتی که همراه با mesh هستند و جزئیات خوبی دارند، توسط نرمافزارهای CAD آماده میشوند و به صورت URDF خروجی گرفته میشوند - نوشتن آنها با دست تقریبا غیرممکن است.
امروز از صبح در حال یادگیری قابلیتهای نرمافزار FreeCAD بودم. اینجا در این لیست یوتوب به بهترین شکل آموزش داده شده است.
من قبلاً SOLIDWORKS کار کرده بودم و یادگیری یک نرمافزار دیگر مثل FreeCAD در چنین حالتی بسیار ساده است زیرا معمولا روشها و ابزارهای CAD همه قواعد یکسان دارند.
چرا FreeCAD؟
- رایگان است و کم حجم.
- ساده است و قوی.
- برای استخراج URDF یک workbench رباتیک دارد و خیلی راحتتر از SOLIDWORKS این کار را انجام میدهد.
- بر روی Ubuntu 22 نصب میشود.
گزینههای دیگری مثل Fusion360 یا Blender نیز با پلاگین خروجی URDF میدهند، اما اگر سادگی ملاک باشد، آن هم در سن ۲۶ سالگی برای یک رباتیک کار چیزی مثل Blender انتخاب خوبی نیست. ترجیح میدهم وقتم را صرف چیز پیچیده دیگری بکنم! 🙂
----------
@roboticknowledge
#URDF #SDF
#Gazebo
مدلهای شبیهسازی رباتی که همراه با mesh هستند و جزئیات خوبی دارند، توسط نرمافزارهای CAD آماده میشوند و به صورت URDF خروجی گرفته میشوند - نوشتن آنها با دست تقریبا غیرممکن است.
امروز از صبح در حال یادگیری قابلیتهای نرمافزار FreeCAD بودم. اینجا در این لیست یوتوب به بهترین شکل آموزش داده شده است.
من قبلاً SOLIDWORKS کار کرده بودم و یادگیری یک نرمافزار دیگر مثل FreeCAD در چنین حالتی بسیار ساده است زیرا معمولا روشها و ابزارهای CAD همه قواعد یکسان دارند.
چرا FreeCAD؟
- رایگان است و کم حجم.
- ساده است و قوی.
- برای استخراج URDF یک workbench رباتیک دارد و خیلی راحتتر از SOLIDWORKS این کار را انجام میدهد.
- بر روی Ubuntu 22 نصب میشود.
گزینههای دیگری مثل Fusion360 یا Blender نیز با پلاگین خروجی URDF میدهند، اما اگر سادگی ملاک باشد، آن هم در سن ۲۶ سالگی برای یک رباتیک کار چیزی مثل Blender انتخاب خوبی نیست. ترجیح میدهم وقتم را صرف چیز پیچیده دیگری بکنم! 🙂
----------
@roboticknowledge
👍4
Robotic Knowledge
#Tools #CAD #URDF #SDF #Gazebo مدلهای شبیهسازی رباتی که همراه با mesh هستند و جزئیات خوبی دارند، توسط نرمافزارهای CAD آماده میشوند و به صورت URDF خروجی گرفته میشوند - نوشتن آنها با دست تقریبا غیرممکن است. امروز از صبح در حال یادگیری قابلیتهای نرمافزار…
#Tools #CAD
#URDF
#Gazebo #ROS2
نکته تکمیلی اول:
من از ورکبنچ CROSS برای ایجاد مدل URDF در FreeCAD استفاده میکنم.
تصویر از محیط FreeCAD من به همراه نمودار درختی ربات ایجاد شده با کمک CROSS گرفته شده است.
—————
@roboticknowledge
#URDF
#Gazebo #ROS2
نکته تکمیلی اول:
من از ورکبنچ CROSS برای ایجاد مدل URDF در FreeCAD استفاده میکنم.
تصویر از محیط FreeCAD من به همراه نمودار درختی ربات ایجاد شده با کمک CROSS گرفته شده است.
—————
@roboticknowledge
👍3
Robotic Knowledge
#Tools #CAD #URDF #Gazebo #ROS2 نکته تکمیلی اول: من از ورکبنچ CROSS برای ایجاد مدل URDF در FreeCAD استفاده میکنم. تصویر از محیط FreeCAD من به همراه نمودار درختی ربات ایجاد شده با کمک CROSS گرفته شده است. ————— @roboticknowledge
#Tools #CAD
#URDF
#Gazebo #ROS2
نکته تکمیلی دوم: CROSS آموزش ندارد. 😂 حتی داکیومنت خاصی هم ندارد!
با تعداد زیادی آزمون و خطا آموختم از آن استفاده کنم. ابزار Set Placement آنها که در تعریف مکان مفصل کاربردی است، باگ دارد و من راه دیگری برای تعریف مفصل پیدا کردم.
این ابزار توسط گروه یک استاد در دانشگاه پراگ جمهوری چک توسعه داده شده است - کلا در رباتیک این دانشگاه خدمات متن باز زیادی داده است - دمشان گرم.
—————
@roboticknowledge
#URDF
#Gazebo #ROS2
نکته تکمیلی دوم: CROSS آموزش ندارد. 😂 حتی داکیومنت خاصی هم ندارد!
با تعداد زیادی آزمون و خطا آموختم از آن استفاده کنم. ابزار Set Placement آنها که در تعریف مکان مفصل کاربردی است، باگ دارد و من راه دیگری برای تعریف مفصل پیدا کردم.
این ابزار توسط گروه یک استاد در دانشگاه پراگ جمهوری چک توسعه داده شده است - کلا در رباتیک این دانشگاه خدمات متن باز زیادی داده است - دمشان گرم.
—————
@roboticknowledge
👍4
Robotic Knowledge
#Tools #CAD #URDF #Gazebo #ROS2 نکته تکمیلی دوم: CROSS آموزش ندارد. 😂 حتی داکیومنت خاصی هم ندارد! با تعداد زیادی آزمون و خطا آموختم از آن استفاده کنم. ابزار Set Placement آنها که در تعریف مکان مفصل کاربردی است، باگ دارد و من راه دیگری برای تعریف مفصل پیدا…
#Tools #CAD
#URDF
#Gazebo #ROS2
نکته تکمیلی سوم:پس از تعریف مدل - شامل لینکها، مفاصل، هندسه واقعی و تصادف، کراس بصورت خودکار با تعریف ماده ویژگیهای اینرسی را محاسبه میکند. نهایتا یک پکیج راس 2 برای ربات تولید میکند که دارای لانچ فایل برای گزبو و آرویز نیز است! 🙂
—————
@roboticknowledge
#URDF
#Gazebo #ROS2
نکته تکمیلی سوم:پس از تعریف مدل - شامل لینکها، مفاصل، هندسه واقعی و تصادف، کراس بصورت خودکار با تعریف ماده ویژگیهای اینرسی را محاسبه میکند. نهایتا یک پکیج راس 2 برای ربات تولید میکند که دارای لانچ فایل برای گزبو و آرویز نیز است! 🙂
—————
@roboticknowledge
👍3
Robotic Knowledge
#Tools #CAD #URDF #Gazebo #ROS2 نکته تکمیلی سوم:پس از تعریف مدل - شامل لینکها، مفاصل، هندسه واقعی و تصادف، کراس بصورت خودکار با تعریف ماده ویژگیهای اینرسی را محاسبه میکند. نهایتا یک پکیج راس 2 برای ربات تولید میکند که دارای لانچ فایل برای گزبو و آرویز…
#URDF #ROS2 #Gazebo #CAD #Tools
و نهایتا لانچ کردن خروجی!
فوقالعاده است.😊
حال هر ساختار رباتیکی که در ذهن دارید میتوانید با این مراحل از CAD به Gazebo و ROS2 برسانید و کابوس URDF را به پایان برسانید.
—————
@roboticknowledge
و نهایتا لانچ کردن خروجی!
فوقالعاده است.😊
حال هر ساختار رباتیکی که در ذهن دارید میتوانید با این مراحل از CAD به Gazebo و ROS2 برسانید و کابوس URDF را به پایان برسانید.
—————
@roboticknowledge
👍3
#URDF #ROS2 #Gazebo #CAD #Tools
https://www.linkedin.com/posts/mjavadzallaghi_roboticists-ros-gazebo-activity-7217814868333084672-Pvmb?utm_source=share&utm_medium=member_desktop
https://www.linkedin.com/posts/mjavadzallaghi_roboticists-ros-gazebo-activity-7217814868333084672-Pvmb?utm_source=share&utm_medium=member_desktop
Linkedin
#Roboticists would like to create robots, simulate them, develop their software, then deploy on the hardware. | Mohammad Javad…
#Roboticists would like to create robots, simulate them, develop their software, then deploy on the hardware.
In #ROS 2 ecosystem, for simulation, we use #Gazebo. But you may ask, how to model the robot and import it in Gazebo?
🐢 For modelling the robot…
In #ROS 2 ecosystem, for simulation, we use #Gazebo. But you may ask, how to model the robot and import it in Gazebo?
🐢 For modelling the robot…
👍5