DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 978|回复: 0
打印 上一主题 下一主题

[待整理] 基于DSP的无分电器点火装置的设计

[复制链接]
跳转到指定楼层
楼主
发表于 2014-10-10 08:26:34 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
随着电子技术的迅猛发展和绿色环保的要求,人们对汽车发动机点火系统性能的求越来越高,不仅要求实时性强、点火正时特性好、抗干扰能力强,而且要求集成较高、减少故障点、具有自诊断和备用点火功能,同时还要求与PC机通讯并能进行系统软件升级、重要数据更新和在线系统仿真。下面介绍一种基于DSP的新型汽车无分电器点火装置。
1系统构成
系统中央处理单元ECU由一片DSP和一片通用单片机组成。DSP主要用于对信号的采集、处理,控制算法实现,与辅助单元和PC机进行通讯;单片机主要用于系统监测和备用点火等。系统结构框图如图1所示。

系统采用了集成点火组件。点火组件用于完成闭合角控制、恒电流控制、过电压保护、停车断电保护等功能,并能通过缸序判别信号IGda、IGdb把点水信号Igt关入相应的点火驱动电路,产生点火确认信号IGf。
1.1主CPU单元
系统主CPU采用DSPTMS320F240。它具有以下特点:32位中央算术逻辑单元CALU;16位×16位并行硬件乘法器;内置544字×16位双端口数据/程序RAM,16K字×16位FLASHE2PROM;软件等待发生器的外部存储器接口模块,支持硬件等待状态;双10位高速A/D转换器;28个独立可编程的多路复用I/O引脚;基于锁相环的时钟模块;带实时中断的看门狗定时器模块;串行通讯接口;4级管道操作;8级硬件堆栈;6个外部中断;静态CMOS技术;4种低电源模式;最高频率为40MHz;多数指令周期为单周期;完成一次点火提前角的计算时间限于1ms,比通用微处理机快10~100倍,大大地提高了点火系统的实时性。
主CPU单元主要完成两大任务:一是确定当前工况下的最佳点火提前角,产生点火控制信号IGt和汽缸判定信号IGda与IGdb;二是通过RS-232接口与PC机进行串行通信,主CPU可把采集的各种传感器的信号、发动机转速信号、故障代码等送到PC机中进行仿真与分析;PC机也可以把二进制程序代码及一些重要数据(如不同工况下的修正值等)送到主CPU的FLASHE2PROM单元。
TMS320F240扩展了四片CY7C169-25和一片8253,并采用74F148扩展外部中断源输入端。
1.2监测和点火备用模块
监测和点火备用模块所使用的CPU是8751。该模块通过对各传感器信号、IGf信号等进行分析、诊断,对主CPU单元实施监测。当主CPU单元出现故障时,监测和点火备用模块立即接过点火控制权,并放弃监测工作。
8751单元扩展了2732、6264和8253各一片。采用一片AD574A和CD4051进行A/D转换,并用74LS148扩展了8个外部中断源输入端。
1.3DSP数字控制器与PC机的串行通讯
TMS320F240SCI模块支持CPU与使用标准NRZ格式的其它异步外设之间进行数字通信。SCI接收器和发送器是双缓冲的,具有独立的使能和中断时。SCI对接收的数据进行间断、奇偶性、超时、帧出错等检测。系统采用了RS-232异步串行通讯标准总线。
1.4系统接口资源的分配
TMS320F240DSP数字控制器与8751单片机提供的I/O接口与中断输入接口是有限的,为避免资源冲突,将外部的输入信号按表1进行优化分配。
表1外部输入信号优化分配


2系统软件
2.1点火提前角
点火提前角对发动机的工作性能影响较大,ECU按下式计算点火提前角:
实际点火提前角=初始点火提前角+基本点火提前角+修正点提前角
基本点火提前角数据以表格的形式存储在DSP的FLASHE2PROM中。实际上,基本点火提前角数据远不止256个。如果发动机转速与负荷不在基本点火提前角对应的点上,则采用多元线性回归法进行拟合:

式中,θ――基本点火提前角
n――发动机转速
l――发动机负荷
将离线生成的线性回归方程系数存储在ECU中。ECU根据转速和负荷信息,查阅基本点火提前角数据表,或查阅线性回归方程系数表计算基本点火提前角,并根据影响点火提前角其它因素(冷却水温信号、空调开关信号、怠速开关信号等)进行必要的修正后输出点火控制信号IGt。
不同型号的发动机,其点火提前角与线性回归方程式系数不同。系统ECU与PC机的通信功能提供了随时新这些数据的方便。
2.2系统软件模块
软件系统由主程序模块、控制算法模块、发动机转速测量及处理模块、A/D转换模块、G1和G2信号中断模块、DSP数字控制器与微机的通讯模块、DSP数字控制器在线程序更新模块、系统监测模块、备用点火模块、FLASHEEROM擦除模块等组成。
主程序模块主要包括初始化程序、起动程序、发动机工况测量程序、处理程序、判别程序等。程序的初始化包括RAM区、各特殊功能寄存器、I/O、堆栈等的初始化。主程序模块根据发动机转速、负荷等信号确定发动机的运行工况,并由此转入相应的处理程序当中。
发动机转速测量及处理模块主要完成发动机工况判定、查点火提前角数据表等;A/D转换模块处理冷却水湿和负荷传感器等模拟信号的转换;控制算法模块根据存储的不同燃油标号的点火提前数据、多元线性回归系统等表格,确定基本点火提前数据以及发动机爆震控制等;G1和G2信号中断子程序主要控制IGt、IGda、IGdb信号的产生,检测点火确认信号IGf;DSP数字控制器与微机的通讯模块完成DSP数字控制器与单片机的信息交换;系统检测、备用模块主要完成对一些传感器的检测、ECU单元的监控、备用状态下的点火控制;系统监测和备用点火模块对G1、G2、Ne、IGf、负荷、水温等信号进行监控,当出现故障时,置标志位、报警。当主CPU出现故障时,除了报警之外,该模块立即接过点火控制权。
系统的操作流程图如图2所示。

本点火系统的新颖之处在于ECU使用了两个CPU,使其具有了自检功能和备用功能。主CPU采用了被视为未来通用芯片的DSP,这类芯片具有处理速度快、运算功能强、输入输出速度快、精度高、可靠性好等特点,适用于实时控制系统。该系统已在汽车发动机上试运行,得到了良好的发动机点火性能。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-11-28 04:43 , 耗时 0.105522 秒, 22 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表