Fifi ROS ni aworan Ubuntu IMG fun igbimọ-ẹyọkan

Ifihan

Ni ọjọ miiran, lakoko ti o n ṣiṣẹ lori iwe-ẹkọ mi, Mo dojuko iwulo lati ṣẹda aworan Ubuntu kan fun pẹpẹ-ọkọ kan pẹlu ROS ti fi sori ẹrọ tẹlẹ (Robot Awọn ọna System - robot ẹrọ). Ni kukuru, diploma ti yasọtọ si iṣakoso ẹgbẹ kan ti awọn roboti. Awọn roboti ti wa ni ipese pẹlu awọn kẹkẹ meji ati awọn ibiti o wa mẹta. Ohun gbogbo ni iṣakoso lati ROS, eyiti o nṣiṣẹ lori igbimọ ODROID-C2.

Fifi ROS ni aworan Ubuntu IMG fun igbimọ-ẹyọkan
Robot Ladybug. Ma binu fun didara Fọto ti ko dara

Ko si akoko tabi ifẹ lati fi sori ẹrọ ROS lori robot kọọkan ni ẹyọkan, ati nitorinaa iwulo fun aworan eto pẹlu ROS ti fi sii tẹlẹ. Lẹhin lilọ kiri lori Intanẹẹti, Mo rii ọpọlọpọ awọn isunmọ si bii eyi ṣe le ṣee ṣe.
Ni gbogbogbo, gbogbo awọn solusan ti a rii ni a le pin si awọn ẹgbẹ atẹle.

  1. Awọn eto ti o ṣẹda aworan kan lati inu eto ti a ti ṣetan ati tunto (Distroshare Aworan Ubuntu, linux ifiwe kit, linux respin, Systemback, ati bẹbẹ lọ)
  2. Awọn iṣẹ akanṣe ti o gba ọ laaye lati ṣẹda aworan tirẹ (yocto, linux lati ibere)
  3. Ṣeto aworan naa funrararẹ (ifiwe CD isọdi и Russian deede, a plus article on Habré)

Lilo awọn ojutu lati ẹgbẹ akọkọ dabi ẹnipe o rọrun julọ ati aṣayan ti o wuni julọ, ṣugbọn Emi ko ni anfani lati ṣẹda aworan eto laaye fun ODROID. Awọn ojutu ti ẹgbẹ keji ko tun baamu fun mi nitori ẹnu-ọna titẹsi to ga julọ. Apejọ afọwọṣe ni ibamu si awọn ikẹkọ ti o wa tun ko dara, nitori… Aworan mi ko ni eto faili fisinuirindigbindigbin.
Bi abajade, Mo wa fidio kan nipa chroot (chroot - iyipada root, ọna asopọ si fidio ni opin ifiweranṣẹ) ati awọn agbara rẹ, o pinnu lati lo. Nigbamii ti, Emi yoo ṣe apejuwe ọran mi pato ti isọdi Ubuntu fun awọn olupilẹṣẹ roboti.

Orisun orisun:

  • Gbogbo ilana iyipada aworan (ayafi fun kikọ si kaadi SD nipa lilo balenaEtcher) ni a ṣe lori ẹrọ ṣiṣe Ubuntu 18.04.
  • Eto ẹrọ ti apejọ rẹ ti Mo yipada jẹ ẹya Ubuntu 18.04.3 mate tabili version.
  • Ẹrọ lori eyiti eto ti o pejọ yẹ ki o ṣiṣẹ jẹ ODROID-C2.

