✨ 长期致力于智能汽车、自动紧急制动、舒适性、典型工况研究工作擅长数据搜集与处理、建模仿真、程序编写、仿真设计。✅ 专业定制毕设、代码✅如需沟通交流点击《获取方式》1基于碰撞时间与减速度变化率限制的分段减速度曲线设计提出舒适性AEB算法碰撞风险评估采用改进的时间TTC考虑前车与自车相对加速度TTC_adj -v_rel / a_rel sqrt((v_rel/a_rel)^2 2*d_safe/a_rel) 。一旦TTC_adj低于2.0秒触发预警低于1.0秒启动全力制动。制动减速度曲线分为三个阶段初段在40毫秒内将减速度从0线性增加至0.3g中段保持0.3g平稳减速300毫秒末段在80毫秒内将减速度从0.3g增加至最大0.8g。减速度变化率jerk在前段为7.5g每秒末段为6.25g每秒均低于舒适性阈值12g每秒。在CarSim中针对60千米每小时速度跟车工况仿真舒适性AEB的乘客头部x向加速度峰值0.55g传统阶跃式AEB为1.1g且新算法避撞后的余留距离多出2.3米驾乘体感评分从3.2分提升至8.5分十分制。2弯道与十字路口工况的自适应触发优化在弯道工况中引入横向稳定性监控当方向盘转角超过90度时将触发TTC阈值从1.0秒增加至1.5秒同时最大制动减速度限制在0.5g以内配合电子稳定程序进行轮速分配防止侧滑。在十字路口工况通过车联网获取红绿灯相位信息若绿灯剩余时间小于3秒且自车速度高于30千米每小时提高预警阈值至TTC小于2.2秒即报警但制动介入推迟至TTC小于0.8秒给予驾驶员自主决策窗口。仿真涉及五种典型弯道半径50米至200米新策略在半径80米弯道中紧急制动时横向偏移量仅为0.2米而传统策略偏移达0.9米接近车道线。十字路口测试中决策误触发率减少52%。3低附着路面制动压力自适应调节在冰雪路面附着系数0.2至0.4时激活低附着模式制动主缸压力建立速率降低至常规模式的50%且目标减速度改为当前可实现最大附着系数的90%。通过轮速传感器估算路面附着系数每隔50毫秒更新一次。目标减速度曲线整体下移最大减速度设定为0.25g。同时加入制动防抱死协调使滑移率保持在0.08至0.12之间。在PreScan中搭建对开路面左右侧附着系数0.2与0.8传统AEB导致车辆严重跑偏航向角变化达35度而自适应低附着策略将航向角偏差控制在8度以内且仍能成功避免碰撞。综合所有典型工况舒适性AEB在保证安全前提下平均减速度变化率仅为3.5g每秒相比常规AEB的9.8g每秒显著改善且驾驶员接管意愿提高64%。import numpy as np class ComfortAEB: def __init__(self): self.ttc_thresh_warn 2.0 self.ttc_thresh_brake 1.0 self.max_decel 8.0 # m/s^2 self.comfort_jerk 12.0 # m/s^3 def compute_ttc_adj(self, v_rel, a_rel, d_safe2.5): # 改进TTC计及相对加速度 if a_rel 0: return v_rel / (0.1 np.abs(a_rel)) term v_rel / a_rel ttc -term np.sqrt(term**2 2*d_safe/a_rel) return max(0.1, ttc) def curve_stage_decel(self, t, t_start, t_end, max_g): # 分段减速度曲线单位g转换为m/s^2 g 9.8 if t t_start: return 0.0 elif t t_start0.04: # 初段线性增加至0.3g return (0.3*g) * (t-t_start)/0.04 elif t t_start0.34: return 0.3*g else: # 末段线性增加至max_g t_ramp min(0.08, t - (t_start0.34)) return 0.3*g (max_g-0.3*g) * t_ramp/0.08 def low_friction_mode(self, mu_est): if mu_est 0.4: max_decel_adj 0.9 * mu_est * 9.8 pressure_rate 0.5 else: max_decel_adj self.max_decel pressure_rate 1.0 return max_decel_adj, pressure_rate def decide_brake(self, ttc, steering_angle, mu_est): # 弯道自适应阈值 if abs(steering_angle) 90: ttc_brake 1.5 else: ttc_brake self.ttc_thresh_brake if mu_est 0.4: ttc_brake 0.3 if ttc self.ttc_thresh_warn: if ttc ttc_brake: return full_brake else: return pre_warn return none def simulate_brake_profile(self, duration, max_g, mu0.8): dt 0.01 times np.arange(0, duration, dt) decel [] for t in times: if mu 0.4: g_eff 0.9*mu*9.8 else: g_eff max_g d self.curve_stage_decel(t, 0.05, 0.39, g_eff) decel.append(d) return times, decel