{"id":9237,"date":"2023-03-26T13:42:32","date_gmt":"2023-03-26T13:42:32","guid":{"rendered":"https:\/\/www.fambach.net\/?p=9237"},"modified":"2026-10-04T19:39:15","modified_gmt":"2026-10-04T19:39:15","slug":"ros-unified-robot-description-format-urdf","status":"publish","type":"post","link":"https:\/\/www.fambach.net\/en\/ros-unified-robot-description-format-urdf\/","title":{"rendered":"ROS URDF: Setting up a Project"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_89 ez-toc-wrap-left counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.fambach.net\/en\/ros-unified-robot-description-format-urdf\/#Voraussetzungen\" >Voraussetzungen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.fambach.net\/en\/ros-unified-robot-description-format-urdf\/#Arbeitsbereich_erstellen\" >Arbeitsbereich erstellen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.fambach.net\/en\/ros-unified-robot-description-format-urdf\/#Launchdatei_erstellen\" >Launchdatei erstellen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.fambach.net\/en\/ros-unified-robot-description-format-urdf\/#CMakeList_anpassen\" >CMakeList anpassen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.fambach.net\/en\/ros-unified-robot-description-format-urdf\/#Paketbeschreibung_erstellen\" >Paketbeschreibung erstellen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.fambach.net\/en\/ros-unified-robot-description-format-urdf\/#Minimalmodell_erstellen\" >Minimalmodell erstellen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.fambach.net\/en\/ros-unified-robot-description-format-urdf\/#Modell_bauen\" >Modell bauen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.fambach.net\/en\/ros-unified-robot-description-format-urdf\/#Modell_starten\" >Modell starten<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.fambach.net\/en\/ros-unified-robot-description-format-urdf\/#So_siehts_aus\" >So sieht\u2019s aus<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.fambach.net\/en\/ros-unified-robot-description-format-urdf\/#Sonstiges\" >Sonstiges<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/www.fambach.net\/en\/ros-unified-robot-description-format-urdf\/#Probleme\" >Probleme<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/www.fambach.net\/en\/ros-unified-robot-description-format-urdf\/#Fazit\" >Fazit<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/www.fambach.net\/en\/ros-unified-robot-description-format-urdf\/#Quellen\" >Quellen<\/a><\/li><\/ul><\/nav><\/div>\n\n<p class=\"wp-block-paragraph\">Ich habe mal angefangen, mich mit ROS zu besch\u00e4ftigen, irgendwann st\u00f6\u00dft man auf die Information, dass auch ohne physikalischen Roboter das Verhalten simuliert werden kann. Ein wenig mehr in die Materie eingelesen, fand ich mich vor zig Tutorials wieder, die ich mit den dort vorhandenen Informationen nicht ausprobieren konnte. Somit stellte ich mir die Frage, was denn die Grundvoraussetzungen sind, um solch ein Modell auch bei mir zu starten und zu simulieren. Damit ich es nicht wieder vergesse, habe ich versucht, die Grundkonfiguration ohne weitere Erkl\u00e4rungen hier festzuhalten. Ich hoffe, das hilft denjenigen, die vor dem gleichen Problem stehen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wie schon erw\u00e4hnt, ist eine St\u00e4rke von ROS, Roboter simulieren zu k\u00f6nnen. Hierf\u00fcr ben\u00f6tigt es m\u00f6glichst genaue Modelle der Roboter. Diese k\u00f6nnen mit Hilfe der URDF erstellt werden. Die URDF bietet hierbei nicht nur graphische Modellierungsm\u00f6glichkeiten, sondern auch physikalische. Kenngr\u00f6\u00dfen wie Gewicht, Reibung usw. k\u00f6nnen mit in das Modell einbezogen werden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Alle Inhalte in diesem Beitrag wurden unter UBUNTU 18.4 getestet. Die eigentliche ROS-Installation ist nicht Teil dieses Beitrags, es wird davon ausgegangen, dass ROS installiert ist und funktioniert. Ich habe hier das Augenmerk auf die m\u00f6glichst schnelle Erstellung eigener URDFs gelegt, die Erkl\u00e4rungen der Konfigurationsdateien sind nicht Bestandteil dieses Beitrags, bitte diese einfach als gegeben hinnehmen. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Zur Darstellung der Modelle wird <span class=\"ub-content-link ub-content-link--ok ub-content-link--status-after\"><a rel=\"noreferrer noopener\" href=\"http:\/\/wiki.ros.org\/rviz\" target=\"_blank\" class=\"ub-content-link__anchor\">RViz<\/a><span class=\"ub-status ub-status--ok\" title=\"Link status: OK\"><span class=\"ub-status__icon\" aria-hidden=\"true\">\u25cf<\/span><span class=\"screen-reader-text\">Link status: OK<\/span><\/span><\/span> verwendet, dies ist die Roboter-Visualisierung von ROS.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"voraussetzungen\"><span class=\"ez-toc-section\" id=\"Voraussetzungen\"><\/span>Voraussetzungen<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>ROS (Melodic) installiert (<span class=\"ub-content-link ub-content-link--ok ub-content-link--status-after\"><a href=\"http:\/\/wiki.ros.org\/ROS\/Installation\" class=\"ub-content-link__anchor\">Link<\/a><span class=\"ub-status ub-status--ok\" title=\"Link status: OK\"><span class=\"ub-status__icon\" aria-hidden=\"true\">\u25cf<\/span><span class=\"screen-reader-text\">Link status: OK<\/span><\/span><\/span>)<\/li><li>Catkin installiert (<span class=\"ub-content-link ub-content-link--ok ub-content-link--status-after\"><a rel=\"noreferrer noopener\" href=\"http:\/\/docs.ros.org\/en\/jade\/api\/catkin\/html\/user_guide\/installation.html\" target=\"_blank\" class=\"ub-content-link__anchor\">Link<\/a><span class=\"ub-status ub-status--ok\" title=\"Link status: OK\"><span class=\"ub-status__icon\" aria-hidden=\"true\">\u25cf<\/span><span class=\"screen-reader-text\">Link status: OK<\/span><\/span><\/span>)<\/li><li>Folgende Pakete sollten auch installiert sein<\/li><\/ul>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\"><code>sudo apt install joint-state-publisher\nsudo apt-get install liburdfdom-tools \/\/ optional<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"arbeitsbereich-erstellen\"><span class=\"ez-toc-section\" id=\"Arbeitsbereich_erstellen\"><\/span>Arbeitsbereich erstellen<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Erstellen der Verzeichnisse<\/p>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\"><code>mkdir -p ~\/urdf_ws\/src\/launch\ncd ~\/urdf_ws\/src<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Neues Paket anlegen<\/p>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\"><code>catkin_create_pkg &lt;Paket_Name&gt; [Abh\u00e4ngikeit1] [Abh\u00e4ngikeit1] [Abh\u00e4ngikeit1]<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\"><code>catkin_create_pkg urdf_test<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"launchdatei-erstellen\"><span class=\"ez-toc-section\" id=\"Launchdatei_erstellen\"><\/span>Launchdatei erstellen<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Dateiname display.launch<\/p>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\"><code>cd launch\ntouch display.launch\nedit display.launch\ncd ..<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Inhalt der Launchdatei<\/p>\n\n\n\n<pre class=\"wp-block-code\" style=\"font-size:10px\"><code>&lt;launch&gt;\n  &lt;arg name=\"model\" default=\"$(find urdf_test)\/test01.urdf\"\/&gt;\n  &lt;arg name=\"gui\" default=\"true\" \/&gt;\n  &lt;arg name=\"rvizconfig\" default=\"$(find urdf_test)\/urdf.rviz\" \/&gt;\n\n  &lt;param name=\"robot_description\" command=\"$(find xacro)\/xacro $(arg model)\" \/&gt;\n  &lt;node if=\"$(arg gui)\" name=\"joint_state_publisher\" pkg=\"joint_state_publisher_gui\" type=\"joint_state_publisher_gui\" \/&gt;\n  &lt;node unless=\"$(arg gui)\" name=\"joint_state_publisher\" pkg=\"joint_state_publisher\" type=\"joint_state_publisher\" \/&gt;\n  &lt;node name=\"robot_state_publisher\" pkg=\"robot_state_publisher\" type=\"robot_state_publisher\" \/&gt;\n  &lt;node name=\"rviz\" pkg=\"rviz\" type=\"rviz\" args=\"-d $(arg rvizconfig)\" required=\"true\" \/&gt;\n&lt;\/launch&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Wichtig sind die erste und die dritte Zeile. Sie geben an, wo das Modell zu finden ist und wo evtl. eine Konfiguration f\u00fcr RVIZ liegt. Diese RVIZ Konfiguration m\u00fcssen wir jetzt auch noch erstellen.<\/p>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\"><code>touch urdf.rviz<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Inhalt der Datei<\/p>\n\n\n\n<pre class=\"wp-block-code\" style=\"font-size:10px\"><code>Panels:\n  - Class: rviz\/Displays\n    Name: Displays\n  - Class: rviz\/Views\n    Name: Views\nVisualization Manager:\n  Displays:\n    - Class: rviz\/Grid\n      Name: Grid\n      Value: true\n    - Alpha: 0.8\n      Class: rviz\/RobotModel\n      Enabled: true\n      Name: RobotModel\n      Robot Description: robot_description\n      Value: true\n    - Class: rviz\/TF\n      Name: TF\n      Value: false\n  Global Options:\n    Fixed Frame: base_link\n    Frame Rate: 30\n  Name: root\n  Tools:\n    - Class: rviz\/MoveCamera\n  Value: true\n  Views:\n    Current:\n      Class: rviz\/Orbit\n      Distance: 1.7\n      Name: Current View\n      Pitch: 0.33\n      Value: Orbit (rviz)\n      Yaw: 5.5\nWindow Geometry:\n  Height: 800\n  Width: 1200<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"cmakelist-anpassen\"><span class=\"ez-toc-section\" id=\"CMakeList_anpassen\"><\/span>CMakeList anpassen<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Die CMake Datei ben\u00f6tigen wir zum Bauen. Die CMakeLists.txt besteht schon, sie wurde mit dem Catkin Paket erstellt, diese muss nur noch editiert werden. Auch hier nur eine Minimalkonfiguration<\/p>\n\n\n\n<pre class=\"wp-block-code\" style=\"font-size:10px\"><code>cmake_minimum_required(VERSION 3.0.2)\nproject(urdf_test)\nfind_package(catkin REQUIRED)\ncatkin_package()\n\n#install(DIRECTORY images meshes launch rviz urdf\ninstall(DIRECTORY launch \n        DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}\n)\n\n#############\n## Testing ##\n#############\n\nif(CATKIN_ENABLE_TESTING)\n  find_package(roslaunch REQUIRED)\n  roslaunch_add_file_check(launch)\nendif()<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"paketbeschreibung-erstellen\"><span class=\"ez-toc-section\" id=\"Paketbeschreibung_erstellen\"><\/span>Paketbeschreibung erstellen<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>touch package.xml<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\" style=\"font-size:10px\"><code>&lt;package&gt;\n  &lt;name&gt;urdf_test&lt;\/name&gt;\n  &lt;version&gt;0.0.1&lt;\/version&gt;\n\n  &lt;description&gt;This package contains a number of URDF test.&lt;\/description&gt;\n  &lt;author email=\"anfrage@fambach.net\"&gt;Stefan Fambach&lt;\/author&gt;\n\n  &lt;maintainer email=\"anfrage@fambach.net\"&gt;Stefan Fambach&lt;\/maintainer&gt;\n\n  &lt;license&gt;BSD&lt;\/license&gt;\n  &lt;url&gt;http:\/\/www.fambach.net&lt;\/url&gt;\n\n  &lt;buildtool_depend&gt;catkin&lt;\/buildtool_depend&gt;\n  &lt;build_depend&gt;roslaunch&lt;\/build_depend&gt;\n  &lt;run_depend&gt;joint_state_publisher&lt;\/run_depend&gt;\n  &lt;run_depend&gt;joint_state_publisher_gui&lt;\/run_depend&gt;\n  &lt;run_depend&gt;robot_state_publisher&lt;\/run_depend&gt;\n  &lt;run_depend&gt;rviz&lt;\/run_depend&gt;\n  &lt;run_depend&gt;xacro&lt;\/run_depend&gt;\n\n&lt;\/package&gt;<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"minimalmodell-erstellen\"><span class=\"ez-toc-section\" id=\"Minimalmodell_erstellen\"><\/span>Minimalmodell erstellen<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Urdf Datei anlegen<\/p>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\"><code>touch test01.urdf<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Inhalt der Datei ist ein Zylinder.<\/p>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\"><code>&lt;?xml version=\"1.0\"?&gt;\n&lt;robot name=\"myfirst\"&gt;\n  &lt;link name=\"base_link\"&gt;\n    &lt;visual&gt;\n      &lt;geometry&gt;\n        &lt;cylinder length=\"0.0025\" radius=\"0.07\"\/&gt;\n      &lt;\/geometry&gt;\n    &lt;\/visual&gt;\n  &lt;\/link&gt;\n&lt;\/robot&gt;<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"modell-bauen\"><span class=\"ez-toc-section\" id=\"Modell_bauen\"><\/span>Modell bauen<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ins Hauptverzeichnis zur\u00fcckkehren<\/p>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\"><code>cd ~\/test_ws<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Projekt bauen und installieren<\/p>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\"><code>catkin_make &amp;&amp; catkin_make install<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"modell-starten\"><span class=\"ez-toc-section\" id=\"Modell_starten\"><\/span>Modell starten<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Quellverzeichnis setzen (Dies wird auch sp\u00e4ter ben\u00f6tigt, wenn eine neue Console ge\u00f6ffnet wird)<\/p>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\"><code>source devel\/setup.bash<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u2026 und starten<\/p>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\"><code>catkin_make install &amp;&amp; roslaunch urdf_test display.launch model:='$(find urdf_test)\/test01.urdf'<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"so-siehts-aus\"><span class=\"ez-toc-section\" id=\"So_siehts_aus\"><\/span>So sieht\u2019s aus<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1202\" height=\"830\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/Screenshot-from-2023-03-26-15-29-07.jpg\" alt=\"\" class=\"wp-image-9258\" srcset=\"https:\/\/www.fambach.net\/wp-content\/uploads\/Screenshot-from-2023-03-26-15-29-07.jpg 1202w, https:\/\/www.fambach.net\/wp-content\/uploads\/Screenshot-from-2023-03-26-15-29-07-300x207.jpg 300w, https:\/\/www.fambach.net\/wp-content\/uploads\/Screenshot-from-2023-03-26-15-29-07-1024x707.jpg 1024w, https:\/\/www.fambach.net\/wp-content\/uploads\/Screenshot-from-2023-03-26-15-29-07-768x530.jpg 768w, https:\/\/www.fambach.net\/wp-content\/uploads\/Screenshot-from-2023-03-26-15-29-07-18x12.jpg 18w\" sizes=\"auto, (max-width: 599px) calc(100vw - 50px), (max-width: 767px) calc(100vw - 70px), (max-width: 991px) 429px, (max-width: 1199px) 637px, 354px\"><figcaption>Screenshot des RVIZ Viewers<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Sollte er das Paket nicht finden \u2026 einfach mal den folgenden Befehl verwenden, bitte auf die Hochkommata achten.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>roslaunch &lt;Paket&gt; &lt;display.launch&gt; model:='$(find &lt;Paket)&lt;Urdf Datei&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Bitte darauf achten: Wenn die urdf Datei in einem Unterverzeichnis liegt, muss diese mit angegeben werden (wie beispielsweise im ROS URDF tutorial).<\/p>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\"><code>git clone https:\/\/github.com\/ros-simulation\/gazebo_ros_demos.git\ngit clone https:\/\/github.com\/ros\/urdf_tutorial.git\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"sonstiges\"><span class=\"ez-toc-section\" id=\"Sonstiges\"><\/span>Sonstiges<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">.\/.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"probleme\"><span class=\"ez-toc-section\" id=\"Probleme\"><\/span>Probleme<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">.\/.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"fazit\"><span class=\"ez-toc-section\" id=\"Fazit\"><\/span>Fazit<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn man wei\u00df, wie, erscheint es ganz einfach, jedoch ist der Weg zum Ziel aus meiner Sicht sehr steinig.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"quellen\"><span class=\"ez-toc-section\" id=\"Quellen\"><\/span>Quellen<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><span class=\"ub-content-link ub-content-link--ok ub-content-link--status-after\"><a href=\"https:\/\/classic.gazebosim.org\/tutorials?tut=ros_urdf\" class=\"ub-content-link__anchor\">https:\/\/classic.gazebosim.org\/tutorials?tut=ros_urdf<\/a><span class=\"ub-status ub-status--ok\" title=\"Link status: OK\"><span class=\"ub-status__icon\" aria-hidden=\"true\">\u25cf<\/span><span class=\"screen-reader-text\">Link status: OK<\/span><\/span><\/span><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><span class=\"ub-content-link ub-content-link--ok ub-content-link--status-after\"><a href=\"https:\/\/automaticaddison.com\/how-to-make-an-autonomous-wheeled-robot-using-ros\/\" class=\"ub-content-link__anchor\">https:\/\/automaticaddison.com\/how-to-make-an-autonomous-wheeled-robot-using-ros\/<\/a><span class=\"ub-status ub-status--ok\" title=\"Link status: OK\"><span class=\"ub-status__icon\" aria-hidden=\"true\">\u25cf<\/span><span class=\"screen-reader-text\">Link status: OK<\/span><\/span><\/span><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">http:\/\/wiki.ros.org\/rviz<\/p>\n\n\n","protected":false},"excerpt":{"rendered":"<p>Ich habe mal angefangen, mich mit ROS zu besch\u00e4ftigen, irgendwann st\u00f6\u00dft man auf die Information, dass auch ohne physikalischen Roboter das Verhalten simuliert werden kann. Ein wenig mehr in die Materie eingelesen, fand ich mich vor zig Tutorials wieder, die ich mit den dort vorhandenen Informationen nicht ausprobieren konnte. Somit stellte ich mir die Frage, &#8230;<\/p>\n<a href=\"https:\/\/www.fambach.net\/en\/ros-unified-robot-description-format-urdf\/\" class=\"read-more-link\">Carry on reading <span class=\"screen-reader-text\">\"ROS URDF: Projekt aufsetzen\"<\/span> <span class=\"meta-nav\">\u2192<\/span><\/a>","protected":false},"author":1,"featured_media":9262,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_lmt_disableupdate":"no","_lmt_disable":"","footnotes":""},"categories":[157,700],"tags":[691,689,678,688,690],"class_list":["post-9237","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-atnrob","category-ros-urdf","tag-unified-robot-description-format","tag-modell","tag-ros","tag-rviz","tag-simulation","penguin-post","penguin-post-not-sticky"],"modified_by":"sfambach","_links":{"self":[{"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/posts\/9237","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/comments?post=9237"}],"version-history":[{"count":16,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/posts\/9237\/revisions"}],"predecessor-version":[{"id":17987,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/posts\/9237\/revisions\/17987"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/media\/9262"}],"wp:attachment":[{"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/media?parent=9237"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/categories?post=9237"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/tags?post=9237"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}