System and Method for Automatically Updating the Memory Map of a Programmable Controller to Customized Hardware

Information

  • Patent Application
  • 20070174518
  • Publication Number
    20070174518
  • Date Filed
    June 28, 2006
    17 years ago
  • Date Published
    July 26, 2007
    16 years ago
Abstract
System and method for automatically updating a memory map coupled to or included in a programmable controller (PrC). A PrC may automatically detect at least one programmable hardware element (PHE) coupled to the PrC. The PHE may provide a customizable interface, i.e., input and output (I/O) interface, between one or more devices and the PrC. The devices may include one or more measurement, data acquisition, signal generation, automation, motion control, and/or analysis device(s), among others. The PHE may perform one or more functions on the data transmitted between the device(s) and the PrC. One or more of the PHEs and/or device(s) may be local or remote to the PrC. The PrC may automatically update the memory map based on a hardware I/O interface of the at least one programmable hardware element, where the memory map facilitates communications between programs executing on the PrC and the programmable hardware element.
Description

BRIEF DESCRIPTION OF THE DRAWINGS

A better understanding of the present invention can be obtained when the following detailed description of the preferred embodiment is considered in conjunction with the following drawings, in which:



FIG. 1A illustrates a programmable logic controller coupled to one or more devices, according to one embodiment;



FIG. 1B illustrates a system comprising a programmable logic controller (PLC), one or more devices, and a host computer system that may implement one embodiment of the present invention;



FIG. 2A illustrates an instrumentation control system, according to one embodiment;



FIG. 2B illustrates an industrial automation system, according to one embodiment;



FIG. 3 is a block diagram illustrating the functionality of an exemplary programmable logic controller, according to one embodiment;



FIG. 4 is a flowchart diagram illustrating one embodiment of a method for automatically updating a memory map of a PLC, according to one embodiment; and



FIG. 5 illustrates an example of a PLC before and after customization of a hardware interface, according to one embodiment.


