3 系统的软件设计
3.1系统软件的总体设计
在软件方面,设计思路是利用C语言编写程序,采用自上而下,逐层细化的编程指导思想。软件设计框图如图5所示。
首先依据温度传感器采集的车内外温度信号,按照事先设定的程序算法,来判断空调系统应处于的制冷或采暖工作状态;然后,根据车内实际温度信号和设定的车内温度值,按照事先设定的程序算法,实时地输出控制压缩机继电器或采暖阀继电器工作的信息。制冷或加热的调节程度需依据车内温度信号值、车内温度信号的变化趋势和设定温度调节范围,综合分析后而实现自动控制。注意应恰当设定温度调节范围,以避免空调系统的工作振荡。
具体原理如下:当车内温度高于提前设定的初始高温度TEMP high,MSP430单片机控制压缩机继电器来启动压缩机,制冷程度由MSP430单片机进行分析后确定,达到停机温度时而压缩机停止工作,而实现自动控制。
当车内温度较低时,MSP430单片机会从DS 18B20上取回实时温度数据,然后再与提前存在MSP430单片机中的初始设定低温值TEMPlow作比较。如果车内的温度确实低于初始设定的低温值TEMPlow,则MSP430单片机就会控制暖水阀继电器,使暖水阀开始打开,利用发动机的余热,加热暖风机的热水管,使车内温度升高。加热程度同样由MSP430单片机进行分析后而实现自动控制。
3.2程序的开始语句及宏定义语句
#include<msp430f l49 h>
Type def unsigned char uchar,//type define定义类型无符号的短字节uchar; Type def unsignedint uint,//无符号的长字节uint。
#define DQl P10UT 1= BITS, //p1.6口输出为1; #define DQO PIOUT &=-BITS, //p 1.6口输出为0;#define DQ_in PIDIR&=-BITS,//p 1.6为输人状态;#define DQ_out PIDIR 1= BITS,//p1.6为输出状态;#define DQ_val (PI IN&BITS) , //屏蔽除p1.5口以外口的其他值;//bit5= 0010 0000&屏蔽其它口。
#define cold off PI OUT & =-BIT6 ,//关闭冷却口P1.6口值为0; #define cold_ on P10UT 1= BIT6,//打开冷却口P1.6口值为1; #define hot_ off P10UT&=-BIT7, //关闭加热口P1.7口值为0; #define hot-on Pl OUT 1= BIT7 ,//打开加热口P1.7口值为1。
#define key in (p l in&OxOf) ,//屏蔽出开关的口;//OxOf =0000 1111 2位16进制数1234567890Abcdef。
Uchar tvvalue=25, tempature valve设定温度值;uint tvalue, /tvalve实际测温温度值;uchar tflag,tflag标志位;uchar disdata [2], disdata数列2;Uchar disdata2 [21,disdata2数列2;Uchar hot=0,加热为0 ; Uchar cold=0,冷却为。;Uchar scandata[16]=={0x3f , 0x06,0x5b,0x4f , 0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};1,2,3,4,5,6,7,8,9,0。
4 搭建单片机控制的空调系统
4.1搭建目标
通过对原车空调系统进行恰当的改造,融人单片机控制装置,搭建单片机控制的空调控制系统。
4.2搭建原则
在系统搭建时,要搞清原车空调系统的具体结构和原理,恰当地将单片机控制系统与原车空调系统进行结合,尽量减少原车系统的改造,并保证原车系统功能的完善。
4.3搭建内容
1)传感器利用原车空调系统的各温度传感器作为单片机控制系统的温度传感器。
2)执行器单片机控制系统的执行器为压缩机的继电器和采暖阀的继电器。新增的压缩机继电器取代原车空调系统的温控开关触点,采暖阀继电器依然为原车的。若原车为手动阀门,应首先将其更换成电磁阀门,而后增加控制继电器。
3)控制器单片机作为空调系统运行与控制的核心器件,取代原车的机械或电子式温控器,而实现空调系统的高精度、智能化控制。