Bausteine unterhalb einer Safety Unit veröffentlichen - 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
Bausteine unterhalb einer Safety Unit veröffentlichen

Voraussetzung

Einleitung

Sie können mit TIA Portal Openness alle Bausteine (FC, FB, DB und IDB) veröffentlichen, die unter dem Programmbausteinordner der Safety Unit angelegt sind. Alle vom System generierten Bausteine in der Safety Unit sind von der Veröffentlichung ausgeschlossen und beim Zugriff wird eine Runtime-Ausnahme gemeldet.

Programmcode

Ändern Sie den folgenden Programmcode, um das veröffentlichte Attribut unter Safety Unit zu setzen:

Kopiert den nachfolgenden Programmcode in die Zwischenablage.

using System;

using Siemens.Engineering;

using Siemens.Engineering.HW;

using Siemens.Engineering.HW.Features;

using Siemens.Engineering.SW;

using Siemens.Engineering.SW.Blocks;

using Siemens.Engineering.SW.ExternalSources;

using Siemens.Engineering.SW.Tags;

using Siemens.Engineering.SW.Types;

using Siemens.Engineering.Hmi;

using HmiTarget = Siemens.Engineering.Hmi.HmiTarget;

using Siemens.Engineering.Hmi.Tag;

using Siemens.Engineering.Hmi.Screen;

using Siemens.Engineering.Hmi.Cycle;

using Siemens.Engineering.Hmi.Communication;

using Siemens.Engineering.Hmi.Globalization;

using Siemens.Engineering.Hmi.TextGraphicList;

using Siemens.Engineering.Hmi.RuntimeScripting;

using System.Collections.Generic;

using Siemens.Engineering.Compiler;

using Siemens.Engineering.Library;

using System.IO;

using System.Security;

using Siemens.Engineering.SW.Units;

namespace PublishingBlocksUnderSafetyUnit

{

internal class Program

{

private static void Main(string[] args)

{

PlcSafetyUnit safetyUnit = plcUnitProvider.UnitGroup.SafetyUnits.Find("SafetyUnit");

 var safetyBlock = safetyUnit.BlockGroup.Blocks.Find("Block_2");

//To set the access

safetyBlock.SetAttribute("Access", UnitAccessType.Published);

//To get the access

var access = safetyBlock.GetAttribute("Access");

}

}

}

Siehe auch

Projekt öffnen