Real-time Control System

Last updated

Real-time Control System (RCS) is a reference model architecture, suitable for many software-intensive, real-time computing control problem domains. It defines the types of functions needed in a real-time intelligent control system, and how these functions relate to each other.

Contents

Example of a RCS-3 application of a machining workstation containing a machine tool, part buffer, and robot with vision system. RCS-3 produces a layered graph of processing nodes, each of which contains a task decomposition (TD), world modeling (WM), and sensory processing (SP) module. These modules are richly interconnected to each other by a communications system. RCS-3 application of a machining workstation.jpg
Example of a RCS-3 application of a machining workstation containing a machine tool, part buffer, and robot with vision system. RCS-3 produces a layered graph of processing nodes, each of which contains a task decomposition (TD), world modeling (WM), and sensory processing (SP) module. These modules are richly interconnected to each other by a communications system.

RCS is not a system design, nor is it a specification of how to implement specific systems. RCS prescribes a hierarchical control model based on a set of well-founded engineering principles to organize system complexity. All the control nodes at all levels share a generic node model. [1]

Also RCS provides a comprehensive methodology for designing, engineering, integrating, and testing control systems. Architects iteratively partition system tasks and information into finer, finite subsets that are controllable and efficient. RCS focuses on intelligent control that adapts to uncertain and unstructured operating environments. The key concerns are sensing, perception, knowledge, costs, learning, planning, and execution. [1]

Overview

A reference model architecture is a canonical form, not a system design specification. The RCS reference model architecture combines real-time motion planning and control with high level task planning, problem solving, world modeling, recursive state estimation, tactile and visual image processing, and acoustic signature analysis. In fact, the evolution of the RCS concept has been driven by an effort to include the best properties and capabilities of most, if not all, the intelligent control systems currently known in the literature, from subsumption to SOAR, from blackboards to object-oriented programming. [2]

RCS (real-time control system) is developed into an intelligent agent architecture designed to enable any level of intelligent behavior, up to and including human levels of performance. RCS was inspired by a theoretical model of the cerebellum, the portion of the brain responsible for fine motor coordination and control of conscious motions. It was originally designed for sensory-interactive goal-directed control of laboratory manipulators. Over three decades, it has evolved into a real-time control architecture for intelligent machine tools, factory automation systems, and intelligent autonomous vehicles. [3]

RCS applies to many problem domains including manufacturing examples and vehicle systems examples. Systems based on the RCS architecture have been designed and implemented to varying degrees for a wide variety of applications that include loading and unloading of parts and tools in machine tools, controlling machining workstations, performing robotic deburring and chamfering, and controlling space station telerobots, multiple autonomous undersea vehicles, unmanned land vehicles, coal mining automation systems, postal service mail handling systems, and submarine operational automation systems. [2]

History

RCS has evolved through a variety of versions over a number of years as understanding of the complexity and sophistication of intelligent behavior has increased. The first implementation was designed for sensory-interactive robotics by Barbera in the mid 1970s. [4]

RCS-1

Basics of the RCS-1 control paradigm RCS-1 control paradigm.jpg
Basics of the RCS-1 control paradigm

In RCS-1, the emphasis was on combining commands with sensory feedback so as to compute the proper response to every combination of goals and states. The application was to control a robot arm with a structured light vision system in visual pursuit tasks. RCS-1 was heavily influenced by biological models such as the Marr-Albus model, [5] and the Cerebellar Model Arithmetic Computer (CMAC). [6] of the cerebellum. [2]

CMAC becomes a state machine when some of its outputs are fed directly back to the input, so RCS-1 was implemented as a set of state-machines arranged in a hierarchy of control levels. At each level, the input command effectively selects a behavior that is driven by feedback in stimulus-response fashion. CMAC thus became the reference model building block of RCS-1, as shown in the figure.

A hierarchy of these building blocks was used to implement a hierarchy of behaviors such as observed by Tinbergen [7] and others. RCS-1 is similar in many respects to Brooks' subsumption architecture, [8] except that RCS selects behaviors before the fact through goals expressed in commands, rather than after the fact through subsumption. [2]

RCS-2

RCS-2 control paradigm RCS-2 control paradigm.jpg
RCS-2 control paradigm

The next generation, RCS-2, was developed by Barbera, Fitzgerald, Kent, and others for manufacturing control in the NIST Automated Manufacturing Research Facility (AMRF) during the early 1980s. [9] [10] [11] The basic building block of RCS-2 is shown in the figure.

The H function remained a finite state machine state-table executor. The new feature of RCS-2 was the inclusion of the G function consisting of a number of sensory processing algorithms including structured light and blob analysis algorithms. RCS-2 was used to define an eight level hierarchy consisting of Servo, Coordinate Transform, E-Move, Task, Workstation, Cell, Shop, and Facility levels of control.

Only the first six levels were actually built. Two of the AMRF workstations fully implemented five levels of RCS-2. The control system for the Army Field Material Handling Robot (FMR) [12] was also implemented in RCS-2, as was the Army TMAP semi-autonomous land vehicle project. [2]

RCS-3

RCS-3 control paradigm RCS-3 control paradigm.jpg
RCS-3 control paradigm

RCS-3 was designed for the NBS/DARPA Multiple Autonomous Undersea Vehicle (MAUV) project [13] and was adapted for the NASA/NBS Standard Reference Model Telerobot Control System Architecture (NASREM) developed for the space station Flight Telerobotic Servicer [14] The basic building block of RCS-3 is shown in the figure.

The principal new features introduced in RCS-3 are the World Model and the operator interface. The inclusion of the World Model provides the basis for task planning and for model-based sensory processing. This led to refinement of the task decomposition (TD) modules so that each have a job assigner, and planner and executor for each of the subsystems assigned a job. This corresponds roughly to Saridis' [15] three level control hierarchy. [2]

RCS-4

RCS-4 control paradigm RCS-4 control paradigm.jpg
RCS-4 control paradigm

RCS-4 is developed since the 1990s by the NIST Robot Systems Division. The basic building block is shown in the figure). The principal new feature in RCS-4 is the explicit representation of the Value Judgment (VJ) system. VJ modules provide to the RCS-4 control system the type of functions provided to the biological brain by the limbic system. The VJ modules contain processes that compute cost, benefit, and risk of planned actions, and that place value on objects, materials, territory, situations, events, and outcomes. Value state-variables define what goals are important and what objects or regions should be attended to, attacked, defended, assisted, or otherwise acted upon. Value judgments, or evaluation functions, are an essential part of any form of planning or learning. The application of value judgments to intelligent control systems has been addressed by George Pugh. [16] The structure and function of VJ modules are developed more completely developed in Albus (1991). [2] [17]

RCS-4 also uses the term behavior generation (BG) in place of the RCS-3 term task 5 decomposition (TD). The purpose of this change is to emphasize the degree of autonomous decision making. RCS-4 is designed to address highly autonomous applications in unstructured environments where high bandwidth communications are impossible, such as unmanned vehicles operating on the battlefield, deep undersea, or on distant planets. These applications require autonomous value judgments and sophisticated real-time perceptual capabilities. RCS-3 will continue to be used for less demanding applications, such as manufacturing, construction, or telerobotics for near-space, or shallow undersea operations, where environments are more structured and communication bandwidth to a human interface is less restricted. In these applications, value judgments are often represented implicitly in task planning processes, or in human operator input. [2]

Methodology

In the figure, an example of the RCS methodology for designing a control system for autonomous onroad driving under everyday traffic conditions is summarized in six steps. [18]

The six steps of the RCS methodology for knowledge acquisition and representation RCS methodology for knowledge acquisition and representation.jpg
The six steps of the RCS methodology for knowledge acquisition and representation

The result of step 3 is that each organizational unit has for each input command a state-table of ordered production rules, each suitable for execution by an extended finite state automaton (FSA). The sequence of output subcommands required to accomplish the input command is generated by situations (i.e., branching conditions) that cause the FSA to transition from one output subcommand to the next. [18]

Software

Real-Time Control Systems Software Real-Time Control Systems Library 2.png
Real-Time Control Systems Software

Based on the RCS Reference Model Architecture the NIST has developed a Real-time Control System Software Library. This is an archive of free C++, Java and Ada code, scripts, tools, makefiles, and documentation developed to aid programmers of software to be used in real-time control systems, especially those using the Reference Model Architecture for Intelligent Systems Design. [19]

Applications

Related Research Articles

Subsumption architecture is a reactive robotic architecture heavily associated with behavior-based robotics which was very popular in the 1980s and 90s. The term was introduced by Rodney Brooks and colleagues in 1986. Subsumption has been widely influential in autonomous robotics and elsewhere in real-time AI.

<span class="mw-page-title-main">James S. Albus</span>

James Sacra Albus was an American engineer, Senior NIST Fellow and founder and former chief of the Intelligent Systems Division of the Manufacturing Engineering Laboratory at the National Institute of Standards and Technology (NIST).

Soar is a cognitive architecture, originally created by John Laird, Allen Newell, and Paul Rosenbloom at Carnegie Mellon University. It is now maintained and developed by John Laird's research group at the University of Michigan.

<span class="mw-page-title-main">Swarm robotics</span> Coordination of multiple robots as a system

Swarm robotics is an approach to the coordination of multiple robots as a system which consist of large numbers of mostly simple physical robots. ″In a robot swarm, the collective behavior of the robots results from local interactions between the robots and between the robots and the environment in which they act.″ It is supposed that a desired collective behavior emerges from the interactions between the robots and interactions of robots with the environment. This approach emerged on the field of artificial swarm intelligence, as well as the biological studies of insects, ants and other fields in nature, where swarm behaviour occurs.

