ros 加载yaml地图

news/2024/5/20 23:10:23

加载yaml地图

方法一

参考链接:链接

yahboom@VM:~/rplidar_ws_src/src/yahboomcar_nav/maps$ ros2 run nav2_map_server map_server --ros-args --param yaml_filename:=fishbot_map.yaml
[INFO] [1714904123.325652996] [map_server]: map_server lifecycle node launched. Waiting on external lifecycle transitions to activateSee https://design.ros2.org/articles/node_lifecycle.html for more information.
[INFO] [1714904123.326354743] [map_server]: Creatingros2 lifecycle set /map_server configure
ros2 lifecycle set /map_server activateros2 launch rosbridge_server rosbridge_websocket_launch.xml

方法二: 编写为launch文件,加载yaml地图

import os
import yaml
from ament_index_python.packages import get_package_share_directory
from launch import LaunchDescription
from launch_ros.actions import Node
from launch.actions import ExecuteProcess
from launch.substitutions import LaunchConfiguration
import launch_ros.actionsdef generate_launch_description():ld = LaunchDescription()# map filemap_file_path = os.path.join(get_package_share_directory('wheeltec_nav2'),'map','WHEELTEC.yaml')map_server_cmd = Node(package='nav2_map_server',executable='map_server',output='screen',parameters=[{'yaml_filename': map_file_path}])lifecycle_nodes = ['map_server']use_sim_time = Trueautostart = Truestart_lifecycle_manager_cmd = launch_ros.actions.Node(package='nav2_lifecycle_manager',executable='lifecycle_manager',name='lifecycle_manager',output='screen',emulate_tty=True,  # https://github.com/ros2/launch/issues/188parameters=[{'use_sim_time': use_sim_time},{'autostart': autostart},{'node_names': lifecycle_nodes}])ld.add_action(map_server_cmd)ld.add_action(start_lifecycle_manager_cmd)return ld
  • 运行 launch文件: ros2 launch robot_nav2map_show.launch.py
ros@ros-virtual-machine:~/wh_robot$ ros2 launch robot_nav2map_show.launch.py 
[INFO] [launch]: All log files can be found below /home/ros/.ros/log/2024-05-09-17-28-27-089551-ros-virtual-machine-9961
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [lifecycle_manager-2]: process started with pid [9964]
[INFO] [map_server-1]: process started with pid [9962]
[map_server-1] [INFO] [1715246907.206470040] [map_server]: 
[map_server-1] 	map_server lifecycle node launched. 
[map_server-1] 	Waiting on external lifecycle transitions to activate
[map_server-1] 	See https://design.ros2.org/articles/node_lifecycle.html for more information.
[map_server-1] [INFO] [1715246907.206592754] [map_server]: Creating
[lifecycle_manager-2] [INFO] [1715246907.209485626] [lifecycle_manager]: Creating
[lifecycle_manager-2] [INFO] [1715246907.211565108] [lifecycle_manager]: Creating and initializing lifecycle service clients
[lifecycle_manager-2] [INFO] [1715246907.303960694] [lifecycle_manager]: Starting managed nodes bringup...
[lifecycle_manager-2] [INFO] [1715246907.304226094] [lifecycle_manager]: Configuring map_server
[map_server-1] [INFO] [1715246907.451476723] [map_server]: Configuring
[map_server-1] [INFO] [map_io]: Loading yaml file: /home/ros/wh_robot/install/robot_nav2/share/robot_nav2/map/WHEELTEC.yaml
[map_server-1] [DEBUG] [map_io]: resolution: 0.05
[map_server-1] [DEBUG] [map_io]: origin[0]: -10
[map_server-1] [DEBUG] [map_io]: origin[1]: -10
[map_server-1] [DEBUG] [map_io]: origin[2]: 0
[map_server-1] [DEBUG] [map_io]: free_thresh: 0.196
[map_server-1] [DEBUG] [map_io]: occupied_thresh: 0.65
[map_server-1] [DEBUG] [map_io]: mode: trinary
[map_server-1] [DEBUG] [map_io]: negate: 0
[map_server-1] [INFO] [map_io]: Loading image_file: /home/ros/wh_robot/src/robot_nav2/map/WHEELTEC.pgm
[map_server-1] [DEBUG] [map_io]: Read map /home/ros/wh_robot/src/robot_nav2/map/WHEELTEC.pgm: 672 X 384 map @ 0.05 m/cell
[lifecycle_manager-2] [INFO] [1715246907.472013920] [lifecycle_manager]: Activating map_server
[map_server-1] [INFO] [1715246907.472134653] [map_server]: Activating
[map_server-1] [INFO] [1715246907.472440295] [map_server]: Creating bond (map_server) to lifecycle manager.
[lifecycle_manager-2] [INFO] [1715246907.574923038] [lifecycle_manager]: Server map_server connected with bond.
[lifecycle_manager-2] [INFO] [1715246907.575034213] [lifecycle_manager]: Managed nodes are active
[lifecycle_manager-2] [INFO] [1715246907.575060314] [lifecycle_manager]: Creating bond timer...

