新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 微控制器在科研试验中实现的前端设备的远程复位控制

微控制器在科研试验中实现的前端设备的远程复位控制

作者:时间:2012-05-22来源:网络收藏

在兰州重离子加速器冷却储存环工程(HIRFL-CSR)的调试阶段,需要将由HIRFL重离子加速器获得的束流注入冷却储存环(CSR)当中。在束流调节的过程中因为系统操作平凡,实时性要求高,网络上的数据量大大增加,致使网关要吞吐电源模块的大量数据;另外,网关和电源模块与强电控制系统在电器上发生连接,网关和电源控制模块微系统有时受到强电控制系统影响,这样就增加了前端网关死机的可能。中心控制室的束流调节人员在调节束流的过程中如果发现前端网关死机,就必须到现场网关后调节束流的工作才能顺利进行,这样对于调节人员来说,既费时又费力,工作效率受到影响。为了提高调束效率,减轻调节人员的体力劳动,我们设计并了HIRFL-CSR束流注入线网关系统,使束流调节人员在中心控制室的计算机上用鼠标很快就可以前端网关,提高了束流调节效率。

本文引用地址:http://www.amcfsurvey.com/article/149022.htm

系统结构示意图

图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管脚相兼容,其编程开发软件可用KeiluVision2,编程方便、效率高。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。1AT89C51单片机程序

AT89C51单片机信号处理程序是用KeiluVision2编写,程序主要采用查询方式工作,可消除乱麻,被消除乱麻位数可以自己定义,输入命令出错时可重新输入,单片机操作成功后可返回成功信息。整个程序的流程图如图2所示。

该单片机的程序首先加入“stdio。h”、“at89x51。h”头文件,主要用来定义AT89C51的寄存器和调用系统库函数,其次声明一个延时函数和寻址函数,延时函数主要用来控制复位时间的长短,寻址函数主要用来识别网络上单片机电路馍块编号,当AT89C51程序检测到网络上出现自己的命令时,就继续执行程序进行相应的复位操作,否则当逐个识别到不是自己的命令时,就会马上消除缓冲区的字符,重新获取网络上的命令。采用这种查询方式工作的单片机当总线上出现乱码数据的时候,不会发生误操作,因为只有输入命令的字符和顺序都符合被定义的命令格式时才能够成功输入命令,完成相应的复位操作,错一个字符就得重新输入,这样的程序结构比起单纯的查询输入不仅能够消除网络上传送过来的乱码,而且当输入命令错误时,立即可以重新输入,避免了单纯查询方式的输入命令出错还必须得输完规定的字符才能重新输入的方式,提高了操作效率。

整个程序的流程图

图2

2。2控制室界面应用程序

控制室界面应用程序主要由VC++编写,核心是Socket编程。Socket是建立在传输层协议(主要是TCP和UDP)上的一种套接字规范,最初是由美国加州Berkley大学提出的,它定义两台计算机间进行通信的规范(也是一种编程规范),两台计算机之间利用一个“通道”进行通信,这个通道就是由通信两端的套接字组成。Socket屏蔽了底层通信软件和具体操作系统的差异,使得任何安装了TCP协议软件和实现了套接字规范的两台计算机之间通信成为可能。

大多数网络通信程序可分为两类:服务器端和客户端。由于复位网关是基于Linux操作系统的服务器端,所以本应用程序用StreamSocket创建基于Windows的中心控制室客户端服务应用程序。StreamSocket是面向连接的编程方式,它提供了一系列的数据纠错功能,可以保证在网络上传送的数据及时、无误地到达对方。本界面客户端应用程序的Socket编程模型如图3。

本界面客户端应用程序的Socket编程模型

电子镇流器相关文章:电子镇流器工作原理


电子镇流器相关文章:




评论


相关推荐

技术专区

关闭