Claims
- 1. A computer programming method for use in controlling an automation process, said method comprising the steps of:
providing on a first computer platform a programming by demonstration tool used as both a control program and a visual user interface for said control program, said programming by demonstration tool including a library of program widgets, a graphical editor capable of enabling manipulation by a user of a graphical representation of any of said program widgets, and an inferencing engine for recording and processing said manipulation to produce executable code; and providing an input/output module, interfacing with said programming by demonstration tool, for coupling said program widgets to external input and output signals of said automation process such that said executable code is used to control said automation process.
- 2. The method of claim 1, further comprising:
providing a code compiler, said code compiler compiling said executable code to run on second computer platform different from said first computer platform.
- 3. The method of claim 2, wherein said first computer platform comprises a Windows platform and said second computer platform comprises a PLC.
- 4. The method of claim 1, wherein said graphical representation of any of said program widgets can also provide feedback for the runtime monitoring and control of said automation process.
- 5. The method of claim 4, wherein said feedback is a visual change, animation, sound, other form of stimulus, triggering of an event, or a combination thereof.
- 6. The method of claim 4, wherein said graphical representation of any of said program widgets can also provide user input capabilities for the runtime monitoring and control of said automation process.
- 7. The method of claim 1, wherein said program widgets include “machine widgets,” “programming widgets,” and “user interface widgets.”
- 8. A computer programming product for use in controlling an automation process, said product comprising:
computer-readable program code stored on a computer-readable medium, said computer-readable program code utilizing programming by demonstration, said computer-readable program code used as both a control program and a visual user interface for said control program; said computer-readable program code including a library of program widgets, a graphical editor capable of enabling manipulation by a user of a graphical representation of any of said program widgets, an inferencing engine for recording and processing said manipulation to produce executable code, and an input/output module for coupling said program widgets to external input and output signals of said automation process such that said executable code is used to control said automation process.
- 9. The product of claim 8, wherein said computer-readable program code is operable on a first computer platform, and wherein said product further comprises:
a code compiler, said code compiler compiling said executable code to run on second computer platform different from said first computer platform.
- 10. The product of claim 9, wherein said first computer platform comprises a Windows platform and said second computer platform comprises a PLC.
- 11. The product of claim 8, wherein said graphical representation of any of said program widgets can also provide feedback for the runtime monitoring and control of said automation process
- 12. The product of claim 11, wherein said feedback is a visual change, animation, sound, other form of stimulus, triggering of an event, or a combination thereof
- 13. The product of claim 11, wherein said graphical representation of any of said program widgets can also provide user input capabilities for the runtime monitoring and control of said automation process.
- 14. The product of claim 8, wherein said program widgets include “machine widgets,” “programming widgets,” and “user interface widgets.”
- 15. The product of claim 8, wherein said automation process comprises a home automation process, building automation process, an industrial automation process, or other automation-based process.
- 16. The product of claim 8, wherein said computer-readable medium comprises a floppy disk, a CD-ROM, a hard disk drive, a file downloadable from an internet site, magnetic tape, digital video disk, removable memory drive, or an email file.
- 17. The method of claim 2, wherein said automation process comprises a home automation process, building automation process, an industrial automation process, or other automation-based process.
CROSS-REFERENCE TO RELATED APPLICATION
[0001] The present application claims priority from provisional U.S. patent application No. 60/186,969 filed Mar. 6, 2000 entitled “Programming Automation By Demonstration” and listing inventors Richard Gary McDaniel, Daniel Conrad Benson, Steven Michael Schofield and Frank Dittrich Schiller.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60186969 |
Mar 2000 |
US |