Sanya ROS a cikin hoton IMG na Ubuntu don allo guda

Gabatarwar

Kwanakin baya, yayin da nake aiki a kan karatuna, na fuskanci buƙatar ƙirƙirar hoton Ubuntu don dandamali na allo guda ɗaya tare da ROS riga an shigar (Robot Operating System - robot tsarin aiki). A takaice dai, takardar difloma ta sadaukar da kai ga sarrafa rukunin mutum-mutumi. Robot ɗin suna sanye da ƙafafu biyu da na'urori masu auna zango uku. Ana sarrafa dukkan abu daga ROS, wanda ke gudana akan allon ODROID-C2.

Sanya ROS a cikin hoton IMG na Ubuntu don allo guda
Robot Ladybug. Yi hakuri da rashin ingancin hoto

Babu lokaci ko sha'awar shigar da ROS akan kowane mutum-mutumi daban-daban, sabili da haka akwai buƙatar hoton tsarin tare da riga an shigar da ROS. Bayan binciken Intanet, na sami hanyoyi da yawa na yadda za a iya yin hakan.
Gabaɗaya, duk hanyoyin da aka samo za a iya raba su zuwa ƙungiyoyi masu zuwa.

  1. Shirye-shiryen da ke ƙirƙirar hoto daga shirye-shiryen da aka tsara da kuma tsara tsarin (Rarraba Ubuntu Imager, linux live kit, linux respin, systemback, da dai sauransu)
  2. Ayyukan da ke ba ku damar ƙirƙirar hoton ku (yocto, Linux daga baya)
  3. Haɗa hoton da kanka (gyare-gyaren CD kai tsaye и Rashanci daidai, ƙari labarin kan Habre)

Yin amfani da mafita daga rukunin farko ya zama mafi sauƙi kuma mafi kyawun zaɓi, amma ban taɓa iya ƙirƙirar hoton tsarin rayuwa don ODROID ba. Maganganun rukuni na biyu kuma ba su dace da ni ba saboda madaidaicin babban ƙofar shiga. Haɗuwa da hannu bisa ga koyaswar da ake da su shima bai dace ba, saboda... Hotona ba shi da tsarin fayil da aka matsa.
A sakamakon haka, na ci karo da wani bidiyo game da chroot (chroot - canza tushen, hanyar haɗi zuwa bidiyon a ƙarshen post) da kuma iyawar sa, an yanke shawarar yin amfani da shi. Na gaba, zan bayyana takamaiman lamarina na keɓance Ubuntu don masu haɓaka robotics.

Bayanan farko:

  • Dukkanin tsarin gyaran hoto (sai dai rubutawa zuwa katin SD ta amfani da balenaEtcher) an yi shi akan tsarin aiki na Ubuntu 18.04.
  • Tsarin aiki wanda na gyara taronsa shine Ubuntu 18.04.3 mate Desktop version.
  • Na'urar da tsarin da aka haɗa ya kamata yayi aiki shine ODROID-C2.

Ana shirya hoton

  1. Zazzage hoton Ubuntu don ODROID daga na aikin site

  2. Ana kwance kayan tarihin

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

  3. Ƙirƙiri kundin adireshi wanda a ciki za mu ɗaga hoton

    mkdir mnt

  4. Ƙayyade ɓangaren da tsarin fayil ɗin yake

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

    Muna neman bangare mai tsarin fayil a cikin tsarin ext2, ext3 ko ext4. Muna buƙatar adireshin farkon sashin (wanda aka haskaka da ja akan allo):

    Sanya ROS a cikin hoton IMG na Ubuntu don allo guda

    Ka lura. Hakanan ana iya duba wurin tsarin fayil ta amfani da kayan aiki rabu.

  5. Hawan hoton

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

    Sashen da muke buƙata yana farawa da toshe 264192 (lambobinku na iya bambanta), girman block ɗaya shine 512 bytes, ninka su don samun shigar cikin bytes.

  6. Jeka babban fayil ɗin tare da tsarin da aka ɗora kuma ka rataya a ciki

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

    ~/livecd/mnt - cikakken hanyar zuwa kundin adireshi tare da tsarin da aka ɗora
    bin/sh - harsashi (ana iya maye gurbinsu da bin/bashi)
    Yanzu zaku iya fara shigar da fakiti da aikace-aikacen da ake buƙata.

Shigar da ROS

Na shigar da sabuwar sigar ROS (ROS Melodic) bisa ga aikin koyarwa.

  1. Ana ɗaukaka jerin fakitin

    sudo apt-get update

    Wannan shine inda na sami kuskure:

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

    Wannan ya faru ne saboda gaskiyar cewa maɓallin sa hannu na kunshin ya ƙare. Don sabunta makullin, rubuta:

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

  2. Ana shirya tsarin don shigar da 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. Shigar da ROS
    Abin takaici, na kasa shigar da nau'in tebur na ROS, don haka na shigar da fakiti na asali kawai:

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

    Lura 1. Yayin aiwatar da shigarwa, wani lokaci an sami kuskure:

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

    An gyara shi ta hanyar share cache ta amfani da mai dacewa:

    sudo apt-get clean; sudo apt-get autoclean

    Lura 2. Bayan shigarwa, tushen ta amfani da umarnin:

    source /opt/ros/melodic/setup.bash

    ba zai yi aiki ba, saboda Ba mu gudanar da bash ba, don haka baya buƙatar buga shi a cikin tasha.

  4. Shigar da abubuwan da suka dace

    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. Saita haƙƙin shiga
    Tun da mun shiga kuma, a zahiri, muna yin duk ayyuka a madadin tushen tsarin da ake haɗawa, ROS za a ƙaddamar da shi ne kawai tare da haƙƙin mai amfani.
    Lokacin ƙoƙarin gudanar da roscore ba tare da sudo ba, kuskure yana faruwa:

    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'

    Don hana faruwar kuskuren, bari mu sake canza haƙƙin samun dama ga kundin adireshin gida na ROS. Don yin wannan sai mu buga:

    sudo rosdep fix-permissions

  6. Ƙarin shigarwa na fakitin rviz da rqt

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

Taɓawar ƙarshe

  1. Fita chroot:
    exit
  2. Cire hoton
    cd ..
    sudo umount mnt/
  3. Bari mu tattara hoton tsarin cikin ma'ajiyar bayanai
    xz –ckv1 <файл образа>

Duka! Yanzu da taimako bajannaEtcher zaku iya ƙona hoton tsarin zuwa katin SD, saka shi cikin ODROID-C2, kuma zaku sami Ubuntu tare da shigar da ROS!

Tunani:

  • Wannan bidiyon ya taimaka da yawa tare da yadda ake yaudara a Linux kuma me yasa kuke buƙatar shi:



source: www.habr.com

Add a comment