Delen via


De oplossingsversneller Verbonden factory configureren

Belangrijk

Zie Azure Industrial IoT voor de meest recente inhoud terwijl we dit artikel bijwerken.

De oplossingsversneller Verbonden factory toont een gesimuleerd dashboard voor een fictief bedrijf Contoso. Dit bedrijf heeft fabrieken op tal van wereldwijde locaties wereldwijd.

In dit artikel wordt Contoso als voorbeeld gebruikt om te beschrijven hoe u de topologie van een verbonden factory-oplossing configureert.

Configuratie van gesimuleerde factory's

Elke Contoso-fabriek heeft productielijnen die elk uit drie stations bestaan. Elk station is een echte OPC UA-server met een specifieke rol:

  • Montagestation
  • Teststation
  • Verpakkingsstation

Deze OPC UA-servers hebben OPC UA-knooppunten en OPC Publisher verzendt de waarden van deze knooppunten naar Connected Factory. Dit omvat:

  • Huidige operationele status, zoals het huidige energieverbruik.
  • Productie-informatie, zoals het aantal geproduceerde producten.

U kunt het dashboard gebruiken om in te zoomen op de contoso-factorytopologie van een globale weergave tot een weergave op stationsniveau. Het dashboard Verbonden factory maakt het volgende mogelijk:

  • De visualisatie van OEE- en KPI-cijfers voor elke laag in de topologie.
  • De visualisatie van de huidige waarden van OPC UA-knooppunten in de stations.
  • De aggregatie van de OEE- en KPI-cijfers van stationniveau tot globaal niveau.
  • De visualisatie van waarschuwingen en acties die moeten worden uitgevoerd als waarden specifieke drempelwaarden bereiken.

Topologie verbonden factory

De topologie van factory's, productielijnen en stations is hiërarchisch:

  • Het globale niveau heeft factory-knooppunten als onderliggende items.
  • De factory's hebben productielijnknooppunten als onderliggende items.
  • De productielijnen hebben stationknooppunten als onderliggende elementen.
  • De stations (OPC UA-servers) hebben OPC UA-knooppunten als onderliggende elementen.

Elk knooppunt in de topologie heeft een gemeenschappelijke set eigenschappen waarmee het volgende wordt gedefinieerd:

  • Een unieke id voor het topologieknooppunt.
  • Een naam.
  • Een beschrijving.
  • Een afbeelding.
  • De onderliggende elementen van het topologieknooppunt.
  • Minimum-, doel- en maximumwaarden voor OEE- en KPI-cijfers en de uit te voeren waarschuwingsacties.

Topologieconfiguratiebestand

Voor het configureren van de eigenschappen die in de vorige sectie worden vermeld, gebruikt de oplossing Verbonden factory een configuratiebestand met de naam ContosoTopologyDescription.json.

U vindt dit bestand in de broncode van de oplossing in de WebApp/Contoso/Topology map.

In het volgende codefragment ziet u een overzicht van het ContosoTopologyDescription.json configuratiebestand:

{
  <global_configuration>,
  "Factories": [
    <factory_configuration>,
    "ProductionLines": [
      <production_line_configuration>,
      "Stations": [
        <station_configuration>,
        <more station_configurations>
      ],
      <more production_line_configurations>
    ]
    <more factory_configurations>
  ]
}

De algemene eigenschappen van <global_configuration>, <factory_configuration>, <production_line_configuration>en <station_configuration> zijn:

  • Naam (typ tekenreeks)

    Hiermee definieert u een beschrijvende naam, die slechts één woord mag zijn voor het topologieknooppunt dat in het dashboard wordt weergegeven.

  • Beschrijving (type tekenreeks)

    Beschrijft het topologieknooppunt in meer detail.

  • Afbeelding (type tekenreeks)

    Het pad naar een afbeelding in de WebApp-oplossing dat wordt weergegeven wanneer informatie over het topologieknooppunt wordt weergegeven in het dashboard.

  • OeeOverall, OeePerformance, OeeAvailability, OeeQuality, Kpi1, Kpi2 (type <performance_definition>)

    Deze eigenschappen definiëren minimale, doel- en maximale waarden van de operationele figuur die wordt gebruikt om waarschuwingen te genereren. Deze eigenschappen definiëren ook de acties die moeten worden uitgevoerd als er een waarschuwing wordt gedetecteerd.

