微控制器实现的前端设备的远程复位控制


图1
  该网关远程复位系统主要由AT89C51单片机硬件电路、复位网关、AT89C51单片机信号处理程序、控制室界面应用程序组成,其系统结构示意图如图1。
  1 硬件结构与原理
  1.1 单片机硬件电路
  单片机硬件电路分为:信号转换电路、AT89C51单片机、隔离电路、继电器电路等。
  信号转换电路是全双工工作的,其功能主要有两个:一是用来将复位网关发送过来的MAX485信号转成AT89C51单片机P3口可接收的RS232信号,然后由AT89C51根据信号进行处理再通过P2口选择相应的继电器复位相应的网关;二是由另外一片MAX485把AT89C51的P3口送来的信号转换成复位网关接收的MAX485总线信号。
  AT89C51是一种低功耗,高性能CMOS8位微控制器,具有4K字节闪存,可编程可擦除存储器。该微控制器采用Atmel高密度,非易失性存储器制造技术,与工业标准的MSC-51指令集和I/O管脚相兼容,其编程开发软件可用Keil uVision2,编程方便、效率高。AT89C51为很多嵌入式控制应用提供了非常灵活而又价格便宜的方案,它的主要性能有:4K字节的闪存,128字节的RAM,32个I/O口,2个16位的定时器,5个两极中断源结构,1个全双工串行口,片内振荡器和时钟电路。由于AT89C51性价比高,因此我们用AT89C51来实现复位硬件电路的微处理器。
  本系统中的AT89C51单片机主要对接收到的信号实现智能处理,然后通过向P2口传送信号选择继电器完成复位操作。因为单片机P2口外部输出隔离电路采用集电极开路的光电隔离器件,继电器电路采用上拉电阻和光电隔离器件串接,所以内部P2 口寄存器某位置0时外部相应继电器电路不导通,前端网关处于正常工作状态,当内部P2口寄存器某位置1时外部相应的继电器电路导通,继电器导通3秒,相应的网关断电3秒复位,复位成功后单片机通过P3口向网络返回复位成功信息。
  1.2 复位网关
  复位网关的主要功能是完成中心控制室应用程序和AT89C51单片机硬件电路模块的连接。因为该网关与AT89C51电路模块之间的数据吞吐量非常小,而且AT89C51电路模块与电源之间没有在电器上连接,避免了强电控制电路对单片机系统的严重干扰,从而复位电路的稳定性和可靠性得以保证。一块复位网关可以扇出数块复位电路,一块复位电路至少可以复位8块网关,所以一块复位网关可以管理数十块前端网关的复位工作,同时复位网关和AT89C51电路之间采用MAX485总线,因此AT89C51单片机硬件电路可以分布在较大范围的位置来复位分散布局的网关。
  2 软件描述
  2.1 AT89C51单片机程序
  AT89C51单片机信号处理程序是用Keil uVision2编写,程序主要采用查询方式工作,可消除乱麻,被消除乱麻位数可以自己定义,输入命令出错时可重新输入,单片机操作成功后可返回成功信息。整个程序的流程图如图2所示。
  该单片机的程序首先加入“stdio.h”、“at89x51.h”头文件,主要用来定义AT89C51的寄存器和调用系统库函数,其次声明一个延时函数和寻址函数,延时函数主要用来控制复位时间的长短,寻址函数主要用来识别网络上单片机电路馍块编号,当AT89C51程序检测到网络上出现自己的命令时,就继续执行程序进行相应的复位操作,否则当逐个识别到不是自己的命令时,就会马上消除缓冲区的字符,重新获取网络上的命令。采用这种查询方式工作的单片机当总线上出现乱码数据的时候,不会发生误操作,因为只有输入命令的字符和顺序都符合被定义的命令格式时才能够成功输入命令,完成相应的复位操作,错一个字符就得重新输入,这样的程序结构比起单纯的查询输入不仅能够消除网络上传送过来的乱码,而且当输入命令错误时,立即可以重新输入,避免了单纯查询方式的输入命令出错还必须得输完规定的字符才能重新输入的方式,提高了操作效率。
文章附属文件

文件名称: 20180105115153599111.jpg

文件大小:22.9 KB

文件签名:BCB13971FEF0CDB0E3B1A6229AA47BEA1584D8D2

评论列表

lxp
看着我迷迷糊糊的,,唉,真不懂
2011-03-19 10:37:51
airmax
很不错哦,挺好的。一定支持哦!春节快到了。
2011-01-17 07:33:53