← Back to Patent Explorer
US5504902A Expired / Lapsed US ⏱️ 0.0 years remaining

Multi-language generation of control program for an industrial controller

Assignee: CONTROL DIVISION OF MAGNETEK
•
Filing: 1993-12-01
•
Granted: 1996-04-02
•
Expires: 2013-12-01
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and system for generating a control program executable by an industrial controller, wherein the control program is formed using instructions from a high-level text-based language and instructions from a ladder-based language. A source program is received by a host computer. At least one instruction of the source program in the high-level text-based language is displayed on a display device along with a corresponding ladder diagram of the source program in the ladder-based language. The source program is edited in either the high-level text-based language using a first editor or the ladder-based language using a second editor. Modifications of the source program made using the first editor and the second editor are converted to a lower-level language representation. The lower-level language representation is convertible to both the high-level text-based language and the ladder-based language, so that modifications made in the high-level text-based language dynamically update the ladder diagram display and modifications made in the ladder-based language dynamically update at least one line of displayed text.

Inventors

  • 👤 Michael S. McGrath
  • 👤 Lonny C. McKinnon
  • 👤 Jack C. Pattee
  • 👤 Gerald C. Wieczerza

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-26 00:12
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/40; G06F8/41; G06F8/48; G06F8/30; G06F8/33; G05; G05B; G05B2219/00; G05B2219/10; G05B2219/13; G05B2219/13134

Claims Analysis

