IE920109A1 - A method of carrying out multiple processes - Google Patents

A method of carrying out multiple processes

Info

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
Application number
IE920109A
Other versions
IE70077B1 (en
Inventor
Peter Van Belle
Original Assignee
Marbea Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Marbea Ltd filed Critical Marbea Ltd
Priority to IE920109A priority Critical patent/IE70077B1/en
Publication of IE920109A1 publication Critical patent/IE920109A1/en
Publication of IE70077B1 publication Critical patent/IE70077B1/en

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
IE920109A 1992-01-15 1992-01-15 A method of carrying out multiple processes IE70077B1 (en)

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)

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