De <factory_configuration> items en <production_line_configuration> hebben een eigenschap:

  • GUID (type tekenreeks)

    Identificeert op unieke wijze het topologieknooppunt.

<factory_configuration> heeft een eigenschap:

  • Locatie (type <location_definition>)

    Hiermee geeft u op waar de fabriek zich bevindt.

<station_configuration> heeft eigenschappen:

  • OpcUri (type tekenreeks)

    Deze eigenschap moet worden ingesteld op de OPC UA-toepassings-URI van de OPC UA-server. Omdat deze globaal uniek moet zijn volgens OPC UA-specificatie, wordt deze eigenschap gebruikt om het stationtopologieknooppunt te identificeren.

  • OpcNodes, een matrix van OPC UA-knooppunten (type <opc_node_description>)

<location_definition> heeft eigenschappen:

  • Plaats (type tekenreeks)

    Naam van de plaats die het dichtst bij de locatie ligt

  • Land (type tekenreeks)

    Land/regio van de locatie

  • Breedtegraad (type dubbel)

    Breedtegraad van de locatie

  • Lengtegraad (type dubbel)

    Lengtegraad van de locatie

<performance_definition> heeft eigenschappen:

  • Minimum (type dubbel)

    Lagere drempelwaarde die de waarde kan bereiken. Als de huidige waarde onder deze drempelwaarde ligt, wordt er een waarschuwing gegenereerd.

  • Doel (type double)

    Ideale doelwaarde.

  • Maximum (type dubbel)

    Bovenste drempelwaarde die de waarde kan bereiken. Als de huidige waarde boven deze drempelwaarde ligt, wordt er een waarschuwing gegenereerd.

  • MinimumAlertActions (type <alert_action>)

    Definieert de set acties die kunnen worden uitgevoerd als reactie op een minimale waarschuwing.

  • MaximumAlertActions (type <alert_action>)

    Definieert de set acties die kunnen worden uitgevoerd als reactie op een maximale waarschuwing.

<alert_action> heeft eigenschappen:

  • Type (typ tekenreeks)

    Type van de waarschuwingsactie. De volgende typen zijn bekend:

    • AcknowledgeAlert: de status van de waarschuwing moet worden gewijzigd in bevestigd.
    • CloseAlert: alle oudere waarschuwingen van hetzelfde type mogen niet meer worden weergegeven in het dashboard.
    • CallOpcMethod: een OPC UA-methode moet worden aangeroepen.
    • OpenWebPage: er moet een browservenster worden geopend met aanvullende contextuele informatie.
  • Beschrijving (type tekenreeks)

    Beschrijving van de actie die wordt weergegeven in het dashboard.

  • Parameter (type tekenreeks)

    Parameters die vereist zijn om de actie uit te voeren. De waarde is afhankelijk van het actietype.

    • AcknowledgeAlert: geen parameter vereist.
    • CloseAlert: geen parameter vereist.
    • CallOpcMethod: de knooppuntgegevens en parameters van de OPC UA-methode die moeten worden aangeroepen in de indeling 'NodeId van bovenliggend knooppunt, NodeId van aan te roepen methode, URI van de OPC UA-server'.
    • OpenWebPage: de URL die moet worden weergegeven in het browservenster.

<opc_node_description> bevat informatie over OPC UA-knooppunten in een station (OPC UA-server). Knooppunten die geen bestaande OPC UA-knooppunten vertegenwoordigen, maar worden gebruikt als opslag in de berekeningslogica van Connected Factory, zijn ook geldig. Het heeft de volgende eigenschappen:

  • NodeId (type tekenreeks)

    Adres van het OPC UA-knooppunt in de adresruimte van het station (OPC UA-server). De syntaxis moet zijn zoals opgegeven in de OPC UA-specificatie voor een NodeId.

  • SymbolicName (type tekenreeks)

    De naam die moet worden weergegeven in het dashboard wanneer de waarde van dit OPC UA-knooppunt wordt weergegeven.

  • Relevantie (matrix van het type tekenreeks)

    Geeft aan voor welke berekening van OEE of KPI de waarde van het OPC UA-knooppunt relevant is. Elk matrixelement kan een van de volgende waarden zijn:

    • OeeAvailability_Running: de waarde is relevant voor de berekening van OEE-beschikbaarheid.
    • OeeAvailability_Fault: de waarde is relevant voor de berekening van OEE-beschikbaarheid.
    • OeePerformance_Ideal: de waarde is relevant voor de berekening van OEE-prestaties en is doorgaans een constante waarde.
    • OeePerformance_Actual: de waarde is relevant voor de berekening van OEE-prestaties.
    • OeeQuality_Good: de waarde is relevant voor de berekening van OEE-kwaliteit.
    • OeeQuality_Bad: de waarde is relevant voor de berekening van OEE-kwaliteit.
    • Kpi1: de waarde is relevant voor de berekening van KPI1.
    • Kpi2: de waarde is relevant voor de berekening van KPI2.
  • OpCode (type tekenreeks)

    Geeft aan hoe de waarde van het OPC UA-knooppunt wordt verwerkt in Time Series Insight-query's en OEE-/KPI-berekeningen. Elke Time Series Insight-query is gericht op een specifieke periode, een parameter van de query en levert een resultaat op. De OpCode bepaalt hoe het resultaat wordt berekend en kan een van de volgende waarden zijn:

    • Diff: verschil tussen de laatste en de eerste waarde in de periode.
    • Gem: het gemiddelde van alle waarden in de periode.
    • Som: de som van alle waarden in de periode.
    • Laatste: momenteel niet gebruikt.
    • Aantal: het aantal waarden in de periode.
    • Max: de maximale waarde in de periode.
    • Min: de minimale waarde in de periode.
    • Const: het resultaat is de waarde die is opgegeven door de eigenschap ConstValue.
    • SubMaxMin: het verschil tussen de maximale en de minimale waarde.
    • Tijdspanne: de periode.
  • Eenheden (type tekenreeks)

    Definieert een eenheid van de waarde voor weergave in het dashboard.

  • Zichtbaar (type booleaanse waarde)

    Hiermee bepaalt u of de waarde moet worden weergegeven in het dashboard.

  • ConstValue (type double)

    Als OpCodeConst is, is deze eigenschap de waarde van het knooppunt.

  • Minimum (type dubbel)

    Als de huidige waarde onder deze waarde valt, wordt er een minimale waarschuwing gegenereerd.

  • Maximum (type dubbel)

    Als de huidige waarde hoger wordt dan deze waarde, wordt er een maximumwaarschuwing gegenereerd.

  • MinimumAlertActions (type <alert_action>)

    Definieert de set acties, die kunnen worden uitgevoerd als reactie op een minimale waarschuwing.

  • MaximumAlertActions (type <alert_action>)

    Definieert de set acties, die kunnen worden uitgevoerd als reactie op een maximale waarschuwing.

Op stationsniveau ziet u ook Simulatieobjecten . Deze objecten worden alleen gebruikt voor het configureren van de connected factory-simulatie en mogen niet worden gebruikt om een echte topologie te configureren.

Hoe de configuratiegegevens worden gebruikt tijdens runtime

Alle eigenschappen die in het configuratiebestand worden gebruikt, kunnen worden gegroepeerd in verschillende categorieën, afhankelijk van hoe ze worden gebruikt. Deze categorieën zijn:

Uiterlijk

Eigenschappen in deze categorie definiëren het visuele uiterlijk van het dashboard Verbonden factory. Enkele voorbeelden:

  • Naam
  • Beschrijving
  • Installatiekopie
  • Locatie
  • Eenheden
  • Zichtbaar

Adressering van interne topologiestructuur

De web-app onderhoudt een interne gegevenswoordenlijst met informatie van alle topologieknooppunten. De eigenschappen Guid en OpcUri worden gebruikt als sleutels voor toegang tot deze woordenlijst en moeten uniek zijn.

OEE/KPI-berekening

De OEE/KPI-cijfers voor de connected factory-simulatie worden geparameteriseerd door:

  • De OPC UA-knooppuntwaarden die in de berekening moeten worden opgenomen.
  • Hoe de afbeelding wordt berekend op basis van de telemetriewaarden.

Connected Factory maakt gebruik van de OEE-formules zoals gepubliceerd door de http://www.oeefoundation.org.

OPC UA-knooppuntobjecten in stations maken tagging mogelijk voor gebruik in OEE/KPI-berekening. De eigenschap Relevantie geeft aan voor welk OEE/KPI-getal de waarde van het OPC UA-knooppunt moet worden gebruikt. De eigenschap OpCode definieert hoe de waarde wordt opgenomen in de berekening.

Afhandeling van waarschuwingen

Connected Factory ondersteunt een eenvoudig mechanisme voor het genereren van waarschuwingen op basis van een minimum-/maximumdrempel. Er zijn een aantal vooraf gedefinieerde acties die u kunt configureren als reactie op deze waarschuwingen. De volgende eigenschappen bepalen dit mechanisme:

  • Maximum
  • Minimum
  • MaximumAlertActions
  • MinimumAlertActions

Correleren met telemetriegegevens

Voor bepaalde bewerkingen, zoals het visualiseren van de laatste waarde of het maken van Time Series Insight-query's, heeft de WebApp een adresseringsschema nodig voor de opgenomen telemetriegegevens. De telemetrie die naar Connected Factory wordt verzonden, moet ook worden opgeslagen in interne gegevensstructuren. De twee eigenschappen die deze bewerkingen mogelijk maken, zijn op stationniveau (OPC UA-server) en OPC UA-knooppuntniveau:

  • OpcUri

    Identificeert (wereldwijd uniek) de OPC UA-server waaruit de telemetrie afkomstig is. In de opgenomen berichten wordt deze eigenschap verzonden als ApplicationUri.

  • NodeId

    Identificeert de knooppuntwaarde in de OPC UA-server. De indeling van de eigenschap moet zijn zoals opgegeven in de OPC UA-specificatie. In de opgenomen berichten wordt deze eigenschap verzonden als NodeId.

Zie Wat is OPC Publisher voor meer informatie over hoe de telemetriegegevens worden opgenomen in Connected Factory.

Voorbeeld: Hoe KPI1 wordt berekend

De configuratie in het ContosoTopologyDescription.json bestand bepaalt hoe OEE-/KPI-cijfers worden berekend. In het volgende voorbeeld ziet u hoe eigenschappen in dit bestand de berekening van KPI1 bepalen.

In Verbonden factory wordt KPI1 gebruikt om het aantal producten te meten dat in het afgelopen uur is gemaakt. Elk station (OPC UA-server) in de simulatie van de verbonden factory biedt een OPC UA-knooppunt (NodeId: "ns=2;i=385"), dat de telemetrie levert om deze KPI te berekenen.

De configuratie voor dit OPC UA-knooppunt ziet eruit als het volgende codefragment:

{
  "NodeId": "ns=2;i=385",
  "SymbolicName": "NumberOfManufacturedProducts",
  "Relevance": [ "Kpi1", "OeeQuality_Good" ],
  "OpCode": "SubMaxMin"
},

Met deze configuratie kunt u query's uitvoeren op de telemetriewaarden van dit knooppunt met behulp van Time Series Insights. De Time Series Insights-query haalt het volgende op:

  • Het aantal waarden.
  • De minimale waarde.
  • De maximale waarde.
  • Het gemiddelde van alle waarden.
  • De som van alle waarden voor alle unieke OpcUri (ApplicationUri), NodeId-paren in een bepaalde periode.

Een kenmerk van de knooppuntwaarde NumberOfManufactureredProducts is dat deze alleen toeneemt. Om het aantal producten te berekenen dat in de periode is geproduceerd, gebruikt Connected Factory de OpCodeSubMaxMin. Met de berekening wordt de minimumwaarde aan het begin van de periode en de maximumwaarde aan het einde van de periode opgehaald.

De OpCode in de configuratie configureert de berekeningslogica om het resultaat van het verschil tussen de maximum- en minimumwaarde te berekenen. Deze resultaten worden vervolgens onder tot op het hoofdniveau (globaal) verzameld en weergegeven in het dashboard.

Volgende stappen

Een voorgestelde volgende stap is om te leren hoe u de oplossing Connected Factory aanpast.