DIY编程器网

标题: 基于ATmega16的远程温差循环控制器设计 [打印本页]

作者: liyf    时间: 2012-1-27 14:11
标题: 基于ATmega16的远程温差循环控制器设计

                      引? 言
  太阳能与建筑一体化是城市建筑发展的必然趋势,分体承压太阳能热水器是太阳能发展的基本方向。由于分体式太阳能热水系统的集热部分与储热水箱相互分离,二者由管道连接,需要配套温差循环换热控制装置才能工作。目前,市场上使用的温差循环换热装置基本都是单机工作,这就要求安装在离太阳能热水器就近的位置,操作人员必须爬上楼顶才能完成基本的信息查看和基本功能操作。该设计很好地解决了这个缺点,使用AVR单片机,运用RS 485技术以及NTC热敏传感器技术,研制开发了该远程温差循环控制器。
  1 系统结构和工作原理
  远程温差循环控制器主要用于测量、显示分体承压太阳能热水器的水箱水温、集热器温度、管道温度及控制温差循环、辅助电加热、管道防冻和参数设置等。控制器主要由主机、从机、水温传感器、防冻传感器等部分组成。主机核心为ATmega16单片机,通过RS 485与从机通信,显示从机采集的温度数据,并完成基本功能设置,把设置数据传送给从机;从机也是以ATmega16单片机为主控器,完成数据采集和控制执行,其系统总体结构框图如图1所示。






  2.1.2? RS 485通信的抗干扰问题
  RS 485总线存在自适应、自保护功能脆弱等缺点,如不注意一些细节的处理,常出现通信失败,甚至系统瘫痪等故障,因此提高RS 485总线的运行可靠性至关重要。
  在该设计中,首先采用光电隔离。图2中,四位一体的光电耦合器TLP521_1使单片机与MAX485之间实现了完全的电隔离,消除了相互干扰,提高了工作的可靠性。如图2所示,单片机接收端RXD接TLP521_1的第13引脚;MAX485的RO接TLP521_1的第3引脚。这样,当RO有信号输入时,TLP521_1的第3引脚,通过光电耦合管使第13引脚有相应的电信号,从而降低了相互干扰。TXD,PD2的结构和RXD相同。其次,在RS 485的输出端即A,B两端加入信号限幅二极管D1~D4,其稳压值应保证符合RS 485标准,D1和D3取12 V,D2和D4取7 V,以保证将信号幅度限定在-7~+12 V之间,进一步提高抗过压的能力。考虑到线路的特殊情况(如某一节点的RS 485芯片被击穿短路),为防止总线中其他分机的通信受到影响,在MAX485的信号输出端串联了两个3.3 kΩ的电阻R8和R10,这样本机的硬件故障就不会使整个总线的通信受到影响。在应用系统工程现场施工中,由于通信载体是双绞线,它的特性阻抗为120 Ω左右,所以在线路设计时,在RS 485网络传输线的始端和末端应各接120 Ω的匹配电阻(如图2所示中的R9),以减少线路上传输信号的反射。通过上述几点,可以有效地降低RS 485通信中的干扰。
  2.1.3? 输出显示和键盘输入电路
  液晶显示用的是OCM中128×64的液晶,该液晶显示模块为128×64点阵型液晶显示模块,既可显示各种字符及图形,又可以显示4行汉字,刚好符合该设计要求,显示4路温度,并可与CPU直接接口,具有8位标准数据总线、6条控制线及电源线。该设计中,由于单片机接口预留有限,所以LCD与单片机的连接采用串行数据输入方法,数据通过单片机PA7与LCD串行输入端的第4引脚相连;PA4、PA5为片选信号,分别接LCD的第15、第16引脚;PA6作为读/写使能信号,与LCD的第6引脚相连,它不仅接口简单,而且节约了单片机的I/0口资源。键盘输入接口使用到8个按键,采用行列式2×4键盘实现。






  3? 系统软件设计
  该设计的软件编程并不复杂,主要有以下几个模块:LCD显示、RS 485通信、A/D软件滤波、行列键盘、继电器控制等。这里主要介绍对RS 485通信、A/D数据的处理。
  3.1 RS 485通信格式
  在该设计中,虽然只是双机通信,但是为了以后扩展的需要,通信采用轮询方式。通信的发起端是主机,每次通信都是由主机发送指令开始,然后从机接收指令,根据接收到的指令,判断执行相应的动作。指令共有3种,所以用2位二值代码。代码有:00为查询,01为设置参数,02为手动指令传输。
  通信流程如下:
  (1)主机隔100 ms发查询帧,从机返回传感器数值数据帧;
  (2)设置参数、状态等:主机发设置参数帧,从机返回设置确认帧;
  (3)若在定时时间内没有收到从机返回数据,则重新发送,一直到从机正确返回。
  3.2 A/D数据的处理
  测试中发现,若不对A/D转换后的温度数据进行处理,直接用于温差循环控制,会使继电器不时出现误动作。即使在ATmega16芯片外的测温电路中加入了各种滤波电路,仍不见改善。因此推断该干扰可能来自于A/D转换模块内部。考虑到该系统中现场温度的变化较缓慢,适合采用滑动窗口平均法进行数字滤波。在采用数字滤波方法对A/D转换后得到的连续64个温度数据进行平均后,有效消除了A/D转换后的噪声。
  4? 结? 语
  以ATmega16为核心的远程温差循环控制器,使用RS 485方案,可以很好地解决远程通信问题。该设计方案具有使用元件少,成本低,抗干扰性好等优点。该控制器的功能实用,控制准确可靠,人机对话界面直观,操作简便,能满足各种分体承压式太阳能热水器对温差循环和电加热控制的要求。已经成功用于分体承压太阳能热水器的控制中,亦可用于太阳能热水工程中用于温差循环控制,具有良好的应用前景。
            




欢迎光临 DIY编程器网 (http://www.diybcq.com/) Powered by Discuz! X3.2