Բովանդակություն:

ROS Melodic Raspberry Pi 4 -ում [Debian Buster] + RPLIDAR A1M8: 6 քայլ
ROS Melodic Raspberry Pi 4 -ում [Debian Buster] + RPLIDAR A1M8: 6 քայլ

Video: ROS Melodic Raspberry Pi 4 -ում [Debian Buster] + RPLIDAR A1M8: 6 քայլ

Video: ROS Melodic Raspberry Pi 4 -ում [Debian Buster] + RPLIDAR A1M8: 6 քայլ
Video: How to Install ROS Melodic on the Raspberry Pi OS - Buster! 2024, Նոյեմբեր
Anonim
Image
Image
ROS Melodic on Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8
ROS Melodic on Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8

Այս հոդվածը կներկայացնի 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 փաթեթ

Տեղադրեք RPLIDAR ROS փաթեթը
Տեղադրեք 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 ՝ բազմաթիվ մեքենաների վրա աշխատելու համար

Տեղադրեք ROS ՝ բազմաթիվ մեքենաների վրա աշխատելու համար
Տեղադրեք 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 ալիքին ՝ մեքենայական ուսուցման և ռոբոտաշինության հետ կապված ավելի հետաքրքիր նախագծերի մասին տեղեկանալու համար:

Խորհուրդ ենք տալիս: