按教程9.3做法,launch启动gazebo不显示机器人
-
按教程的做法,结果gazebo中没有显示机器人
不清楚原因,希望提供帮助,谢谢!
另外还有一个现象,此时再打开rqt界面,缺少了服务,见下图
-
@154453683 可以再上一步中用rqt来加载机器人吗?是否成功
-
@154453683 感谢回复,可以的;
先启动gazebo gazebo --verbose -s libgazebo_ros_init.so -s libgazebo_ros_factory.so ;
再启动rqt,这时可以选到spawn_entity服务,并把urdf直接拷贝到xml下;
gazebo生成了机器人;
这时候我把以上软件全部关闭,在vscode中通过 launch方式却没有生成机器人,且再打开rqt中没有spawn_entity服务; -
@154453683 贴下launch后的日志,应该有报错
-
@154453683
日志是指这个吗? 新手请见谅 -
@154453683 更正一下,这次launch后 rqt中有spawn_entity服务,汗。。
-
@154453683 尽量复制粘贴哈
把conda退出来
@追逐我的明天 在 用launch文件运行gazebo时报错,找不到rclpy._rclpy_pybind11 中说:
conda deactivate退出conda环境就解决了 笑死
-
@小鱼 解决了,非常感谢小鱼的帮助
能简单说下原理么?为啥要退出conda -
我按9。2中的方式启动gazebo后,用rtq call了对应 topic。 显示成功了,不过在gazebo中没有 看到机器人图像
-
@154453683 conda和系统python版本不同,conda中的无法完成对ros2相应的库的调用
-
@vico1999 看下gazebo左边的设备,有没有fishbot,另外gazebo的模型是否都下载了
-
谢谢鱼哥,把conda关闭后,一切可以正常显示了
-
此回复已被删除! -
此回复已被删除! -
@小鱼 我这边也有类似的问题 launch时没有机器人显示 不过我是conda关闭后仍然出现
[ERROR] [spawn_entity.py-2]: process has died [pid 8641, exit code 1, cmd '/opt/ros/humble/lib/gazebo_ros/spawn_entity.py -entity fishbot -file /home/fzj/fishbot_description/install/fishbot_description/share/fishbot_description/urdf/fishbot_gazebo.urdf --ros-args']. -
此回复已被删除! -
@1691904680 解决了吗,我也遇到了这个问题
-
请问帖主解决了吗?想问问是否有这种gazebo左右轮的情况(rviz是可以显示的)`
<?xml version="1.0"?>
<robot name="fishbot"><!-- base link -->
<link name="base_link">
<visual>
<origin xyz="0 0 0.0" rpy="0 0 0" />
<geometry>
<cylinder length="0.12" radius="0.10" />
</geometry>
<material name="blue">
<color rgba="0.1 0.1 1.0 0.5" />
</material>
</visual>
<collision>
<origin xyz="0 0 0.0" rpy="0 0 0" />
<geometry>
<cylinder length="0.12" radius="0.10" />
</geometry>
<material name="blue">
<color rgba="0.1 0.1 1.0 0.5" />
</material>
</collision>
<inertial>
<mass value="0.2" />
<inertia ixx="0.0122666" ixy="0" ixz="0" iyy="0.0122666" iyz="0" izz="0.02" />
</inertial>
</link><!-- laser link -->
<link name="laser_link">
<visual>
<origin xyz="0 0 0" rpy="0 0 0" />
<geometry>
<cylinder length="0.02" radius="0.02" />
</geometry>
<material name="black">
<color rgba="0.0 0.0 0.0 0.5" />
</material>
</visual>
</link><!-- laser joint -->
<joint name="laser_joint" type="fixed">
<parent link="base_link" />
<child link="laser_link" />
<origin xyz="0 0 0.075" />
</joint><link name="imu_link">
<visual>
<origin xyz="0 0 0.0" rpy="0 0 0" />
<geometry>
<box size="0.02 0.02 0.02" />
</geometry>
</visual>
</link><!-- imu joint -->
<joint name="imu_joint" type="fixed">
<parent link="base_link" />
<child link="imu_link" />
<origin xyz="0 0 0.02" />
</joint><link name="left_wheel_link">
<visual>
<origin xyz="0 0 0" rpy="1.57079 0 0" />
<geometry>
<cylinder length="0.04" radius="0.032" />
</geometry>
<material name="black">
<color rgba="0.0 0.0 0.0 0.5" />
</material>
</visual>
</link><joint name="left_wheel_joint" type="continuous">
<origin xyz="-0.02 0.10 -0.06" rpy="0 0 0"/>
<parent link="base_link" />
<child link="left_wheel_link" />
<axis xyz="0 1 0" />
</joint><link name="right_wheel_link">
<visual>
<origin xyz="0 0 0" rpy="1.57079 0 0" />
<geometry>
<cylinder length="0.04" radius="0.032" />
</geometry>
<material name="black">
<color rgba="0.0 0.0 0.0 0.5" />
</material>
</visual>
</link><joint name="right_wheel_joint" type="continuous">
<origin xyz="-0.02 -0.10 -0.06" rpy="0 0 0"/>
<parent link="base_link" />
<child link="right_wheel_link" />
<axis xyz="0 1 0" />
</joint><link name="caster_link">
<visual>
<origin xyz="0 0 0" rpy="1.57079 0 0" />
<geometry>
<sphere radius="0.016" />
</geometry>
<material name="black">
<color rgba="0.0 0.0 0.0 0.5" />
</material>
</visual>
</link><joint name="caster_joint" type="fixed">
<parent link="base_link" />
<child link="caster_link" />
<origin xyz="0.06 0.0 -0.076" rpy="0 0 0"/>
<axis xyz="0 1 0" />
</joint><!--Robot
Footprint -->
<link name="base_footprint" /><joint name="base_joint" type="fixed">
<parent link="base_footprint" />
<child link="base_link" />
<origin xyz="0.0 0.0 0.076" rpy="0 0 0" />
</joint><gazebo>
<plugin name='diff_drive' filename='libgazebo_ros_diff_drive.so'>
<ros>
<namespace>/</namespace>
<remapping>cmd_vel:=cmd_vel</remapping>
<remapping>odom:=odom</remapping>
</ros>
<update_rate>30</update_rate>
<!-- wheels -->
<left_joint>left_wheel_joint</left_joint>
<right_joint>right_wheel_joint</right_joint>
<!-- kinematics -->
<wheel_separation>0.2</wheel_separation>
<wheel_diameter>0.065</wheel_diameter>
<!-- limits -->
<max_wheel_torque>20</max_wheel_torque>
<max_wheel_acceleration>1.0</max_wheel_acceleration>
<!-- output -->
<publish_odom>true</publish_odom>
<publish_odom_tf>true</publish_odom_tf>
<publish_wheel_tf>true</publish_wheel_tf>
<odometry_frame>odom</odometry_frame>
<robot_base_frame>base_footprint</robot_base_frame>
</plugin>
</gazebo>
</robot> -
@Mac-Guffin 解决了吗哥,我也遇到了这个问题
-
@2382726705 解决了,是因为其他link
没有加collision和inertial,每一个模块都需要按照base_link一样加这两个参数