基于FPGA的汽车空调智能温控系统的设计
2009-02-04
作者:李雅梅 唐文
1. 引言
随着汽车工业和微电子技术的发展,汽车空调的应用越来越普及,人们对汽车空调系统性能的要求也越来越高。现代化的汽车空调就是能将汽车室内空间的环境调整到对人体最适宜的状态,创造良好的车内环境,以提高司机的工作效率和保护乘员的身体健康。目前高档轿车中用各种微处理器完成各种控制[1],其数量多达数十个。考虑到汽车电子技术的发展趋势,以后使用现场可编程门阵列FPGA(Field Programmable Gate Array)等进行功能整合亦是大势所趋,所以本文选用Xilinx 公司的SpartanIII 型FPGA—X3S400 为系统主控芯片,DALLAS 公司的1-Wire 数字化温度传感器DS18B20 为温度测量元件,以夏利轿车为实验对象,对汽车空调温控系统进行了模拟实验设计。FPGA—X3S400 相当于40 万门,当然这是设计开发和功能验证用,实际的商业应用可以选择恰当规模的芯片。
2. 汽车空调系统的基本原理
汽车空调的配气形式很多,目前最常用的是空气混合式和全热式两种。空气混合式工作过程为:车外空气+车内空气→进入风扇→混合空气入蒸发器→由风门调节一部分空气进入加热器→进入各通风口。这种配气方式的优点是能节省部分冷量,缺点是冷暖风不能均匀混合,处理的空气参数精度较差。全热式配气系统则刚好与其相反。在空气混合式风道的基础上进行一些改动可以达到多个温区送风的目的。多温区风道的设计提出了一种结合两种配气方式的优点并实现多个温区送风的概念。
3. 汽车空调温度场的分布与测量
3.1. 车厢内温度舒适性参数
影响汽车空调舒适性的各因素按重要程度来排序,依次是温度、湿度、空气流速、噪声、压力、气味、灰尘、细菌等。本文着重讨论车厢内温度对人体舒适性的影响。
(1)车内平均温度
夏季人体感到舒适的温度是24~26℃,由舒适转为不太舒适的分界线是28℃左右。当车外气温为35℃时,可把28~29℃作为我国普通车辆夏季车内设计温度的基础。对于高级车辆,车内空调温度可定在27℃左右。当冬季环境温度为-15℃时,16~25℃是人体感到舒适的范围。车内平均温度推荐值为:夏季25~28℃,冬季为15~18℃。
(2)车内外温差
考虑车内温度时,对车内外温差也有一定限制,夏季温差一般宜为5~7℃,车外温度过高时,宜保持在8~10℃,可可增至10~12℃范围内。
(3)车内温度场分布
铁道部标准TB1951—87 给出了车厢内各方向温差的合理范围。它要求的车厢温度场分布如下:夏季车内同一水平面和同一铅垂线的最大温差均不应超过3℃,头部温度低于足部约2℃左右;冬季头部低于足部温度约4~6℃;水平方向的气温不均匀度应控制在1.5℃范围内。
3.2 温度场测试方案设计
温度场的检测方法有声波法、光学干涉仪法、分布式光纤测温法等。本文从实际条件和需要出发,选择温度传感器分布式直接检测法[3]。单总线技术(1-Wire Bus)是美国Dallas公司的专利技术,目前已经形成一种规范,其最大的优点是全部总线和供电线都依赖于一条单一的信号线,而基于这种技术的数字芯片和产品已经得到了广泛的应用,它在硬件上的简捷为各种应用系统的小型化创造了极其有利的条件。DALLAS 提供的支持1-Wire 单线[4]的数字化温度传感器DS18B20,其测量温度范围为 -55℃~125℃,精度为0.5℃(本设计中能全程测温,经过插值运算后的精度为0.1℃)。其特性完全满足车内环境的温度检测。
DS18B20 的电源供电方式有2 种:外部供电方式和寄生电源方式[5]。本试验中,选择外部供电方式。DS18B20 的封装为3 脚方式。其中DQ 为数字信号输入/输出端,GND 为电源地,VDD 为外接供电电源输入端(在寄生电源接线方式时接地)。多个DS18B20 与控制器的连接如图1 所示。
3.3 DS18B20 的分布与安装
国家标准GB/T 12782-1991《汽车采暖性能试验方法》规定了关于汽车采暖性能的试验方法。参考该标准,以夏利为试验车,测温点的选择与安排如下:
测点的布置将以座椅的R 点为基准点,取R 点上方700mm 处为测温平面。在测温平面约1800mm×1200mm 的矩形边界内安放10 个数字温度传感器构成了车厢头部平面测温网。同时在各乘员的腹部、足部各布置一个测点。足部的测温点离地板50mm,处于 R 点的前方800mm;腹部的测温点在R 点上方300mm,前方250mm 处。
4. 系统硬件电路设计
4.1 主控芯片XC3S400
控制电路以 Xilinx 公司的Spartan-III 系列XC3S400 型FPGA 芯片为核心。Spartan-III 系列FPGA 结构[6]包括5 个基本的可编程功能单元:可配置逻辑块(CLB),输入/输出模块(IOB),Block RAM 模块,乘法器模块以及数字时钟管理模块(Digital Clock Manager,DCM)。这些单元的组织方式如图2 所示。Spartan-III 系列有丰富的连线和开关网络,用来连接5 个功能单元并在它们之间传输数据。在一片FPGA 上即可进行软硬件的协同
设计,为实现片上可编程系统(SOPC,System On Programmable Chip)提供了强大的硬件支持。
要完成系统设计,需要建立开发平台,FPGA 的最小片上系统包括电源模块,外部时钟模块,复位电路和下载配置电路。配置模块为FPGA 提供存储配置空间,存储FPGA 中应用的程序代码和数据。FPGA 还可以通过电缆进行编程而不需要外部存储器件。针对Xilinx的FPGA 和PROM 芯片的配置和编程有两个目的:生成一个配置或编程的文件并将文件下载到器件。本系统中选择主从模式对Spartan-3 系列FPGA 芯片XC3S400 进行配置。其引脚排列如图3 所示。
图3 Spartan-III 系列XC3S400 芯片的引脚配置
4.2 硬件总体结构方案的设计
汽车空调系统原理框图如图5 所示。此系统采用的控制策略是递阶复合PID—Fuzzy 控制,它包括两个控制环节,整车空调的集中控制和多温区分布控制。系统主要包括以下五个部分:
(1)FPGA 及其配置电路。FPGA 根据测量电路反映的状态变化经控制程序模块确定的占空比输出PWM 控制脉冲,数据处理及控制部分均在FPGA 中实现。
(2)多温区测控电路。采用温度传感器分布式直接检测法,可对多个温区内的多个点的温度进行自动检测;选择DALLAS 公司提供的支持1-Wire 总线的数字化温度传感器DS18B20 组建分布式测温网络来检测温度场。
(3)整车空调控制电路。包括汽车空调制冷或供热量的调节和控制,作为实验系统空调制冷或供热的调节对象选用直流电机,采用PWM 方法来调节驱动电机的转速,从而达到控制目的。
(4)多温区风道控制电路。这是系统的第二控制层,根据不同温区的控制要求,向各出风口配送不同风量,并且控制各出风口的开角;该部分是机械结构,在模拟实验系统中用PWM 方法控制直流电机转速予以模拟。
(5)人机接口电路。配置键盘,LED 指示灯和数码管等。
5. 软件总体方案设计
XC3S400 芯片所使用的开发软件为ISE 系列产品。ISE 是集成综合环境的简称,它是
Xilinx FPGA 的综合性集成设计平台,该平台集成了从设计输入、仿真、逻辑综合、布局布
线与实现、时序分析、芯片下载与配置、功率分析等几乎所有设计流程所需工具。软件设计
流程如图5 所示。
本设计选用 ISE7.1i 版本进行综合、布局、布线,在 ISE 中调用Modelsim6.0 仿真工具进行仿真[7]。软件设计包括时钟发生模块,分频模块,DS18B20 温度采集模块,空调智能控制模块,多温区风道控制模块,用户接口模块,以及PWM 产生模块等。各软件设计模块总体关系框图如图6 所示。程序采用C 语言编写。
6. 结论
该汽车空调智能温控模拟实验系统设计中采用了40 万门的Xilinx 公司Spartan-III 系列XC3S400 型FPGA 芯片为主控芯片,采用1-Wire 技术设计了温度场检测网络,使得系统硬件简捷,可扩展性能强;不仅满足了人们对汽车空调系统性能的高要求;而且为汽车电子控制的功能整合做出了有益的探索。在模拟实验系统中搭建了基于Xilinx 的FPGA 芯片的实验平台,根据数字温度传感器DS18B20 采集的数据,产生PWM 的输出控制信号,模拟整车空调的集中控制和多温区分布控制。系统的软硬件均通过了测试,仿真实验结果表明对多温区控制性能良好,系统运行稳定可靠。
参考文献
[1] 夏群生,李建秋.汽车电子学[M].北京:清华大学出版社,2005.
[2] 赵超越.汽车自动空调控制器的研究[D].哈尔滨工业大学,2004.
[3] 袁伟亭,周润景.FPGA 与DS18B20 组成的测温系统的设计[J].内蒙古大学学报:自然科学版,2006,
37(4):459-463
[4] DS18B20 Programmable Resolution 1-wire Digital Thermometer [EB/OL].www.maxim-ic.com.
[5] DS18B20 Datasheet [EB/OL].Dallas: Dallas Semiconductor Corporation, 2005.
[6]薛小刚,葛毅敏.Xilinx ISE 9.X FPGA/CPLD 设计指南[M].北京:人民邮电出版社,2007.
[7]San Jose. X-BLOX Design Tool User Guide. Xilinx Inc, California, 1992:2.