EDN China > 设计实例 > 汽车电子 > 节能控制 > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

汽车电动空调的数据采集系统的研究

储跃伟 姚晓东?? 2009年12月31日 ?? 收藏0

  1引言

  汽车空调作为车内温度小环境的控制中心,其作用不言而喻。由于过去的汽车空调检测系统因为控制策略单调而没有使用综合检测平台的必要,即使有控制过程检测,大都使用昂贵的采集设备如数据采集卡,其通信方式也以串行口通信为主,无法接入整车环境进行监控[1]。针对这一情况,本文所设计开发的检测系统主要对电动汽车空调运行过程中的四个工程物理量进行检测分析:风机的电压、电流,压缩机端口的高压、低压。本课题来源于某汽车空调系统的开发过程中所需检测系统的设计,主要用于使空调系统的控制策略的执行更加透明化、直观化,为控制策略的优化提供数字依据;为汽车空调后续开发提供可靠的保证。

  2采集系统设计

  2.1总体设计

  如图1所示,在该系统中,DSP部分的软件设计主要完成以下工作:数据采集周期的设定、AD转换、数据校正及滤波等。并可以接收上位机通过CAN总线发来的采集开始指令打开采集或关闭采集功能,在采集开始后按照要求对四路信号进行采样及软件校正,校正完成后将采集结果保存在CAN邮箱内,通过CAN控制模块进行发送。在本系统中,电压、电流采集周期为50ms,高、低压采样周期为200ms。

总体设计

  2.2硬件部分

  以TI公司的TMS320F2812为该四通道数据采集系统的核心。该款DSP芯片是TI公司2000系列中的一员,最高主频可达到150MHz,具有强大的数字信号处理能力[2]。片内集成的12位AD转换器共有16个通道,转换速率在可达到12.5MSPS(ADC时钟为25MHz时),在采集速度及精度上均能达到本系统的设计要求。而且该AD模块可采用多种方式触发能够满足不同的任务需要。输入2812AD端的模拟信号由传感器采集变换得到。本系统所用传感器输出信号为4~20mA的电流环信号,而AD模拟输入范围为0~3V电压信号。

  CAN是控制器区域网络(ControlAreaNetwork)的简称,最早是由德国BOSCH公司推出的,用于汽车内部测量与执行部件间的数据通信,其总线规范现已被ISO国际标准制定为国际标准[3]。它广泛的应用于汽车电子、工业控制,其信号传输介质为普通双绞线,通信速率最高可达1Mbps。CAN总线具有较强的抗干扰能力。本系统采用CAN总线的通信方式,也方便了整车调试的接入。

  2.3软件部分设计

  2.3.1DSP软件部分

  该部分软件主要包括两个部分:模拟信号的AD转换和CAN总线通信。因为TMS320F2812内置有12位AD转换器,因此转换部分可分为AD模块配置和数据转换处理;而AD模块的配置主要包括工作和通道的选择。在本系统中,选用连续转换方式;需要采集的模拟量共四个,加上A、B通道各配置两个校正输入端口,所以总共需要占用8个模拟输入口。

  50ms200ms集周期为,高、低压采样周期为。部分配置程序如下:…

AdcRegs.ADCTRL1.bit.SEQ_CASC=0;//双排序发生
AdcRegs.ADCTRL1.bit.CONT_RUN=1;//连续转换方式
AdcRegs.ADCTRL1.bit.CPS=0;//分频系数为1
AdcRegs.ADCMAXCONV.all=0x0055;//共有12个转换,采样值取2次,标准值1次
AdcRegs.ADCCHSELSEQ1.all=0x1100;//转换序列

  CAN总线通信主要包括TMS320F2812中eCAN模块邮箱的定义和邮箱中断子程序的设置[6]。

  部分配置程序如下:

ECanaMboxes.MBOX0.MSGID.all=0x003FFFFF;//mail0:00F
ECanaMboxes.MBOX5.MSGID.all=0x0FFFFFFF;//mail5:3FF
//ConfigureMailboxes0-3asTx,4,5asRx
ECanaRegs.CANMD.all=0x00000030;//EnableMailboxes
ECanaRegs.CANME.all=0x0000003F;//Specifythat2bitswillbesent

  CAN模块有两种中断形式,一种是与邮箱有关的中断,另一种是系统中断,用于处理错误或者与系统相关的中断源[4]。而本系统中CAN与上位机通信主要是通过邮箱中断来实现。

  CAN邮箱的中断程序如下:

interruptvoidcan_send(void)
{
if((((int)ECanaRegs.CANGIF1.all)<0)&&(ECanaRegs.CANGIF1.bit.MIV1==4))
{IER|=M_INT1;}if((((int)ECanaRegs.CANGIF1.all)<0)&&(ECanaRegs.CANGIF1.bit.MIV1==5)){IER=M_INT9;}PieCtrlRegs.PIEACK.bit.ACK9=0x1;
}


上一页12下一页
?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

汽车? 电动空调? TMS320F2812?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