本文主要是介绍turtlebot 中的minimal.launch介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
前导: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 (
这篇关于turtlebot 中的minimal.launch介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!