Nova Patents
EP1577724A2

Agent program environment

Abstract

A system and method for programming a plurality of agents (50) onto a distributed control system (10) are disclosed. The system includes a terminal (20) that displays a graphical user interface having a plurality of images. The plurality of images includes a first image (140) showing a plurality of selectable templates (92) and at least a first mechanism by which first user input signals can be received concerning the templates, where the templates include agent-type programming, and a second image (120) showing a representation of controllable devices (12) and at least a second mechanism by which second user input signals can be received concerning associations between the templates and the representation. The system further includes a processing device (100) that generates executable programming to be performed by the distributed control system based upon the templates and the associations, where the executable programming at least partly governs agent-type behavior of the distributed control system.

EP1577724A2, drawing sheet 1
Sheet 1 of 9

Term

Term ended

Projected expiry passed 9 March 2025, 1.5 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

31 claims: 11 independent, 20 dependent

  1. 1
    A system for programming a plurality of agents onto a distributed control system being configured to control a plurality of controllable devices for performing a process, the system comprising:a terminal that displays a graphical user interface having a plurality of images including    a first image showing a plurality of selectable templates and at least a first mechanism by which first user input signals can be received concerning the templates, wherein the templates include agent-type programming;and    a second image showing a representation of the controllable devices and at least a second mechanism by which second user input signals can be received concerning associations between the templates and the representation;and a processing device that generates executable programming to be performed by the distributed control system based upon the templates and the associations, wherein the executable programming at least partly governs agent-type behavior of the distributed control system.
  2. 13
    The system of one of claims 1 to 12, wherein the processing device performs a compiling process during the generating of the executable programming.
  3. 14
    The system of one of claims 1 to 13, wherein the processing device performs an instantiation process upon the templates during the generating of the executable programming.
  4. 15
    The system of one of claims 1 to 14, wherein the terminal is part of a human-machine interface that is coupled to the distributed control system by way of a communication link.
  5. 17
    The system of one of claims 1 to 16, further comprising a means for storing information on which the executable programming is stored prior to being downloaded onto controllers of the distributed control system.
  6. 18
    The system of one of claims 1 to 17, wherein the executable programming is stored upon a memory device selected from the group consisting of a disk, a cartridge, a card, and a chip, and wherein the executable programming is provided to the distributed control system when the memory device is coupled to a component of the distributed control system.
  7. 19
    A system for programming a plurality of agents onto a distributed control system being configured to control a plurality of controllable devices for performing a process, the system comprising:at least one memory device on which is stored at least one library of program templates, wherein each of the program templates includes agent-related programming;and a human-machine interface in communication with the at least one memory device, wherein the human-machine interface displays the program templates of the at least one library and a mechanism by which user input signals can be received concerning selected ones of the program templates.
  8. 24
    A method of programming a distributed control system, the method comprising:providing a first editor interface displaying templates of at least one library;receiving first user instructions to select at least some of the templates from a library using the first editor interface, wherein each of the templates includes agent-related programming;providing a second editor interface that displays a representation of a facility having a plurality of controllable devices;receiving second user instructions assigning the selected templates to portions of the representation corresponding to the respective controllable devices;providing a third editor interface that displays a representation of a plurality of controllers of the distributed control system;and receiving third user instructions assigning each of the selected templates to a respective one of the controllers.
  9. 27
    A method of programming a distributed control system to control a plurality of devices to perform a process, the method comprising:providing a controller for implementation in the distributed control system, wherein the controller includes general programming including first programming to govern first agent-type functionality of the controller;obtaining second programming for governing operation of the controller to control one of the devices and also third programming for governing second agent-type functionality of the controller that depends upon a characteristic of the controlled one device;and supplementing the first programming with the second and third programming.
  10. 30
    The method of one of claims 27 to 29, wherein the second programming includes ladder logic code and the third programming includes C++ code.
  11. 31
    The method of one of claims 27 to 30, further comprising    configuring at least one of the first programming, the second programming, the third programming and a fourth programming so that data that is required by the controller for operation, and that is available at a location other than at the controller, is periodically and continually transferred to the controller.