مجتمع فنی تهران پایتخت
ثبت نام
پروژه ربات نقشه برداری و موقعیت یابی خانه داخلی مجهز به رادار و ROS

پروژه ربات نقشه برداری و موقعیت یابی خانه داخلی مجهز به رادار و ROS

فاطمه محمد بیگی

از آنجایی که خیلی ها شروع به کار با ROS و ساخت یک ربات مبتنی بر ROS را دشوار می دانند، در این پروژه شما یاد خواهید گرفت که چگونه رباتی را توسعه دهید که مجهز به یک LiDAR 4K و محدوده اسکن 8 متری برای موقعیت یابی داخلی باشد.

ربات نقشه برداری و موقعیت یابی خانه داخلی مجهز به رادار و ROS

آماده سازی ROS

آماده سازی ROS

موارد لازم :

برای به دست آوردن داده های سه بعدی زنده از LiDAR، Raspberry Pi را با ROS مانند ROS Kinetic، ROS Melodic، ROS Noetic، ROS Indigo و بسیاری دیگر راه اندازی کنید. در اینجا ما از ROS Kinetic استفاده خواهیم کرد زیرا نسخه LiDAR X2L از آن پشتیبانی می کند.

کارت SD را با سیستم عامل اوبونتو آماده کنید. می توان آن را با استفاده از https://ubuntu.com/download/raspberry-pi برای Raspberry Pi دانلود کرد.

اکنون به نصب ROS ادامه دهید. اگر با مشکل یا خطایی مواجه شدید، می توانید مستقیماً با مراجعه به آدرس https://downloads.ubiquityrobotics.com/pi.html، سیستم عامل ROS از پیش نصب شده را دانلود کنید. همچنین می‌توانید با مراجعه به دستورالعمل‌های ذکر شده در وب‌سایت رسمی ROS http://wiki.ros.org/kinetic/Installation/Ubuntu، ROS را به صورت دستی نصب کنید.

از آنجایی که ROS و اوبونتو OS اکنون در Raspberry Pi وجود دارند، شما برای پیاده سازی سیستم نقشه برداری و موقعیت یابی ربات مبتنی بر LiDAR آماده هستید.

قبل از ادامه، مطمئن شوید که SDK، ROS Driver و YD Lidar Work Space را راه اندازی کرده اید. اما اگر از RPI Lidar استفاده می کنید، باید ROS را راه اندازی کنید.

سپس، درایور و SDK LiDAR را تنظیم کنید. از آنجایی که در اینجا YD Lidar داریم، لیدار SDK را با استفاده از دستور زیر در LXTerminal نصب کرده و SDK را کامپایل کنید.

 git clone https://github.com/YDLIDAR/YDLidar-SDK
cd YDLidar-SDK/build
cmake .
Make
sudo make install

سپس فضای کاری ROS را برای LIDAR ایجاد کنید. برای آن، درایور ROS را با استفاده از دستورات زیر در LXTerminal نصب کنید.

مطالب مرتبط: لیست پروژه های الکترونیک و رباتیک

 mkdir -p ~/ydlidar_ws/src
cd ~/ydlidar_ws
catkin_make
echo "source ~/ydlidar_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc
cd ~/ydlidar_ws/src/ydlidar_ros_driver/startup
sudo chmod +x initenv.sh
sudo sh initenv.sh

ساخت و ساز

پس از نصب ROS، می توانید با اجرای دستورات مطابق شکل بالا، LiDAR و ROS را بررسی کنید. سپس پیامی را در ترمینال به عنوان خروجی LiDAR Health good و اسکن LiDAR دریافت خواهید کرد (جدول زیر را در pdf به عنوان خروجی بررسی کنید).

sudo apt-get install python-serial ros-kinetic-serial g++ vim \
Ros-kinetic-turtlebot-rviz-launchers

از شاسی رباتی استفاده کنید که بتواند وزن LiDAR را تحمل کند. در اینجا من از یک شاسی چهار چرخ متحرک استفاده می کنم.

باتری الکترونیکی Raspberry PI و حسگر LiDAR را در بالای ربات نصب کنید تا اسکن اتاق را صاف و کامل انجام دهد. موقعیت لیدار 0 را (بر اساس نوع شاسی) حفظ کنید تا جهت درست را برای ربات به دست آورید.

کد نویسی

ربات را می توان با استفاده از PHP یا رابط کاربری گرافیکی کنترل کرد. برای ساخت رابط کاربری گرافیکی به مقاله زیر مراجعه کنید.

مطالب مرتبط: رباتیک چیست؟ انواع و کاربردهای آن

با استفاده از دستور، کتابخانه GUI zero را نصب کنید

sudo pip3 install guizero

برای اجرای ربات، باید GPIO را کنترل کنید. برای آن، gpiozero را با استفاده از دستور نصب کنید

sudo pip3 install gpiozero

پس از نصب کتابخانه های مورد نیاز، ماژول کتابخانه guizero و ماژول ربات gpiozero را در کد وارد کنید. پس از آن، پین های GPIO را برای کنترل ربات روی 17.27.22.23 قرار دهید.

اکنون دکمه های (5) را برای رابط کاربری گرافیکی ایجاد کنید و عملکرد آنها را تنظیم کنید.

تنظیم جریان دوربین

برای ضبط ویدیوی زنده از دوربین Raspberry Pi و نمایش فریم به فریم آن در پنجره دسکتاپ Raspberry Pi، از OpenCV استفاده کنید.

سپس سرور VNC را در نمایشگر Raspberry Pi و VNC روی رایانه شخصی یا تلفن هوشمند نصب کنید. به دسکتاپ Raspberry Pi بروید، VNC را باز کنید و آدرس IP را بررسی کنید تا صفحه Raspberry Pi را از راه دور رایانه شخصی یا تلفن هوشمند مشاهده کنید.

  ارتباط

یک کابل USB را به LiDAR و Raspberry Pi وصل کنید. پس از آن، موتورها را به ورودی رزبری پای متصل کنید. در اینجا می توانید از درایور موتور استفاده کنید، اما از کلاه صوتی که مستقیماً موتور را به حرکت در می آورد نیز می توان استفاده کرد.

آزمایش کردن

Raspberry Pi را با استفاده از VNC وصل کنید و سپس کد کنترل رابط کاربری گرافیکی یا ربات را اجرا کنید. ترمینال LX را باز کنید، ROS را راه اندازی کنید و اسکن LIDAR را با استفاده از دستور داده شده انجام دهید.

roslaunch ydlidar_ros_driver X2.launch

با این کار، لیدار در ROS شروع به کار می کند. سپس RIVZ را باز کنید تا نقشه اسکن شده توسط ربات را ببینید. برای این کار دستور را در ترمینال جدید اجرا کنید.

ظاهر شدن ROS RIVZ

پس از این، ROS RIVZ ظاهر می شود که نقشه اتاق را نشان می دهد که موقعیت ربات را نیز در زمان واقعی نشان می دهد.

جهت ثبت نام در دوره آموزش رباتیک کلیک کنید.

برای امتیاز به این نوشته کلیک کنید!
[کل: 0 میانگین: 0]
فاطمه محمد بیگی
نویسنده: فاطمه محمد بیگی
تعداد نوشته ها:346

خلاصه از نویسنده:

دیدگاه کاربران
0 0 رای ها
امتیازدهی به مقاله

0 نظرات
بازخورد (Feedback) های اینلاین
مشاهده همه دیدگاه ها
مقالات مشابه
© تمامی حقوق برای تهران پایتخت محفوظ میباشد.