Ignition Professional Development

Our freelance or sub-contracting development experience with Ignition SCADA projects have taught us the following techniques for efficient and productive development focusing on re-usability, maintainability and future modifications.

Ignition Project Organization:

  • Modular Design: Break down functionality into independent modules (windows, scripts, tag structures) for specific areas or equipment types.
  • Custom Script Libraries: Create libraries containing reusable functions and helper scripts.
  • Tag Providers: Utilize tag providers for dynamic tag generation based on configuration or external sources.

Component Templates and Nested Templates:

  • Create Templates: Design reusable window layouts and component configurations within templates.
  • Parameters: Define custom properties within templates to allow for dynamic behaviour based on passed values.
  • Template Hierarchy: Consider creating a hierarchy of templates for nested layouts or common base structures.

UDTs (User-Defined Types) and Nested UDTs:

  • Leverage UDTs: Define structured data types for entities with related data points.
  • Inheritance: Create child UDTs inheriting from parent UDTs for specialization.

Parameterized Windows:

  • Create reusable windows with dynamic behavior based on information passed during launch.
  • Define custom properties within the window’s root container to act as parameters.
  • Pass parameter values when opening the window to control its behavior or appearance.

Scripting Best Practices:

  • Modular Functions: Write well-defined, reusable functions for specific functionalities.
  • Meaningful Names: Use clear and descriptive names for variables and functions.
  • Commenting: Add comments explaining code logic for maintainability and collaboration.

Version Control:

  • Implement VCS (Git): Track changes, manage conflicts, and enable collaboration.
  • Branching Strategies: Isolate development work using branches.

Additional Techniques:

  • Project Templates: Create templates with pre-defined tags, windows (including component templates), and scripts for new projects.
  • Custom Vision Components: Develop custom Vision components for frequently used visualizations.
  • Unit Testing (Optional): Test individual components or scripts in isolation (if feasible).
  • Documentation: Document project decisions, tag structures, script functionalities, and component template usage.

Learning Resources:

  • Ignition User Manuals: Detailed information on tag configuration, data types, scripting, security, and component templates.
  • Inductive Automation Knowledge Base: Articles and resources on UDTs, scripting, best practices, troubleshooting, and component templates.
  • Online Communities: Forums, tutorials, and discussions on Ignition development, including component templates.
  • Ignition Training Courses: Consider attending courses offered by Inductive Automation or other providers, with some focusing on component templates.

Remember:

  • Adapt these techniques to your project’s specific needs and complexity.
  • Continuous improvement: Regularly evaluate your workflow and identify areas for improvement.
  • Collaboration: Establish clear roles and responsibilities within your development team.

By incorporating component templates into your development strategy and following these guidelines, you can significantly enhance the reusability, maintainability, and overall efficiency of your Ignition projects, especially for large-scale systems.

×

Hello!

Click one of our engineer below to chat on WhatsApp

× Call/ Text Anytime