IE920109A1 - A method of carrying out multiple processes - Google Patents
A method of carrying out multiple processesInfo
- Publication number
- IE920109A1 IE920109A1 IE920109A IE920109A IE920109A1 IE 920109 A1 IE920109 A1 IE 920109A1 IE 920109 A IE920109 A IE 920109A IE 920109 A IE920109 A IE 920109A IE 920109 A1 IE920109 A1 IE 920109A1
- Authority
- IE
- Ireland
- Prior art keywords
- event
- record
- processes
- succeeding
- output device
- Prior art date
Links
Landscapes
- Debugging And Monitoring (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
method is disclosed for the carrying out of a large number of processes, each of which may be quite complex. Initially, a record is created for each process , , and a record is created for each event which may possibly be implemented for the processes. Data received at an input device is automatically written to the relevant process record and data inputting takes place for a pre-set time period. Each process is carried out by the output device implementing a 1# pre-set initial event for the process (22) and tnen selecting the next event depending on conditions governing selection of a succeeding event (27). The next event may, therefore, be a an override succeeding event, a logical succeeding event, or an alternative event, depending on both user requirements and on progress of the process as indicated by received values for variable parameters, fixed sequence is an addition condition. Thus, complex processes may be dealt with without the need for the large processing delays associated with hierarchial processing
Description
The invention relates to a processing method, and more particularly to the carrying out of a large number of processes for which data is received at an input device and process events are implemented by an output device, the processes being controlled by an electronic control unit. An example of such processes would be in a system having a large number of robotic machines in a production plant and each process would relate to movement of a machine for carrying out a particular action such as moving a piece of inventory from one position to another. In this case, position data would be received and would be monitored and processed by an electronic control unit which would transmit signals to direct operation of the moving part of the robot, which is the output device. In another example, each process may relate to a particular law suit, in which case the received data would relate to progress of the law suit such as decisions which have been made, and the electronic control unit would generate instructions for a printer to print a particular document to implement an event to process the law suit.
British Patent Specification No. GB 2194655B (Rolls-Royce) discloses a processing apparatus which may be used for processing data from an engine test machine in which the output device is a printer for recordal of the test results. The processing involved is quite complex and is carried out in real time, however, this specification does not disclose a method by which many different complex processes may be carried out at the same time. United States Patent
Specification No. 4975842 (Darrow) discloses a process for logging patient data in real time and monitoring the data to generate messages for a user at a display output device. Again, while the process may be complex there is no disclosure of a method for carrying out a plurality of different processes at the one time. European Patent Specification No. 52757B (IBM) discloses a method for monitoring events at an input or output device and generating messages for a display output device indicating the events. There is little versatility in the manner in which the processes are carried out and a method for dealing with a large number of processes is not disclosed.
The invention is directed towards providing a processing method which may be used for carrying out a large number of processes in response to data received at an input device. It is an object that the processes may be carried out in a versatile manner so that they may be changed interactively if required and that the processes be carried out efficiently and with little risk of incorrect events being implemented for a process.
According to the invention, there is provided a processing method carried out by an apparatus comprising an input device, an electronic control unit, an output device for implementing events of processes, a storage device and a memory circuit, the method comprising the steps of:storing in a storage device a set of process records, each record including values for fixed parameters of the associated process, these values including a unique process identifier;
storing in a storage device a set of event records, each record including :instructions for an output device to implement the associated event;
a unique event identifier;
the identifier of an event pre-set to logically succeed the associated event;
a required time delay after the event; and any entry conditions governing selection of the associated event or of alternative events;
storing for each process record the identifier of an event to be initially implemented by the output device for the associated process;
receiving at the input device values for variable 5 parameters of processes and automatically recording them in the associated process records;
writing data from the record of the initial event to the relevant process record;
continuously monitoring real time;
carrying out the processes by automatically loading each process record in turn into the memory circuit, and for each process record:directing the output device to implement the initial event according to the instructions written from the initial event record to the process record;
repeatedly comparing the time delay after the initial event with the real time, and when the time delay has elapsed:writing the record of a succeeding event into the memory circuit;
comparing the variable process parameter values with any entry conditions of the succeeding event record and in response, selecting that event or an alternative event;
writing data from the record of the selected event into the process record;
directing the output device to implement the selected event; and comparing the time delay retrieved from the record of the selected event with real time and repeating the steps involved in directing the output device to implement the selected event for each subsequent event of the process when the time delay has expired.
Preferably, the carrying out of each process is initiated at pre-set regular intervals of time, other periods being used exclusively for receiving variable parameter values.
In one embodiment, the method comprises the additional steps of : 20 storing for a process record an identifier for an override succeeding event;
when the time delay after an event has elapsed checking if there is an override succeeding event for the process;
writing the record of the override succeeding event, if one exists, into the memory circuit; and writing the record of the logical succeeding event, if an override succeeding event does not exist, into the memory circuit.
The invention will be more clearly understood from the following description of some preferred embodiments thereof, given by way of example only with reference to the accompanying drawings in which:Fig. 1 is a flow chart showing setting up of a processing apparatus and the inputting of data into the apparatus for the carrying out of processes;
Fig. 2 is a flow chart illustrating a method of carrying out the processes; and
Fig. 3 illustrates in detail how a process event is selected for implementation.
- 8 Referring to the drawings, and initially to Fig. 1, there is illustrated a method 1 for setting up of an apparatus for carrying out a large number of processes. The apparatus comprises an input device which may be a data logger, a keyboard, or a position sensor, depending on the nature of the processes to be carried out. The apparatus also includes an electronic control unit which is microprocessor-based and in most cases would be the CPU of a minicomputer. The output device may be a video screen and/or a printer, a trace recorder or any other output device such as the moving part of a robotic machine or CNC machine, again depending on the nature of the processes to be carried out. The following description describes the manner in which the processes are carried out in which activities of a process are referred to as events and these are implemented by the output device. The nature of these events (whether they be printing of a document, movement of a robotic arm, movement of a CNC machine tool, for example) is not important to the invention.
The method 1 involves in step 2 creating a record for each process to be carried out by the apparatus. As each record is created, values for fixed parameters are initially inputted to it. These must include a unique process identifier so that the process may be identified. In the example in which the process is for a law suit, the fixed parameter values would include the names and addresses of the parties, location of the Courts and other data relating to the case. In step 3 of the method 1, a record is created for each event which could possibly be required to be implemented by the output device of the apparatus. Data which is automatically written into the record when it is created include:10 (a) An identifier for an event which would in normal circumstances logically succeed that event, i.e. be carried out subsequent to the event. For example, if the event is for movement of a can to a filling machine, the logical succeeding event would be filling of the can.
(b) Identifiers for events which may alternatively succeed the event, according to the entry conditions. In this example, an alternative event would be to re-attempt to move the can to the filling position.
(c) A delay time between implementation of the event associated with the record and the next event. In the above example, there may be a time delay before filling takes place.
(d) Entry conditions for the event which are used during the process to determine whether or not that event should be selected. In the above example, entry conditions would be used to prevent the event of can filling taking place if the can is not at the filling position.
(e) Instructions which may be used by the control unit of the apparatus to direct operation of the output device to implement the event associated with a record. In this example, the instructions would be for control of motors for a robotic arm to move a can to the filling position or for solenoids controlling filling of the can. In another example, printing instructions may be included for generation of a particular document for a legal matter.
Still referring to Fig. 1, in step 11 a user inputs to the apparatus the identifier of an initial event to be implemented by the output device of the apparatus for each process. The identifier is inputted to each relevant process record or to portion of the storage device associated with the record. By doing this, the apparatus is instructed where to begin each process. It is also possible that this data be inputted while the process record is being created.
Steps 12 to 14 describe the method of receiving or logging of data at the input device in real time. In step 12, a value for a variable parameter of a process is received. This may be position data for a CNC machine tool or alternatively data relating to progress of a law suit. The apparatus
- 11 automatically transmits this data to the relevant process record in step 13. On an on-going basis, the processor monitors real time to see if a pre-set allowed time for inputting data has expired. This pre-set time may vary enormously depending on the nature of the processes being carried out. If the process is for control of a machine tool, then the time would be very short as it is important that the apparatus reacts quickly. However, if the processes relate to a law suit, the time may be between 8a.m. and 6p.m. As indicated by the decision step 14, values for variable parameters are received on an on-going basis during the allowed time. When this elapses, in step 15 the processes are initiated. Any data received after this is stored in a buffer memory for downloading later.
Referring now to Fig. 2, there is illustrated a portion of the overall method 1, for carrying out the processes. In step 21, a process record is loaded into the memory circuit of the apparatus. In step 22 the control unit retrieves data from the initial event record, writes this into the process record, and uses the instructions included in that data to direct the output device to implement the event. In step 23, the control unit continuously monitors real time and compares this with the time delay of the initial event record. If the time delay has not elapsed, then the next process record is retrieved and steps 21, 22 and 23 are repeated. For example, in a law suit if the initial event involves writing a letter to a party which states that legal proceedings will ensue unless there is a response within 7 days, the time delay would be 7 days and no action would be taken in the meantime. When the time delay has elapsed, in step 24 the control unit retrieves the record for the succeeding event into the memory circuit. As described in more detail below, this may be the logical succeeding event (the identifier of which has been written to the process record) or an override succeeding event, the identifier of which may be stored in the process record or creation or elsewhere where it may be associated with the process record.
In step 25 the control unit checks if there are entry conditions for the succeeding event, and if so compares the parameter values which have been received for the process with the entry conditions for the succeeding event (the record of which has been loaded into the memory circuit) in step 26. Depending on these conditionsr the control unit in step 27 selects the event to be implemented subsequently. This event may be the logical succeeding event or it may be an alternative event which is implemented contingent on the conditions arising. For example, if the can is not at the filling position, the event of filling the can is not implemented and an alternative event of re-attempting to move the can to the filling position is implemented. For the selected event, steps 26 to 30 are repeated as described above.
- 13 In step 28 the control unit writes the data from the selected event into the process record and in step 29 directs the output device to implement the event using the instructions of the event record. In step 30 the control unit checks the data written into the process record for presence of another succeeding event and if so, returns to step 24. If there are no further events, the control unit checks the storage device in step 31 to see if there is another process record, and if so the next process record is loaded in step 21. When there
are no further process records, all processes are step 32. ended in Referring now to Fig. 3, the manner in which an event is selected is illustrated in more detail in the form of possible
routes taken by the control unit in carrying out steps 24, 25,
26 and 27. In Fig. 3, events 40, 41, and 42 are shown, in which event 40 is nominated in this example as the logical succeeding event for the event which has next previously been implemented. The event 40 has two entry conditions 43 and 44, the event 41 has one entry condition 45 and the event 42 has no entry conditions. The path of the control unit for the events when loaded in the memory circuit are identified as 40(a), 41(a), and 42(a) respectively.
Following the decision step 23 of Fig. 2, if the delay has elapsed, the control unit checks in step 46 for presence of a stored override succeeding event identifier. This may be in the process record itself, or in a portion of the storage device associated with the process. In the latter case, there may for example be an override succeeding event identifier stored in a master record for a group of related processes.
If there is an override succeeding event, the record for this is written into the memory circuit in step 24, and if not, that for the logical succeeding event is written into the memory circuit. The routes 40(a), 41(a), and 42(a) indicate this step. If there is an override succeeding event, and this is event 42, then there are no entry conditions and this is selected. If the override succeeding event is even 41, the entry condition 4 2 must be satisfied before the event is selected. If not satisfied, event 42 is selected. If there is no override succeeding event, the entry condition 43 if the legal succeeding event 40 is compared with parameter values, and if satisfied, the control nnit checks if entry condition 44 is satisfied. If this is in turn satisfied, the event 40 is selected. If the entry conditions 43 and 44 are not satisfied, alternative routes to 42(a) or 41(a) respectively, are followed.
The example illustrated in Fig. 3 is quite simple and in practice the selection of events would include a much wider choice of events. However, irrespective of the number of possible events the basic control unit method is quite straightforward and includes relatively little processing power.
It will also be appreciated that the invention provides for the carrying out of a large number of processes in an extremely versatile manner. Depending on the setting of the time period for inputting of data, the processes may be carried out interleaved with receiving of data, or may be carried out in a batch processing mode overnight, depending entirely on the nature of the processes. Further, the manner in which each process is carried out may be either pre-set in a fixed manner by, say, a user or may be carried out conditional on the values for process parameters. The manner in which the logical succeeding event record is automatically loaded into the memory circuit results in very efficient processing of the apparatus because in most cases this event is the one which will be selected and there is relatively little time required for writing of the data in the event record from the memory circuit into the process record. It has been found that the combination of features of the invention which involve creating of process and event records, automatic loading of a succeeding event record into the memory circuit, and using entry conditions stored in the event records, leads to extremely efficient and reliable processing with little chance of errors occurring. Heretofore, the approach to carrying out such complex processing where there is a large number of processes would have involved using hierarchial decision-making processes which generally require a large amount of processing time.
The invention is not limited to the embodiments hereinbefore described, but may be varied in both construction and detail.
Claims (4)
1. A processing method carried out by an apparatus comprising an input device, an electronic control unit, an output device for implementing events of processes, a
2. 5 storage device and a memory circuit, the method comprising the steps of :storing in a storage device a set of process records, each record including values for fixed parameters of the associated process, these values including a unique
3. 10 process identifier; storing in a storage device a set of event records, each record including:instructions for an output device to implement the associated event;
4. 15 a unique event identifier; the identifier of an event pre-set to logically succeed the associated event; a required time delay after the event; and
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IE920109A IE70077B1 (en) | 1992-01-15 | 1992-01-15 | A method of carrying out multiple processes |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IE920109A IE70077B1 (en) | 1992-01-15 | 1992-01-15 | A method of carrying out multiple processes |
Publications (2)
Publication Number | Publication Date |
---|---|
IE920109A1 true IE920109A1 (en) | 1993-07-28 |
IE70077B1 IE70077B1 (en) | 1996-10-30 |
Family
ID=11039527
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
IE920109A IE70077B1 (en) | 1992-01-15 | 1992-01-15 | A method of carrying out multiple processes |
Country Status (1)
Country | Link |
---|---|
IE (1) | IE70077B1 (en) |
-
1992
- 1992-01-15 IE IE920109A patent/IE70077B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
IE70077B1 (en) | 1996-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US3882305A (en) | Diagnostic communication system for computer controlled machine tools | |
EP0362386B1 (en) | Expert system for a machine tool equipped with an nc apparatus | |
CA1305238C (en) | Control system with diagnostic logic | |
US5323325A (en) | Method of displaying an operation history of a machine | |
CA1277433C (en) | Processing pulse control circuit for use in device performing signature analysis of digital circuits | |
IE920109A1 (en) | A method of carrying out multiple processes | |
US5291590A (en) | Method of detecting and processing abnormal message output from computer system and detecting and processing apparatus therefor | |
GB2156112A (en) | Data processing system and method | |
GB2263796A (en) | Handling events in multiple processes. | |
EP0425674A1 (en) | Automatic tool selecting system | |
EP0080376B1 (en) | Method and apparatus for diagnosing a servomotor control circuit | |
US5283857A (en) | Expert system including arrangement for acquiring redesign knowledge | |
JP3221194B2 (en) | Operational waveform diagnostic device for industrial robots | |
EP0172797B1 (en) | Transitional programmable controller | |
JPH05177503A (en) | Parameter setting confirmation device in nc machine tool | |
Rupe et al. | Performability of systems based on renewal process models | |
JPS61161507A (en) | Direct input/output system of programmable controller | |
JP3309434B2 (en) | PC programming device | |
US5075843A (en) | Method and apparatus for processing graphical information | |
EP0353307B1 (en) | System for controlling pc apparatus | |
JPH0280186A (en) | Method for controlling laser beam machine | |
GB2207777A (en) | Numerical control apparatus for machining a closed area | |
JP3018732B2 (en) | Programmable controller | |
JPH04178842A (en) | Program running locus acquiring system | |
JPH0228836A (en) | Load system for numerical value control device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MK9A | Patent expired |