{"id":5878,"date":"2023-08-11T22:53:37","date_gmt":"2023-08-11T13:53:37","guid":{"rendered":"https:\/\/now0930.pe.kr\/wordpress\/?p=5878"},"modified":"2023-08-12T18:10:41","modified_gmt":"2023-08-12T09:10:41","slug":"__trashed","status":"publish","type":"post","link":"https:\/\/now0930.pe.kr\/wordpress\/__trashed\/","title":{"rendered":"ros2 moveit TF \ud45c\uc2dc"},"content":{"rendered":"\n<p>moveit_setup_assistant\ub97c \uc0ac\uc6a9\ud558\uba74 \ub300\uc0c1\uc774 \ub418\ub294 package\uc5d0\uc11c urdf\ub97c \ucd94\ucd9c\ud55c \ub2e4\uc74c, \ud544\uc694\ud55c \uc124\uc815 \ud30c\uc77c\uc744 \ub9cc\ub4e0 \ud6c4 package+moveit_config \ub514\ub809\ud1a0\ub9ac\uc5d0 \uc0dd\uc131\ud55c \ud30c\uc77c\uc744 \uc800\uc7a5\ud55c\ub2e4. lanch \ub514\ub809\ud1a0\ub9ac\uc5d0 demo.launch.py \ud30c\uc77c\uc774 \uc788\ub294\ub370, \ucf54\ub4dc\uc5d0\ub294 \ubcc4 \ub0b4\uc6a9\uc740 \uc5c6\uace0, \uac19\uc740 \ub514\ub809\ud1a0\ub9ac launch \ud30c\uc77c\ub4e4\uc744 \uc2e4\ud589\ud55c\ub2e4. \ucd5c\uc18c\ud55c \uc5b4\ub290 \ubd80\ubd84\uc744 \uc2e4\ud589\ud574\uc57c rviz\uc5d0\uc11c \ub85c\ubd07\uc774 \uc81c\ub300\ub85c \ubcf4\uc77c\uc9c0 \uad81\uae08\ud588\ub2e4<\/p>\n\n\n\n<p>demo.launch.py \ud30c\uc77c\uc774 \ub2e4\uc74c\uc744 \uc2e4\ud589\ud55c\ub2e4.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>static_virtual_joint_tfs<\/li>\n\n\n\n<li>robot_state_publisher<\/li>\n\n\n\n<li>move_group<\/li>\n\n\n\n<li>rviz<\/li>\n\n\n\n<li>ros2_contol_node + controller spawners<\/li>\n<\/ul>\n\n\n\n<p>robot_state_publisher\ub9cc \uc2e4\ud589\ud558\uba74 \ub85c\ubd07\uc774 \uc815\ud655\ud558\uac8c  \ubcf4\uc77c \uc904 \uc54c\uc558\ub2e4. robot_state_publisher\uac00 \uc785\ub825\uc73c\ub85c robot_description\uc744 \ubc1b\uc544\ub4e4\uc774\uace0, TF\ub294 robot_description\uc5d0 \uc788\ub294 \ub9c1\ud06c, \uc870\uc778\ud2b8 \uad00\uacc4\ub9cc \uc77d\uc5b4\ub4e4\uc5ec \uc54c\uc544\ub0bc \uc904 \uc54c\uc558\ub2e4. move_group\uc740 path\ub97c \ucc3e\uc744 \ub54c \uc0ac\uc6a9\ud558\ubbc0\ub85c \ub2f9\uc7a5 \ud544\uc694\ud574 \ubcf4\uc774\uc9c0 \uc54a\uc558\ub2e4.  <\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">from launch import LaunchDescription\nfrom moveit_configs_utils import MoveItConfigsBuilder\nfrom launch_ros.actions import Node\nfrom moveit_configs_utils.launches import generate_rsp_launch, generate_moveit_rviz_launch\nfrom launch.actions import (\n        DeclareLaunchArgument,\n        IncludeLaunchDescription,\n        )\nfrom launch.substitutions import LaunchConfiguration\nimport os\nfrom ament_index_python.packages import get_package_share_directory\nfrom launch.launch_description_sources import PythonLaunchDescriptionSource\n\n\ndef generate_launch_description():\n    moveit_config = MoveItConfigsBuilder(\"abb_irb2400\", package_name=\"hello_moveit_config\").to_moveit_configs()\n    #dict2 = moveit_config.to_dict()\n    #for key, val in (dict2.items()):\n    #    print(key, \":\", val) \n    ld = LaunchDescription()\n    ld.add_action(DeclareLaunchArgument(\"publish_frequency\", default_value=\"15.0\"))\n\n    rsp_node = Node(\n            name = \"rsp_node\",\n            executable = \"robot_state_publisher\",\n            #prefix = \"xterm -e gdb run --args\",\n            package = \"robot_state_publisher\",\n            output = \"both\",\n            respawn = True,\n            #namespace = 'my_robot',\n            parameters=[\n                moveit_config.robot_description,\n                {\n                    \"publish_frequency\": LaunchConfiguration(\"publish_frequency\"),\n                    },\n                #moveit_config.robot_description_semantic,\n                #moveit_config.robot_description_kinematics,\n                ],\n            )\n    ld.add_action(rsp_node)\n    return ld<\/pre>\n\n\n\n<p>launch\ub97c \uc2e4\ud589\ud558\uba74 tf\uac00 \uc81c\ub300\ub85c \ud45c\uc2dc\ub418\uc9c0 \uc54a\ub294\ub2e4. tf_static\uc740 \uc815\ud655\ud558\uac8c \ud45c\uc2dc\ub41c\ub2e4.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"2217\" height=\"1296\" src=\"https:\/\/now0930.pe.kr\/wordpress\/wp-content\/uploads\/2023\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2023-08-12-175803.png\" alt=\"\" class=\"wp-image-5883\" srcset=\"https:\/\/now0930.pe.kr\/wordpress\/wp-content\/uploads\/2023\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2023-08-12-175803.png 2217w, https:\/\/now0930.pe.kr\/wordpress\/wp-content\/uploads\/2023\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2023-08-12-175803-2048x1197.png 2048w, https:\/\/now0930.pe.kr\/wordpress\/wp-content\/uploads\/2023\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2023-08-12-175803-768x449.png 768w, https:\/\/now0930.pe.kr\/wordpress\/wp-content\/uploads\/2023\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2023-08-12-175803-1536x898.png 1536w, https:\/\/now0930.pe.kr\/wordpress\/wp-content\/uploads\/2023\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2023-08-12-175803-1568x917.png 1568w\" sizes=\"auto, (max-width: 2217px) 100vw, 2217px\" \/><\/figure>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">root@rygen3600:\/home\/ros2_test\/ws_root\/ws_user# ros2 topic list \n\/attached_collision_object\n\/clicked_point\n\/display_planned_path\n\/goal_pose\n\/initialpose\n\/joint_states\n\/parameter_events\n\/planning_scene\n\/planning_scene_world\n\/recognized_object_array\n\/robot_description\n\/rosout\n\/rviz_moveit_motion_planning_display\/robot_interaction_interactive_marker_topic\/feedback\n\/rviz_moveit_motion_planning_display\/robot_interaction_interactive_marker_topic\/update\n\/tf\n\/tf_static\n\/trajectory_execution_event\n\/visualization_marker_array\nroot@rygen3600:\/home\/ros2_test\/ws_root\/ws_user# ros2 topic echo \/tf\n\n\n^Croot@rygen3600:\/home\/ros2_test\/ws_root\/ws_user# ros2 topic echo \/tf_static \ntransforms:\n- header:\n    stamp:\n      sec: 1691830604\n      nanosec: 3856748\n    frame_id: base_link\n  child_frame_id: base\n  transform:\n    translation:\n      x: 0.0\n      y: 0.0\n      z: 0.0\n    rotation:\n      x: 0.0\n      y: 0.0\n      z: 0.0\n      w: 1.0\n- header:\n    stamp:\n      sec: 1691830604\n      nanosec: 3856748\n    frame_id: link_6\n  child_frame_id: tool0\n  transform:\n    translation:\n      x: 0.0\n      y: 0.0\n      z: 0.0\n    rotation:\n      x: 0.0\n      y: 0.0\n      z: 0.0\n      w: 1.0\n---\n<\/pre>\n\n\n\n<p>\uc65c \uc774\ub7f0\uc9c0 \ud55c\ucc38 \uace0\ubbfc\ud558\ub2e4, \uacb0\uad6d control node\uc640 controller spawner\uac00 \uc2e4\ud589\ub418\uc5b4\uc57c TF\uac00 \uc81c\ub300\ub85c \ud45c\uc2dc\ub428\uc744 \uc54c\uc558\ub2e4.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"2213\" height=\"1266\" src=\"https:\/\/now0930.pe.kr\/wordpress\/wp-content\/uploads\/2023\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2023-08-12-180309.png\" alt=\"\" class=\"wp-image-5884\" srcset=\"https:\/\/now0930.pe.kr\/wordpress\/wp-content\/uploads\/2023\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2023-08-12-180309.png 2213w, https:\/\/now0930.pe.kr\/wordpress\/wp-content\/uploads\/2023\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2023-08-12-180309-2048x1172.png 2048w, https:\/\/now0930.pe.kr\/wordpress\/wp-content\/uploads\/2023\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2023-08-12-180309-768x439.png 768w, https:\/\/now0930.pe.kr\/wordpress\/wp-content\/uploads\/2023\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2023-08-12-180309-1536x879.png 1536w, https:\/\/now0930.pe.kr\/wordpress\/wp-content\/uploads\/2023\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2023-08-12-180309-1568x897.png 1568w\" sizes=\"auto, (max-width: 2213px) 100vw, 2213px\" \/><\/figure>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">root@rygen3600:\/home\/ros2_test\/ws_root\/ws_user# ros2 topic echo \/tf\n...\n- header:\n    stamp:\n      sec: 1691830991\n      nanosec: 709634293\n    frame_id: base_link\n  child_frame_id: link_1\n  transform:\n    translation:\n      x: 0.0\n      y: 0.0\n      z: 0.0\n    rotation:\n      x: 0.0\n      y: 0.0\n      z: 0.0\n      w: 1.0\n- header:\n    stamp:\n      sec: 1691830991\n      nanosec: 709634293\n    frame_id: link_1\n  child_frame_id: link_2\n  transform:\n    translation:\n      x: 0.1\n      y: 0.0\n      z: 0.615\n    rotation:\n      x: 0.0\n      y: 0.0\n      z: 0.0\n      w: 1.0\n- header:\n    stamp:\n      sec: 1691830991\n      nanosec: 709634293\n    frame_id: link_2\n  child_frame_id: link_3\n  transform:\n    translation:\n      x: 0.0\n      y: 0.0\n      z: 0.705\n    rotation:\n      x: 0.0\n      y: 0.0\n      z: 0.0\n      w: 1.0\n<\/pre>\n\n\n\n<p>\ucd5c\uc18c 2\uac1c node\uac00 \ud544\uc694\ud558\ub2e4. robot_state_publisher\uc640 controller node.\uc774\uac70 \uc54c\uc544\ub0b8\ub2e4\uace0 \ubcc4 \uc9d3\uc744 \ub2e4\ud588\ub2e4. \ub2e4\uc218 \ub85c\ubd07\uc744 \ucc98\ub9ac\ud558\ub824\uba74 namespace\ub85c \ud560\ub2f9\ud558\uc5ec \ubd88\ub7ec\uc57c \ud560\ud150\ub370, \uc798 \uc548\ub41c\ub2e4.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>moveit_setup_assistant\ub97c \uc0ac\uc6a9\ud558\uba74 \ub300\uc0c1\uc774 \ub418\ub294 package\uc5d0\uc11c urdf\ub97c \ucd94\ucd9c\ud55c \ub2e4\uc74c, \ud544\uc694\ud55c \uc124\uc815 \ud30c\uc77c\uc744 \ub9cc\ub4e0 \ud6c4 package+moveit_config \ub514\ub809\ud1a0\ub9ac\uc5d0 \uc0dd\uc131\ud55c \ud30c\uc77c\uc744 \uc800\uc7a5\ud55c\ub2e4. lanch \ub514\ub809\ud1a0\ub9ac\uc5d0 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":5884,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1049],"tags":[1154,1152,1153],"class_list":["post-5878","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ros","tag-control_node","tag-moveit","tag-robot_state_publisher"],"jetpack_featured_media_url":"https:\/\/now0930.pe.kr\/wordpress\/wp-content\/uploads\/2023\/08\/\uc2a4\ud06c\ub9b0\uc0f7-2023-08-12-180309.png","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/now0930.pe.kr\/wordpress\/wp-json\/wp\/v2\/posts\/5878","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/now0930.pe.kr\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/now0930.pe.kr\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/now0930.pe.kr\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/now0930.pe.kr\/wordpress\/wp-json\/wp\/v2\/comments?post=5878"}],"version-history":[{"count":6,"href":"https:\/\/now0930.pe.kr\/wordpress\/wp-json\/wp\/v2\/posts\/5878\/revisions"}],"predecessor-version":[{"id":5886,"href":"https:\/\/now0930.pe.kr\/wordpress\/wp-json\/wp\/v2\/posts\/5878\/revisions\/5886"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/now0930.pe.kr\/wordpress\/wp-json\/wp\/v2\/media\/5884"}],"wp:attachment":[{"href":"https:\/\/now0930.pe.kr\/wordpress\/wp-json\/wp\/v2\/media?parent=5878"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/now0930.pe.kr\/wordpress\/wp-json\/wp\/v2\/categories?post=5878"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/now0930.pe.kr\/wordpress\/wp-json\/wp\/v2\/tags?post=5878"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}