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

Method of programming and executing object-oriented state machine logic in a controller

Assignee: Johnson Controls Technology Co
•
Filing: 1998-07-09
•
Granted: 2002-11-05
•
Expires: 2018-07-09
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method is disclosed for programming and executing a state machine control program represented as a diagram in an HVAC controller. The diagram is converted to tabular data which is entered into one or more spreadsheet pages. The tabular data includes the defined output states, the defined input states and defined transition states, whereby a given output state and a given set of inputs will cause transition to a next output state. The tabular data is translated, through execution of a routine in a macro-instruction language, into a plurality of data structures for downloading into a finite state machine object data structure in the controller, where it will be acted upon by an object-oriented execution module, referred to as a class execute method, which is also present in the controller.

Inventors

  • 👤 Alex Bernaden, III
  • 👤 Gaylon M. Decious
  • 👤 John E. Seem
  • 👤 Kirk H. Drees
  • 👤 Jonathan D. West
  • 👤 William R. Kuckuk

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-27 13:56
CPC Classifications
F; F24; F24F; F24F11/00; F24F11/30; F24F11/62; F24F11/63; F24F11/70; F24F11/72; F24F11/74; G; G05; G05B; G05B9/00; G05B9/02; G05B2219/00; G05B2219/20; G05B2219/23; G05B2219/23289; G05B2219/26; G05B2219/2638; Y; Y10; Y10S; Y10S707/00; Y10S707/99941; Y10S707/99944; Y10S707/99945

Claims Analysis

Total Claims: 13
Claim 1
Independent Claim 169 words
A method of programming a controller for execution of a state machine logic program, the method comprising: entering data for a state machine logic program based upon a state diagram into a programming terminal, the diagram representing a plurality of current output states, a present state of a plurality of inputs, and at least one next output state, said programming terminal displaying said data on a screen for observation by a human operator; translating the data into at least one data structure for execution as part of a state machine logic program in the controller, the data structure including at least one state table; transferring the data structure from the programming terminal to the controller, the data structure including at least one of a state mask table and an event guard mask table; loading the data structure into an object in an object-oriented program in the controller; and executing an object-oriented execution routine in the controller, the controller operating on the data to execute the state machine logic program.
Claim 2
Independent Claim 169 words
A method of programming a controller for execution of a state machine logic program, the method comprising: entering data for a state machine logic program based upon a state diagram into a programming terminal, the diagram representing a plurality of current output states, a present state of a plurality of inputs, and at least one next output state, said programming terminal displaying said data on a screen for observation by a human operator; translating the data into at least one data structure for execution as part of a state machine logic program in the controller, the data structure including at least one state table; transferring the data structure from the programming terminal to the controller, the data structure including at least one of a state mask table and an event guard mask table; loading the data structure into an object in an object-oriented program in the controller; and executing an object-oriented execution routine in the controller, the controller operating on the data to execute the state machine logic program.
Claim 3
Dependent Claim 36 words
The method of claim 1 , wherein the data for the state machine logic program is entered into a programming terminal in a plurality of pages in a spreadsheet application program running on the programming terminal.
Claim 4
Dependent Claim 40 words
The method of claim 2 , wherein the data is translated into at least one data structure for execution as part of a state machine logic program in the controller by executing a translation routine resident in the programming terminal.
Claim 5
Dependent Claim 22 words
The method of claim 3 , wherein the data structure is transferred from the programming terminal to the controller through a network.
Claim 6
Dependent Claim 23 words
The method of claim 4 , wherein the data structure is transferred from the programming terminal to the controller as a binary file.
Claim 7
Dependent Claim 42 words
The method of claim 5 , wherein the execution routine which operates on the data to execute the state machine logic program in the controller is a class method associated with the data structure through a state machine object in the controller.
Claim 8
Dependent Claim 42 words
The method of claim 6 , wherein the data that is entered into the programming terminal for the state machine logic program provides for at least one output superstate and a plurality of output substates, which are included in said output superstate.
Claim 9
Dependent Claim 44 words
The method of claim 7 , wherein the data that is entered into the programming terminal for the state machine logic program provides for at least one output superstate and a plurality of tiers of output substates, which are included in said output superstate.
Claim 10
Independent Claim 165 words
A method of programming a VAV controller for execution of a state machine logic program related to HVAC control, the method comprising: entering data for a state machine logic program based upon a state diagram into a programming terminal, the diagram representing a plurality of current output states, a present state of a plurality of inputs, and at least one next output state, said programming terminal displaying said data on a screen for observation by a human operator; translating the data into at least one data structure for execution as part of a state machine logic program in the controller, the data structure including at least one state table; transferring the data structure from the programming terminal to the controller, the data structure including an event guard mask table; loading the data structure into an object in an object-oriented program in the controller; and executing an object-oriented execution routine in the controller, the controller operating on the data to execute the state machine logic program.
Claim 11
Independent Claim 165 words
A method of programming a VAV controller for execution of a state machine logic program related to HVAC control, the method comprising: entering data for a state machine logic program based upon a state diagram into a programming terminal, the diagram representing a plurality of current output states, a present state of a plurality of inputs, and at least one next output state, said programming terminal displaying said data on a screen for observation by a human operator; translating the data into at least one data structure for execution as part of a state machine logic program in the controller, the data structure including at least one state table; transferring the data structure from the programming terminal to the controller, the data structure including an event guard mask table; loading the data structure into an object in an object-oriented program in the controller; and executing an object-oriented execution routine in the controller, the controller operating on the data to execute the state machine logic program.
Claim 12
Dependent Claim 36 words
The method of claim 9 , wherein the data for the state machine logic program is entered into a programming terminal in a plurality of pages in a spreadsheet application program running on the programming terminal.
Claim 13
Dependent Claim 40 words
The method of claim 10 , wherein the data is translated into at least one data structure for execution as part of a state machine logic program in the controller by executing a translation routine resident in the programming terminal.

References Cited (Backward Citations)

US5377315A Cited
US5864479A Cited
US5918051A Cited
US5809235A Cited
US5847659A Cited
US6038590A Cited
US5920718A Cited
US6028998A Cited
US6104963A Cited
US6119125A Cited
US6167319A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2005-11-04 2006-05-06 2006-11-05 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2009-11-04 2010-05-06 2010-11-05 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2013-11-04 2014-05-06 2014-11-05 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag