一种智能温湿度控制器的设计

发布者:VelvetDreamer最新更新时间:2015-05-26 来源: eechina关键字:SHT11  STC89C58RD+  温湿度控制  RS485 手机看文章 扫描二维码
随时随地手机看文章
0  引言
  随着电力系统规模越来越大、电压等级越来越高,供电可靠性也要求更加严格。供配电设备环境的温度、湿度是影响设备运行的重要因素。温度过高会加速仪器设备元器件老化,缩短其使用寿命,甚至直接导致设备损坏;低温、潮湿,设备表面产生凝露则有可能发生爬电、闪络等事故。
  基于以上考虑,在中高压开关柜、箱变、端子箱等供配电设备中进行温度、湿度控制是十分必要的。本文将介绍一种WHD型智能温湿度控制器的设计方法,最多实现三路温度、湿度的测量与控制;结合RS485总线技术及上位机软件,可实现数据及状态信息远传,满足低压配电智能化及网络化发展的需求。
1  硬件电路设计
1.1   硬件设计的总体思路
  硬件系统以单片机为核心,按功能可划分为:电源供电、温湿度测量、控制输出、人机对话以及通讯五个部分,如图1所示。
  电源供电电路将AC220V或其他类型辅助电源转化为系统工作所需的直流电源。单片机将传感器测得的温湿度值进行比较、处理,确定输出控制部分继电器的工作状态,并显示和发送温湿度数值及输出控制部分的工作状态信息。人机对话部分具有按键信息录入功能,用户可根据实际情况,通过按键编程设置系统的工作参数。


1.2   硬件的具体电路及原理
  核心器件单片机选用STC公司的STC89C58RD+型单片机,它是一款兼容51内核的增强型8位机,片上资源丰富,抗干扰能力突出。STC89C58RD+(D版本)支持6时钟/机器周期,内含32K字节用户程序空间,片上集成1280字节RAM,16K字节EEPROM空间;支持ISP/IAP功能,无须专用编程器;片上还集成了看门狗电路及MAX810专用复位电路。
  温湿度的测量选用SENSIRION公司开发的数字式温湿度一体传感器芯片SHT11。该传感器可同时测温度、湿度,并提供全程标定的数据输出,所以使用该传感器既可以降低硬件成本,又方便了整机测试。其技术参数如下表所示:
  温度参数:       

参数

条件

典型

单位

分辨率

 

0.01

精度

0~60

±1

量程范围

 

-40~120


  湿度参数: 

参数

条件

典型

单位

分辨率

 

0.03

%RH

精度

20%~80%

±3

%RH

量程范围

 

0~100

%RH


  该传感器与CPU之间的通讯采用二线制方式,即DATA(数据)线和CLK(同步时钟脉冲)线。测量三路温度、湿度时,CPU与传感器的连接电路如图2所示。CPU通用I/O口中的P1.0和P1.1,P1.2和P1.3,P1.4和P1.5分别与三路温湿度传感器SHT11连接,其中P1.0、P1.2、P1.4分别作为各路通讯的DATA(数据)线,P1.1、P1.3、P1.5分别作为各路通讯的CLK(同步时钟)线,DATA线需外加10KΩ的上拉电阻将信号提高至高电平(详情请参考SHT11数据手册)。实际使用时,传感器与控制器之间(即图中虚线部分)以屏蔽线连接,经验证,CPU与传感器之间的最大通讯距离为10米。如果使用74HC245或其他芯片提高I/O口的驱动能力,可增加通讯距离,但会降低系统的抗干扰性能,因此不予采纳。




  系统采用LED数码管显示温度、湿度值,界面简洁明了。三路传感器测得的温度、湿度值以循环方式依次显示,显示部分共有7位数码管,其中4位用于显示温度值(显示范围:-40.0~100.0),并在编程状态下显示菜单及参数,2位用于显示湿度值(显示范围:0~99),1位用于显示当前显示或操作对应的传感器的编号(1~3)。数码管显示采用动态扫描方式,其驱动电路由集成电路74HC595及74HC164构成。74HC595是一款带有输出门锁功能的8位串行输入、并行输出(或串行输出)的移位寄存器,用于数码管的段驱动;74HC164的串行输入、并行输出功能用于扫描显示每一位数码管,如图3所示。
  系统采用继电器或可控硅作为控制输出,电源部分采用开关电源方案,通讯部分采用RS485接口,具体电路设计请参考相关书籍,此处不予赘述。


