关 闭

新闻中心

EEPW首页>工控自动化>设计应用> 基于Internet的工业空调智能控制器开发

基于Internet的工业空调智能控制器开发

作者: 时间:2009-02-16 来源:网络 收藏

3. 3 数码显示电路

显示模块主要由数码LED显示块和74HC164构成,74HC164为单向8位移位寄存器,可实现串行输入,并行输出。74HC164编程简单,性价比高。选用单片机的两个I/O口完成与显示模块的串行显示连接,其中把单片机的P2.4口作为移位脉冲输出端,P2.5口作为数据输出端。单片机的P2.2口接74HC164的CLK端,对单片机的P2.2口输出的高低电平就是给74HC164数据移位的时钟脉冲,在74HC164获得时钟脉冲的瞬间,如果数据输入端是高电平,则就会有一个1进入到74HC164的内部,如果数据输入端是低电平,则就会有一个0进入其内部,如此循环8次即可将一个8位数据传送至74HC164中。74HC164的输出(并行输出)直接作为数码管的段选控制信号,单片机的P2.0口和P2.1口驱动输出显示的是位选控制信号。显示段码驱动电路如图4所示。


图4 显示驱动电路

3. 4 以太网控制与串行通信模块设计

以太网控制模块主要是在Ethernet/和微处理器之间起到一个桥梁的作用。将微处理器传出的数据打包送到以太网上,或将以太网上的数据接收进来,供主处理器处理。其核心是以太网控制芯片RTL8019AS,为使RTL8019AS能与8位微处理器一起配合工作,就要对它工作时的模式、状态及相关参数作硬件的设置。

以太网控制芯片RTL8019AS实现了以太网媒介访问层(MAC)和物理层(PHY)的功能,包括MAC数据帧的组装/拆分与收发、地址识别、CRC编码/校验曼彻斯特编解码、接收噪声抑制、输出脉冲成形、超时重传、链路完整性测试、信号极性检测与纠正等。

串行通信模块是连接设备控制器与嵌入式网络接口模块的桥梁。由于单片机的串行数据接口并不是标准的RS-232-C串口,因此使用了MAXIM公司的MAX232电平转换芯片将单片机的串行数据接口与标准的RS-232-C串行接口连接起来。MAX232是一种能够实现RS232与TTL两种逻辑电平相互转换的专用芯片,芯片内部包含两种接收器和驱动器以及一个电源电压变换器,并且只需要单一的+5V电源供电。MAX232芯片的硬件接口十分简单,单片机的串行接收和发送端RXD, TXD可直接连接到MAX232的相应端口上,通过外接1.0μF的电解电容便可以、使MAX232输出RS-232-C串行通信所需要的±10V信号电平。由于MAX232芯片没有片选端,在应用系统中仅起到电平转换的作用,因此它并不占用单片机的外部数据存储空间。

3. 5 继电器驱动电路

在单片机应用系统中,开关量输出电路主要完成动作信号的输出,用于控制压缩机和风机的开关状态。由于输出信号不足以驱动继电器的开关动作,在单片机的信号输出口和继电器之间采用了ULN2003A实现信号的放大及驱动。ULN2003A是由7组达林顿晶体管阵列和相应的电阻网络以及箱位二极管构成,具有同时驱动7组负载的能力,为单片双极型大功率高速集成电路;,它具有电流增益高、带负载能力强、温度范围宽及工作电压高等特点,适合驱动继电器、显示器等大功率器件。

继电器驱动电路设计如图5所示,单片机控制信号经P1.0~P1.3端口输出,并通过P3.4的控制,将信号锁存在74LS273中,74:LS273的输出再经过达林顿驱动器ULN2003A反向放大后加到继电器的输入端,使压缩机和风机按要求动作。74LS273锁存控制信号,一方面增加输出功率,另一方面也防止单片机复位时引起控制的误动作。


图5 继电器驱动电路

4 软件的设计与实现

系统软件用C51编写,采用了模块化的设计思想,由主程序模块、各个功能子程序模块和中断服务子程序模块三大部分组成。主程序的功能是系统初始化、控制程序走向和调用功能子程序;功能子程序包括数据采集、数码显示、风机和压缩机的控制等子程序;中断服务子程序包括遥控接收、定时中断处理等。下面对主要程序模块进行描述。

主程序是整个控制系统软件的枢纽,通过主程序有机地调用系统中各类的子程序及模块,使它们形成一个联系紧密的整体,有条不紊的完成各项预定的操作指令。系统上电或复位后,系统首先进行初始化,包括各个寄存器和芯片的初始化;然后对室温进行采样及加权处理;起始串行通信模块确定是否接收到网关发送过来的命令和数据,若接收到命令和数据,设置相应的参数和标志位;调用键盘扫描程序,检查是否有按键按下,若有按键按下,识别按键并设置相应的参数和标志位;调用显示模块用于显示设定温度、当前室温、定时时间、风速、功能和定时状态等信息;调用功能查询及处理模块使系统按所设定的参数和标志位工作。只要系统上电,,主程序就不能停止,一直处于循环等待状态,所以主程序没有结束运行的指令。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