汽车控制器软件开发的常用工具

本文介绍下了解到的汽车控制器开发的工具链,本文侧重于于系统和应用软件开发两个方面的工具。

1 需求管理

需求工具接触到的有DOORS, Polarion, and PTC Integrity,都是面向大型工程项目的需求管理工具,虽然它们都有类似的功能,但是它们也有一些显著的差异。

  • DOORS:DOORS是IBM开发的需求管理工具,特别强调需求的一致性和完整性。它支持多维数据结构,可以方便地组织和管理大量需求信息。

  • Polarion:Polarion是一款由Siemens开发的需求管理工具,特别强调需求的可视化和可操作性。它提供了一系列图形和表格,方便用户理解和访问需求信息。

  • PTC Integrity:PTC Integrity是PTC公司开发的需求管理工具,特别强调需求的协作性。它支持多用户协作,团队成员可以共享信息,协作完成需求管理任务。

总的来说,选择哪款需求管理工具取决于您的需求和项目的需求。目前个人偏向于用DOORS。DOORS (Dynamic Object-Oriented Requirements System)的特点包括:

  1. 需求跟踪:DOORS可以跟踪需求的生命周期,从需求收集到实现,并且可以确保需求的一致性和完整性。

  2. 多维数据结构:DOORS支持多维数据结构,可以方便地组织和管理大量需求信息。

  3. 可视化:DOORS提供了一系列图形和表格,可以帮助用户更好地理解和访问需求信息。

  4. 协作:DOORS支持多用户协作,团队成员可以共享信息,协作完成需求管理任务。

  5. 审查和审批:DOORS支持需求审查和审批,可以确保需求的质量和合法性。


Source: Sudo Null - Latest IT News

2 架构设计

系统架构和软件架构设计工具包括:

  • Enterprise Architect(EA):这是一个高级系统和软件架构工具,可以帮助构建系统和软件的架构模型,以及记录和管理需求和元数据。

  • Microsoft Visio:这是一种图形化工具,可以帮助构建系统架构图和软件架构图。

以上工具都可以帮助设计人员在需求和限制的情况下,设计出可扩展、可维护的系统架构和软件架构,两者相较而言,EA更专业更强大,首选EA。

source: Moving Visio Diagrams into Enterprise Architect

3 详细设计

3.1 代码编辑器

ECU(汽车电子控制单元)软件开发中常用的代码编辑工具包括:

  • Source Insight: 一款功能强大的代码阅读和编辑工具,主要用于源代码的浏览、分析和编辑。

  • Text editors:如 Sublime Text、Notepad++等,这些工具是通用的文本编辑器,可以用于编写和编辑代码。

  • Eclipse:这是一个通用的IDE,支持多种编程语言,可以用于开发嵌入式系统。

  • Visual Studio:这是一个微软公司提供的IDE,支持多种编程语言,并且有丰富的插件库。

这些工具都可以帮助开发人员编写高质量的代码,并在编码过程中提供自动完成、语法检查等功能。在选择代码编辑工具时,需要考虑项目需求和团队偏好,以选择最合适的工具。

个人习惯用Source Insight,Source Insight主要用于源代码的浏览、分析和编辑。它可以帮助开发人员更好地理解代码,支持代码标记、代码注释、代码折叠等功能,方便开发人员阅读代码。Source Insight还支持语法高亮、代码提示、代码完成等功能,可以大大提高编码效率。此外,Source Insight还具有调试、搜索和替换等功能,可以帮助开发人员快速找到问题并进行解决。总的来说,Source Insight是一款很好的代码阅读和编辑工具,特别适合用于大型项目的代码开发。


source: https://www.sourceinsight.com/wp-content/uploads/2016/03/mainappwide1130.png

3.2 模型开发

Simulink, TargetLink 和 ASCET 是三种常用的建模工具,它们各具特点,主要区别如下:

  • Simulink:Simulink 是一款基于图形界面的模型开发工具,具有丰富的图形建模和仿真功能,适用于各种系统仿真需求。

  • TargetLink:TargetLink 是一款专门为汽车控制器开发而设计的建模工具,可以帮助用户快速生成高质量的 C 代码,适用于严格的汽车控制器开发流程。

  • ASCET:ASCET 是一款专注于模型驱动开发的建模工具,可以帮助用户进行系统建模和仿真,并生成高效的代码。ASCET 也适用于汽车控制器的开发,但相比 TargetLink 更注重模型的仿真和代码生成。

这三种工具中,ASCET好像主要博世使用,其他家一般都使用Simulink,TargetLink。TargetLink 通过在 Simulink 模型中生成代码来支持高效的开发流程,这两款工具结合使用可以提高开发效率并帮助提高代码质量。


