تثبيت ROS في صورة Ubuntu Single-Board IMG

المقدمة


في اليوم الآخر ، أثناء العمل على دبلوم ، واجهتني الحاجة إلى إنشاء صورة Ubuntu لمشغل لوحة واحدة مع تثبيت ROS ( نظام تشغيل الروبوت - نظام تشغيل روبوتي ) بالفعل . باختصار ، تم تخصيص الدبلوم لإدارة مجموعة من الروبوتات. تم تجهيز الروبوتات بعجلتين وثلاث حاويات. يتم إدارة هذا الأمر بالكامل من ROS ، التي تدور على لوحة ODROID-C2.


صورة الروبوت
روبوت الخنفساء. آسف لسوء جودة الصورة


ROS , , ROS. , , .
.


  1. , (Distroshare Ubuntu Imager, linux live kit, linux respin, systemback .)
  2. , (yocto, linux from scratch)
  3. (liveCD customization , )

, live- ODROID . - . , .. .
chroot (chroot — change root, ) , . Ubuntu .


:


  • ( SD- balenaEtcher) Ubuntu 18.04.
  • , – Ubuntu 18.04.3 mate desktop .
  • , – ODROID-C2.


  1. Ubuntu ODROID



  2. unxz –kv <   >

  3. ,


    mkdir mnt

  4. ,


    file < >

    ext2, ext3 ext4. ( ):

    وحدة تحكم الشاشة المقسمة

    . parted.



  5. sudo mount -o loop,offset=$((264192*512)) <  > mnt/

    264192 ( ), — 512 , , .



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

    ~/livecd/mnt
    bin/sh — ( bin/bash)
    .



ROS


ROS (ROS Melodic) .



  1. sudo apt-get update

    :


    Err:6 http://deb.odroid.in/c2 bionic InRelease
    The following signatures were invalid: EXPKEYSIG 5360FB9DAB19BAC9 Mauro Ribeiro (mdrjr) <mauro.ribeiro@hardkernel.com>

    , . :


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

  2. 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. ROS
    , desktop ROS, :


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

    1. :


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

    apt:


    sudo apt-get clean; sudo apt-get autoclean

    2. (source) :


    source /opt/ros/melodic/setup.bash

    , .. bash, .



  4. 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. , , root , ROS .
    roscore sudo :


    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'

    , ROS. :


    sudo rosdep fix-permissions

  6. rviz rqt


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



  1. chroot:

    exit


  2. cd ..
    sudo umount mnt/


  3. xz –ckv1 < >

الكل! الآن باستخدام balenaEtcher يمكنك كتابة صورة النظام على بطاقة SD ، وإدراجها في ODROID-C2 ، وسيكون لديك Ubuntu مع ROS مثبت!


المراجع:


  • ساعد هذا الفيديو كثيرًا في كيفية استخدام لينكس ولماذا يجب أن يكون:


All Articles