API de la SIMATIC Automation Tool para .NET framework
7.12 Interfaz ICPU
Ampliando el ejemplo anterior:
Network myNetwork = new Network();
IProfinetDeviceCollection scannedDevices;
Result retVal = myNetwork.ScanNetworkDevices(out scannedDevices);
if (!retVal.Succeeded)
foreach (IProfinetDevice dev in scannedDevices)
{
}
Este ejemplo atraviesa todas las interfaces PROFINET remotas y crea una lista de las
referencias de todas las estaciones descentralizadas de la red industrial.
Dado que el
aún el ejemplo para no buscar solo en las estaciones descentralizadas, sino también en
todos los módulos locales de cada estación.
230
return;
ICPU devAsCpu = dev as ICPU;
if (devAsCpu == null)
continue;
List<IRemoteInterface> decentalNets = devAsCpu.RemoteInterfaces;
List<string> orderNumbers = new List<string>();
foreach (IRemoteInterface net in decentalNets)
{
//-----------------------------------------------------------
// Inspeccionar la interfaz remota
//-----------------------------------------------------------
if (net.InterfaceType == RemoteInterfaceType.Profinet)
{
//-------------------------------------------------------
// Mirar en cada una de las estaciones descentralizadas
//-------------------------------------------------------
List<IBaseDevice> stations = net.Devices;
foreach (IBaseDevice station in stations)
{
orderNumbers.Add(station.ArticleNumber);
}
}
}
también admite la propiedad
IBaseDevice
, resulta fácil extender más
Modules
Guía de usuario de SIMATIC Automation Tool V3.1
Manual de producto, V3.1, 10/2017, A5E41848985-AB