新能源汽车的软件系统相当复杂,它们就像是车辆的“数字神经系统”,协同工作让车辆变得更智能、更高效。下面我将带大家了解新能源汽车软件的主要分类、常用开发工具,以及它们之间的关联。

一、 新能源汽车软件分类
首先,我们来看看新能源汽车软件的几种主要类型。不同类型的软件在车辆中扮演着不同的角色,对开发工具和要求也各不相同
动力与底盘控制软件 | 控制车辆运动(如电机控制、刹车、转向)、管理动力系统(如VCU, MCU, BMS) | ClassicAUTOSAR, VectorCANape, dSPACEControlDesk,ETASINCA,ANSYSSCADE,MATLAB/Simulink | 高 | 博世ESP,大陆集团ESC,采埃孚EPS |
车身控制软件 | 管理车身舒适与便利功能(如车门车窗、雨刮、空调、无钥匙进入) | C/C++, AUTOSAR Adaptive, CANoe, Jenkins, Git | 中 | 海拉BCM,电装空调控制器 |
智能驾驶软件 | 环境感知、决策规划、控制执行,实现辅助驾驶或自动驾驶 | Python,ROS2, Apollo,MATLAB, Simulink,CARLA, PreScan, TensorRT, PyTorch,GitLab CI/CD | 至高 | 特斯拉Autopilot,蔚来NOP,小鹏NGP |
智能座舱软件 | 提供信息娱乐、人机交互、车载生态等服务 | AndroidAutomotive,QNX,HarmonyOS, Qt, Unity, 云平台如AWS, Azure)应用商店 | 中低 | 比亚迪DiLink,华为HarmonyOS for Car,蔚来NOMI |
车联网与远程服务软件 | 实现车与云、车与车、车与基础设施的通信,提供远程控制、数据采集、OTA升级等服务 | Java, ython, MQTT, Kafka, Kubernetes, Docker, 云平台(如阿里云、AWS),SOA框架 | 变化 | 广汽ADiGO PILOT,上汽斑马智行 |
电池管理软件 | 监控电池状态(电压、温度、SOC、SOH)、控制充放电、均衡管理、热管理、故障诊断 | MATLAB/Simulink, ETAS INCA, Vector CANape,dSPACE ControlDesk,NI BatteryTest System,英飞凌AURIX开发套件 | 高 | 宁德时代BMS,比亚迪BMS,特斯拉BMS |
二、基础软件开发与测试工具

新能源汽车软件的开发、测试和验证离不开一系列专业工具,这些工具也因软件类别的不同而有差异
AUTOSAR (AUTomotive Open System ARchitecture):Classic AUTOSAR适用于对安全性和实时性要求高的动力、底盘、BMS等控制器;Adaptive AUTOSAR 更适用于智能座舱、高级别自动驾驶等需要高性能计算和灵活通信的场景。
仿真与模型-Based设计工具:MATLAB/Simulink广泛应用于控制系统设计(如BMS、VCU)、算法建模和仿真。CARLA、PreScan 等用于自动驾驶算法的仿真测试。
标定、测试与诊断工具:Vector CANape(用于ECU标定、测量和诊断), CANoe (用于网络、ECU和诊断测试), dSPACE ControlDesk (用于HIL硬件在环测试), ETAS INCA (用于ECU校准和验证)。
HIL (Hardware-in-the-Loop) 测试系统:dSPACE, NI, ETAS等提供的HIL系统,用于在实验室环境下模拟真实车辆环境,对ECU进行全面的测试,尤其在动力总成、底盘控制、BMS和ADAS领域至关重要。

三、线控系统中各个软件岗位及职责要求与协作对象
新能源汽车的软件是一个多层次、多领域融合的复杂系统。不同类型的软件在功能、安全要求、实时性、开发工具和更新策略上都有着显著差异,接下来以线控制动系统为例了解一下具体软件岗位的职责和分工。
职位类别 | 核心职责 | 主要工具与技能要求 | 关键协作对象 |
系统架构师/系统工程师 | 定义整车级别的功能需求、进行系统架构设计、分解系统需求至软硬件、确保功能安全 | 需求管理工具、架构设计工具、熟悉AUTOSAR、精通ISO 26262 | 项目经理、软硬件团队、客户 |
应用层算法工程师 | 开发核心控制算法、进行算法建模与仿真、自动代码生成、负责MIL/SIL/PIL测试 | MATLAB/Simulink/Stateflow, C语言, 车辆动力学仿真软件 | 系统工程师、软件集成工程师、测试工程师 |
底层软件工程师 | 配置AUTOSAR基础软件、开发复杂设备驱动、集成底层软件与应用层软件、支持网络管理与诊断 | AUTOSAR配置工具、MCAL配置、编译调试工具 | 应用层工程师、硬件工程师 |
软件集成与测试工程师 | 制定测试策略与计划、搭建测试环境(HIL、台架、实车)、执行系统集成与测试、分析测试问题 | CANoe/CANalyzer, dSPACE/ETAS HIL, INCA, 自动化测试脚本 | 所有软件开发团队、质量部门 |
功能安全工程师 | 制定功能安全概念、开展安全分析(FMEA、FTA)、评估软件架构的安全性、支持安全相关的测试和认证 | 安全分析工具、熟悉ISO 26262标准 | 系统工程师、所有软件开发团队 |
以上角色并非孤立,而是在V模型开发流程和AUTOSAR架构下协同工作。V模型为左边是需求分析和设计,右边是对应的测试验证。系统工程师定义需求,算法工程师进行模型开发与设计,底层软件工程师实现基础软件,集成测试工程师进行各级验证。AUTOSAR的话通过分层架构(应用层、运行时环境、基础软件层)实现了软硬件的解耦。应用层工程师关注算法,底层软件工程师提供标准化的基础服务。
总而言之,新能源汽车的软件是一个多层次、多领域融合的复杂系统。随着汽车智能化的不断演变,新技术随时更新,只有关注市场变化才可以成为企业想要的哪个不二人选

