Skip to content

Extend a Controller#

Overview#

From MES 11.2 onwards, when creating a new Automation Controller you can associate it with an existing Parent Automation Controller. This enables the Extendable Controller functionality that allows you to create controllers that inherit functionality from existing controllers without duplicating code or configurations.

This inheritance-based approach enables you to build upon existing controller definitions while adding new capabilities or customizations.

Key Concepts#

Controller Inheritance#

The following concepts define how controllers can build upon each other:

Concept Description
Parent Controller The base controller that provides inherited functionality
Child Controller The new controller that extends a parent controller
Virtual Elements Drivers and workflows from parent controllers that appear in child controllers but are not duplicated
Inheritance Chain Controllers can inherit from other controllers that already have parents, creating a multi-level hierarchy

Inheritance Rules#

When working with extendable controllers, certain rules govern how inheritance works:

  • Child controllers inherit all drivers and workflows from their parent(s) as virtual elements
  • Task versions must match between parent and child controllers
  • Parent elements cannot be modified or removed from child controllers
  • Runtime behavior treats the entire inheritance chain as a single controller