http://www.mrgr.cn/p/71578606

相关文章

黑马-Vue前端

前言 HTML:负责网页的结构(标签:form表单 / table表格 / a /div/span) CSS:负责网页的表现(样式:color/font/background/width/height) JavaScript:负责网页的行为(交互效果) 创建一个文件夹 输入cmd执行 code . 回车,打开VsCodeVue 一款用于构建用户界面的渐进式…

自动驾驶中常见坐标系极其转换

各个传感器坐标系 相机坐标系统 摄像头的作用是把三维世界中的形状、颜色信息,压缩到一张二维图像上。基于摄像头的感知算法则是从二维图像中提取并还原三维世界中的元素和信息,如车道线,车辆、行人等,并计算他们与自己的相对位置。 感知算法和相机相关的坐标系有图像坐…

如何判断nat网络?如何内网穿透

大家都清楚,如果你想开车,就必须要给车上一个牌照,随着车辆越来越多,为了缓解拥堵,就需要摇号,随着摇号的人数越来越多,车牌对于想开车的人来说已经成为奢望。在如今的IPv4时代,我们…

在M1芯片安装鸿蒙闪退解决方法

在M1芯片安装鸿蒙闪退解决方法 前言下载鸿蒙系统安装完成后,在M1 Macos14上打开闪退解决办法接下来就是按照提示一步一步安装。 前言 重新安装macos系统后,再次下载鸿蒙开发软件,竟然发现打不开。 下载鸿蒙系统 下载地址:http…

httpsok-v1.11.0支持CDN证书自动部署

🔥httpsok-v1.11.0支持CDN证书自动部署 介绍 httpsok 是一个便捷的 HTTPS 证书自动续签工具,专为 Nginx 、OpenResty 服务器设计。已服务众多中小企业,稳定、安全、可靠。 一行命令,一分钟轻松搞定SSL证书自动续期 v1.11.0 版本新特性✅修复某些情况下无法识别主配置文件n…

架构师狂掉1024根头发,总算搞定SSL通配证书

🔥架构师狂掉1024根头发,总算搞定SSL通配证书 经过许多个日日夜夜的持续开发(掉了1024根头发),总算搞定了v1.11.0版本,修复和解决了许多问题,也支持CDN和OSS证书的部署。 v1.11.0 版本新特性✅修复某些情况下无法识别主配置文件nginx.conf问题 ✅修复某些证书出现的签名…

DenseCLIP论文讲解

文章目录 简介方法总体框架 (Language-Guided Dense Prediction)上下文感知提示 (Context-Aware Prompting)应用实例 论文:DenseCLIP: Language-Guided Dense Prediction with Context-Aware Prompting 代码&#xff1…

SQL脚本中存在很多括号,无法直观进行匹配。

解决方案1:SSMS中找到前括号按下空格或tab,会自动匹配到对应的后括号,如下图。解决方案2:使用在线格式化工具进行格式化,该工具格式化功能更强大且会自动去除多余无意义的括号组。 https://tool.oschina.net/codeformat/sql 在线代码格式化 (oschina.net)

怎样的跨网软件,可以实现网间数据的安全收发?

