自动驾驶纵向控制-复现Apollo双pid纵向位置跟踪 复现百度apollo纵向控制 纵向控制...
自动驾驶纵向控制-复现Apollo双pid纵向位置跟踪 复现百度apollo纵向控制 纵向控制已经制作好油门刹车标定表无需自己做标定。凌晨三点半的显示器蓝光打在脸上手指机械地敲着键盘。当我第N次看着测试车在Simulink里画出心电图般的速度曲线时终于决定扒开Apollo的纵向控制黑盒子——不就是双PID吗今天咱们就手撕这套经典结构。先看整体架构Apollo把纵向控制拆成位置和速度两个闭环。就像驾校教练同时管着方向盘和油门位置PID负责告诉车该跑多快速度PID实际踩油门刹车。这个结构妙在能处理不同控制模式的无缝切换后面细说。位置PID导航小姐姐的唠叨class PositionPID: def __init__(self, kp, ki, kd, max_integral): self.kp kp # 0.3效果拔群 self.ki ki # 0.01防止积分暴走 self.error_sum 0.0 self.last_error 0.0 def calculate(self, target_pos, current_pos, dt): error target_pos - current_pos self.error_sum error * dt self.error_sum np.clip(self.error_sum, -max_integral, max_integral) d_error (error - self.last_error) / dt output self.kp*error self.ki*self.error_sum self.kd*d_error self.last_error error return output这个PID输出的其实是期望速度。注意max_integral这个参数实测不加的话在长距离误差时会出现油门踩穿底盘的灵异现象。建议取期望最大速度的2倍左右。自动驾驶纵向控制-复现Apollo双pid纵向位置跟踪 复现百度apollo纵向控制 纵向控制已经制作好油门刹车标定表无需自己做标定。速度PID灵魂脚法控制器当位置PID给出目标速度后真正的重头戏来了double SpeedController::Update(double target_speed, double current_speed) { double error target_speed - current_speed; // 动态调整积分系数低速时加强控制 double adaptive_ki ki * (1 2/(current_speed 0.1)); // 带滤波的微分项 double d_error LowPassFilter(error - last_error_, 0.2); double accel_cmd kp_*error adaptive_ki*integral_ kd_*d_error; // 刹车油门模式切换 if (accel_cmd 0) { return CalculateThrottle(accel_cmd); } else { return CalculateBrake(-accel_cmd); } }这里有几个精妙设计低速时积分增强解决蠕动工况的稳态误差微分项经过低通滤波避免速度传感器噪声被放大根据加速度指令正负自动切换油门刹车比单独控制更顺滑模式切换的舞蹈最让我头秃的是巡航模式与停车模式的切换逻辑。Apollo用状态机管理这里简化版if target_speed 0.3: # 进入停车模式 if abs(position_error) 0.05: execute_full_stop() else: use_position_pid_only() elif current_speed target_speed * 0.8: # 急加速模式 override_pid_with_wot() # 地板油策略 else: # 正常巡航 enable_speed_feedforward() # 预瞄补偿注意从停车模式切回时要做积分重置否则残留的积分项会让车像突然被踹一脚。实测加上reset_integral()后起步顿挫减少了70%。当我把这些模块拼装完成看着测试车在弯道前自动降速入弯出弯时平稳加速终于理解了Apollo工程师的良苦用心——好的控制就像呼吸你感觉不到它的存在但一旦失调就会窒息。下次试试加入坡度补偿应该能让长上坡路段不再喘得像老拖拉机...查看GitHub仓库的兄弟们记得把标定表路径改对血的教训

相关新闻

动力学方程

动力学方程

考虑扰动的欠驱动船舶轨迹跟踪自适应滑模控制水面上的铁疙瘩要听话可不容易。三万吨的货轮在风浪里扭秧歌,舵机转得冒火星子还追不上预定航线,这场景让多少控制工程师头秃。传统PID那套在平静水域还行,遇上横风横流立马歇菜——这时候就得掏出…

2026/7/5 5:30:50 阅读更多 →
探索双闭环 PI 控制的移相全桥变换器

探索双闭环 PI 控制的移相全桥变换器

双闭环PI控制的移相全桥变换器。 下图为仿真模型图,4个开关管对应的pwm波形图以及输出电压电流波形图和闭环性能测试输出波形图。 在电力电子领域,双闭环 PI 控制的移相全桥变换器可是个相当重要的存在。今天咱就来唠唠它,顺便结合一些仿真模…

2026/5/17 3:27:44 阅读更多 →
PyTorch框架——基于深度学习EfficientDeRain神经网络AI去雨滴图像增强系统

PyTorch框架——基于深度学习EfficientDeRain神经网络AI去雨滴图像增强系统

第一步:EfficientDeRain介绍 EfficientDeRain 是一个针对单张图像去雨的开源项目,该项目由清华大学的研究团队提出,主要用于处理图像中的雨水干扰,恢复图像的真实场景 核心功能 图像去雨:EfficientDeRain 通过学习像素…

