Zugriff auf AS-i-Profil und Parameterattribute für virtuelle Slaves - TIAPortal

TIA Portal Openness: API für die Automatisierung von Engineering-Workflows

ft:publication_title
TIA Portal Openness: API für die Automatisierung von Engineering-Workflows
Product
TIAPortal
Version
V20
Publication date
01/2025
Language
de-DE
Zugriff auf AS-i-Profil und Parameterattribute für virtuelle Slaves

Voraussetzung

Verwendung

Das TIA Portal Openness unterstützt die folgenden zusätzlichen Parameter des AS-i-Profils für die virtuellen Slaves des CTT5 AS-i Slave unter Verwendung der StructuredData-Namen:

Name

Beschreibung

AsiProfileVirtualSlave1

Enthält die AS-i Profilparameter für den virtuellen Slave 1

AsiProfileVirtualSlave2

Enthält die AS-i Profilparameter für den virtuellen Slave 2

AsiProfileVirtualSlave3

Enthält die AS-i Profilparameter für den virtuellen Slave 3

Die AS-i-Slave-Parameter für die virtuellen Slaves sind im Folgenden aufgeführt:

Name

Beschreibung

AsiParameterVirtualSlave1

Enthält die AS-i-Parameter für den virtuellen Slave 1

AsiParameterVirtualSlave2

Enthält die AS-i-Parameter für den virtuellen Slave 2

AsiParameterVirtualSlave3

Enthält die AS-i-Parameter für den virtuellen Slave 3

Programmcode

Ändern Sie folgenden Programmcode, um die zusätzlichen Attribute von AS-i-Slaves abzurufen und einzustellen:

Kopiert den nachfolgenden Programmcode in die Zwischenablage.

DeviceItem slaveModule = ...;

var structuredDataNamesProfile = new[]{"AsiProfileVirtualSlave1", "AsiProfileVirtualSlave2",

"AsiProfileVirtualSlave3"};

var structuredDataNamesAsiParameter = new[]{"AsiParameterVirtualSlave1", "AsiParameterVirtualSlave2",

"AsiParameterVirtualSlave3"};

var attributeNamesProfile = new[]{ "AsiProfileID", "AsiProfileIO", "AsiProfileID2", "AsiProfileID1" };

string attributeNameAsiParameter = "AsiSlaveParameter";

foreach (var structuredDataName in structuredDataNamesProfile)

{

foreach (var attributeName in attributeNamesProfile)

{

StructuredData structuredData = (StructuredData)slaveModule.GetAttribute(structuredDataName);

//get

UInt32 attributeValue = (UInt32)structuredData.GetAttribute(attributeName);

}

//set

slaveModule.SetAttribute(attributeName, (UInt32)5);

}

foreach (var structuredDataName in structuredDataNamesAsiParameter)

{

StructuredData structuredData = (StructuredData)slaveModule.GetAttribute(structuredDataName);

//get

UInt32 attributeValue = (UInt32)structuredData.GetAttribute(attributeNameAsiParameter);

//set

slaveModule.SetAttribute(attributeName, (UInt32)5);