基于二线制温度/水位传感器的太阳能热水器
2016-08-31陈彦张艳萍李国栋孙德水
陈彦,张艳萍,李国栋,孙德水
(1.北京航空航天大学 物理科学与核能工程学院,北京 100191;2.山东信息职业技术学院)
基于二线制温度/水位传感器的太阳能热水器
陈彦1,张艳萍2,李国栋2,孙德水2
(1.北京航空航天大学 物理科学与核能工程学院,北京 100191;2.山东信息职业技术学院)
给出了基于二线制的太阳能热水器的硬件电路结构和控制方法。该系统以MA86L508单片机为核心,采用二线制方式将温度/水位传感器与CPU之间互连,通过对电容的一次充放电循环就可以实现对温度和水位的一轮采集,简化了系统结构、提高了温度/水位检测效率、降低了成本。
MA86L508;太阳能热水器;二线制;电容充放电
引 言
图1 三线制检测电路
太阳能热水器与燃气热水器、电加热热水器相比具有无污染、节约能源、性价比高等优点,是名副其实的节能环保产品,被越来越多的消费者所青睐。市面上常见的太阳能热水器一般采用三线制(如图1所示)或四线制(如图2所示)方式将温度/水位传感器连接到控制器上。图1和图2中虚线框内为传感器内部结构,其中Rt为温度传感器、Rw为水位传感器。由图可知,在四线制连接方式中,温度和水位传感器分别用两根导线连接到控制器中;而在三线制连接方式中,则使温度和水位传感器的其中一端共用一根导线,以达到节约导线的目的,其外部接线端子分别为A、B、C、D。
图2 四线制检测电路
通常置于建筑物顶层或室外水箱中的传感器与室内控制器之间的距离一般超过10 m,因此每增加一根传感器引线,就会增加成本约2元以上。对于大量应用的太阳能热水器通过改进检测方法,将传感器与控制器之间的连线尽量减少,无疑会带来数以百万元的可观经济效益。本文以MA86L508单片机为核心,通过改进温度/水位传感器检测方法,通过二线制连接方式将温度/水位传感器连接到室内控制器中,在对电容的一次充放电循环中就可以采集温度和水位值,既提高了检测效率,又降低了成本,可以取得非常可观的经济效益。
1 控制器硬件电路
太阳能热水器控制系统如图3所示,主要由温度/水位检测、报警电路、漏电检测、加热电磁阀、水泵、LED显示器等部分组成。
图3 控制器系统框图
1.1MA86L508单片机
控制器以笙泉科技有限公司生产的增强型8051单片机MA86L508为核心,该单片机与传统的8051单片机相比较,其最大的不同就是外部中断源INT0和INT1既可以采用低电平或下降沿触发方式,也可以采用高电平或上升沿方式触发。此外,该单片机还集成了实时时钟RTC、蜂鸣器,内置24 MHz与22.118 MHz两种振荡器,在系统设计中不必扩展外部时钟芯片、晶振等器件,对于蜂鸣器的控制也变得简单方便。
其低功耗省电模式提供了多达7种工作方式,即掉电模式、空闲模式、慢频模式、副频模式、RTC模式、Watch模式和Monitor模式,可以满足不同应用场合的需要。
1.2温度/水位检测电路
二线制温度/水位检测电路如图4所示,虚线框内所标识的就是改进后的传感器内部结构。温度传感器Rt和水位传感器Rw分别与二极管D1、D2相连,图中标识的节点A、B就是改进后的传感器的两个外部接线端子。利用二极管的单向导电性就可以有选择地实现对外部电容C1充电和放电分别经过温度传感器Rt和水位传感器Rw,从而使得对电容的一次充放电循环就可以实现对温度和水位的采集。
图4 温度/水位检测电路
(1) 电容充电回路
由图4可知,当P1.0置为高电平时,就可以实现对电容C1的充电过程,其充电路径为:
P1.0→R1→传感器接线端子A→D1→温度传感器Rt→传感器接线端子B→C1→信号地
充电时间τ=(R1+Rt+RD1)×C1,其中RD1为二极管D1的正向等效电阻,式中只有Rt随温度而改变,因此通过记录充电时间就可以判断出温度的变化值。
(2) 电容放电回路
与电容充电过程类似,当P1.0置为低电平时,电容C1将进入放电状态,其放电路径为:
C1→传感器接线端子B→Rw→D2→传感器接线端子A→R1→P1.0
放电时间τ=(R1+Rw+RD2)×C1,其中RD2为二极管D2的正向等效电阻,式中只有Rw随水位而改变,因此通过记录放电时间就可以检测出水位的变化值。
通过上述分析可知,在二线制检测电路中利用了二极管的单向导电性来控制电容充放电的路径,从而实现对温度和水位的检测。在该电路中,INT1为中断输入引脚,仅用于检测电容充电或放电是否完成,不参与充放电的控制。
2 控制器软件设计
软件可分为温度/水位采集、显示、报警、上水/加热输出控制、键盘处理、漏电检测与保护、故障诊断等几部分。
MA86L508单片机的外部中断源与传统51系列单片机相比,增加了高电平或上升沿触发方式,如表1所列,因此使用起来更加方便灵活。
表1 INT1中断触发方式控制
2.1温度检测
图5 温度/水位检测流程
温度/水位检测流程如图5所示。在一次充放电的循环中,首先设置 INT1H位(AUXR0.1)和IT1(TCON.2)位为1,使外部中断源1可以由上升沿触发中断,并通过IE1开启外部中断1;然后再通过TR1置1,使定时器开始计时;最后使P1.0设置为高电平,开始通过温度采集回路对电容C1充电。随着电容充电过程的延续,在INT1引脚就会产生一个由0到1的上升沿跳变,该上升沿跳变使程序进入中断处理程序,在中断处理程序中立即停止定时器1的充电计时,并将TH1、TL1寄存器中记录的时间通过查表法转换为温度值。
2.2水位检测
温度采集结束后,程序就可以进入水位检测流程,本系统中水位检测是在电容放电阶段实现的,首先设置 INT1H位(AUXR0.1)为0、IT1(TCON.2)为1,使外部中断1可以由下降沿触发中断,并通过IE1开启外部中断1;然后再通过TR1置1,使定时器开始计时;最后使P1.0设置为低电平,电容C1开始通过水位采集回路进行放电。随着电容放电过程的延续,在INT1引脚就会产生一个由1到0的下降沿跳变,该跳变使程序立即进入中断处理程序,在中断处理程序中停止定时器1的计时,并将TH1、TL1寄存器中记录的时间通过查表法转换为水位值。
由检测流程可知,通过对电容C1的一次充放电循环,就可以实现对温度和水位的检测,提高了系统的响应速度。为了确保检测数据的准确性,在程序中通过IP0H和IP0L寄存器将INT1设置为最高优先级中断,一旦INT1进入中断,就会立即停止定时器1的计时,这样就可以保证所测得的数据不会因为其他函数的执行而影响其准确性。
2.3查表法
通过定时器1将电容C1充电过程中记录的时间值转换为对应温度值的程序流程如图6所示,首先判断定时的时间长度是否在合理区间,一旦由于传感器短路或断路,使得定时时间超出合理区间,则转入异常处理程序,并在LED数码管上显示提示信息;如果定时时间在合理区间,将当前定时时间与table表中存放的设定值进行比较,根据比较结果确定对应的温度值。table表中的数据已通过实验测得并固化到CPU的Flash存储区。
图6 查表法将充电时间转换为温度值
将电容C1放电时间转换为水位值的原理与此类似,但是在太阳能热水器的实际应用中,由于水位值一般只分为无水、1档、2档、3档、4档(满水)共5级,因此除了用查表法之外,也可以将各档水位对应的放电时间值用选择语句if/else或switch语句写到函数中。
2.4LED显示
为了降低成本,系统采用仅有20个引脚的MA86L508,其I/O端口数量有限,因此,将温度、水位及工作状态指示灯的显示控制通过P3.0和P3.1引脚通过一片75HC164芯片控制,且由于T0、T1都用于内部定时使用,因此75HC164不能通过串口的工作模式0来控制。在程序设计中采用软件模拟方式产生74HC164所需的脉冲信号,将要显示的数据转为串行数据位发送到74HC164芯片,再由74HC164发送到LED数码管,利用视觉暂留方法使系统获得所需要的显示效果。74HC164的控制函数如下所示:
sbit DIO=P3^0;
sbit CLK=P3^1;
void WriteTo164(unsigned charch){
unsigned char i;
unsigned char bdata dat;
dat=ch;
CLK=0;
for(i=0;i<8;i++){
if((dat>>i)&0x01) DIO=1;
else DIO=0;
CLK=1;
CLK=0;
}
CLK=0;
}
为了提高控制器的智能化程度、实现节能环保、增强系统使用的安全性,系统还具有自动保温、自动上水、定时加热、漏电保护、待机休眠等功能,可以满足多种应用需要。
结 语
为了简化太阳能热水器的温度/水位采集过程,减少传感器与控制器之间的连线数量,本文通过采取以下措施对传统的太阳能控制器进行了改进:
① 采用了增强型51单片机芯片MA86L508,其外部中断源可以用上升沿或下降沿信号触发,因此在对电容充放电的一次循环中就可以实现对温度/水位采集。
② 利用二极管的单向导电性控制电容的充电和放电,分别选择温度检测支路和水位检测支路。
③ 将外部中断和内部定时器相结合,由定时器记录充电和放电时间,并采用查表法将时间转换为温度/水位值,既保证了数据的准确性,又简化了处理逻辑。
通过上述措施,实现了温度/水位的二线制控制,减少了控制器与传感器之间的连线,降低了成本,简化了控制逻辑,提高了采集温度/水位的效率。
[1] 笙泉科技有限公司.MA86E/L508说明书,2013.
[2] 陈彦,徐平,孟秀锦. 电容充放电技术在太阳能热水器中的应用[J].电子制作,2008(7):10-11.
[3] 丁雷,陈彦,徐平. STC12C2052在太阳能热水器中的应用[J].仪表技术,2010(3):58-59.
[4] 王仙娟,孙平.基于单片机的太阳能热水器智能仪[J].仪表技术, 2005(1):49-52.
[5] 朱欣颖,陈曦.太阳能热水器的控制系统设计[J].智能计算机与应用,2015(3):102-104.
72未经优化的LBP算法红外弱小目标检测系统与本文方法的资源占用情况。
表1 资源占用情况对比
表1表明,未经优化前,算法无法在单片EP2S60F672 FPGA上运行,依次采用本文设计的3种方法优化后,资源占用逐步降低,证明本文方法有效。
结 语
本文在分析了LBP弱小目标检测算法的基础上,详细讨论了一种基于FPGA的红外弱小目标检测系统的实现方法。试验表明,该方法在占用较少资源的情况下,实现了LBP算法的实时处理。
参考文献
[1] 方义强,樊祥,程正东,等.基于数学形态学的红外小目标跟踪研究[J].弹箭与制导学报,2012,28(5):15-18.
[2] 康令州,陈福深,黄自立,等.基于DSP+FPGA的红外图像小目标监测系统设计[J].电子设计工程,2010,18(12):117-119.
[3] 李飞飞,刘伟宁,孙海红.基于FPGA+DSP的红外弱小目标检测与跟踪系统设计[J].激光与红外,2009,39(4): 450-453.
[4] 赵春光,孙宁,郑坚,等.基于局部二元模式算子的红外弱小目标检测[J].激光与红外,2007,37(12):1315-1318.
[5] 翟尚礼,白俊奇.红外搜索跟踪系统的关键技术和解决途径[J].指挥信息系统与技术,2013,6(12):59-64.
[6] Ojala T, Pietikainen M, Maenpaa T. Multiresolution gray-scale and rotation invariant texture classification with local binary patterns[J].IEEE Trans on PAMI, 2002, 24(7):971-987.
[7] Li G,P J,Li H.Small target detection based on multi-wavelet transform [J].Journal of Huazhong University Ofence & Technology,2000,28(1):72-75.
蒋怡亮、翟尚礼(工程师),从事图像处理和FPGA开发工作;孙宁(高级工程师),从事图像处理算法研究工作。
(责任编辑:杨迪娜收稿日期:2015-10-24)
Solar Energy Water Heater Based on Dual-wires Temperature/Water Level Sensor
Chen Yan1,Zhang Yanping2,Li Guodong2,Sun Deshui2
(1.School of Physics and Nuclear Energy Engineering,Beihang University,Beijing 100191,China;2.Shandong College of Information Technology)
The hardware circuits and control method of the solar energy water heater based on the dual-wires are designed.The system takes the MA86L508 as the core,it makes device to connect the sensors of temperature and water level to MA86L508 using the dual-wires.The CPU can realize the collection of the temperature and water level value by a charging and discharging cycle of the capacitor at the same time.It has the characteristics such as simple structure,high efficient and low cost.
MA86L508;solar energy water heater;dual-wires;capacitor charging and discharging
TP212
A
(责任编辑:杨迪娜2015-11-01)