<span class="mw-page-title-main">Robocrane</span>

The Robocrane is a kind of manipulator resembling a Stewart platform but using an octahedral assembly of cables instead of struts. Like the Stewart platform, the Robocrane has six degrees of freedom.

<span class="mw-page-title-main">Intelligent agent</span> Software agent which acts autonomously

In artificial intelligence, an intelligent agent (IA) is an agent acting in an intelligent manner; It perceives its environment, takes actions autonomously in order to achieve goals, and may improve its performance with learning or acquiring knowledge. An intelligent agent may be simple or complex: A thermostat or other control system is considered an example of an intelligent agent, as is a human being, as is any system that meets the definition, such as a firm, a state, or a biome.

Cognitive Robotics or Cognitive Technology is a subfield of robotics concerned with endowing a robot with intelligent behavior by providing it with a processing architecture that will allow it to learn and reason about how to behave in response to complex goals in a complex world. Cognitive robotics may be considered the engineering branch of embodied cognitive science and embodied embedded cognition, consisting of Robotic Process Automation, Artificial Intelligence, Machine Learning, Deep Learning, Optical Character Recognition, Image Processing, Process Mining, Analytics, Software Development and System Integration.

The following outline is provided as an overview of and topical guide to automation:

<span class="mw-page-title-main">Cerebellar model articulation controller</span>

The cerebellar model arithmetic computer (CMAC) is a type of neural network based on a model of the mammalian cerebellum. It is also known as the cerebellar model articulation controller. It is a type of associative memory.

In artificial intelligence, a procedural reasoning system (PRS) is a framework for constructing real-time reasoning systems that can perform complex tasks in dynamic environments. It is based on the notion of a rational agent or intelligent agent using the belief–desire–intention software model.

A hierarchical control system (HCS) is a form of control system in which a set of devices and governing software is arranged in a hierarchical tree. When the links in the tree are implemented by a computer network, then that hierarchical control system is also a form of networked control system.

<span class="mw-page-title-main">Real-time Control System Software</span>

The Real-time Control System (RCS) is a software system developed by NIST based on the Real-time Control System Reference Model Architecture, that implements a generic Hierarchical control system. The RCS Software Library is an archive of free C++, Java and Ada code, scripts, tools, makefiles, and documentation developed to aid programmers of software to be used in real-time control systems.

EICASLAB is a software suite providing a laboratory for automatic control design and time-series forecasting developed as final output of the European ACODUASIS Project IPS-2001-42068 funded by the European Community within the Innovation Programme. The Project - during its lifetime - aimed at delivering in the robotic field the scientific breakthrough of a new methodology for the automatic control design.

A cyber-physicalsystem (CPS) or intelligent system is a computer system in which a mechanism is controlled or monitored by computer-based algorithms. In cyber-physical systems, physical and software components are deeply intertwined, able to operate on different spatial and temporal scales, exhibit multiple and distinct behavioral modalities, and interact with each other in ways that change with context. CPS involves transdisciplinary approaches, merging theory of cybernetics, mechatronics, design and process science. The process control is often referred to as embedded systems. In embedded systems, the emphasis tends to be more on the computational elements, and less on an intense link between the computational and physical elements. CPS is also similar to the Internet of Things (IoT), sharing the same basic architecture; nevertheless, CPS presents a higher combination and coordination between physical and computational elements.

<span class="mw-page-title-main">Glossary of robotics</span> List of definitions of terms and concepts commonly used in the study of robotics

Robotics is the branch of technology that deals with the design, construction, operation, structural disposition, manufacture and application of robots. Robotics is related to the sciences of electronics, engineering, mechanics, and software.

<span class="mw-page-title-main">4D-RCS Reference Model Architecture</span> Reference model for military unmanned vehicles to identify and organize their software components

The 4D/RCS Reference Model Architecture is a reference model for military unmanned vehicles on how their software components should be identified and organized.

Real-time control system may refer to:

The following outline is provided as an overview of and topical guide to robotics:

LinuxCNC is a free, open-source Linux software system that implements numerical control capability using general purpose computers to control CNC machines. It's mainly intended to run on PC AMD x86-64 systems. Designed by various volunteer developers at linuxcnc.org, it is typically bundled as an ISO file with a modified version of 32-bit Ubuntu Linux which provides the required real-time kernel.