Total Claims: 58
Claim 1
Independent Claim 96 words
A method of generating a control program utilizing a computer system, the control program executable by a controller to control the operation of a one or more devices, the method comprising the steps of: receiving one or more instructions of a source program in a high-level text-based language; converting at least one of the one or more instructions into first corresponding instructions in a ladder-based language; editing the first corresponding instructions of the source program in the ladder-based language to form an edited source program; and compiling the edited source program to form the control program.
Claim 2
Independent Claim 96 words
A method of generating a control program utilizing a computer system, the control program executable by a controller to control the operation of a one or more devices, the method comprising the steps of: receiving one or more instructions of a source program in a high-level text-based language; converting at least one of the one or more instructions into first corresponding instructions in a ladder-based language; editing the first corresponding instructions of the source program in the ladder-based language to form an edited source program; and compiling the edited source program to form the control program.
Claim 3
Dependent Claim 32 words
The method of claim 1 wherein the first corresponding instructions, so converted, can be converted back into the at least one of the one or more instructions in the high-level text-based language.
Claim 4
Dependent Claim 66 words
The method of claim 1 wherein the computer system is operated by a user and wherein the step of converting includes: receiving a first signal generated by a user; and converting the at least one of the one or more instructions of the source program in the high-level text-based language to the first corresponding instructions in the ladder-based language only if the first signal is received.
Claim 5
Dependent Claim 15 words
The method of claim 1 wherein the high-level text-based language is a C-based programming language.
Claim 6
Dependent Claim 16 words
The method of claim 1 wherein the ladder-based language is a relay ladder logic based language.
Claim 7
Dependent Claim 62 words
The method of claim 1 wherein the step of converting includes: converting the at least one of the one or more instructions of the source program in the high-level text-based language to second corresponding instructions in a lower-level language; and converting the second corresponding instructions of the source program in the lower-level language to the first corresponding instructions in the ladder-based language.
Claim 8
Dependent Claim 37 words
The method of claim 1 wherein the step of compiling includes compiling at least one of the source program in the high-level text-based language and the source program in the ladder-based language to form the control program.
Claim 9
Dependent Claim 76 words
The method of claim 7 wherein the step of converting includes: converting the one or more instructions of the source program in the text-based language to second corresponding instructions in a lower-level language; and converting the second corresponding instructions of the source program in the lower-level language to the first corresponding instructions in the ladder-based language; wherein the step of compiling operates to compile the source program in the lower-level language to form the control program.
Claim 10
Dependent Claim 59 words
The method of claim 1 wherein the computer system is operated by a user and wherein the method further comprises the steps of: receiving a second signal generated by the user; and converting the first corresponding instructions in the ladder-based language, as edited, to third corresponding instructions in the high-level text-based language only if the second signal is received.
Claim 11
Dependent Claim 75 words
The method of claim 9 wherein the step of converting the instructions of the source program in the ladder-based language to corresponding instructions in the text-based language includes: converting the first corresponding instructions of the source program in the ladder-based language, as edited, to second corresponding instructions in a lower-level language; and converting the second corresponding instructions of the source program in the lower-level language to the third corresponding instructions in the high-level text-based language.
Claim 12
Dependent Claim 25 words
The method of claim 1 wherein the computer system includes a user-operated editor for editing the instructions of the source program in the text-based language.
Claim 13
Dependent Claim 19 words
The method of claim 11 wherein the step of converting is performed automatically if the source program is edited.
Claim 14
Dependent Claim 27 words
The method of claim 1 wherein the computer system includes a user-operated editor for editing the first corresponding instructions of the source program in the ladder-based language.
Claim 15
Dependent Claim 40 words
The method of claim 13 further comprising the step of converting the first corresponding instructions of the source program in the ladder-based language, as edited, to third corresponding instructions in the high-level text-based language automatically after source program is edited.
Claim 16
Dependent Claim 41 words
The method of claim 1 further comprising the step of displaying at least one of the first corresponding instructions of the source program in the ladder-based language as a ladder diagram on a display device in communication with the computer system.
Claim 17
Dependent Claim 35 words
The method of claim 15 further comprising the step of displaying at least one of the one or more instructions of the source program in the high-level text-based language as text on the display device.
Claim 18
Dependent Claim 19 words
The method of claim 16 wherein the ladder diagram and the text are displayed on the display device simultaneously.
Claim 19
Dependent Claim 29 words
The method of claim 17 wherein the ladder diagram corresponds to the same at least one of the one or more instructions of the source program as the text.
Claim 20
Dependent Claim 46 words
The method of claim 18 further comprising the steps of: changing the at least one of the one or more instructions which is displayed by scrolling through the one or more instructions of the source program in response to a third signal generated by a user.
Claim 21
Independent Claim 134 words
A method of bilingually developing a source program and generating a control program therefrom utilizing a computer system, the control program being executable by a controller to control the operation of one or more devices, the method comprising the steps of: receiving one or more instructions of the source program in a high-level, text-based, non-machine language; converting the one or more instructions of the source program into first corresponding instructions in a ladder-based language; editing the first corresponding instructions of the source program in the ladder-based language; converting the first corresponding instructions, as edited, into second corresponding instructions in the high-level text-based language; editing the second corresponding instructions of the source program in the high-level text-based language to form an edited source program; and compiling the edited source program to form the control program.
Claim 22
Independent Claim 134 words
A method of bilingually developing a source program and generating a control program therefrom utilizing a computer system, the control program being executable by a controller to control the operation of one or more devices, the method comprising the steps of: receiving one or more instructions of the source program in a high-level, text-based, non-machine language; converting the one or more instructions of the source program into first corresponding instructions in a ladder-based language; editing the first corresponding instructions of the source program in the ladder-based language; converting the first corresponding instructions, as edited, into second corresponding instructions in the high-level text-based language; editing the second corresponding instructions of the source program in the high-level text-based language to form an edited source program; and compiling the edited source program to form the control program.
Claim 23
Dependent Claim 15 words
The method of claim 20 wherein the high-level text-based language is a C-based programming language.
Claim 24
Dependent Claim 16 words
The method of claim 20 wherein the ladder-based language is a relay ladder logic based language.
Claim 25
Dependent Claim 57 words
The method of claim 20 wherein the step of converting the one or more instructions includes: converting the one or more instructions of the source program to third corresponding instructions in a lower-level language; and converting the third corresponding instructions of the source program in the lower-level language to the first corresponding instructions in the ladder-based language.
Claim 26
Independent Claim 128 words
A system for generating a control program utilizing a computer system, the control program executable by a controller to control the operation of a one or more devices, the system comprising: receiving means for receiving one or more instructions of a source program in a high-level text-based language; conversion means, in communication with the receiving means, for converting at least one of the one or more instructions of the source program in the high-level text-based language into first corresponding instructions in a ladder-based language; a user-operated ladder-language editor, in communication with the conversion means, for editing the first corresponding instructions of the source program in the ladder-based language to form an edited source program; and a compiler which compiles the edited source program to form the control program.
Claim 27
Independent Claim 128 words
A system for generating a control program utilizing a computer system, the control program executable by a controller to control the operation of a one or more devices, the system comprising: receiving means for receiving one or more instructions of a source program in a high-level text-based language; conversion means, in communication with the receiving means, for converting at least one of the one or more instructions of the source program in the high-level text-based language into first corresponding instructions in a ladder-based language; a user-operated ladder-language editor, in communication with the conversion means, for editing the first corresponding instructions of the source program in the ladder-based language to form an edited source program; and a compiler which compiles the edited source program to form the control program.
Claim 28
Dependent Claim 32 words
The system of claim 24 wherein the first corresponding instructions, so converted, can be converted back into the at least one of the one or more instructions in the high-level text-based language.
Claim 29
Dependent Claim 79 words
The system of claim 24 wherein the computer system is operated by a user and wherein the conversion means includes: first signal receiving means for receiving a first signal generated by a user; and means, in communication with first signal receiving means, for converting the at least one of the one or more instructions of the source program in the high-level text-based language to the first corresponding instructions in the ladder-based language only if the first signal is received.
Claim 30
Dependent Claim 15 words
The system of claim 24 wherein the high-level text-based language is a C-based programming language.
Claim 31
Dependent Claim 16 words
The system of claim 24 wherein the ladder-based language is a relay ladder logic based language.
Claim 32
Dependent Claim 65 words
The system of claim 24 wherein the conversion means includes: means for converting the at least one of the one or more instructions of the source program in the high-level text-based language to second corresponding instructions in a lower-level language; and means for converting the second corresponding instructions of the source program in the lower-level language to the first corresponding instructions in the ladder-based language.
Claim 33
Dependent Claim 34 words
The system of claim 24 wherein the compiler compiles at least one of the source program in the high-level text-based language and the source program in the ladder-based language to form the control program.
Claim 34
Dependent Claim 77 words
The system of claim 30 wherein the conversion means includes: means for converting the one or more instructions of the source program in the high-level text-based language to second corresponding instructions in a lower-level language; and means for converting the second corresponding instructions of the source program in the lower-level language to the first corresponding instructions in the ladder-based language; wherein the compiling means compiles the source program in the lower-level language to form the control program.
Claim 35
Dependent Claim 75 words
The system of claim 24 wherein the computer system is operated by a user and wherein the system further comprises: second signal receiving means for receiving a second signal generated by the user; and means, in communication with the second signal receiving means, for converting the first corresponding instructions of the source program in the ladder-based language, as edited, to third corresponding instructions in the high-level text-based language only if the second signal is received.
Claim 36
Dependent Claim 81 words
The system of claim 32 wherein the means for converting the first corresponding instructions of the source program in the ladder-based language to the third corresponding instructions in the high-level text-based language includes: means for converting the first corresponding instructions of the source program in the ladder-based language, as edited, to second corresponding instructions in a lower-level language; and means for converting the second corresponding instructions of the source program in lower-level language to third corresponding instructions in the text-based language.
Claim 37
Dependent Claim 30 words
The system of claim 24 wherein the computer system includes a user-operated text editor for editing the one or more instructions of the source program in the high-level text-based language.
Claim 38
Dependent Claim 48 words
The system of claim 34 wherein the conversion means is responsive to the user-operated text editor to automatically convert the one or more instructions of the source program in the high-level text-based language into the first corresponding instructions in the ladder-based language if the source program is edited.
Claim 39
Dependent Claim 44 words
The system of claim 24 further comprising means, in communication with user-operated ladder-language editor, for converting the first corresponding instructions of the source program in the ladder-based language to third corresponding instructions in the high-level text-based language automatically if the source program is edited.
Claim 40
Dependent Claim 51 words
The system of claim 24 further comprising: a display device; and first display interfacing means, in communication with the conversion means and the display device, for displaying at least one of the first corresponding instructions of the source program in the ladder-based language as a ladder diagram on the display device.
Claim 41
Dependent Claim 46 words
The system of claim 37 further comprising second display interfacing means, in communication with the display device and the receiving means, for displaying at least one of the one or more instructions of the source program in the text-based language as text on the display device.
Claim 42
Dependent Claim 28 words
The system of claim 38 wherein first display interfacing means and the second display interfacing means display the ladder diagram and the text on the display device simultaneously.
Claim 43
Dependent Claim 29 words
The system of claim 39 wherein the ladder diagram corresponds to the same at least one of the one or more instructions of the source program as the text.
Claim 44
Dependent Claim 59 words
The system of claim 40 further comprising: means, in communication with the first display interfacing means and the second display interfacing means, for changing the at least one of the one or more instructions which is displayed by scrolling through the one or more instructions of the source program in response to a third signal generated by a user.
Claim 45
Independent Claim 182 words
A system for developing a source program bilingually and generating a control program therefrom utilizing a computer system, the control program being executable by a controller to control the operation of one or more devices, the system comprising: receiving means for receiving one or more instructions of the source program in a high-level, text-based, non-machine language; first conversion means, in communication with the receiving means, for converting the one or more instructions of the source program into first corresponding instructions in a ladder-based language; a user-operated ladder-language editor, in communication with the first conversion means, for editing the first corresponding instructions of the source program in the ladder-based language; second conversion means, in communication with the user-operated ladder-language editor, for converting the first corresponding instructions, as edited, into second corresponding instructions in the high-level text-based language; a user-operated text editor, in communication with the second conversion means, for editing the second corresponding instructions of the source program in the high-level text-based language to form an edited source program; and a compiler which compiles the edited source program to form the control program.
Claim 46
Independent Claim 182 words
A system for developing a source program bilingually and generating a control program therefrom utilizing a computer system, the control program being executable by a controller to control the operation of one or more devices, the system comprising: receiving means for receiving one or more instructions of the source program in a high-level, text-based, non-machine language; first conversion means, in communication with the receiving means, for converting the one or more instructions of the source program into first corresponding instructions in a ladder-based language; a user-operated ladder-language editor, in communication with the first conversion means, for editing the first corresponding instructions of the source program in the ladder-based language; second conversion means, in communication with the user-operated ladder-language editor, for converting the first corresponding instructions, as edited, into second corresponding instructions in the high-level text-based language; a user-operated text editor, in communication with the second conversion means, for editing the second corresponding instructions of the source program in the high-level text-based language to form an edited source program; and a compiler which compiles the edited source program to form the control program.
Claim 47
Dependent Claim 14 words
The system of claim 42 wherein the text-based language is a C-based programming language.
Claim 48
Dependent Claim 16 words
The system of claim 42 wherein the ladder-based language is a relay ladder logic based language.
Claim 49
Dependent Claim 56 words
The system of claim 42 wherein the first conversion means includes: means for converting the one or more instructions of the source program to third corresponding instructions in a lower-level language; and means for converting the third corresponding instructions of the source program in the lower-level language to the first corresponding instructions in the ladder-based language.
Claim 50
Dependent Claim 58 words
The system of claim 42 further comprising: first signal producing means, in communication with the user-operated ladder-language editor, to produce the first signal if the source program has been edited by a user using the user-operated ladder-language editor, wherein the second conversion means converts the first corresponding instructions into the second corresponding instructions after receiving the first signal.
Claim 51
Dependent Claim 61 words
The system of claim 42 wherein the second conversion means includes: means for converting the first corresponding instructions of the source program in the ladder-based language, as edited, to third corresponding instructions in a lower-level language; and means for converting the third corresponding instructions of the source program in the lower-level language to the second corresponding instructions in the text-based language.
Claim 52
Dependent Claim 54 words
The method of claim 20 further comprising the steps of: displaying the first corresponding instructions of the source program in the ladder-based language, as edited, as a ladder diagram on a display device; and displaying the second corresponding instructions of the source program in the high-level text-based language as text on the display device.
Claim 53
Dependent Claim 40 words
The method of claim 48 wherein the ladder diagram and the text are displayed simultaneously and wherein the ladder diagram corresponds to the same at least one of the one or more instructions of the source program as the text.
Claim 54
Dependent Claim 36 words
The method of claim 20 further comprising the step of receiving a first signal, wherein the step of converting the first corresponding instructions, as edited, into second corresponding instructions is performed after receiving the first signal.
Claim 55
Dependent Claim 17 words
The method of claim 50 wherein the first signal is generated by an action of a user.
Claim 56
Dependent Claim 75 words
The method of claim 50 wherein the step of converting the first corresponding instructions of the source program, as edited, into second corresponding instructions in the high-level text-based language includes: converting the first corresponding instructions of the source program in the ladder-based language to third corresponding instructions in a lower-level language; and converting the third corresponding instructions of the source program in the lower-level language to the second corresponding instructions in the high-level text-based language.
Claim 57
Dependent Claim 55 words
The system of claim 42 further comprising: means for displaying the first corresponding instructions of the source program in the ladder-based language, as edited, as a ladder diagram on a display device; and means for displaying the second corresponding instructions of the source program in the high-level text-based language as text on the display device.
Claim 58
Dependent Claim 50 words
The system of claim 53 wherein the first display interfacing means and the second display interfacing means display the ladder diagram and the text simultaneously and wherein the ladder diagram corresponds to the same at least one of the one or more instructions of the source program as the text.

References Cited (Backward Citations)

US5083262A Cited
US5142681A Cited
US5386569A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-04-02 1999-10-02 2000-04-02 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-04-02 2003-10-02 2004-04-02 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-04-02 2007-10-02 2008-04-02 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag