Claims1. A system that automatically selects an add-on instruction for execution by an industrial device, comprising:
2. The system of claim 1, the state of the add-on instruction is one of a normal state; a pre-scan state; a post-scan state; and an enable false state. 3. The system of claim 1, the third component alternatively selects the routine based on a state of an equipment phase program module. 4. The system of claim 3, the state of an equipment phase program module is one of an aborting state; a holding state; a resetting state; running state; and a stopping state. 5. The system of claim 1, the add-on instruction includes and relates one or more routines, parameters, and state data associated with performing one or more control sequences. 6. The system of claim 1, the user program and the add-on instruction are generated via similar or different languages. 7. The system of claim 6, the languages include one or more of structured text (ST), sequential function chart (SFC), functional block diagram (FBD), instruction list (IL), ladder diagram (LD), C, C++, C#, Graphical Motion Language (GML), Java, and Flow-Charts. 8. The system of claim 1, the add-on instruction is passed a parameter by reference. 9. The system of claim 1, the add-on instruction is passed at least one of a complex data type and an object as a reference parameter. 10. The system of claim 1, the add-on instruction is passed a parameter via one of an array and a matrix. 11. The system of claim 1, an add-on instruction call presentation in the user program is automatically determined based on at least one of a parameter configuration defined for the add-on instruction and the language of the program. 12. The system of claim 1, further comprising a data context manager that tracks calls from user programs to add-on instructions. 13. The system of claim 12, further comprising a presentation component that displays add-on instruction context. 14. The system of claim 13, a particular add-on instruction context is selected from the displayed context by a user in order to observe instance data and passed references associated with the call of the particular add-on instruction. 15. The system of claim 13, the add-on instruction context includes information regarding at least one of a call to an add-on instruction, an initiator of the call, a location of the call, the add-on instruction called, a passed reference to a complex data type, a passed reference to an object, and an instance of data of an instruction. 16. The system of claim 13, the add-on instruction context is maintained to definitively set values in a particular add-on instruction context. 17. The system of claim 1, the add-on instruction is from a library of add-on instructions. 18. The system of claim 17, the library is based on one of a markup language, binary file, and an SQL database. 19. The system of claim 1, the add-on instruction is associated with one or more of a read, a write, and an execute privilege to limit access to the add-on instruction to authorized users. 20. The system of claim 1, nested instructions within the add-on instruction are automatically copied to a project and/or library when a parent instruction is copied to the project and/or library. 21. The system of claim 1, further comprising a component that resolves name conflicts between add-on instructions with similar names. 22. The system of claim 1, the add-on instruction is encrypted, encoded, and/or password protected to mitigate unauthorized access. 23. The system of claim 1, further comprising a component that automatically generates help for the add-on instruction. 24. The system of claim 23, the help is modified to include at least one of additional text, html, drawings, audio, and external links. 25. A method that facilitates instruction-call data context management, comprising:
26. The method of claim 25, further comprising displaying the add-on instruction call in a language determined by its parameter configuration. 27. The method of claim 25, further comprising using the data context in order to definitively set a value in a particular context. 28. A method that facilitates routine selection within an industrial device, comprising:
29. The method of claim 28, further comprising passing one of a value parameter and a reference parameter by reference to the add-on instruction. 30. The method of claim 29, the value parameter is one of an In and an Out parameter. 31. The method of claim 29, the reference parameter is an InOut parameter. 32. The method of claim 28, further comprising passing at least one of a complex data type and an object to the add-on instruction. 33. A method that facilitates generation of add-on instructions for employment within an industrial device, comprising:
34. The method of claim 33, further comprising utilizing a relaxed editing mode to relate and aggregate the routines, parameter, and state data. 35. The method of claim 34, the relaxed editing mode enables a user to write logic for routines, define parameters, and/or generate interfaces in any order including switching between writing logic, defining parameters, and generating interfaces at any time without compromising the add-on instruction. 36. The method of claim 34, the relaxed editing mode further enables the user to save an incomplete form of the add-on instruction and complete the add-on instruction at a later time. 37. A system that facilitates instruction-call management, comprising:
|