新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 支持汽车电子的嵌入式编程接口库的内容和设计方法介绍

支持汽车电子的嵌入式编程接口库的内容和设计方法介绍

作者:时间:2012-07-12来源:网络收藏

 

本文引用地址:http://www.eepw.com.cn/article/148782.htm

  应用库的是将发动机电控系统需要的常规算法和硬件基本操作封装为函数形式,嵌入在操作系统中,为开发人员提供一个友好安全的软件平台。

  该库的结构,如图4所示。

  

  图4 编程接口库结构图

  嵌入式基础编程接口库

  嵌入式基础编程接口库是指各行业在电子控制方面通用的编程接口库。该库利用现有车辆数据作为模拟数据进行控制算法和线性插值算法库函数验证,数据结构符合 ASAP2标准。该接口库为用户提供了一整套开发中常用的算法函数和基本操作,对典型的算法和操作进行控件级封装,为应用程序提供一个完整的通用的系统调用函数库。

  该函数库主要包括:

  1. 2D、3D线性插值算法接口库:在二维、三维表中,经过线性插值得到与输入量对应的函数值,用于发动机控制参数查表算法。

  2. PID控制器算法接口库:PID控制器是一种线性控制器。它根据给定值与实际输出值构成控制偏差,将偏差的比例、积分和微分通过线性组合构成控制量,主要用于控制喷油输出信号。

  3. 平滑滤波处理算法接口库:主要用于对采集的模拟信号进行平滑和去抖处理。4. 其他控制系统中,常用的控制算法和信号处理函数接口库。

  嵌入式基础编程接口库的有两个目的:一是方便调用应用程序,增加程序可靠性和编程效率;二是希望通过将处理标准化,在不改变程序结构的情况下,可以将程序言在不同的硬件平台上进行移植,免去了软件开发人员对一些典型算法和操作的重复编程。

  嵌入式专用编程接口库

  嵌入式专用编程接口库,是指针对特定柴油机和ECU的硬件特殊需要设计的系统专用编程接口库。该接口库的设计符合OSEK操作系统调用规范,为用户提供底层硬件MPC555的各个功能模块的驱动,并针对完成了基本的数据处理工作,提供软件方面的可调用函数。嵌入式专用编程接口库主要包括:

  1. 模拟量输入检测及处理接口库:发动机的温度、压力等传感器信号以电压形式被电控单元ECU的模拟量通道采集。信号采集方式可以是需要时调用采集函数,也可以设置成QADC单元自动按定时器周期顺序采集。在系统初始化时,用户可根据具体情况分别设定各个通道的采集方式。

  2. 开关量输入/输出接口库:用于对离合器、刹车等开关量信号采集并做去抖处理,结果赋值给指定的全局变量,供用户需要时读取。传感器电源、涡轮增压器控制等开关量输出,则通过直接调用相应函数由引脚输出高低电平实现。I/O口的引脚方向在系统初始化时根据硬件设计设定。

  3. 周期量输入检测及输出控制接口库:MPC555单片机内部集成的时间处理单元TPU自带曲轴/凸轮轴信号检测功能和喷油信号输出控制功能。为方便用户使用,我们将各个功能封装为底层驱动函数形式,用户可以调用这些函数设定TPU的工作方式。

  4. 其他和单片机硬件相关的驱动函数接口库。

  底层驱动接口库是汽车电子开发人员和底层硬件系统之间的桥梁,使开发人员可以最大限度地脱离底层硬件转而专注于汽车控制算法设计。用户通过对底层驱动接口函数的调用,就可以方便地完成对MPC555底层硬件的操作。

  嵌入式API函数库

  基于上述算法和底层驱动函数库,针对该控制系统的具体需求和功能,兼顾在汽车电子领域的通用性,我们对函数和算法以及各种操作进行了更高一层的封装,为用户提供了更标准的API函数库,更大程度地方便了用户。API函数库包含了发动机各种信号的输入处理和输出控制函数,能够实现更加具体的功能。

  以发动机喷油控制函数为例,当系统检测到曲轴信号缺齿位置时,产生中断。系统根据测得的发动机转数,以及各种温度和压力参数,结合怠速、刹车等开关的状态,设定喷油输出信号的起始时刻和脉冲宽度,从而实现对发动机性能的控制。

  结语

  本文了一种汽车电子的嵌入式编程接口库的和设计。接口库提供了可供系统直接调用的各种API函数,以实现常规算法和硬件操作。接口库的设计相对独立,实现了与硬件平台、操作系统和控制算法的并行开发,最后统一联调,大大缩短了开发的时间。同时,这种层次分明的设计思想,也使得接口库设计更加通用和标准化,可以通过简单修改移植到新的软、硬件平台之上,提高了代码的重复利用率,有较高的使用价值。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)

pid控制器相关文章:pid控制器原理



上一页 1 2 下一页

评论


相关推荐

技术专区

关闭