Kuyika ROS mu chithunzi cha Ubuntu IMG pa bolodi limodzi

Mau oyamba

Tsiku lina, ndikugwira ntchito pamalingaliro anga, ndinayang'anizana ndi kufunikira kopanga chithunzi cha Ubuntu papulatifomu imodzi yokhala ndi ROS yokhazikitsidwa kale (Roboti Operating System - makina opangira ma robot). Mwachidule, diploma imaperekedwa poyang'anira gulu la ma robot. Malobotiwa ali ndi mawilo awiri ndi ma rangefinder atatu. Chinthu chonsecho chikuyendetsedwa kuchokera ku ROS, yomwe imayenda pa bolodi la ODROID-C2.

Kuyika ROS mu chithunzi cha Ubuntu IMG pa bolodi limodzi
Robot Ladybug. Pepani chifukwa chosawoneka bwino bwino

Panalibe nthawi kapena chikhumbo chokhazikitsa ROS pa robot iliyonse payekha, choncho pankafunika chithunzi chadongosolo ndi ROS yoikidwa kale. Nditafufuza pa intaneti, ndapeza njira zingapo zochitira izi.
Mwambiri, mayankho onse omwe amapezeka amatha kugawidwa m'magulu otsatirawa.

  1. Mapulogalamu omwe amapanga chithunzi kuchokera pamakina okonzeka komanso okonzedwa (Distroshare Ubuntu Imager, linux live kit, linux respin, systemback, etc.)
  2. Ntchito zomwe zimakulolani kuti mupange chithunzi chanu (yoti, linux kuyambira pachiyambi)
  3. Kusonkhanitsa chithunzicho (makonda ma CD amoyo ΠΈ Chirasha chofanana, kuphatikiza Nkhani ya Habre)

Kugwiritsa ntchito mayankho kuchokera kugulu loyamba kumawoneka ngati njira yosavuta komanso yowoneka bwino, koma sindinathe kupanga chithunzi chamoyo cha ODROID. Mayankho a gulu lachiwiri nawonso sanagwirizane ndi ine chifukwa cholowera kwambiri. Kusonkhana pamanja malinga ndi maphunziro omwe alipo sikunali koyenera, chifukwa ... Chithunzi changa chinalibe makina ophatikizika amafayilo.
Zotsatira zake, ndidapeza kanema wokhudza chroot (chroot - kusintha mizu, kugwirizana kwa kanema kumapeto kwa positi) ndi mphamvu zake, adaganiza kuti azigwiritsa ntchito. Kenako, ndikufotokozerani momwe ndingasinthire Ubuntu kwa opanga ma robotiki.

Zoyambira:

  • Njira yonse yosinthira zithunzi (kupatula kulemba ku khadi la SD pogwiritsa ntchito balenaEtcher) idachitidwa pa Ubuntu 18.04 system.
  • Makina ogwiritsira ntchito omwe gulu lake ndidawasintha ndi Ubuntu 18.04.3 mate desktop version.
  • Makina omwe makina osonkhanitsidwa ayenera kugwira ntchito ndi ODROID-C2.

Kukonzekera chithunzi

  1. Tsitsani chithunzi cha Ubuntu cha ODROID kuchokera malo boma

  2. Kutsegula archive

    unxz –kv <Ρ„Π°ΠΉΠ» Π°Ρ€Ρ…ΠΈΠ²Π° с ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ>

  3. Pangani chikwatu momwe tidzakwezera chithunzicho

    mkdir mnt

  4. Tsimikizirani gawo lomwe fayiloyo ili

    file <Ρ„Π°ΠΉΠ» ΠΎΠ±Ρ€Π°Π·Π°>

    Tikuyang'ana magawo omwe ali ndi mafayilo amtundu wa ext2, ext3 kapena ext4. Tikufuna adilesi yoyambira gawoli (lomwe lidawonetsedwa mofiira pazenera):

    Kuyika ROS mu chithunzi cha Ubuntu IMG pa bolodi limodzi

    Zindikirani: Malo a fayilo amathanso kuwonedwa pogwiritsa ntchito zofunikira adagawikana.

  5. Kuyika chithunzi

    sudo mount -o loop,offset=$((264192*512)) <Ρ„Π°ΠΉΠ» с ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ> mnt/

    Gawo lomwe tikufuna limayamba ndi block 264192 (zinambala zanu zitha kusiyana), kukula kwa chipika chimodzi ndi 512 byte, chulukitsani kuti mutenge ma byte.

  6. Pitani ku chikwatu ndi dongosolo wokwera ndi kucheza mmenemo

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

    ~/livecd/mnt - njira yonse yopita ku chikwatu chokhala ndi makina okwera
    nsi/sh - chipolopolo (chikhoza kusinthidwanso ndi bin/bash)
    Tsopano mutha kuyamba kukhazikitsa phukusi lofunikira ndi mapulogalamu.

Kukhazikitsa ROS

Ndinayika mtundu waposachedwa wa ROS (ROS Melodic) malinga ndi maphunziro ovomerezeka.

  1. Kusintha mndandanda wa phukusi

    sudo apt-get update

    Apa ndipamene ndapeza cholakwika:

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

    Izi ndichifukwa choti kiyi yosainira phukusi yatha. Kuti musinthe makiyi, lembani:

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

  2. Kukonzekera dongosolo kukhazikitsa 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. Kukhazikitsa ROS
    Tsoka ilo, sindinathe kukhazikitsa mtundu wapakompyuta wa ROS, kotero ndidayika maphukusi oyambira okha:

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

    Onani 1. Panthawi yoyika, nthawi zina pamakhala cholakwika:

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

    Idakonzedwa ndikuchotsa cache pogwiritsa ntchito apt utility:

    sudo apt-get clean; sudo apt-get autoclean

    Onani 2. Pambuyo kukhazikitsa, gwero pogwiritsa ntchito lamulo:

    source /opt/ros/melodic/setup.bash

    izo sizigwira ntchito, chifukwa Sitinayendetse bash, chifukwa chake SIKUFUNA kuyiyidwa mu terminal.

  4. Kukhazikitsa zofunika zodalira

    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. Kukhazikitsa ufulu wofikira
    Popeza talowa mkati ndipo, kwenikweni, timachita zonse m'malo mwa muzu wa dongosolo lomwe likusonkhanitsidwa, ROS idzangoyambitsidwa ndi ufulu wa superuser.
    Mukayesa kuyendetsa roscore popanda sudo, cholakwika chimachitika:

    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'

    Kuti tipewe cholakwikacho, tiyeni tisinthe mobwerezabwereza maufulu ofikira ku chikwatu chanyumba cha ogwiritsa ntchito a ROS. Kuti tichite izi timalemba:

    sudo rosdep fix-permissions

  6. Kuyika kowonjezera kwa phukusi la rviz ndi rqt

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

Zomaliza zomaliza

  1. Tulukani ku chroot:
    exit
  2. Chotsani chithunzicho
    cd ..
    sudo umount mnt/
  3. Tiyeni tinyamule chithunzi chadongosolo muzosungira
    xz –ckv1 <Ρ„Π°ΠΉΠ» ΠΎΠ±Ρ€Π°Π·Π°>

Zonse! Tsopano ndi chithandizo Alireza mutha kuwotcha chithunzi chadongosolo ku khadi la SD, ndikuyika mu ODROID-C2, ndipo mudzakhala ndi Ubuntu wokhala ndi ROS!

Zolemba:

  • Kanemayu adathandizira kwambiri momwe mungabere pa Linux komanso chifukwa chake mukuzifuna:



Source: www.habr.com

Kuwonjezera ndemanga