#ROS2
#Simulink
#Algorithm
#Design
#Tools
در ادامه امکانات مربوط به لاگهای ROS (فایلهای bag)، مورد محبوب دیگری نیز وجود دارد: Simulink
در سیمولینک بلوکهایی برای خواندن این فایلها وجود دارد. برای مثال من در تصویر دیتای IMU را (شتاب خطی) ترسیم کردهام. این امکان به شما در توسعه الگوریتم سرعت بالایی میدهد؛ براحتی فایلهای لاگ را بالا میاورید و با دادههای آن الگوریتم را توسعه میدهید و تست میکنید - همین کار را من برای Localization دارم انجام میدهم. نهایتا میتوان از الگوریتم نیز کد هسته آن را تولید کرد — توسط Code Generation (بعدا در این مورد صحبت خواهم کرد).
—————
@roboticknowledge
#Simulink
#Algorithm
#Design
#Tools
در ادامه امکانات مربوط به لاگهای ROS (فایلهای bag)، مورد محبوب دیگری نیز وجود دارد: Simulink
در سیمولینک بلوکهایی برای خواندن این فایلها وجود دارد. برای مثال من در تصویر دیتای IMU را (شتاب خطی) ترسیم کردهام. این امکان به شما در توسعه الگوریتم سرعت بالایی میدهد؛ براحتی فایلهای لاگ را بالا میاورید و با دادههای آن الگوریتم را توسعه میدهید و تست میکنید - همین کار را من برای Localization دارم انجام میدهم. نهایتا میتوان از الگوریتم نیز کد هسته آن را تولید کرد — توسط Code Generation (بعدا در این مورد صحبت خواهم کرد).
—————
@roboticknowledge
👍3
#Simulink #C #Cpp #Algorithm #CodeGeneration #Python
شبیهسازهای مطرح RL همگی از Python استفاده میکنند و شما یک ++C/C نویس هستید. تکلیف چیست؟
شاید برای افرادی که از Python برای کار رباتیکی خود استفاده میکنند و زیاد از ++C/C در کار خود استفاده نکردهاند، پایتون یک بهشت باشد اما برای افرادی که به ++C/C نویسی عادت دارند، نوشتن Python بصورت فراتر از یک اسکریپت ساده عذاب بزرگی خواهد بود از بس که محدودیت دارد این زبان و وقتی قدرت C بزرگ را بدانید متوجه خواهید شد - خصوصا اگر C را از Simulink تولید کنید!
حال تصویر کنید در Isaac Gym یا هر Gym دیگری ربات و محیط شما باید با اسکریپت Python شبیهسازی و کنترل شود — که دردناک خواهد بود برای همان دسته توسعهدهنگان صنعتیتر.
اما خیلی راحت میتوان الگوریتم را با C نوشت (یا کد C از آن در Simulink تولید کرد) و آن را کامپایل کرد و یک کتابخانه AlgoSDK.so از آن تولید کرد. از اینجا به بعد براحتی مینوانید فایل so. کتابخانه C را در اسکریپت مینیمال پایتون خود صدا بزنید:
—————
@roboticknowledge
شبیهسازهای مطرح RL همگی از Python استفاده میکنند و شما یک ++C/C نویس هستید. تکلیف چیست؟
شاید برای افرادی که از Python برای کار رباتیکی خود استفاده میکنند و زیاد از ++C/C در کار خود استفاده نکردهاند، پایتون یک بهشت باشد اما برای افرادی که به ++C/C نویسی عادت دارند، نوشتن Python بصورت فراتر از یک اسکریپت ساده عذاب بزرگی خواهد بود از بس که محدودیت دارد این زبان و وقتی قدرت C بزرگ را بدانید متوجه خواهید شد - خصوصا اگر C را از Simulink تولید کنید!
حال تصویر کنید در Isaac Gym یا هر Gym دیگری ربات و محیط شما باید با اسکریپت Python شبیهسازی و کنترل شود — که دردناک خواهد بود برای همان دسته توسعهدهنگان صنعتیتر.
اما خیلی راحت میتوان الگوریتم را با C نوشت (یا کد C از آن در Simulink تولید کرد) و آن را کامپایل کرد و یک کتابخانه AlgoSDK.so از آن تولید کرد. از اینجا به بعد براحتی مینوانید فایل so. کتابخانه C را در اسکریپت مینیمال پایتون خود صدا بزنید:
from ctypes import * #Import ctypes library
libc = CDLL("./AlgoSDK.so") #Load library
—————
@roboticknowledge
👍3👀2🫡2
Robotic Knowledge
#Simulink #C #Cpp #Algorithm #CodeGeneration #Python شبیهسازهای مطرح RL همگی از Python استفاده میکنند و شما یک ++C/C نویس هستید. تکلیف چیست؟ شاید برای افرادی که از Python برای کار رباتیکی خود استفاده میکنند و زیاد از ++C/C در کار خود استفاده نکردهاند،…
#Simulink #C #Cpp #Algorithm #CodeGeneration #Python
پایتون در توسعه و پیادهسازی الگوریتم کنترلی = SHIT
بسیار افراد متخصص و صاحب موقعیت در آکادمیا دیدهام که نمیدانند Code Generation چیست و چگونه باید از قابلیتهای آن استفاده کنند — واقعا نصف عمرشان بر فنا هست حتی بیشتر! در رباتیک واقعی و هر جا که به سیستم امبدد منتهی شود، پایتون یک SHIT است — البته برای افرادی که با ++C/C پیمان قلبی دارند و میدانند چقدر قابل هستند!
و وقتی برای آن دسته از افراد مواردی از امکانات Code Generation ارائه میکنم، متوجه میشوم حسرت را در نگاهشان که وای از چه نعمتی غافل بودیم. 😎
—————
@roboticknowledge
پایتون در توسعه و پیادهسازی الگوریتم کنترلی = SHIT
بسیار افراد متخصص و صاحب موقعیت در آکادمیا دیدهام که نمیدانند Code Generation چیست و چگونه باید از قابلیتهای آن استفاده کنند — واقعا نصف عمرشان بر فنا هست حتی بیشتر! در رباتیک واقعی و هر جا که به سیستم امبدد منتهی شود، پایتون یک SHIT است — البته برای افرادی که با ++C/C پیمان قلبی دارند و میدانند چقدر قابل هستند!
و وقتی برای آن دسته از افراد مواردی از امکانات Code Generation ارائه میکنم، متوجه میشوم حسرت را در نگاهشان که وای از چه نعمتی غافل بودیم. 😎
—————
@roboticknowledge
👍2🤯1🍾1👀1