APP下载

基于MATLAB/Simulink及dSPACE/TargetLink的AMT控制软件开发

2018-10-23兰海龙

机械管理开发 2018年10期
关键词:离合器标定代码

李 萍, 兰海龙

(中国重汽集团大同齿轮有限公司, 山西 大同 037305)

引言

现代汽车智能化控制进程在逐步加快,汽车电子控制单元在逐渐增多,其控制系统的复杂度呈几何式增长,而且随着市场竞争日趋激烈,对汽车电控单元软件开发的可靠性和时效性要求越来越高,而依靠传统费事费力的手写C代码,由于其开发周期长,根本无法满足需求[1-2]。基于MATLAB/Simulink模块化设计语言和Targetlink C代码自动转化工具的软件开发平台,极大地简化了开发流程,缩短了项目周期,使得软件开发工程师能将更多的精力投放到控制流程的优化上,目前已广泛应用于汽车控制领域。

1 基于MATLAB/Simulink和TargetLink的AMT控制系统开发的流程

AMT的核心控制单元是变速器电子控制单元,简称为TCU,其核心的控制处理算法是基于Simulink/Stateflow模块化、流程化的设计语言按照一定的逻辑组合实现的,在MATLAB环境下嵌入TargetLink搭建代码生成环境、对参数变量进行统一管理并实现自动生成C代码。与TCU硬件直接相关的底层驱动代码仍然以手工编写C代码实现。由CodeWarrior工具将两部分C代码集成编译生成二进制文件和map文件,最后由刷写工具将二进制文件写入到TCU存储单元中。Map文件经Targetlink环境链接生成控制器的描述文件A2L文件,该文件包含下载到TCU中所有参变量的地址和类型等信息,利用CANape等标定工具链接A2L文件后,可以方便对运行于TCU中的参变量数值进行调整,在不改变策略的前提下,不用重新刷入代码,就可以实现在线调整控制系统性能达到目标要求。图1为上述开发流程简图。

图1 AMT控制系统软件开发流程

2 TCU底层驱动软件

AMT控制器芯片选用的是飞思卡尔公司的16位MC9S12EP100,底层驱动主要是对芯片上的I/O、定时、中断、A/D等的寄存器进行处理,以实现硬件信号的输入输出处理以及控制系统的动作时序,传统的手写代码结构紧凑、运行效率高、占用内容资源少,它们包括以下内容。

1)I/O:处 理 D-N-R 旋 钮 信 号 、UPSHIFT/DOWNSHIFT输入信号、E/P、A/M按键输入信号、输出各执行机构电磁阀控制的驱动信号。

2)A/D:采集选换挡执行机构和离合器执行机构位置传感器信号、油门踏板和制动踏板位移信号等。

3)转速测量:采集变速器输入和输出传感器模拟信号。

4)定时器:AMT控制系统任务调度的时序控制。

5)中断:实现对各传感器、按键输入和CAN线信号等外部信号请求的响应处理。

6)CCP(CAN Calibration Protocol) 驱动:实现CAN标定协议,以CAN数据包的形式实现参变量的在线监测与标定。

7)J1939接口:按照SAE J1939协议组织CAN报文的发送与读取,以实现与整车其他控制单元交互信息[3]。

3 TCU应用层对硬件输入信号的处理

硬件电路板接收到的硬件信号不可避免会受到外界环境电磁场的干扰,因此必须对硬件输入信号进行滤波、消抖处理,去除干扰,同时应对其有效性进行判定,这也是提高AMT系统故障诊断可靠性的必要环节。硬件输入信号可分为模拟信号和数字信号两大类。

3.1 模拟输入信号处理

图2为A/D口普遍采用的RC滤波处理电路,该电路可以有效去除干扰信号。应用层软件应对处理后的信号进行有效性判断处理,比如转速信号和位置信号。真实的物理信号都有一个最大最小的极限值即有效值,如果处理后的信号低于或高于有效值范围边界值,则可判断该硬件输入信号发生错误,应用软件应对异常的输入信号进行处理,以保证应用软件运行的可靠性,同时还应该对其进行故障预警和诊断处理。

图2 模拟输入信号处理电路[4]

3.2 数字输入信号处理

图3为典型的I/O端输入的数字信号处理电路,包括RC组合部分及光电耦合。输入的数字信号经过计数时间翻转可以得到处理后的I/O信号。

图3 I/O信号处理电路

利用Simulink/Stateflow可以实现处理电路算法,对模拟信号和数字信号进行滤波处理。

4 TCU应用层控制算法的实现

根据司机的驾驶意图,合理准确决策出目标档位,并及时完成选换挡操作,是TCU控制策略的核心。完成一次选换挡操作,典型的控制流程是:请求发动机降扭→分离合→摘空挡→选换挡→转速同步→结合离合→请求发动机还扭[5]。因此TCU控制策略主要是选换挡控制策略、离合器控制策略和发动机控制策略开发三大块。

4.1 换挡控制策略的开发

AMT系统开发的核心在于换档控制策略的开发,换档策略的开发是整个AMT开发过程中耗时最长,投入人力、物力最多的阶段。主要包括车辆起步控制策略、选换档控制策略、换档点调整策略以及起步和行驶选换档期间的离合器控制策略、故障诊断功能的开发。

