Installazzjoni ta 'ROS f'immaġini IMG Ubuntu għal bord wieħed

Introduzzjoni

Il-ġurnata l-oħra, waqt li kont qed naħdem fuq it-teżi tiegħi, kont iffaċċjat bil-ħtieġa li noħloq immaġni Ubuntu għal pjattaforma single-board b'ROS diġà installat (Sistema Operattiva Robot - sistema operattiva robot). Fil-qosor, id-diploma hija ddedikata għall-ġestjoni ta 'grupp ta' robots. Ir-robots huma mgħammra b'żewġ roti u tliet rangefinders. Il-ħaġa sħiħa hija kkontrollata minn ROS, li timxi fuq il-bord ODROID-C2.

Installazzjoni ta 'ROS f'immaġini IMG Ubuntu għal bord wieħed
Ladybug Robot. Jiddispjacini għall-kwalità fqira tar-ritratti

La kien hemm ħin u lanqas xewqa li tinstalla ROS fuq kull robot individwalment, u għalhekk kien hemm bżonn ta 'immaġni tas-sistema b'ROS diġà installat. Wara li bbrawżjajt l-Internet, sibt diversi approċċi dwar kif dan jista 'jsir.
B'mod ġenerali, is-soluzzjonijiet kollha misjuba jistgħu jinqasmu fil-gruppi li ġejjin.

  1. Programmi li joħolqu immaġni minn sistema lesta u kkonfigurata (Distroshare Ubuntu Imager, Linux live kit, linux respin, systemback, eċċ.)
  2. Proġetti li jippermettulek toħloq l-immaġni tiegħek stess (yocto, Linux mill-bidu)
  3. Arma l-immaġni lilek innifsek (customization CD ħajjin и Ekwivalenti Russu, vantaġġ artikolu dwar il-hub)

L-użu ta 'soluzzjonijiet mill-ewwel grupp deher li kien l-iktar għażla sempliċi u attraenti, iżda qatt ma kont kapaċi noħloq immaġni ta' sistema ħajjin għal ODROID. Is-soluzzjonijiet tat-tieni grupp ukoll ma kinux tajbin lili minħabba l-limitu tad-dħul pjuttost għoli. L-assemblaġġ manwali skont it-tutorials disponibbli wkoll ma kienx adattat, minħabba li... L-immaġni tiegħi ma kellhiex sistema ta 'fajls kompressat.
Bħala riżultat, iltqajt ma' vidjo dwar chroot (chroot - ibiddel l-għerq, link għall-vidjo fl-aħħar tal-post) u l-kapaċitajiet tiegħu, ġie deċiż li tużah. Sussegwentement, ser niddeskrivi l-każ partikolari tiegħi ta 'customizing Ubuntu għall-iżviluppaturi tar-robotika.

Dejta tas-sors:

  • Il-proċess kollu ta 'modifika tal-immaġni (ħlief għall-kitba fuq il-karta SD bl-użu ta' balenaEtcher) sar fuq is-sistema operattiva Ubuntu 18.04.
  • Is-sistema operattiva li l-assemblaġġ tagħha jien immodifikat hija Ubuntu 18.04.3 mate desktop version.
  • Il-magna li fuqha għandha taħdem is-sistema immuntata hija ODROID-C2.

