摘要:设计了一套全自动太阳能工程热水器控制器。该系统利用低功耗高性能的RISC单片机AVR作为控制电路的核心实时监测水温及水位,可实现温度、水位检测管理,故障及相关报警提示等功能,利用E2PROM对设置的参数保存,具有断电记忆功能,断电后,参数无须重新设置。该款全自动太阳能热水器控制器具有使用方便、稳定性高、节能等特点,实用性高。
0 引言
随着人们生活水平的提高,各种热水器的使用已相当普及,与之相配套的控制仪也相继问世。然而,目前市场上的各种热水器控制电路还与理想要求相差甚远。消费者需要真正的“全自动”控制,以实现使用的最简单化,就像家用电视机、电冰箱一样,接通电源、设定完毕就不用再操心了。鉴于国内太阳能热水器市场不断扩大,而与其相配套的控制器却急需改进的情况,研制了这套太阳能热水器控制器。本文设计的太阳能热水器是以AVR Mega 32单片机为检测控制核心,不仅实现了温度、水位两种参数的实时显示功能,而且具有温度设定与控制功能。控制器可以根据天气情况利用辅助加热装置使蓄水箱内的水温达到预先设定的温度,从而达到24小时供应热水的目的。实际应用结果表明,该控制器和以往的显示仪相比具有性价比高、温度控制与显示精度高、使用方便和性能稳定等优点,提高了我国太阳能应用领域控制水平,具有可观的经济效益和社会效益。
1 设计目标与实现方案描述
1.1 系统原理图
系统原理图如图1所示。其中:W为水位传感器(压力式),包含T2;T1为集热器顶部温度传感器;T2为水箱温度传感器,与水位W一体;T3为防冻循环温度传感器(安装于集热循环管路最低温度点);T4为用水管道温度传感器(安装于用水循环管路最低温度点);T5为管道电伴热温控传感器(一般安装于自来水上水管道,位置可根据实际情况而定);P1为集热管路循环泵,亦作为防冻循环泵;P2为用水管路循环泵(亦可用电磁阀+自动增压泵形式);E1为上水电磁阀(自来水直接进水箱补水);E2为顶水电磁阀(自来水进集热器,顶水入水箱);EH1为电加热器;EH2为电伴热带(选用)。
1.2 主要功能及说明
在太阳能热水工程控制系统中,需实现:LED显示,温差循环,定温出水,定温上水,自动上水,定时上水,低水位上水,自动加热,定时加热,电加热防干烧,防冻电加热,防冻循环,定时间段-定温管路循环,高温保护,警戒水位保护,防炸管,断电参数与运行状态记忆,出厂参数复位,故障及相关报警提示,安全防护,管道防冻电伴热,用水管道防冻,水灯显示方式,键盘锁,紧急断电,开机自检等众多功能。可以将这些功能分为以下6类:键盘输入、A/D转换、实时时钟、数据显示、E2PROM的使用和故障报警。该系统利用低功耗高性能的RISC单片机AVR作为控制电路的核心,AVR微处理器是Atmel公司的8位嵌入式RISC处理器,具有高性能、高保密性、低功耗等优点。程序存储器和数据存储器为可独立访问的哈佛结构,代码执行效率高。系统采用的AVR Mega 32处理器包含有32 KB片内可编程FLASH程序存储器;1 KB的E2PROM和2 KB的RAM;同时片内集成了看门狗;8路10位ADC;3路可编程PWM输出;具有在线系统编程功能,片内资源丰富,集成度高,使用方便。AVR Mega 32可以很方便地实现外部输入参数的设置,A/D转换,E2PROM的数据存储,工作状态的指示等。
1.2.1 键盘输入
键盘输入部分可用4×4按键组成0~9数字键及确认键,8位数码管组成显示电路提示信息。单片机应用系统中,键盘扫描只是单片机的工作内容之一。单片机在忙于各项工作任务时,如何兼顾键盘的输入,取决于键盘的工作方式,而键盘的工作方式取决于CPU的忙、闲情况而定。其原则为既要保证能及时响应按键操作,又不要浪费过多的CPU工作时间。通常,键盘的工作方式有3种,即编程扫描,定时扫描和中断扫描。为进一步提高扫描键盘的工作效率,可以采用中断扫描方式,只有在键盘有按键按下时,才执行键盘扫描并执行按键功能程序。而键盘的识别方法又可以分为3种:扫描法,线反转法和编码法。对于按键较少的独立式键盘可采用编码法,如4×4的键盘,键盘可以编码为:
01H,02H,…,OFH,10H共16个。
1.2.2 A/D转换
关于温差循环,定温出水,定温上水,自动上水,低水位上水,自动加热,电加热防干烧,防冻电加热,防冻循环,高温保护,警戒水位保护,防炸管;安全防护,管道防冻电伴热,用水管道防冻等大多数功能就是对系统多处进行水温水位检测,也就是将传感器的模拟量通过AVR Mega 32自带的8路10位ADC进行A/D转换。
R2,R3,R4和Pt100组成传感器测量电桥,为了保证电桥输出电压信号的稳定性,电桥的输入电压通过TL431稳至2.5 V。从电桥获取的差分信号通过两级运放放大后输入单片机。电桥的一个桥臂采用可调电阻R3,通过调节R3可以调整输入到运放的差分电压信号大小,通常用于调整零点。放大电路采用LM358集成运算放大器,为了防止单级放大倍数过高带来的非线性误差,放大电路采用两级放大,如图3所示,前一级放大倍数约为10倍,后一级约为3倍。温度在0~100℃变化,当温度上升时,Pt100阻值变大,输入放大电路的差分信号变大,放大电路的输出电压AV对应升高。
一般在使用Pt100的温度采集方案中,都会对放大器LM358采集来的模拟信号AV进行温度采样,即进行A/D转换。
在对数值进行滤波操作之后,还要将A/D值转换为温度,只需要确定比例系数K和基准偏差B即可。
温度转换的C语言实现过程为:
temperature=(adc_data*K)-B; //换算成温度值
1.2.3 实时时钟
采用DALLAS公司推出的涓流式充电时钟芯片,它内部集成了实时时钟/日历和31 B静态RAM,可以通过串行接口与单片机进行通信。实时时钟、日历电路电路提供秒、分、时、星期、月、年的信息,每个月的天数和闰年天数可自动调整,时钟操作可通过AM/PM标志位决定采用24小时或12小时时间格式。DS1302与单片机之间能简单地采用同步串行的方式通信,仅需3根线:复位(RST)、I/O数据线、串行时钟(SC-LK)。DS1302工作功耗很低,保持数据和时钟信息时,功耗小于1mW。利用它很容易实现自动上水、自动加热的控制和时间显示。假设这里单片机设置报警为凌晨3点整,启动电加热,当CPU读出DS1302时间为3点即可使对应的I/O管脚输出高电平,打开继电器启动加热器,定时上水功能同理。同时在不显示温度和水位时,它还可作为精确的电子钟进行时间显示。
1.2.4 数据显示
该系统采用静态显示的方式,用3个数码管交替显示水温、时间、报警的信息,在按键时,也将用数码管显示。水位级别显示则用LED显示。显示电路由3个移位寄存器74HC164和3个数码组成。每个数码管接有8个1 kΩ电阻,保护数码管,防止电流过大烧坏数码管。具体的电路如图3所示。
1.2.5 其他部分
本系统除复位键、手动上水和手动加热允许键外,其余的按键为选择设定项目(温度显示或定时显示),每按一下choose键,设定功能变换1次。按1次“+”键,设定值对应加1。按1次“-”键,设定值对应减1。为了防止设定的参数在掉电后丢失,利用了E2PROM存储各设定参数。
2 结语
本文设计的太阳能工程热水器控制器,硬件设计简单,功能强大。经试验证明系统稳定,操作方便,值得推广。本文给出的电路是一种最基本最简单的电路,其目的是给出一种单片机的控制模式,亦可以根据用户需求,添加更多附加功能。
转载请注明来源:中国测控网(www.ck365.cn)