WO1999027427A1 - Virtual robot - Google Patents
Virtual robot Download PDFInfo
- Publication number
- WO1999027427A1 WO1999027427A1 PCT/EP1998/007567 EP9807567W WO9927427A1 WO 1999027427 A1 WO1999027427 A1 WO 1999027427A1 EP 9807567 W EP9807567 W EP 9807567W WO 9927427 A1 WO9927427 A1 WO 9927427A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- controller
- abstract
- translator
- virtual robot
- model
- Prior art date
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/1605—Simulation of manipulator lay-out, design, modelling of manipulator
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/33—Director till display
- G05B2219/33053—Modular hardware, software, easy modification, expansion, generic, oop
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39014—Match virtual world with real world
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40131—Virtual reality control, programming of manipulator
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40312—OOP object oriented programming for simulation
Definitions
- the invention relates to a virtual robot, i.e. a method and a device for controlling robots and automatic machines, such as experiments in a laboratory or automated processes in industrial production.
- the invention is therefore based on the object of developing a virtual robot for controlling robots or automatic machines which can be easily adapted to a wide variety of robots.
- a virtual robot according to the invention for controlling a real machine preferably comprises a software IC “controller” for controlling the abstract machine, an IC “model” for describing the abstract world of the machine to be actually controlled, an IC “translator” for generating and using the language of the abstract machine, an IC “ro ⁇ bot” for implementing actions of an abstract Robo ⁇ ters that depend on events of the controller, IC “robot Device” to implement actions of a real robot which depend on events of the controller, and an IC “Swatch” for outputting the current internal state of the real machine to a display unit or for simulating real actions.
- IC “controller” for controlling the abstract machine
- an IC “model” for describing the abstract world of the machine to be actually controlled
- an IC “translator” for generating and using the language of the abstract machine
- an IC “ro ⁇ bot” for implementing actions of an abstract Robo ⁇ ters that depend on events of the controller
- IC “robot Device” to
- the software ICs "Swatch” and “Robotdevice” can be derived from an abstract base class “View”, in which the interfaces of the ICs “Swatch” and “Robotdevice” are defined. Furthermore, the software ICs “View” and “Model” can be given a common interface by means of excitation, which enables simplified communication with the "controller”.
- the IC “Translator” consist of the Mini class “Language”, which comprises the two object classes “Grammar” and “Vocabulary”, the class “Grammar” defining the rules for actions and methods of the abstract machine, while the class “Vocabulary” contains the necessary terms.
- the "Model” class is such that it inherits its interface to its subclasses, which include an abstract model of the world of a robot that is actually used.
- the device control includes logging al ⁇ ler "Views”, loading the program parameters in the IC “Mo ⁇ del” and the setting up of the process in the IC world “Model”.
- the limits of the process world are checked, and if the world limits are not reached, the pending process step is carried out while reaching the World borders of the virtual robot is ended and thus the control of the real robot is finished.
- This object-oriented design of the software is carried out in four steps:
- a particular effect when using such software ICs is that when a software IC is improved, all software which contains this software IC is also improved.
- the easy interchangeability of software ICs is achieved by distinct software units exist that communicate exclusively via exactly defi ⁇ ned interfaces together.
- the code within an IC is completely encapsulated, ie all internal elements of the ongoing data processing to the product can of au ⁇ , ie by other ICs, inaccessible.
- FIG. 11 shows a detailed event flow diagram of the virtual robot, the focus of detail being on the IC "translator”.
- the first step in object-oriented programming is a description of the problem for the control software.
- an external process pushes the Ansteue- control software, and gives her the required runtime of the Pro ⁇ program parameters, such as information on the actions being performed, so in case of software for controlling a vacuum chamber, the switch-on of the vacuum pump, the numbers of the valves, Time of opening, etc.
- This information must be translated into program parameters.
- This is handled by a parser, adds ⁇ ver of a corresponding grammar and a vocabulary ⁇ .
- the required functions can be understood under the grammar and the necessary data under the vocabulary. that will.
- the control of the robot to be controlled is carried out by successive commands which have to be given to it at certain times. It is therefore necessary in clock with which the necessary synchronization can take place. Status reports on the current execution status are also required, ie an output unit for a screen is necessary.
- a communication interface is also required to forward current commands from the control software to the robot.
- the relevant objects are abstracted into classes of appropriate granularity.
- the individual machines or robots to be controlled are unsuitable objects for the general design, since they are a direct symbol for the dependency.
- the IC "controller” contains an interface to the timer of the operating system. The data that define actions for the IC "controller” directly affect its abstract world.
- the next step is to define the interfaces and inheritance hierarchies between the classes.
- the "Controller”, "Model” and “View” objects are decoupled, but must be synchronized. Changes of an object may affect other objects without the geän ⁇ -made object to know the other exactly. This is the De ⁇ chorus of "Observer pattern”. Therefore, the design of these three objects is based on the "Observer pattern”.
- the "Translator” object is only used during the program ⁇ startes. It is not necessary that this object exists as long as the "controller”. A simple association is thus possible in order to establish a connection for the evaluation of the information transmitted.
- the "Language” object shown in FIG. 1 combines the elements “Grammar” and "Vocabulary".
- Prinzipi ⁇ ell could formulate the grammar of a language in the form of methods, the vocabulary, however, regarded as their data. This would be the classic definition of a class: summarizing data with the operations directed at it. However, you would be the one ⁇ impose limitation in this design, both elements can not be independent vari ⁇ ming. It would be more cumbersome to apply different grammars to the same vocabulary if both elements were united in one and the same class.
- Fig. 2 shows the connection between the "Translator” object and its “Language” object.
- the problem shows that as long as the "Translator” object exists, it needs its “Language” object. Therefore associations are excluded as a connection.
- 00D aggregations are considered elements of synthesis: "The object consists of ", or "Object A uses object B throughout its existence for task X ".
- the "translator” class is combined in a singular aggregation with the "Language” class, as shown in FIG. 2.
- Fig. 3 shows the nesting of the "view” objects.
- the “controller” implements the algorithms for controlling the various machines (eg cyclical ventilation in a vacuum chamber) and is thus an example of a “strategy pattern”.
- the class "View” is an abstract base class' in which the interface of the concrete classes derived from it is defined. This design ensures the consistency of the interface for all views.
- “Swatch” is the class whose copy for the graphical output of the current is responsible internal state on the screen.
- the "robot Device” class encapsulates the respective interface Subject Author ⁇ fenden hardware to be controlled robot.
- This class is an adapter class that resolves the hardware dependency via an adapted class.
- the adapted classes receive the names of the devices to be controlled.
- the object adapter for the described "view” objects uses the object composition shown in FIG. 4. Here, the Whether ⁇ If ject to "VC-Device" on behalf of all other ⁇ controlled robot.
- the "controller” object shown in FIG. 5 is the center of the application in the present software design. It registers objects dependent on it in order to inform it in the future of any changes that may occur. Here is unmarried ⁇ Lich the signal that something has changed, sent.
- the associated class has an interface with which the dependent objects can be synchronized with the new state via queries. In the present case, these are the dependent objects "CSR”, “PCR” and Vacuum Chamber ", which stand for three different robot types in the underlying application.
- the dependent objects are responsible for obtaining the information relevant to them.
- the "controller” object utilizes the data that have been available over the Whether ⁇ ject "Translator” and a gegebe ⁇ executes nes protocol.
- the "controller” has access to the Sy ⁇ stemuhr of the computer and receives from the latter via an interface, a measure of time.
- the "controller” class is abstract and defines an interface that is inherited from all derived classes. The classes derived from it can be easily exchanged through the common interface. The different methods for each robot are thus solved by this design, which is based on an "observer huster", as shown in FIG. 5.
- the "model” has the same interface as a “view”. You could now derive the "model” from the abstract base class "View” to inherit this interface, but this would not be a clean representation of reality.
- PCR is a pipetting robot
- CRS is a gripping robot
- Vac or VacuumChamber is an automatic vacuum chamber.
- FIGS. 9-11 The dynamic, externally visible behavior of the system and its objects is graphically documented in FIGS. 9-11. Internal actions, which are determined by algorithms, are not taken into account unless they manifest themselves externally. All events are first identified and only then assigned to the objects. In this way, the dynamic model provides additional control as to whether the design presented in the object model is sustainable. State diagrams are thus created for each object, as is exemplarily carried out in FIGS. 9-11 with a focus on the "translator".
- the "controller” receives a line from the “controller” which should contain information for the process to be controlled.
- the "Translator” checks the grammar and vocabulary of this line and accepts it as a command line.
- the "Translator” translates the content of the line into program-relevant parameters using the grammar and vocabulary available to it.
- the translator returns these program parameters to the "controller”.
- the "controller” receives a line from the “controller” which should contain information for the process to be controlled.
- the "Translator” checks the grammar and vocabulary of this line and does not accept them as a command line because the grammar is incorrect.
- the "Translator” informs the "Controller” of an incorrect command line and terminates.
- the "controller” receives a line from the “controller” which should contain information for the process to be controlled.
- the "Translator” determines that the transferred line is invalid.
- the "Translator” informs the controller that it has received an incorrect line of information and aborts.
- Fig. 11 finally, is a self-explanatory whilflußplan detail with focus "Translator”, that the relationships shown in FIGS. 9 and 10 in the Bacpro ⁇ program embeds.
Abstract
Description
Claims
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP98962389A EP0954772A1 (en) | 1997-11-24 | 1998-11-24 | Virtual robot |
JP52765999A JP2002511969A (en) | 1997-11-24 | 1998-11-24 | Virtual robot |
CA002278582A CA2278582A1 (en) | 1997-11-24 | 1998-11-24 | Virtual robot |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE1997151955 DE19751955A1 (en) | 1997-11-24 | 1997-11-24 | Virtual robot |
DE19751955.5 | 1997-11-24 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO1999027427A1 true WO1999027427A1 (en) | 1999-06-03 |
Family
ID=7849623
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/EP1998/007567 WO1999027427A1 (en) | 1997-11-24 | 1998-11-24 | Virtual robot |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP0954772A1 (en) |
JP (1) | JP2002511969A (en) |
CA (1) | CA2278582A1 (en) |
DE (1) | DE19751955A1 (en) |
WO (1) | WO1999027427A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003102854A2 (en) * | 2002-06-04 | 2003-12-11 | Applera Corporation | System and method for open control and monitoring of biological instruments |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19949558A1 (en) * | 1999-10-14 | 2001-04-19 | Heidenhain Gmbh Dr Johannes | Control program for a numerical machine tool with a reusable software structure |
DE102004031485B4 (en) | 2004-06-30 | 2015-07-30 | Kuka Roboter Gmbh | Method and device for controlling the handling device |
DE102008018962B4 (en) * | 2008-04-16 | 2015-08-20 | Kuka Roboter Gmbh | Method for controlling a robot |
DE102010012598A1 (en) * | 2010-02-26 | 2011-09-01 | Kuka Laboratories Gmbh | Process module library and programming environment for programming a manipulator process |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4914567A (en) * | 1987-11-02 | 1990-04-03 | Savoir | Design system using visual language |
US5247650A (en) * | 1989-08-30 | 1993-09-21 | Industrial Technology Institute | System for combining originally software incompatible control, kinematic, and discrete event simulation systems into a single integrated simulation system |
EP0596205A2 (en) * | 1992-11-03 | 1994-05-11 | Hewlett-Packard Company | Bench supervisor system |
US5423023A (en) * | 1990-06-25 | 1995-06-06 | Prime Computer, Inc. | Method and apparatus for providing a user configurable system which integrates and manages a plurality of different task and software tools |
US5528503A (en) * | 1993-04-30 | 1996-06-18 | Texas Instruments Incoporated | Integrated automation development system and method |
US5586323A (en) * | 1991-04-23 | 1996-12-17 | Hitachi, Ltd. | Compilier system using an intermediate abstract form and machine-specific installers |
-
1997
- 1997-11-24 DE DE1997151955 patent/DE19751955A1/en not_active Withdrawn
-
1998
- 1998-11-24 CA CA002278582A patent/CA2278582A1/en not_active Abandoned
- 1998-11-24 EP EP98962389A patent/EP0954772A1/en not_active Withdrawn
- 1998-11-24 WO PCT/EP1998/007567 patent/WO1999027427A1/en not_active Application Discontinuation
- 1998-11-24 JP JP52765999A patent/JP2002511969A/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4914567A (en) * | 1987-11-02 | 1990-04-03 | Savoir | Design system using visual language |
US5247650A (en) * | 1989-08-30 | 1993-09-21 | Industrial Technology Institute | System for combining originally software incompatible control, kinematic, and discrete event simulation systems into a single integrated simulation system |
US5423023A (en) * | 1990-06-25 | 1995-06-06 | Prime Computer, Inc. | Method and apparatus for providing a user configurable system which integrates and manages a plurality of different task and software tools |
US5586323A (en) * | 1991-04-23 | 1996-12-17 | Hitachi, Ltd. | Compilier system using an intermediate abstract form and machine-specific installers |
EP0596205A2 (en) * | 1992-11-03 | 1994-05-11 | Hewlett-Packard Company | Bench supervisor system |
US5528503A (en) * | 1993-04-30 | 1996-06-18 | Texas Instruments Incoporated | Integrated automation development system and method |
Non-Patent Citations (1)
Title |
---|
J. MICHAEL GRIESMEYER ET AL.: "Process Subsystem Architecture for Virtual Manufacturing Validation", PROCEEDINGS OF THE 1996 IEEE INTERNATIONAL CONFERENCE ON ROBOTICS AND AUTOMATION, April 1996 (1996-04-01), Minneapolis, Minnesota, US, pages 2371 - 2376, XP000772562 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003102854A2 (en) * | 2002-06-04 | 2003-12-11 | Applera Corporation | System and method for open control and monitoring of biological instruments |
WO2003102854A3 (en) * | 2002-06-04 | 2004-07-22 | Applera Corp | System and method for open control and monitoring of biological instruments |
US6909974B2 (en) | 2002-06-04 | 2005-06-21 | Applera Corporation | System and method for discovery of biological instruments |
US7379823B2 (en) | 2002-06-04 | 2008-05-27 | Applera Corporation | System and method for discovery of biological instruments |
US7379821B2 (en) | 2002-06-04 | 2008-05-27 | Applera Corporation | System and method for open control and monitoring of biological instruments |
US7491367B2 (en) | 2002-06-04 | 2009-02-17 | Applera Corporation | System and method for providing a standardized state interface for instrumentation |
US7680605B2 (en) | 2002-06-04 | 2010-03-16 | Applied Biosystems, Llc | System and method for discovery of biological instruments |
Also Published As
Publication number | Publication date |
---|---|
JP2002511969A (en) | 2002-04-16 |
EP0954772A1 (en) | 1999-11-10 |
CA2278582A1 (en) | 1999-06-03 |
DE19751955A1 (en) | 1999-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1385071B1 (en) | Method for exchanging data between machine controllers, specially robot controllers | |
DE19781804B4 (en) | Device for simulating a real-time process control | |
EP1131686B1 (en) | Method for controlling technical processes | |
DE10147115B4 (en) | Use of remote soft phases in a process control system | |
DE102005026040A1 (en) | Parameterization of a simulation working model | |
EP1638028A2 (en) | Computer aided generation and change management for user interfaces | |
EP1522910B1 (en) | Method and system for configuring a control system | |
EP3273315B1 (en) | Platform for further use of existing software for controlling industrial field devices | |
WO1999027427A1 (en) | Virtual robot | |
DE10324594A1 (en) | Method for providing improved simulation capabilities of a dynamic system outside of the original modeling environment | |
DE19615683A1 (en) | Method and control device for a graphical control of processes in a network management system | |
EP1944664B1 (en) | Troubleshooting method for an automation controller | |
EP1862901A1 (en) | Input of program commands in imperative programming languages | |
DE10215653A1 (en) | Program code automatic generation method in which program code sections are generated using input and output controls or masks so that flexible engineering workflows can be gernated | |
EP2299341A1 (en) | Editing device and method for configuring parameters of an industrial automation arrangement | |
EP1655663A1 (en) | Dataflow modelling in engineering systems | |
EP1502164B1 (en) | Method FOR SUPPORTING PLANNING AND PRODUCING AN AUTOMATED TECHNICAL PROCESS | |
EP1051671B1 (en) | System for transmitting data or information | |
EP1936452A1 (en) | Method and device for dynamic processing of objects of a simulation model | |
DE102005002362A1 (en) | Program system configuration method for medical image display, involves setting up logical communications between interfaces of program components and interfaces of source code event handler to process generated events by handler | |
DE102005009529A1 (en) | Method for data processing with integration of two frameworks via a generic block to communicate between the frameworks | |
DE10233971A1 (en) | Software generating method for a software-controlled device uses a software model implemented as data in a computer to derive software program code automatically from the model | |
EP2093663A1 (en) | Engineering system for developing a project and method | |
DE10125384B4 (en) | Device and method for commissioning and diagnosis of control systems | |
DE102004023634B4 (en) | Method for checking the completeness and consistency of an information library |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): CA JP US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE |
|
ENP | Entry into the national phase |
Ref document number: 2278582 Country of ref document: CA Ref country code: CA Ref document number: 2278582 Kind code of ref document: A Format of ref document f/p: F |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1998962389 Country of ref document: EP |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
WWP | Wipo information: published in national office |
Ref document number: 1998962389 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 09355368 Country of ref document: US |
|
WWW | Wipo information: withdrawn in national office |
Ref document number: 1998962389 Country of ref document: EP |