Source: TargetLink

4 测试

4.1 单元测试

单元测试包括静态单元测试和动态单元测试。其中静态单元测试,一般使用Polyspace,Tessy等工具。

Polyspace是一款强大的代码静态分析工具,用于检测软件代码中的潜在错误和安全漏洞。它可以分析代码并确定可能导致错误或漏洞的代码段,并提供详细的说明和建议以便开发人员可以解决问题。Polyspace支持许多编程语言,包括C,C++,Ada和MATLAB。它是一个高效的工具,可以在编写代码的同时对代码进行实时分析,从而减少开发周期并提高代码质量。


source: Polyspace

而动态单元测试则一般基于Simulink,TargetLink来实施。

4.2 集成和确认测试

对于集成和确认测试,这里主要介绍下Vector公司的三件套:CANalyzer、CANape 和 CANoe,均用于汽车通信网络分析和测试的工具。

  • CANalyzer:用于分析和测试控制器区域网络(CAN)通信系统的工具。它提供了数据监测、协议分析、错误注入和总线模拟等功能。

  • CANape:用于提供电子控制单元(ECU)高级测量和标定功能的工具。CANape 提供了一个环境,用于开发和测试控制算法,并实时标定 ECU 参数。

  • CANoe:用于在汽车行业中开发、测试和分析 ECU 和网络的工具。它提供了一个全面的环境,用于测试通信协议,标定ECU参数和模拟复杂的网络交互。

这三种工具可以一起使用,为汽车通信网络和 ECU 的开发和测试提供一个集成的解决方案。


Source: https://en.wikipedia.org/wiki/CANape

5 版本管理

常见的软件项目管理和版本管理工具有:

  • Jira:一种广泛使用的软件开发团队的项目和问题跟踪工具。

  • GitHub:一个基于网页的版本控制和协作平台,被广泛应用于软件开发团队。

  • Bitbucket:一个基于网页的版本控制和协作平台,专门为专业软件开发团队设计。

  • SVN:一个广泛使用的软件开发项目版本控制系统。

  • PTC Integrity:一款综合性的软件项目管理和版本管理工具,

  • Git:一款开源的版本控制系统,主要用于软件项目的版本管理。

此处,以PTC Integrity进行说明,PTC Integrity可支持大型软件项目的开发、测试和交付。它提供了一系列的项目管理功能,如需求管理、项目计划、缺陷跟踪等。PTC Integrity 同时也提供了强大的版本管理功能,可以管理代码和文档的变更,以及控制软件的发布。PTC Integrity 可以让团队中的多个开发人员在同一个项目上并行工作,通过版本管理功能确保代码的完整性和一致性。也具有强大的分支管理功能,可以让开发人员在不同的分支上开发,并方便地合并到主分支。

当然具体选择哪个工具取决于软件开发项目和团队的具体需求和要求,如团队规模、开发流程和项目复杂度等。



阅读原文,关注作者知乎!


添加下方微信加入汽车交流群

添加备注姓名+公司+领域/地域

