DIY编程器网

标题: 基于XC164的六通道ABS开发板设计 [打印本页]

作者: liyf    时间: 2014-10-5 13:01
标题: 基于XC164的六通道ABS开发板设计
基于XC164的六通道ABS开发板设计

:汽车防抱制动系统(ABS)的电子控制单元(ECU)是ABS的最重要部件之一。为模拟ABS的实际工作过程,制造了具有六通道电子控制单元的ABS开发板,包括单片机、电磁阀驱动、电源模块、轮速处理等模块等。该系统很好的模拟了 ABS的工作过程,为验证控制软件提供了方便,缩短了开发周期。
关键词:开发板;ABS;ECU;XC164
    ABS 的匹配是一个非常复杂的过程,需要做大量的实车试验。由于试验存在着很大的危险性,所以在进行实车试验之前一定要先对控制软件做一定程度的验证,如轮速、轮加减速度、滑移率计算的准确性,以及电磁阀、报警灯、电机的正确运转等。车载的ABS电子控制单元不具备信号发生和数据显示的功能,而开发板弥补了这一缺陷。
总体结构介绍
    开发板基本上具有六通道ABS电子控制单元的所有模块,包括单片机、电磁阀驱动、电机驱动、电源模块、轮速处理等,另外还有轮速发生模块和显示模块等。液晶屏下方的电路板(简称电路板1)用来产生方波信号,发送到主控芯片XC164CS的高速输入捕捉口(CAPCOM),加速、减速、制动按钮用来控制方波信号的频率,可模拟车辆的加速、减速和制动过程。主控芯片经过计算后,又通过串口将计算结果,如轮速、轮加减速度、滑移率等发送给电路板1,再驱动液晶屏显示数据。同时主控芯片根据不同的计算结果驱动报警灯、电机、继电器和阀等外围设备,以此模拟ABS的工作过程。
    开发板的芯片大部分采用Infineon公司生产的专用芯片,它们被国内外的ABS生产商广泛采用。主要功能模块及使用的芯片如表1所示:
功能模块

使用芯片

备注

主芯片MCU1

XC164CS

主要完成信号处理、计算、控制任务

监控芯片MCU2

C505CA

主要负责监控主芯片工作

外部CAN接口

TLE6250

由主芯片提供控制

诊断模块K-line

TLE6259

由监控芯片提供控制

报警灯、继电器驱动

TLE6210

--

内部CAN通信

--

连接两个MCU

阀驱动

TLE6228

共有12路驱动

电源及复位

TLE7469

提供双电压

表1 功能模块及使用芯片

    下面对主控芯片XC164CS和监控芯片C505CA作较为详细的介绍。
主控芯片XC164CS
    XC164CS是Infineon公司近年推出的16位高档单片机。该单片机有如下优点:
TMS

模式选择

OCDS接口大大方便了软件调试工作,这在下面部分将详细描述。
另外该芯片还具备外围IO口多、时钟多、AD转换口多等优点,并且具有两个CAN接口。
TDO

测试数据输出

CPUCLK

CPU时钟

TDI

测试数据输入

TRST

测试复位输入

TCK

测试时钟输入

BRKIN

硬件中断输入

TRAP

陷阱条件

VCC

正电压(5V)

GND

数字地

RESET

芯片复位

BRKOUT

硬件中断输出

OCDS

OCDS使能

表2 OCDS接口功能描述

XC164CS开发方法
    XC164CS可以通过三种方式跟上位机连接进行在片仿真:串口方式(即bootloader模式)、并口方式(LPT)和USB口方式(即OCDS)。其中并口方式要求上位机的主频小于800MHz,给应用带来不便。串口方式,速度较慢。需要占用一个串口,而且调试过程中经常出现连接丢失的情况,因此也不予采用。 OCDS接口是XC164CS专门提供的调试接口,也是其不同于Infineon其它164系列单片机的主要特征之一,因此在开发板研制过程中采用 OCDS的调试方式。
    软件采用的编译器是Keil uVision2 (PK166,摘编者注),该编译器调试功能强大,不仅能够进行纯软件仿真,而且上位机能够通过并口或者USB口跟用户板进行连接,实现在片调试。连接关系如图3所示。
    其中的ULINK是一种USB接口到OCDS接口的适配器,它具有如下特性:
监控芯片C505CA
    监控芯片跟主控芯片进行实时通信,从而保证主控的正确运行,监控芯片还行使故障诊断的职能。
    C505CA是Infineon公司的一款8位单片机,它基于8051内核,优点在于:
开发板工作过程
    开发板上电后,液晶屏显示一些说明信息,同时开始模拟ABS在实际车辆中的上电自检:报警灯亮快闪几秒,然后模拟电机和12个电磁阀的LED依次点亮,最后,所有的LED闪一次。
    自检之后,液晶屏开始显示XC164CS传送的轮速计算值,轮速脉冲是由电路板1产生的;如果当前轮速较低,则模拟电机和12个电磁阀的LED会循环点亮,表示ABS系统在较低车速下,不会进行防抱制动,只进行常规的在线检查;如果当前轮速较高,则除报警灯外的所有LED会同时闪烁,表明ABS系统在该速度下会起作用。
    对于轮速的改变,需要用到开发板上的3个按键,按住UP键不动,则轮速升高,按住DOWN键不动,则轮速降低,按一下STOP键,则当前轮速会迅速减至0。
开发板在ABS开发过程中的应用
    由于以前使用Intel公司196系列单片机作为主控芯片,现改用XC164CS,将代码从196移植到XC164CS是一个非常烦杂的工作,鉴于实车试验的危险性,在进行实车试验以前必须对代码进行严格的验证,开发板很好的起到了这个作用。
    首先,开发板能观察轮速、轮加减速度等控制量,通过改变脉冲发生的频率,观察液晶屏的显示即可知道计算结果的对错,非常直观。
    其次,可以验证主控芯片和监控芯片对报警灯、继电器、电机、电磁阀等外部设备的操作。
    第三,通过阀旁边的开关,可以模拟阀的通断,实现故障诊断的功能。
    第四,通过主控芯片与监控芯片的CAN通信验证主控芯片和监控芯片代码的正确性。
    另外,通过开发板还可以验证ABS的进退出条件等。
开发板和实际AB系统的区别
    开发板仅用于ABS系统功能和单片机功能的验证,无法做到很全面,有些功能尚不能演示,比如:
    XC164CS和C505CA提供了强大的CAN接口,同时在设计过程中,又在板子上扩展了K-line/LIN总线接口,但是其在汽车网络中的实时数据传输,无法演示。
    完善的诊断功能也不能完成,因为用来演示电机和电磁阀的LED同实际使用的电机和电磁阀比较起来,需要的驱动电流很小,而在ABS中使用的Infineon TLE6228驱动芯片会把这种情况样认为是故障。
结语
    六通道ABS的开发板验证了ABS软件代码的正确性。该开发板自成体系,具有轮速发生、数据显示、故障诊断、外围电路驱动和实时通信功能。另外,主控芯片XC164CS采用了先进的在片调试接口(OCDS),大大提高了开发效率。
作者: 李小路    时间: 2021-7-11 18:25
谢谢分享1




欢迎光临 DIY编程器网 (http://diybcq.com./) Powered by Discuz! X3.2