网络隔离已是较为常见的网络安全保护措施,比如防火墙、网闸、VLAN,云桌面虚拟环境等方面进行隔离。像一些科技研发型企业,不仅仅是内外网隔离,甚至还划分办公网、研发网、测试网、生产网等,防止研发资料、设计资料等敏感信息泄漏。但隔离后仍存在文件数据需要进行流转的场…

Fatal error in launcher: Unable to create process using d:\python38\python3.exe ...

使用场景:本地主机安装好的python3.8 版本的运行环境,迁移道其他主机执行pip install -r .\requirements.txt 运行一下命令解决:python3 -m pip install watchdog

Nexpose v6.6.251 for Linux Windows - 漏洞扫描

Nexpose v6.6.251 for Linux & Windows - 漏洞扫描Nexpose v6.6.251 for Linux & Windows - 漏洞扫描 Rapid7 Vulnerability Management, Release May 08, 2024 请访问原文链接:Nexpose v6.6.251 for Linux & Windows - 漏洞扫描,查看最新版。原创作品,转载请保…

Prometheus+Alertmanager+webhook-dingtalk实现钉钉告警

文章目录 一、前提准备及规划 二、安装及启动 2.1 Prometheus安装启动 2.2 Node_export安装启动 2.3 Alertmanager安装启动 2.4 Webhook-dingtalk安装启动 三、配置及测试 3.1 Webhook-dingtalk配置钉钉webhook地址 3.2 Alertmanager配置钉钉告警 3.3 Prometheus集成Alertmanag…

mac本地搭建ollama

mac本地搭建ollama webUI *简介:ollama-webUI是一个开源项目,简化了安装部署过程,并能直接管理各种大型语言模型(LLM)。本文将介绍如何在你的macOS上安装Ollama服务并配合webUI调用api来完成聊天。 开源地址https://github.com/812781385/ollama-webUI.git,开源不易感谢s…

docker 安装elasticsearch8.X

docker 安装elasticsearch8.X 安装elasticsearch8.X前言安装elasticsearch安装elasticsearch-analysis-ik安装kibana 安装elasticsearch8.X 前言 由于需要安装elasticsearch、IK分词插件、kibana。所以需要保持这三者的版本一致性。 elasticsearch 8.12.2 kibana 8.12.2 ela…

如何安全高效地进行企业文档外发,一文了解!

企业文档外发是指将企业的内部文件、文档或信息发送给企业外部的个人或组织。目前使用比较多的企业文档外发的方式有以下几种,可以了解看一下: 1.邮件系统:通过电子邮件发送文档,这是最传统的文档外发方式之一。 2.即时通讯工具:如微信、QQ、企业微信、钉钉、飞书等,这些工…

Gantt图和PERT图的相关知识

1、Gantt 图Gantt图以时间为基准描述项目任务,可以清晰的描述每个任务从何时开始,到何时结束,以及每个任务的并行关系,但是不能反映项目各任务之间的依赖关系,也无法确定整个任务的关键所在。2、PERT图计划评审技术(Program Evaluation and Review Technique,简称PERT)…

ESP32引脚入门指南(三):从理论到实践(Touch Pin)

引言 ESP32作为物联网领域的明星微控制器,不仅以其强大的网络通信能力著称,还内置了丰富的外设资源,其中就包括电容式触摸传感(Capacitive Touch)功能。本文旨在深入浅出地介绍ESP32的Touch引脚,带你了解其…

【训练与预测】02 - 完整的模型验证套路

02 - 完整的模型验证套路 模型图 验证一个模型就是指使用已经训练好的模型,然后给它提供输入。 test.py import torch import torchvision from PIL import Imagedevice torch.device("cuda" if torch.cuda.is_available() else "cpu") ima…

Github 2024-05-10 Java开源项目日报Top10

根据Github Trendings的统计,今日(2024-05-10统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Java项目10C++项目2JavaGuide - Java 程序员学习和面试指南 创建周期:2118 天开发语言:Java协议类型:Apache License 2.0Star数量:140773 个…

Rust工作空间(workspace)实践

本文将介绍如何使用cargo workspace来管理多个package,并通过实践介绍workspace的一些基础场景下的使用、配置方式。在rust中编写某些中小型项目时,我们通常不会将一个工程拆分为多个package,而是通过一个package下不同的目录模块来实现模块拆分,尽管大部分场景下这种开发方…