电机控制基础1– 从三相交流电到电机转矩 (qq.com) 电机控制基础2 - 一文详解磁场定向控制FOC (qq.com) 电机控制基础3 - 一文详解SVPWM (qq.com) 电机控制基础4 - SVPWM详解补充 (qq.com)
2 软件基础
1)要建怎样的模型
假设需要建立一个整车动力学方程模型,分别计算滚动阻力,空气阻力和坡道阻力,这是一种我在学生时代最常用的实现方式,一目了然,简单直接。
方便理解模型算法:模型应具备强可读性,接口清晰,记录详细。 提高建模效率:模型易于维护和修改,组件重用性强,调用方便,架构清晰。 方便模型测试:模型可测试,并且测试方便。 方便生成代码:生成的嵌入式代码方便,软件修改方便,生成的代码具有较强的鲁棒性。
怎么理解SWE.4 软件单元测试 Part1 (qq.com) 怎么理解SWE.4 软件单元测试 Part2-动态UT (qq.com) 怎么理解SWE.4 软件单元测试 Part3-落地实施 (qq.com) 怎么理解SWE.4软件单元测试 Part4- 制定策略 (qq.com)
4)理论方面的基础
推荐资源:
CPU 是怎么认识代码的?
依据基本原理构建现代计算机:从与非门到俄罗斯方块(基于项目的课程)
依据基本原理构建现代计算机:从与非门到俄罗斯方块 Part II(基于项目的课程)
以上三点就是个人对于ECU应用层软件开发的软件基础理解,你需要创造什么样的软件,什么样的模型,以及软件背后是在如何运行。
1)开发流程
对于开发流程上篇文章也提到过:什么时候(When)谁(Who)通过哪些活动必须交付怎样(How)的东西(What)。核心点是交付,由此会产生很多的问题与纠纷,到时就会回归到开发流程整个道德至高点,如果你没有流程意识,不懂开发流程,可能就会出现埋头辛苦地干活,结果背锅还是你。
当然这是现实残酷的一面,回归追求产品质量的一面,有效的开发流程也将是ECU应用层软件开发的质量的保证。ECU应用层软件是以V流程进行开发,即需求分析,架构设计,模型开发,单元测试,软件集成与测试和软件确认测试这6个环节。对于这6个环节需要做什么,需要什么产出,可以参考ASPICE或者功能安全ISO26262。
2 开发工具
开发工具主要针对开发流程的这6个环节,以及软件项目开发活动管理。下面列举一个如何选择工具链的案例,如下针对ECU应用层软件选取如下的开发工具:
开发工具选取决策背景是这样的:先了解公司其他ECU应用层软件团队工具链情况,确定了最核心的建模和生成代码工具,采用了基于simulink建模和Embedder code生成代码的工具方案;然后根据控制器的MCU为英飞凌TC系列以及供应商的BSW工具链情况,采用Tasking来编译,Vector的CANape来标定和测量,ASAP2来生成A2L;再根据公司现有的软件项目管理项目情况,软件需求使用Polarion来管理,模型和代码版本管理采用SVN;以此最终基础确定了ECU应用层软件的开发工具链配置清单。
最后关于开发工具的使用,从项目角度来说,对于个人的要求够用就行,当然大多数人将处于这种水平,而从个人角度,取决于你的职业发展规划,工具用的好卖工具可以是一种选择。
关于ECU应用层软件入门的三部曲之2 基础的内容,核心差不多就是以上这几个方面,归纳起来就是:
掌握ECU应用层软件的目标产品功能,控制方法和特性等; 明确目标的ECU应用层软件模型和代码,以及验证方法; 理解ECU应用层软件的开发流程和开发工具。
创作不易,欢迎点赞再看收藏关注!
汽车研发交流群,有兴趣的朋友请添加群主:prOmiseyes,备注:公司+职务入群。仅限汽车从业人员。