turtlebot 中的minimal.launch介绍
来源:互联网 发布:相片删除恢复软件 编辑:程序博客网 时间:2024/06/06 19:29
前导:ROS版本为indigo,turtlebot设备为kobuki
每次在kobuki运行一些例子前,都要执行roslaunch turtlebot_bringup minimal.launch这个命令,然后听见kobuki发出一串升序的声音,说明kobuki初始化成功。从现在开始慢慢深入了解kobuki。
先从了解 minimal.launch开始:通过roscd turtlebot_bringup/launch命令进入minimal.launch所在文件夹,cat命令查看内容:
第1步:先根据设置的环境变量中的TURTLEBOT_XXX初始化一些参数。其中比较重要的是
<arg name="serialport" default="$(env TURTLEBOT_SERIAL_PORT)" doc="used by create to configure the port it is connected on [/dev/ttyUSB0, /dev/ttyS0]"/> 。串口端口:如果开启kobuki并通过usb连上电脑,该值为/dev/kobuki ,是一个软链接,指向/dev/ttyUSB0。
<arg name="3d_sensor" default="$(env TURTLEBOT_3D_SENSOR)" doc="3d sensor types [kinect, asux_xtion_pro]"/>3D扫描传感器:当你更换3D传感器时,要在terminal窗口的环境变量中设置该值。
第2步:include robot.launch.xml ,跟踪robot.launch.xml里面先include description.launch.xml。
2.1 跟踪description.launch.xml,在里面设置了默认的urdf_file参数,默认的配置文件在(turtlebot_description)/robots/下面,最后保存在参数服务器中的robot_description中。
2.2 启动节点robot_state_publisher
这个节点维护并发布robot的关键(关节)位置的坐标系信息到tf上,一旦该这些信息被发布说明robot的各个关键(关节)坐标系的依赖关系确定,robot也就可以做各种动作。package也可以当成库文件用来发布自己robot的节点关键信息。
API
订阅的主题:
joint_states (sensor_msgs/JointState) :关键位置信息
参数信息:
robot_description (urdf map):urdf xml 机器人的类型
tf_prefix (string) :tf命令空间的前缀
publish_frequency (double) :推送频率, default: 50Hz.
ignore_timestamp (bool) :ture 忽略时间戳和推送频率,一收到订阅的joint_states就发布。默认为false
use_tf_static (bool) : 是否使用/tf_static静态锁定传输广播,默认true;
其余自己新加上的设备就可以用
2.3 启动节点diagnostic_aggregator
一个诊断器,收集tutlebot的信息在经过处理分类后发布出来。有两种分析方法GenericAnalyzer和AnalyzerGroup
订阅的主题:
/diagnostics (diagnostic_msgs/DiagnosticArray) 原始诊断的输入数据
发布的主题:
/diagnostics_agg (diagnostic_msgs/DiagnosticArray) 处理归类后的输出数据
/diagnostics_toplevel_state (diagnostic_msgs/DiagnosticStatus) diagnostics_agg的最顶层状态
第3步 包括mobile_base.launch.xml
3.1启动节点mobile_base_nodelet_manager
mobile_base_nodelet_manager其实是一个nodelete节点,只是名字叫这么长。
见:ros中的nodelet
3.2include /kuboki/mobile_base.launch.xml
3.2.1 启动节点mobile_base
见:turtlebot的mobile_base节点,是一个nodelet
3.2.2 启动节点bumper2pointcloud
- turtlebot 中的minimal.launch介绍
- ROS中的turtlebot包
- turtlebot
- ROS launch文档介绍
- ROS launch文档介绍
- Eclipses中的launch文件
- meta标签中的minimal-ui
- gst-launch & gst-inspect 介绍
- gst-launch & gst-inspect 介绍
- gst-launch & gst-inspect 介绍
- docker中的ROS容器对远端turtlebot的行为控制
- Launch
- Launch
- ROS中launch file基本介绍
- ROS中launch file基本介绍
- Launch Screen 在 iOS7/8 中的实现
- Launch Screen在iOS7/8中的实现
- Launch Screen在iOS7/8中的实现
- 简单记录一下sping线程池的配置和实现
- Android之多线程实现方式及并发与同步
- web.xml的加载及各节点常用节点的解析
- AI的警告:人类担心的应该是自己,而不是机器
- web编程面试题
- turtlebot 中的minimal.launch介绍
- package &import
- 1042. Shuffling Machine (20)
- Linux服务器配置——搭建SVN服务器
- 创建一个开机自启动的Android系统服务
- linux下目录、文件显示颜色的设置生效
- #Python3.6 第一个程序
- Cordova中设置设备禁止横屏
- 有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?