Die Nachrichten- und Ereignisverarbeitung in cinnamon basiert derzeit auf dem TwinCAT 3 EventLogger. Dieser ist gut in das TwinCAT-Ökosystem integriert und ermöglicht die einfache Generierung von Alarmen und Meldungen auf der HMI.
Die Ereignisklassen in cinnamon sind daher im Wesentlichen nur Wrapper-Klassen um die TwinCAT 3 EventLogger-Objekte, die sie mit zusätzlichen Funktionen und den von cinnamon benötigten Schnittstellen ausstatten. Wie beim EventLogger wird zwischen Alarmen und Meldungen unterschieden. Während Meldungen einfach ausgelöst werden können und keine Reaktion des Bedieners erfordern, müssen Alarme vom Bediener quittiert werden. Bei Bedarf können für Alarme Stoppkategorien definiert werden, die in Kombination mit der OpMode-Verarbeitung von cinnamon dazu führen, dass eine Maschine mit unterschiedlichen Geschwindigkeiten stoppt.
Nachrichtendienste dienen zur Verwaltung von Alarmen und Ereignissen; diese Dienste verarbeiten ausgelöste Ereignisse eigenständig. Außerdem implementieren sie ein Beobachtermuster, das Benutzer abonnieren können. Jedes Mal, wenn ein Alarm ausgelöst oder zurückgesetzt wird, benachrichtigen sie alle Abonnenten durch Aufruf von Benachrichtigungsmethoden.
Die Nachrichten- und Ereignisverarbeitung umfasst drei cinnamon-Bibliotheken:
Message Interfaces
Message Services
Concrete Messages