Wat is OPC A&E?
OPC A&E (OPC Alarms & Events) is de specificatie uit de OPC Classic-familie waarmee een server alarmen, procesgebeurtenissen en operatoracties via Microsoft COM/DCOM actief doorstuurt naar abonnerende clients, zodat alarmen uit verschillende besturingssystemen leveranciersonafhankelijk centraal kunnen worden getoond, bevestigd en vastgelegd. De OPC Foundation bracht de specificatie in 1999 uit als aanvulling op OPC DA, dat actuele proceswaarden levert. De laatste versie, 1.10, verscheen in oktober 2002. Binnen OT- en industriële automatiseringsomgevingen koppelt OPC A&E onder meer SCADA, HMI, DCS, historians en alarmservers aan elkaar.
Hoewel nieuwe projecten steeds vaker kiezen voor OPC UA, draait OPC A&E nog in veel bestaande installaties. Wie zo’n installatie beheert, beveiligt of migreert, moet het eventmodel, de alarmtoestanden en de DCOM-risico’s begrijpen.
🧠 Waar komt OPC A&E vandaan en wat doet het?
Binnen Industriële processen is alarm- en eventinformatie essentieel voor procesveiligheid, operatoroverzicht, incidentdetectie, storingsanalyse, auditing en Compliance. Voor 1999 moest elke SCADA- of alarmapplicatie een eigen koppeling bouwen naar elk besturingssysteem. OPC A&E standaardiseerde die koppeling op dezelfde manier als OPC DA dat eerder voor proceswaarden had gedaan.
Het belangrijkste verschil met OPC DA is het communicatiemodel. OPC DA levert waarden van tags; OPC A&E levert gebeurtenissen met een tijdstempel, bron, ernst en boodschap. De server bewaakt de condities zelf en stuurt alleen een melding als er iets verandert. Daardoor ontvangt de client nooit een alarm dat tussen twee leesrondes is opgekomen en weer verdwenen.
| Specificatie | Volledige naam | Levert | Typisch gebruik |
|---|---|---|---|
| OPC DA | Data Access | Actuele proceswaarden met kwaliteit en tijdstempel | HMI-schermen, Real-time koppelingen |
| OPC HDA | Historical Data Access | Opgeslagen tijdreeksen | Trends en rapportages uit historians |
| OPC A&E | Alarms & Events | Alarmen, toestandswijzigingen en events | Centrale alarmlijsten, eventlogs, audittrails |
Alle drie gebruiken COM/DCOM en werken daarom alleen op Windows. Dat is tegelijk de kracht (brede ondersteuning door leveranciers) en de grootste zwakte (beveiliging en firewallbeheer) van de standaard.
🔧 Hoe werkt het eventmodel van OPC A&E?
De architectuur is een client/server-model. Een OPC A&E-server verzamelt alarmen uit de onderliggende besturing, bijvoorbeeld een PLC die via Modbus, S7 Comm of Ethernet IP wordt uitgelezen, of een BACnet-netwerk in de gebouwautomatisering. De server vertaalt die naar een uniform model met de volgende bouwstenen:
-
Area - een hiërarchische, logische indeling van de installatie, bijvoorbeeld
Fabriek1.Ketelhuis - Source - het object dat een event veroorzaakt, zoals een tag of apparaat binnen een area
- Condition - een benoemde toestand van een source, zoals een niveaualarm
- Subcondition - de concrete trap binnen een condition, zoals HIGH_HIGH, HIGH, LOW of LOW_LOW
- Category - een door de server gedefinieerde groep events met dezelfde attributen
- Severity - een getal van 1 tot 1000 dat de urgentie uitdrukt
- Attributes - extra, per categorie gedefinieerde gegevens, zoals de actuele waarde of de grenswaarde
Een condition in OPC A&E is overigens iets anders dan Condition Monitoring: het eerste is een alarmtoestand, het tweede het bewaken van de technische staat van machines.
De specificatie kent drie soorten events:
| Eventtype | Betekenis | Bevestiging nodig? | Voorbeeld |
|---|---|---|---|
| Condition-related | Toestandswijziging van een alarmconditie | Ja, vaak | Tankniveau gaat van HIGH naar HIGH_HIGH |
| Tracking-related | Actie van een operator of client, met de ID van de actor | Nee | Operator wijzigt een setpoint of een regelparameter |
| Simple | Losse melding zonder toestand | Nee | Apparaatstoring, systeembericht, batchstart |
Niet elke server ondersteunt alle drie: sommige producten leveren bijvoorbeeld wel simple en condition events, maar geen tracking events. Controleer dat vooraf als u audittrails van operatoracties nodig hebt.
🔄 Welke toestanden kent een alarm in OPC A&E?
Een conditie heeft drie toestandskenmerken: enabled/disabled, active/inactive en acknowledged/unacknowledged. Bij elke wijziging stuurt de server een nieuw event naar alle abonnees, zodat elke alarmlijst hetzelfde beeld toont.
| Stap | Proces | Bevestigd? | Betekenis voor de operator |
|---|---|---|---|
| 1 | Normaal (inactive) | n.v.t. | Geen alarm |
| 2 | Active | Nee | Nieuw alarm, actie vereist |
| 3 | Active | Ja | Bevestigd, maar de procesafwijking bestaat nog |
| 4 | Inactive | Ja | Proces hersteld, alarm verdwijnt uit de lijst |
| 5 | Inactive | Nee | Proces hersteld voor bevestiging; alarm blijft staan tot iemand het bevestigt |
Bij een bevestiging legt de server vast wie bevestigde en met welk commentaar. Een shelved-toestand, waarmee een operator een storend alarm tijdelijk en geregistreerd parkeert, bestaat niet in OPC A&E. Shelving en suppression kwamen pas in OPC UA Alarms & Conditions, in lijn met ISA-18.2.
⚙️ Hoe verloopt een OPC A&E-abonnement in de praktijk?
Een OPC A&E-client werkt event-driven in plaats van met polling. Dat geeft een lagere netwerkbelasting en betere schaalbaarheid dan het periodiek uitlezen van alarmbits. Een typische verbinding verloopt zo:
- Verbinden - de client maakt via DCOM verbinding met de event server.
- Bladeren - de client vraagt de area- en sourcehiërarchie en de beschikbare categorieën op.
- Abonnement aanmaken - met een BufferTime (minimale tijd in milliseconden tussen callbacks, zodat events gebundeld worden) en een MaxSize (maximaal aantal events per callback).
- Filter instellen - op eventtype, categorie, severity-bereik, area en source.
- Events ontvangen - de server roept de client terug zodra er events zijn; een optionele KeepAlive laat in rustige perioden zien dat de verbinding nog leeft.
- Refresh - na een herstart vraagt de client alle actieve en onbevestigde condities opnieuw op, zodat de alarmlijst weer klopt.
- Bevestigen - de client stuurt een acknowledgement terug; de server verspreidt de toestandswijziging als condition event naar alle abonnees.
Een gangbare inrichting in een SCADA-koppeling is een BufferTime van bijvoorbeeld enkele honderden milliseconden en een filter dat events onder een bepaalde severity buiten de operatorlijst houdt maar wel naar de historian stuurt.
🏭 Waar wordt OPC A&E gebruikt?
OPC A&E is vooral te vinden waar alarmen uit systemen van verschillende leveranciers samenkomen:
- Procesindustrie - een DCS levert alarmen aan een centrale alarmanalyse of een MES voor productieanalyse.
- Energie en water - stations- en pompstoringen, waterkwaliteitsalarmen en telemetrie-events komen samen in één SCADA.
- Gebouwen - storingen van HVAC-installaties en energiebeheer worden doorgegeven aan een centrale meldkamer.
- Archivering - een Historian slaat alle events op voor root cause analysis, incidentonderzoek en compliance.
- Securitymonitoring - voor de security gaat alarm- en eventdata naar een SIEM of SOAR-platform, zodat ongebruikelijke operatoracties of alarmpatronen opvallen.
Connectivityproducten zoals Kepware bieden naast OPC DA ook een OPC A&E-interface. Deze integratie van operationele gebeurtenissen met IT-systemen is een klassiek voorbeeld van OT-convergentie.
🧩 Hoe past OPC A&E in alarmmanagement?
OPC A&E transporteert alarmen, maar maakt ze niet zinvoller. Goed alarmmanagement volgens ISA-18.2 en EEMUA 191 blijft nodig. De bekende streefwaarde is gemiddeld hooguit één alarm per tien minuten per operator; meer dan tien alarmen in tien minuten geldt als alarmoverstroming (alarm flood).
| Probleem | Oorzaak | Rol van OPC A&E |
|---|---|---|
| Alarmoverstroming | Stroomuitval, netwerk- of PLC-storing | MaxSize en BufferTime beperken de belasting van de client, maar niet het aantal alarmen |
| Gemiste kritieke alarmen | Te veel meldingen met dezelfde prioriteit | Severity en categorie maken filteren en sorteren mogelijk |
| Verlies van situational awareness | Trage of overbelaste HMI | Filtering per area en source houdt lijsten overzichtelijk |
| Onvolledige audit | Geen vastlegging van acties | Tracking events en acknowledger-ID leggen operatoracties vast |
Leg in de alarmfilosofie vast hoe de severity-schaal van 1 tot 1000 overeenkomt met de prioriteiten in uw HMI, bijvoorbeeld drie of vier niveaus. Zonder die afspraak hanteert elke server een eigen indeling.
🔐 Welke securityrisico’s heeft OPC A&E?
Omdat OPC A&E op DCOM draait, erft het de bekende cybersecurity-problemen daarvan. DCOM gebruikt TCP-poort 135 voor de Endpoint Mapper en daarna een dynamische poort, sinds Windows Vista standaard tussen 49152 en 65535. Bovendien maakt de server callbacks naar de client, dus verkeer loopt in beide richtingen.
| Risico | Gevolg |
|---|---|
| Ruime DCOM-rechten en zwakke authenticatie | Ongeautoriseerde verbinding of laterale beweging |
| Brede firewallregels door dynamische poorten | Grote aanvalsoppervlakte tussen zones |
| Event spoofing | Valse alarmen die operators misleiden |
| Alarmonderdrukking | Echte afwijkingen blijven onzichtbaar |
| Verouderde Windows-systemen | Ongepatchte kwetsbaarheden in de OPC-host |
Versleuteling zit niet in OPC A&E zelf; die hangt af van het DCOM-authenticatieniveau. Microsoft dwingt sinds 14 maart 2023 met KB5004442 (CVE-2021-26414) minimaal het niveau Packet Integrity af voor DCOM-activatie. Oude OPC-clients op ongepatchte Windows-versies werken daarna niet meer met een bijgewerkte server.
🛡️ Hoe beveiligt u een OPC A&E-koppeling?
Een praktische aanpak voor hardening, in lijn met IEC 62443 en NIST SP 800-82:
- Inventariseer alle OPC A&E-servers en -clients en de zones waarin ze staan, bijvoorbeeld volgens het Purdue Model.
- Houd DCOM binnen één zone met netwerksegmentatie; laat het niet over een IDMZ of naar kantoornetwerken lopen.
- Perk poorten in en sta op een industriële firewall alleen poort 135 en een smal dynamisch bereik toe tussen vaste IP-adressen.
- Beperk rechten - aparte serviceaccounts, alleen-lezen abonnementen waar mogelijk en geen anonieme toegang.
- Gebruik een tunnel of OPC UA-wrapper voor verkeer tussen zones, zodat alleen één versleutelde poort open hoeft.
- Patch de Windows-hosts via patchmanagement en test KB5004442-gedrag vooraf.
- Bewaak met logging en security monitoring, inclusief controle op onverwachte bevestigingen of uitgeschakelde condities.
Voor organisaties die onder de Cyberbeveiligingswet vallen, die op 15 augustus 2026 in werking trad, is aantoonbaar beheer van zulke legacy-koppelingen onderdeel van de zorgplicht. Frameworks als het NIST CSF helpen dat te structureren.
📡 Wat is het verschil tussen OPC A&E en OPC UA Alarms & Conditions?
OPC UA Alarms & Conditions, beschreven in deel 9 van de OPC UA-specificatie, is de functionele opvolger van OPC A&E. De kernbegrippen (condities, bevestiging, abonnementen en filters) zijn behouden, maar het datamodel is veel rijker.
| Eigenschap | OPC A&E | OPC UA Alarms & Conditions |
|---|---|---|
| Technologie | COM/DCOM, alleen Windows | Platformonafhankelijk, TCP of HTTPS |
| Firewall | Poort 135 plus dynamisch bereik | Eén vaste poort |
| Security | Afhankelijk van DCOM-instellingen | Ingebouwde authenticatie, ondertekening en versleuteling |
| Alarmtoestanden | Enabled, active, acknowledged | Daarnaast confirmed, shelved en suppressed |
| Datamodel | Area, source, category, attributes | Objectgeoriënteerd informatiemodel met alarmtypen |
| Cloud-integratie | Beperkt, via gateways | Direct of via PubSub |
🛠️ Hoe migreert u van OPC A&E naar moderne architecturen?
Veel organisaties vervangen OPC A&E geleidelijk door OPC UA of door event streaming via MQTT en een Unified Namespace. Een gangbare aanpak:
- Breng de alarmstromen in kaart - welke servers, categorieën en severity-indelingen worden gebruikt.
- Plaats een wrapper die OPC A&E-events als OPC UA Alarms & Conditions aanbiedt, zodat nieuwe clients al OPC UA spreken.
- Vervang clients zoals de Historian en de alarmanalyse stap voor stap.
- Valideer dat alarmtoestanden, tijdstempels en bevestigingen identiek doorkomen, vooral in gevalideerde omgevingen.
- Schakel DCOM uit zodra de laatste klassieke client verdwenen is.
Een migratie raakt de legacy-systemen die het langst meegaan; plan haar daarom samen met de vervanging van de besturing.
❓ Veelgestelde vragen
Is OPC A&E hetzelfde als OPC DA?
Nee, OPC A&E en OPC DA zijn aparte specificaties uit de OPC Classic-familie. OPC DA levert actuele proceswaarden van tags, terwijl OPC A&E alarmen en events doorstuurt met een bron, severity, tijdstempel en bevestigingsstatus. Veel servers bieden beide interfaces naast elkaar aan.
Wordt OPC A&E nog ondersteund?
OPC A&E wordt niet meer doorontwikkeld; versie 1.10 uit 2002 is de laatste. Veel leveranciers leveren nog wel OPC A&E-servers en -clients voor bestaande installaties. Voor nieuwe projecten adviseert de markt OPC UA Alarms & Conditions.
Waarom werkt mijn OPC A&E-client niet meer na Windows-updates?
Sinds de DCOM-hardening KB5004442, die op 14 maart 2023 definitief werd, weigert een bijgewerkte Windows-server DCOM-activatie onder het niveau Packet Integrity. Oude OPC A&E-clients op ongepatchte Windows-versies voldoen daar niet aan. Bijwerken, vervangen of een tunnel gebruiken lost dit op.
Wat betekent de severity in OPC A&E?
De severity in OPC A&E is een getal van 1 tot 1000 dat aangeeft hoe urgent een event is. De specificatie legt niet vast hoe dat getal op HMI-prioriteiten moet worden afgebeeld. Leg die vertaling daarom vast in de alarmfilosofie.
Kan OPC A&E door een firewall?
OPC A&E kan door een firewall, maar het is lastig omdat DCOM poort 135 plus een dynamisch poortbereik gebruikt en callbacks naar de client stuurt. Beter is OPC A&E binnen één zone te houden en verkeer tussen zones via een tunnel of OPC UA-gateway te laten lopen.
Ondersteunt OPC A&E shelving van alarmen?
Nee, OPC A&E kent alleen de toestanden enabled, active en acknowledged. Shelving en suppression zijn pas onderdeel van OPC UA Alarms & Conditions. In een OPC A&E-omgeving regelt de SCADA- of alarmapplicatie shelving zelf.
📌 Samengevat
OPC A&E maakte vanaf 1999 vendor-onafhankelijke alarm- en eventcommunicatie mogelijk tussen besturingen, SCADA, historians en alarmservers. Het eventmodel met areas, sources, condities, severity en bevestiging is nog steeds herkenbaar in OPC UA, maar de DCOM-basis maakt beveiliging en firewallbeheer lastig.
OPC A&E is de klassieke, op DCOM gebaseerde OPC-standaard voor alarmen en events: houd het binnen één zone, beheer de DCOM-risico’s en migreer stap voor stap naar OPC UA Alarms & Conditions.