2  软件设计方法
  系统软件设计包括以下四个部分:主程序、测量控制模块、显示模块及通讯模块。
  主程序完成上电或复位初始化,复位看门狗,查询按键信息等功能,程序设计流程如图4所示。



  程序初始化包括配置CPU的SFR,设置I/O口初始状态,从EEPROM读取工作参数,设置看门狗定时器的复位时间等。需要注意的是,一般只在主程序中喂狗,看门狗的复位时间时要设置的比测量程序中可能出现的最长等待时间还要长。以下给出主程序的部分C语言源代码。[page]
  void  Main ()
  {
  WDT_CONTR = 0x00;//关闭看门狗
  InitialEeprom();//读EEPROM
  InitialIO();//初始化I/O状态
  InitialSFR();//设置SFR
  InitialSHT11();//初始化传感器
  InitialComm ();//初始化通讯口
  WDT_CONTR = 0x35;//喂狗1.25秒
  while(1)
        {
         WDT_CONTR = 0x35;
         KeyScan();//按键查询
         KeyProcess();//按键信息处理
        }
  }
  通讯收发处理、显示和温湿度测量控制均以中断方式实现,优先级顺序为:串口通讯中断(最高)→显示中断→测量控制中断(最低)。 
  系统通讯采用标准MODBUS-RTU规约,便于上位机管理软件设计,与其他网络仪表组网使用,实现对供配电系统的完整监测。


3  产品应用
  在电力供配电环境中进行温湿度控制,一般采取如图5所示的方案。



   通过温湿度传感器采集开关柜或箱式变电站中的温度、湿度信息,经控制器处理后输出继电器触点信号(断开或导通),再将触点信号连接到温湿度调节设备(一般使用加热器或风扇)的电源回路中,用于控制其工作或停止,以实现对温湿度的智能化控制。
  WHD型智能温湿度控制器通用技术指标如下:


技术参数

指标

控制对象

1~3路温湿度

功能

升温

设置范围:-10℃~10℃

降温

设置范围:30℃~45℃

除湿

设置范围:75%~90%

输出


触点

数量

每组温湿度对应2路触点

容量

250V/5A

通讯

接口

RS485

协议

标准MODBUS-RTU

波特率

1200、2400、4800、9600、19200

辅助电源

AC/DC220V,允许85~270V


  此类温湿度控制器可控制一路、二路或三路温湿度,每一路温湿度传感器对应一组(二个)继电器输出触点,其中一个触点用于控制加热器,实现升温或除湿控制,另一触点用于控制风扇,实现排风控制。当传感器或加热器发生故障时,控制器会发出报警信号。
  控制器中还可设置温湿度控制的回滞量,即调节设备的启动条件与停止条件之差。如图6所示,以加热升温为例,当环境温度降低到预先设置“加热启动温度”以下时,控制器输出触点导通信号,加热器工作,环境温度逐渐上升;当环境温度上升至“加热停止温度”以上时,控制器输出触点断开信号,加热器停止加热。根据经验,回滞量一般设置在4~10(℃或RH%)范围内较合适。



  铝合金加热器是电力供配电系统中最常用的温湿度调节设备,下面是由经验总结的环境空间大小与加热器功率选择的关系,供读者参考。


环境空间大小(m3)

加热器功率(W)

≤0.5

50~75

0.5~1

100~150

1~1.5

200左右

1.5~2

250左右

2以上

300或更大


  WHD型智能温湿度控制器可将测量的温湿度值及控制系统中的各种状态信息通过RS485通讯接口向上位机远传,由上位机管理软件实现遥测、遥控,满足了智能化、网络化发展的要求。


4  结束语
  本文介绍了一种智能温湿度控制器的设计方法及应用,可实现最大三路温湿度的采集、控制,并具有编程参数设置和RS485(MODBUS-RTU)通讯功能。经实践验证,参照此方法设计的WHD系列产品在实际应用中易于用户使用,控温及控湿效果显著。同时,该产品的抗电磁干扰性能突出,例如,5kHz和100kHz频段抗脉冲群干扰可达到三级,适合在电磁环境相对恶劣的电气设备中使用。

关键字:SHT11  STC89C58RD+  温湿度控制  RS485 引用地址:一种智能温湿度控制器的设计

上一篇:基于ADE7758+MC9S08AW32方案的多回路监控单元的设计
下一篇:浅谈ARD3电动机保护器设计原理

推荐阅读最新更新时间:2024-03-16 14:03

多处理器模式下RS485总线在飞机配电系统中的应用
  .引言   飞机配电系统的功能是实现飞机电能的输送、分配及保护控制。随着航空、电子以及计算机技术的高速发展,机载 设备 的数量大幅增加,供电系统容量迅速增长 ,飞机配电系统逐步向着以通信总线为基础的自动配电系统发展。RS485 总线以其协议简单、配置灵活等特点,常作为一种余度总线,用于含有多种数据总线的飞机自动配电系统中 。本文主要探讨多处理器模式下 RS485 总线在飞机配电系统中的应用。   2 .飞机配电系统的结构及通信要求   飞机自动配电系统包括一次配电系统和二次配电系统,其中,一次配电系统的核心控制部件是汇流条功率 控制器  BPCU(Bus Power Control Unit);二次配电系统的控制部件是二次配电
