1.CMake Error at CMakeLists.txt:28 (rosidl_generate_interfaces): Unknown CMake command “rosidl_generate_interfaces”.
解决方案:CmakeLists.txt中添加
find_package(builtin_interfaces REQUIRED)
find_package(rosidl_default_generators REQUIRED)
2. ndt_mapping_nodes: No definition of [osrf_testing_tools_cpp] for OS [debian]
解决方案:
ubuntu20.04版本运行:
rosdep install --from-paths src --ignore-src --rosdistro=${ROS_DISTRO} -y --os=ubuntu:focal
3. ModuleNotFoundError: No module named ‘transforms3d’
解决方案:
pip3 install transforms3d
4. [cartographer_node-1] Warning: TF_OLD_DATA ignoring data from the past for frame base_link at time 55.566670 according to authority Authority undetectable
解决方案:将launch文件中use_sim_time参数值改成true
def generate_launch_description():
use_sim_time = LaunchConfiguration('use_sim_time', default='true')
cartographer_prefix = get_package_share_directory('cartographer_ros')
cartographer_config_dir = LaunchConfiguration('cartographer_config_dir', default=os.path.join(
cartographer_prefix, 'configuration_files'))
configuration_basename = LaunchConfiguration('configuration_basename',
default='turtlebot3_lds_2d.lua')
resolution = LaunchConfiguration('resolution', default='0.05')
publish_period_sec = LaunchConfiguration('publish_period_sec', default='1.0')
return LaunchDescription([
DeclareLaunchArgument(
'cartographer_config_dir',
default_value=cartographer_config_dir,
description='Full path to config file to load'),
DeclareLaunchArgument(
'configuration_basename',
default_value=configuration_basename,
description='Name of lua file for cartographer'),
DeclareLaunchArgument(
'use_sim_time',
default_value='true',
description='Use simulation (Gazebo) clock if true'),
Node(
package='cartographer_ros',
executable='cartographer_node',
# node_name='cartographer_node',
output='screen',
parameters=[{'use_sim_time': use_sim_time}],
arguments=['-configuration_directory', cartographer_config_dir,
'-configuration_basename', configuration_basename]),
DeclareLaunchArgument(
'resolution',
default_value=resolution,
description='Resolution of a grid cell in the published occupancy grid'),
DeclareLaunchArgument(
'publish_period_sec',
default_value=publish_period_sec,
description='OccupancyGrid publishing period'),
IncludeLaunchDescription(
PythonLaunchDescriptionSource([ThisLaunchFileDir(), '/occupancy_grid.launch.py']),
launch_arguments={'use_sim_time': use_sim_time, 'resolution': resolution,
'publish_period_sec': publish_period_sec}.items(),
),
Node(
package='rviz2',
executable='rviz2',
# node_name='rviz2',
parameters=[{'use_sim_time': use_sim_time}],
output='screen'),
])
5. ImportError: Could not find Qt binding (looked for: ‘pyqt’, ‘pyside’): ImportError for ‘pyqt’: No module named ‘PyQt5.sip’
解决方案:
pip3 install --upgrade PyQt5 PyQt5-Qt5