baidu apollo(1)—启动环境分析

apollo平台(1.5)目前是基于ros框架来实现,外围丰富了各种自己的感知、认知、决策、规划模块。

docker 环境配置

bash docker/scripts/install_docker.sh

install_docker.sh主要完成:

  • 升级ubuntu内核;
  • apt添加docker list,安装docker-engine;
  • 将用户添加到docker组中,可以不用sudo来执行相关docker命令。
# logout and login the computer to make sure to run docker command without sudo

需要logout一下,可以不用sudo来执行相关docker命令。

bash docker/scripts/dev_start.sh

dev_start.sh主要完成:

  • docker pull,可以选择在国内的仓库下载镜像IMG;
  • 启动nvidia、CAN设备;
  • 启动docker 容器;
  • 容器中执行脚本,/apollo/scripts/docker_adduser.sh。
/apollo/scripts/docker_adduser.sh

容器中:

  • 执行一些组相关的命令;
  • /dev/ttyUSB0,/dev/video0设备相关;
  • 在容器中解压缩ros indigo;
  • 设置ros包相关的权限和组等。
bash docker/scripts/dev_into.sh
  • 允许容器访问主机的X server;
  • 进入docker交互式shell,-it

编译模块

bash apollo.sh build

主要完成:

  • source_apollo_base():source apollo_base.sh
  • apollo_check_system_config():检测系统内存必须2G以上
  • check_machine_arch():修改WORKSPACE.in中的MACHINE_ARCH为x86_64
  • check_esd_files():esd can
  • apollo_build_dbg()

阿波罗使用的是Google的Bazel工具,对应的WORKSPACE.in中包含的模块包括,
googletest,gflags,glog,Google Benchmark,google cpplint,eigen,CivetWeb,curlpp,ros,OpenCV,PCL,Caffe,YAML-CPP,IpOpt,Proj.4,tinyxml2,protobuf。

运行apollo

bash scripts/bootstrap.sh
  • 启动roscore
  • bash scripts/dreamview.sh:启动dreamview进程
run dreamview "$@"
nohup command &

然后通过 http://localhost:8888访问web前端。

猜你喜欢

转载自blog.csdn.net/lewif/article/details/78757879
今日推荐