Access to TwinCAT variant management
This article describes access to the functions of the TwinCAT variant management via the Automation Interface. Access is possible from iTcSysManager14 (TCatSysManagerLib V 3.3.0.0). The following functions are supported:
- Adding project variants and groups of variants
- Setting the active variant
- Activate settings for variant management
1. Adding project variants and groups of variants
Code snippet (C#):
string variantConfig = "<?xml version=\"1.0\"?><ProjectVariants><Group><Name>Group1</Name><Member>Variant1</Member><Member>Variant2</Member></Group><Group><Name>Group2</Name><Member>Variant2</Member><Member>Variant3</Member></Group><Variant><Name>Variant1</Name></Variant><Variant><Name>Variant2</Name></Variant><Variant><Name>Variant3</Name></Variant></ProjectVariants>";
sysManager.ProjectVariantConfig = variantConfig;
2. Setting the active variant
Code snippet (C#):
sysManager.CurrentProjectVariant = "Variant3";
sysManager.CurrentProjectVariant = "[Group1]";
3. Activate settings for variant management
Code snippet (C#):
ITcSmTreeItem9 el2004_1 = (ITcSmTreeItem9)sysManager.LookupTreeItem("TIID^EtherCAT Master^EK1100-1^EL2004-1");
// activate the "disable" setting for the Variant Management
el2004_1.PvDisable = true;
// choose a variant and disable it only for this variant
sysManager.CurrentProjectVariant = "Variant3";
el2004_1.Disabled = DISABLED_STATE.SMDS_DISABLED;