Installéiere ROS an engem Ubuntu IMG Bild fir Single-Board

Aféierung

Den aneren Dag, wärend ech un menger Dissertatioun geschafft hunn, war ech konfrontéiert mat der Bedierfnes fir en Ubuntu Bild fir eng Single-Board Plattform ze kreéieren mat ROS scho installéiert (Roboter Betribssystem - Roboter Betribssystem). Kuerz gesot, den Diplom ass fir d'Gestioun vun enger Grupp vu Roboter gewidmet. D'Robotere si mat zwee Rieder an dräi Entfernungsmesser ausgestatt. Dat Ganzt gëtt vu ROS kontrolléiert, deen um ODROID-C2 Board leeft.

Installéiere ROS an engem Ubuntu IMG Bild fir Single-Board
Roboter Ladybug. Sorry fir déi schlecht Fotoqualitéit

Et war weder Zäit nach Wonsch ROS op all Roboter individuell ze installéieren, an dofir war et e Besoin fir e Systembild mat ROS schonn installéiert. Nodeems ech um Internet surfen, hunn ech e puer Approche fonnt wéi dëst ka gemaach ginn.
Am Allgemengen, kënnen all fonnt Léisungen an de folgende Gruppen ënnerdeelt ginn.

  1. Programmer déi e Bild aus engem fäerdegen a konfiguréierte System erstellen (Distroshare Ubuntu Imager, Linux Live Kit, linux respin, Systemback, etc.)
  2. Projeten déi Iech erlaben Äert eegent Bild ze kreéieren (yocto, Linux vun Null)
  3. D'Bild selwer montéieren (liewen CD Personnalisatioun и Russesch gläichwäertegplus Artikel iwwer Habré)

Benotze vu Léisungen aus der éischter Grupp schéngt déi einfachst an attraktivst Optioun ze sinn, awer ech konnt ni e Live Systembild fir ODROID erstellen. D'Léisungen vun der zweeter Grupp hunn mir och net gepasst wéinst der zimlech héijer Entréesschwell. Manuell Montage no den verfügbaren Tutorials war och net gëeegent, well ... Mäi Bild huet kee kompriméierte Dateiesystem.
Als Resultat sinn ech op e Video iwwer Chroot (chroot - root änneren, Link op de Video um Enn vum Post) a seng Fäegkeeten, gouf decidéiert et ze benotzen. Als nächst wäert ech mäi besonnesche Fall beschreiwen fir Ubuntu fir Robotik Entwéckler ze personaliséieren.

Ufanksdaten:

  • De ganze Bildmodifikatiounsprozess (ausser fir op d'SD Kaart ze schreiwen mat balenaEtcher) gouf am Ubuntu 18.04 Betriebssystem duerchgefouert.
  • De Betribssystem deem seng Versammlung ech geännert hunn ass Ubuntu 18.04.3 Mate Desktop Versioun.
  • D'Maschinn op där de montéierte System funktionnéiert ass ODROID-C2.

D'Bild virbereeden

  1. Luet den Ubuntu Bild fir ODROID erof vun offizielle Site

  2. Auspacken vum Archiv

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

  3. Erstellt e Verzeichnis an deem mir d'Bild montéieren

    mkdir mnt

  4. Bestëmmt d'Partition op där de Dateisystem läit

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

    Mir sichen no enger Partition mat engem Dateiesystem am ext2, ext3 oder ext4 Format. Mir brauchen d'Adress vum Ufank vun der Sektioun (rout um Bildschierm markéiert):

    Installéiere ROS an engem Ubuntu IMG Bild fir Single-Board

    Note: De Standort vum Dateiesystem kann och mat dem Utility gekuckt ginn hu.

  5. Montéierung vum Bild

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

    D'Sektioun, déi mir brauchen, fänkt mam Block 264192 un (Är Zuelen kënnen ënnerschiddlech sinn), d'Gréisst vun engem Block ass 512 Bytes, multiplizéieren se fir d'Induzéierung an Bytes ze kréien.

  6. Gitt an den Dossier mat dem montéierte System an hänkt dovun of

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

    ~/livecd/mnt - Volle Wee zum Verzeichnis mam montéierte System
    bin/sch - Réibau (kann och ersat ginn duerch bin / bash)
    Elo kënnt Dir ufänken déi néideg Packagen an Uwendungen z'installéieren.

Installéiert ROS

Ech installéiert déi neisten Versioun vun ROS (ROS Melodesch) no offiziell Tutorial.

  1. D'Lëscht vun de Packagen aktualiséieren

    sudo apt-get update

    Dëst ass wou ech de Feeler krut:

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

    Dëst ass wéinst der Tatsaach datt de Package Ënnerschrëftschlëssel ofgelaaf ass. Fir d'Schlësselen ze aktualiséieren, gitt:

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

  2. De System virbereeden fir ROS z'installéieren

    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. Installéiert ROS
    Leider konnt ech d'Desktop Versioun vu ROS net installéieren, also hunn ech nëmmen d'Basis Packagen installéiert:

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

    Notiz 1 Während dem Installatiounsprozess ass heiansdo e Feeler geschitt:

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

    Et gouf fixéiert andeems de Cache geläscht gëtt mat dem apt Utility:

    sudo apt-get clean; sudo apt-get autoclean

    Notiz 2 No der Installatioun, Quell mat dem Kommando:

    source /opt/ros/melodic/setup.bash

    et wäert net schaffen, well Mir hunn net Bash gelaf, sou datt et NET am Terminal muss getippt ginn.

  4. Installéiert déi néideg Ofhängegkeeten

    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. Astelle Zougang Rechter
    Well mir ageloggt sinn an tatsächlech all Aktiounen am Numm vun der Root vum System ausféieren, deen zesummegesat gëtt, gëtt ROS nëmme mat Superuser Rechter lancéiert.
    Wann Dir probéiert de Roscore ouni Sudo ze lafen, geschitt e Feeler:

    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'

    Fir de Feeler ze vermeiden, loosst eis d'Zougangsrechter op den Heemverzeechnes vum ROS Benotzer rekursiv änneren. Fir dëst ze maachen, tippe mir:

    sudo rosdep fix-permissions

  6. Zousätzlech Installatioun vun de rviz an rqt Packagen

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

Finale Touch

  1. Austrëtt Chroot:
    exit
  2. Unmount d'Bild
    cd ..
    sudo umount mnt/
  3. Loosst eis d'Systembild an en Archiv packen
    xz –ckv1 <файл образа>

Alles! Elo mat der Hëllef balena Etcher Dir kënnt d'Systembild op eng SD Kaart verbrennen, se an ODROID-C2 setzen, an Dir hutt Ubuntu mat ROS installéiert!

Referenzen:

  • Dëse Video huet vill gehollef mat wéi Dir am Linux fuddelen a firwat Dir et braucht:



Source: will.com

Setzt e Commentaire