2017年7月5日,百度举行了AI开发者大会,在会上发布了Apollo项目,并进行了演示,该项目在Github上已经能够被访问。出于一个程序员的好奇,昨天试玩了一把,确实不错。

  http://apollo.auto/,这个是阿波罗的首页,感兴趣的可以注册成为开发者。https://github.com/ApolloAuto/apollo这个时候github的地址。装了个ubuntu,然后建一个目录。git clone https://github.com/ApolloAuto/apollo.git 克隆下来以后运行下面几个命令。

bash docker/scripts/install_docker.sh
bash docker/scripts/dev_start.sh
bash docker/scripts/dev_into.sh

  第一个命令是安装docker,注意不要使用sudo,也不建议使用root账号。

  第二个命令是开始部署开发环境,就是一堆的docker pull,这个时候需要等很久,如果你有一个好点的网络环境可能会快很多,我是运行了大半天。

  运行好是下面的界面。

hackcat@hackcat-VirtualBox:~/source/apollo$ bash docker/scripts/dev_start.sh
dev-latest: Pulling from apolloauto/apollo
Digest: sha256:4119d0e023d773a5e47a68f31da41ee26a2173a84ae485bf65d39714736c710b
Status: Image is up to date for apolloauto/apollo:dev-latest
apollo_dev
apollo_dev
[sudo] hackcat 的密码:
/home/hackcat/source/apollo/data/core/core_%e.%p
[WARNING] Failed to find device with pattern "ttyUSB*" ...
[ OK ] Found device: /dev/ttyS31.
[ OK ] Found device: /dev/ttyS30.
[ OK ] Found device: /dev/ttyS29.
[ OK ] Found device: /dev/ttyS28.
[ OK ] Found device: /dev/ttyS27.
[ OK ] Found device: /dev/ttyS26.
[ OK ] Found device: /dev/ttyS25.
[ OK ] Found device: /dev/ttyS24.
[ OK ] Found device: /dev/ttyS23.
[ OK ] Found device: /dev/ttyS22.
[ OK ] Found device: /dev/ttyS21.
[ OK ] Found device: /dev/ttyS20.
[ OK ] Found device: /dev/ttyS19.
[ OK ] Found device: /dev/ttyS18.
[ OK ] Found device: /dev/ttyS17.
[ OK ] Found device: /dev/ttyS16.
[ OK ] Found device: /dev/ttyS15.
[ OK ] Found device: /dev/ttyS14.
[ OK ] Found device: /dev/ttyS13.
[ OK ] Found device: /dev/ttyS12.
[ OK ] Found device: /dev/ttyS11.
[ OK ] Found device: /dev/ttyS10.
[ OK ] Found device: /dev/ttyS9.
[ OK ] Found device: /dev/ttyS8.
[ OK ] Found device: /dev/ttyS7.
[ OK ] Found device: /dev/ttyS6.
[ OK ] Found device: /dev/ttyS5.
[ OK ] Found device: /dev/ttyS4.
[ OK ] Found device: /dev/ttyS3.
[ OK ] Found device: /dev/ttyS2.
[ OK ] Found device: /dev/ttyS1.
[ OK ] Found device: /dev/ttyS0.
[ OK ] Found device: /dev/can0.
[WARNING] Failed to find device with pattern "ram*" ...
[ OK ] Found device: /dev/loop7.
[ OK ] Found device: /dev/loop6.
[ OK ] Found device: /dev/loop5.
[ OK ] Found device: /dev/loop4.
[ OK ] Found device: /dev/loop3.
[ OK ] Found device: /dev/loop2.
[ OK ] Found device: /dev/loop1.
[ OK ] Found device: /dev/loop0.
[ OK ] Found device: /dev/loop-control.
4ffca0c5dc8efb214a3a41a63d395330c12736bd5a43247e78c60e638fa0357a
Adding user `hackcat' ...
Adding new group `hackcat' (1000) ...
Adding new user `hackcat' (1000) with group `hackcat' ...
The home directory `/home/hackcat' already exists. Not copying from `/etc/skel'.

  第三个命令是进入到docker容器中。

  进到容器中了。

hackcat@in_dev_docker:/apollo$ 

  

  至此,整个docker就搞完了,接下来就需要编译阿波罗了。

  进入到容器后,运行以下命令进行编译。

  

bash apollo.sh build

  漫长的等待啊,电脑性能要好点,我是等了一晚上,不知道几点搞好的,因为是虚拟机,分配的CPU内存都不多。至少40G硬盘吧。

  编译好以后就可以在里面运行阿波罗了。

  

bash scripts/hmi.sh

  打开人机交互界面。注意,不编译也能得到下面的结果,但网页打不开,看了下log是缺少各种文件。

  

hackcat@in_dev_docker:/apollo$ bash scripts/hmi.sh
Start roscore...
HMI ros node service running at localhost:
HMI running at http://localhost:8887
hackcat@in_dev_docker:/apollo$

  用谷歌浏览器访问。 http://localhost:8887

  

  打开以后是这样子的。左边的setup做两部操作,第一确定目前软件模块都已正确加载,即Debug列表中的模块,GPS驱动,控制器,总线,定位,Dreamview,数据记录等,第二步是确定GPS模块和CAN总线模块(这些是硬件模块)都已经安装,并能正常通信。然后就可以进行Record了,Record应该就是驾驶员驾驶车辆在封闭道路进行行驶,阿波罗记录数据。开始行驶的时候点击Start,行驶完了点击Stop。下面的Quick Play是执行刚才录制的轨迹,进行自动驾驶。有点像电脑上的屏幕录像脚本。

  硬件相关信息百度也提供了文档,感兴趣的同学可以去购买一些来,据说三天就能打造出一辆自动驾驶汽车来。唯一苦恼的是,车辆需要有专业的总线技术服务公司来帮助我们进行对接,这个像我等屌丝去哪里找??

  https://github.com/ApolloAuto/apollo/blob/master/docs/quickstart/apollo_1_0_hardware_system_installation_guide.md#prerequisites,这个是硬件安装步骤。

  • The vehicle must be modified for “drive-by-wire” technology by a professional service company. Also, a CAN interface hookup must be provided in the trunk where the IPC will be mounted.

