博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
roscore的执行
阅读量:4215 次
发布时间:2019-05-26

本文共 1948 字,大约阅读时间需要 6 分钟。

ros源码对应的github 网址为https://github.com/ros我们知道在ros 安装好后,首先要跑一下roscore命令,如果没有在这个命令的话,可能先调用source xx/ros/xx/setup.bash 初始化环境。roscore其实是一个python脚本,其实现的路径在ros/ros_comm/blob/melodic-devel/tools/roslaunch/scripts/roscore其源码如下:import sysfrom optparse import OptionParserfrom rosmaster.master_api import NUM_WORKERSNAME = 'roscore'def _get_optparse():    parser = OptionParser(usage="usage: %prog [options]",                          prog=NAME,                          description="roscore will start up a ROS Master, a ROS Parameter Server and a rosout logging node",                          epilog="See http://wiki.ros.org/roscore"                          )    parser.add_option("-p", "--port",                      dest="port", default=None,                      help="master port. Only valid if master is launched", metavar="PORT")    parser.add_option("-v", action="store_true",                      dest="verbose", default=False,                      help="verbose printing")    parser.add_option("-w", "--numworkers",                      dest="num_workers", default=NUM_WORKERS, type=int,                      help="override number of worker threads", metavar="NUM_WORKERS")    parser.add_option("-t", "--timeout",                      dest="timeout",                      help="override the socket connection timeout (in seconds).", metavar="TIMEOUT")    parser.add_option("--master-logger-level",                      dest="master_logger_level", default=False, type=str,                      help="set rosmaster.master logger level ('debug', 'info', 'warn', 'error', 'fatal')")    return parserparser = _get_optparse()(options, args) = parser.parse_args(sys.argv[1:])#从这里知道roscore 并不支持参数if len(args) > 0:    parser.error("roscore does not take arguments")#原来roscore就只是调用调用roslanch.mainimport roslaunchroslaunch.main(['roscore', '--core'] + sys.argv[1:])通过后续可以知道roslaunch.main 其实主要做了几件事,1,创建保存log的文件夹。2,启动roslunch server3,启动roscores master和resout

 

转载地址:http://cpnmi.baihongyu.com/

你可能感兴趣的文章
OpenTSDB原理系列:元数据模型
查看>>
解密OpenTSDB的表存储优化
查看>>
OpeTSDB的Configuration配置
查看>>
FQDN
查看>>
时序数据库
查看>>
jmxtrans+influxdb+granafa监控hbase
查看>>
使用jmxtrans监控Spark JVM信息到grafana显示
查看>>
HBase - ROOT 和 META 表结构 (region定位原理)
查看>>
HBase API 和 基本操作
查看>>
Hbase的存储模型
查看>>
InfluxDB influxdbc.conf配置文件详解
查看>>
通过BulkLoad的方式快速导入海量数据
查看>>
Mysql根据内容查找在哪个表(Go版本)
查看>>
玩转Anaconda
查看>>
kali linux中文版安装
查看>>
安卓逆向之环境搭建
查看>>
修改包名实现app分身
查看>>
NDK静态注册之调用C层并返回字符串
查看>>
AndroidStudio踩坑记
查看>>
go-colly官方文档翻译(持续翻译中)
查看>>