Tħejjija tal-immaġni

  1. Niżżel l-immaġni Ubuntu għal ODROID minn sit uffiċjali

  2. Tneħħi l-ippakkjar tal-arkivju

    unxz –kv <файл архива с образом>

  3. Oħloq direttorju li fih se nimmuntaw l-immaġni

    mkdir mnt

  4. Iddetermina l-partizzjoni li fuqha tinsab is-sistema tal-fajls

    file <файл образа>

    Qegħdin infittxu partizzjoni b'sistema ta 'fajls fil-format ext2, ext3 jew ext4. Għandna bżonn l-indirizz tal-bidu tat-taqsima (enfasizzat bl-aħmar fuq l-iskrin):

    Installazzjoni ta 'ROS f'immaġini IMG Ubuntu għal bord wieħed

    Innota. Il-post tas-sistema tal-fajls tista 'tara wkoll billi tuża l-utilità indaqs.

  5. Immuntar tal-immaġni

    sudo mount -o loop,offset=$((264192*512)) <файл с образом> mnt/

    It-taqsima li neħtieġu tibda bil-blokk 264192 (in-numri tiegħek jistgħu jvarjaw), id-daqs ta 'blokka waħda huwa 512 bytes, immoltiplikahom biex tikseb l-indentazzjoni f'bytes.

  6. Mur fil-folder bis-sistema immuntata u hang out fiha

    cd mnt/
    sudo chroot ~/livecd/mnt/ bin/sh

    ~/livecd/mnt — passaġġ sħiħ għad-direttorju bis-sistema immuntata
    bin/sh - qoxra (jista 'wkoll jiġi sostitwit bi bin/bash)
    Issa tista 'tibda tinstalla l-pakketti u l-applikazzjonijiet meħtieġa.

Installazzjoni ROS

Installajt l-aħħar verżjoni ta 'ROS (ROS Melodic) skond tutorja uffiċjali.

  1. Aġġornament tal-lista ta 'pakketti

    sudo apt-get update

    Dan huwa fejn sibt l-iżball:

    Err:6 http://deb.odroid.in/c2 bionic InRelease
    The following signatures were invalid: EXPKEYSIG 5360FB9DAB19BAC9 Mauro Ribeiro (mdrjr) <[email protected]>

    Dan minħabba l-fatt li ċ-ċavetta tal-iffirmar tal-pakkett skadiet. Biex taġġorna ċ-ċwievet, ittajpja:

    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys AB19BAC9

  2. Tħejjija tas-sistema għall-installazzjoni ROS

    sudo sh -c 'echo "deb http://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 update

  3. Installazzjoni ROS
    Sfortunatament, ma stajtx ninstalla l-verżjoni tad-desktop ta 'ROS, għalhekk installajt biss il-pakketti bażiċi:

    sudo apt install ros-melodic-ros-base
    apt search ros-melodic

    Nota 1. Waqt il-proċess ta 'installazzjoni kultant seħħ żball:

    dpkg: error: failed to write status database record about 'iputils-ping' to '/var/lib/dpkg/status': No space left on device

    Ġie ffissat billi tneħħi l-cache bl-użu tal-utilità apt:

    sudo apt-get clean; sudo apt-get autoclean

    Nota 2. Wara l-installazzjoni, sors bl-użu tal-kmand:

    source /opt/ros/melodic/setup.bash

    mhux se taħdem, għaliex Aħna ma ħadniex bash, għalhekk MHUX bżonn li jiġi ttajpjat fit-terminal.

  4. Installazzjoni tad-dipendenzi meħtieġa

    sudo apt install python-rosdep python-rosinstall python-rosinstall-generator python-wstool build-essential

    sudo apt install python-rosdep

    sudo rosdep init
    rosdep update

  5. Twaqqif ta' drittijiet ta' aċċess
    Peress li aħna illoggjati u, fil-fatt, inwettqu l-azzjonijiet kollha f'isem l-għerq tas-sistema li qed tiġi mmuntata, ROS se titnieda biss bi drittijiet ta 'superuser.
    Meta tipprova tħaddem roscore mingħajr sudo, iseħħ żball:

    Traceback (most recent call last): File "/opt/ros/melodic/lib/python2.7/dist-packages/roslaunch/__init__.py", line 230, in main write_pid_file(options.pid_fn, options.core, options.port) File "/opt/ros/melodic/lib/python2.7/dist-packages/roslaunch/__init__.py", line 106, in write_pid_file with open(pid_fn, "w") as f: IOError: [Errno 13] Permission denied: '/home/user/.ros/roscore-11311.pid'

    Biex tevita li l-iżball iseħħ, ejja nbiddlu b'mod rikorsiv id-drittijiet ta 'aċċess għad-direttorju tad-dar tal-utent ROS. Biex nagħmlu dan nittajpja:

    sudo rosdep fix-permissions

  6. Installazzjoni addizzjonali tal-pakketti rviz u rqt

    sudo apt-get install ros-melodic-rqt ros-melodic-rviz

Irtokki finali

  1. Ħruġ chroot:
    exit
  2. Żarma l-immaġini
    cd ..
    sudo umount mnt/
  3. Ejja nippakkjaw l-immaġni tas-sistema f'arkivju
    xz –ckv1 <файл образа>

Kollha! Issa bl-għajnuna balenaetcher tista' taħraq l-immaġni tas-sistema fuq karta SD, daħħalha f'ODROID-C2, u jkollok Ubuntu b'ROS installat!

Referenzi:

  • Dan il-video għen ħafna dwar kif iqarrqu fil-Linux u għaliex għandek bżonnha:



Sors: www.habr.com

Żid kumment