[嵌入式]
单片机上的RS485接口
RS-232虽然应用很广泛,但因为它推出较早,在现代网络通信中已经暴露出明显的缺点。比如以下几点: 1) 数据传输速率慢。RS-232所规定的20KB/s的传输速率虽然能满足异步通信要求,通常异步通信速率限制在19.2KB/s以下对某些同步系统来说,不能满足传送速率要求。 2) 传送距离短。RS-232接口一般装置之间电缆长度为15m,即使有较好的线路器件优良的信号质量,电缆长度也不会超过60m。 3) 没有规定标准的连接器,因而出现了互不兼容的25芯连接器。 4) 接口处各信号间容易产生串扰。 RS-485接口的出现就弥补了RS-232的不足,而出现了一种新的接口标准,并且由于良好的性能,RS-485获得了广泛的应用,其
[单片机]
rs485和modbus区别
  经常看到RS485和MODBUS写在一起,它们的区别和联系?   RS485是一个物理接口,简单的说是硬件。   MODBUS是一种国际标准的通讯协议,用于不同厂商之间的设备交换数据(一般是工业用途);   所谓协议,也可以理解为上面有人说的“语言”吧,简单的说是软件。   一般情况下,两台设备通过MODBUS协议传输数据:   最早是用RS232C作为硬件接口,(也就是普通电脑上的串行通讯口(串口));   也有用RS422的,   也有常用的RS485,这种接口传输距离远,在一般工业现场用的比较多。   MODBUS协议又分MODBUS RTU,MODBUS ASCII和后来发展的MODBUS TCP三种模式:   其中前两
[嵌入式]
示波器调试RS485通信波形图
由于笔者在调试STM32移植的MODBUS协议的时候遇到了一些问题,需要借助示波器来看波形,而关于485通信波形相关的资料网上不多,所以把自己调试过程中的波形记录下来。 硬件:STM32单片机,1个主机和10个从机,移植MODBUS协议,采用轮询机制,主机挨个询问从机,从机采集一些信息回复给主机。 原理图:使用带隔离的芯片ADM2483,PA1,PA2,PA3指的是单片机的引脚,分别是使能,TXD和RXD。 代码:基本上是http://www.openedv.com/forum.php?mod=viewthread&tid=98367&highlight=modbus 根据自己的业务稍微做了简化和修改。 以下是主机询问
[单片机]
示波器调试<font color='red'>RS485</font>通信波形图
RS485布网问题分析
rs485布网,网络拓扑一般采用终端匹配的总线型结构,不支持环形或星形网络。在构建网络时,应注意如下几点: 从总线到每个节点的引出线长度应尽量短,采用一条双绞线电缆作总线,将各个节点串接起来,从总线到每个节点的引出线长度应尽量短,以便使引出线中的反射信号对总线信号的影响最低。有些网络连接尽管不正确,在短距离、低速率仍可能正常工作,但随着通信距离的延长或通信速率的提高,其不良影响会越来越严重,主要原因是信号在各支路末端反射后与原信号叠加,会造成信号质量下降。 注意总线特性阻抗的连续性 应注意总线特性阻抗的连续性,在阻抗不连续点就会发生信号的反射。下列几种情况易产生这种不连续性:总线的不同区段采用了不同电缆,或某一段总线上有过多收发器
[嵌入式]
RS-232,RS422,RS485这三个串口有什么区别
S-232是串行数据接口标准,最初都是由电子工业协会(EIA)制订并发布的, RS-232在1962年发布,命名为EIA-232-E,作为工业标准,以保证不同厂家产品之间的兼容。RS-422由RS-232发展而来,它是为弥补RS-232之不足而提出的。为改进RS-232通信距离短、速率低的缺点,RS-422定义了一种平衡通信接口,将传输速率提高到10Mb/s,传输距离延长到4000英尺(速率低于100kb/s时),并允许在一条平衡总线上连接最多10个接收器。RS-422是一种单机发送、多机接收的单向、平衡传输规范,被命名为TIA/EIA-422-A标准。为扩展应用范围,EIA又于1983年在RS-422基础上制定了RS-485标准,
[嵌入式]
stm32串口1和RS485通信的串口2的配置
stm32串口1的配置 #if EN_USART1_RX //如果使能了接收 //串口1中断服务程序 //注意,读取USARTx- SR能避免莫名其妙的错误 u8 USART_RX_BUF ; //接收缓冲,最大USART_REC_LEN个字节. //接收状态 //bit15, 接收完成标志 //bit14, 接收到0x0d //bit13~0, 接收到的有效字节数目 u16 USART_RX_STA=0; //接收状态标记 void uart_init(u32 bound){ //GPIO端口设置 GPIO_InitTypeDef GPIO_InitStructure; USART_In
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved