Suiteáil ROS in íomhá Ubuntu IMG le haghaidh clár aonair

Réamhrá

An lá eile, agus mé ag obair ar mo thráchtas, bhí orm íomhá Ubuntu a chruthú le haghaidh ardán aonchláir le ROS suiteáilte cheana féin (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.

Suiteáil ROS in íomhá Ubuntu IMG le haghaidh clár 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 Imager, 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 chuig an bhfíseán ag deireadh an phoist) agus a chumais, socraíodh é a úsáid. Next, beidh mé ag cur síos ar mo chás ar leith de shaincheapadh Ubuntu d'fhorbróirí róbataic.

Sonraí tosaigh:

  • Rinneadh an próiseas modhnú íomhá ar fad (seachas scríobh chuig an gcárta SD ag baint úsáide as balenaEtcher) ar chóras oibriúcháin Ubuntu 18.04.
  • Leagan deisce mate Ubuntu 18.04.3 an córas oibriúcháin a d'athraigh mé a thionól.
  • 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 do ODROID ó 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):

    Suiteáil ROS in íomhá Ubuntu IMG le haghaidh clár 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) <[email protected]>

    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 dhó le cárta SD, cuir isteach é in ODROID-C2, agus beidh Ubuntu agat 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:



Foinse: will.com

Add a comment