ROS探索总结(四)——简单的机器人仿真

  • 内容
  • 评论
  • 相关

前边我们已经介绍了ROS的基本情况,以及新手入门ROS的初级教程,现在就要真正的使用ROS进入机器人世界了。接下来我们涉及到的很多例程都是《ROS by Example》这本书的内容,我是和群里的几个人一起从国外的亚马逊上买到的,还是很有参考价值的,不过前提是你已经熟悉之前的新手教程了。

一、ROS by Example


        这本书是关于国外关于ROS出版的第一本书,主要针对Electric和Fuerte版本,使用机器人主要是TurtleBot。书中详细讲解了关于机器人的基本仿真、导航、路径规划、图像处理、语音识别等等,而且在google的svn上发布了所有代码,可以通过以下命令下载、编译:

  1. svn checkout http://ros-by-example.googlecode.com/svn/trunk/rbx_vol_1  
  2. rosmake rbx_vol_1  
  3. rospack profile          //加入ROS package路径

二、rviz简单机器人模拟

       1、安装机器人模拟器                      

       rviz是一个显示机器人实体的工具,本身不具有模拟的功能,需要安装一个模拟器arbotix。

  1. svn checkout http://vanadium-ros-pkg.googlecode.com/svn/trunk/arbotix  
  2. rosmake arbotix

    

       2、TurtleBot机器人的模拟

       在书中的rbx_vol_1包里已经为我们写好了模拟的代码,我们先进行实验,完成后再仔细研究代码。
       机器人模拟运行:
  1. roscore  
  2. roslaunch rbx1_bringup fake_pi_robot.launch
 
       然后在终端中可以看到,机器人已经开始运行了,打开rviz界面,才能看到机器人实体。
  1. rosrun rviz rviz -d `rospack find rbx1_nav`/sim_fuerte.vcg
 
       后面的参数是加载了rviz的配置文件sim_fuerte.vcg。效果如下:
  

       此时的机器人是静止的,需要发布一个消息才能让它动起来。

  1. rostopic pub -r 10 /cmd_vel geometry_msgs/Twist '{linear: {x: 0.2, y: 0, z: 0}, angular: {x: 0, y: 0, z: 0.5}}'


      
       如果要让机器人停下来,需要在中断中按下“Ctrl+c”,然后输入:

  1. rostopic pub -1 /cmd_vel geometry_msgs/Twist '{}'

       也可以改变发送的topic信息,使机器人走出不同的轨迹。

三、实现分析

       按照上面的仿真过程,我们详细分析每一步的代码实现。  

       1、TurtleBot机器人运行

       机器人运行使用的是launch文件,首先打开fake_turtlebot.launch文件。
  1. <launch>  
  2.   <param name="/use_sim_time" value="false" />  
  3.  
  4.   <!-- Load the URDF/Xacro model of our robot -->  
  5.   <arg name="urdf_file" default="$(find xacro)/xacro.py '$(find turtlebot_description)/urdf/turtlebot.urdf.xacro'" />  
  6.  
  7.   <param name="robot_description" command="$(arg urdf_file)" />  
  8.  
  9.   <node name="arbotix" pkg="arbotix_python" type="driver.py" output="screen">  
  10.       <rosparam file="$(find rbx1_bringup)/config/fake_turtlebot_arbotix.yaml" command="load" />  
  11.       <param name="sim" value="true"/>  
  12.   </node>  
  13.  
  14.   <node name="robot_state_publisher" pkg="robot_state_publisher" type="state_publisher">  
  15.       <param name="publish_frequency" type="double" value="20.0" />  
  16.   </node>  
  17.  
  18.   <!-- We need a static transforms for the wheels -->  
  19.   <node pkg="tf" type="static_transform_publisher" name="odom_left_wheel_broadcaster" args="0 0 0 0 0 0 /base_link /left_wheel_link 100" />  
  20.   <node pkg="tf" type="static_transform_publisher" name="odom_right_wheel_broadcaster" args="0 0 0 0 0 0 /base_link /right_wheel_link 100" />  
  21.  
  22. </launch>

        文件可以大概分为四个部分:
        (1) 从指定的包中加载urdf文件
        (2) 启动arbotix模拟器
        (3) 启动状态发布节点
        (4) tf坐标系配置

2、rviz配置文件

       在打开rviz的时候需要加载一个.vcg的配置文件,主要对rviz中的插件选项进行默认的配置。这里打开的是sim_fuerte.vcg文件,由于文件比较长,这里只列举重点的部分。

  1. Background\ ColorB=0.12549  
  2. Background\ ColorG=0.12549  
  3. Background\ ColorR=0.12549  
  4. Camera\ Config=158.108 0.814789 0.619682 -1.57034  
  5. Camera\ Type=rviz::FixedOrientationOrthoViewController  
  6. Fixed\ Frame=/odom  
  7. Grid.Alpha=0.5  
  8. Grid.Cell\ Size=0.5  
  9. Grid.ColorB=0.941176  
  10. Grid.ColorG=0.941176  
  11. Grid.ColorR=0.941176  
  12. Grid.Enabled=1  
  13. Grid.Line\ Style=0  
  14. Grid.Line\ Width=0.03  
  15. Grid.Normal\ Cell\ Count=0  
  16. Grid.OffsetX=0  
  17. Grid.OffsetY=0  
  18. Grid.OffsetZ=0  
  19. Grid.Plane=0

        上面的代码是配置背景颜色和网格属性的,对应rviz中的选项如下图所示。

       

        其中比较重要的一个选项是Camera的type,这个选项是控制开发者的观察角度的,书中用的是FixedOrientationOrthoViewController的方式,就是上面图中的俯视角度,无法看到机器人的三维全景,所以可以改为OrbitViewController方式,如下图所示:


3、发布topic

        要让机器人动起来,还需要给他一些运动需要的信息,这些信息都是通过topic的方式发布的。
        这里的topic就是速度命令,针对这个topic,我们需要发布速度的信息,在ROS中已经为我们写好了一些可用的数据结构,这里用的是Twist信息的数据结构。在终端中可以看到Twist的结构如下:

             
        用下面的命令进行消息的发布,其中主要包括力的大小和方向。

  1. [plain] view plain copy Background\ ColorB=0.12549  
  2. Background\ ColorG=0.12549  
  3. Background\ ColorR=0.12549  
  4. Camera\ Config=158.108 0.814789 0.619682 -1.57034  
  5. Camera\ Type=rviz::FixedOrientationOrthoViewController  
  6. Fixed\ Frame=/odom  
  7. Grid.Alpha=0.5  
  8. Grid.Cell\ Size=0.5  
  9. Grid.ColorB=0.941176  
  10. Grid.ColorG=0.941176  
  11. Grid.ColorR=0.941176  
  12. Grid.Enabled=1  
  13. Grid.Line\ Style=0  
  14. Grid.Line\ Width=0.03  
  15. Grid.Normal\ Cell\ Count=0  
  16. Grid.OffsetX=0  
  17. Grid.OffsetY=0  
  18. Grid.OffsetZ=0  
  19. Grid.Plane=0

4、节点关系图


原创文章,转载请注明: 转载自古月居

本文链接地址: ROS探索总结(四)——简单的机器人仿真

微信 OR 支付宝 扫描二维码
为本文作者 打个赏
pay_weixinpay_weixin

评论

241条评论
  1. Gravatar 头像

    小刘同学 回复

    古月老师,我使用的是《ROS机器人开发实践这本书》,在运行激光雷达的时候出现了这个问题
    树莓派端输入的是mrobot_roslaunch mrobot_bringup mrobot_with_laser.launch

    底下出现了这段红色的信息:
    [bringup-2] process has died [pid 2351, exit code -6, cmd /home/lsn/catkin_ws/devel/lib/mrobot_bringup/mrobot_bringup __name:=mrobot_bringup __log:=/home/lsn/.ros/log/9f3dac4a-c3c3-11e9-aa2c-b827eb53dd67/mrobot_bringup-2.log].
    log file: /home/lsn/.ros/log/9f3dac4a-c3c3-11e9-aa2c-b827eb53dd67/mrobot_bringup-2*.log

    现在我这边虚拟机上rviz无法接受到雷达的信息,没法显示地图,是因为这个进程死掉的原因吗?

  2. Gravatar 头像

    胡欢 回复

    连接节点时报这错误怎么解决[ERROR] [1562632965.931632]: Error opening serial: [Errno 2] could not open port /dev/rikibase: [Errno 2] No such file or directory: '/dev/rikibase'

    • Gravatar 头像

      花心娚 回复

      @胡欢 你好 这个问题解决了么 我也遇到了这个问题 加q1048108469 咱们一起看看好么

    • Gravatar 头像

      伍璟 回复

      @胡欢 我也是这问题 请问解决了没

  3. Gravatar 头像

    石燕菲 回复

    zs@zs:~$ svn checkout http://ros-by-example.googlecode.com/svn/trunk/rbx_vol_1 svn: E170013: Unable to connect to a repository at URL 'http://ros-by-example.googlecode.com/svn/trunk/rbx_vol_1'
    svn: E000110: Error running context: Connection timed out
    zs@zs:~$
    你好,老师,我下载的时候,出现了这种问题,请问一下这种情况怎么办?谢谢啦

  4. Gravatar 头像

    he 回复

    博主你好,我买了你的书目前在看标定这块,我想请问在执行标定时候报错:AttributeError: 'MoveGroupCommander' object has no attribute 'set_max_acceleration_scaling_factor'是什么原因呢,在这个错误上面还有报一堆python路径引发的错误:PluginManager._load_plugin() could not load plugin "rqt_easy_handeye/Hand-eye Calibration automatic movement":
    Traceback (most recent call last):
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/qt_gui/plugin_handler.py", line 99, in load
    self._load()
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/qt_gui/plugin_handler_direct.py", line 54, in _load
    self._plugin = self._plugin_provider.load(self._instance_id.plugin_id, self._context)
    望您解答,谢谢

      • Gravatar 头像

        he 回复

        @古月 古月你好,我有看你发的链接,moveit_commander包安装好了并成功升级到0.9.15,但是执行我的标定程序还是报相同的错误,我想问一下MoveGroupCommander添加set_max_acceleration_scaling_factor以什么样的方式呢,你们有遇到过这样的问题吗,谢谢

        • 古月

          古月 回复

          @he set_max_acceleration_scaling_factor是moveit中的一个API

          • Gravatar 头像

            he 回复

            @古月 古月你好,我看你的《ROS机器人开发实践》一书中对Universal Robots的应用上提及的比较少,我目前在用UR10进行二次开发,请问可以借鉴你们的UR机械臂开发资源吗,比如代码,手册这些,不胜感激。

          • Gravatar 头像

            he 回复

            @古月 古月你好,我看你的书上关于UR机器人的案例比较少,请问你们有没有可以参阅的关于UR机器人的资料,就是ROS+UR机器人的使用,感谢

            • 古月

              古月 回复

              @he github上有UR的ROS驱动包,可以用ROS把机器人跑起来,具体应用需要在github上看看有没有了,我这里没有太多资料

        • Gravatar 头像

          赵晓晨 回复

          @he 博主,您好。我在使用您的ROS机器人开发与实践这本书的时候,在6.5基于arbotix和rviz的仿真器,roslaunch mrobot_description arbotix_mrobot_with_kinect.launch ,出现错误:error loading tag:
          'ascii' codec can't decode byte 0xef in position 312: ordinal not in range(128)
          XML is
          The traceback for the exception was written to the log file
          请问如何处理,感谢

  5. Gravatar 头像

    高鹏 回复

    古月大神,为什么我每次运行roslaunch usb_cam usb_cam-test.launch时都会出来一个摄像头界面过几秒就显示select timeout,摄像头也没显示,用rqt_image_view打开也显示不出摄像头信息,跟着您的视频教程每次用到摄像头这个功能时都显示不出东西,这是什么原因啊

    • 古月

      古月 回复

      @高鹏 先用ubuntu自带的cheese软件看下是否可以驱动摄像头,有可能系统没有驱动

      • Gravatar 头像

        高鹏 回复

        @古月 用cheese打开刚开始也是只有黑色屏幕,后来我百度了下将usb兼容换成了1.0之后打开cheese可以看到图像了额,但是我再运行roslaunch usb_cam usb_cam-test.launch时还是打不开过几秒后显示select timeout,这个对后续的实验例程有影响吗?

        • 古月

          古月 回复

          @高鹏 这是系统底层不支持摄像头驱动,后续如果有用到摄像头的地方会有影响,可以外部接一个usb摄像头

  6. Gravatar 头像

    钟韧皙 回复

    zrx@zrx:~$ roslaunch mbot_description display_mbot_base_xacro.launch
    ... logging to /home/zrx/.ros/log/2af95f26-5c05-11e9-9879-058e778e23c1/roslaunch-zrx-8047.log
    Checking log directory for disk usage. This may take awhile.
    Press Ctrl-C to interrupt
    Done checking log file disk usage. Usage is <1GB.

    Is a directory: /home/zrx/catkin_ws/src/mbot_description/urdf/xacro/ None None
    when processing file: /home/zrx/catkin_ws/src/mbot_description/urdf/xacro/mbot.xacro
    Invalid tag: Cannot load command parameter [robot_description]: command [/opt/ros/kinetic/lib/xacro/xacro --inorder '/home/zrx/catkin_ws/src/mbot_description/urdf/xacro/mbot.xacro'] returned with code [2].

    Param xml is
    The traceback for the exception was written to the log file
    老师,我按第四讲的视频运行launch出现这种情况
    请问怎么解决..

  7. Gravatar 头像

    爱迪生 回复

    老师你好,我在做项目的时候自己catkin_create_pkg,然后写了service.py,但是在我catkin_make 的时候,出现了问题。
    CMake Error at /opt/ros/kinetic/share/catkin/cmake/assert.cmake:20 (message):

    Assertion failed: file
    '/home/edison/data1_edison/catkin_ws/src/my_robot/srv/cloud_tran' does not
    exist. Message: service file not found

    Call Stack (most recent call first):
    /opt/ros/kinetic/share/genmsg/cmake/genmsg-extras.cmake:170 (assert_file_exists)
    my_robot/CMakeLists.txt:66 (add_service_files)

    -- Configuring incomplete, errors occurred!
    See also "/data1/edison/catkin_ws/build/CMakeFiles/CMakeOutput.log".
    See also "/data1/edison/catkin_ws/build/CMakeFiles/CMakeError.log".
    Invoking "cmake" failed

    我的clould_tran.srv 在 /data1/edison/catkin_ws/src/my_robot/srv/ 这个路径下,请问我该怎么解决这个问题

    • 古月

      古月 回复

      @爱迪生 应该是环境变量或者cmakelist配置的问题,对照wiki上的教程检查一下吧

  8. Gravatar 头像

    王乒 回复

    古月老师你好,我看着您的视频到第七课运行$roslaunch marm_gazebo arm_bringup_moveit.launch
    的时候出现
    [ERROR] [1552391843.842820971, 0.313000000]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/joint1
    [ERROR] [1552391843.844789504, 0.313000000]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/joint2
    [ERROR] [1552391843.846634523, 0.313000000]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/joint3
    [ERROR] [1552391843.848915115, 0.313000000]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/joint4
    [ERROR] [1552391843.851032089, 0.313000000]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/joint5
    [ERROR] [1552391843.853044689, 0.313000000]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/joint6
    [ERROR] [1552391843.858059504, 0.313000000]: No p gain specified for pid. Namespace: /gazebo_ros_control/pid_gains/finger_joint1
    在rviz界面进行机械臂planning的时候终端出现
    [ERROR] [1552394162.405975796, 38.606000000]: Unable to identify any set of controllers that can actuate the specified joints: [ joint1 joint2 joint3 joint4 joint5 joint6 ]
    [ERROR] [1552394162.406024113, 38.606000000]: Known controllers and their joints:
    请问是不是机械臂参数在gazebo控制器里面没有设置好是吗,如果是的话应该怎么设置呢,谢谢古月老师

    • 古月

      古月 回复

      @王乒 这个是ROS最近更新导致的问题,我这里测试别不影响使用,你运行起来会有问题么

      • Gravatar 头像

        lxh 回复

        @古月 我也遇到了同样的问题,窗口可以打开,但是不能够控制

    • Gravatar 头像

      rennico 回复

      @王乒 请问你问题解决了吗?我也遇到同样的问题,感觉像是pid设置的格式变了,不过我怎么改都说不识别pid的p值

  9. Gravatar 头像

    Transparent 回复

    老师,您好,我是ROS小白,在下载MIT的Racecar的racecar-simulator后,使用Gazebo不成功,我已经在文件夹下执行catkin_make以及source devel/setup.bash指令,还是出现一下错误。希望得到指点
    ... logging to /home/u/.ros/log/cc13f9fe-3fde-11e9-af97-000c29a0695d/roslaunch-u-virtual-machine-3358.log
    Checking log directory for disk usage. This may take awhile.
    Press Ctrl-C to interrupt
    Done checking log file disk usage. Usage is <1GB.

    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
    Traceback (most recent call last):
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/roslaunch/__init__.py", line 306, in main
    p.start()
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/roslaunch/parent.py", line 268, in start
    self._start_infrastructure()
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/roslaunch/parent.py", line 217, in _start_infrastructure
    self._load_config()
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/roslaunch/parent.py", line 132, in _load_config
    roslaunch_strs=self.roslaunch_strs, verbose=self.verbose)
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/roslaunch/config.py", line 451, in load_config_default
    loader.load(f, config, verbose=verbose)
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 749, in load
    self._load_launch(launch, ros_config, is_core=core, filename=filename, argv=argv, verbose=verbose)
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 721, in _load_launch
    self._recurse_load(ros_config, launch.childNodes, self.root_context, None, is_core, verbose)
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 685, in _recurse_load
    val = self._include_tag(tag, context, ros_config, default_machine, is_core, verbose)
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 95, in call
    return f(*args, **kwds)
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 589, in _include_tag
    inc_filename = self.resolve_args(tag.attributes['file'].value, context)
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 183, in resolve_args
    return substitution_args.resolve_args(args, context=context.resolve_dict, resolve_anon=self.resolve_anon)
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/roslaunch/substitution_args.py", line 370, in resolve_args
    resolved = _resolve_args(resolved, context, resolve_anon, commands)
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/roslaunch/substitution_args.py", line 383, in _resolve_args
    resolved = commands[command](resolved, a, args, context)
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/roslaunch/substitution_args.py", line 151, in _find
    source_path_to_packages=source_path_to_packages)
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/roslaunch/substitution_args.py", line 197, in _find_executable
    full_path = _get_executable_path(rp.get_path(args[0]), path)
    File "/usr/lib/python2.7/dist-packages/rospkg/rospack.py", line 203, in get_path
    raise ResourceNotFound(name, ros_paths=self._ros_paths)
    ResourceNotFound: racecar
    ROS path [0]=/opt/ros/kinetic/share/ros
    ROS path [1]=/home/u/catkin_ws/src
    ROS path [2]=/opt/ros/kinetic/share

  10. Gravatar 头像

    于澈 回复

    老师您好,我在用rosserial跟stm32单片机通信的时候,rosrun rosserial_python serial_node.py以后就出现Creation of publisher failed: riki_msgs ROS path [0]=/opt/ros/kinetic/share/ros ROS path [1]=/opt/ros/kinetic/share
    这是什么原因?

    • Gravatar 头像

      于澈 回复

      @于澈 发现原因了,是我的消息不存在,32跑的别人的程序,没有外设给数据

  11. Gravatar 头像

    樊子昭 回复

    老师,您好,在我运行roslaunch usb_cam usb_cam-test.launch

    系统报错[ WARN] [1550561531.531490423]: Camera calibration file /home/wq/.ros/camera_info/head_camera.yaml not found.
    [ WARN] [1550561531.935296431]: unknown control 'white_balance_temperature_auto'

    [ WARN] [1550561531.944796085]: unknown control 'focus_auto'

    找不到.yaml文件
    这个该怎么办。希望老师解答,谢谢

    • 古月

      古月 回复

      @樊子昭 这个不影响使用,yaml文件是摄像头标定参数,需要做标定产生

    • Gravatar 头像

      回复

      @樊子昭 你好,你打开相机的时候是不是只有一张照片啊

  12. Gravatar 头像

    可乐 回复

    古月老师您好,再根据您的书进行机器人建模与仿真时,输入命令roslaunch mrobot_description display_mrobot_chassis_urdf.launch时会出现如下错误:
    Traceback (most recent call last):
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/roslaunch/__init__.py", line 225, in main
    args = rlutil.resolve_launch_arguments(args)
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/roslaunch/rlutil.py", line 92, in resolve_launch_arguments
    resolved = roslib.packages.find_resource(args[0], args[1])
    File "/opt/ros/kinetic/lib/python2.7/dist-packages/roslib/packages.py", line 495, in find_resource
    pkg_path = rospack.get_path(pkg)
    File "/usr/lib/python2.7/dist-packages/rospkg/rospack.py", line 201, in get_path
    self._update_location_cache()
    File "/usr/lib/python2.7/dist-packages/rospkg/rospack.py", line 184, in _update_location_cache
    list_by_path(self._manifest_name, path, cache)
    File "/usr/lib/python2.7/dist-packages/rospkg/rospack.py", line 67, in list_by_path
    root = ElementTree(None, os.path.join(d, PACKAGE_FILE))
    File "/usr/lib/python2.7/xml/etree/ElementTree.py", line 611, in __init__
    self.parse(file)
    File "", line 38, in parse
    ParseError: mismatched tag: line 70, column 2
    希望您能帮忙看一下大概问题出在哪,谢谢啦

    • Gravatar 头像

      回复

      @可乐 请问解决吗,同样遇到这样的问题

      • Gravatar 头像

        zhangty018 回复

        @郭 我在这篇帖子里面找到了答案(https://blog.csdn.net/qin_xian_shen/article/details/78525709),希望有帮助。

        问题原因: Ubuntu没有内置unicode支持

        解决方法:安装后重启roscore就好了,命令是 : sudo apt-get install unicode

  13. Gravatar 头像

    liyunuo 回复

    老师,我在跟着你的《机器人开发实践》学习时,在运行 roslaunch mrobot_bringup mrobot.launch 后,报错为:
    [mrobot_bringup-2] process has died [pid 601, exit code -6, cmd /home/my_ros/catkin_ws/devel/lib/mrobot_bringup/mrobot_bringup __name:=mrobot_bringup __log:=/home/my_ros/.ros/log/05be2f42-22c7-11e9-bb06-0026c66d0c98/mrobot_bringup-2.log].
    log file: /home/my_ros/.ros/log/05be2f42-22c7-11e9-bb06-0026c66d0c98/mrobot_bringup-2*.log
    怎么解决呢?

    • 古月

      古月 回复

      @liyunuo mrobot.launch这个是连接实际机器人运行的,如果是仿真的话,不需要运行这个

  14. Gravatar 头像

    老肥 回复

    为什么在rviz中仿真之后没有左边的轮子?代码确定没有写错,为什么会出现这种错误?

    • 古月

      古月 回复

      @老肥 这个描述无法确定问题,关闭所有程序后重启,如果还是有问题,也只能是模型或者配置上的问题

  15. Gravatar 头像

    欧阳言涛 回复

    古老师您好,我在跟着你的《ROS机器人开发实践》书籍学习MRobot时编译mrobot_bringup.cpp提示 fatal error: mrobot_bringup/mrobot.h: 没有那个文件或目录。

  16. Gravatar 头像

    李志超 回复

    博主,我和几个小伙伴现在想用一台Dobot机器人进行中国象棋的移动控制,但今天导入Dobot机器人模型时,出现连下面的问题,source路径之类的都正确,不知道出现连什么问题,希望博主能指教一下
    rospkg.common.ResourceNotFound: urdf.xml
    ROS path [0]=/opt/ros/kinetic/share/ros
    ROS path [1]=/home/lizhichao/catkin_ws/src
    ROS path [2]=/opt/ros/kinetic/share
    ROS path [3]=/home/lizhichao/catkin_ws/src

    • 古月

      古月 回复

      @李志超 检查下urdf文件的路径是不是对的,以及相关的包是否安装

      • Gravatar 头像

        李志超 回复

        @古月 旧的问题尚未解决,新的问题已经出现;革命尚未成功,同志仍须努力,谢谢博主

  17. Gravatar 头像

    随芯 回复

    古月老师,你好!我是学习ROS的新手,最近在跟着《ROS机器人程序设计》这本书学习ROS导航功能包,但是遇到一个问题始终解决不了。页面报警说“Timed out waiting for transform from base_footprint to map to become available before running costmap, tf error: canTransform: target_frame map does not exist.. canTransform returned after 0.1 timeout was 0.1.”RVIZ也报错说“Fixed Frame [map] does not exist"。我把fixed frame改成odom或base_link,依然无法解决问题。请问有什么解决办法吗?困扰了很久

    • 古月

      古月 回复

      @随芯 在导航的时候map->odom->base_link这条tf的链必须是联通的,检查下tf是否有问题

      • Gravatar 头像

        随芯 回复

        @古月 谢谢古月老师,确实是TF出了问题,已经解决了。想请教一下古月老师,自动驾驶车辆利用ROS导航功能包进行路径规划是否可行?

        • Gravatar 头像

          wx 回复

          @随芯 你好,这个问题怎么解决的,可以具体下吗,谢谢

        • Gravatar 头像

          wx 回复

          @随芯 你好,这个怎么解决的,可以具体说下吗,谢谢!

        • Gravatar 头像

          作者 回复

          @随芯 你好,这个问题是怎么解决的,可以具体说下吗

    • Gravatar 头像

      李翠 回复

      @随芯 查看一下激光的frame_id和写的tf变换中激光的fram_id是否一致。今天也遇见这个问题,快被自己蠢哭了。
      可以打开自己的程序,然后rosnode kill amcl,重新rosrun amcl amcl看提示什么警告。是否有激光数据没有接收到,或者odom信息被MessageFilter过滤掉的提示。

    • Gravatar 头像

      啦啦大侠 回复

      @随芯 请问你是怎么解决的啊,我也出现这种错误了

  18. Gravatar 头像

    why 回复

    你好,打扰了,正在学习您的ROS机器人开发实践书籍,第6章的launch文件中,加载robot_state_publisher时,功能包pkg的名字都是robot_state_publisher,但是type中有的是state_publisher,还有robot_state_publisher,在/opt/ros/indigo/lib/路径下找到了这两个robot_state_publisher节点和state_publisher节点,麻烦问一下有什么区别?谢谢!

      • Gravatar 头像

        回复

        @古月 在复现这个模型的时候,rviz只显示出了底盘,他的child全部没有显示出来,No transform from [plate_2_link] to [base_link],,请问如何解决,这本书的版本是kinetic吧

        • 古月

          古月 回复

          @王 是kinetic的,终端中是否有报错

    • Gravatar 头像

      套汉子 回复

      @why 胡老师好 , 今天学到课程三 运行 roslaunch usb_cam-test.launch 出现如下错误请问您有经验么

      Attempt to unlock mutex that was not locked
      [image_view-3] process has died [pid 8960, exit code -6, cmd /opt/ros/melodic/lib/image_view/image_view image:=/usb_cam/image_raw __name:=image_view __log:=/home/trojan/.ros/log/99b4905e-6045-11e9-b55e-505bc2d3f20d/image_view-3.log].
      log file: /home/trojan/.ros/log/99b4905e-6045-11e9-b55e-505bc2d3f20d/image_view-3*.log

      • 古月

        古月 回复

        @套汉子 可能是qt库以来的问题,可以试下重新安装image_view这个工具,或者直接用rqt_image_view

      • Gravatar 头像

        liang 回复

        @套汉子 您好 ,我也遇到了同样的问题,请问您解决了它吗,ubuntu18.04+ melodic

  19. Gravatar 头像

    张桥 回复

    胡老师好,感谢分享,最近在调试ur真实机器人,按照https://blog.csdn.net/fcc_bd_stars/article/details/78150729,但是最后机器人打开并不是实际机器人的位置,相当于没连接上,在rviz界面可以plan,但是按执行,机器人也动不了,而且运行的终端中,第一个终端出现([FATAL] [1544023726.940290490]: Error connecting to get firmware version terminate called after throwing an instance of 'std::system_error' what(): Invalid argument [ur_driver-3] process has died [pid 2712, exit code -6, cmd /home/zq/catkin_ws/devel/lib/ur_modern_driver/ur_driver __name:=ur_driver __log:=/home/zq/.ros/log/247860fa-f8a2-11e8-b86d-08107a325fbe/ur_driver-3.log]. log file: /home/zq/.ros/log/247860fa-f8a2-11e8-b86d-08107a325fbe/ur_driver-3*.log ) 第二个终端出现([ERROR] [1544023951.122617530]: Unable to identify any set of controllers that can actuate the specified joints: [ elbow_joint shoulder_lift_joint shoulder_pan_joint wrist_1_joint wrist_2_joint wrist_3_joint ] [ERROR] [1544023951.122656111]: Known controllers and their joints: ) 请问您知道这个问题如何解决吗?谢谢

    • Gravatar 头像

      徐xx 回复

      @张桥 你好 请问解决了吗?我遇到了一样的问题。

      • Gravatar 头像

        于广大 回复

        @徐xx 老师您好,我在rviz中的motion planning中已经做好了plan,但是在execute到gazebo时,一直失败,出现如下错误,
        [ERROR] [1544671003.842130253, 79.572000000]: Unable to identify any set of controllers that can actuate the specified joints: [ joint1 joint2 joint3 joint4 joint5 joint6 ]
        [ERROR] [1544671003.842152896, 79.572000000]: Known controllers and their joints:
        请问老师应该怎么解决,谢谢。

      • Gravatar 头像

        段彦卉 回复

        @徐xx 请问解决了吗?我也出现了一样的问题

  20. Gravatar 头像

    小罗 回复

    老师,http://ros-by-example.googlecode.com/svn/trunk/rbx_vol_1这个链接已经无法访问了,有没有新的链接呀?

  21. Gravatar 头像

    zlabc 回复

    老师您好,我在学习ros基础第三讲《机器人系统设计》时,执行sudo apt-get install ros-kinetic-usb-cam之后,然后执行roslaunch usb_cam uab_cam-test.launch出现以下的错误
    [uab_cam-test.launch] is neither a launch file in package [usb_cam] nor is [usb_cam] a launch file name
    The traceback for the exception was written to the log file,这个是因为什么呢?

    • Gravatar 头像

      zlabc 回复

      @zlabc 刚刚那个错误不对,应该是下面这个
      [ INFO] [1541148192.384718192]: Unable to open camera calibration file [/home/zlabc/.ros/camera_info/head_camera.yaml]
      [ WARN] [1541148192.384815717]: Camera calibration file /home/zlabc/.ros/camera_info/head_camera.yaml not found.
      [ INFO] [1541148192.384893260]: Starting 'head_camera' (/dev/video0) at 640x480 via mmap (yuyv) at 30 FPS
      [ERROR] [1541148192.385360021]: Cannot identify '/dev/video0': 2, No such file or directory
      [usb_cam-1] process has died [pid 2973, exit code 1, cmd /opt/ros/kinetic/lib/usb_cam/usb_cam_node __name:=usb_cam __log:=/home/zlabc/.ros/log/4e835706-de7b-11e8-8df5-000c29ca9966/usb_cam-1.log].
      log file: /home/zlabc/.ros/log/4e835706-de7b-11e8-8df5-000c29ca9966/usb_cam-1*.log
      [ INFO] [1541148192.804184030]: Using transport "raw"

      • 古月

        古月 回复

        @zlabc 系统没有摄像头设备'/dev/video0,用ubuntu自带的cheese试试有没有图像

            • 古月

              古月 回复

              @1 嗯,有的时候是需要自己编译

              • Gravatar 头像

                欧阳言涛 回复

                @古月 老师,我也是同样的问题,重新编译也无法解决,我的ROS版本是melodic,谢谢呀

              • Gravatar 头像

                欧阳言涛 回复

                @古月 错误信息始终是:
                using default calibration URL
                [ INFO] [1548159924.944573654]: camera calibration URL: file:///home/sasuke/.ros/camera_info/head_camera.yaml
                [ INFO] [1548159924.944651179]: Unable to open camera calibration file [/home/sasuke/.ros/camera_info/head_camera.yaml]
                [ WARN] [1548159924.944675958]: Camera calibration file /home/sasuke/.ros/camera_info/head_camera.yaml not found.
                [ INFO] [1548159924.944704344]: Starting 'head_camera' (/dev/video0) at 640x480 via mmap (yuyv) at 30 FPS
                [ WARN] [1548159925.253076338]: unknown control 'focus_auto'

                  • Gravatar 头像

                    欧阳言涛 回复

                    @古月 古老师,麻烦您看一下,弄了好久还是没好
                    (image_raw:7346): GLib-GObject-CRITICAL **: 20:08:02.181: g_object_unref: assertion 'G_IS_OBJECT (object)' failed

                    (image_raw:7346): GLib-GObject-CRITICAL **: 20:08:02.231: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
                    [ WARN] [1548677282.460567062]: unknown control 'focus_auto'

                    Attempt to unlock mutex that was not locked
                    [image_view-2] process has died [pid 7346, exit code -6, cmd /opt/ros/melodic/lib/image_view/image_view image:=/usb_cam/image_raw __name:=image_view __log:=/home/sasuke/.ros/log/6b2ae420-22f3-11e9-bd1d-54e1ad757075/image_view-2.log].
                    log file: /home/sasuke/.ros/log/6b2ae420-22f3-11e9-bd1d-54e1ad757075/image_view-2*.log
                    我还更新了软件源

                    • Gravatar 头像

                      Mint X

                      @欧阳言涛 请问你这个问题解决了吗?第一个warn focu_auto 好像是摄像头没有自动对焦功能的原因,不影响使用
                      第二个[image_view-2] process has died 不知道是为什么。

                    • Gravatar 头像

                      oyw

                      @欧阳言涛 请问一下你解决了吗,我也遇到哪个image view-2这个问题。

                • Gravatar 头像

                  回复

                  @欧阳言涛 你好,你打开相机的时候是不是只有一张照片啊

          • Gravatar 头像

            GJQ 回复

            @1 解决木有,遇到同样的问题,,,重新下载编译也不行

  22. Gravatar 头像

    袁圣 回复

    老师您好,我在使用您的《ROS机器人开发实践》,书中主要使用的机器人是MRobot,我想知道怎么安装MRobot的包,我没有办法运行roslaunch mrobot_bringup mrobot.launch这一类的指令,谢谢您

    • 古月

      古月 回复

      @袁圣 书中涉及的代码都在配套的源码包中,mrobot_bringup是用来启动真机的,需要连接机器人,如果没有真机的话,可以按照书中的仿真步骤学习

  23. Gravatar 头像

    jack 回复

    老师您好。请问。系统文件中,有的文件属性是文件。文本打开是乱码。这个是什么文件,怎么打开。谢谢了。

  24. Gravatar 头像

    kcheng 回复

    老师你好,我最近才开始接触ROS,也买了你出的那本机器人开发实践看看,就是我现在有个问题想问一下你,我最近在用turtlebot3_burger,想在rviz上添加三个机器人进行导航仿真,修改了一些相关的配置文件,但是最后运行仿真的时候终端会出现如下警告:
    [ WARN] [1534476884.901859122, 1064.729000000]: Timed out waiting for transform from base_footprint to map to become available before running costmap, tf error: canTransform: target_frame map does not exist. canTransform: source_frame base_footprint does not exist.. canTransform returned after 0.1 timeout was 0.1.
    在rviz界面的显示项列表处,global status出现了以下错误:
    Fixed Frame
    Fixed Frame [map] does not exist
    robot model出现以下错误:
    URDF
    Parameter [robot_description] does not exist, and was not found by searchParam()

    我想请问一下,这个是哪方面的问题啊?为什么说robot description不存在啊,启动文件里面我明明已经添加了相关命令啊。

    • 古月

      古月 回复

      @kcheng 首先检查map坐标系,这个是rviz默认的,但是如果不是导航或slam,是没有这个坐标系的,改成odom或者base_link。
      然后再看下robot_description的问题,这个是在launch文件里用rosparam加载模型路径就行了

    • Gravatar 头像

      蓝斯 回复

      @kcheng 你好,我也想在rviz中添加多个机器人,请问您是怎么配置的呢?想学习一下,谢谢

  25. Gravatar 头像

    刘鸿魁 回复

    您好,我是个新手,请帮忙指教下,出现这个错误是什么问题,怎么解决。
    通过远程软件nomachine远程打开RVIZ是出现的错误。
    yh@yh-Default-string:~$ rviz
    [ INFO] [1534383470.579175790]: rviz version 1.11.19
    [ INFO] [1534383470.579221232]: compiled against Qt version 4.8.6
    [ INFO] [1534383470.579234698]: compiled against OGRE version 1.8.1 (Byatis)
    段错误 (核心已转储)
    yh@yh-Default-string:~$

  26. Gravatar 头像

    时雨、 回复

    古月老师您好,我是一个ROS初学者,最近实验室新购了一台UR5机械臂(版本是3.4的)我用PC与机械臂通讯的时候,执行命令
    roslaunch ur_modern_driver ur5_bringup.launch robot_ip:=192.168.199.10,
    会出现
    [FATAL] [1533265350.229877228]: Error connecting to get firmware version
    以及
    [ur_driver-2] process has died [pid 4386, exit code -6, cmd /home/zxc/catkin_ws/devel/lib/ur_modern_driver/ur_driver __name:=ur_driver __log:=/home/zxc/.ros/log/a0347878-96c8-11e8-a6f4-00e0703128ea/ur_driver-2.log].
    log file: /home/zxc/.ros/log/a0347878-96c8-11e8-a6f4-00e0703128ea/ur_driver-2*.log
    这样的错误,在网上也没找到解决办法,请问是怎么回事,如何解决?
    非常感谢!

    • 古月

      古月 回复

      @时雨、 有可能是软件的版本问题或者是ur控制器的配置问题,关于UR的驱动不止ur_driver,也可以用ur_modern_driver,另外就是确认UR的控制器有没有配置好。

    • Gravatar 头像

      张桥 回复

      @时雨、 可以看看自己的电脑有没有设置静态IP等

    • Gravatar 头像

      商人 回复

      @时雨、 @时雨,你好。请问你的问题解决啦吗?我也遇到相同的问题。求指教!

  27. Gravatar 头像

    赖瑨 回复

    老师,我在编译空间时运行catkin_make命令,发现会出现以下错误,提示我std_mags找不到的错误,请问怎么解决啊,是直接在那个文件包里添加吗,以下为系统给出的错误:
    CMake Error at /opt/ros/indigo/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
    Could not find a package configuration file provided by "std_mags" with any
    of the following names:

    std_magsConfig.cmake
    std_mags-config.cmake

    Add the installation prefix of "std_mags" to CMAKE_PREFIX_PATH or set
    "std_mags_DIR" to a directory containing one of the above files. If
    "std_mags" provides a separate development package or SDK, be sure it has

  28. Gravatar 头像

    leslie 回复

    老师,我在用MOVEIT驱动自己配置的机械臂的时候出现以下报错:PluginlibFactory: The plugin for class 'moveit_rviz_plugin/MotionPlanning' failed to load. Error: Failed to load library /home/widowx/widowx_arm/devel/lib/libmoveit_motion_planning_rviz_plugin.so. Make sure that you are calling the PLUGINLIB_EXPORT_CLASS macro in the library code, and that names are consistent between this macro and your XML. Error string: Could not load library (Poco exception = libmoveit_planning_scene_interface.so.0.9.10: cannot open shared object file: No such file or directory)
    请问您有什么解决方法??谢谢了

    • Gravatar 头像

      Lrduino 回复

      @leslie qing wen nin jiejue le ma?wo yeshi zhege wenti... 😀

  29. Gravatar 头像

    male 回复

    大神你好 ROS新手配置环境是ubuntu 14.04+indigo 使用moveit配置一个三指机械手后,用roslaunch demo.launch打开时出现了如下错误:Traceback (most recent call last):
    File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/__init__.py", line 307, in main
    p.start()
    File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/parent.py", line 268, in start
    self._start_infrastructure()
    File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/parent.py", line 217, in _start_infrastructure
    self._load_config()
    File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/parent.py", line 132, in _load_config
    roslaunch_strs=self.roslaunch_strs, verbose=self.verbose)
    File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/config.py", line 451, in load_config_default
    loader.load(f, config, verbose=verbose)
    File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 746, in load
    self._load_launch(launch, ros_config, is_core=core, filename=filename, argv=argv, verbose=verbose)
    File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 718, in _load_launch
    self._recurse_load(ros_config, launch.childNodes, self.root_context, None, is_core, verbose)
    File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 682, in _recurse_load
    val = self._include_tag(tag, context, ros_config, default_machine, is_core, verbose)
    File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 95, in call
    return f(*args, **kwds)
    File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 625, in _include_tag
    default_machine, is_core, verbose)
    File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 652, in _recurse_load
    default_machine, is_core, verbose)
    File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 678, in _recurse_load
    self._rosparam_tag(tag, context, ros_config, verbose=verbose)
    File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 95, in call
    return f(*args, **kwds)
    File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/xmlloader.py", line 238, in _rosparam_tag
    self.load_rosparam(context, ros_config, cmd, param, file, value, verbose=verbose)
    File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/loader.py", line 428, in load_rosparam
    self.add_param(ros_config, full_param, data, verbose=verbose)
    File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/loader.py", line 357, in add_param
    self.add_param(ros_config, ns_join(param_name, k), v, verbose=verbose)
    File "/opt/ros/indigo/lib/python2.7/dist-packages/rosgraph/names.py", line 172, in ns_join
    if is_private(name) or is_global(name):
    File "/opt/ros/indigo/lib/python2.7/dist-packages/rosgraph/names.py", line 133, in is_private
    return name and name[0] == PRIV_NAME
    TypeError: 'int' object has no attribute '__getitem__'
    nan@nan-virtual-machine:~/catkin_ws$
    想请问一下这个错误如何解决?

    • 古月

      古月 回复

      @male 这个不太好看出来是什么问题,但是从报错的类型上看,像是模型解析的有问题,先检查一下模型吧

      • Gravatar 头像

        male 回复

        @古月 @古月 好像是模型的问题配置moveit文件时有warn
        [ WARN] [1523878486.155233627]: The STL file 'package://robotiq_hand_description/meshes/s-model_articulated/visual/link_0.STL' is malformed. It starts with the word 'solid', indicating that it's an ASCII STL file, but it does not contain the word 'endsolid' so it is either a malformed ASCII STL file or it is actually a binary STL file. Trying to interpret it as a binary STL file instead.
        [ WARN] [1523878486.156633431]: The STL file 'package://robotiq_hand_description/meshes/s-model_articulated/visual/link_1.STL' is malformed. It starts with the word 'solid', indicating that it's an ASCII STL file, but it does not contain the word 'endsolid' so it is either a malformed ASCII STL file or it is actually a binary STL file. Trying to interpret it as a binary STL file instead.
        [ WARN] [1523878486.158444577]: The STL file 'package://robotiq_hand_description/meshes/s-model_articulated/visual/link_2.STL' is malformed. It starts with the word 'solid', indicating that it's an ASCII STL file, but it does not contain the word 'endsolid' so it is either a malformed ASCII STL file or it is actually a binary STL file. Trying to interpret it as a binary STL file instead.
        [ WARN] [1523878486.160306424]: The STL file 'package://robotiq_hand_description/meshes/s-model_articulated/visual/link_3.STL' is malformed. It starts with the word 'solid', indicating that it's an ASCII STL file, but it does not contain the word 'endsolid' so it is either a malformed ASCII STL file or it is actually a binary STL file. Trying to interpret it as a binary STL file instead.
        [ WARN] [1523878486.164931371]: The STL file 'package://robotiq_hand_description/meshes/s-model_articulated/visual/palm.STL' is malformed. It starts with the word 'solid', indicating that it's an ASCII STL file, but it does not contain the word 'endsolid' so it is either a malformed ASCII STL file or it is actually a binary STL file. Trying to interpret it as a binary STL file instead.
        这种情况该如何处理呢?

        • Gravatar 头像

          阿斯蒂芬 回复

          @male 请问你后面怎么解决的呢?主要问题是出在哪里?

  30. Gravatar 头像

    - 回复

    运行ros rviz rviz出现:
    Qt:XKEYBOARD extension not present on the X server
    xlib:extension"RANDR" missing on display ":10.0"
    [INFO] [1523238844.054402278]:rviz version 1.112.11
    [INFO] [1523238844.056887945]:complied against Qt version 5.5.1
    [INFO] [1523238844.058760334]: conmplied against OGRE version 1.9.0(Ghadamon)段错误
    您让我重新下rviz这个包,但是下过之后运行还是会提示段错误

    • 古月

      古月 回复

      @- 这个就不清楚了,感觉是和qt或者显卡有关系的,或者是版本之间的问题,谷歌搜一下吧

  31. Gravatar 头像

    RING 回复

    你好,我是初学者,想请问sim_fuerte.vcg在新的包里面是没有的,只有sim.rviz,但是这个里面没有camera type,我该怎么编写,改变视角呢?

    • 古月

      古月 回复

      @RING 本文是旧版本的ROS,参考新版本的代码:http://download.csdn.net/detail/darkmoonkiller/9662483

  32. Gravatar 头像

    知者 回复

    我照着ros by example sudo apt-get install ros-indigo-arbotix-*显示未发现软件包

    • Gravatar 头像

      知者 回复

      @知者 用的是indigo版本

      • 古月

        古月 回复

        @知者 indigo版本是可以安装arbotix的,你用的是bash么?

        • Gravatar 头像

          知者 回复

          @古月 谢谢了,我是在树莓派上面源码装的indigo。。不能用apt-get装ros包,已经源码安装了。但最近运行roslaunch turtlebot_fake_laser_freenect.launch出错。
          Traceback (most recent call last):
          File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/__init__.py", line 307, in main
          p.start()
          File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/parent.py", line 268, in start
          self._start_infrastructure()
          File "/opt/ros/indigo/lib/python2.7/dist-packages/roslaunch/substitution_args.py", line 188, in _find_executable
          full_path = _get_executable_path(rp.get_path(args[0]), path)
          File "/usr/local/lib/python2.7/dist-packages/rospkg/rospack.py", line 203, in get_path
          raise ResourceNotFound(name, ros_paths=self._ros_paths)
          ResourceNotFound: rgbd_launch
          ROS path [0]=/opt/ros/indigo/share/ros
          ROS path [1]=/home/pi/workspace/src
          ROS path [2]=/opt/ros/indigo/share
          ROS path [3]=/opt/ros/indigo/stacks
          我已经找到rgbd,而且给了权限还是不行

          • 古月

            古月 回复

            @知者 树莓派可以用apt-get安装ROS的,源码编译的方式会少装很多依赖,后边问题会更多。你这里的错误提示是没有安装rgbd-launch功能包,使用apt-get安装的命令:apt-get install ros-indigo-rgbd-launch

            • Gravatar 头像

              知者 回复

              @古月 我装的是indigo版本,树莓派好像不支持这个版本。。没有ubuntu14.04.所以在raspbain上源码装的indigo,用apt-get install ros-*就报错,其他人说只能源码装。。。还是谢谢了。我试试装rgbd-launch

              • Gravatar 头像

                知者 回复

                @知者 安装完后运行,出现一堆红色错误,最后出现 INFO No devices connected。但我用lsusb查看,显示已经连接了

                  • Gravatar 头像

                    知者 回复

                    @古月 sudo:./install.sh:找不到命令

                    • 古月

                      古月

                      @知者 进入到解压缩的那个文件里执行。里边有install.sh

                  • Gravatar 头像

                    知者 回复

                    @古月 registering module 'libXnDeviceSensorV2KM.so' with OpenNI.../usr/bin/niReg: 1: /usr/bin/niReg: ELF: not found 还是以前的情况,找不到nireg,关键是有这个文件,我也给了权限

                    • 古月

                      古月

                      @知者 感觉还是各种依赖的问题,源码编译会遇到很多类似的问题,google一下吧。如果你用的是树莓派3的话,可以装ubuntu16.04+kinetic,用命令行装会自动安装依赖

  33. Gravatar 头像

    dazhuang 回复

    您好!~我在做roslaunch rbx1_bringup fake_turtlebot.launch的时候,一直是下面的错误,用了很多办法,也解决不了。求救
    [fake_turtlebot.launch] is neither a launch file in package [rbx1_bringup] nor is [rbx1_bringup] a launch file name
    The traceback for the exception was written to the log file

  34. Gravatar 头像

    xyf 回复

    你好,请问我在运行模拟器: roslaunch rbx1_bringup fake_pi_robot.launch 时,
    提示错误如下:
    Traceback (most recent call last):
    File "/home/xyf/catkin_ws/src/arbotix_ros/arbotix_python/bin/arbotix_driver", line 33, in
    from arbotix_msgs.msg import *
    ImportError: No module named arbotix_msgs.msg
    [arbotix-1] process has died ……
    而且我确定已经有了arbotix_msgs这个包

          • Gravatar 头像

            xyf 回复

            @古月 我搞清楚怎么回事了,我偶然在工作空间运行了rosdep install命令,就是安装了包的依赖,结果再运行就可以了,说实话没想到您回复这么快,非常非常感谢!

            • 古月

              古月 回复

              @xyf 解决了就好,一般情况下,缺少依赖会在编译过程中就报错,你这个我确实没想到,学习了

              • Gravatar 头像

                lh 回复

                @古月 您好,请问一下我也是这个问题,版本kinetic,求解决方法,最近一直被这个问题困扰,谢谢,我不知道怎么增加依赖,我的arbotix安装在了catkinws的src里面

                • 古月

                  古月 回复

                  @lh 在工作空间里运行:rosdep install

            • Gravatar 头像

              lh 回复

              @xyf 您好,我和你状况一样,一直是这样报错,您能详细说一下怎么解决的么?版本也是kinetic,谢谢

            • Gravatar 头像

              吴迪华 回复

              @xyf 古月老师,我在运行roslaunch cob_people_detection people_detection.launch后出现了[face_recognizer-4] process has died [pid 17526, exit code -6, cmd /home/wudihua/catkin_ws/devel/lib/cob_people_detection/face_recognizer_node ~face_positions:=face_detector/face_positions __name:=face_recognizer __log:=/home/wudihua/.ros/log/9f6eeee0-4791-11e8-ab1c-9cd21e6d3cf1/face_recognizer-4.log].
              log file: /home/wudihua/.ros/log/9f6eeee0-4791-11e8-ab1c-9cd21e6d3cf1/face_recognizer-4*.log
              [face_capture-8] process has died [pid 17572, exit code -6, cmd /home/wudihua/catkin_ws/devel/lib/cob_people_detection/face_capture_node ~face_detections:=face_detector/face_positions ~color_image:=sensor_message_gateway/colorimage_out __name:=face_capture __log:=/home/wudihua/.ros/log/9f6eeee0-4791-11e8-ab1c-9cd21e6d3cf1/face_capture-8.log].
              log file: /home/wudihua/.ros/log/9f6eeee0-4791-11e8-ab1c-9cd21e6d3cf1/face_capture-8*.log
              这是什么问题呀

            • Gravatar 头像

              zss 回复

              @xyf 你好,我也遇到了你这样的问题,能详细说一下吗,谢谢了,

      • Gravatar 头像

        sundong 回复

        @古月 您好,我也遇到了一模一样的问题,麻烦说一下具体解决方法行吗,比如说下载包放在哪个文件夹,怎么用rosdep等?感谢

    • Gravatar 头像

      lnp 回复

      @xyf 请问rosdep install 后面接什么,在哪个目录执行此命令,我也遇到这个问题,感谢

      • Gravatar 头像

        lnp 回复

        @lnp 已解决,需要catkin_make arbotix_ros 下面所有的包

        • Gravatar 头像

          lzm 回复

          @lnp 您好 我把arbotix_ros放在工作空间的src下 然后catkin_make还是出现No module named arbotix_msgs.msg 请问你是如何解决的?

  35. Gravatar 头像

    JoeyChan 回复

    Arg xml is
    The traceback for the exception was written to the log file
    这样的。。

  36. Gravatar 头像

    JoeyChan 回复

    Arg xml is
    The traceback for the exception was written to the log file
    不好意思上条不完整!

  37. Gravatar 头像

    JoeyChan 回复

    大神您好,我是一个ROS新手,最近在运行一个demo时候遇到以下问题,键入:roslaunch robot_sim_demo robot_spawn.launch提示:
    ... logging to /home/joeychan/.ros/log/c2b8bfac-21b7-11e8-b3b9-080027cd9c90/roslaunch-joeychan-VirtualBox-2924.log
    Checking log directory for disk usage. This may take awhile.
    Press Ctrl-C to interrupt
    Done checking log file disk usage. Usage is <1GB.

    Invalid tag: robot_sim_demo
    ROS path [0]=/opt/ros/kinetic/share/ros
    ROS path [1]=/opt/ros/kinetic/share.

    Arg xml is
    The traceback for the exception was written to the log file
    网上遍寻无果,期待解答!谢谢!

    • 古月

      古月 回复

      @JoeyChan 你好,这个问题是因为ROS找不到robot_sim_demo 这个包,确认一下这个包的位置在哪,如果是在自己创建的工作空间中,需要设置环境变量

      • Gravatar 头像

        何勇 回复

        @古月 古老师,您好!我在launch节点是出现了下列问题:
        roslaunch robot_sim_demo robot_spawn.launch
        ... logging to /home/chen/.ros/log/6c4890c4-96f2-11e8-9277-1c1b0dc32b63/roslaunch-604-17234.log
        Checking log directory for disk usage. This may take awhile.
        Press Ctrl-C to interrupt
        Done checking log file disk usage. Usage is <1GB.

        Traceback (most recent call last):
        File "/opt/ros/kinetic/share/xacro/xacro.py", line 55, in
        import xacro
        File "/opt/ros/kinetic/lib/python2.7/dist-packages/xacro/__init__.py", line 35, in
        import glob
        File "/home/chen/anaconda3/lib/python3.6/glob.py", line 4, in
        import re
        ModuleNotFoundError: No module named 're'
        while processing /home/chen/catkin_ws/src/ROS-Academy-for-Beginners/robot_sim_demo/launch/include/xbot-u.launch.xml:
        Invalid tag: Cannot load command parameter [robot_description]: command [/opt/ros/kinetic/share/xacro/xacro.py /home/chen/catkin_ws/src/ROS-Academy-for-Beginners/robot_sim_demo/urdf/robot.xacro] returned with code [1].

        Param xml is
        The traceback for the exception was written to the log file
        感谢您的解答!

  38. Gravatar 头像

    雲水 回复

    古大神你好,我按照教程學習到rviz,安裝了arbotix_ros和rbx1兩個包,運行roslaunch rbx1_bringup fake_turtlebot.launch和rosrun rviz rviz -d `rospack find rbx1_nav`/nav_fuerte.rviz兩個命令都沒問題,但是運行roslaunch rbx1_nav fake_move_base_map_with_obstacles.launch命令打開地圖就出現
    ERROR: cannot launch node of type [move_base/move_base]: can't locate node [move_base] in package [move_base]
    ERROR: cannot launch node of type [map_server/map_server]: can't locate node [map_server] in package [map_server]
    process[odom_map_broadcaster-3]: started with pid [10836]
    的錯誤,困擾了很久,希望您看到後可以答復我

  39. Gravatar 头像

    zkw1996 回复

    大神,我是Ubuntu16.04+kinetiv,怎么才能改变控制开发者的观察角度??
    我试了评论里的那个,改动之后还是俯视的视角啊。。。。

  40. Gravatar 头像

    灰白 回复

    古月你好 我按照步骤下来 出现了一处错误
    ERROR: cannot launch node of type [arbotix_python/arbotix_driver]: arbotix_python
    ROS path [0]=/opt/ros/jade/share/ros
    ROS path [1]=/home/enzhi/airbox/src
    ROS path [2]=/home/enzhi/catkin/src
    ROS path [3]=/opt/ros/jade/share
    ROS path [4]=/opt/ros/jade/stacks
    不知道是什么原因导致的 说是没添加搜索路径 新手不知道具体怎么解决 希望大神帮忙解答一下

    • 古月

      古月 回复

      @灰白 没有安装arbotix_python功能包,使用apt-get命令安装一下

      • Gravatar 头像

        灰白 回复

        @古月 我用sudo apt-get install arbotix_python 代码安装 但他显示未发现软件包 有点晕 不知道具体安装代码是多少

        • 古月

          古月 回复

          @灰白 sudo apt-get install ros-indigo-arbotix-python,安装ROS包要加“ros-indigo-”前缀

  41. Gravatar 头像

    uka_saegusa 回复

    古大神,你好。我已经学过了官方教程,安装的是kinetic版本,在学习ros by example的时候,用git clone下载了 kinetic 版本的arbotix和rbx1源码包,再catkin_make安装并且source。然后启动 roslaunch rbx1_bringup fake_turtlebot.launch正常。最后执行rosrun rviz rviz -d `rospack find rbx1_nav`/sim.rviz,后提示:
    [rospack] Error: package 'rbx1_nav' not found
    [ INFO] [1512712743.440376461]: rviz version 1.12.13
    [ INFO] [1512712743.440430495]: compiled against Qt version 5.5.1
    [ INFO] [1512712743.440443140]: compiled against OGRE version 1.9.0 (Ghadamon)
    [ INFO] [1512712743.568780666]: Stereo is NOT SUPPORTED
    [ INFO] [1512712743.568928781]: OpenGl version: 3 (GLSL 1.3).
    在rviz界面没有看到机器人模型,界面中Global Status后显示红色的“Error”,请问是怎么回事。

    • 古月

      古月 回复

      @uka_saegusa rbx1_nav包没有找到,rviz的配置文件失败,检查一下路径和环境变量,也可以自己在rviz中添加机器人模型的显示项

    • Gravatar 头像

      ranpenghao 回复

      @uka_saegusa 你搞定这个问题了么,怎么搞定的呢,能否告诉我一下,谢谢

      • Gravatar 头像

        zkw1996 回复

        @ranpenghao 这个的话,好像source devel/setup.bash之后就好了

    • Gravatar 头像

      知者 回复

      @uka_saegusa 解决了没,我也出现了这个问题

  42. Gravatar 头像

    李鸿彬 回复

    古月大神您好,当我运行roslaunch rbx1_bringup fake_pi_robot.launch时,出现错误:
    ERROR: cannot launch node of type [robot_state_publisher/state_publisher]: can't locate node [state_publisher] in package [robot_state_publisher]
    请问是怎么回事?

    • Gravatar 头像

      helloworld 回复

      @李鸿彬 建议你在cd ~/catkin_ws下先source devel/setup.bash 后,再输入roslaunch rbx1_bringup fake_pi_robot.launch

      • Gravatar 头像

        李鸿彬 回复

        @helloworld 您好,我试了一下source devel/setup.bash,但依然还有上述错误,而且我在学习教程过程中遇到过好几次这个错误,请问还有什么解决办法吗?

          • Gravatar 头像

            李鸿彬 回复

            @古月 已经写了,还是不行

              • Gravatar 头像

                李鸿彬 回复

                @古月 安装了,而且重装了两次,不行

              • Gravatar 头像

                李鸿彬 回复

                @古月 您好,问题已经解决了,我在官网上下载了一个robot_state_publisher的ros包,放在src里就可以了,多谢啊

  43. Gravatar 头像

    dddff 回复

    你好,向你请教一个问题每次我运行rosrun rviz rviz 后打开了rviz 就会出现Global status:Erro Fixed Frame [map] does not exist,请问怎么办,百度了没有结果

    • 古月

      古月 回复

      @dddff 没关系,默认启动后的坐标系是map,但是系统中可能不存在,可以在Fixed Frame那里选择存在的坐标系,比如base_link等

      • Gravatar 头像

        dddff 回复

        @古月 已经解决了,在rosrun rviz rviz输入指令之前,忘记source一下路径了,总之谢谢大神!

        • Gravatar 头像

          pw 回复

          @dddff 哥们儿,咋source的。

  44. Gravatar 头像

    程大亮 回复

    古月大神你好,请问一下我的ROS 版本是kinetic 在安装rbx1功能包时出错了,出错代码是$ git checkout kinetic-devel
    error: pathspec 'kinetic-devel' did not match any file(s) known to git.请问怎么办?

  45. Gravatar 头像

    zlz 回复

    前辈,你好,请问我在运行模拟器: roslaunch rbx1_bringup fake_pi_robot.launch 时,
    提示错误如下:
    ImportError: No module named arbotix_msgs.msg
    [arbotix-1] process has died ……
    是什么原因造成的呢,请问怎样解决,谢谢!!!

    • Gravatar 头像

      xyf 回复

      @zlz 我也遇到同样问题,请问如何解决?

    • Gravatar 头像

      xyf 回复

      @zlz 你好,请问我在运行模拟器: roslaunch rbx1_bringup fake_pi_robot.launch 时,
      提示错误如下:
      Traceback (most recent call last):
      File "/home/xyf/catkin_ws/src/arbotix_ros/arbotix_python/bin/arbotix_driver", line 33, in
      from arbotix_msgs.msg import *
      ImportError: No module named arbotix_msgs.msg
      [arbotix-1] process has died ……
      而且我确定已经有了arbotix_msgs这个包

      • Gravatar 头像

        lzm 回复

        @xyf 你好 我现在也出现这样的问题 最后你是如何解决的呢

      • Gravatar 头像

        坠落北极星 回复

        @古月 请问,在运行完您给的命令git clone https://github.com/pirobot/rbx1之后还需要rosmake rbx_vol_1 吗,如果需要该怎么运行的,你运行了一遍,一直报错 rosmake ] Expanded args ['rbx_vol_1'] to:
        []
        [ rosmake ] WARNING: The following args could not be parsed as stacks or packages: ['rbx_vol_1']
        [ rosmake ] ERROR: No arguments could be parsed into valid package or stack names.

        • 古月

          古月 回复

          @坠落北极星 这篇博客用的是老版本的ROS,已经不适用新版本ROS了,建议按照《ros by example》这本书里的命令安装,需要使用catkin_make

  46. Gravatar 头像

    纳兰嫣然 回复

    大神,你好,我刚接触ROS ,在学初学者的例程。每次编译有关qrt的命令时都会出现这个错误:
    ImportError: No module named PyQt4.QtCore

    ImportError for 'pyside': No module named PySide.QtCore
    Traceback (most recent call last):
    File "/opt/ros/indigo/lib/python2.7/dist-packages/python_qt_binding/binding_helper.py", line 87, in _select_qt_binding
    QT_BINDING_VERSION = binding_loader(required_modules, optional_modules)
    File "/opt/ros/indigo/lib/python2.7/dist-packages/python_qt_binding/binding_helper.py", line 181, in _load_pyside
    _named_import('PySide.%s' % module_name)
    File "/opt/ros/indigo/lib/python2.7/dist-packages/python_qt_binding/binding_helper.py", line 111, in _named_import
    module = builtins.__import__(name)
    ImportError: No module named PySide.QtCore
    麻烦,有时间的话,帮我解答一下,万分感谢!

  47. Gravatar 头像

    恶魔的眼泪 回复

    请问显示:Global status :Error是什么错误呢?没有显示机器人

    • Gravatar 头像

      Magenta 回复

      @恶魔的眼泪 我也遇到了同样的问题,全都是按照教程来的,就是没有机器人

      • Gravatar 头像

        MrLee 回复

        @Magenta 哥们你解决了么?是不是少装了什么呢?

        • 古月

          古月 回复

          @MrLee 试一下这个Indigo版本的代码:http://download.csdn.net/detail/darkmoonkiller/9662483

      • 古月

        古月 回复

        @Magenta 试一下这个Indigo版本的代码:http://download.csdn.net/detail/darkmoonkiller/9662483

    • 古月

      古月 回复

      @恶魔的眼泪 试一下这个Indigo版本的代码:http://download.csdn.net/detail/darkmoonkiller/9662483

    • Gravatar 头像

      eijuhc 回复

      @恶魔的眼泪 刚刚解决,rviz中的设置改成和书上的图一样。fixed frame的值改成odom, 再点add加其他几项。就好了。

  48. Gravatar 头像

    蓝瘦 回复

    我启动这个的饿时候,roslaunch rbx1_nav fake_move_base_blank_map.launch,出现
    [move_base-2] process has died [pid 105003, exit code -6, cmd /opt/ros/indigo/lib/move_base/move_base __name:=move_base __log:=/home/turtlebot/.ros/log/eea77f3a-611f-11e7-ab52-000c298ee314/move_base-2.log].
    log file: /home/turtlebot/.ros/log/eea77f3a-611f-11e7-ab52-000c298ee314/move_base-2*.log
    ,该如何是好?

  49. Gravatar 头像

    heisenberg 回复

    老哥 看来需要做一能连续看文章的功能按钮了,比如下一篇文章的链接什么的 :mrgreen: :mrgreen:

  50. Gravatar 头像

    heisenberg 回复

    老哥 看来需要做一能连续看文章的功能按钮了,比如下一篇文章的链接什么的

  51. Gravatar 头像

    落叶 回复

    请问安装时:svn checkout http://vanadium-ros-pkg.googlecode.com/svn/trunk/arbotix
    出现svn: E000110: Unable to connect to a repository at URL 'http://vanadium-ros-pkg.googlecode.com/svn/trunk/arbotix'
    svn: E000110: 执行上下文错误: 连接超时
    这是什么原因呢?

    • 古月

      古月 回复

      @落叶 现在可以不用svn安装了,直接apt-get安装相应ros版本的即可

      • Gravatar 头像

        落叶 回复

        @古月 我是新手,请问我具体输入什么命令呢?直接把svn改成apt_get么?

  52. Gravatar 头像

    寻寻觅觅归乡路 回复

    新版里观看视角修改:.rviz文件里的Views配置,一般在后面的位置,Orbit是自由视角,俯视TopDownOrtho

  53. Gravatar 头像

    上帝之手 回复

    请问执行roslaunch rbx1_bringup fake_turtlebot.launch出现一下错误,请问如何解决
    Cannot load command parameter [robot_description]: command [/opt/ros/indigo/share/xacro/xacro.py '/opt/ros/indigo/share/turtlebot_description/urdf/turtlebot.urdf.xacro'] returned with code [1].

  54. Gravatar 头像

    ke_wu 回复

    古月大大,麻烦问一下,我每次想用rviz现实turtlebot或者pi robot时候就会出现Detected jump back in time. Clearing TF buffer.
    段错误 (核心已转储)。
    但是我也不知道是哪溢出了啊。求解,困扰很久了

  55. Gravatar 头像

    思良月6 回复

    博主,您好!我是一个ROS初学者,我按照上面的命令下载代码的时候,出现这种情况。
    lang@ubuntu:~$ svn checkout http://ros-by-example.googlecode.com/svn/trunk/rbx_vol_1
    svn: E000110: Unable to connect to a repository at URL 'http://ros-by-example.googlecode.com/svn/trunk/rbx_vol_1'
    svn: E000110: Error running context: Connection timed out
    可以请教一下是这个网址失效了吗?

      • Gravatar 头像

        大鹏哥 回复

        @古月 下载好rbx1那个文件夹应该放在哪里呢?在使用roslaunch的时候,报错了

    • Gravatar 头像

      张香怡 回复

      @思良月6 古老师你好。我电脑是双系统。ubuntu下我之前运行USB摄像头都没有问题,有一次清理内存删掉一点东西。后来运行基本的usb_cam-test.launch会显示[ INFO] [1562478829.127140803]: Starting 'head_camera' (/dev/video0) at 640x480 via mmap (yuyv) at 30 FPS
      [ERROR] [1562478829.127173888]: Cannot identify '/dev/video0': 2, No such file or directory
      运行cheese也显示未发现设备,但是在windows系统这个摄像头运行依旧没有问题,请问您知道该怎么办吗

  56. Gravatar 头像

    ychx 回复

    忘记说了我是jade版本,这个有啥影响吗

  57. Gravatar 头像

    ychx 回复

    你好,我是一个ROS初学者,从官网wiki学完了初级阶段,在rosmake rbx_vol_1 和 rosmake arbotix都出现了
    [ rosmake ] rosmake starting...
    [ rosmake ] Packages requested are: ['rbx_vol_1']
    [ rosmake ] Logging to directory /home/ychx/.ros/rosmake/rosmake_output-20160407-192400
    [ rosmake ] Expanded args ['rbx_vol_1'] to:
    []
    [ rosmake ] WARNING: The following args could not be parsed as stacks or packages: ['rbx_vol_1']
    [ rosmake ] ERROR: No arguments could be parsed into valid package or stack names.
    这样的错误,搜索答案的时候说是环境配置出错,由于是新手所以具体不会操作,麻烦你能帮我解答下,对环境配置方面基本小白,能给我推荐一个学习的网页,谢谢啦~~~

    • Gravatar 头像

      TifferPelode 回复

      @ychx 试下 export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:`pwd`

      • Gravatar 头像

        DingXu 回复

        @TifferPelode 我的也这样,试了这个代码不行,怎么个问题?

      • Gravatar 头像

        刘硕 回复

        @TifferPelode 老师,我在运行 roslaunch usb_cam usb_cam-test.launch时出现:Attempt to unlock mutex that was not locked
        [image_view-3] process has died [pid 8988, exit code -6, cmd /opt/ros/melodic/lib/image_view/image_view image:=/usb_cam/image_raw __name:=image_view __log:=/home/liushuo/.ros/log/0a20da96-3fc1-11e9-8078-44032cd8e302/image_view-3.log].
        log file: /home/liushuo/.ros/log/0a20da96-3fc1-11e9-8078-44032cd8e302/image_view-3*.log
        ,请问怎么办,我之前成功了,但是现在又不行了,出不来摄像

      • Gravatar 头像

        ychx 回复

        @古月 谢谢了啊,我安装成indigo之后就好了

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据