ProHoster > ΠΠ»ΠΎΠ³ > Pagdumala > Pag-instalar sa ROS sa usa ka imahe sa Ubuntu IMG alang sa usa ka board
Pag-instalar sa ROS sa usa ka imahe sa Ubuntu IMG alang sa usa ka board
Pasiuna
Sa miaging adlaw, samtang nagtrabaho sa akong thesis, nag-atubang ako sa panginahanglan nga maghimo usa ka imahe sa Ubuntu alang sa usa ka plataporma nga single-board nga na-install na ang ROS (Robot Operating System - robot operating system). Sa laktud, ang diploma gipahinungod sa pagdumala sa usa ka grupo sa mga robot. Ang mga robot adunay duha ka ligid ug tulo ka rangefinder. Ang tibuuk nga butang kontrolado gikan sa ROS, nga nagdagan sa ODROID-C2 board.
Robot Ladybug. Pasensya sa dili maayo nga kalidad sa litrato
Wala'y panahon o tinguha nga i-install ang ROS sa matag robot nga tinagsa, ug busa adunay panginahanglan alang sa usa ka imahe sa sistema nga na-install na ang ROS. Pagkahuman sa pag-browse sa Internet, nakit-an nako ang daghang mga pamaagi kung giunsa kini mahimo.
Sa kinatibuk-an, ang tanan nga mga solusyon nga makit-an mahimong bahinon sa mosunod nga mga grupo.
Ang paggamit sa mga solusyon gikan sa unang grupo daw mao ang pinakasimple ug labing madanihon nga kapilian, apan wala gayud ako makahimo sa paghimo og usa ka buhi nga imahe sa sistema alang sa ODROID. Ang mga solusyon sa ikaduhang grupo dili usab angay kanako tungod sa taas nga threshold sa pagsulod. Ang manwal nga asembliya sumala sa magamit nga mga panudlo dili usab angay, tungod kay ... Ang akong imahe walay compressed file system.
Ingon usa ka sangputanan, nakit-an nako ang usa ka video bahin sa chroot (chroot - usba ang gamut, link sa video sa katapusan sa post) ug ang mga kapabilidad niini, nakahukom nga gamiton kini. Sunod, akong ihulagway ang akong partikular nga kaso sa pag-customize sa Ubuntu alang sa mga robotics developers.
Inisyal nga datos:
Ang tibuok proseso sa pagbag-o sa imahe (gawas sa pagsulat sa SD card gamit ang balenaEtcher) gihimo sa Ubuntu 18.04 operating system.
Ang operating system kansang asembliya akong giusab mao ang Ubuntu 18.04.3 mate desktop nga bersyon.
Ang makina diin ang gitigom nga sistema kinahanglang molihok mao ang ODROID-C2.
Pag-andam sa imahe
I-download ang imahe sa Ubuntu para sa ODROID gikan sa opisyal nga site
Paghimo usa ka direktoryo diin among i-mount ang imahe
mkdir mnt
Tinoa ang partisyon diin nahimutang ang file system
file <ΡΠ°ΠΉΠ» ΠΎΠ±ΡΠ°Π·Π°>
Nangita kami og partition nga adunay file system sa ext2, ext3 o ext4 nga format. Kinahanglan namon ang adres sa sinugdanan sa seksyon (gi-highlight nga pula sa screen):
Matikdi. Ang lokasyon sa file system mahimo usab nga tan-awon gamit ang utility nagbulag.
Pag-mount sa imahe
sudo mount -o loop,offset=$((264192*512)) <ΡΠ°ΠΉΠ» Ρ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ> mnt/
Ang seksyon nga among gikinahanglan magsugod sa block 264192 (ang imong mga numero mahimong magkalahi), ang gidak-on sa usa ka block mao ang 512 bytes, i-multiply kini aron makuha ang indentation sa bytes.
Adto sa folder nga adunay naka-mount nga sistema ug ibitay kini
cd mnt/
sudo chroot ~/livecd/mnt/ bin/sh
~/livecd/mnt β bug-os nga agianan sa direktoryo nga adunay naka-mount nga sistema bin/sh - shell (mahimo usab nga pulihan sa bin/bash)
Karon mahimo ka magsugod sa pag-instalar sa gikinahanglan nga mga pakete ug aplikasyon.
Pag-instalar sa ROS
Gi-install nako ang pinakabag-o nga bersyon sa ROS (ROS Melodic) sumala sa opisyal nga panudlo.
I-update ang listahan sa mga pakete
sudo apt-get update
Dinhi nako nakuha ang sayup:
Err:6 http://deb.odroid.in/c2 bionic InRelease
The following signatures were invalid: EXPKEYSIG 5360FB9DAB19BAC9 Mauro Ribeiro (mdrjr) <[email protected]>
Kini tungod sa kamatuoran nga ang package signing key na-expire na. Aron ma-update ang mga yawe, i-type ang:
Pag-set up sa mga katungod sa pag-access
Tungod kay kami naka-log in ug, sa tinuud, gihimo ang tanan nga mga aksyon alang sa gamut sa sistema nga gitigum, ang ROS ilunsad lamang nga adunay mga katungod sa superuser.
Kung gisulayan ang pagpadagan sa roscore nga wala sudo, usa ka sayup ang nahitabo:
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'
Aron mapugngan ang sayup nga mahitabo, usbon naton ang mga katungod sa pag-access sa direktoryo sa balay sa tiggamit sa ROS. Aron mahimo kini, mag-type kami:
sudo rosdep fix-permissions
Dugang nga pag-instalar sa rviz ug rqt nga mga pakete
Atong i-pack ang sistema nga imahe sa usa ka archive
xz βckv1 <ΡΠ°ΠΉΠ» ΠΎΠ±ΡΠ°Π·Π°>
Tanan! Karon uban sa tabang balenaetcher mahimo nimong sunugon ang imahe sa sistema sa usa ka SD card, isulud kini sa ODROID-C2, ug ma-install nimo ang Ubuntu nga adunay ROS!
Mga reperensiya:
Kini nga video nakatabang kaayo kung giunsa ang paglimbong sa Linux ug kung ngano nga kinahanglan nimo kini: