विषयसूची:

रास्पबेरी पाई 4b पर ROS काइनेटिक, टर्टलबॉट3, रास्पिकैम स्थापित करें: 5 चरण
रास्पबेरी पाई 4b पर ROS काइनेटिक, टर्टलबॉट3, रास्पिकैम स्थापित करें: 5 चरण

वीडियो: रास्पबेरी पाई 4b पर ROS काइनेटिक, टर्टलबॉट3, रास्पिकैम स्थापित करें: 5 चरण

वीडियो: रास्पबेरी पाई 4b पर ROS काइनेटिक, टर्टलबॉट3, रास्पिकैम स्थापित करें: 5 चरण
वीडियो: Turtlebot3 Gazebo Tutorial | ROS 101 | ROS Tutorials for Beginners | Lesson 6 2024, नवंबर
Anonim
रास्पबेरी पाई 4बी पर आरओएस काइनेटिक, टर्टलबॉट3, रास्पिकैम स्थापित करें
रास्पबेरी पाई 4बी पर आरओएस काइनेटिक, टर्टलबॉट3, रास्पिकैम स्थापित करें

टर्टलबॉट3 बर्गर रास्पबेरी पाई 3 बी/बी+ के साथ आता है और यह नए (9/2019 तक) रास्पबेरी पाई 4बी का समर्थन नहीं करता है। TurtleBot3 को रास्पबेरी पाई 4b पर काम करने के लिए नीचे दिए गए चरणों का पालन करें, जिसमें शामिल हैं

  • रास्पबेरी पाई 4बी रास्पियन बस्टर पर स्रोतों से आरओएस काइनेटिक का निर्माण
  • टर्टलबॉट3-विशिष्ट पैकेज जोड़ना
  • में रास्पिकैम-नोड जोड़ना

चरण 1: रास्पियन स्थापित करें और रास्पबेरी पाई 4b कॉन्फ़िगर करें

रास्पियन स्थापित करें और रास्पबेरी पाई 4b कॉन्फ़िगर करें
रास्पियन स्थापित करें और रास्पबेरी पाई 4b कॉन्फ़िगर करें

एक रास्पियन छवि डाउनलोड करें। मैंने 2019–07–10 दिनांकित रास्पियन बस्टर का उपयोग किया।

डाउनलोड की गई रास्पियन छवि को एसडी कार्ड (आकार में कम से कम 8 जीबी) में जलाएं। अपने रास्पबेरी पाई 4 बी में एक डिस्प्ले, कीबोर्ड और माउस कनेक्ट करें, बूट करें और वाईफाई से कनेक्ट करें। अपने पूरे एसडी कार्ड पर कब्जा करने के लिए फाइल सिस्टम का विस्तार करें और वैकल्पिक रूप से, एसएसएच और वीएनसी को चलाकर सक्षम करें

सुडो रास्पि-कॉन्फ़िगरेशन

चरण 2: आरओएस काइनेटिक स्रोत डाउनलोड करें

आरओएस काइनेटिक स्रोत डाउनलोड करें
आरओएस काइनेटिक स्रोत डाउनलोड करें

नीचे दिए गए निर्देश आधिकारिक आरओएस ट्यूटोरियल के साथ-साथ दिमित्रीएम 8 निर्देश का पालन करते हैं।

अपने रास्पबेरी पाई 4 बी में लॉग इन करें और आरओएस पैकेज रिपॉजिटरी जोड़ने, टूल्स बनाने और आरओएस निर्भरता टूल को इनिशियलाइज़ करने के लिए इन कमांड्स को निष्पादित करें।

sudo sh -c 'echo "deb https://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654 sudo apt-get update sudo apt-get install -y python-rosdep python-rosinstall-generator python-wstool पायथन-रोसइंस्टॉल बिल्ड-एसेंशियल सेमेक सुडो रोजडेप इनिट रोस्डेप अपडेट

स्रोत से ROS काइनेटिक बनाने के लिए कार्यक्षेत्र बनाएँ।