Ngbaradi aworan naa

  1. Ṣe igbasilẹ aworan Ubuntu fun ODROID lati osise ojula

  2. Ṣiṣii iwe ipamọ naa

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

  3. Ṣẹda itọsọna kan ninu eyiti a yoo gbe aworan naa

    mkdir mnt

  4. Ṣe ipinnu ipin lori eyiti eto faili wa

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

    A n wa ipin kan pẹlu eto faili ni ọna kika ext2, ext3 tabi ext4. A nilo adirẹsi ti ibẹrẹ apakan (ti ṣe afihan ni pupa loju iboju):

    Fifi ROS ni aworan Ubuntu IMG fun igbimọ-ẹyọkan

    Akiyesi. Ipo ti eto faili tun le wo ni lilo ohun elo naa pin.

  5. Iṣagbesori aworan

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

    Apakan ti a nilo bẹrẹ pẹlu bulọki 264192 (awọn nọmba rẹ le yatọ), iwọn bulọọki kan jẹ awọn baiti 512, ṣe isodipupo wọn lati gba indentation ni awọn baiti.

  6. Lọ si folda pẹlu eto ti a fi sii ki o gbe jade ninu rẹ

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

    ~/livecd/mnt - ni kikun ona si liana pẹlu awọn agesin eto
    bin/sh - ikarahun (le tun ti wa ni rọpo pẹlu bin / bash)
    Bayi o le bẹrẹ fifi awọn idii pataki ati awọn ohun elo sori ẹrọ.

Fifi ROS sori ẹrọ

Mo ti fi sori ẹrọ titun ti ikede ROS (ROS Melodic) gẹgẹ bi osise Tutorial.

  1. Nmu imudojuiwọn akojọ awọn idii

    sudo apt-get update

    Eyi ni ibi ti Mo ti gba aṣiṣe naa:

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

    Eyi jẹ nitori otitọ pe bọtini ibuwọlu package ti pari. Lati ṣe imudojuiwọn awọn bọtini, tẹ:

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

  2. Ngbaradi eto fun fifi ROS sori ẹrọ

    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. Fifi ROS sori ẹrọ
    Laanu, Emi ko le fi ẹya tabili tabili ROS sori ẹrọ, nitorinaa Mo fi sori ẹrọ awọn idii ipilẹ nikan:

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

    Akiyesi 1. Lakoko ilana fifi sori ẹrọ nigbakan aṣiṣe kan waye:

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

    O ti ṣe atunṣe nipasẹ imukuro kaṣe ni lilo ohun elo ti o yẹ:

    sudo apt-get clean; sudo apt-get autoclean

    Akiyesi 2. Lẹhin fifi sori ẹrọ, orisun nipa lilo aṣẹ:

    source /opt/ros/melodic/setup.bash

    kii yoo ṣiṣẹ, nitori A ko ṣiṣẹ bash, nitorinaa ko nilo lati tẹ ni ebute naa.

  4. Fifi awọn pataki dependencies

    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. Ṣiṣeto awọn ẹtọ wiwọle
    Niwọn igba ti a ti wọle ati, ni otitọ, ṣe gbogbo awọn iṣe ni ipo ti gbongbo eto ti o pejọ, ROS yoo ṣe ifilọlẹ nikan pẹlu awọn ẹtọ superuser.
    Nigbati o ba n gbiyanju lati ṣiṣẹ roscore laisi sudo, aṣiṣe waye:

    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'

    Lati ṣe idiwọ aṣiṣe naa lati ṣẹlẹ, jẹ ki a yi awọn ẹtọ iwọle pada ni igbagbogbo si itọsọna ile olumulo ROS. Lati ṣe eyi a tẹ:

    sudo rosdep fix-permissions

  6. Afikun fifi sori ẹrọ ti awọn idii rviz ati rqt

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

Awọn ifọwọkan ipari

  1. Jade chroot:
    exit
  2. Yọ aworan naa kuro
    cd ..
    sudo umount mnt/
  3. Jẹ ki a gbe aworan eto sinu ile ifi nkan pamosi
    xz –ckv1 <файл образа>

Gbogbo! Bayi pẹlu iranlọwọ BalenaEtcher o le sun aworan eto si kaadi SD kan, fi sii sinu ODROID-C2, ati pe iwọ yoo ni Ubuntu pẹlu ROS ti fi sori ẹrọ!

Awọn ọna asopọ:

  • Fidio yii ṣe iranlọwọ pupọ pẹlu bi o ṣe le ṣe iyanjẹ ni Linux ati idi ti o fi nilo rẹ:



orisun: www.habr.com

Fi ọrọìwòye kun