《开源精选》是我们分享Github、Gitee等开源社区中优质项目的栏目,包括技术、学习、实用与各种有趣的内容。本期推荐的openpilot是一个开源的驾驶辅助系统。 openpilot介绍 openpilot是一个开源的驾驶辅助系统。目前,openpilot 执行自适应巡航控制 (ACC)、自动车道居中 (ALC)、前方碰撞警告 (FCW) 和车道偏离警告 (LDW) 的功能,适用于越来越多的受支持汽车品牌、车型和车型年份。此外,在使用 openpilot 时,基于摄像头的驾驶员监控 (DM) 功能会提醒分心和睡着的驾驶员。查看更多关于车辆集成和限制的信息。 在车内的专用设备上运行 要在汽车中使用 openpilot,您需要做四件事 运行此软件的受支持设备。 地址:https://comma.ai/shop/products/three 介绍: 此设备是第四代定制硬件,设计用于您的汽车。它具有双凸轮 360° 视野,加上一个窄凸轮,可以发现远处的物体。三台 1080p 摄像头具有 120 dB 的动态范围,比领先的电动汽车制造商领先两代。它像手机一样连接,具有 Wi-Fi、LTE 和更好的高精度 GPS。 这个设备的设置过程允许用户输入自定义软件的 URL。URL openpilot.comma.ai 将安装 openpilot 的发布版本。要安装 openpilot master,您可以使用 installer.comma.ai/commaai/master,将 commaai 替换为另一个 GitHub 用户名可以安装一个 fork。 200 多辆受支持的汽车之一。我们支持本田、丰田、现代、日产、起亚、克莱斯勒、雷克萨斯、讴歌、奥迪、大众等。如果您的汽车不受支持,但具有自适应巡航控制和车道保持辅助,它就能够运行 openpilot。 连接到您的汽车的汽车程序。 在电脑上运行 所有 openpilot 服务都可以在 PC 上照常运行,无需特殊硬件或汽车。您还可以在记录或模拟数据上运行 openpilot 以开发或试验 openpilot。 使用 openpilot 的工具,您可以绘制日志、回放驱动器并观看全分辨率摄像机流。 您还可以使用 CARLA 模拟器在模拟中运行 openpilot 。这允许 openpilot 在您的 Ubuntu 机器上驾驶虚拟汽车。整个设置应该只需要几分钟,但确实需要一个不错的 GPU。 如果连接到网络摄像头和安全带,运行 openpilot 的 PC 也可以控制您的车辆。 安全和测试openpilot 遵守 ISO26262 指南。 openpilot 具有在每次提交时运行的软件在环测试。 执行安全模型的代码存在于 panda 中,并且是用 C 编写的,有关更多详细信息,请参阅代码严谨性。 panda 有软件在环安全测试。 在内部,我们有一个硬件在环 Jenkins 测试套件,用于构建和单元测试各种流程。 panda 有额外的硬件在环测试。 我们在包含 10 个设备的测试柜中运行最新的 openpilot,不断重播路线。 目录结构. ├── cereal # The messaging spec and libs used for all logs ├── common # Library like functionality we"ve developed here ├── docs # Documentation ├── opendbc # Files showing how to interpret data from cars ├── panda # Code used to communicate on CAN ├── third_party # External libraries ├── pyextra # Extra python packages └── system # Generic services ├── camerad # Driver to capture images from the camera sensors ├── clocksd # Broadcasts current time ├── hardware # Hardware abstraction classes ├── logcatd # systemd journal as a service └── proclogd # Logs information from /proc └── selfdrive # Code needed to drive the car ├── assets # Fonts, images, and sounds for UI ├── athena # Allows communication with the app ├── boardd # Daemon to talk to the board ├── car # Car specific code to read states and control actuators ├── controls # Planning and controls ├── debug # Tools to help you debug and do car ports ├── locationd # Precise localization and vehicle parameter estimation ├── loggerd # Logger and uploader of car data ├── manager # Daemon that starts/stops all other daemons as needed ├── modeld # Driving and monitoring model runners ├── monitoring # Daemon to determine driver attention ├── navd # Turn-by-turn navigation ├── sensord # IMU interface code ├── test # Unit tests, system tests, and a car simulator └── ui # The UI示例图 -END- 开源协议:MIT license 开源地址:https://github.com/commaai/openpilot