基于AT89S52单片机的太阳能环境参数测试仪的系统设计
引 言
为了确保太阳能发电系统能够正常的工作,需要对太阳能发电系统的各项环境参数进行测量,从而有效地控制其运行 。本文介绍了一种基于单片机的太阳能参数测试仪,提供了3种参数的测量功能和通信接口,以及2种供电方式,既可作为手持设备使用,又能安装在发电系统中,具有较高的实用价值 。
1 硬件电路设计
1.1 总体结构
该测试仪以AT89S52单片机为核心,外接温湿度传感器SHTll、照度传感器TSL2561、四位共阴数码管、RS485总线通信接口以及显示切换按键 。单片机上电工作后,对当前温度、湿度、光强度进行实时测量,通过按键切换将测得的3种参数通过LED数码管进行轮流显示;此外,还可以通过RS485总线与PC机进行通信,将参数值传送到上位机,以达到远程监测的目的 。该测试仪的结构框图如图1所示 。
1.2 测量模块
温度和湿度测量采用的是瑞士Sensirion公司生产的SHTll传感器 。该传感器采用独特的CMOsensTM技术,将温湿度传感器、信号放大处理、A/D转换、I2C总线全部集成在一块芯片上,可直接与单片机接口 。该芯片采用数字式输出,为编程提供了方便 。
光照度测量选用的是TAOS公司生产的TSL2561光强度传感器 。它具有数字式输出端口和标准I2C总线接口,涵盖1~70 000lx的宽照度范围,非常适合户外环境下光照强度的测量,适用于太阳能发电系统 。图2为传感器与AT89S52单片机的接口电路设计 。
1.3 电源模块
电源模块提供了2种供电方式:
①当测试仪作为手持设备使用时,可直接使用3.6V锂电池,经过DC—DC电压转换芯片MAX756将电压升至5 V后为单片机和外设供电 。
②当测试仪作为固定设备安装在太阳能发电现场时,可以采用太阳能供电 。太阳能电池产生的12 V电压通过稳压芯片LM7805后,得到稳定的5V电压输出,输出电压既可以为测试模块供电还可以通过充电电路为锂电池充电 。图3是电源模块的硬件原理图 。
1.4 充电电路
充电电路的核心器件采用的是上海如韵公司生产的专用充电芯片CN3058,它可以对单节磷酸铁锂可充电电池进行恒流/恒压充电 。该器件内部集成有功率晶体管,使用时不需要设计外围电流检测和保护电路,适用于便携式的应用领域 。
图4为锂电池充电电路 。其中LEDl和LED2分别作为充电中和充电饱和两种状态的指示灯,R1在充电时起限流保护的作用;电容C1和C2采用的是多层陶瓷电容器(MLCC),能保证充电电路稳定工作 。
1.5 通信模块
测试仪通过RS485工业总线与PC机进行通信,其硬件接口电路如图5所示 。
2 软件设计
2.1 总体设计
测试仪的软件开发环境采用的是KeilC,所有代码采用C语言编写 。为了方便程序调试和提高可靠性,软件采用模块化结构设计,主要由初始化程序、主程序、子程序、中断服务程序等组成 。单片机上电后即开始循环执行温湿度、照度测量程序,并以设定的时间间隔在数码管上轮流动态显示;按键切换和通信功能部分由于使用频率相对较低,为降低设备功耗,其程序以中断响应的方式执行 。在此要注意中断优先级的设置:按键中断优先级应高于串口中断,否则将无法进行显示切换 。主程序流程如图6所示 。
2.2 传感器驱动程序
本系统采用的传感器均为集成数字芯片且都具有I2C总线接口,故其驱动程序的编写要严格遵循I2C总线的时序 。主程序为每一个参数开辟了一个8位的存储空间,传感器将采集到的数据经SDA引脚串行输出,驱动程序将SDA线上输出的数据进行串并转换,并存储到相应空间中,以方便其他功能程序调用 。以下是照度传感器数据采集程序的部分代码 。
(1)TSL2561初始化
2.3 RS485通信程序
测试仪与上位机的通信采用RS485协议 。串口参数为:波特率9600,数据位8位,1个校验位,1个停止位 。其数据格式如图7所示 。
由于RS485总线协议与RS232串口协议只是接口电平上有区别,其软件编程完全按照串口通信协议进行,此处不再详述 。
结 语
【基于AT89S52单片机的太阳能环境参数测试仪的系统设计】经实验测试,该环境参数测试仪温度测量显示精度可以达到0.1℃,湿度精确到O.1%,照度可以精确到11x 。由于主要器件均为I2C数字接口,故本测试仪还有结构简单、易维护、可扩展性强等特点,具有很高的实用价值;另外,独特的双电源供电方式更扩展了它的适用范围 。
推荐阅读
- 基于单片机的智能电平转换器设计
- 基于89C51的八路AD转换系统
- it团队为了确保连接建筑物的安全实施基于物联网的网络安全解决方案
- pic单片机学习困难go away,pic单片机入门so easy
- 如影随从的pic单片机,聊聊pic单片机开发经验、技巧
- pic单片机入门篇,pic单片机的那些风风雨雨
- 51单片机与三菱PLC无协议通讯成功
- 一种基于AT89S52和CAN总线的家居安防系统设计
- 单片机常用功能模块的使用-阴共阳数码管
- 6位LED显示单片机控制电子钟/计数器