2026/5/17 3:27:43 阅读更多 →

最新新闻

远程协助软件推荐 远程协助软件哪个好

远程协助软件推荐 远程协助软件哪个好

日常帮亲友排查设备故障、异地处理工作难题,都需要靠谱的远程协助,便捷高效的远程协助能大幅降低跨设备、跨地域的操作成本。哪款远程协助软件体验比较呢?无界趣连2.0凭借轻量化设计与扎实的使用体验,成为个人日常远程协助的优选工…

2026/7/7 4:55:49 阅读更多 →
AD15 敷铜(Polygon Pour) 的完整操作,按步骤做即可,适合顶层/底层GND或电源敷铜。

AD15 敷铜(Polygon Pour) 的完整操作,按步骤做即可,适合顶层/底层GND或电源敷铜。

一、准备工作- 确保 板框(Board Shape) 已画好(机械层 Mechanical 1)。​- 布局、走线基本完成,DRC 先过一遍。​- 切换到要敷铜的层:底部层标签点 Top Layer(顶层) 或 Bottom Layer…

2026/7/7 4:55:49 阅读更多 →
NET 10:Oxigraph 的 FFI 桥接实践

NET 10:Oxigraph 的 FFI 桥接实践

架构概览┌──────────────────────────────────────────────────────────┐ │ .NET 应用层 │ │ ┌──────────┐ ┌────────────────…

2026/7/7 4:55:49 阅读更多 →
从静态限流到智能负载管理:Uber 如何治理大规模数据库过载

从静态限流到智能负载管理:Uber 如何治理大规模数据库过载

本文是对 How Uber Conquered Database Overload: The Journey from Static Rate-Limiting to Intelligent Load Management 的整理与翻译。 内容结构概览 本文会围绕 Uber 如何从静态限流走向智能负载管理展开,主要包括: 为什么 Uber 的数据库过载治理…

2026/7/7 4:47:48 阅读更多 →
Uber 如何用原生 gRPC 加速 OpenSearch:从 REST/JSON 瓶颈到搜索与写入性能优化

Uber 如何用原生 gRPC 加速 OpenSearch:从 REST/JSON 瓶颈到搜索与写入性能优化

本文是对 Accelerating Search and Inestion with High-Performance gRPC™ in OpenSearch™ 的整理与翻译。 内容结构概览 本文会围绕 Uber 如何在 OpenSearch 中引入原生 gRPC 传输层展开,主要包括: 为什么搜索系统在 Uber 几乎无处不在REST/JSON 在…

2026/7/7 4:47:48 阅读更多 →
CRM管理系统有哪些?2026年高性价比选型指南

CRM管理系统有哪些?2026年高性价比选型指南

很多企业在挑选 CRM 时,习惯先看每家的报价单,比完单价比折扣,最后选一个 "看起来最便宜" 的方案。但我们接触过的大量真实案例显示:约 60% 的企业在 CRM 上线后的第三年,实际支出会超出最初预算的 40% 以上…

2026/7/7 4:45:48 阅读更多 →

日新闻

鸿蒙新特性:图片画廊与轮播导航——构建沉浸式图片浏览体验

鸿蒙新特性:图片画廊与轮播导航——构建沉浸式图片浏览体验

图片浏览是移动应用中最高频的场景之一。从社交应用的照片流到电商平台的商品图集,从旅游应用的景点相册到摄影作品展示——用户对图片浏览的体验要求不断提高:流畅的切换动画、直观的缩略图导航、便捷的收藏操作、自动播放模式。HarmonyOS NEXT ArkUI 虽…

2026/7/7 0:05:16 阅读更多 →
24V DC-DC降压芯片PW2312B/PW2815,SOT23-6到SOP8-EP方案对比

24V DC-DC降压芯片PW2312B/PW2815,SOT23-6到SOP8-EP方案对比

24V稳压芯片完整选型指南 PW8600 PW75XX PW2815 PW2312B LDODC/DC全方案 一、24V稳压方案概述 24V直流电源在工业自动化、门禁系统、电梯控制、汽车电子、LED驱动、监控设备等场景中应用极广,是最常见的中压直流母线电压。要将24V母线稳定降压至下游MCU、传感器…

2026/7/7 0:05:16 阅读更多 →
RAG+知识图谱混合检索与Graph RAG核心对比

RAG+知识图谱混合检索与Graph RAG核心对比

做企业RAG落地的团队,往往容易卡在一容易踩坑的选型难题: 当需求单纯靠向量RAG搞不定、单纯靠知识图谱也搞不定,必须同时依赖「文本语义理解 实体关系推理」时,到底是做「向量图谱混合检索」就够了,还是必须上「Grap…

2026/7/7 0:07:19 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/6 8:11:50 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/6 8:11:52 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/6 6:52:56 阅读更多 →

月新闻