智能汽车开发者平台 分享汽车最新前言技术解读,行业分析,与授权行业资料分享平台。
评论
  • 在智能化技术快速发展当下,图像数据的采集与处理逐渐成为自动驾驶、工业等领域的一项关键技术。高质量的图像数据采集与算法集成测试都是确保系统性能和可靠性的关键。随着技术的不断进步,对于图像数据的采集、处理和分析的需求日益增长,这不仅要求我们拥有高性能的相机硬件,还要求我们能够高效地集成和测试各种算法。我们探索了一种多源相机数据采集与算法集成测试方案,能够满足不同应用场景下对图像采集和算法测试的多样化需求,确保数据的准确性和算法的有效性。一、相机组成相机一般由镜头(Lens),图像传感器(Image
    康谋 2024-12-12 09:45 74浏览
  • 习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记
    youyeye 2024-12-12 10:13 31浏览
  • 本文介绍瑞芯微RK3588主板/开发板Android12系统下,APK签名文件生成方法。触觉智能EVB3588开发板演示,搭载了瑞芯微RK3588芯片,该开发板是核心板加底板设计,音视频接口、通信接口等各类接口一应俱全,可帮助企业提高产品开发效率,缩短上市时间,降低成本和设计风险。工具准备下载Keytool-ImportKeyPair工具在源码:build/target/product/security/系统初始签名文件目录中,将以下三个文件拷贝出来:platform.pem;platform.
    Industio_触觉智能 2024-12-12 10:27 37浏览
  • 习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记
    youyeye 2024-12-11 17:58 83浏览
  • 全球智能电视时代来临这年头若是消费者想随意地从各个通路中选购电视时,不难发现目前市场上的产品都已是具有智能联网功能的智能电视了,可以宣告智能电视的普及时代已到临!Google从2021年开始大力推广Google TV(即原Android TV的升级版),其他各大品牌商也都跟进推出搭载Google TV操作系统的机种,除了Google TV外,LG、Samsung、Panasonic等大厂牌也开发出自家的智能电视平台,可以看出各家业者都一致地看好这块大饼。智能电视的Wi-Fi连线怎么消失了?智能电
    百佳泰测试实验室 2024-12-12 17:33 45浏览
  • 铁氧体芯片是一种基于铁氧体磁性材料制成的芯片,在通信、传感器、储能等领域有着广泛的应用。铁氧体磁性材料能够通过外加磁场调控其导电性质和反射性质,因此在信号处理和传感器技术方面有着独特的优势。以下是对半导体划片机在铁氧体划切领域应用的详细阐述: 一、半导体划片机的工作原理与特点半导体划片机是一种使用刀片或通过激光等方式高精度切割被加工物的装置,是半导体后道封测中晶圆切割和WLP切割环节的关键设备。它结合了水气电、空气静压高速主轴、精密机械传动、传感器及自动化控制等先进技术,具有高精度、高
    博捷芯划片机 2024-12-12 09:16 82浏览
  • 时源芯微——RE超标整机定位与解决详细流程一、 初步测量与问题确认使用专业的电磁辐射测量设备,对整机的辐射发射进行精确测量。确认是否存在RE超标问题,并记录超标频段和幅度。二、电缆检查与处理若存在信号电缆:步骤一:拔掉所有信号电缆,仅保留电源线,再次测量整机的辐射发射。若测量合格:判定问题出在信号电缆上,可能是电缆的共模电流导致。逐一连接信号电缆,每次连接后测量,定位具体哪根电缆或接口导致超标。对问题电缆进行处理,如加共模扼流圈、滤波器,或优化电缆布局和屏蔽。重新连接所有电缆,再次测量
    时源芯微 2024-12-11 17:11 109浏览
  • 一、SAE J1939协议概述SAE J1939协议是由美国汽车工程师协会(SAE,Society of Automotive Engineers)定义的一种用于重型车辆和工业设备中的通信协议,主要应用于车辆和设备之间的实时数据交换。J1939基于CAN(Controller Area Network)总线技术,使用29bit的扩展标识符和扩展数据帧,CAN通信速率为250Kbps,用于车载电子控制单元(ECU)之间的通信和控制。小北同学在之前也对J1939协议做过扫盲科普【科普系列】SAE J
    北汇信息 2024-12-11 15:45 110浏览
  • 首先在gitee上打个广告:ad5d2f3b647444a88b6f7f9555fd681f.mp4 · 丙丁先生/香河英茂工作室中国 - Gitee.com丙丁先生 (mr-bingding) - Gitee.com2024年对我来说是充满挑战和机遇的一年。在这一年里,我不仅进行了多个开发板的测评,还尝试了多种不同的项目和技术。今天,我想分享一下这一年的故事,希望能给大家带来一些启发和乐趣。 年初的时候,我开始对各种开发板进行测评。从STM32WBA55CG到瑞萨、平头哥和平海的开发板,我都
    丙丁先生 2024-12-11 20:14 68浏览
  • 应用环境与极具挑战性的测试需求在服务器制造领域里,系统整合测试(System Integration Test;SIT)是确保产品质量和性能的关键步骤。随着服务器系统的复杂性不断提升,包括:多种硬件组件、操作系统、虚拟化平台以及各种应用程序和服务的整合,服务器制造商面临着更有挑战性的测试需求。这些挑战主要体现在以下五个方面:1. 硬件和软件的高度整合:现代服务器通常包括多个处理器、内存模块、储存设备和网络接口。这些硬件组件必须与操作系统及应用软件无缝整合。SIT测试可以帮助制造商确保这些不同组件
    百佳泰测试实验室 2024-12-12 17:45 39浏览
  • RK3506 是瑞芯微推出的MPU产品,芯片制程为22nm,定位于轻量级、低成本解决方案。该MPU具有低功耗、外设接口丰富、实时性高的特点,适合用多种工商业场景。本文将基于RK3506的设计特点,为大家分析其应用场景。RK3506核心板主要分为三个型号,各型号间的区别如下图:​图 1  RK3506核心板处理器型号场景1:显示HMIRK3506核心板显示接口支持RGB、MIPI、QSPI输出,且支持2D图形加速,轻松运行QT、LVGL等GUI,最快3S内开
    万象奥科 2024-12-11 15:42 86浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