4.2 发动机控制策略的开发

AMT系统对发动机控制的好坏直接影响换挡舒适性和AMT系统机械部件的寿命。所以必须开发出良好的发动机控制策略。简单的说,发动机控制就是TCU在适当的时刻发起合适的控制请求,并实时对发动机的扭矩、转速进行合适的控制,以实现最佳的换挡性能。

大多数重型商用车国Ⅳ发动机都遵循SAEJ1939协议,TCU通过解析发动机发出EC1报文得到发动机的配置信息;对发动机的短暂控制通过TSC1报文请求实现,确认发动机已经响应TCU发出的请求是通过解析EEC1报文中的(发动机控制设备地址)Source Address of Controlling Device for Engine Control的数值实现,TCU的地址规定为3。

换挡离合器分离时,TCU会请求发动机将扭矩逐步降到最低(扭矩值为动态值),以防止动力中断后发动机超速。

通过TSC1准确地实现了发动机扭矩的逐步下降和逐步上升,上升用的是扭矩限值控制。

4.3 离合器控制策略的开发

离合器接合扭矩控制流程如下:

1)控制离合器开始接合。

2)当离合器位置到达半联动点时,通过发动机扭矩控制,控制发动机扭矩逐渐上升,保证发动机扭矩的平稳传递,同时防止发动机熄火。

3)离合器起步及蠕动控制;车辆起步时,离合器需要通过半联动状态时离合器片的滑磨来减小起步冲击,保证起步的舒适性;车辆蠕动行驶时,AMT也需要通过半联动状态时离合器片的滑磨来保证车辆低速可控行驶。另外,为了充分体现驾驶员意图,AMT需要根据驾驶员踩下油门踏板的深度来制定离合器半联动工作的半联动深度值。即当驾驶员浅踩油门时,代表驾驶员需要更加平缓的起步和蠕动,半联动深度值则要更加接近半联动点,通过减小传递扭矩的方式来减小冲击;反之,当驾驶员深踩油门时,代表驾驶员并不注重起步冲击,而是希望车辆快速起步提速,此时的半联动深度值则要更加接近离合器结合点,通过增大传递扭矩的方式来加快起步提速。

5 定标和代码生成

利用Simulink/Stateflow完成TCU应用层代码的开发后,需要将其转化成标准的C代码才能进行集成编译。相对于MATLAB自带的代码生成模块,Targetlink具有明显的优势。首先其数据字典可以方便对软件中的变量存储空间、类型、定标、声明等进行管理,其次是可以直接从Simulink/Stateflow图形化的开发环境中生成产品级的C代码,其生成的代码执行效率可与手工编写的相媲美,并且支持AUTOSAR标准,可对代码进行优化处理。

自动生成代码前,必须对Simulink/Stateflow模型进行前期处理,将其子模块用Targetlink标准库中的模块替代,转换后的应用软件模型应进行浮点型的模型在环路测试,以消除软件中存在的大部分语法错误和逻辑错误。由于汽车行业的处理器只支持定点运算,所以需要将软件中的所有浮点类型全部都转化成定点类型,利用Targetlink的数据字典就可以方便实现这一转化,而且可以对变量进行分类管理,可以实现多变量同时修改其对象属性。

Targetlink支持汽车领域的大部分嵌入式处理器,而且还有许多针对性的基础包和优化包,其数据字典文件可移植,可以实现公司内局域网共享,提高了软件开发效率和可维护性。

6 系统集成

TCU控制软件可分为底层驱动软件和系统控制软件,前者是手工编写的C代码,后者是Targetlink自动生成的C代码,但是都不是可运行与TCU硬件中的产品级目标代码,必须借助于第三方工具软件,将两者集成转化成二进制目标代码,本项目选用的是CodeWarrior工具软件,将软件集成编译后生成了mot文件、ELF文件和map文件。

7 样车试验和标定

控制系统软件经过集成编译刷写到控制器TCU后,就可以进行样车试验和标定工作。项目采用的Vector公司的CANape标定工具。控制策略中的一部分逻辑缺陷是软件仿真阶段中检测不出来的,必须经过反复的样车试验和标定才能够发现并解决。图4所示为车辆行驶过程中的实测参变量数值,能够清晰地分析出车辆状态。

图4 实际测量分析

8 结论

实践证明:Matlab/Simulink模块化图像化的代码开发语言具有代码实现简便、代码可读性高、代码可维护性好、易于仿真测试等优点;dSPACE公司的Targetlink工具能够与Matlab/Simulink进行无缝链接,生成的代码可靠性高、可移植性好、易于维护,且参数变量管理方便,提高了软件开发效率,降低了维护成本。

猜你喜欢

离合器标定代码
使用朗仁H6 Pro标定北汽绅宝转向角传感器
CT系统参数标定及成像—2
CT系统参数标定及成像—2
创世代码
创世代码
创世代码
创世代码
基于匀速率26位置法的iIMU-FSAS光纤陀螺仪标定
汽车自动变速器维修技术讲座(一七○)
基于MATLAB 的CT 系统参数标定及成像研究