引言网络通信技术的发展,使监控系统广泛应用于工农业生产等领域,因此,粮情检测技术粮情检测属监控系统范畴,近年来,由于计算机技术、超大规模集成电路技术和的研究在软、硬件等方面都有了一定的进展。
早期粮情监测主要采用温度计测量法,它是将温度计放入特制的插杆中,根据经验插在粮堆的多个测温点,管理人员定期拔出读数,确定粮温的高、低,决定是否倒粮。
这种方法对储粮有一定的作用,但由于温度计精度、人工读数的人为因素等原因,温度检测不仅速度慢,而且精度低,抽样不彻底,局部粮温过高不易被及时发现,导致因局部粮食发霉变质引起大面积坏粮的情况时有发生。
随着科技的发展,从1978 年开始,采用电阻式温度传感器、采样器、模数转换器、报警器等组成的储粮监测系统出现,它可对各粮库的各个测温点进行巡回检测,检测速度、精度大大提高,降低了劳动强度,但由于电阻传感器的灵敏度低,致检测精度、系统可靠性还不够理想。
至1990 年,粮情检测系统有了很大的改善和提高,系统在布线上采用矩阵式布线技术,简化了数据采集部分的线路,在传感器方面应用了半导体、热电偶等器件;在线路传输上采用了串行传输方式,从而减少了传输线根数;采用单板机进行数据处理,并采用各种手段提高数据传输及检测速度,通过软硬件技术的结合,检测精度和可靠性较前有很大提高。
但温度传感器的线性度差,系统的检测精度仍不理想,无法大面积推广。
近年来,随着单片机功能的日益强大和计算机的广泛应用,粮情检测的准确性、稳定性要求越来越高。
寻找最佳配置和最好的性价比成为粮情监测研究的热点国外在粮情监控技术上已达到了很成熟的地步,高科技数字式传感器广泛应用于粮情检测系统。
这种传感器采用了半导体集成电路与微控制器最新技术,在一个管芯上集成了半导体温度检测芯片、数据信号转换芯片、计算机接口芯片,转换、温度补偿等功能。
由于数字温度传感器直接传出数字量,从而解决了温度信号长距离传输问题及传输过程中因干扰和衰减而导致的精度降低等问题。
目前,国内出现了丰富的数字传感器配套产品,如远程控制模块、中继器、接插器、分线器等,技术也比较成熟。
数字传感技术、通信技术、计算机成为当今信息技术的的三大基础,计算机监控技术已成人们关注的热点。
1 项目说明防潮、防霉、防腐、防爆是粮库日常工作的重要内容,是衡量粮库管理质量的重要指标。
它直接影响到储备物资的寿命和工作可靠性。
为保证日常工作的顺利进行,首要问题是加强仓库内温度的监测工作,因为温度的升高,就意味着粮库内的有氧呼吸的加强,就意味着马上就要发生腐烂霉变。
因此我们需要一种造价低廉、使用方便且测量准确的温度测量仪。
1.1 设计目标设计一个基于51单片机的温度湿度报警器,实现运行参数设置和显示功能,通过485总线方式和上位机通信。
设计要求:(1)掌握温度报警器的工作原理和设计方法;(2)掌握51系列单片机编程;(3)掌握485总线通信机理;(4)学会Protell99SE画图工具;1.2研究内容和研究方法(1)根据系统功能要求并且考虑系统的实用性和可操作性,进行系统的整体方案设计。
该方案采用模块化设计方法,以方便系统调试和用户的使用。
(2)系统硬件设计。
主要内容包括芯片的选择、芯片的功能介绍、芯片外围电路的设计等。
(3)系统软件设计。
主要包括系统主程序,记数程序,采样子程序,读显示子程序,写显示RAM子程序,报警子程序。
本设计以实用为出发点,力求设计原理简单,开发成本低,易于实现。
器件选择上,也考虑到实际应用的具体情况。
单片机控制可靠性高,温湿度传感器采集信号误差小,稳定度高,整个系统使用简单,经济,有很强实用性。
1.3 方案选择1.3.1 单片机芯片的选择方案和论证方案一采用MSP430F449芯片作为硬件核心,采用Flash ROM,内部具有4KB ROM 存储空间,能于1.8V-3.6V的超低压工作,适合手持设备。
但是编程环境复杂,编程风格与MS-51相差很大。
用MSP430编程较之MS-51繁琐,故不采用MSP430F449。
方案二采用AT89C52,片内ROM全都采用Flash ROM;能在4V-5.5V电压工作;同时也与MCS-51系列单片机完全兼容。
该芯片内部存储器为8KB ROM 存储空间,同样具有89C51的功能。
由于其与MS-51完全兼容,故编程简单。
AT89C52的性能完全满足本设计对单片机的要求。
所以选择采用AT89C52作为主控制系统。
1.3.2显示模块的选择方案和论证方案一采用LED数码管动态扫描,LED数码管价格适中,对于显示数字最合适,但是显示字母不合适。
而且采用动态扫描法与单片机连接时,占用的单片机时间多。
所以不采用此种作为显示。
方案二采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,如采用在显示数字显得太浪费,且价格也相对较高,所以也不用此种作为显示。
方案三采用LCD液晶显示屏,液晶显示屏的显示功能强大,可显示大量字母,图形,显示多样,清晰可见,但是价格一般,需要的接口线较少,所以在此设计中采用LCD液晶显示屏作为显示。
1.3.3 温湿度传感器的选择方案和论证方案一分别采用温度传感器和湿度传感器分开采集温度和湿度,这种设计需要用到两个传感器分别采集数据而且还需要用到A/D转换电路,实际连接电路比较麻烦。
方案二进而考虑到用温湿度继集成传感器,在单片机电路设计中,所以可以采用一只温湿度集成传感器SHT75,此传感器可以很容易直接读取被测温湿度值,内部进行转换,直接输出数字信号,可以满足设计要求。
所以选择方案二。
综上各方案所述,对此次作品的方案选定: 采用AT89C52作为主控制系统;SHT75作为温湿度传感器;LCD1602显示屏作为显示。
2 系统的整体设计2.1系统的组成根据系统总体功能,将其划分为以下几个功能模块:微处理器CPU、温湿度传感器、键盘、LCD显示,LED状态报警,蜂鸣器报警,整个系统的构成如图2.1所示。
图2.1 整体系统构成2.2系统工作流程AT89C52单片机是整个系统的核心,他来接收温湿度信号并控制协调各个模块使其能正常工作。
SHT75温湿度传感器采集温湿度信号,将信号直接送至单片机进行运算,得到合适的温湿度。
显示部分由液晶芯片LCD1602配合单片机完成。
报警部分由按键控制设置,配合显示部分来设置温湿度的报警阈值,实际温湿度超过阈值是有蜂鸣器和LED灯共同报警。
单片机通过RS485总线方式与上位机进行通讯,并实时显示温湿度值。
因89C52内含8KB的EEPROM,不需外扩展存储器,可使系统整体结构简单。
2.3系统的功能介绍本系统可对温湿度值进行实时检测,测温范围可为-40~+123.8℃,根据粮仓内实际温度变化情况,将测温范围设定为0-70。
C。
可测湿度测量范围是(0-100)%RH,这也足以满足对湿度的测量要求。
所测温湿度值通过LCD1602显示芯片显示。
整个系统测量精度高、稳定性好,性能上能够达到远距离测量温湿度的要求,适于安置在粮仓内进行检测。
3系统的硬件设计本章从器件选择、性能特点、电路分析等方面对硬件系统进行了讨论。
3.1 AT89C52单片机功能介绍3.11 芯片简介AT9C52是一个低电压,高性能CMOS8位单片机,片内含8k bytes的可反复擦写的只读程序存储器(PEROM)和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,内置功能强大的微型计算机的AT89C52提供了高性价比的解决方案。
主要性能参数如下。
主要性能•与MCS-51单片机产品兼容•8K字节在系统可编程Flash存储器•1000次擦写周期•全静态操作:0Hz~33Hz•三级加密程序存储器•32个可编程I/O口线•三个16位定时器/计数器•八个中断源•全双工UART串行通道•低功耗空闲和掉电模式•掉电后中断可唤醒•看门狗定时器•双数据指针•掉电标识符图3.1 AT89C52引脚图3.12 AT89C52各引脚在设计中的应用引脚图如图3.1P0 口:P0 口是一组8 位漏极开路型双向I/O 口,也即地址/数据总线复用口。
作为输出口用时,每位能吸收电流的方式驱动8 个TTL 逻辑门电路,对端口P0 写“l”时,可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8 位)和数据总线复用,在访问期间激活内部上拉电阻。
在Flash 编程时,P0 口接收指令字节。
而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
本系统P0口用于与LCD1602进行数据传输。
P1 口:P1 是一个带内部上拉电阻的8 位双向I/O 口,P1 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。
对端口写“l”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。
作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
P2 口:P2 是一个带有内部上拉电阻的8 位双向I/O 口,P2 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。
对端口P2 写“l”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
本系统P2口用于进行报警系统的信号传输。
P3 口:P3 口是一组带有内部上拉电阻的8 位双向I/O 口。
P3 口输出缓冲级可驱动(吸收或输出电流)4 个TTL逻辑门电路。
对P3 口写入“l”时,它们被内部上拉电阻拉高并可作为输入端口。
此时,被外部拉低的P3 口将用上拉电阻输出电流(IIL)。
本系统P3口用于接收SHT75传感器的温湿度信号,P3.2和P3.3用于键盘输入的外部中断,P3.2用于INT0(外部中断0),P3.3用于INT1(外部中断1)。
RST:复位输入。
当振荡器工作时,RST 引脚出现两个机器周期以上高电平将使单片机复位。
ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8 位字节。
一般情况下,ALE 仍以时钟振荡频率的l/6 输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。
要注意的是:每当访问外部数据存储器时将跳过一个ALE 脉冲。
对Flash 存储器编程期间,该引脚还用于输入编程脉冲(PROG)。
如有必要,可通过对特殊功能寄存器(SFR)区中的8EH 单元的D0 位置位,可禁止ALE 操作。
该位置位后,只有一条MOVX 和MOVC 指令才能将ALE 激活。
此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE 禁止位无效。