Բովանդակություն:
- Քայլ 1: Տեղադրեք Bootstrap- ի կախվածությունը և ներբեռնեք փաթեթները
- Քայլ 2: Խնդիրների շտկում
- Քայլ 3: Կառուցեք և տեղադրեք տեղադրումը
- Քայլ 4: Տեղադրեք RPLIDAR ROS փաթեթ
- Քայլ 5. Ստեղծեք ROS ՝ բազմաթիվ մեքենաների վրա աշխատելու համար
- Քայլ 6: Կատարված է:
Video: ROS Melodic Raspberry Pi 4 -ում [Debian Buster] + RPLIDAR A1M8: 6 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:46
Այս հոդվածը կներկայացնի Raspberry Pi 4 -ում ROS Melodic Morenia- ի տեղադրման գործընթացը `վերջին Debian Buster- ով աշխատող և ինչպես օգտագործել RPLIDAR A1M8- ը մեր տեղադրմամբ:
Քանի որ Debian Buster- ը պաշտոնապես թողարկվեց ընդամենը մի քանի շաբաթ առաջ (այս հոդվածը գրելու պահին), apt-get- ով տեղադրելու համար նախապես կառուցված ROS փաթեթներ չկան, ինչը տեղադրման նախընտրելի մեթոդ է: Այսպիսով, մենք պետք է կառուցենք այն աղբյուրից: Հավատացեք ինձ, դա այնքան էլ սարսափելի չէ, ինչպես թվում է: Գործընթացը նկարագրված է այս պաշտոնական ձեռնարկում, սակայն Raspberry Pi- ի վրա ROS Melodic- ի կառուցման համար մենք պետք է մի քանի փոփոխություն կատարենք:
Եթե դուք դեռ վախեցած եք, ահա մի զվարճալի պատկեր, որը * կարող է * օգնել ձեզ հանգստանալ: Խնդրում ենք տրամադրել հետադարձ կապ, եթե տրամադրված հանգստի մակարդակը բավարար էր: Եթե ոչ, այն կփոխարինվի զվարճալի կատվի նկարով:
Հունվար 2020 Խմբագրել. Քանի որ այս հոդվածը տեղադրելուց կես տարի է անցել, հնարավոր է որոշ փոփոխություններ կատարվեին ROS- ում կամ Buster- ում: Ես քիչ առաջ պատկեր եմ պատրաստել Raspberry Pi 4 -ի համար ՝ այս ձեռնարկը գրելուց հետո: Մի մասնակից ներբեռնել է այն Google Drive- ում
Ապրիլ 2020 Խմբագրել. Վերջերս ժամանակ գտա վերափոխելու ROS Melodic տեղադրումը Raspbian- ի նորագույն պատկերի վրա Raspberry Pi- ի պաշտոնական կայքից: Ես համապատասխանաբար խմբագրեցի այս հրահանգը: Ես նաև ստեղծեցի և տարածեցի մաքուր, սեղմված պատկերներ.
Raspbian Buster Lite 2020-02-13 Թողարկում ROS Melodic Bare-bone- ով Պահանջվում է 8 ԳԲ SD քարտ
Raspbian Buster աշխատասեղանով 2020-02-13 Թողարկում ROS Melodic Desktop- ով անհրաժեշտ է 16 ԳԲ SD քարտ
Դա կարող է լինել ձեր համակարգը գործարկելու ամենաարագ ճանապարհը: Եթե ցանկանում եք ինքներդ կազմել ROS, շարունակեք կարդալ հոդվածը:
Քայլ 1: Տեղադրեք Bootstrap- ի կախվածությունը և ներբեռնեք փաթեթները
Սկսենք պահեստների ստեղծումից և անհրաժեշտ կախվածությունները տեղադրելուց
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 թարմացում
sudo apt-get install -y python-rosdep python-rosinstall-generator python-wstool python-rosinstall build-essential cmake
Այնուհետև գործարկեք rosdep- ը և թարմացրեք այն
sudo rosdep init
rosdep թարմացում
Երբ դա արվի, եկեք ստեղծենք հատուկ աշխատանքային տարածք ROS- ի կառուցման համար և անցնենք այդ գրացուցակին:
mkdir ~/ros_catkin_ws
cd ~/ros_catkin_ws
Այժմ դուք ունեք երկու ընտրություն.
ROS -Comm. (Bare Bones) տեղադրում. Տեղադրեք այս ծրագիրը, եթե ծանոթ եք ROS- ին և գիտեք, թե ինչ եք անում և ինչ փաթեթներ են ձեզ հարկավոր: Եթե Ձեզ անհրաժեշտ են փաթեթներ, որոնք ներառված չեն ROS-Comm- ում, ապա ձեզ հարկավոր է կազմել նաև աղբյուրից:
Սեղանի տեղադրում. Ներառում է GUI գործիքներ, ինչպիսիք են rqt, rviz և robot-generic գրադարանները: Գուցե ավելի լավ ընտրություն լինի ROS- ի սկսնակների համար:
Ես կշարունակեմ այստեղ տեղադրել Desktop Install- ը:
rosinstall_generator desktop --rosdistro melodic --deps-only-wet-tenê> melodic-desktop-wet.rosinstall
wstool init -j8 src melodic-desktop-wet.rosinstall
Հրամանը կպահանջվի մի քանի րոպե ՝ բոլոր հիմնական ROS փաթեթները src պանակում ներբեռնելու համար:
Եթե wstool init- ը ձախողվի կամ ընդհատվի, կարող եք վերսկսել ներբեռնումը ՝ գործարկելով.
wstool- ի թարմացում -j4 -t src
Քայլ 2: Խնդիրների շտկում
Ապրիլ 2020 Խմբագրել. Բաց թողեք այս քայլը, թվում է, թե բոլոր հարցերն այժմ շտկված են:
Եկեք տեղադրենք Assimp- ի (Բաց ակտիվների ներմուծման գրադարան) համատեղելի տարբերակը `collada_urdf կախվածության խնդիրը լուծելու համար:
mkdir -p ~/ros_catkin_ws/external_src
cd ~/ros_catkin_ws/external_src
wget https://sourceforge.net/projects/assimp/files/assi… -O assimp-3.1.1_no_test_models.zip
unzip assimp-3.1.1_no_test_models.zip
cd assimp-3.1.1
սմեյք
կատարել
sudo make install
Եկեք նաև տեղադրենք OGRE- ը rviz- ի համար
sudo apt-get install libogre-1.9-dev
2020 թ. Հունվար ԹԱՐՄԱՈ:Մ. Libbost- ի հետ կապված խնդիրները արդեն շտկվել են ROS մշակողների կողմից, կարող եք բաց թողնել այս հատվածը
/// բաց թողնել /// Ի վերջո, մենք պետք է շտկենք libboost- ի հետ կապված խնդիրները: Ես օգտագործում եմ այս գրառման լուծումը stackoverflow- ում.
«Կազմման ընթացքում սխալները առաջանում են« boost:: posix_time:: milliseconds »գործառույթով, որն ավելի նոր boost տարբերակներում ընդունում է միայն ամբողջ թիվ փաստարկը, սակայն ROS- ի actionlib փաթեթը նրան տալիս է մի քանի վայրերում բոց: Դուք կարող եք թվարկել բոլոր ֆայլերը օգտագործելով այդ գործառույթը (! ros_catkin_ws թղթապանակում):
գտնել -տիպ f -print0 | xargs -0 grep 'boost:: posix_time:: milliseconds' | կտրել -դ: -f1 | տեսակ -ու
Բացեք դրանք ձեր տեքստային խմբագրիչում և որոնեք «boost:: posix_time:: milliseconds» գործառույթի կանչը:
և փոխարինել զանգերը հետևյալ կերպ.
խթանում:: posix_time:: milliseconds (loop_duration.toSec () * 1000.0f));
հետ ՝
խթանում:: posix_time:: միլիվայրկյաններ (int (loop_duration.toSec () * 1000.0f)));
և սրանք.
խթանում:: posix_time:: milliseconds (1000.0f)
հետ ՝
խթանում:: posix_time:: միլիվայրկյաններ (1000)
Ես խորհուրդ եմ տալիս օգտագործել nano տեքստային խմբագիր, որն ավելի պարզ է, քան VIM- ը;) Ctrl+O- ն խնայում է, Ctrl+X- ը դուրս է գալիս և Ctrl+W- ն որոնում է:
/// շարունակել_տեղից ///
Քայլ 3: Կառուցեք և տեղադրեք տեղադրումը
Հաջորդը, մենք օգտագործում ենք rosdep գործիքը `մնացած կախվածությունները տեղադրելու համար.
rosdep install-from-paths src --ignore-src --rosdistro melodic -y
Երբ այն ավարտի փաթեթների ներբեռնումը և կախվածությունները լուծելը, պատրաստ եք կառուցել catkin փաթեթները: (Գործարկեք այս հրամանը ros_catkin_ws պանակից)
sudo:
Եթե կազմման գործընթացը սառչի (շատ հավանական է, եթե տեղադրեք աշխատասեղանի տարբերակը), դուք պետք է մեծացնեք առկա փոխանակման տարածքը: Լռելյայն դա 100 ՄԲ է, փորձեք այն հասցնել 2048 ՄԲ -ի:
Հաջողություն! Ամբողջ կազմման գործընթացը տևում է մոտ 1 ժամ (ավելի քիչ ՝ Bare-bone տարբերակի համար), ուստի գնացեք թեյ պատրաստեք:
Այժմ ROS Melodic- ը պետք է տեղադրվի ձեր Raspberry Pi 4 -ի վրա: Մենք նոր տեղադրումը կներկայացնենք հետևյալ հրամանով.
արձագանք "աղբյուր /opt/ros/melodic/setup.bash" >> ~/.bashrc
Բացեք նոր պատյան ՝ փոփոխություններն ուժի մեջ մտնելու համար: Փորձեք գործարկել roscore ՝ ստուգելու համար, թե արդյոք ամեն ինչ հաջող էր:
Քայլ 4: Տեղադրեք RPLIDAR ROS փաթեթ
Եկեք ստեղծենք առանձին աշխատանքային տարածք այլ փաթեթների համար, որոնք հիմնական ROS- ի մաս չեն կազմում:
Ձեր տան թղթապանակից արեք.
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/
catkin_make
և աղբյուր այն bashrc:
արձագանք "աղբյուր $ HOME/catkin_ws/devel/setup.bash" >> ~/.bashrc
Լավ, մենք պատրաստ ենք սկսել RPLIDAR ROS փաթեթի տեղադրումը:
cd src
sudo git կլոն
cd..
catkin_make
Սպասեք փաթեթի կազմման ավարտին: Փորձեք գործարկել փաթեթը ՝ տեսնելու, թե արդյոք կազմումը հաջողված է.
roslaunch rplidar_ros rplidar.launch
Եթե դա սխալներ չի թողնում, կատարեք արագ տոնական պար (*ըստ ցանկության):
Այժմ բացակայում է միայն վերջին հատվածը. Քանի որ հավանաբար Raspberry Pi 4 -ը գործարկում եք անգլուխ ռեժիմով, մենք չենք կարող պատկերացնել lidar հաղորդագրությունները: Դրա համար մենք պետք է տեղադրենք ROS ՝ բազմաթիվ մեքենաների վրա աշխատելու համար:
Քայլ 5. Ստեղծեք ROS ՝ բազմաթիվ մեքենաների վրա աշխատելու համար
Այս մասի համար ձեզ հարկավոր կլինի Ubuntu 18.04 համակարգիչ `տեղադրված ROS Melodic- ով: Քանի որ դա Ubuntu ROS- ը կարող է պարզապես տեղադրվել apt-get- ի միջոցով, ինչպես նկարագրված է այս ձեռնարկում:
Ինչպես Raspberry Pi- ի, այնպես էլ ձեր աշխատասեղանի վրա ROS- ի տեղադրումից հետո ստուգեք երկու մեքենաների IP հասցեները: Նրանք պետք է լինեն նույն ցանցում:
Գործարկեք roscore ձեր աշխատասեղանի համակարգչի վրա և արտահանեք ROS_MASTER_URI
վարդագույն
արտահանել ROS_MASTER_URI = https:// [your-desktop-machine-ip]: 11311
Հաջորդը `ազնվամորի PI- ի կատարման վրա
արտահանել ROS_MASTER_URI = https:// [your-desktop-machine-ip]: 11311
արտահանել ROS_IP = [your-raspberry-pi-ip]
և գործարկել RPILIDAR գործարկման ֆայլը
roslaunch rplidar_ros rplidar.launch
Եթե այն հաջողությամբ գործարկվի, ստուգեք ձեր աշխատասեղանի վրա առկա թեմաները ռոստոպիկ ցուցակով
Եթե դուք կարող եք տեսնել / սկանավորել հաղորդագրությունները, ամեն ինչ աշխատում է այնպես, ինչպես ենթադրվում էր: Այնուհետև գործարկեք RVIZ- ը ձեր աշխատասեղանի վրա, ավելացրեք Լազերային սկան հաղորդագրություններ և ընտրեք /սկան թեման: Դուք նաև պետք է փոխեք ֆիքսված շրջանակը /լազերային:
Վոյա!
Քայլ 6: Կատարված է:
Այս ուղեցույցը կարող է լինել առաջին քայլը ՝ ձեր ROS ռոբոտը նոր Raspberry Pi 4 -ի վրա կառուցելու համար: Մենք տեղադրել ենք ROS Melodic- ը և պատրաստել ենք տեղադրումը `առանց գլխի աշխատելու և հեռակառավարման համար աշխատասեղանին անլար ցանցով միանալու համար:
Հաջորդ քայլերը կախված են նրանից, թե ինչ տեսակի ռոբոտ եք ցանկանում կառուցել: Կարող եք ավելացնել շարժիչ և կոդավորիչ ՝ օդոմետրիայի համար, ստերեո տեսախցիկ ՝ Visual SLAM- ի համար և բոլոր այլ հետաքրքիր և օգտակար իրեր:
Այս հոդվածի սարքավորումները սիրով տրամադրվել են Seeed ստուդիայի կողմից: Դիտեք Raspberry Pi 4, RPLIDAR A1M8 և արտադրողների համար նախատեսված այլ սարքավորումներ Seeed ստուդիայի խանութում:
Եթե ունեք որևէ հարց, ավելացրեք ինձ LinkedIn- ում և բաժանորդագրվեք իմ YouTube ալիքին ՝ մեքենայական ուսուցման և ռոբոտաշինության հետ կապված ավելի հետաքրքիր նախագծերի մասին տեղեկանալու համար:
Խորհուրդ ենք տալիս:
Tingածր RPLIDAR- ով սկսելը Jetson Nano- ի միջոցով. 5 քայլ
Tingածր ծախսերով RPLIDAR- ով սկսելը Jetson Nano- ի միջոցով. Համառոտ ակնարկԼույսի հայտնաբերումն ու աստիճանը (LiDAR) գործում է այնպես, ինչպես ձայնային ալիքների փոխարեն օգտագործվում են լազերային զարկերակով ուլտրաձայնային հեռաչափերը: Yandex- ը, Uber- ը, Waymo- ն և այլն մեծ ներդրումներ են կատարում LiDAR տեխնոլոգիայի մեջ իրենց ինքնավար մեքենաների համար
Ինչպես օգտագործել RPLIDAR 360 ° լազերային սկաները Arduino- ով. 3 քայլ (նկարներով)
Ինչպես օգտագործել RPLIDAR 360 ° լազերային սկաներ Arduino- ի հետ. Ես իմացա RPLIDAR A1- ի մասին, որը կարող եք ձեռք բերել 99 դոլարով DFROBOT.com կայքում: Ես ասացի, որ ինտեգրված եմ
Roomblock: ROS նավարկություն սովորելու հարթակ Roomba- ով, Raspberry Pi- ով և RPLIDAR- ով. 9 քայլ (նկարներով)
Roomblock: ROM նավարկություն սովորելու հարթակ Roomba- ով, Raspberry Pi- ով և RPLIDAR- ով. Ի՞նչ է սա: " Roomblock " ռոբոտային հարթակ է, որը բաղկացած է Roomba- ից, Raspberry Pi 2 -ից, լազերային սենսորից (RPLIDAR) և շարժական մարտկոցից: Մոնտաժման շրջանակը կարող է պատրաստվել 3D տպիչների միջոցով: ROS նավիգացիոն համակարգը հնարավորություն է տալիս կազմել սենյակների քարտեզ և օգտագործել