PIC16C72单片机的空调控制系统设计
发布时间:2008/8/25 0:00:00 访问次数:455
本系统硬件简单可靠,软件具有更完善的控制功能和抗干扰能力。系统具有很高的性能价
1 控制器原理
系统cpu根据遥控器或按键输入的命令,对采集到的温度进行智能判断,然后作出相应的制冷、制热或除温运行。再通过接口电路,驱动压缩机、换向阀、风向电机和室内风机作相应动作,并对温度用led指示。系统的原理框图如图1所示。
2 硬件设计
进行系统硬件框图设计时,既要考虑编写程序的方便、又要充分利用软件的功能来简化硬件结构,即做到“软硬兼施”。
2.1 单片机的选择
系统有3路温度模拟信号输入,还有1路电压和1路电流模拟输入,共5路模拟输入要求;而模拟信号要转换成数字信号才能用单片机cpu处理。为提高系统的性能价格比,应采用含有a/d转换器的单片机。经过各方面的综合比较,我们选用了美国microchip公司的pic16c72单片机作为控制核心。它具有5路模拟量输入的a/d转换器,恰好满足系统的模拟输入要求。另外,它在1块芯片上集成了1个8位逻辑运算单元和工作寄存器、2kb程序存储器、128个数据存储器、3个端口(a口、b口、c口)共22条i/o线、3个定时器/计数器。另外,只有35条易学易用而高效的risc(精简指令集计算机)指令,同时,芯片具看门狗功能,并提供对软件运行出错的保护。
2.2 模拟输入电路
本系统直接用热敏电阻进行测温,再加一级电容滤波。对外交换温度检测电路,因其干扰较大,特加上二极管限幅保护。对传感器的不同电阻值,将其所对应的不同分压值输入至pic单片机的a/d转换口,在单片机内部转换成数字信号。该检测电路结构简单,性能价格比高。又因采用的单片机为8位,所以温度转换精度高,可为0.5℃,完全满足了空调的信号检测精度要求。
对过流信号的检测,不用经过比较器,节约了资源;而是采用模拟信号整流分压后直接输入,通过单片机自带的a/d转换器,每500μs对其进行一次检测,并进行软件比较,以确认是否过流。
对过零电压信号的检测,也是采用模拟信号整流分压后直接输入。因两个电压半波的过零点都要检测,所以用桥式整流。模拟输入电路如图2所示。
2.3 温度指示电路
该电路可对设定温度和房间温度两种温度的10个温度值进行同时指示,而且结构简单,仅占用2根i/o线和使用1个八位移位寄存器74ls164。方法是对设定温度进行稳定指示,对房间温度进行1s间隔闪烁指示。每秒取出温度信号。如果是21℃或30℃,则直接将相应位置成低电平,使相应led灯亮,如果上22~29℃,则将温度转换成相应显示码,通过rb6产生clock信号,rb7串行送出显示码至8位移位寄存器74ls164,再进行led指示。
2.4 室内风向电机控制电路
本控制系统的室内风向叶片有自动、摆动以及5种固定角度等运行状态。为得到高精度的角度控制,我们采用dc12v四相八拍步电机驱动。步进控制电路中采用单片机的rb2、rb3、rb4、rb5作为四相(a、b、c、d)八拍环行分配时序,经电流放大器件uln2003功率放大后驱动步进电机运转。控制方法是根据目标位置和当前位置的角度差,输出相应数量的脉拍数,并通过输出脉拍的不同时序来控制正反转。
2.5 室内风机控制电路
制冷和制热量的大小与室内风机的转速有着密切的关系。本系统中室内风机采用双向晶闸管移相控制,使其产生电压调速。控制电路如图3所示。在单片机内部,根据ra5口检测到的电压过零点为同步信号,再通过定时器控制产生所需脉冲的相位和宽度,从rc1口输出,然后经晶体管放大、脉冲变压器隔离输出,再触发双向晶体管导通。为了减小脉冲变压器的容量,输出的是几个连续的窄脉冲序列。
单片机系统ra3口对室内风机的速度反馈脉冲进行计数,并与给定值进行比较,然后进行积分调节,对速度进行闭环控制。
2.6 继电器实时控制电路
控制信号从单片机的通用双向i/o端口rb1、rc4和rc5经过驱动器uln2003放大,控制继电器,使压缩机、室外风机和换向阀按要求状态动作。
3 软件设计
软件设计采用模拟化处理,主控程序包括以下几个部分:程序的初始化、试运转、数据和信号的采集与处理、温度led指示、室内风机的闭环积分控制、室内风向电机的步进控制。功能子程序包括制冷、制热、除湿、自动四种运行模式。中断程序包括遥控接收。各种定时的中断查询处理、速度检测等。系统的主控程序流程如图4所示。
系统资源分配:定时器0用于对速度反馈脉冲计数,定时器1用于遥控处理,定时器2用于其它所有定时处理。由于定时器2处理的定时有20多个,时间长短更是千变万化,短的只有500μs,长的可达24h(小时)。根据现实生活中一块手表可处理多个事件的启示,我们设计出口断式查询定时法,即将基准中断时间设为最小公约数500μs,每个事件分配1个时间寄存器、1个开始定时标志和1个定时时间到标志,在
本系统硬件简单可靠,软件具有更完善的控制功能和抗干扰能力。系统具有很高的性能价
1 控制器原理
系统cpu根据遥控器或按键输入的命令,对采集到的温度进行智能判断,然后作出相应的制冷、制热或除温运行。再通过接口电路,驱动压缩机、换向阀、风向电机和室内风机作相应动作,并对温度用led指示。系统的原理框图如图1所示。
2 硬件设计
进行系统硬件框图设计时,既要考虑编写程序的方便、又要充分利用软件的功能来简化硬件结构,即做到“软硬兼施”。
2.1 单片机的选择
系统有3路温度模拟信号输入,还有1路电压和1路电流模拟输入,共5路模拟输入要求;而模拟信号要转换成数字信号才能用单片机cpu处理。为提高系统的性能价格比,应采用含有a/d转换器的单片机。经过各方面的综合比较,我们选用了美国microchip公司的pic16c72单片机作为控制核心。它具有5路模拟量输入的a/d转换器,恰好满足系统的模拟输入要求。另外,它在1块芯片上集成了1个8位逻辑运算单元和工作寄存器、2kb程序存储器、128个数据存储器、3个端口(a口、b口、c口)共22条i/o线、3个定时器/计数器。另外,只有35条易学易用而高效的risc(精简指令集计算机)指令,同时,芯片具看门狗功能,并提供对软件运行出错的保护。
2.2 模拟输入电路
本系统直接用热敏电阻进行测温,再加一级电容滤波。对外交换温度检测电路,因其干扰较大,特加上二极管限幅保护。对传感器的不同电阻值,将其所对应的不同分压值输入至pic单片机的a/d转换口,在单片机内部转换成数字信号。该检测电路结构简单,性能价格比高。又因采用的单片机为8位,所以温度转换精度高,可为0.5℃,完全满足了空调的信号检测精度要求。
对过流信号的检测,不用经过比较器,节约了资源;而是采用模拟信号整流分压后直接输入,通过单片机自带的a/d转换器,每500μs对其进行一次检测,并进行软件比较,以确认是否过流。
对过零电压信号的检测,也是采用模拟信号整流分压后直接输入。因两个电压半波的过零点都要检测,所以用桥式整流。模拟输入电路如图2所示。
2.3 温度指示电路
该电路可对设定温度和房间温度两种温度的10个温度值进行同时指示,而且结构简单,仅占用2根i/o线和使用1个八位移位寄存器74ls164。方法是对设定温度进行稳定指示,对房间温度进行1s间隔闪烁指示。每秒取出温度信号。如果是21℃或30℃,则直接将相应位置成低电平,使相应led灯亮,如果上22~29℃,则将温度转换成相应显示码,通过rb6产生clock信号,rb7串行送出显示码至8位移位寄存器74ls164,再进行led指示。
2.4 室内风向电机控制电路
本控制系统的室内风向叶片有自动、摆动以及5种固定角度等运行状态。为得到高精度的角度控制,我们采用dc12v四相八拍步电机驱动。步进控制电路中采用单片机的rb2、rb3、rb4、rb5作为四相(a、b、c、d)八拍环行分配时序,经电流放大器件uln2003功率放大后驱动步进电机运转。控制方法是根据目标位置和当前位置的角度差,输出相应数量的脉拍数,并通过输出脉拍的不同时序来控制正反转。
2.5 室内风机控制电路
制冷和制热量的大小与室内风机的转速有着密切的关系。本系统中室内风机采用双向晶闸管移相控制,使其产生电压调速。控制电路如图3所示。在单片机内部,根据ra5口检测到的电压过零点为同步信号,再通过定时器控制产生所需脉冲的相位和宽度,从rc1口输出,然后经晶体管放大、脉冲变压器隔离输出,再触发双向晶体管导通。为了减小脉冲变压器的容量,输出的是几个连续的窄脉冲序列。
单片机系统ra3口对室内风机的速度反馈脉冲进行计数,并与给定值进行比较,然后进行积分调节,对速度进行闭环控制。
2.6 继电器实时控制电路
控制信号从单片机的通用双向i/o端口rb1、rc4和rc5经过驱动器uln2003放大,控制继电器,使压缩机、室外风机和换向阀按要求状态动作。
3 软件设计
软件设计采用模拟化处理,主控程序包括以下几个部分:程序的初始化、试运转、数据和信号的采集与处理、温度led指示、室内风机的闭环积分控制、室内风向电机的步进控制。功能子程序包括制冷、制热、除湿、自动四种运行模式。中断程序包括遥控接收。各种定时的中断查询处理、速度检测等。系统的主控程序流程如图4所示。
系统资源分配:定时器0用于对速度反馈脉冲计数,定时器1用于遥控处理,定时器2用于其它所有定时处理。由于定时器2处理的定时有20多个,时间长短更是千变万化,短的只有500μs,长的可达24h(小时)。根据现实生活中一块手表可处理多个事件的启示,我们设计出口断式查询定时法,即将基准中断时间设为最小公约数500μs,每个事件分配1个时间寄存器、1个开始定时标志和1个定时时间到标志,在
热门点击
- 单片机与RS232串口通信C51程序
- 一种基于单片机实现OLED显示的设计
- PIC单片机CRC校验程序
- PIC单片机红外遥控编码与解码的问题
- 51单片机与VB串行通信的实现
- 基于MSP430F149的温度采集报警系统的
- 最全的关于PIC单片机入门宝典
- 单片机通信协议处理
- C8051F12X存储大量常量代码的编译技巧
- PC机与单片机的通讯
推荐技术资料
- 硬盘式MP3播放器终级改
- 一次偶然的机会我结识了NE0 2511,那是一个远方的... [详细]