Claims
  • 1. A method, comprising: a programmable controller automatically detecting at least one programmable hardware element coupled to the programming controller; andthe programmable controller automatically updating a memory map based on a hardware I/O interface of the at least one programmable hardware element, wherein the memory map facilitates communications between programs executing on the programmable controller and the programmable hardware element;the programmable controller retrieving and storing information from and to the memory map a plurality of times to update information to and from the programmable hardware element, wherein said retrieving and storing comprises the programmable controller utilizing a scanning architecture.
  • 2. The method of claim 1, wherein said retrieving and storing information from and to the memory map is performed cyclically and comprises: the programmable controller retrieving first information from the memory map and providing the first information to programs executing on the programmable controller; andthe programmable controller retrieving second information from the programs executing on the programmable controller and providing the second information in the memory map.
  • 3. The method of claim 1, wherein the programmable controller comprises a programmable logic controller.
  • 4. The method of claim 1, wherein the programmable controller comprises a programmable automation controller.
  • 5. The method of claim 1, wherein the programmable controller comprises a distributed controller system.
  • 6. The method of claim 1, further comprising: executing at least one program on the programmable controller, wherein the at least one program operates in conjunction with the at least one programmable hardware element, and wherein the at least one program is comprised in a task executing on the programmable controller.
  • 7. The method of claim 6, wherein the at least one program comprises one or more of: at least one graphical program, wherein the at least one graphical program comprises a plurality of interconnected nodes that visually indicate functionality of the graphical program; andat least one text-based program.
  • 8. The method of claim 1, further comprising: receiving at least one program to the programmable controller from a host computer system coupled to the programmable controller; andexecuting the at least one program, wherein the at least one program operates in conjunction with the at least one programmable hardware element, and wherein the at least one program is comprised in a task executing on the programmable controller.
  • 9. The method of claim 1, wherein the at least one PHE comprises at least one field-programmable gate array (FPGA).
  • 10. The method of claim 1, wherein the PHE provides a customizable interface between one or more of: one or more devices and the programmable controller; orthe one or more devices, wherein the one or more devices comprise a plurality of devices.
  • 11. The method of claim 10, wherein the PHE providing a customizable interface between the one or more devices and the programmable controller comprises: the PHE providing a customizable interface between the one or more devices and the programs executing on the programmable controller.
  • 12. The method of claim 11, wherein the programmable controller is comprised in a chassis, wherein the chassis comprises one or more slots, wherein at least one of the one or more devices comprises a module inserted into a slot of the chassis.
  • 13. The method of claim 11, wherein the at least one PHE is comprised within the backplane of the chassis.
  • 14. The method of claim 11, wherein the one or more devices comprise one or more of: a measurement device;a data acquisition device;a signal generation device;an automation device;a motion control device; andan analysis device.
  • 15. The method of claim 1, further comprising: the at least one PHE receiving data from at least one device coupled to the at least one PHE;the at least one PHE performing one or more functions on the data, thereby generating modified data; andthe at least one PHE providing the modified data to the programmable controller.
  • 16. The method of claim 1, further comprising: the at least one PHE receiving data from the programmable controller;the at least one PHE performing one or more functions on the data, thereby generating modified data; andthe at least one PHE providing the modified data to at least one device coupled to the at least one PHE.
  • 17. The method of claim 1, wherein the at least one PHE is located remotely from the programmable controller.
  • 18. The method of claim 1, wherein the at least one PHE comprises a plurality of PHEs coupled to the programmable controller, wherein at least one of the plurality of PHEs is located remotely from the programmable controller.
  • 19. The method of claim 1, further comprising: halting the programmable controller in response to received input;automatically detecting a new hardware I/O interface of the at least one PHE; andautomatically updating the memory map according to the new hardware I/O interface of the at least one PHE;wherein said halting, said automatically detecting the new hardware I/O interface, and said automatically updating the memory map according to the new hardware I/O interface is performed one or more times.
  • 20. The method of claim 19, wherein the received input comprises input received from one or more of: a computer system coupled to the programmable controller;a user via the computer system coupled to the programmable controller;a controller module coupled to the programmable controller;a device coupled to the programmable controller; anda user.
  • 21. The method of claim 1, wherein the programmable controller comprises a soft programmable controller executing on a host computer.
  • 22. The method of claim 1, wherein the programmable controller is specified by a first portion of a graphical program and the PHE is specified by a second portion of the graphical program, and wherein the graphical program comprises a plurality of interconnected nodes that visually indicate functionality of the graphical program.
  • 23. The method of claim 1, further comprising: receiving input invoking said automatic detection and said automatic generation.
  • 24. The method of claim 1, wherein said automatic detection and said automatic generation are performed during initialization of the programmable controller.
  • 25. The method of claim 1, wherein the memory map is comprised in or coupled to the programmable controller.
  • 26. A programmable controller, comprising: a processor;a memory medium coupled to the processor, comprising program instructions executable by the processor to: automatically detect at least one programmable hardware element coupled to the programmable controller; andautomatically update a memory map based on a hardware I/O interface of the at least one programmable hardware element, wherein the memory map facilitates communications between programs executing on the programmable controller and the programmable hardware element.
  • 27. A computer-accessible memory medium comprising program instructions, wherein the program instructions are executable by a processor to implement: automatically detecting at least one programmable hardware element coupled to a programmable controller; andautomatically updating a memory map based on a hardware I/O interface of the at least one programmable hardware element, wherein the memory map facilitates communications between programs executing on the programmable controller and the programmable hardware element.
  • 28. A system, comprising: means for automatically detecting at least one programmable hardware element coupled to a programmable controller; andmeans for automatically updating a memory map based on a hardware I/O interface of the at least one programmable hardware element, wherein the memory map facilitates communications between programs executing on the programmable controller and the programmable hardware element.
Continuation in Parts (1)
Number Date Country
Parent 11338922 Jan 2006 US
Child 11427052 US