简体   繁体   English

错误:gazebo_ros_control插件正在等待参数中的模型URDF

[英]Error: gazebo_ros_control plugin is waiting for model URDF in parameter

Please help. 请帮忙。

Very few times the gazebo opens with the loaded model, almost 99 times it fails with the below error. 凉亭在加载的模型中打开的次数很少,而在出现以下错误时失败的次数几乎是99次。

After searching for one day in all forums I tried the following, so far no luck :( 1) runnning verbose:=true 2) running rosrun gzclient and then the launch file 3) making sure box size is not zero 4) transmission type properly mentioned 5) gazebo ros control plugin installed and mentioned in model file 6) gazebo ros control plugin installed (please note that i was able to run the same launch before, suddenly this error is coming up) 7) checked namesapce 在所有论坛中搜索了一天后,我尝试了以下操作,到目前为止,还没有运气:( 1)运行verbose:= true 2)运行rosrun gzclient然后启动文件3)确保框大小不为零4)传输类型正确提到5)安装了gazebo ros控制插件,并在模型文件中提到了6)安装了gazebo ros控制插件(请注意,我之前能够运行相同的启动,突然出现此错误)7)检查了名称空间

Error trace: 错误跟踪:

balaji@balaji:~/Documents/balaji/unl/Media/Downloads/robot_ws_final$ source devel/setup.bash 
balaji@balaji:~/Documents/balaji/unl/Media/Downloads/robot_ws_final$ roslaunch robot_gazebo robot_world.launch 
... logging to /home/balaji/.ros/log/e78e4fbc-7f83-11e7-9f51-9801a7b07983/roslaunch-balaji-31825.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
WARNING: disk usage in log directory [/home/balaji/.ros/log] is over 1GB.
It's recommended that you use the 'rosclean' command.

xacro: Traditional processing is deprecated. Switch to --inorder processing!
To check for compatibility of your document, use option --check-order.
For more infos, see http://wiki.ros.org/xacro#Processing_Order
started roslaunch server http://balaji:45487/

SUMMARY
========

PARAMETERS
 * /first_pelican/image_processing_node/namesapce_deploy: first_pelican
 * /first_pelican/joint1_position_controller/joint: palm_riser
 * /first_pelican/joint1_position_controller/pid/d: 10.0
 * /first_pelican/joint1_position_controller/pid/i: 0.01
 * /first_pelican/joint1_position_controller/pid/p: 100.0
 * /first_pelican/joint1_position_controller/type: effort_controller...
 * /first_pelican/joint_state_controller/publish_rate: 100
 * /first_pelican/joint_state_controller/type: joint_state_contr...
 * /first_pelican/robot_description: <?xml version="1....
 * /first_pelican/smart_exploration/dist_x: 0
 * /first_pelican/smart_exploration/dist_y: 0
 * /first_pelican/smart_exploration/namesapce_deploy: first_pelican
 * /rosdistro: kinetic
 * /rosversion: 1.12.7
 * /use_sim_time: True

NODES
  /first_pelican/
    controller_spawner (controller_manager/spawner)
    image_processing_node (image_processing/image_processing_node)
    mybot_spawn (gazebo_ros/spawn_model)
    robot_state_publisher (robot_state_publisher/robot_state_publisher)
    smart_exploration (robot_exploration/smart_exploration)
  /
    gazebo (gazebo_ros/gzserver)
    gazebo_gui (gazebo_ros/gzclient)

auto-starting new master
process[master]: started with pid [31839]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to e78e4fbc-7f83-11e7-9f51-9801a7b07983
process[rosout-1]: started with pid [31852]
started core service [/rosout]
process[gazebo-2]: started with pid [31864]
process[gazebo_gui-3]: started with pid [31879]
process[first_pelican/mybot_spawn-4]: started with pid [31886]
process[first_pelican/controller_spawner-5]: started with pid [31887]
process[first_pelican/robot_state_publisher-6]: started with pid [31888]
process[first_pelican/image_processing_node-7]: started with pid [31889]
process[first_pelican/smart_exploration-8]: started with pid [31890]
[ WARN] [1502559016.978709697]: The root link chassis has an inertia specified in the URDF, but KDL does not support a root link with an inertia.  As a workaround, you can add an extra dummy link to your URDF.
[ INFO] [1502559016.986332012]: Got param: 0.000000
[ INFO] [1502559016.995995700]: Got param: 0.000000
[ INFO] [1502559016.999604731]: Got param: first_pelican
[ INFO] [1502559017.008884277]: In image_converter, got param: first_pelican
SpawnModel script started
[INFO] [1502559017.185603, 0.000000]: Loading model XML from ros parameter
[INFO] [1502559017.190666, 0.000000]: Waiting for service /gazebo/spawn_urdf_model
[ INFO] [1502559017.208092409]: Finished loading Gazebo ROS API Plugin.
[ INFO] [1502559017.209366293]: waitForService: Service [/gazebo/set_physics_properties] has not been advertised, waiting...
[INFO] [1502559017.386893, 0.000000]: Controller Spawner: Waiting for service controller_manager/load_controller
[ INFO] [1502559017.566665686, 246.206000000]: waitForService: Service [/gazebo/set_physics_properties] is now available.
[ INFO] [1502559017.611486634, 246.249000000]: Physics dynamic reconfigure ready.
[INFO] [1502559017.795112, 246.428000]: Calling service /gazebo/spawn_urdf_model
[ INFO] [1502559018.103326226, 246.494000000]: Camera Plugin: Using the 'robotNamespace' param: '/first_pelican/'
[ INFO] [1502559018.107184854, 246.494000000]: Camera Plugin (ns = /first_pelican/)  <tf_prefix_>, set to "/first_pelican"
[ INFO] [1502559018.628739638, 246.494000000]: Laser Plugin: Using the 'robotNamespace' param: '/first_pelican/'
[ INFO] [1502559018.628941833, 246.494000000]: Starting Laser Plugin (ns = /first_pelican/)
[ INFO] [1502559018.630496093, 246.494000000]: Laser Plugin (ns = /first_pelican/)  <tf_prefix_>, set to "/first_pelican"
[INFO] [1502559018.650747, 246.494000]: Spawn status: SpawnModel: Successfully spawned entity
[ INFO] [1502559018.669444812, 246.494000000]: Loading gazebo_ros_control plugin
[ INFO] [1502559018.669578793, 246.494000000]: Starting gazebo_ros_control plugin in namespace: first_pelican
[ INFO] [1502559018.670483364, 246.494000000]: gazebo_ros_control plugin is waiting for model URDF in parameter [/robot_description] on the ROS param server.

I know it has been some time since this question has been asked, but if someone is still looking for an answer then please find it below: 我知道距提出此问题已有一段时间,但是如果有人仍在寻找答案,请在下面找到它:

I was able to load the robot after making changes in the launch file. 在启动文件中进行更改后,我能够加载机器人。 I had to set the robot_description parameter outside of the <group> tags. 我必须在<group>标记之外设置robot_description parameter I then loaded or spawned the URDF in Gazebo inside the <group> tags, please find the changes below: 然后,我在<group>标签内的Gazebo中加载或生成了URDF,请在下面找到更改:

<arg name="robot_description"
     default="$(find urdf_test_pkg)/model/robot.xacro"/>
<param name="/robot_description"
   command="$(find xacro)/xacro --inorder $(arg robot_description) namesapce_deploy:=$(arg ns_1)"/>

<group ns="$(arg ns_1)">
    <node name="mybot_spawn" pkg="gazebo_ros" type="spawn_model" output="screen"
    args="-urdf -param /robot_description -model mybot_$(arg ns_1)
                -x $(arg x) -y $(arg y) -z $(arg z)
                -R $(arg roll) -P $(arg pitch) -Y $(arg yaw)" respawn="false" />

    <!-- convert joint states to TF transforms for rviz, etc -->
    <!-- Notice the leading '/' in '/robot_description' -->
    <node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher" respawn="false" output="screen">
        <remap from="/joint_states" to="/$(arg ns_1)/joint_states" />
    </node>
</group>

Please note that this answer is based on the solution provided in the following website: https://answers.ros.org/question/268655/gazebo_ros_control-plugin-is-waiting-for-model-urdf-in-parameter/ . 请注意,此答案基于以下网站提供的解决方案: https : //answers.ros.org/question/268655/gazebo_ros_control-plugin-is-waiting-for-model-urdf-in-parameter/ For more details about the question and answer then please visit the above link. 有关问题和答案的更多详细信息,请访问上面的链接。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM