问题标签 [gazebo-simu]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1069 浏览

ros - 如何将rviz中的机器人位置[amcl_pose(x,y)]设置为左上角的(0.0000,0.00000)

我在凉亭中创建了一个小地图,在启动凉亭、RVIZ 和地图服务器后,机器人正在地图中间加载,并且 (x,y) 位置为 (0.00000,0.00000),如图所示。

在此处输入图像描述

我想在地图的左上角加载机器人,该坐标的位置应该是(0.00000,0.00000)。我怎样才能做到这一点?

0 投票
1 回答
598 浏览

ros - 大型室内凉亭环境

我正在胡椒凉亭模拟器中进行一些导航评估。到目前为止,我一直在turtlebot3 世界上使用我的导航堆栈,但我想在更大的环境中测试我的堆栈。有谁知道是否有一些更大的已经构建的环境以及在凉亭中使用的预先构建的环境地图?谢谢

0 投票
1 回答
668 浏览

ros - 两个物体接触时的 Gazebo 奇怪行为

您好 Stack Overflow 上的 Gazebo/ROS 社区,我正在尝试使用 Gazebo/ROS Kinetic 模拟四轴飞行器在杆上的着陆。然而,一旦无人机接触着陆杆,它就会以一种非常不切实际的方式弹开。无人机和杆子都定义了它们的质量、惯性和摩擦力。

此处提供视频: https ://youtu.be/8Iis60y5_yk

谁能给我一些指点?非常感谢您的帮助!

这是 .world 文件:

这是着陆杆的 xacro 文件:

这是无人机底座的 xacro 文件:

0 投票
1 回答
2129 浏览

c++ - 从 (x,y) 像素坐标获取 3D 世界坐标

我对 ROS/Gazebo 世界完全陌生;这可能是一个简单的问题,但我找不到一个好的答案。

我在 Gazebo 场景中有一个模拟深度相机(Kinect)。经过一些阐述,我在像素坐标中的 RGB 图像中得到了一个兴趣点,我想在世界框架中检索它的 3D 坐标。我不明白该怎么做。

我已经尝试补偿 CameraInfo 消息给出的失真。我尝试将 PointCloud 与 pcl 库一起使用,将点检索为cloud.at(x,y).

在这两种情况下,坐标都不正确(我在程序给出的坐标中放了一个小球体,以便检查它是否正确)。

每一个帮助将不胜感激。非常感谢。

编辑:从 PointCloud 开始,我尝试找到点的坐标,如下所示:

但我得到的 x,y,z 坐标point.x似乎不正确。相机的俯仰角为 pi/2,因此对于地面上的点。我显然错过了一些东西。

0 投票
1 回答
475 浏览

c++ - 通过 Gazebo 世界插件将静态对象附加到机器人链接

我在为 Gazebo 模拟器制作 World 插件时遇到了一些麻烦。

我有一个机械手,负责捡起一些盒子并将它们移动到特定的位置。为了模拟抓取,我只想将盒子(它们是静态模型)刚性地连接到机器人末端执行器上,并在它们就位时将它们分离。

不过,我无法执行这个简单的任务。我从课堂上找到了这个AttachStaticModel功能;physics::Model我以这种方式使用它:

要么用作偏移量,要么ignition::math::Pose3d()boxLinkPtr->WorldPose() - robotLinkPtr->WorldPose()它什么也不做。

然后,我尝试在盒子和机器人之间手动创建一个固定关节,如下所示:

但是这样做会导致盒子飞走。

盒子 SDF 由一个视觉节点和一个碰撞节点组成,它们都使用 .dae 网格。

任何建议将不胜感激。非常感谢。

0 投票
0 回答
330 浏览

python - ImportError:没有名为 yaml 的模块 - 但我有 yaml

如果我没有特定的模块,合乎逻辑的答案就是安装它。pip install pyyaml但我已经安装了它,这只是吐回“ Requirement already satisfied: pyyaml in /usr/lib/python3.8/site-packages (5.3.1)”。

我在为 Gazebo 设置 Baxter 时遇到了这个问题。

PLUS INFO:我可以为任何其他项目导入它,除了这个。

0 投票
1 回答
1570 浏览

python - rosrun错误找不到可执行文件和CMake错误

我在启动凉亭后尝试运行 rosrun,但出现以下错误,如图所示:

当我运行命令时:rosrun testbot_description sensor_data_listerner.py

我尝试使用source ~/catkin_ws/devel/setup.bash,但仍然无法使用

我已经使 phyton 文件可执行,但仍然无法运行。

希望有人可以帮助我

我的 CMakeLists 文件如图所示,但是当我尝试构建文件时出现错误:

我有如图所示的错误:

0 投票
0 回答
220 浏览

windows - Turtlebot3 Ros1 Windows 设置问题

在此处输入图像描述 这是命令 catkin_make 的控制台输出

我目前正在尝试根据 Windows 版本为turtlebot3 设置一个虚拟环境:https ://emanual.robotis.com/docs/en/platform/turtlebot3/pc_setup/

在 windows 下设置 Ros1 没有问题,但是命令

catkin_make

在turtlebot网站上给了我一个错误。CMake错误:

确定包含文件 pthread.h 是否存在失败,输出如下: Change Dir: C:/ws/turtlebot3/build/CMakeFiles/CMakeTmp

运行构建命令:nmake /nologo cmTC_af455\fast && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\bin\HostX64\x64\nmake. exe" -f CMakeFiles\cmTC_af455.dir\build.make /nologo -L CMakeFiles\cmTC_af455.dir\build

构建 C 对象 CMakeFiles/cmTC_af455.dir/CheckIncludeFile.c.obj

C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\cl.exe @C:\Users\Braun\AppData\Local\Temp\ nm756D.tmp

检查包含文件.c

C:\ws\turtlebot3\build\CMakeFiles\CMakeTmp\CheckIncludeFile.c(1):致命错误 C1083:无法打开包含文件:'pthread.h':没有这样的文件或目录

NMAKE:致命错误 U1077:'C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\cl.exe':返回代码 '0x2'

停止。

NMAKE:致命错误 U1077:'"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\bin\HostX64\x64\nmake.exe"':返回代码' 0x2'

停止。

CMake输出:

系统为:Windows - 10.0.18363 - AMD64 编译C编译器识别源文件“CMakeCCompilerId.c”成功。编译器:C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.26.28801/bin/Hostx64/x64/cl.exe 构建标志:Id标志:

输出为:0 Microsoft (R) C/C++ Optimizing Compiler Version 19.26.28806 for x64 版权所有 (C) Microsoft Corporation。版权所有。

CMakeCCompilerId.c Microsoft (R) 增量链接器版本 14.26.28806.0 版权所有 (C) Microsoft Corporation。版权所有。

/out:CMakeCCompilerId.exe CMakeCCompilerId.obj

编译C编译器识别源“CMakeCCompilerId.c”产生“CMakeCCompilerId.exe”

编译C编译器识别源“CMakeCCompilerId.c”产生“CMakeCCompilerId.obj”

C 编译器标识为 MSVC,可在“C:/ws/turtlebot3/build/CMakeFiles/3.17.3/CompilerIdC/CMakeCCompilerId.exe”中找到

编译CXX编译器识别源文件“CMakeCXXCompilerId.cpp”成功。编译器:C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.26.28801/bin/Hostx64/x64/cl.exe 构建标志:Id标志:

输出为:0 Microsoft (R) C/C++ Optimizing Compiler Version 19.26.28806 for x64 版权所有 (C) Microsoft Corporation。版权所有。

CMakeCXXCompilerId.cpp Microsoft (R) 增量链接器版本 14.26.28806.0 版权所有 (C) Microsoft Corporation。版权所有。

/out:CMakeCXXCompilerId.exe CMakeCXXCompilerId.obj

编译CXX编译器识别源“CMakeCXXCompilerId.cpp”产生“CMakeCXXCompilerId.exe”

编译CXX编译器识别源“CMakeCXXCompilerId.cpp”产生“CMakeCXXCompilerId.obj”

CXX 编译器标识为 MSVC,可在“C:/ws/turtlebot3/build/CMakeFiles/3.17.3/CompilerIdCXX/CMakeCXXCompilerId.exe”中找到

通过以下输出确定 C 编译器是否工作:更改目录:C:/ws/turtlebot3/build/CMakeFiles/CMakeTmp

运行构建命令:nmake /nologo cmTC_6bdf7\fast && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\bin\HostX64\x64\nmake. exe" -f CMakeFiles\cmTC_6bdf7.dir\build.make /nologo -L CMakeFiles\cmTC_6bdf7.dir\build

构建 C 对象 CMakeFiles/cmTC_6bdf7.dir/testCCompiler.c.obj

C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\cl.exe @C:\Users\Braun\AppData\Local\Temp\ nm6A32.tmp

testCCompiler.c

链接 C 可执行文件 cmTC_6bdf7.exe

C:\opt\python27amd64\Lib\site-packages\cmake\data\bin\cmake.exe -E vs_link_exe --intdir=CMakeFiles\cmTC_6bdf7.dir --rc=C:\PROGRA~2\WI3CF2~1\10 \bin\100183~1.0\x64\rc.exe --mt=C:\PROGRA~2\WI3CF2~1\10\bin\100183~1.0\x64\mt.exe --manifests -- C:\PROGRA~ 2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\cmTC_6bdf7.dir\objects1.rsp @C:\Users\Braun \AppData\Local\Temp\nm6B6C.tmp

检测使用以下输出编译的 C 编译器 ABI 信息:更改目录:C:/ws/turtlebot3/build/CMakeFiles/CMakeTmp

运行构建命令:nmake /nologo cmTC_5fcdd\fast && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\bin\HostX64\x64\nmake. exe" -f CMakeFiles\cmTC_5fcdd.dir\build.make /nologo -L CMakeFiles\cmTC_5fcdd.dir\build

构建 C 对象 CMakeFiles/cmTC_5fcdd.dir/CMakeCCompilerABI.c.obj

C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\cl.exe @C:\Users\Braun\AppData\Local\Temp\ nm6C84.tmp

CMakeCCompilerABI.c

链接 C 可执行文件 cmTC_5fcdd.exe

C:\opt\python27amd64\Lib\site-packages\cmake\data\bin\cmake.exe -E vs_link_exe --intdir=CMakeFiles\cmTC_5fcdd.dir --rc=C:\PROGRA~2\WI3CF2~1\10 \bin\100183~1.0\x64\rc.exe --mt=C:\PROGRA~2\WI3CF2~1\10\bin\100183~1.0\x64\mt.exe --manifests -- C:\PROGRA~ 2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\cmTC_5fcdd.dir\objects1.rsp @C:\Users\Braun \AppData\Local\Temp\nm6CC4.tmp

通过以下输出确定 CXX 编译器是否工作:更改目录:C:/ws/turtlebot3/build/CMakeFiles/CMakeTmp

运行构建命令:nmake /nologo cmTC_f8e3d\fast && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\bin\HostX64\x64\nmake. exe" -f CMakeFiles\cmTC_f8e3d.dir\build.make /nologo -L CMakeFiles\cmTC_f8e3d.dir\build

构建 CXX 对象 CMakeFiles/cmTC_f8e3d.dir/testCXXCompiler.cxx.obj

C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\cl.exe @C:\Users\Braun\AppData\Local\Temp\ nm6DEC.tmp

testCXXCompiler.cxx

链接 CXX 可执行文件 cmTC_f8e3d.exe

C:\opt\python27amd64\Lib\site-packages\cmake\data\bin\cmake.exe -E vs_link_exe --intdir=CMakeFiles\cmTC_f8e3d.dir --rc=C:\PROGRA~2\WI3CF2~1\10 \bin\100183~1.0\x64\rc.exe --mt=C:\PROGRA~2\WI3CF2~1\10\bin\100183~1.0\x64\mt.exe --manifests -- C:\PROGRA~ 2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\cmTC_f8e3d.dir\objects1.rsp @C:\Users\Braun \AppData\Local\Temp\nm6E2B.tmp

检测使用以下输出编译的 CXX 编译器 ABI 信息:更改目录:C:/ws/turtlebot3/build/CMakeFiles/CMakeTmp

运行构建命令:nmake /nologo cmTC_39a62\fast && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\bin\HostX64\x64\nmake. exe" -f CMakeFiles\cmTC_39a62.dir\build.make /nologo -L CMakeFiles\cmTC_39a62.dir\build

构建 CXX 对象 CMakeFiles/cmTC_39a62.dir/CMakeCXXCompilerABI.cpp.obj

C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\cl.exe @C:\Users\Braun\AppData\Local\Temp\ nm6F24.tmp

CMakeCXXCompilerABI.cpp

链接 CXX 可执行文件 cmTC_39a62.exe

C:\opt\python27amd64\Lib\site-packages\cmake\data\bin\cmake.exe -E vs_link_exe --intdir=CMakeFiles\cmTC_39a62.dir --rc=C:\PROGRA~2\WI3CF2~1\10 \bin\100183~1.0\x64\rc.exe --mt=C:\PROGRA~2\WI3CF2~1\10\bin\100183~1.0\x64\mt.exe --manifests -- C:\PROGRA~ 2\MICROS~1\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\cmTC_39a62.dir\objects1.rsp @C:\Users\Braun \AppData\Local\Temp\nm6F64.tmp

命令期间控制台中也有错误文本:

opt/rosdeps/x64/share/protobuf/protobuf-targets.cmake:37 处的 CMake 错误(消息):此导出集中的一些(但不是全部)目标已定义。

目标定义:protobuf::libprotobuf;protobuf::libprotoc

目标尚未定义:protobuf::protoc

0 投票
1 回答
909 浏览

ros - 如何将 Gazebo 世界转换为点云?

我正在使用 PX4 工具链来构建自主无人机。我通过 Gazebo 模拟器使用它,使用 ROS 和 MAVROS。现在,我需要研究寻路算法,而不是传感器,所以我想要 Gazebo 模拟的“地面实况”地图。如果可能的话,能够通过 ROS 的 Octomap 节点使用它会很棒。

我所能做的就是将深度相机点云连接到 ROS octomap 节点,并使用 RViz 进行查看,如本教程中所述。我考虑过在我的世界中放置深度相机传感器,以便用八图表示来近似地面真实世界,但它看起来很复杂而且效率不高。

那么有没有办法生成当前 Gazebo 世界模拟的点云表示,并将其连接到 Octomap ?

非常感谢您的帮助 !:)

0 投票
1 回答
114 浏览

opencv - Opencv视差图失真/闪烁问题

所以我试图使用 CV2.StereoSGBM_create 在凉亭模拟中获得视差图。并使用 WLS 过滤器处理视差。但是,我的 StereoSGBM 地图似乎偶尔会出现失真问题。这是正常的图像: 在此处输入图像描述

这是失真: 在此处输入图像描述

对于 SGBM,我的代码是:

由于 WLS 过滤图像是从 SGBM 生成的,我认为问题在于 SGBM 而不是 WLS 过滤图像。我尝试修改 SGBM 的参数,但没有帮助。任何帮助将不胜感激,谢谢!