mkdir ~/ros_catkin_ws

सीडी ~/ros_catkin_ws

"ros_comm" पैकेज के लिए स्रोत कोड डाउनलोड करें, जिसमें रोबोट के ऑन-बोर्ड कंप्यूटर पर चलने के लिए आवश्यक मॉड्यूल शामिल हैं। यहां rosinstall_generator डाउनलोड करने के लिए स्रोत कोड रिपॉजिटरी की एक सूची बनाता है। wstool तब स्रोत कोड डाउनलोड करने के लिए आगे बढ़ता है।

rosinstall_generator ros_comm --rosdistro kinetic --deps --wet-only --tar > kinetic-ros_comm-wet.rosinstall

wstool init -j8 src kinetic-ros_comm-wet.ros install rosdep install --from-paths src --ignore-src --rosdistro kinetic -y

TurtleBot3 और raspicam को चलाने के लिए आपको ros_comm के अलावा इन ROS पैकेजों की आवश्यकता होगी: common_msgs, rosserial, image_common, image_transport_plugins और डायग्नोस्टिक्स। इन संकुलों को जोड़ने के लिए इन आदेशों को चलाएँ।

rosinstall_generator common_msgs common_msgs rosserial image_common image_transport_plugins डायग्नोस्टिक्स nodelet_core --rosdistro kinetic --deps --wet-only --tar > kinetic-extra-wet.rosinstall

wstool merge -t src kinetic-extra-wet.rosinstall wstool update -j8 -t src rosdep install --from-paths src --ignore-src --rosdistro kinetic -y

जैसे-जैसे निर्भरता संस्करण समय के साथ बदलते हैं, "पायथन-रोसडिस्ट्रो-मॉड्यूल_0.7.5-1_all.deb (--अनपैक) जैसी त्रुटियां हो सकती हैं: '/usr/lib/python2.7/dist-packages/rosdistro/_init_' को अधिलेखित करने का प्रयास करना।.py', जो पैकेज पायथन-रोसडिस्ट्रो 0.7.2-1" में भी है। इन "ओवरराइट करने का प्रयास" त्रुटियों को हल करें:

sudo dpkg --remove --force-all python-catkin-pkg अजगर-catkin-pkg-मॉड्यूल

// या sudo apt हटाएँ sudo apt --fix-broken install

चरण 3: ROS संकलन त्रुटियों को मैन्युअल रूप से ठीक करें

ROS संकलन त्रुटियों को मैन्युअल रूप से ठीक करें
ROS संकलन त्रुटियों को मैन्युअल रूप से ठीक करें

इस बिंदु पर ROS का निर्माण विभिन्न त्रुटियों के साथ विफल हो जाएगा। आइए ROS स्रोत कोड को मैन्युअल रूप से संपादित करके उन त्रुटियों को ठीक करें।

संपादित करें

/home/pi/ros_catkin_ws/src/opencv3/modules/python/src2/cv2.cpp लाइन 885

बदलने के

चार * str = PyString_AsString (obj);

साथ

const char* str = PyString_AsString(obj);

नीचे फ़ाइलें संपादित करें।

/home/pi/ros_catkin_ws/src/rospack/include/rospack/rospack.h /home/pi/ros_catkin_ws/src/rospack/src/rospack.cpp /home/pi/ros_catkin_ws/src/rospack/src/utils.cpp

की सभी घटनाओं को हटा दें

/tr1

और. की सभी घटनाओं को बदलें

एसटीडी:: tr1

साथ

बढ़ावा

नीचे फ़ाइलें संपादित करें।

/home/pi/ros_catkin_ws/src/actionlib/include/actionlib/client/simple_action_client.h /home/pi/ros_catkin_ws/src/actionlib/include/actionlib/destruction_guard.h /home/pi/ros_catkin_ws/src/actionlib/include /actionlib/server/simple_action_server_imp.h /home/pi/ros_catkin_ws/src/actionlib/src/connection_monitor.cpp /home/pi/ros_catkin_ws/src/actionlib/test/destruction_guard_test.cpp /home/pi/ros_catkin_ws/src/bond_core /bondcpp/src/bond.cpp /home/pi/ros_catkin_ws/src/ros_comm/roscpp/include/ros/timer_manager.h /home/pi/ros_catkin_ws/src/ros/roslib/test/utest.cpp

की सभी घटनाओं को बदलें

बूस्ट:: पॉज़िक्स_टाइम:: मिलीसेकंड (…)

साथ

बूस्ट:: पॉज़िक्स_टाइम:: मिलीसेकंड (इंट (…))

नीचे दी गई फ़ाइल को संपादित करें।

/home/pi/ros_catkin_ws/src/geometry2/tf2/src/buffer_core.cpp

सबको बदली करें

लॉग चेतावनी

साथ

CONSOLE_BRIDGE_logचेतावनी

तथा

लॉग त्रुटि

साथ

CONSOLE_BRIDGE_logत्रुटि

चरण 4: ROS काइनेटिक बनाएँ

इस बिंदु पर निर्माण सफल होना चाहिए।

सीडी ~/ros_catkin_ws

sudo./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=रिलीज़ --इंस्टॉल-स्पेस/ऑप्ट/रोस/काइनेटिक

~/.bashrc में संलग्न करें और अपने खोल में भी निष्पादित करें:

स्रोत /opt/ros/kinetic/setup.bash

चरण 5: टर्टलबॉट3 और रास्पिकैम पैकेज बनाएं

टर्टलबॉट3 और रास्पिकैम पैकेज बनाएं
टर्टलबॉट3 और रास्पिकैम पैकेज बनाएं

ये निर्देश ROBOTIS ट्यूटोरियल का अनुसरण करते हैं।

mkdir -p ~/catkin_ws/src

सीडी ~/catkin_ws/ catkin_make स्रोत devel/setup.bash

~/.bashrc संपादित करें और संलग्न करें

स्रोत /home/pi/catkin_ws/devel/setup.bash

अब, निष्पादित करें

सीडी ~/catkin_ws/src

गिट क्लोन https://github.com/ROBOTIS-GIT/hls_lfcd_lds_driver.git git क्लोन https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git क्लोन https://github.com/ROBOTIS-GIT/turtlebot3। git git क्लोन https://github.com/UbiquityRobotics/raspicam_node.git cd ~/catkin_ws/src/turtlebot3 rm -r Terminalbot3_description/turbalbot3_teleop/turbalbot3_navigation/ टर्टलबॉट3_slam/ टर्टलबोट3_उदाहरण/ सीडी ~/catkin_ws && catkin_make

निर्माण सफल होना चाहिए।

TurtleBot3 USB बाह्य उपकरणों को पहचानने के लिए रास्पबेरी पाई 4b को कॉन्फ़िगर करें।

रोसरन टर्टलबोट3_ब्रिंगअप create_udev_rules

ifconfig चलाएँ और रास्पबेरी पाई का IP लिखें।

ifconfig

संपादित करें ~/.bashrc. नीचे दी गई पंक्तियों को जोड़ें और उन्हें अपने शेल में निष्पादित भी करें।

निर्यात ROS_MASTER_URI=https://Your. ROS. MASTER. IP:11311

निर्यात ROS_HOSTNAME=Your. RASPBERRY. PI. IP

रास्पबेरी पाई और पीसी समय को सिंक्रनाइज़ करें:

sudo apt-ntpdate स्थापित करें

सुडो एनटीपीडेट ntp.ubuntu.com

इस बिंदु पर, आपका सेटअप पूरा हो जाना चाहिए। अब आप अपने टर्टलबॉट3 में रास्पबेरी पाई 3/3+ के बजाय अपने रास्पबेरी पाई 4 बी का उपयोग कर सकते हैं।

सिफारिश की: