Ukufaka i-ROS esithombeni se-Ubuntu IMG sebhodi elilodwa

Isingeniso

Ngolunye usuku, ngenkathi ngisebenza ku-thesis yami, ngibhekane nesidingo sokwenza isithombe se-Ubuntu seplatifomu yebhodi elilodwa ene-ROS esivele ifakiwe (I-Robot Operating System - uhlelo lokusebenza lwamarobhothi). Ngamafuphi, idiploma inikezelwe ekuphatheni iqembu lamarobhothi. Amarobhothi ahlome ngamasondo amabili kanye nezindawo ezintathu zokuthola ibanga. Yonke into ilawulwa kusuka ku-ROS, egijima ebhodini le-ODROID-C2.

Ukufaka i-ROS esithombeni se-Ubuntu IMG sebhodi elilodwa
I-Robot Ladybug. Uxolo ngekhwalithi yesithombe ephansi

Besingekho isikhathi noma isifiso sokufaka i-ROS kurobhothi ngalinye, ngakho-ke bekunesidingo sesithombe sesistimu ene-ROS esivele ifakiwe. Ngemva kokuphequlula i-inthanethi, ngathola izindlela ezimbalwa zokuthi lokhu kungenziwa kanjani.
Ngokuvamile, zonke izixazululo ezitholakalayo zingahlukaniswa ngamaqembu alandelayo.

  1. Izinhlelo ezakha isithombe ngohlelo oselulungile nolumisiwe (Distroshare Ubuntu Imager, ikhithi ye-linux bukhoma, linux respin, i-systemback, njll.)
  2. Amaphrojekthi akuvumela ukuthi uzenzele isithombe sakho (yocto, linux kusuka ekuqaleni)
  3. Ukuhlanganisa isithombe ngokwakho (bukhoma CD ngokwezifiso ΠΈ IsiRashiya esilinganayo, ukuhlanganisa isihloko ngoHabre)

Ukusebenzisa izixazululo ezivela eqenjini lokuqala kubonakala kuyindlela elula futhi ekhangayo, kodwa angizange ngikwazi ukudala isithombe sesistimu ebukhoma ye-ODROID. Izixazululo zeqembu lesibili nazo azingifanelanga ngenxa yomkhawulo wokungena ophakeme. Ukuhlanganiswa okwenziwa ngesandla ngokwezifundo ezitholakalayo nakho kwakungafanele, ngoba... Isithombe sami besingenayo isistimu yefayela ecindezelwe.
Ngenxa yalokho, ngihlangane nevidiyo mayelana ne-chroot (chroot - shintsha impande, isixhumanisi sevidiyo ekupheleni kokuthunyelwe) kanye namakhono ayo, kwanqunywa ukuthi kusetshenziswe. Okulandelayo, ngizochaza icala lami elithile lokwenza ngokwezifiso Ubuntu kubathuthukisi bamarobhothi.

Idatha yokuqala:

  • Yonke inqubo yokuguqulwa kwesithombe (ngaphandle kokubhalela ekhadini le-SD usebenzisa i-balenaEtcher) yenziwa ohlelweni lokusebenza lwe-Ubuntu 18.04.
  • Uhlelo lokusebenza engilulungise umhlangano walo inguqulo yedeskithophu ye-Ubuntu 18.04.3 mate.
  • Umshini okufanele kusebenze kuwo uhlelo oluhlanganisiwe yi-ODROID-C2.

Ilungiselela isithombe

  1. Landa isithombe se-Ubuntu se-ODROID kusuka isayithi elisemthethweni

  2. Ikhipha ingobo yomlando

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

  3. Dala uhla lwemibhalo lapho sizokhweza khona isithombe

    mkdir mnt

  4. Nquma ukwahlukanisa lapho isistimu yefayela itholakala khona

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

    Sifuna ukwahlukanisa ngesistimu yefayela kufomethi ye-ext2, ext3 noma ext4. Sidinga ikheli lesiqalo sesigaba (eligqanyiswe ngokubomvu esikrinini):

    Ukufaka i-ROS esithombeni se-Ubuntu IMG sebhodi elilodwa

    Qaphela. Indawo yesistimu yefayela ingabuye ibukwe kusetshenziswa insiza ahlukaniswe.

  5. Ukukhweza isithombe

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

    Isigaba esisidingayo siqala nge-block 264192 (izinombolo zakho zingase zehluke), usayizi webhulokhi eyodwa ungamabhayithi angu-512, uwaphindaphinde ukuze uthole ukuhlehlisa ngamabhayithi.

  6. Iya kufolda enesistimu ekhweziwe bese ubloma kuyo

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

    ~/livecd/mnt - indlela egcwele eya kuhla lwemibhalo ngohlelo olugxunyekiwe
    umgqomo/sh - igobolondo (lingashintshwa futhi umgqomo/bash)
    Manje ungaqala ukufaka amaphakheji adingekayo nezinhlelo zokusebenza.

Ifaka i-ROS

Ngifake inguqulo yakamuva ye-ROS (ROS Melodic) ngokusho okokufundisa okusemthethweni.

  1. Ibuyekeza uhlu lwamaphakheji

    sudo apt-get update

    Yilapho ngathola khona iphutha:

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

    Lokhu kungenxa yokuthi ukhiye wokusayina wephakheji uphelelwe yisikhathi. Ukuze ubuyekeze okhiye, thayipha:

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

  2. Ilungiselela isistimu yokufaka i-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. Ifaka i-ROS
    Ngeshwa, angikwazanga ukufaka inguqulo yedeskithophu ye-ROS, ngakho ngifake amaphakheji ayisisekelo kuphela:

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

    Inothi 1. Phakathi nenqubo yokufaka kwesinye isikhathi kwenzeke iphutha:

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

    Yalungiswa ngokusula inqolobane kusetshenziswa i-apt utility:

    sudo apt-get clean; sudo apt-get autoclean

    Inothi 2. Ngemva kokufaka, umthombo usebenzisa umyalo:

    source /opt/ros/melodic/setup.bash

    ngeke kusebenze, ngoba Asizange sisebenzise i-bash, ngakho-ke AKUDINGEKI ukuthi ifakwe kutheminali.

  4. Ukufaka okuncikile okudingekayo

    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. Isetha amalungelo okufinyelela
    Njengoba singenile futhi, empeleni, senza zonke izenzo egameni lempande yesistimu ehlanganiswayo, i-ROS izokwethulwa kuphela ngamalungelo omsebenzisi ophezulu.
    Uma uzama ukusebenzisa i-roscore ngaphandle kwe-sudo, kwenzeka iphutha:

    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'

    Ukuze uvimbele ukuthi iphutha lingenzeki, ake siguqule ngokuphindaphindiwe amalungelo okufinyelela kuhla lwemibhalo lwasekhaya lomsebenzisi we-ROS. Ukwenza lokhu sithayipha:

    sudo rosdep fix-permissions

  6. Ukufakwa okwengeziwe kwamaphakheji e-rviz ne-rqt

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

Ukuthintwa kokugcina

  1. Phuma ku-chroot:
    exit
  2. Yehlisa isithombe
    cd ..
    sudo umount mnt/
  3. Masipakishe isithombe sesistimu kungobo yomlando
    xz –ckv1 <Ρ„Π°ΠΉΠ» ΠΎΠ±Ρ€Π°Π·Π°>

Konke! Manje ngosizo i-balenaetcher ungashisa isithombe sohlelo ekhadini le-SD, usifake ku-ODROID-C2, futhi uzoba no-Ubuntu nge-ROS efakiwe!

Izinkomba:

  • Le vidiyo isize kakhulu ngendlela yokukopela ku-Linux nokuthi kungani uyidinga:



Source: www.habr.com

Engeza amazwana