DCF803-0035DCF803-0035当来自任务源的任务传给管理Agent以后,任务处理模块首先对任务进行分解,然后通过知识库查询其所管理的控制Agent能否完成分解后的所有子任务。如果能够完成则进行任务分配并启动系统;如果不能完成则放弃任务的执行并通知任务源。系统启动后,控制Agent召集相关的感知与执行Agent处理分配给自己的任务,并通过自身的交互机制实现与其它控制Agent的协作以及信息和资源的共享。当某个控制Agent发生故障时,管理Agent的监控模块首先根据检测到的故障信息做出相应的诊断决策,然后通知任务处理模块将该控制Agent的控制权限转交给其它控制Agent或者进行任务的重新分配,从而使整个系统仍能正常运行。这样就实现了依靠各Agent之间的协作来提高整个系统的可靠性,而不是通过单个设备的可靠性和关键部件的冗余。
4 系统的硬件结构
本文采用现场总线作为系统的通信平台,构建一个开放的,具有互操作性的实时现场总线数据采集系统。实现该测控系统的具体方案如下:
考虑到系统降低成本的要求,结合现有总线控制系统的特点,作者利用现场测控设备、Lonworks节点和其网络设备组成现场测控网络。在此,我们只要在设计每个Agent的时候,给每个模块加上Neuron芯片,通信线路只需普通的双绞线即可,这样便可以实现各Agent之间的任意通信。同时以单片机系统作为硬件支撑,用MCS51语言作为软件开发工具,使其与新型传感器和执行机构构成相应的智能Agent。主要完成对测控对象的基本控制,通过临时的现场节点采集所需要的监控信息,进行感知处理,并通过总线传到管理Agent进行总体数据分析、处理和故障诊断。动态节点Agent之间遵循Lontalk协议,采用网络变量实现各节点的连接。节点间的数据通信采用窗口协议以显示报文进行数据传输,并通过网络变量来管理,这样就实现了节点Agent间的相互操作,并采用类KQML的通讯模式实现Agent间的信息和知识的共享。
4.1控制Agent
控制Agent的主要功能是完成自身的控制算法,并根据任务需要与其它Agent组成动态的多Agent合作系统。控制Agent所需要的控制命令和数据均通过Lon总线传输。控制Agent只带有Lonworks接口芯片和外部扩展EZPROM,并无任何其它外设。
本文采用神经元芯片TMP3150与AT89c51单片机连接构成Lon总线接口电路,二者之间采用并行通讯方式。单片机AT89c51的P0口与3150的IO0~IO7,相连作为8位的数据总线;AT89c51的P3.2与3150的IO8相连,作为单片机请求发送数据的信号线和接收3150控制命令的应答线;P3.3与IO9相连,作为神经元芯片接收数据的应答信号线;P3.4与I010。相连,用作3150发送控制命令的信号线。这样选取P3.2和P3.3。作握手信号,保证了单片机与3150的严格同步。同时,为了避免系统受 |