Adaptive collaborative control is the decision-making approach used in hybrid models consisting of finite-state machines with functional models as subcomponents to simulate behavior of systems formed through the partnerships of multiple agents for the execution of tasks and the development of work products. The term “collaborative control” originated from work developed in the late 1990s and early 2000 by Fong, Thorpe, and Baur (1999). It is important to note that according to Fong et al. in order for robots to function in collaborative control, they must be self-reliant, aware, and adaptive. In literature, the adjective “adaptive” is not always shown but is noted in the official sense as it is an important element of collaborative control. The adaptation of traditional applications of control theory in teleoperations sought initially to reduce the sovereignty of “humans as controllers/robots as tools” and had humans and robots working as peers, collaborating to perform tasks and to achieve common goals. Early implementations of adaptive collaborative control centered on vehicle teleoperation. Recent uses of adaptive collaborative control cover training, analysis, and engineering applications in teleoperations between humans and multiple robots, multiple robots collaborating among themselves, unmanned vehicle control, and fault tolerant controller design.

References

  1. 1 2 NIST ISD Research areas overview. Last Updated: 5/12/2003. Accessed Aug 2, 2009.
  2. 1 2 3 4 5 6 7 8 James S. Albus (1992). A Reference Model Architecture for Intelligent Systems Design Archived 2008-09-16 at the Wayback Machine Intelligent Systems Division, Manufacturing Engineering Laboratory, National Institute of Standards and Technology.
  3. Jim Albus, Tony Barbera, Craig Schlenoff (2004). "RCS: An Intelligent Agent Architecture" In: Proc. of 2004 AAAI Conference: Workshop on Intelligent Agent Architectures: Combining the Strengths of Software Engineering & Cognitive Systems, San Jose, CA.
  4. A.J. Barbera, J.S. Albus, M.L. Fitzgerald (1979). "Hierarchical Control of Robots Using Microcomputers". In: Proceedings of the 9th International Symposium on Industrial Robots, Washington, DC, March 1979.
  5. J.S. Albus (1971). "A Theory of Cerebellar Function". In: Mathematical Biosciences, Vol. 10, pgs. 25–61, 1971
  6. J.S. Albus (1975). "A New Approach to Manipulator Control : The Cerebellar Model Articulation Controller (CMAC)". In: Transactions ASME, September 1975.
  7. Nico Tinbergen (1951). The Study of Instinct. Clarendon, Oxford.
  8. Rodney Brooks (1986). "A Robust Layered Control System for a Mobile Robot". In: IEEE Journal of Robotics and Automation. Vol. RA-2, [1], March, 1986.
  9. J.A. Simpson, R.J. Hocken, J.S. Albus (1983). "The Automated Manufacturing Research Facility of the National Bureau of Standards". In: Journal of Manufacturing Systems, Vol. 1, No. 1, 1983.
  10. J.S. Albus, C. McLean, A.J. Barbera, M.L. Fitzgerald (1982). "An Architecture for Real-Time Sensory-Interactive Control of Robots in a Manufacturing Environment". In: 4th IFAC/IFIP Symposium on Information Control Problems in Manufacturing Technology. Gaithersburg, MD, October 1982
  11. E. W. Kent, J.S. Albus (1984). "Servoed World Models as Interfaces Between Robot Control Systems and Sensory Data". In: Robotica, Vol. 2, No.1, January 1984.
  12. H.G. McCain, R.D. Kilmer, S. Szabo, A. Abrishamian (1986). "A Hierarchically Controlled Autonomous Robot for Heavy Payload Military Field Applications". In: Proceedings of the International Conference on Intelligent Autonomous Systems. Amsterdam, the Netherlands, December 8–11, 1986.
  13. J.S. Albus (1988). System Description and Design Architecture for Multiple Autonomous Undersea Vehicles. National Institute of Standards and Technology, Technical Report 37 1251, Gaithersburg, MD, September 1988.
  14. J.S. Albus, H.G. McCain, R. Lumia (1989). NASA/NBS Standard Reference Model for Telerobot Control System Architecture (NASREM). National Institute of Standards and Technology, Technical Report 1235, Gaithersburg, MD, April 1989.
  15. George N. Saridis (1985). Foundations of the Theory of Intelligent Controls. IEEE Workshop on Intelligent Control, 1985
  16. G.E. Pugh, G.L. Lucas, (1980). Applications of Value-Driven Decision Theory to the Control and Coordination of Advanced Tactical Air Control Systems. Decision-Science Applications, Inc., Report No. 218, April 1980
  17. J.S. Albus (1991). "Outline for a Theory of Intelligence". In: IEEE Trans. on Systems, Man, and Cybernetics. Vol. 21, No. 3, May/June 1991.
  18. 1 2 3 4 5 6 7 8 James S. Albus & Anthony J. Barbera (2005). RCS: A Cognitive Architecture for Intelligent Multi-Agent Systems. National Institute of Standards and Technology, Gaithersburg, Maryland 20899
  19. Real-Time Control Systems Library –– Software and Documentation at nist.gov. Accessed Aug 4, 2009.