WO0065415A2

Process control system with integrated safety control system

Abstract

A process control system receiving input signals from a controlled apparatus and using the input signals in determining at least one output signal modifying the characteristics of at least one respective control device in the controlled apparatus where the source code for the general control of the apparatus and the source code for the safety shutdown system of the apparatus are compiled to control code in a unified compilation.

WO0065415A2, drawing sheet 1
Sheet 1 of 98

Term

No projected expiry on record.

  1. Priority and filed
  2. Published
  3. Today

32 claims: 28 independent, 4 dependent

  1. 1
    WE CLAIM:1. A process control system receiving input signals from a controlled apparatus and using the input signals in determining at least one output signal modifying the characteristics of at least one respective control device in the controlled apparatus characterized in that source code for general control of the apparatus and source code for safety shutdown of the apparatus are compiled to control code for said control system in a unified compilation.
  2. 2
    A process control system receiving input signals from manufacturing equipment and executing machine operation code determining at least one output signal adjusting at least one respective control device in said manufacturing equipment, characterized by:an application program instance having at least one safety integrity programming source code section and at least one general control source code section;and a compiling translator having a safety integrity programming rule set for converting said application program instance into said machine operation code.
  3. 3
    A process control system receiving input signals from manufacturing equipment and executing machine operation code determining at least one output signal adjusting at least one respective control device in said manufacturing equipment, characterized by:first machine operation code compiled from safety integrity programming source code;and second machine operation code compiled from general control source code;wherein said first machine operation code and said second machine operation code execute on the same control computer in said process control system.
  4. 4
    A control computer receiving input signals from manufacturing equipment and executing machine operation code determining at least one output signal adjusting at least one respective control device in said manufacturing equipment, characterized by:means for evaluating real-time competence of said control computer to execute said machine operation code in essentially full accordance with said control computer as designed;and means for halting execution of a real-time cycle portion of said machine operation code when said real-time competence is unacceptable.
  5. 5
    A process control system receiving input signals from manufacturing equipment and executing machine operation code on a control computer determining at least one output signal adjusting at least one respective control device in said manufacturing equipment, characterized by:means for defining a compiler signature data value characterizing a non-variant portion of said machine operation code;means for loading said compiler signature data value into said control computer;means for defining a real-time signature data value characterizing said machine operation code in said program memory section;means for comparing said real-time signature data value to said compiling translator signature data value;and means for halting real-time execution of said machine operation code when said compiling translator signature data value and said real-time signature data value are different in value.
  6. 6
    A process control system receiving input signals from manufacturing equipment and executing machine operation code to use said input signals in determining at least one output signal modifying the characteristics of at least one respective control device in said manufacturing equipment, characterized by:a compiling translator for converting an application program instance into machine operation code;a control computer having a memory for holding said machine operation code wherein said control computer generates said output signal;a safety integrity programming rule set in said compiling translator for assuring cooperation between said control computer, procedures and structures in said machine operation code, and safety integrity level requirements;a first process unit step data object type having a safety-domain attribute parameter set for use in said safety integrity programming section;and a second process unit step data object type having a normal-operations attribute parameter set for use in said memory outside of said safety integrity programming section.
  7. 7
    A process control system receiving input signals from manufacturing equipment and executing machine operation code to use said input signals in determining at least one output signal modifying the characteristics of at least one respective control device in said manufacturing equipment, wherein an affiliated compiling translator is used to convert an application program instance into said machine operation code, characterized by:a compiling translator for converting an application program instance into machine operation code;a control computer having a memory for holding said machine operation code wherein said control computer generates said output signal;a safety integrity programming rule set in said compiling translator for assuring cooperation between said control computer, procedures and structures in said machine operation code, and safety integrity level requirements;means in said compiling translator for interpreting a function type statement of said application program instance into a first list of input and output signals respective to said safety integrity programming section;means in said compiling translator for defining, independent of said function type statement, a second list of input and output signals in said application program instance respective to said safety integrity programming section;means in said compiling translator for comparing the values in said first list and the values in said second list;and means in said compiling translator for suppressing the generation of said machine operation code if said first list and said second list are different in the values they contain.
  8. 8
    A control computer receiving input signals from manufacturing equipment and executing machine operation code to use said input signals in determining at least one output signal modifying the characteristics of at least one respective control device in said manufacturing equipment, wherein an affiliated compiling translator is used to convert an application program instance into said machine operation code and wherein said control computer has a program memory section of memory for holding a portion of said machine operation code which is non-variant in real-time, characterized by:a safety integrity programming rule set in said compiling translator for assuring cooperation between said control computer, procedures and structures in said machine operation code, and safety integrity level requirements;means in said compiling translator for interpreting a function type statement of said application program instance into a first list of input and output signals respective to said safety integrity programming section;means in said compiling translator for defining a compiling translator signature data value characterizing said machine operation code for said program memory section;means in said compiling translator for defining, independent of said function type statement, a second list of input and output signals in said application program instance respective to said safety integrity programming section;means in said compiling translator for comparing the values in said first list and the values in said second list;means in said compiling translator for suppressing the generation of said machine operation code if said first list and said second list are different in the values they contain;means in said control computer for defining a real-time signature data value characterizing said machine operation code in said program memory section and for comparing said realtime signature data value to said compiling translator signature data value;and means in said control computer for halting real-time execution of said machine operation code when said compiling translator signature data value and said real-time signature data value are different in value.
  9. 9
    A process control system receiving input signals from manufacturing equipment and executing machine operation code to use said input signals in determining at least one output signal modifying the characteristics of at least one respective control device in said manufacturing equipment, characterized by:a compiling translator for converting an application program instance into said machine operation code;a control computer having a memory for holding said machine operation code wherein said control computer generates said output signal;a safety integrity programming rule set in said compiling translator for assuring cooperation between said control computer, procedures and structures in said machine operation code, and safety integrity level requirements;and a stinted-shutdown status process control object type having a priority attribute parameter for use in said safety integrity programming section wherein said priority attribute parameter supports a plurality of priority levels.
  10. 10
    A process control system receiving input signals from manufacturing equipment and executing machine operation code to use said input signals in determining at least one output signal modifying the characteristics of at least one respective control device in said manufacturing equipment, characterized by:a control computer having a memory for holding said machine operation code and for generating the output signal, said memory having a primary memory and a shadow memory;means for comparing data values in said primary memory and respective data values in said shadow memory;and means for halting said control computer when said data values in said primary memory and said respective data values in said shadow memory are determined by said means for comparing to be different.
  11. 11
    The process control system of any of Claims 2 through 9, said system having:a first said control computer having a primary memory and a shadow memory wherein said first control computer executes said machine operation code to read said input signals and determines a first process control signal from first arbitrated input values;a second said control computer having a primary memory and a shadow memory wherein said second control computer executes said machine operation code to read said input signals and determines a second process control signal from second arbitrated input values;a bi-directional communications channel connected to said first control computer and to said second control computer for enabling bilateral transmission of said input signals;means for determining said first arbitrated input values in said first control computer from the input signals transmitted from said second control computer and the input signals read by said first control computer;means for determining said second arbitrated input values in said second control computer from the input signals transmitted from said first control computer and the input signals read by said second control computer;and means for coupling together to said control device the first process control signal and the second process control signal as one said output signal.
  12. 12
    The process control system of any of Claims 3 through 9, said control computer having:means for defining at least one digital address and an affiliated set of digital signals respective to at least one said output signal;an output circuit for outputting said output signal to said control device;a first digital-to-analog circuit connected to said computer processor for converting said set of digital signals into a single analog signal;a multiplexing circuit interfacing said first digital-to-analog circuit to said output circuit, said multiplexing circuit having an address input for receiving said digital address;a second digital-to-analog circuit for converting said digital address into an address-value analog signal;an analog-to-digital circuit interfacing said second digital-to-analog circuit to said computer processor for converting said address-value analog signal into a set of address-value digital signals;means for comparing said set of address-value digital signals and said digital address;and means for halting real-time execution of said machine operation code in said computer processor if said set of address-value digital signals and said digital address are not determined to be identical by said means for comparing.
  13. 13
    The control system of any of Claims 3, 4, and 9 wherein said machine operation code is compiled from an application program instance by a compiling translator, said compiling translator having:a safety integrity programming rule set providing coordination between said control computer, procedures and structures in said machine operation code, and safety integrity requirements;means for compiling a first process unit step data object in dependence upon said safety integrity programming rule set;and means for compiling a second process unit step data object independently of said safety integrity programming rule set.
  14. 14
    The control computer of Claim 13 wherein said application program instance has a safety integrity programming section, said compiling translator further having:means for interpreting a function type statement of said application program instance into a first list of input and output signals respective to said safety integrity programming section;means for defining, independent of said function type statement, a second list of input and output signals in said application program instance respective to said safety integrity programming section;means for comparing the values in said first list and the values in said second list;and means for suppressing compilation of said machine operation code if said first list and said second list differ in the values of their respective lists.
  15. 15
    The control computer of Claim 13, wherein said compiling translator further comprises means for compiling a stinted-shutdown process control object type having a priority attribute parameter supporting a plurality of priority levels.
  16. 16
    The control computer of any of Claims 3 through 9, having:a primary memory and a shadow memory;means for comparing data values in said primary memory and respective data values in said shadow memory;and means for halting said control computer when said data values in said primary memory and said respective data values in said shadow memory are different.
  17. 17
    A process for receiving input signals from manufacturing equipment and executing machine operation code determining at least one output signal adjusting at least one respective control device in said manufacturing equipment, characterized by the steps of:generating said machine operation code with a compiling translator using a safety-domain rule set and a standard operations rule set;and loading said machine operation code into a control computer for execution in determining said output signals.
  18. 18
    A control process for receiving input signals from manufacturing equipment and executing machine operation code determining at least one output signal adjusting at least one respective control device in said manufacturing equipment, characterized by the steps of:compiling first machine operation code from safety integrity programming source code;and compiling second machine operation code from general control source code;and executing said first machine operation code and said second machine operation code on the same control computer to receive said input signals and to adjust said respective control device.
  19. 19
    A process for receiving input signals from manufacturing equipment and executing machine operation code determining at least one output signal adjusting at least one respective control device in said manufacturing equipment, characterized by the steps of:evaluating real-time competence of said control computer for executing said machine operation code in essentially full accordance with the design of said control computer;and discontinuing said output signal when said real-time competence is unacceptable.
  20. 20
    A process for receiving input signals from manufacturing equipment and executing machine operation code in a control computer determining at least one output signal adjusting at least one respective control device in said manufacturing equipment, characterized by the steps of:evaluating real-time competence of said control computer to execute said machine operation code in essentially full accordance with said control computer as designed;and halting execution of a real-time cycle portion of said machine operation code when said realtime competence is unacceptable.
  21. 21
    A control process of receiving input signals from manufacturing equipment and executing machine operation code on a control computer determining at least one output signal adjusting at least one respective control device in said manufacturing equipment, characterized by the steps of:defining a compiler signature data value characterizing a non-variant portion of said machine operation code;loading said compiler signature data value into said control computer;defining, in said control computer, a real-time signature data value characterizing said non- variant portion of said machine operation code;comparing said real-time signature data value to said compiling translator signature data value;and halting a real-time cycle portion of said machine operation code when said compiling translator signature data value and said real-time signature data value differ in value so that said control device is adjusted by machine operation code which conforms to the compiled machine operation code.
  22. 22
    A process for receiving input signals from manufacturing equipment and executing machine operation code determining at least one output signal adjusting at least one respective control device in said manufacturing equipment, characterized by the steps of:converting an application program instance into said machine operation code, said application program instance having at least two process unit step objects;executing said machine operation code in a first control computer;executing said machine operation code in a second control computer;defining a first proposed process unit step in said first control computer to modify the active process unit step from a current process unit step to a new process unit step;defining a second proposed process unit step in said second control computer to modify the active process unit step from the current process unit step to a new process unit step;bilaterally transmitting said first and second proposed process unit steps between said first control computer and said second control computer so that each control computer contains both proposed process unit steps;arbitrating said first and second proposed process unit steps in said first control computer to define a next process unit step;arbitrating said first and second proposed process unit steps in said second control computer to define a next process unit step;and effecting in each control computer the next process unit step as the new current process unit step.
  23. 23
    A process for receiving input signals from manufacturing equipment and executing machine operation code to use said input signals in determining at least one output signal modifying the characteristics of at least one respective control device in said manufacturing equipment, wherein an affiliated compiling translator converts an application program instance into said machine operation code, characterized by the steps of:interpreting, in said compiling translator, a function type statement of said application program instance into a first list of input and output signals respective to a safety integrity programming rule set in said compiling translator for assuring cooperation between said control computer, procedures and structures in said machine operation code, and safety integrity level requirements;defining, in said compiling translator, independent of said function type statement, a second list of input and output signals in said application program instance respective to said safety integrity programming section;comparing, in said compiling translator, the values in said first list and the values in said second list;suppressing, in said compiling translator, the generation of said machine operation code if said first list and said second list are different in the values they contain;and loading said machine operation code into a control computer for execution.
  24. 24
    A control computer implemented process for receiving input signals from manufacturing equipment and executing machine operation code to use said input signals in determining at least one output signal modifying the characteristics of at least one respective control device in said manufacturing equipment, characterized by the steps of:using a first process unit step data object type having a safety-domain attribute parameter in said control computer;and using a second process unit step data object type having a standard-operations attribute parameter in said control computer.
  25. 25
    A process for receiving input signals from manufacturing equipment and executing machine operation code to use said input signals in determining at least one output signal modifying the characteristics of at least one respective control device in said manufacturing equipment, characterized by the step of:compiling said machine operation code using a stinted-shutdown status process control object type.
  26. 26
    A process for receiving input signals from manufacturing equipment and executing machine operation code to use said input signals in determining at least one output signal modifying the characteristics of at least one respective control device in said manufacturing equipment, characterized by the steps of:generating said machine operation code with a compiling translator using a Boolean operator type and a safety-domain Boolean operator type;and executing said machine operation code in a control computer to generate said output signal.
  27. 27
    A process for receiving input signals from manufacturing equipment and executing machine operation code to use said input signals in determining at least one output signal modifying the characteristics of at least one respective control device in said manufacturing equipment, characterized by the steps of:providing a control computer having a primary memory wherein said control computer generates a process control signal;providing a shadow memory said control computer;comparing data values in said primary memory and respective data values in said shadow memory when read-accessed in real-time;halting said control computer when said data values in said primary memory and said respective data values in said shadow memory are determined by said means for comparing to be different;and affecting to said control device said process control signal as said output signal.
  28. 28
    A process for receiving input signals from manufacturing equipment and executing machine operation code to use said input signals in determining at least one output signal modifying the characteristics of at least one respective control device in said manufacturing equipment, characterized by the steps of:converting an application program instance into said machine operation code instance through use of an embedded safety integrity programming section within said compiling translator wherein said safety integrity programming section assures cooperation between said control computer, procedures and structures in said machine operation code, and safety integrity level requirements;executing said machine operation code in a first control computer having a primary memory and a shadow memory wherein said first control computer reads said input signals and generates a first process control signal from first arbitrated input values;executing said machine operation code in a second control computer having a primary memory and a shadow memory wherein said second control computer reads said input signals and generates a second process control signal from second arbitrated input values;bilaterally transmitting said input signals between said first control computer and said second control computer;determining said first arbitrated input values in said first control computer from the input signals transmitted from said second control computer and the input signals read by said first control computer;determining said second arbitrated input values in said second control computer from the input signals transmitted from said first control computer and the input signals read by said second control computer;and coupling together to said control device the first process control signal and the second process control signal into one said output signal.
  29. 29
    The process of any of Claims 17 through 21 or 23 through 27 wherein said executing machine operation code step redundantly executes a first instance of said machine operation code in a first control computer and a second instance of said machine operation code in a second control computer.
  30. 30
    The process of any of Claims 17 through 21 or 23 through 27 wherein said executing machine operation code step redundantly executes a first instance of said machine operation code in a first control computer, a second instance of said machine operation code in a second control computer, and a third instance of said machine operation code in a third control computer.
  31. 31
    The process of Claim 29 wherein said redundant machine operation code is executed in active redundancy such that both control computers simultaneously impress their output control voltages to one respective said control device on the same output wire.
  32. 32
    The process of Claim 30 wherein said redundant machine operation code is executed in active redundancy such that said first, second, and third control computers simultaneously impress their output control voltages to one respective said control device on the same output wire.
Independent claims32