Apollo自动驾驶框架试玩的更多相关文章

  1. Apollo 自动驾驶开发套件(D-KIT)

    Apollo 自动驾驶开发套件(D-KIT)

  2. Apollo框架试玩

    2017年7月5日,百度举行了AI开发者大会,在会上发布了Apollo项目,并进行了演示,该项目在Github上已经能够被访问.出于一个程序员的好奇,昨天试玩了一把,确实不错. http://apol ...

  3. 【Apollo自动驾驶源码解读】车道线的感知和高精地图融合

    模式选择 在modules/map/relative_map/conf/relative_map_config.pb.txt文件中对模式进行修改: lane_source: OFFLINE_GENER ...

  4. [转]自动驾驶平台Apollo 2.5环境搭建

    原文地址:https://blog.csdn.net/jinzhuojun/article/details/80210180,转载主要方便随时查阅,如有版权要求,请及时联系. 我们知道,自动驾驶在学界 ...

  5. 发布AI芯片昆仑和百度大脑3.0、L4自动驾驶巴士量产下线,这是百度All in AI一年后的最新答卷...

    机器之心报道,作者:李泽南. 去年的 7 月 5 日,百度在北京国际会议中心开办了首届「AI 开发者大会」.在会上,百度首次喊出了「All in AI」的口号.一年的时间过去了,今天在同样地点举行的第 ...

  6. Mobileye 自动驾驶策略(二)

    Mobileye 自动驾驶策略(二) 与多方都成功进行了合作,其中比较大型的合作包括法雷奥.百度和中国 ITS. 法雷奥是最近的的 Tier 1 合作伙伴,法雷奥和 Mobileye 签署协议,表示未 ...

  7. 1.2G内存试玩RAMOS_XP

    1.2G内存试玩RAMOS_XP1.为了防止做系统时出现意外,用Bootice把C盘MBR修改为Grub4dos,这样子系统如果失败,可以进入PE重做. 2.进入PE格式化C盘,格式化的时候勾选启用N ...

  8. 深度学习与自动驾驶领域的数据集(KITTI,Oxford,Cityscape,Comma.ai,BDDV,TORCS,Udacity,GTA,CARLA,Carcraft)

    http://blog.csdn.net/solomon1558/article/details/70173223 Torontocity HCI middlebury caltech 行人检测数据集 ...

  9. [原]JSBSim 自动驾驶(浅出)

    jsbsim的脚本文件分为几大类: 1.系统脚本: systems  包含通用飞机各部分功能模块组件以及自动飞行控件:Autopilot.xml  和 自动飞行的算法控件:GNCUtilities.x ...

随机推荐

  1. POJ 2513 无向欧拉通路+字典树+并查集

    题目大意: 有一堆头尾均有颜色的木条,要让它们拼接在一起,拼接处颜色要保证相同,问是否能够实现 这道题我一开始利用map<string,int>来对颜色进行赋值,好进行后面的并查操作以及欧 ...

  2. hdu 1325数据弱

    #include<stdio.h>//判断是否有环,判断是否有点,判断是否是一个父节点 #include<string.h> #define N 1000000 int pre ...

  3. ubuntu 18.04取消自动锁屏以及设置键盘快捷锁屏

    1:操作设置取消自动锁屏: setting-->power--->never 2:  设置自动锁屏快捷键: 快捷键设置一般在setting-->devices--->keybo ...

  4. 同步OR异步?WebFlux开发真的比Servlet开发要快?顺便再科普下CompletableFuture

    在看下文之前,先给大家科普一点基础知识 Runable:线程任务类接口,没有返回值 Callable:与上面的不同就是有返回值 Executor:定义了线程池执行任务的接口,不过只定义了Runable ...

  5. URAL 1614. National Project “Trams” [ 构造 欧拉回路 ]

    传送门 1614. National Project “Trams” Time limit: 0.5 secondMemory limit: 64 MB President has declared ...

  6. Hashtable和HashMap 的区别

    Hashtable和HashMap 第一点不同 主要是历史原因.Hashtable是基于陈旧的Dictionary类的,HashMap是Java 1.2引进的Map接口的一个实现. 第二点不同 (也许 ...

  7. POJ 2109 Power of Cryptography【高精度+二分 Or double水过~~】

    题目链接: http://poj.org/problem?id=2109 参考: http://blog.csdn.net/code_pang/article/details/8263971 题意: ...

  8. P1455 搭配购买

    洛谷——P1455 搭配购买 题目描述 明天就是母亲节了,电脑组的小朋友们在忙碌的课业之余挖空心思想着该送什么礼物来表达自己的心意呢?听说在某个网站上有卖云朵的,小朋友们决定一同前往去看看这种神奇的商 ...

  9. Java日志框架使用技巧收集(slf4j、jcl、jul、log4j1、log4j2、logback)

    乒乓狂魔-教程: jdk-logging.log4j.logback日志介绍及原理 commons-logging与jdk-logging.log4j1.log4j2.logback的集成原理 slf ...

  10. SeaGlass:手工搭建伪基站监控系统

    “伪基站”即假基站,设备一般由主机和笔记本电脑或手机组成,通过短信群发器.短信发信机等相关设备能够搜取以其为中心.一定半径范围内的手机卡信息,利用2G移动通信的缺陷,通过伪装成运营商的基站,冒用他人手 ...