{"id":57,"date":"2024-04-04T08:01:26","date_gmt":"2024-04-04T05:01:26","guid":{"rendered":"https:\/\/sisu.ut.ee\/rosak\/gazebo\/"},"modified":"2024-04-04T08:03:57","modified_gmt":"2024-04-04T05:03:57","slug":"gazebo","status":"publish","type":"page","link":"https:\/\/sisu.ut.ee\/rosak\/gazebo\/","title":{"rendered":"5. Digikaksik, Gazebo ja RViz"},"content":{"rendered":"<blockquote>\n<p>\n\t\t<strong>Robotit katsetades on mugav, kui m\u00f5ningaid teste saab teha arvutis ilma f\u00fc\u00fcsilise robotita. Selleks on robotitel m\u00f5nikord olemas digikaksikud: digitaalsed versioonid, mida saab kasutada arvutis ja mis proovivad j\u00e4ljendada robotit p\u00e4ris maailmas.<\/strong>\n\t<\/p>\n<p>\n\t\tHarjutuse l\u00e4bimiseks on vaja Ubuntu ja ROSiga arvutit, kuhu on paigaldatud kimbud <span style=\"font-family:Courier New,Courier,monospace\">robotont_description<\/span>, <span style=\"font-family:Courier New,Courier,monospace\">robotont_driver<\/span>, <span style=\"font-family:Courier New,Courier,monospace\">robotont_gazebo<\/span> ja <span style=\"font-family:Courier New,Courier,monospace\">robotont_msgs<\/span>.\n\t<\/p>\n<p>\n\t\t<strong>Harjutuse l\u00e4bimiseks ei tohi kasutada f\u00fc\u00fcsilist robotit.<\/strong>\n\t<\/p>\n<p>\n\t\t<em><span>Samm-sammulise juhendi vaatamiseks klikka harjutuse vahepealkirjadele.<\/span><\/em>\n\t<\/p>\n<\/blockquote>\n<p>\n\tVaatame kaht viisi, kuidas robotonti simuleerida: 3D f\u00fc\u00fcsikasimulaatori Gazebo abil ja v\u00e4hem ressursse koormava <span style=\"font-family:Courier New,Courier,monospace\">fake_driver<\/span> ja RVizi visualiseerija abil.\n<\/p>\n<p>\n\t<strong>Kui edaspidises t\u00f6\u00f6s ei ole just mingil p\u00f5hjusel konkreetselt vaja kasutada Gazebot, siis sageli piisab RVizi ja <span style=\"font-family:Courier New,Courier,monospace\">fake_driver<\/span> abil tehtud simulatsioonist.<\/strong> See hoiab kokku j\u00f5udlust.\n<\/p>\n<p>\n\t<\/p><div class=\"accordion mb-3\">\n        <div class=\"accordion-item accordion-item--white\">\n        <h2 class=\"accordion-header\" id=\"accordion-69d138ae7c73d-heading\">\n            <button class=\"accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#accordion-69d138ae7c73d-collapse\" aria-expanded=\"true\" aria-controls=\"accordion-69d138ae7c73d-collapse\"><strong>Robotont ja Gazebo<\/strong><\/button>\n        <\/h2>\n        <div id=\"accordion-69d138ae7c73d-collapse\" class=\"accordion-collapse collapse\" aria-labelledby=\"accordion-69d138ae7c73d-heading\">\n            <div class=\"accordion-body\"><strong>Gazebo<\/strong> on 3D f\u00fc\u00fcsikasimulaator, mida kasutatakse sageli koos ROSiga. K\u00e4ivitame selle koos robotondi digikaksikuga:\n\n<pre>roslaunch robotont_gazebo gazebo.launch<\/pre>\n<p>\n\tP\u00e4rast m\u00f5ningast ootamist avaneb f\u00fc\u00fcsikasimulaator, kus on ka robotondi robot. Seda saab kasutada t\u00e4pselt samamoodi nagu f\u00fc\u00fcsilist robotit. V\u00f5id proovida selles keskkonnas ringi s\u00f5ita, avades uue terminaliakna ja kasutades k\u00e4sku\n<\/p>\n<pre>roslaunch robotont_demos teleop_keyboard.launch<\/pre>\n<blockquote class=\"os-kollane\">\n<h4>\n\t\tPea meeles!<br>\n\t<\/h4>\n<p>\n\t\tSelleks, et robotonti klaviatuurilt liigutada, peab olema aktiivne terminaliaken, kus k\u00e4ivitasid <span style=\"font-family:Courier New,Courier,monospace\">teleop_keyboard.launch<\/span> k\u00e4ivitusfaili!\n\t<\/p>\n<\/blockquote>\n<p>\n\tKahjuks n\u00f5uab Gazebo aga arvutilt p\u00e4ris palju j\u00f5udlust ja sellep\u00e4rast pole selle kasutamine alati m\u00f5ttekas. <strong>Sulge Gazebo praeguseks.<\/strong>\n<\/p>\n<p>\n\t<\/p><\/div>\n        <\/div>\n        <\/div>\n    <\/div>\n\n<p>\n\t<\/p><div class=\"accordion mb-3\">\n        <div class=\"accordion-item accordion-item--white\">\n        <h2 class=\"accordion-header\" id=\"accordion-69d138ae7c759-heading\">\n            <button class=\"accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#accordion-69d138ae7c759-collapse\" aria-expanded=\"true\" aria-controls=\"accordion-69d138ae7c759-collapse\"><strong>Robotont ja RViz<\/strong><\/button>\n        <\/h2>\n        <div id=\"accordion-69d138ae7c759-collapse\" class=\"accordion-collapse collapse\" aria-labelledby=\"accordion-69d138ae7c759-heading\">\n            <div class=\"accordion-body\">M\u00f5nikord ei ole aga vaja tervet f\u00fc\u00fcsikasimulaatorit, et n\u00e4ha, kuidas robot liigub. V\u00f5ime kasutada hoopis palju v\u00e4hem j\u00f5udust n\u00f5udvat meetodit. Sisesta j\u00e4rgmine k\u00e4sk:\n\n<pre>roslaunch robotont_driver fake_driver.launch<\/pre>\n<p>\n\tN\u00fc\u00fcd avaneb t\u00f6\u00f6riista <strong>RViz<\/strong> aken, kus n\u00e4eme j\u00e4lle robotit. Ka seda robotit on v\u00f5imalik kasutada sarnaselt f\u00fc\u00fcsilisele robotile.\n<\/p>\n<p>\n\tKuidas erineb see Gazebost? RViz <strong>ei ole<\/strong> f\u00fc\u00fcsikasimulaator, vaid visualiseerimist\u00f6\u00f6riist \u2013 see aitab asju n\u00e4idata, aga ta ei proovi maailma simuleerida. Selle asemel k\u00e4ib praegu taustal v\u00e4ga lihtne koodijupp, mis ei ole RViziga \u00fcldse seotud ja mille nimi on <span style=\"font-family:Courier New,Courier,monospace\">fake_driver<\/span>. See koodijupp teeb v\u00e4ga lihtsat t\u00f6\u00f6d: kuulab, mis liikumisk\u00e4ske saadetakse robotile, ja \u00fctleb vastu, et robot on just t\u00e4pselt nii palju liikunud, nagu taheti. Seej\u00e4rel saab RViz seda visualiseerida. See t\u00e4hendab ka, et kogu s\u00fcsteemis ei ole l\u00e4bimatuid seinasid, h\u00f5\u00f5rdej\u00f5udu ega paljusid muid asju, mis meie f\u00fc\u00fcsilises maailmas olemas on.\n<\/p>\n<p>\n\tSelleks, et n\u00e4eksime robotit ringi s\u00f5itmas, peame RVizi veidi seadistama.\n<\/p>\n<p>\n\tRVizi aknas on vasakul paneelil seaded, mille hulgas \u201cFixed Frame\u201d. M\u00e4\u00e4ra selle v\u00e4\u00e4rtuseks <span style=\"font-family:Courier New,Courier,monospace\">odom<\/span> (kui v\u00e4\u00e4rtuseks on juba <span style=\"font-family:Courier New,Courier,monospace\">odom<\/span>, siis on k\u00f5ik h\u00e4sti). Samuti m\u00e4\u00e4ra \u201cFrame Rate\u201d v\u00e4\u00e4rtuseks 10 \u2013 siis on s\u00fcsteem kiirem.\n<\/p>\n<p>\n\t<img loading=\"lazy\" decoding=\"async\" width=\"731\" height=\"192\" class=\"alignnone wp-image-143\" src=\"https:\/\/sisu.ut.ee\/wp-content\/uploads\/sites\/560\/kuvatommis_2022-10-03_14-53-34.png\" title=\"kuvatommis_2022-10-03_14-53-34.png\" alt=\".\" srcset=\"https:\/\/sisu.ut.ee\/wp-content\/uploads\/sites\/560\/kuvatommis_2022-10-03_14-53-34.png 731w, https:\/\/sisu.ut.ee\/wp-content\/uploads\/sites\/560\/kuvatommis_2022-10-03_14-53-34-300x79.png 300w\" sizes=\"auto, (max-width: 731px) 100vw, 731px\">\n<\/p>\n<p>\n\tN\u00fc\u00fcd saad (j\u00e4llegi uues terminaliaknas) k\u00e4ivitada roboti klaviatuurilt juhtimise programmi ja seda ringi liigutada:\n<\/p>\n<pre>roslaunch robotont_demos teleop_keyboard.launch<\/pre>\n<blockquote class=\"os-kollane\">\n<h4>\n\t\tPea meeles!<br>\n\t<\/h4>\n<p>\n\t\tSelleks, et robotonti klaviatuurilt liigutada, peab olema aktiivne terminaliaken, kus k\u00e4ivitasid <span style=\"font-family:Courier New,Courier,monospace\">teleop_keyboard.launch<\/span> k\u00e4ivitusfaili!\n\t<\/p>\n<\/blockquote>\n<p>\n\t<\/p><\/div>\n        <\/div>\n        <\/div>\n    <\/div>\n","protected":false},"excerpt":{"rendered":"<p>Robotit katsetades on mugav, kui m\u00f5ningaid teste saab teha arvutis ilma f\u00fc\u00fcsilise robotita. Selleks on robotitel m\u00f5nikord olemas digikaksikud: digitaalsed versioonid, mida saab kasutada arvutis ja mis proovivad j\u00e4ljendada robotit p\u00e4ris maailmas. Harjutuse l\u00e4bimiseks on vaja Ubuntu ja ROSiga arvutit, &#8230;<\/p>\n","protected":false},"author":98,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"class_list":["post-57","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/sisu.ut.ee\/rosak\/wp-json\/wp\/v2\/pages\/57","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sisu.ut.ee\/rosak\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sisu.ut.ee\/rosak\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sisu.ut.ee\/rosak\/wp-json\/wp\/v2\/users\/98"}],"replies":[{"embeddable":true,"href":"https:\/\/sisu.ut.ee\/rosak\/wp-json\/wp\/v2\/comments?post=57"}],"version-history":[{"count":1,"href":"https:\/\/sisu.ut.ee\/rosak\/wp-json\/wp\/v2\/pages\/57\/revisions"}],"predecessor-version":[{"id":344,"href":"https:\/\/sisu.ut.ee\/rosak\/wp-json\/wp\/v2\/pages\/57\/revisions\/344"}],"wp:attachment":[{"href":"https:\/\/sisu.ut.ee\/rosak\/wp-json\/wp\/v2\/media?parent=57"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}