ROS a shuiteáil in íomhá IMG Ubuntu le haghaidh pá aonair

Réamhrá

An lá cheana, agus mé ag obair ar mo dhioplóma, bhí orm aghaidh a thabhairt ar an ngá íomhá a chruthú Ubuntu le haghaidh ríomhaire aonbhoird a bhfuil ROS suiteáilte cheana féin air (Córas Oibriúcháin Robot - córas oibriúcháin robot). I mbeagán focal, tá an dioplóma dírithe ar bhainistiú grúpa robots. Tá dhá roth agus trí aimsitheoir raon feistithe ag na robots. Déantar an rud ar fad a rialú ó ROS, a ritheann ar bhord ODROID-C2.

ROS a shuiteáil in íomhá IMG Ubuntu le haghaidh pá aonair
Cluiche Robot Ladybug. Gabh mo leithscéal as droch-chaighdeán na ngrianghraf

Ní raibh am ná fonn ann ROS a shuiteáil ar gach róbat ina aonar, agus mar sin bhí gá le híomhá córais le ROS suiteáilte cheana féin. Tar éis dom brabhsáil ar an Idirlíon, fuair mé roinnt cur chuige maidir le conas a d'fhéadfaí é seo a dhéanamh.
Go ginearálta, is féidir na réitigh go léir a fhaightear a roinnt sna grúpaí seo a leanas.

  1. Cláir a chruthaíonn íomhá ó chóras réamhdhéanta agus cumraithe (Distroshare Ubuntu Íomhá, Linux pacáiste beo, repin linux, aischóras, srl.)
  2. Tionscadail a ligeann duit d'íomhá féin a chruthú (yocto, Linux ó scratch)
  3. An íomhá a chur le chéile tú féin (Saincheapadh CD beo и Coibhéis na Rúise, móide alt ar Habré)

Ba chosúil gurb é úsáid réitigh ón gcéad ghrúpa an rogha is simplí agus is tarraingtí, ach ní raibh mé in ann íomhá córais beo a chruthú le haghaidh ODROID. Ní raibh réitigh an dara grúpa oiriúnach domsa freisin mar gheall ar an tairseach iontrála measartha ard. Ní raibh cóimeáil de láimh de réir na ranganna teagaisc a bhí ar fáil oiriúnach freisin, toisc... Ní raibh córas comhaid comhbhrúite ag mo íomhá.
Mar thoradh air sin, tháinig mé trasna ar fhíseán faoi chroot (chroot - athrú fréimhe(Nasc físe ag deireadh an phoist) agus a chumais, shocraigh mé é a úsáid. Seo thíos mo chás saincheaptha féin. Ubuntu do fhorbróirí róbataic.

Sonraí tosaigh:

  • Rinneadh an próiseas iomlán chun an íomhá a mhodhnú (seachas scríobh chuig an gcárta SD ag baint úsáide as balenaEtcher) sa chóras oibriúcháin. Ubuntu 18.04.
  • An córas oibriúcháin ar a ndearnadh a thionól a mhodhnú ná – Ubuntu Leagan deisce 18.04.3 mate.
  • Is é ODROID-C2 an meaisín ar cheart don chóras cóimeáilte oibriú.

Ullmhú an íomhá

  1. Íoslódáil an íomhá Ubuntu le haghaidh ODROID le suíomh oifigiúil

  2. An chartlann á díphacáil

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

  3. Cruthaigh eolaire ina gcuirfimid an íomhá in airde

    mkdir mnt

  4. Socraigh an deighilt ar a bhfuil an córas comhaid suite

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

    Táimid ag lorg deighilt le córas comhaid i bhformáid ext2, ext3 nó ext4. Teastaíonn seoladh thús na coda uainn (aibhsithe i dearg ar an scáileán):

    ROS a shuiteáil in íomhá IMG Ubuntu le haghaidh pá aonair

    Tabhair faoi deara. Is féidir suíomh an chórais comhad a fheiceáil ag baint úsáide as an bhfóntas freisin parted.

  5. Suiteáil an íomhá

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

    Tosaíonn an chuid a theastaíonn uainn le bloc 264192 (d’fhéadfadh go mbeadh difríocht idir d’uimhreacha), is é méid bloc amháin ná 512 beart, iolraigh iad chun an eangú a fháil i mbearta.

  6. Téigh go dtí an fillteán leis an gcóras suite agus hang amach ann

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

    ~/livecd/mnt — cosán iomlán chuig an eolaire leis an gcóras gléasta
    araid/sh - bhlaosc (is féidir a chur in ionad freisin le bosca bruscair/bash)
    Anois is féidir leat na pacáistí agus na hiarratais riachtanacha a shuiteáil.

ROS a shuiteáil

Shuiteáil mé an leagan is déanaí de ROS (ROS Melodic) de réir teagaisc oifigiúil.

  1. Liosta na bpacáistí á nuashonrú

    sudo apt-get update

    Seo an áit a bhfuair mé an earráid:

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

    Tá sé seo mar gheall ar an bhfíric go bhfuil an eochair sínithe pacáiste imithe in éag. Chun na heochracha a nuashonrú, cineál:

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

  2. An córas chun ROS a shuiteáil a ullmhú

    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 a shuiteáil
    Ar an drochuair, ní raibh mé in ann an leagan deisce de ROS a shuiteáil, mar sin níor shuiteáil mé ach na bunphacáistí:

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

    Nóta 1 Tharla earráid uaireanta le linn an phróisis suiteála:

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

    Socraíodh é tríd an taisce a ghlanadh ag baint úsáide as an áirgiúlacht apt:

    sudo apt-get clean; sudo apt-get autoclean

    Nóta 2 Tar éis a shuiteáil, foinse ag baint úsáide as an ordú:

    source /opt/ros/melodic/setup.bash

    ní oibreoidh sé, mar Níor ritheamar bash, mar sin NÍ gá é a chlóscríobh sa teirminéal.

  4. Suiteáil na spleáchais is gá

    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. Cearta rochtana a shocrú
    Ós rud é go bhfuilimid logáilte isteach agus, go deimhin, go ndéanaimid gach gníomh ar son fhréamh an chórais atá á chur le chéile, ní seolfar ROS ach le cearta sár-úsáideoirí.
    Nuair a dhéantar iarracht roscore a rith gan sudo, tarlaíonn earráid:

    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'

    Chun an earráid a chosc, déanaimis na cearta rochtana ar eolaire baile an úsáideora ROS a athrú go hathchúrsach. Chun seo a dhéanamh déanaimid clóscríobh:

    sudo rosdep fix-permissions

  6. Suiteáil bhreise ar na pacáistí rviz agus rqt

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

Baint deiridh

  1. Scoir chroot:
    exit
  2. Dífheistigh an íomhá
    cd ..
    sudo umount mnt/
  3. Déanaimis íomhá an chórais a phacáil isteach i gcartlann
    xz –ckv1 <файл образа>

Gach! Anois le cabhair balenaetcher Is féidir leat íomhá an chórais a scríobh chuig cárta SD, é a chur isteach san ODROID-C2, agus beidh... Ubuntu le ROS suiteáilte!

Naisc:

  • Chuidigh an físeán seo go mór le conas cheat a dhéanamh i Linux agus cén fáth a dteastaíonn sé uait:

Seinn físeán


Foinse: will.com
Ceannaigh óstáil iontaofa do shuímh le cosaint DDoS, freastalaithe VPS VDS 🔥 Ceannaigh óstáil gréasáin iontaofa le cosaint DDoS, freastalaithe VPS VDS | ProHoster