main.tex 92 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301
  1. \documentclass[ngerman,11pt,a4paper]{article}
  2. \usepackage[utf8]{inputenc}
  3. \usepackage[top=2.5cm, right=2.5cm, bottom=2cm, left=2.5cm]{geometry}
  4. \usepackage[ngerman]{babel}
  5. \usepackage{amsmath}
  6. \usepackage{csquotes}
  7. \usepackage{amsfonts}
  8. \usepackage{amssymb}
  9. \usepackage{xcolor}
  10. \usepackage{tikz}
  11. \usepackage{graphicx,float}
  12. \usepackage{longtable,booktabs}
  13. \usepackage[titletoc,toc,page]{appendix}
  14. \usepackage{pdfpages}
  15. \usepackage{biblatex}
  16. \addbibresource{references/references.bib}
  17. % ------------- Zeilenabstand
  18. \usepackage{setspace}
  19. \onehalfspacing
  20. \renewcommand{\familydefault}{\sfdefault}
  21. \renewcommand{\appendixtocname}{Anhang}
  22. \renewcommand{\appendixpagename}{Anhang}
  23. \providecommand{\tightlist}{%
  24. \setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
  25. \author{jm}
  26. \title{Energiemonitoring zur Prozessanalyse in industriellen Anlagen am Beispiel von Kernschießmaschinen}
  27. \date{\today}
  28. \usepackage{hyperref}
  29. \begin{document}
  30. \newgeometry{margin=0in}
  31. \input{00-deckblatt}
  32. \clearpage
  33. \restoregeometry
  34. \section*{Abstract}
  35. \thispagestyle{empty}
  36. Die Lebensdauer einer industriellen Maschine hängt stark von der Qualität der Instandhaltung ab. Sogar schon bei der Qualitätskontrolle ab Werk ist es enorm wichtig, kleine Defekte zu erkennen und zu beseitigen. In Kooperation mit der \emph{Laempe Mössner Sinto GmbH} (LMS) wird mit dieser Arbeit ein Energie-Monitoring-System entwickelt, welches Einblicke in die Effizienz und Zuverlässigkeit der im Unternehmen hergestellten Kernschießmaschinen gibt. Es hilft somit, die Qualität der ausgelieferten Anlagen und deren Instandhaltung zu verbessern und die Lebensdauer der Maschinen zu verlängern.
  37. \setlength\parindent{0pt}
  38. % light red accent color
  39. \definecolor{color_red}{rgb}{0.886,0.035,0.09}
  40. \begin{tikzpicture}[remember picture,overlay]
  41. \fill[color_red] (-25mm,-167mm) rectangle (210mm,-170mm);
  42. \end{tikzpicture}
  43. %-------------- Inhaltsverzeichnis
  44. \newpage
  45. \hypersetup{pageanchor=true}
  46. \tableofcontents{}
  47. %-------------- Abbildungsverzeichnis
  48. \newpage
  49. \cleardoublepage\phantomsection
  50. \listoffigures
  51. %-------------- Tabellenverzeichnis
  52. \listoftables
  53. %-------------- Abkürzungsverzeichnis
  54. \section*{Abkürzungsverzeichnis}
  55. \begin{description}
  56. \item[SPS] Steuerung einer industriellen Anlage
  57. \item[CPU] alternativer Name der Steuerung einer industriellen Anlage
  58. \item[SCADA] Kontrolle, Überwachung und Steuerung von industriellen Anlagen
  59. \item[Box-PC] Computer, welcher in industriellen Anlagen verbaut wird
  60. \item[CT] Stromwandler
  61. \item[TCP/IP] Menge aller Protokolle bis zur Transportschicht des OSI-Referenzmodells
  62. \item[LMS] Die Firma \emph{Laempe Mössner Sinto GmbH}
  63. \item[LDC] Das Produkt \emph{Laempe Digital Cockpit}
  64. \item[DIY] selbstgebaut; im Gegensatz zu: industriell hergestellt
  65. \item[BE] big-endian; Binärzahl, bei der die höchstwertigen Bits zuerst kommen
  66. \item[ADC] Analog-Digital-Umsetzer
  67. \item[HMI] Human-Machine-Interface; Bedienoberfläche für eingewiesene Personen
  68. \item[I/O] Input/Output
  69. \item[AC] Alternating Current; Wechselstrom
  70. \item[DC] Direct Current; Gleichstrom
  71. \end{description}
  72. \setlength\parskip{1em}
  73. \newpage
  74. \section{Einleitung}\label{einleitung}
  75. Mit dieser Arbeit werden diverse Konzepte zur Überwachung maschineller
  76. Anlagen erforscht. Dabei soll ein autonomes Meldesystem aufgebaut
  77. werden, welches auf schleichende Probleme aufmerksam machen kann bzw.
  78. zur Verbesserung des Betriebsablaufes beiträgt. Es sollen im Speziellen die Versorgungsschnittstellen der Anlage instrumentiert werden, da dort am einfachsten ein Messwert mit einem Erwartungswert verglichen werden kann. Zudem ist die Versorgung der Anlage eine der größten Kostenfaktoren im Betrieb und somit auch der ideale Ansatzpunkt für Verbesserungen.
  79. Die LMS hat es sich als führender Anbieter von Kernschießmaschinen zur Aufgabe gemacht, die Effizienz ihrer Maschinen kontinuierlich zu verbessern.\cite{laempe_website} Mit steigenden Energiekosten wird es auch immer bedeutender, wie sich der Energieverbrauch ihrer Produkte über ihre gesamte Lebenszeit überwachen lässt. Die Verbrauchsüberwachung kann auch dazu beitragen, die Lebensdauer der Maschinen zu verlängern, da sie auf mögliche Probleme aufmerksam machen kann. Die Firma LMS hat sich daher entschlossen, den Funktionsumfang ihrer Produkte durch die Entwicklung eines Monitoring-Systems um diese Fähigkeiten zu erweitern.\footnote{Es ist bereits eine Speziallösung für Anlagen mit Siemenssteuerung von einem anderen Mitarbeiter entwickelt worden, deren Messwerte auf dem dazugehörigen Siemens HMI angezeigt werden konnten. Dieses bestehende System wurde nicht als Vorarbeit für diese Arbeit herangezogen, da dort keine Interoperabilität zwischen verschiedenen Steuerungstypen gegeben ist.}
  80. Dieses soll die Energieeffizienz der Kernschießmaschinen beim Kunden messen und analysieren. Die Ergebnisse sollen dabei so aufbereitet werden, dass sie für den Endnutzer einfach zu verstehen sind. Zudem können sie zur Wahl besserer Komponenten für neue Anlagenrevisionen beitragen.
  81. Ein zweiter Nutzen ist die genauere Erfassung von Fehlerzuständen. Die Kernschießmaschinen sind sehr komplex und bestehen aus vielen verschiedenen Baugruppen. Die LMS nutzt bereits Fehleranalysetools der Steuerungen, um Probleme mit den Anlagen zu identifizieren und zu beheben. Das Monitoring-System soll diesen Prozess so unterstützen, dass eine vorzeitige Erkennung und Meldungen von elektrischen Problemen bei der Qualitätskontrolle möglich ist und auch die Ursache für die Probleme besser ermittelt werden kann. Dieses Monitoring-System soll dabei helfen, die Anlagen in einem Zustand zu halten, in dem sie effizient arbeiten können und auch die Wartungskosten pro hergestelltem Kern möglichst gering bleiben.
  82. \newpage
  83. \section{Problemstellung}\label{problemstellung}
  84. \subsection{Bestandteile und Inhalt}
  85. Um ein Überwachungssystem aufzubauen, müssen Messwerte erhoben, analysiert und schließlich gespeichert werden. Der Fokus der Überwachung liegt vorerst auf der elektrischen Versorgung, aber es soll eine Möglichkeit geben, den Aufbau in Zukunft mit der Instrumentierung anderer Ressourcen zu erweitern. Es sind daher zuerst geeignete Sensoren zu suchen, dann diese mittels praktischer Versuche an Kernschießmaschinen auszutesten und schließlich an ein modulares System zur Datenübermittlung, -verarbeitung und -speicherung anzuknüpfen. Die Wahl der Sensoren beginnt im Kapitel \ref{loesungsansatz}, die Erschaffung des modularen Verarbeitungssystems folgt in Kapitel \ref{implementierung} und die praktischen Versuche sind im Kapitel \ref{praktische-versuche} dokumentiert. Die Ergebnisse werden zum Abschluss im Kapitel \ref{ergebnisse} zusammengefasst.
  86. \begin{figure}[H]
  87. \centering
  88. \includegraphics[width=16cm]{out/diagrams/uebersicht/uebersicht.png}
  89. \caption{Übersicht}
  90. \label{uebersicht}
  91. \end{figure}
  92. In Abbildung \ref{uebersicht} sind die vier elementaren Bestandteile des Systems hervorgehoben. Zuerst ist die Energiemessung zu betrachten. Bei ihr entstehen Messwerte des aktuellen elektrischen Verbrauchs und somit viele separate Datenpunkte, die einzeln
  93. betrachtet keine große Aussagekraft besitzen. Der folgende Schritt der
  94. Datenverarbeitung kombiniert die eingehenden Datenströme und extrahiert
  95. für den Endnutzer relevante Informationen. Für die Übertragung der Messwerte von den
  96. Sensoren zur datenverarbeitenden Einheit werden Kommunikationsbusse
  97. eingesetzt, welche bereits in den Kernschießmaschinen verwendet werden.
  98. Es soll nach Möglichkeit kein weiterer Feldbus einer anderen Technologie
  99. hinzugefügt werden, um die Kosten für die Integration möglichst gering
  100. zu halten. Einige der einzubauenden Sensoren können beispielsweise mit einer Punkt-zu-Punkt-Verbindung an einem IO-Link-Master
  101. angeschlossen werden, welcher wiederum über einen Feldbus zur zentralen Steuerung der Anlage kommuniziert. Diese
  102. Steuerungen wird dann wiederum über ein auf Ethernet basierendem
  103. Kommunikationsprotokoll mit der Datenverarbeitungseinheit kommunizieren.
  104. Die Aggregation der Messwerte soll unabhängig von Modell und Auslegung
  105. der Anlage möglich sein. Es werden verschiedene Wege in Betracht gezogen
  106. und schließlich einer von diesen Wegen an einer echten Anlage getestet. Die
  107. dafür notwendigen Komponenten sollten leicht in den bestehenden Aufbau
  108. integrierbar sein. Bezüglich der Datenaggregation sollen zunächst die Einspeisung, die
  109. Ströme einzelner Baugruppen und der Status der zentralen Steuerung der
  110. Anlage erfasst werden. Der dabei verwendete Messintervall sollte klein
  111. genug sein, um zwischen den Prozessschritten der Anlage unterscheiden zu
  112. können. Während der Entwicklung werden die Rohwerte der
  113. Messungen direkt gesichert, um den Analyseschritt in Zukunft mit Hilfe von echten Messwerten in einer simulierten Umgebung weiterentwickeln zu können.
  114. Je präziser die Datenverarbeitung dann im Produktivsystem angesetzt ist, desto weniger Daten müssen während der Laufzeit der Anlage beim Kunden gespeichert werden. Die zu speichernden Werte bestehen aus periodisch wiederkehrenden Datenpunkten der einzelnen Prozessschritte,
  115. welche in einer zeitbasierten Datenbank abgelegt werden müssen. Nur wenn
  116. ein Datenpunkt ein festgelegtes Limit überschreitet, ist eine direkte
  117. Meldung des Wertes notwendig. Um eine zuverlässige Speicherung zu
  118. garantieren, sollten die Daten möglichst auf mehreren unabhängigen
  119. Systemen gespeichert werden. Hierzu wird auch ein modularer Aufbau verwendet,
  120. der es ermöglicht, unterschiedlichste Speichermethoden gleichzeitig
  121. zu verwenden. Schließlich ist auch eine Löschungsstrategie notwendig, um
  122. zu garantieren, dass immer genug Speicherplatz für neue Daten vorhanden
  123. ist.
  124. Die Visualisierung kann Dank der vorbereiteten Datensätze im einfachsten
  125. Fall aus dem Plotten der Messreihen aus einer der Datenbanken bestehen.
  126. \subsection{Relation zu bestehenden Systemen}
  127. Diese Arbeit gibt einen Überblick über die Möglichkeiten der Überwachung von Anlagen. Dabei wird auch ein System entwickelt, welches die Datenverarbeitung, Speicherung und Visualisierung von Messwerten übernimmt. Eigene Marktrecherchen haben ergeben, dass es auch andere All-in-one-Lösungen für die Überwachung von Anlagen gibt. Diese Systeme sind jedoch meistens kostenintensiv, intransparent oder erfüllen nicht alle Anforderungen. Zudem ist es oft schwierig diese an die bestehenden Datenbusse der Anlagen anzupassen, was auch zu einem erhöhten Installationsaufwand führen kann. Die LMS hat sich daher entschlossen, ein eigenes System zu entwickeln, welches die Anforderungen der Firma erfüllt. Dieses System soll auch in Zukunft weiterentwickelt werden, um auch neu entstehende Anforderungen an die Produkte der Firma zu erfüllen.
  128. Die Visualisierung der Messwerte wird in dieser Arbeit bewusst weniger thematisiert, da dafür in Zukunft die bestehende Visualisierungslösung der Firma verwendet werden soll. Diese Visualisierungslösung namens \emph{Laempe-Digital-Cockpit} (LDC) ist bereits in der Lage, andere Parameter der Kernschießmaschinen zu visualisieren.\cite{laempe_website} Sie soll in Zukunft auch die Messwerte des Energie-Monitoring-Systems anzeigen können.
  129. \newpage
  130. \section{Grundlagen}\label{grundlagen}
  131. \subsection{Kernschießmaschinen}\label{kernschieuxdfmaschinen}
  132. Kernschießmaschinen sind industrielle Anlagen, welche in der
  133. Gießereiindustrie eingesetzt werden. Sie stellen aus Sand und
  134. Bindemitteln Kerne her, welche beim Gießvorgang die Hohlräume der zu
  135. gießenden Form ausfüllen. Nach ihrer Verwendung werden die Kerne wieder
  136. aufgelöst und der Sand als Rohmaterial wieder dem Prozess zugeführt.
  137. Abbildung \ref{fig:Herstellung von Kernen} zeigt den Materialfluss rund um eine Kernschießmaschine mit den dafür wichtigsten Komponenten.
  138. \begin{figure}[H]
  139. \centering
  140. \includegraphics[width=14cm]{out/diagrams/kernschießmaschinen/Kernschießmaschinen.png}
  141. \caption{Prozessroutine des Kernschießens}
  142. \label{fig:Herstellung von Kernen}
  143. \end{figure}
  144. Zuerst wird dem Mischer eine dosierte Menge Sand aus dem Sandsilo zugeführt. Danach wird dieser mit einem Bindemittel vermengt. Optional werden auch je nach Rezept Additive wie Holzfasern oder Asche beigemischt. Das Gemisch wird anschließend über einen Sandsender oder Sandtransportwagen in den Sandtrichter geladen. Aus dem Trichter wird dann erneut eine genau dosierte Menge Sand in die Schusskartusche abgegeben. Nun wird die Schusskartusche mit Druckluft befüllt und kurz danach mit bis zu $100\mathrm{bar}$ über die Schießplatte in den Kernkasten entleert. Alternativ zu selbst härtenden Bindemitteln des Cold-Box-Verfahrens, kann der Kernkasten im Hot-Box-Verfahren begast und erwärmt werden, um den Aushärtungsprozess des Bindemittels chemisch anzustoßen. Nach dem Schuss wird der fertige Kern mit einem Auswerfer aus dem Kernkasten entfernt und dann der Maschine entnommen. Danach können weitere Schritte wie das Entgraten des Kerns erfolgen, bis der Kern letztendlich in einer Gussform als Platzhalter für einen negativen Raum seine Aufgabe erfüllt. Abschließend kann er wieder chemisch aufgelöst werden, sodass der Sand als Recyclingmaterial wieder dem ursprünglichen Prozess beigefügt werden kann.\cite{DeGarmo2004-vf}
  145. Die Kernschießmaschinen von LMS arbeiten komplett automatisch und können
  146. mehrere Kerne pro Minute herstellen. Sie bestehen, wie viele
  147. industrielle Anlagen, aus einer zentralen Steuereinheit und einer
  148. Vielzahl von Sensoren und Aktoren. Diese Steuerung ist auch für die anderen Produkte verantwortlich. Je nach Ausführung können in einer Anlage Mischer, Sandsichter, Binder- und Additivversorgung oder auch andere Systeme von einer zentralen Stelle gesteuert werden. Mit ihr wird eine festgelegte
  149. Sequenz von Schritten orchestriert, die unter anderem das Ein-/Ausfahren
  150. des Kernkastens, das Schließen der Seitenteile oder das Befüllen der
  151. Kernform beinhalten können.
  152. \subsection{Topologie von industriellen Anlagen}\label{topologie}
  153. Die Kommunikationsstruktur von industriellen Anlagen wird in drei Ebenen
  154. unterteilt: die Feldebene, die Kontrollebene und die Überwachungsebene.
  155. In der Feldebene befinden sich alle Sensoren (Temperatursensoren,
  156. Lagesensoren, etc.) und Aktoren wie Motoren, Ventile und Leuchtsignale.
  157. Sie sind über Feldbusverteiler beziehungsweise Interfacemodulen mit dem entsprechenden Feldbus verbunden. Bei LMS werden neben traditionellen, analog an Interfacemodule verbundenen Komponenten auch solche eingesetzt, die das Punkt-zu-Punkt-Protokoll \emph{IO-Link} unterstützen. Dieses eliminiert die Zuordnung der Komponenten zu individuellen I/O-Kanälen und ermöglicht eine einfache und flexible Konfiguration.
  158. Mit der Verwendung von \emph{IO-Link} sind in allen Teilen der Anlagen IO-Link-Master verbaut, welche über Feldbusse wie \emph{ProfiNet} oder \emph{EtherNet/IP} mit der CPU kommunizieren. Auf diese Infrastruktur kann für die Umsetzung der Energiemessung zurückgegriffen werden.
  159. Die Kontrollebene besteht aus einer oder mehreren
  160. speicherprogrammierbaren Steuerungen (SPS) und ihren untergeordneten
  161. Interfacemodulen. Das Zentralmodul einer SPS wird mit einer
  162. echtzeitfähigen Sprache programmiert und kommuniziert mit den
  163. Interfacemodulen, welche über Erweiterungskarten den verschiedenen
  164. Geräten im Feld verbunden sind. Je nach Hersteller kommen hier
  165. unterschiedliche Bussysteme zum Einsatz. Deren speziellen Eigenschaften
  166. sind im folgenden Kapitel näher erläutert. Wenn mehrere Steuerungen sich
  167. gegenseitig überwachen oder deren Einstellungen über ein
  168. Human-Maschine-Interface (HMI) angepasst werden können, dann geschieht
  169. dies in der Überwachungsebene. Sie ist die höchste
  170. Automatisierungsebene, die sich am Ort der Anlage befindet. In ihr
  171. befindet sich auch der Hauptteil des konzipierten Energieüberwachungssystems.
  172. \subsection{Industrielle Steuerungen}
  173. Industrielle Steuerungen sind das Herzstück industrieller Anlagen. Sie sind für die Steuerung der Anlage zuständig und kommunizieren mit den Sensoren und Aktoren über verschiedene Bussysteme. Früher wurden hauptsächlich sogenannte \emph{PLCs} (programmable logic controller, deutsch: SPS) eingesetzt. Diese sind spezielle echtzeitfähige Steuerungen, die mit ihrer eigenen Programmiersprache programmiert werden. Durch die stetige Entwicklung der Technik und die damit verbundene Verfügbarkeit von leistungsfähigeren und kostengünstigeren Hardwarekomponenten spricht man heute eher von \emph{CPUs} (central processing unit), da die Steuerung nicht nur für die Steuerung der Anlage zuständig ist, sondern auch ein Teil der höher gelegenen Kontrollsysteme (\emph{SCADA}) ist. Somit muss eine moderne Steuerung auch Protokolle wie HTTP oder OPC UA unterstützen, die den Austausch mit anderen Systemen auf Basis der Internetprotokolle ermöglichen.
  174. \subsection{Feldbusverteiler}
  175. Mit dem Aufkommen der Industrie 4.0 und der damit verbundenen Vernetzung von Anlagen und Maschinen wurde die Kommunikation zwischen den einzelnen Komponenten immer wichtiger. Um die Kommunikation zwischen den einzelnen Komponenten zu vereinfachen und zu beschleunigen, wurden sogenannte \emph{Feldbusverteiler} entwickelt. Diese sind dezentrale Geräte, die über verschiedene Schnittstellen mit den einzelnen Komponenten verbunden sind. Sie sind in der Lage, die Daten der einzelnen Komponenten zu sammeln und an die nächsthöhere Steuerung weiterzuleiten. Im Vergleich zu \emph{Interfacemodulen}, welche meist direkt neben der CPU angebracht sind, wird mit ihnen der Verdrahtungsaufwand zwischen den einzelnen Komponenten und der Steurung reduziert. Die Kommunikation zwischen den einzelnen Feldbusverteilern und der Steuerung erfolgt über ein Bussystem wie zum Beispiel \emph{EtherNet/IP} oder \emph{ProfiNet}.
  176. \subsection{Feldbussysteme}\label{feldbusses}
  177. In den Anlagen werden verschiedene Arten von Datenbussen verwendet. Die für dieses Projekt relevantesten sind \emph{ProfiNet}, \emph{EtherNet/IP} und \emph{CC-Link IE}. ProfiNet ist ein Feldbus, der von der \emph{Profibus Nutzerorganisation e.V.} (PNO) entwickelt wurde. Er ist ein offener Feldbus, der auf dem \emph{Ethernet}-Standard basiert. Er kommt hauptsächlich in CPUs von Siemens zum Einsatz.
  178. EtherNet/IP ist ein Feldbus, der von der \emph{Rockwell Automation} entwickelt wurde. Er ist für die Übertragung von Daten mit hoher Geschwindigkeit und hoher Zuverlässigkeit ausgelegt. Da er auf den \emph{TCP/IP}-Standards TCP und UDP aufbaut, ist er im Gegensatz zu ProfiNet mit allen normalen Ethernet-Teilnehmern kompatibel. Jedoch kann er dadurch nicht das strikte Echtzeitkriterium einhalten, so wie es bei ProfiNet der Fall ist. Er kommt hauptsächlich in CPUs von Allen-Bradley zum Einsatz.
  179. CC-Link IE ist ein Feldbus, der von der \emph{CC-Link Partner Association} entwickelt wurde. Er wird bevorzugt in industriellen Steuerungen und Roboterarmen von Mitsubishi eingesetzt. Er basiert auf Gigabit-Ethernet. Er ist jedoch nicht so weit verbreitet wie die anderen beiden Feldbusse.\cite{Brooks2001EtherNetIPIP, mitsubishi_cpu, Profinet}
  180. \subsection{Strommessung}
  181. Die Stromstärke ist eine der wichtigsten Messgrößen in der Energieüberwachung. Sie ist die Grundlage für die Berechnung der Energiekosten und der Energieeffizienz. Die Strommessung wird in der Regel über Stromzähler durchgeführt. Die Stromstärke wird dabei über einen \emph{Hall-Sensor} gemessen. Dieser ist in der Lage, die magnetische Flussdichte zu messen, welche parasitär durch die Energieübertragung in elektrischen Leitern erzeugt wird. Der Energiefluss wird dann über die Stromstärke und die Spannung berechnet. Die Spannung wird meist über einen \emph{Spannungsteiler} gemessen. Dieser besteht aus zwei Widerständen, die in Reihe geschaltet sind. Der Spannungsteiler ist in der Lage, die Spannung zu reduzieren, sodass sie mit einem \emph{Analog-Digital-Wandler} (ADC) erfasst werden kann.
  182. Alternativ zum Hall-Sensor kann auch eine andere Art von Stromsensoren verwendet werden. Diese ist speziell in der Lage, die Stromstärke eines Wechselstromsystems (AC) zu messen. Sie besteht aus einem \emph{Stromwandler} (CT) und einem Messwiderstand im Sekundärstromkreis des Wandlers. Die Spannung über diesen Widerstand ist proportional zur Stromstärke. Sie wird dann ebenfalls über einen ADC gemessen. Mit dieser Anordnung kann auch die Phasenlage des Stroms erfasst werden. Für die Messung eines DC Stroms im Kleinstspannungsbereich ist der Stromwandler nicht erforderlich und der Messwiderstand kann direkt im Strompfad angebracht werden.
  183. \newpage
  184. \section{Lösungsansatz}\label{loesungsansatz}
  185. Die abstrakten Ideen aus der Problemstellung können nun in konkrete
  186. Lösungen umgesetzt werden. Zuerst werden die benötigten Aufgaben
  187. bestimmten Komponenten zugeordnet. Anschließend werden die einzelnen
  188. Komponenten genauer beschrieben. Die Aufgaben des Energieüberwachungssystems können in fünf Kategorien unterteilt werden: die Datenerfassung, -übertragung, -verarbeitung, Datenspeicherung und -visualisierung. Darstellung \ref{fig:datenfluss} zeigt die
  189. Zuordnung der Aufgaben zu den Komponenten, welche in den folgenden Abschnitten beschrieben werden.
  190. \begin{figure}[H]
  191. \centering
  192. \includegraphics[width=16cm]{out/diagrams/datenfluss/Datenfluss.png}
  193. \caption{Bestandteile des Projekts}
  194. \label{fig:datenfluss}
  195. \end{figure}
  196. \subsection{Erfassung der Messwerte}\label{erfassung-der-messwerte}
  197. Die Aufgabe der Energiemessung wird durch zwei Gruppen von Sensoren
  198. übernommen. Die erste Gruppe besteht aus Sensoren, die an der
  199. elektrischen Einspeisung der Kernschießmaschine angebracht sind und den
  200. kompletten Momentanverbrauch der Anlage messen. Die zweite Gruppe
  201. besteht aus Sensoren, die an den einzelnen Komponenten der Anlage
  202. angebracht sind und den Verbrauch dieser Komponenten messen. Die
  203. Messwerte der beiden Gruppen werden über den internen Datenbus der
  204. Anlage an die zentrale Steuerung der Anlage übertragen.
  205. In der ersten Gruppe werden für jede Phase jeweils Strom,
  206. Spannung und deren Beziehung
  207. zueinander erfasst. Dies ergibt ein komplettes Bild über den momentanen
  208. Leistungsbedarf und den Energieverbrauch der Anlage über einen längeren
  209. Zeitraum. Wie in der Darstellung \ref{fig:datenfluss} zu sehen ist, wird die zweite Sensorgruppe an der \(24\mathrm{V}\) Kleinstspannungsverteilung
  210. angebracht. Diese Entscheidung wurde getroffen, da die
  211. Steuerspannungsversorgung nach firmeninterner Beobachtung viel
  212. anfälliger für Überlastereignisse ist als die Versorgung der
  213. Niederspannungsverbraucher. Dazu kommt, dass fast jeder Teil der Anlage
  214. über diese Versorgung zumindest indirekt gesteuert wird und ein
  215. Fehlerfall der \(24\mathrm{V}\)-Versorgung definitiv Auswirkungen auf
  216. die Funktionalität der Anlage hat. Die Spannung wird direkt an der
  217. \(24\mathrm{V}\)-Versorgung gemessen.
  218. Die Spannung an den einzelnen Komponenten wird nicht gemessen,
  219. da diese sich im Idealfall nicht stark
  220. von der Versorgungsspannung unterscheidet. Potenzielle Abweichungen
  221. skalieren bei konstantem Leitungswiderstand auch proportional zu den
  222. Strömen, was ein weiterer Grund ist sie nur an einer Stelle zu messen.
  223. Es ist auch nicht praktikabel den Strom jeder einzelnen Komponente zu
  224. messen, deshalb findet die Messung an einer zentralen Stelle statt, wo
  225. mehrere Komponentengruppen mit wenigen dutzend Strommesskanälen
  226. abgedeckt werden können. Eine solche für die Messung der
  227. \(24\mathrm{V}\)-Versorgung geeignete Stelle ist in den
  228. Kernschießanlagen kurz vor den Potenzialklemmen, nämlich dort wo sich die
  229. elektronischen Untersicherungen befinden. Diese Sicherungen werden,
  230. neben den Netzteilen selbst, in der
  231. Implementierung für die Messung der Ströme
  232. instrumentiert.
  233. Die meistverwendete Punkt-zu-Punkt-Verbindung in LMS-Anlagen ist \emph{IO-Link}. Dieses Protokoll ist
  234. für die Kommunikation mit den Sensoren und Aktoren der Anlage
  235. vorgesehen. Die Sensoren werden zusätzlich über den IO-Link-Master mit Strom versorgt und können so ohne eigene Potenzialverteilung betrieben werden. Die
  236. hinzugefügten Energiesensoren werden vorzugsweise auch in dieses
  237. Sensornetzwerk integriert. Wenn dies so umgesetzt wird, dann werden die Signale, so wie bei allen anderen Sensoren auch,
  238. über Feldbusverteiler beziehungsweise Interfacemodule mit
  239. IO-Link-Master-Karten zu der zentralen Steuerung der Anlage geleitet. Alternativ zur \emph{IO-Link}-Einbindung ist es aber auch möglich, die Energiesensoren direkt in die Feld- oder Steuerungsebene einzubinden, wenn jene über eine entsprechende Schnittstelle verfügen.
  240. Unabhängig vom Feldbussystem muss eine Abfragerate der Energiesensoren
  241. festgelegt werden. Als Referenz wird hier die Taktzeit einer
  242. ausgelasteten zentralen Steuerung herangezogen, welche für die Zwecke
  243. der hinzukommenden Übermittlerrolle der Messwerte zum
  244. Verarbeitungssystem nicht unterschritten werden kann. Als oberes Limit
  245. ist bei den zu betrachtenden Kernschießanlagen die Dauer der kürzesten
  246. Aktorbetätigung der Kernschießmaschine anzusetzen. Nach Aussage der
  247. zuständigen Mitarbeiter ist dafür ein Intervall von \(100\mathrm{ms}\)
  248. ausreichend. Zudem werden von \emph{IO-Link}-Teilnehmern die Prozessdaten bereits periodisch übertragen. Beim \emph{IFM DF2101} $24\mathrm{V}$ IO-Link Sensorsystem ist beispielsweise eine minimale Zykluszeit von \(20\mathrm{ms}\) angegeben (siehe Anhang \ref{ifm_df2101}). In Kombination der beiden Grenzwerte wird daher je nach
  249. Möglichkeit ein Messintervall von \(20\mathrm{ms}\) angestrebt. Somit
  250. können auch sehr kurzzeitige Fehlerereignisse erkannt und analysiert
  251. werden.
  252. \subsection{Übertragung der
  253. Messwerte}\label{uxfcbertragung-der-messwerte}
  254. Für dieses Projekt ist neben den bereits genannten Standardkomponenten
  255. der Energiesensoren, Feldbusverteilern und Interfacemodulen auch ein
  256. Computer (Box-PC) hinzuzufügen, welcher die Aufgabe der Verarbeitung der
  257. aufgenommenen Messwerte übernimmt. Ein solcher Computer ist in der Lage
  258. mit der zentralen Steuerung (SPS) der Anlage zu kommunizieren und von
  259. ihren Daten abzufragen. Die SPS ist daher so zu konfigurieren, dass sie
  260. zusätzlich zu ihrer Hauptaufgabe, die Anlage zu steuern, auch die Daten
  261. von den neu hinzugefügten Sensoren an den PC weiterreicht. Hierzu können
  262. zwei Methoden verwendet werden: Zum einen kann der Box-PC die von der
  263. SPS gesammelten Messwerte periodisch abfragen und zum anderen kann die
  264. SPS die Daten selbstständig zum PC übermitteln. In beiden Fällen muss
  265. jedoch ein Protokoll verwendet werden, welches von beiden Seiten
  266. unterstützt wird. Es ist beispielsweise nicht möglich ProfiNet Pakete
  267. über eine Ethernetverbindung mit einem generischen Linuxkernel zu
  268. empfangen, weil dieser nicht in der Lage ist, das Echtzeitkriterium des
  269. ProfiNet-Standards zu erfüllen. \cite{Profinet}
  270. Zusätzlich zu den Energiewerten werden, wie in der Darstellung zu sehen
  271. ist, auch Statusinformationen der Kernschießmaschine gesammelt und
  272. ausgewertet. Diese helfen die Strommessungen in einem zeitlichen Kontext
  273. einzuordnen und somit die Qualität der Analyse zu verbessern. Als
  274. Datenpunkte sind hier hauptsächlich die Befehle der Steuerung an die
  275. Aktoren von Interesse, denn diese Informationen lassen sich gut zu den
  276. Verbräuchen der aktivierten Komponenten zuordnen. Während der
  277. Datenverarbeitung kann somit beispielsweise gezielt nach
  278. Anlagenzuständen gefiltert werden oder es können langfristige
  279. Veränderungen der Energieverbräuche auf einen bestimmten Prozessschritt
  280. zurückgeführt werden.
  281. \subsection{Datenverarbeitung}\label{datenverarbeitung}
  282. Die Verarbeitung findet auf einer PC-Plattform statt, da PC-Systeme
  283. flexibel eingesetzt und die verwendete Software ohne großen Aufwand modifiziert werden kann. Die Verarbeitung der Daten
  284. kann dadurch beispielsweise vor Ort auf einem industriellen Box-PC, oder
  285. auch über eine Netzwerkverbindung aus einem entfernten Datenzentrum
  286. durchgeführt werden. Aus sicherheitstechnischen Gründen darf die
  287. verwendete Plattform nur lesend über die erhobenen Messwerte verfügen
  288. und nicht in den Prozessablauf der Anlage eingreifen. Das in Abbildung \ref{fig:datenfluss} dargestellte Programm \emph{PLC-Connector} ist mit dieser Arbeit eigens für jenen Zweck entwickelt worden und wird in Kapitel \ref{verarbeitungssoftware} näher erläutert.
  289. Die Datenverarbeitung findet in zwei Schritten statt. Zunächst wird
  290. periodisch mit den datenüber-mittelnden Komponenten des
  291. Aufbaus kommuniziert, um dann anschließend die erhaltenen Datensätze für
  292. die weitere Verarbeitung bereitzuhalten. Diese abzufragenden Komponenten können zum
  293. Beispiel die zentrale Steuerung der Kernschießmaschine, einzelne
  294. Interfacemodule oder netzwerkfähige Energiesensoren aus dem vorherigen
  295. Kapitel sein.
  296. Jeder Datensatz wird unabhängig von seiner Quelle abgefragt und mit einem genauen Zeitstempel der PC-Plattform bestückt, um bei der folgenden asynchronen
  297. Weiterverarbeitung die zeitlich korrekte Reihenfolge der Datensätze der
  298. verschiedenen Quellen sicherzustellen. Im zweiten Schritt werden die Datensätze in einem zentralen Prozess weiterverarbeitet. Es werden zuerst die Verbrauchswerte wie Ströme und Spannungen mit dem
  299. Status der Anlagensteuerung kombiniert, sodass pro Prozessschritt ein
  300. wiederholbares Datenbild entsteht. Ein Prozessschritt ist ein zeitlich
  301. begrenzter Zustand der Anlage, in der eine bestimmte Gruppe von Aktoren
  302. aktiviert wird. Dies kann beispielsweise das Einfahren des Auswerfers
  303. sein. Die elektrischen Verbräuche während dieses Schrittes können so als
  304. Funktion der Schrittnummer und Zeit nach Beginn des Vorgangs dargestellt
  305. werden. Das Datenbild besteht dann im einfachsten Fall aus
  306. Versorgungsleistungen und Strömen der $24\mathrm{V}$-Kanäle.
  307. Nun werden die Differenzen des Datenbildes zwischen dem Ausgangszustand
  308. und der Aktivierung eines Prozessschrittes berechnet. Dadurch können die
  309. Verbräuche der jeweiligen Prozessschritte von den Standbyströmen der
  310. inaktiven Komponenten der Anlage isoliert werden. Der Ausgangszustand
  311. sollte zeitlich nah am Messvorgang liegen, damit äußere Einflüsse
  312. wie Versorgungsspannung und Umgebungstemperatur einen geringeren Effekt
  313. auf die berechneten Differenzen haben.
  314. Anschließend werden je nach erwartetem zeitlichem Verlauf des Datenbilds
  315. einige Aggregationen wie Durchschnitt, Maximum oder Varianz einzelner
  316. Kanäle erhoben, um schließlich einfache Kennzahlen für diesen Schritt zu
  317. erhalten. Damit können nun Aussagen wie beispielsweise
  318. „Das für den Auswerfer zuständige Ventil hat beim zweitausendsten Aktivieren einen zusätzlichen Strom von $1,3\mathrm{A}$ verbraucht.“
  319. getroffen werden.
  320. \subsection{Datenspeicherung}\label{datenspeicherung}
  321. Die Ergebnisse der Datenverarbeitung werden in einer Datenbank gespeichert. Die Datenbank ist in der Lage, die errechneten Kennzahlen in einer Zeitserie zu speichern, sodass die Veränderung der Kennzahlen über einen längeren Zeitraum beobachtet werden kann. Sie ermöglicht es außerdem, die Daten in verschiedenen Formaten auszugeben, sodass die Ergebnisse in Tabellen, Diagrammen oder auch als Rohdaten exportiert werden können. Die Datenbank ist so aufgebaut, dass sie auch von anderen Programmen verwendet werden kann. So können beispielsweise die Daten in einem Programm zur statistischen Auswertung weiterverarbeitet werden, um die Ergebnisse zu visualisieren oder um statistische Kennzahlen zu berechnen.
  322. \subsection{Visualisierung}\label{visualisierung}
  323. Je nach Bedarf kann die Visualisierung vor Ort am HMI der Anlagen
  324. erfolgen oder auch beispielsweise über einen Browser auf einem
  325. entfernten PC. Hier besteht kein großer Entwicklungsbedarf, da eine Einbindung an ein bestehendes System der LMS angedacht ist. Für eine offene Verwendung des \emph{PLC-Connector} kann auch auf fertige universelle Visualisierungssoftware zurückgegriffen werden. Die einzige Einschränkung ist, dass diese mit der gewählten Datenbank kommunizieren können muss.
  326. \newpage
  327. \section{Implementierung}\label{implementierung}
  328. \subsection{Wahl des
  329. 480V-Sensorsystems}\label{wahl-des-480v-sensorsystems}
  330. Für die Suche nach einem geeigneten $480\mathrm{V}$-Sensorsystem wurden im Rahmen der Problemstellung diverse Kriterien definiert, die das Sensorsystem erfüllen muss. Diese Kriterien sind:
  331. \begin{itemize}
  332. \item
  333. Die Messwerte müssen unmittelbar abrufbar sein.
  334. Es ist wichtig, dass die Messung
  335. in Echtzeit erfolgt, damit die Verarbeitung und Filterung der Daten
  336. vor der Speicherung erfolgen kann. Zudem bietet dies die Möglichkeit,
  337. zeitnah Alarme aus möglichen Fehlzuständen zu generieren. Wenn die
  338. Messung nicht in Echtzeit erfolgt, dann müssten die Messwerte
  339. periodisch von der aufzeichnenden Hardware abgefragt werden. Das würde
  340. die Reaktionszeit des Systems verlangsamen und mögliche kurzzeitige
  341. Störungen könnten nicht erkannt werden.
  342. \item
  343. Das System muss für industrielle Umgebungen geeignet sein.
  344. Da das System in einem industriellen Umfeld eingesetzt werden soll,
  345. muss es für diese Umgebung geeignet sein. Es muss eine lange
  346. wartungsarme Lebensdauer aufweisen, um mögliche Reparaturaufwände
  347. gering zu halten. Zudem muss es die entsprechenden Zertifizierungen
  348. besitzen, um die Sicherheit des Systems zu gewährleisten. Diese umfassen beispielsweise die Schutzart gegen Wasser und Fremdkörper oder die CE-Kennzeichnung.
  349. \item
  350. Das Sensorsystem muss über einen Feldbus, TCP/IP oder IO-Link
  351. angesprochen werden können.
  352. Da das System in ein bestehendes Feldbusnetzwerk eingebunden werden
  353. soll, muss es über einen standardisierten Feldbus verfügen. Dieser
  354. muss von der bestehenden Hardware unterstützt werden. In diesem Fall
  355. müssen die Feldbusprotokolle ProfiNet und EtherNet/IP unterstützt
  356. werden. Alternativ kann das System über IO-Link angesprochen werden.
  357. Dieser Standard ist in der Industrie weit verbreitet und wird auch in
  358. allen Anlagen von LMS eingesetzt.
  359. \item
  360. Das System muss internationale Versorgungsspannungen unterstützen.
  361. Da das System in Kernschießanlagen eingesetzt wird, die in verschiedene
  362. Länder exportiert werden, muss das System eine Vielzahl an
  363. Einspeisespannungen unterstützen. Da die Versorgungsspannung in den
  364. USA beispielsweise $480\mathrm{V}$ beträgt, muss das System auch diese Spannung
  365. unterstützen. Eine Ausnahme bildet das kanadische Stromnetz, welches
  366. $600\mathrm{V}$ verwendet. Für dieses Netz kann dem System später um eine
  367. entsprechende Spannungsumsetzung erweitert werden.
  368. \end{itemize}
  369. \pagebreak
  370. Unter diesen Kriterien sind nun diverse Energieerfassungssysteme
  371. recherchiert worden. Die Ergebnisse der Recherche sind in folgenden
  372. Tabelle zusammengefasst:
  373. \begin{longtable}[]{@{}lllll@{}}
  374. \toprule
  375. \begin{minipage}[b]{0.16\columnwidth}\raggedright\strut
  376. Hersteller\strut
  377. \end{minipage} & \begin{minipage}[b]{0.19\columnwidth}\raggedright\strut
  378. Artikelnummer\strut
  379. \end{minipage} & \begin{minipage}[b]{0.18\columnwidth}\raggedright\strut
  380. Beschreibung\strut
  381. \end{minipage} & \begin{minipage}[b]{0.12\columnwidth}\raggedright\strut
  382. Feldbus\strut
  383. \end{minipage} & \begin{minipage}[b]{0.14\columnwidth}\raggedright\strut
  384. Kennwerte\strut
  385. \end{minipage}\\
  386. \midrule
  387. \endhead
  388. \begin{minipage}[t]{0.16\columnwidth}\raggedright\strut
  389. Schneider Electric\strut
  390. \end{minipage} & \begin{minipage}[t]{0.19\columnwidth}\raggedright\strut
  391. \href{https://www.se.com/de/de/download/document/PLSED310037EN_Web/}{EM3550}\strut
  392. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright\strut
  393. Energiemonitor\strut
  394. \end{minipage} & \begin{minipage}[t]{0.12\columnwidth}\raggedright\strut
  395. Modbus RTU\strut
  396. \end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedright\strut
  397. 600V AC\strut
  398. \end{minipage}\\
  399. \begin{minipage}[t]{0.16\columnwidth}\raggedright\strut
  400. Mitsubishi\strut
  401. \end{minipage} & \begin{minipage}[t]{0.19\columnwidth}\raggedright\strut
  402. \href{https://www.mitsubishielectric.com/fa/products/pmng/ems/pmerit/ecomonitor/ecomonitor_Light_2.html}{EMU4-HD1-MB}\strut
  403. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright\strut
  404. Energiemonitor\strut
  405. \end{minipage} & \begin{minipage}[t]{0.12\columnwidth}\raggedright\strut
  406. Modbus RTU / Modbus TCP / CC-Link / CC-Link IE\strut
  407. \end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedright\strut
  408. 480V AC\strut
  409. \end{minipage}\\
  410. \begin{minipage}[t]{0.16\columnwidth}\raggedright\strut
  411. Mitsubishi\strut
  412. \end{minipage} & \begin{minipage}[t]{0.19\columnwidth}\raggedright\strut
  413. \href{http://dl.mitsubishielectric.com/dl/fa/document/catalog/ems/ym-c-y-0753/y0753b1706.pdf}{EMU4-HM1-MB}\strut
  414. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright\strut
  415. modularer Energiemonitor\strut
  416. \end{minipage} & \begin{minipage}[t]{0.12\columnwidth}\raggedright\strut
  417. Modbus RTU, CC-Link\strut
  418. \end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedright\strut
  419. 480V AC\strut
  420. \end{minipage}\\
  421. \begin{minipage}[t]{0.16\columnwidth}\raggedright\strut
  422. Siemens\strut
  423. \end{minipage} & \begin{minipage}[t]{0.19\columnwidth}\raggedright\strut
  424. \href{https://mall.industry.siemens.com/mall/en/de/Catalog/Products/10289825?activeTab=ProductInformation\#Application}{7KT
  425. PAC1200}\strut
  426. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright\strut
  427. mehrkanäliger Strommesssser\strut
  428. \end{minipage} & \begin{minipage}[t]{0.12\columnwidth}\raggedright\strut
  429. LAN/IP\strut
  430. \end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedright\strut
  431. 40/63 A\strut
  432. \end{minipage}\\
  433. \begin{minipage}[t]{0.16\columnwidth}\raggedright\strut
  434. Siemens\strut
  435. \end{minipage} & \begin{minipage}[t]{0.19\columnwidth}\raggedright\strut
  436. \href{https://assets.new.siemens.com/siemens/assets/api/uuid:c9a01401-9ad0-424b-9621-b6ee730381f9/energiemonitoring-quick-selection-guide-brochure.pdf}{AI
  437. Energy Meter} +
  438. \href{https://support.industry.siemens.com/cs/mdm/109773210?c=152724557707\&lc=de-WW}{ET
  439. 200SP IM 155-6 MF HF}\strut
  440. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright\strut
  441. Energiemeterkarte auf einem Interfacemodul\strut
  442. \end{minipage} & \begin{minipage}[t]{0.12\columnwidth}\raggedright\strut
  443. ProfiNet + EtherNet/IP\strut
  444. \end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedright\strut
  445. 480V AC\strut
  446. \end{minipage}\\
  447. \begin{minipage}[t]{0.16\columnwidth}\raggedright\strut
  448. Janitza\strut
  449. \end{minipage} & \begin{minipage}[t]{0.19\columnwidth}\raggedright\strut
  450. \href{https://www.janitza.de/umg-801.html}{UMG801}\strut
  451. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright\strut
  452. Power Analyser, modular erweiterbar\strut
  453. \end{minipage} & \begin{minipage}[t]{0.12\columnwidth}\raggedright\strut
  454. Modbus RTU / TCP + OPC UA\strut
  455. \end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedright\strut
  456. 480V AC\strut
  457. \end{minipage}\\
  458. \begin{minipage}[t]{0.16\columnwidth}\raggedright\strut
  459. Hager\strut
  460. \end{minipage} & \begin{minipage}[t]{0.19\columnwidth}\raggedright\strut
  461. \href{https://www.hager.ch/loesungen/zweckbau/schutzgeraete/leistungsschalter-h3+/423497.htm}{h3+}\strut
  462. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright\strut
  463. Leistungsschalter\strut
  464. \end{minipage} & \begin{minipage}[t]{0.12\columnwidth}\raggedright\strut
  465. Modbus RTU\strut
  466. \end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedright\strut
  467. 480V AC\strut
  468. \end{minipage}\\
  469. \begin{minipage}[t]{0.16\columnwidth}\raggedright\strut
  470. Eaton\strut
  471. \end{minipage} & \begin{minipage}[t]{0.19\columnwidth}\raggedright\strut
  472. \href{https://datasheet.eaton.com/datasheet.php?model=192145\&locale=de_DE}{NZM2
  473. PXR25}\strut
  474. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright\strut
  475. Leistungsschalter\strut
  476. \end{minipage} & \begin{minipage}[t]{0.12\columnwidth}\raggedright\strut
  477. Modbus RTU\strut
  478. \end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedright\strut
  479. 690V 100A AC\strut
  480. \end{minipage}\\
  481. \bottomrule \\
  482. \caption{Anbieter von Energieerfassungssystemen} \footnote{Stand: 10.2021}
  483. \label{480v_suppllier}
  484. \end{longtable}
  485. Zum Zeitpunkt der Recherche waren keine Energiesensoren mit
  486. IO-Link-Schnittstelle für den industriellen Gebrauch auffindbar. IO-Link
  487. ist jedoch ein Standard, der in der Industrie immer mehr an Bedeutung
  488. gewinnt und in Zukunft sicherlich auch in diesem Bereich eingesetzt
  489. werden wird. Sein Vorgänger, Modbus RTU, wird nicht in den zu
  490. betrachtenden Kernschießmaschinen eingesetzt.\cite{EPLAN_113638_LFB65,EPLAN_113620_LL20} Daher können alle
  491. Ergebnisse aus der Tabelle mit diesem Feldbus ausgeschlossen werden.
  492. Ähnlich dazu ist auch CC-Link IE nicht wünschenswert, da es nur bei Anlagen
  493. mit Mitsubishi Steuerungen zum Einsatz kommt. Dieser Feldbustyp
  494. existiert zwar unter den von LMS hergestellten Produkten; wird aber
  495. bei Kernschießmaschinen nur sehr selten eingesetzt. Außerdem
  496. unterstützen alle Mitsubishisteuerungen das EtherNet/IP-Protokoll
  497. \cite{mitsubishi_cpu}, auf das durch seine weit verbreitete Verwendung in
  498. Rockwell-Anlagen eher zurückgegriffen werden sollte. Somit können in allen Mitsubishi Anlagen die EtherNet/IP-Sensoren verwendet werden.
  499. Zudem sind die Steuerungen vom Typ MELSEC iQ-R um eine ProfiNet-Karte erweiterbar, was auch den Einsatz des ProfiNet Feldbusses möglich macht.
  500. Als letzte Einschränkung ist noch zu erwähnen, dass die meisten der hier aufgeführten Sensoren nur für $480\mathrm{V}$ AC ausgelegt sind. Dies ist für die meisten Kernschießmaschinen ausreichend, da diese in der Regel mit $480\mathrm{V}$ AC (US) oder $400\mathrm{V}$ AC (EU) betrieben werden. Für diejenigen Maschinen, die mit $690\mathrm{V}$ AC betrieben werden, ist der Eaton NZM2 PXR25 die einzige Option.
  501. Die nächstbeste Kommunikationsschnittstelle, die zur direkten Anbindung
  502. an den datenverarbeitenden Computer geeignet ist, ist unter den
  503. Ergebnissen das OPC-UA vom \emph{UMG801} Power Analyser. Dieses
  504. Protokoll ist ein offenes Protokoll das auf TCP/IP basiert, wodurch die
  505. softwareseitige Anbindung an diese Einheit möglich wäre. Nach einigen Tests
  506. wurde festgestellt, dass die Kommunikation mit dem \emph{UMG801} Power Analyser über OPC-UA nur mit Hilfe einer zusätzlichen Software möglich ist. Diese Software ist jedoch nicht kostenlos und muss separat erworben werden.
  507. Zudem liefert der UMG801 Power Analyser die Echtzeit-Messdaten nur über seine Modbus RTU Schnittstelle und nicht über OPC-UA. Daher ist die Kommunikation mit dem \emph{UMG801} Power Analyser über OPC-UA nicht wünschenswert.
  508. Der letzte Strommesser
  509. mit TCP/IP-Anbindung ist der \emph{7KT\ PAC1200} von Siemens. Dabei
  510. handelt es sich aber nur um eine Reihe von Stromsensoren. Die somit fehlende Erfassung der Spannung lässt keine Berechnung der Momentanleistung der
  511. Einspeisung zu. Hier wäre eine zusätzliche synchrone Erfassung der Drehspannungen nötig, welche wiederum Kosten und Komplexität mit sich bringt. Daher ist auch dieser Strommesser nicht wünschenswert.
  512. Die letzte in Betracht kommende Option ist die Verwendung der Siemens
  513. AI-Energy-Meter-Karte auf einem Siemens Interfacemodul. Diese Karte
  514. erfüllt alle Kriterien und ist nebenbei eine sehr platzsparende
  515. Messeinrichtung. Sie unterstützt einen Messbereich von \(480\mathrm{V}\)
  516. und ist somit für den internationalen Einsatz geeignet. Als
  517. Interfacemodul, an dem die Energiemeterkarte aufgesteckt wird, wird das
  518. \emph{ET\ 200SP\ IM\ 155-6\ MF\ HF} eingesetzt. Dieses ist die
  519. \emph{Multi-Fieldbus} Variante eines regulären Interfacemoduls und kann
  520. dadurch in ProfiNet- und EtherNet/IP-Netzwerken eingesetzt werden.
  521. Dadurch ist es möglich, die Messwerte an die entsprechende zentrale
  522. Steuerung von Siemens oder Allen-Bradley zu übermitteln.
  523. \subsection{Wahl des 24V-Sensorsystems}\label{wahl-des-24v-sensorsystems}
  524. Für die Erfassung der Kleinstspannungskreise wird ein $24\mathrm{V}$-Strommesssystem eingesetzt. Dieses kann direkt im Netzteil, in den Untersicherungen oder als separate Einheit vor den Potenzialklemmen der Anlage platziert werden. Je nach Anordnung können so mehr oder weniger aufgeteilte Ströme erfasst werden. Die Messung der Spannung ist bei allen drei Varianten nur einmal notwendig, da es auf den kurzen Wegen im Schaltschrank zu keinen signifikanten Spannungsabfällen kommt. Mit Hilfe der Spannung und der Stromstärke kann die Leistungsaufnahme der einzelnen Komponentengruppen hinter den Stromsensoren berechnet werden. Wie bei der Messung der Einspeisung sind verschiedene Messsysteme in Betracht gezogen worden. Die Auswahlkriterien sind dabei die gleichen wie bei der Messung der Einspeisung. Die Messsysteme, die in Betracht gezogen wurden, sind in Tabelle \ref{24v_supplier} aufgeführt. Die Messsysteme sind in der Tabelle nach den Kriterien aufgelistet, die für die Integration in die bestehende Potenzialverteilung in LMS Kernschießanlagen wichtig waren.
  525. \begin{longtable}[]{@{}lllllll@{}}
  526. \toprule
  527. \begin{minipage}[b]{0.06\columnwidth}\raggedright
  528. Hersteller\strut
  529. \end{minipage} & \begin{minipage}[b]{0.18\columnwidth}\raggedright
  530. Artikelnummer\strut
  531. \end{minipage} & \begin{minipage}[b]{0.14\columnwidth}\raggedright
  532. Bustyp\strut
  533. \end{minipage} & \begin{minipage}[b]{0.09\columnwidth}\raggedright
  534. Nennstrom in A\strut
  535. \end{minipage} & \begin{minipage}[b]{0.08\columnwidth}\raggedright
  536. Kanäle max.\strut
  537. \end{minipage} & \begin{minipage}[b]{0.18\columnwidth}\raggedright
  538. Spannungsmessung\strut
  539. \end{minipage}\tabularnewline
  540. \midrule
  541. \endhead
  542. \begin{minipage}[t]{0.06\columnwidth}\raggedright
  543. Block\strut
  544. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright
  545. \href{https://www.block.eu/de_DE/produktvariante/eb-io-link/}{EB-IO-LINK}\strut
  546. \end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedright
  547. IO-Link\strut
  548. \end{minipage} & \begin{minipage}[t]{0.08\columnwidth}\raggedright
  549. 40\strut
  550. \end{minipage} & \begin{minipage}[t]{0.08\columnwidth}\raggedright
  551. 40x1\strut
  552. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright
  553. azyklisch\strut
  554. \end{minipage}\tabularnewline
  555. \begin{minipage}[t]{0.06\columnwidth}\raggedright
  556. Block\strut
  557. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright
  558. \href{https://www.block.eu/de_DE/produktvariante/eb-io-link1/}{EB-IO-LINK1}\strut
  559. \end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedright
  560. IO-Link\strut
  561. \end{minipage} & \begin{minipage}[t]{0.08\columnwidth}\raggedright
  562. 40\strut
  563. \end{minipage} & \begin{minipage}[t]{0.08\columnwidth}\raggedright
  564. 16x1\strut
  565. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright
  566. azyklisch\strut
  567. \end{minipage}\tabularnewline
  568. \begin{minipage}[t]{0.06\columnwidth}\raggedright
  569. Wago\strut
  570. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright
  571. \href{https://www.wago.com/de/stromversorgungen/elektronischer-schutzschalter/p/787-1668_000-080\#downloads}{787-1668/000-080}\strut
  572. \end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedright
  573. IO-Link\strut
  574. \end{minipage} & \begin{minipage}[t]{0.08\columnwidth}\raggedright
  575. 80\strut
  576. \end{minipage} & \begin{minipage}[t]{0.08\columnwidth}\raggedright
  577. 1x8\strut
  578. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright
  579. azyklisch $\pm 100\mathrm{mV}$\strut
  580. \end{minipage}\tabularnewline
  581. \begin{minipage}[t]{0.06\columnwidth}\raggedright
  582. Rockwell\strut
  583. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright
  584. \href{https://www.rockwellautomation.com/de-at/products/hardware/allen-bradley/circuit-and-load-protection/electronic-circuit-protection-modules/1694-electronic-circuit-protection.html}{1694-PFD1244}\strut
  585. \end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedright
  586. IO-Link\strut
  587. \end{minipage} & \begin{minipage}[t]{0.08\columnwidth}\raggedright
  588. 40\strut
  589. \end{minipage} & \begin{minipage}[t]{0.08\columnwidth}\raggedright
  590. 16x1 / 16x2\strut
  591. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright
  592. azyklisch $\pm 10\mathrm{mV}$\strut
  593. \end{minipage}\tabularnewline
  594. \begin{minipage}[t]{0.06\columnwidth}\raggedright
  595. ifm\strut
  596. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright
  597. \href{https://www.ifm.com/de/de/product/DF2101?tab=documents}{DF2101}\strut
  598. \end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedright
  599. IO-Link\strut
  600. \end{minipage} & \begin{minipage}[t]{0.08\columnwidth}\raggedright
  601. 40\strut
  602. \end{minipage} & \begin{minipage}[t]{0.08\columnwidth}\raggedright
  603. 16x1 / 8x2\strut
  604. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright
  605. zyklisch $\pm 10\mathrm{mV}$\strut
  606. \end{minipage}\tabularnewline
  607. \begin{minipage}[t]{0.08\columnwidth}\raggedright
  608. E-T-A\strut
  609. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright
  610. \href{https://www.e-t-a.de/produkte/intelligente_stromverteilung/controlplex/controlplex_dinrail/controlplex_dinrail_em12d_tio/}{EM12D-TIO-000-DC24V-40A}\strut
  611. \end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedright
  612. IO-Link\strut
  613. \end{minipage} & \begin{minipage}[t]{0.08\columnwidth}\raggedright
  614. 40\strut
  615. \end{minipage} & \begin{minipage}[t]{0.08\columnwidth}\raggedright
  616. 16x1 / 8x2\strut
  617. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright
  618. zyklisch\strut
  619. \end{minipage}\tabularnewline
  620. \begin{minipage}[t]{0.08\columnwidth}\raggedright
  621. E-T-A\strut
  622. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright
  623. \href{https://www.e-t-a.de/produkte/intelligente_stromverteilung/controlplex/controlplex_dinrail/controlplex_system_cpc12_profinet_ethercat_ethernetip_modbus_tcp/}{ControlPlex®
  624. System CPC12}\strut
  625. \end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedright
  626. PROFINET, EtherCAT, EtherNET/IP, Modbus TCP\strut
  627. \end{minipage} & \begin{minipage}[t]{0.08\columnwidth}\raggedright
  628. 40\strut
  629. \end{minipage} & \begin{minipage}[t]{0.08\columnwidth}\raggedright
  630. \strut
  631. \end{minipage} & \begin{minipage}[t]{0.18\columnwidth}\raggedright
  632. \strut
  633. \end{minipage}\tabularnewline
  634. \bottomrule \\
  635. \caption{Anbieter von 24V Strommesssystemen} \footnote{Stand: 10.2021}
  636. \label{24v_supplier}
  637. \end{longtable}
  638. \noindent
  639. Im Unterschied zu den Einspeisungsmesssystemen sind die Messsysteme hier nicht auf unerwünschte Bussysteme beschränkt, sondern können meist auch direkt mit dem Punkt-zu-Punkt-Protokoll IO-Link angesprochen werden. Unter den Systemen, die IO-Link unterstützen, gibt es fünf, welche auch mindestens $16$ Strommesskanäle besitzen. Die Anlagen von LMS sind meist in so viele logische Versorgungsgruppen unterteilt, sodass mit dieser Wahl eine Eins-zu-Eins Beziehung zwischen Versorgungsgruppen und Messkanälen möglich ist. Der gemeinsame Nennstrom von $40\mathrm{A}$ ist für den Anwendungsfall ausreichend, da in der Regel auch nur Netzteile mit $40\mathrm{A}$ Nennstrom eingesetzt werden. Von den fünf Kandidaten senden nur zwei den Messwert der Spannung im zyklischen Datensatz der IO-Link Verbindung. Die anderen drei senden nur den Messwert der Stromstärke. Da für die Berechnung der Leistungsaufnahme immer ein aktueller Spannungswert benötigt wird, können diese drei auch ausgeschlossen werden. Die beiden verbleibenden Systeme unterscheiden sich kaum und es kann sich möglicherweise um identische Hardware handeln, da diese beiden Produkte auch optisch sehr ähnlich aussehen. Letztendlich wurde sich bei der Durchführung der Testversuche für das IFM Kopfmodul \emph{DF2101} mit acht der zweikanaligen Sicherungsmodule \emph{DF2220} entschieden.
  640. \pagebreak
  641. \subsection{Verarbeitungssoftware}\label{verarbeitungssoftware}
  642. Die Software für dieses Projekt übernimmt die Aufgaben der
  643. Datenverarbeitung und -speicherung. Zudem müssen die aufgenommenen Messwerte von der zentralen Steuerung der Kernschießmaschine eingelesen werden.
  644. Das dafür vom Autor selbst geschriebene Programm „PLC-Connector“ ist in diesem Abschnitt genauer beschrieben. Es ist der Arbeit beigefügt.\cite{plc_connector}
  645. Dort befinden sich auch Anleitungen zur Installation und Nutzung der Software.
  646. Die Benutzerschnittstelle zur Visualisierung der Ergebnisse
  647. des Systems kann im Nachhinein durch ein generisches Interface zur
  648. Datenbank geschehen, da die dort enthaltenen Daten schon durch den \emph{PLC-Connector} und dessen entsprechende
  649. Signalverarbeitungsmodule aufbereitet sind. Ein Beispiel für ein solches Setup ist auch im Softwareverzeichnis enthalten. Es besteht aus einer \emph{docker-compose} Datei, welche die Container für die Datenbank und das Interface startet. Das Interface ist in diesem Fall ein \emph{Grafana} Dashboard, welches die Daten aus der Datenbank abruft und visualisiert. Die Datenbank ist eine \emph{InfluxDB} Instanz. Ein \emph{Dockerfile} zum Bauen des Containers für den \emph{PLC-Connector} ist ebenfalls im Softwareordner enthalten.
  650. \begin{figure}[H]
  651. \centering
  652. \includegraphics[width=16cm]{out/diagrams/plc-connector-main/PLC-Connector-main.png}
  653. \caption{Programmablaufplan des PLC-Connectors}
  654. \label{plc-connector}
  655. \end{figure}
  656. Der \emph{PLC-Connector} ist modular aufgebaut, sodass verschiedene
  657. Module einfach ausgetauscht werden können. Abbildung \ref{plc-connector} zeigt, wie die verschiedenen Module (rot markiert) im Programm verwendet werden. Dazu sind sie in die folgenden drei Kategorien unterteilt:
  658. \begin{enumerate}
  659. \def\labelenumi{\arabic{enumi}.}
  660. \item
  661. Inputs
  662. Ein \emph{Input}-Modul stellt die Verbindung zu einer bestimmten
  663. Komponente der Anlage her und bezieht über diese periodisch die
  664. Messwerte eines oder mehrerer Sensoren. Die Komponenten können
  665. beispielsweise Feldbusverteiler, netzwerkfähige Sensoren oder die
  666. zentrale Steuerung einer Anlage sein. Je nach Modul kommen
  667. unterschiedliche Protokolle zur Kommunikation zum Einsatz. Unter
  668. diesen sind zum Beispiel EtherNet/IP und das S7-Protokoll vertreten.
  669. \item
  670. Middlewares
  671. Eine \emph{Middleware} ist ein Algorithmus, der strukturierte
  672. Datensätze der aktiven \emph{Input}-Module entgegennimmt und die für
  673. die Auswertung interessanten Informationen extrahiert. Eine erste
  674. \emph{Middleware} ingestiert beispielsweise die Werte mehrerer
  675. \emph{Inputs} und führt eine zeitliche Korrelation durch. Die
  676. dadurch entstandenen Datenpakete können dann optional an weitere
  677. \emph{Middlewares} weitergegeben werden, welche andere Analysen
  678. durchführen. Schließlich kann eine Middleware ihre Ergebnisse an die
  679. \emph{Outputs} übergeben.
  680. \item
  681. Outputs
  682. \emph{Outputs} sind Datensenken, welche Datensätze von
  683. \emph{Middlewares} entgegennehmen und abspeichern. Ein \emph{Output}
  684. archiviert beispielsweise die Datensätze in CSV Dateien und ein
  685. anderes sendet sie an eine Influxdb-Datenbank.
  686. \end{enumerate}
  687. Die Module werden durch ein zentrales Python-Programm geladen, welches auch die initiale Konfiguration und die Datenübertragung zwischen den Modulen orchestriert. Ansonsten arbeiten die Module komplett autonom.
  688. Die Verbindungen und Parameter der Module sind in einer zentralen
  689. Konfigurationsdatei \texttt{config.yml} definiert. Diese Datei wird von dem \emph{PLC-Connector} mittels \texttt{python3 main.py -c config.yml} geladen und gibt die Typen, die Parameter und die Untermodule der Module vor. Die Module werden dann entsprechend initialisiert und ausgeführt. Beispiele für mögliche Konfigurationsdateien sind in der beigefügten Software enthalten.
  690. \newpage
  691. \subsubsection*{Input-Module}
  692. Das erste implementierte Input-Modul trägt den Namen \texttt{snap7\_connect} und stellt aktiv eine Verbindung zu einer Siemens-Steuerung auf. Die IP-Adresse der Steuerung kann über den Parameter \texttt{address} gesteuert werden. Im Versuch ist dieser Wert auf die Adresse der zentralen Steuerung der \emph{LFB665} gesetzt. Nachdem die Verbindung über das S7-Protokoll aufgebaut ist, beginnt das Modul aller $50\mathrm{ms}$ einen Lesebefehl zu senden. Es werden dabei die ersten fünf Bytes des Datenbausteins \texttt{DB3} abgefragt, welche die in Anhang \ref{siemens_tags} aufgelisteten Statusbits enthalten. Somit kann der Status einer LFB65 Kernschießmaschine an die Middleware-Module übertragen werden.
  693. Das Input-Modul namens \texttt{snap7\_server} emuliert eine Siemens-Steuerung und lässt dadurch Verbindungsanfragen von echten CPUs auf das \emph{PLC-Connector}-Programm zu. Es wurde in den in Kapitel \ref{praktische-versuche} durchgeführten Versuchen verwendet, um von der \emph{ET200SP CPU} passiv Messwerte zu empfangen. Das Timing der S7-Pakete kann dabei über einen Interrupt in der SPS gesteuert werden und ist somit viel präziser als eine PC-seitige Anfrage. Für seine Verwendung ist die Erstellung eines S7-Send-Blocks in der Steuerung notwendig, aber bietet den Vorteil des genaueren Zeitintervalls. Zur Erhaltung eines PLC-seitigen Zeitstempels kann der Betriebszeitzähler $cpu\_uptime$ optional mit im Datenblock abgelegt werden und dann mit einer Tiefpass-gefilterten Differenz zum lokalen Zeitstempel $local\_time$ zu einem echten UTC Zeitstempel umgewandelt werden.
  694. \begin{equation}
  695. \begin{aligned}
  696. \Delta T &= local\_time - cpu\_uptime \\
  697. dt_0 &= \alpha \cdot dt_{-1} + (1 - \alpha) \cdot \Delta T \\
  698. t &= cpu\_uptime + dt_0 \\
  699. \end{aligned}
  700. \end{equation}
  701. Eine Referenzimplementierung dieses Verfahrens befindet sich im Modul \texttt{snap7\_server} in der Methode \texttt{get\_timestamp} mit dem Wert $\alpha = 0,999$. Bei einer Abfragefrequenz von $f=50\mathrm{Hz}$ entspricht dies einer Zeitkonstante des Filters von $T\approx20\mathrm{s}$:
  702. \begin{equation}
  703. \begin{aligned}
  704. 1-\frac 1 e &= 1 - \alpha^{f \cdot T} \\
  705. \frac{1}{e} - 0,999^{50} &= 0,999^T \\
  706. e &\approx e^{0,05T} \\
  707. T &\approx 20\mathrm{s} \\
  708. \end{aligned}
  709. \end{equation}
  710. \subsubsection*{Middleware-Module}
  711. Wie in Abbildung \ref{plc-connector} zu sehen ist, werden die Daten der \emph{Inputmodule} zyklisch an die \emph{Middleware}-Module übergeben. Das erste Modul dieser Kategorie übernimmt die Korrelation der Zeitstempel und die Synchronisation der relevanten Informationen. Es liegt in der Datei \texttt{time\_correlation.py}. Zur Korrelation werden alle Datensätze der verschiedenen Inputs in eine Liste kombiniert und anschließend nach ihrem Zeitstempel sortiert. Damit wird sichergestellt, dass die Datenpakete der verschiedenen Inputs während eines Durchlaufs immer synchron sind. Für die Messwerte, die sich zwischen zwei Zyklen der Hauptschleife der \emph{PLC-Connector}-Software befinden, wird ein zusätzlicher Schritt der Synchronisation angewendet: Anstelle die sortierten Datenpunkte direkt zusammenzuführen, werden sie für einen Zyklus zwischengespeichert und dann noch einmal den neuen Werten angefügt und sortiert. Danach wird nur die Anzahl der vorherigen Datenpunkte freigegeben und die neuen wieder zwischengespeichert. Somit werden Verzögerungen der Datenquellen um bis zu einer Intervallperiode ausgeglichen.
  712. Zur Korrelation werden nun die sortierten Datensätze iteriert und pro Inputtyp in ein Statusverzeichnis kopiert. Für jeden Zeitpunkt wird so ein Abbild aller Inputs zu einem neuen Datentypen zusammengefasst und an die folgenden Middleware-Submodule weitergegeben.
  713. Die nächste implementierte Middleware ist das \texttt{Aggregate}-Modul. Es nimmt eine Datenserie entgegen und wendet darauf eine oder mehrere Aggregationsfunktionen an. Die Aggregationsfunktionen werden in der Konfigurationsdatei definiert und können beliebig kombiniert werden. Gegenwärtig werden die folgenden Aggregationsfunktionen unterstützt: \texttt{avg}, \texttt{first}, \texttt{last}, \texttt{min}, \texttt{max} und \texttt{sum}. Sie werden über den eingestellten Zeitintervall auf eine gegebene Liste von Feldern der Datenquellen angewendet. Sobald ein Datensatz außerhalb des angegebenen Zeitintervalls liegt, wird die Aggregationsfunktion auf die vorherigen Daten angewendet und das Ergebnis an die nächsten Module weitergegeben. Dabei wird der letzte Datensatz kopiert und die Aggregationswerte in die Felder eingetragen. Um die Anzahl der resultierenden Datensätze zu untersuchen, kann das Debug-Modul \texttt{PrintStats} als Untermodul hinzugefügt werden. Es gibt die Rate der Datensätze in der Konsole aus.
  714. Wenn nur bestimmte Datensätze weitergegeben werden sollen, dann können Module aus der Datei \texttt{filters.py} verwendet werden. Diese Module nehmen eine Datenserie entgegen und geben nur die Datensätze weiter, die den Filterkriterien entsprechen. Zur Zeit werden die folgenden Filter implementiert: \texttt{MatchAny}, \texttt{MatchAll} und \texttt{ComplexFilter}. Der \texttt{MatchAny}-Filter gibt alle Datensätze weiter, die mindestens einem der angegebenen Filterkriterien entsprechen. Der \texttt{MatchAll}-Filter gibt nur Datensätze weiter, die allen angegebenen Filterkriterien entsprechen. Der \texttt{ComplexFilter} ist ein allgemeiner Filter, der beliebige Filterkriterien anwenden kann. Die Filterkriterien werden in der Konfigurationsdatei definiert und können beliebig kombiniert werden. Momentan unterstützen \texttt{MatchAny} und \texttt{MatchAll} nur das Gleichheitskriterium. Der \texttt{ComplexFilter} unterstützt hingegen arbiträre Python-Ausdrücke, die auf die Felder der Datensätze angewendet werden. So kann dieser beispielsweise Kriterien wie \texttt{"measurement\_480v and measurement\_24v and sum(measurement\_24v.current) > 20"} ausführen, um nur Datensätze weiterzugeben, die die Daten aus dem AI-Energy-Meter und IFM-Sicherungen enthalten und deren gesamter $24\mathrm{V}$ Stromverbrauch größer als $20\mathrm{A}$ ist.
  715. Die letzte implementierte Middleware ist das \texttt{Selector}-Modul. Es nimmt eine Datenserie entgegen und gibt nur die Felder weiter, die in der Konfigurationsdatei angegeben sind. Dieses Modul ist nützlich, wenn nur bestimmte Felder weitergegeben werden sollen. Es kann auch verwendet werden, um die Datensätze zu kürzen, die an die \emph{Output}-Module weitergegeben werden. Wie beim \texttt{ComplexFilter}-Modul kann auch ein individueller Python-Ausdruck angegeben werden, der auf die Felder angewendet wird. Dieser kann beispielsweise die Felder \texttt{"measurement\_24v.current"} und \texttt{"measurement\_24v.voltage"} zu einem Feld zusammenfassen, welches die Leistungsaufnahme pro Kanal beinhaltet: \\
  716. \texttt{"tuple([ c * measurement\_24v.voltage for c in measurement\_24v.current])"}.
  717. \subsubsection*{Output-Module}
  718. Die \emph{Output}-Module sind die letzten Module in der Kette. Sie nehmen Datenserien von Middlewares entgegen und geben sie an einen \emph{Output}-Adapter weiter. Zur Zeit werden die folgenden \emph{Output}-Module implementiert: \texttt{CSVStorage}, \texttt{InfluxDB} und \texttt{JSONOutput}. Das \texttt{CSVStorage}-Modul speichert die Datensätze in CSV-Dateien ab. Dabei werden jeweils $50.000$ Zeilen in eine CSV-Datei geschrieben und diese dann in eine gleichnamige ZIP-Datei verschoben. Alle nachfolgenden CSV-Dateien werden im Anschluss dem ersten Archiv hinzugefügt. Das \texttt{InfluxDB}-Modul schreibt die Datensätze in eine InfluxDB-Datenbank. Heirbei wird das Feld \texttt{series} verwendet, um die verschiedenen Datenserien zu unterscheiden. Falls ein Feld vom Typ \texttt{tuple} ist, dann wird dessen Index als Tag \texttt{channel} umfunktioniert, um das Influxdb-Schema bestmöglich auszunutzen. Das \texttt{JSONOutput}-Modul gibt die Datensätze als JSON-Objekte in der Konsole aus. Dieses Modul ist nützlich, um die Daten zu debuggen.
  719. \section{Praktische Versuche}\label{praktische-versuche}
  720. Der gewählte Messaufbau wurde bisher an zwei Kernschießanlagen getestet.
  721. Dazu wurden alle benötigten Sensoren im Steuerungsschrank temporär
  722. verbaut und die aufgenommenen Daten extern mit einer weiteren ET200
  723. Siemens Steuerung verarbeitet. Bei den Kernschießmaschinen handelt es
  724. sich um eine Anlage mit einer Steuerung von Siemens und eine mit einer
  725. Allen-Bradley Steuerung. In beiden Versuchen wurden die elektrischen
  726. Werte der Einspeisung, die Ströme der Kleinstspannungsverbraucher und
  727. der Anlagenstatus anhand des Programms auf der Steuerung aufgezeichnet.
  728. Zum Zeitpunkt der beiden Versuche fand noch keine tiefgehende Analyse statt.
  729. Diese erfassten Rohdaten wurden anschließend zur Analyse und für die Erarbeitung der Middleware-Module des PLC-Connector Programms (siehe vorheriges Kapitel) per Replay-Inputmodul wiederholt eingespielt.
  730. \subsection{Siemens Anlage LFB65}\label{siemens-anlage-lfb65}
  731. Der erste praktische Test wurde an einer Kernschießmaschine vom Typ
  732. LFB65 in der 19. Kalenderwoche 2022 durchgeführt. Als Sensoren sind hier zum einen eine Strommessung an der \(24\mathrm{V}\) Versorgung mit Hilfe der elektrischen Sicherungen von IFM und zum anderen eine
  733. Instrumentierung der elektrischen Einspeisung mit dem AI-Energy-Meter von Siemens vorgesehen. Die Messwerte der beiden Sensorgruppen werden über IO-Link und respektive Rückwandbus zu einer \emph{ET200SP CPU} zusammengeführt. Diese CPU ist nicht die zentrale Steuerung der Anlage und befindet sich im Versuch auf einem separaten Teststand, der an die Kernschießmaschine angeschlossen wurde (siehe Anlage \ref{img_interfacemodul}).
  734. \begin{figure}[H]
  735. \centering
  736. \includegraphics[width=16cm]{out/diagrams/hengli/Hengli.png}
  737. \caption{Siemens Versuch}
  738. \label{hengli}
  739. \end{figure}
  740. Die Strommessung der
  741. \(24\mathrm{V}\)-Ebene wird durch einen digitalen Leitungsschutzschalter von
  742. IFM über-nommen. Dieser besteht einem Kopfmodul (Typ DF2101) und bis zu
  743. 16 daran angereihten Sicherungskanälen. Am Kopfmodul kann eine \(24\mathrm{V}\)-Versorgung mit bis zu $40\mathrm{A}$ Nennstrom angeschlossen werden. Es besitzt auch die IO-Link Schnittstelle, mit der die Werte der Versorgungsspannung und der Ströme der einzelnen Sicherungskanäle abgefragt werden können. Das Kopfmodul DF2101 ist in diesem Versuch direkt an das zentrale
  744. \(24\mathrm{V}, 40\mathrm{A}\) Netzteil der Anlage (links am Rand des
  745. Fotos im Anhang \ref{img_ifm}) angeschlossen. Die acht Sicherungsmodule vom Typ DF2220 mit je zwei Kanälen sind von der CPU individuell zwischen \(1\) und \(10\mathrm{A}\) einstellbar. Sie übernehmen die Funktion der ursprünglich eingesetzten
  746. Sitop Sicherungen von Siemens (grau im Foto \ref{img_ifm}, zwischen dem Netzteil und den IFM Modulen). Vier von fünf Sitop-Sicherungen mit je vier Kanälen sind
  747. komplett deaktiviert, wobei die letzte noch drei der ursprünglich $19$
  748. Ausgangskanälen und den Rest des Versuchsstandes (Foto \ref{img_interfacemodul})
  749. versorgt. Die Verteilung der Kanäle ist im Anhang \ref{eplan_lfb65} als EPLAN-Auszug
  750. dokumentiert.
  751. Die zweite Sensorbaugruppe besteht zuerst aus drei Stromwandlern, die an
  752. der Einspeisung der Anlage verbaut sind. Sie messen somit den gesamten
  753. elektrischen Stromverbrauch der im Werk aufgebauten Anlage, inklusive
  754. der Standby-Verbräuche. Zu den nicht aufgenommenen Energieverbräuchen
  755. zählt wiederum die Stromaufnahme der Versorgungsmaschinen, welche die Anlage mit anderen Ressourcen wie Druckluft versorgt. Die
  756. Anlage war beispielsweise zum Zeitpunkt der Messung am pneumatischen Netz des Prüfstandes angeschlossen. Des Weiteren werden bei den Prüfläufen der Anlagen nicht alle Anlagenteile aktiviert, da zum Beispiel während der Zyklen keine echten Sandkerne geschossen wurden.
  757. Der Wandlungsfaktor, der bei der LFB65 Anlage eingesetzten Stromwandler
  758. beträgt \(150\mathrm{A}:5\mathrm{A}\), was der maximalen Stromaufnahme
  759. dieser Anlage entspricht. Zur Digitalisierung der elektrischen Werte
  760. wird die Energiemeterkarte „AI Energy Meter“ von Siemens eingesetzt.
  761. Diese ist über einen sechspoligen Trenner mit den eben genannten
  762. Stromwandlern verbunden, welcher in Orange im Anhang \ref{img_interfacemodul} zu sehen ist. Am AI Energy Meter sind für die Messung der Versorgungsspannung auch die
  763. drei Phasen der Einspeisung angeschlossen. Diese werden vor dem
  764. Hauptschalter der Anlage abgegriffen (siehe EPLAN Anhang \ref{eplan_lfb65}) und mit
  765. einem dreipoligen Leitungsschutzschalter (LS) mit \(6\mathrm{A}\)
  766. Nennstrom abgesichert. Der LS ist rechts vom Trenner montiert.
  767. Die AI-Energy-Meter-Karte ist auf einen sekundärseitigen Strom von
  768. \(5\mathrm{A}\) und auf die Messung von Spannungen à
  769. \(400\mathrm{V}\) eingestellt. Zur Fixierung des Sternpunktes der
  770. Spannungen ist zusätzlich zu den drei Leitern auch der Neutralleiter
  771. der Einspeisung verbunden.
  772. \footnote{Es ist hierbei anzumerken, dass bei der Einspeisung in industriellen
  773. Anlagen, wie dieser Kernschießmaschine, häufig ein kombiniertes PE-N System (TN)
  774. verwendet wird. Die Trennung in Neutral- und Schutzleiter findet somit
  775. erst im Schaltschrank der Anlage statt. Alternativ ist auch ein IT oder TT System möglich.}
  776. Links neben der Energiemeterkarte ist ein IO-Link-Master verbaut. Dieser
  777. ist über ein dreipoliges IO-Link Kabel mit dem Kopfmodul der IFM
  778. Sicherungen verbunden. Beide Karten stecken auf einer programmierbaren
  779. ET-200SP CPU. Diese befindet sich im Anhang \ref{img_interfacemodul} direkt angrenzend zu
  780. den beiden Karten und ist mit der darüberliegenden Netzwerk-Switch per
  781. Ethernetkabel verbunden. Beide werden über die vorhin genannte
  782. Sitop-Sicherung mit \(24\mathrm{V}\) Betriebsspannung versorgt.
  783. \footnote{Auf dem Teststand befinden sich auch ein weiteres Netzteil, ein
  784. Leitungsschutzschalter und ein ET-200SP Interfacemodul, welche alle
  785. während des Versuchs nicht verwendet wurden.}
  786. Die ET-200SP CPU erfasst periodisch die Messwerte der beiden per
  787. Rückwandbus verbundenen Siemens-Karten und sendet sie via S7-Protokoll
  788. an die selbstgeschriebene Anwendung „PLC-Connector“. Über IO-Link
  789. werden dabei alle \(20\mathrm{ms}\) folgende Zustände der
  790. IFM-Sicherungen ermittelt: Der gemessene Strom je Kanal im Bereich von
  791. \([0.1,0.2,...,10.0]\mathrm{A}\), Schalt-, Überlast-, Kurzschluss-,
  792. Grenzwert- und Tasterzustände, sowie die Spannung am Kopfmodul. Vom AI
  793. Energy Meter werden zudem alle \(60\mathrm{ms}\) die L-N-Spannungen,
  794. Leiterströme und Phasenwinkel der Drehstomversorgung aufgenommen.
  795. Das verwendete Ethernetnetzwerk ist eine Erweiterung des
  796. Überwachungsnetzes der Kernschießmaschine. Darin befinden sich
  797. üblicherweise die zentrale Steuerung, mobile Zugänge zur Programmierung
  798. der Anlage und das Bedienpult (HMI). In manchen Kernschießmaschinen von
  799. LMS ist dort auch ein Box-PC mit der hauseigenen
  800. \emph{Laempe-Digital-Cockpit}-Software (LDC) vorzufinden. Bei der im Versuch
  801. verwendeten LFB65-Anlage sind alle bereits vorhandenen Teilnehmer in der
  802. unteren Hälfte des Subnetzes \texttt{192.168.0.0/24} anzufinden. Zum
  803. Beispiel besitzt die zentrale Steuerung die Adresse
  804. \texttt{192.168.0.5}. Demzufolge werden für die Erweiterung des
  805. Netzwerks statische Adressen im Subnetz \texttt{192.168.0.192/26}
  806. eingesetzt. Die hinzugefügten Teilnehmer umfassen die ET-200SP CPU mit
  807. der IP-Adresse \texttt{192.168.0.206} und ein Laptop mit der Adresse
  808. \texttt{192.168.0.201}, der als Anwendungsserver fungiert.
  809. Die
  810. \href{https://gogs.justprojects.de/Master/smart-energy-monitor/src/jiangsu-hengli-LFB65/box-pc/application}{PLC-Connector}
  811. Anwendung ist für den Versuch so konfiguriert, dass sie Daten von der
  812. zentralen Steuerung abfragt, Verbindungen von der ET-200SP CPU zulässt
  813. und alle Messwerte in zwei redundanten Datenbänken abspeichert. Die
  814. Abfrage der zentralen S7-1500 CPU erfolgt über das S7-Protokoll auf der
  815. Ethernetverbindung zum Überwachungsnetzwerk der Anlage. Dazu wurde die
  816. Steuerung von einem LMS-Mitarbeiter so programmiert, dass sie die
  817. Ausgangszustandsbits in einen eigens zum Auslesen angelegten
  818. Speicherbereich (vgl. Datenbaustein DB3 in Abbildung \ref{hengli}) kopiert. Beim
  819. Auslesen wird der Inhalt von DB3 als Bytearray zum PLC-Connector
  820. übertragen. Die dabei verwendete Struktur der Statusflags im Datenbaustein ist im Anhang \ref{siemens_tags} definiert.
  821. Für die Übertragung der Daten von der \emph{ET-200SP CPU} werden neben DB3 zwei weitere Datenstrukturen eingesetzt. Die Erste umfasst die Messwerte der
  822. AI-Energy-Meter-Karte und besteht aus folgenden neun IEEE 754 LSB
  823. Fließkommawerten:
  824. \begin{longtable}[]{@{}lll@{}}
  825. \toprule
  826. \textbf{byte{[}{]}} & Fließkommawert & Einheit\\
  827. \midrule
  828. \endhead
  829. Byte 0-3 & Spannung \(U_1\) & V\\
  830. Byte 4-7 & Spannung \(U_2\) & V\\
  831. Byte 8-11 & Spannung \(U_3\) & V\\
  832. Byte 12-15 & Primärstrom \(I_1\) & A\\
  833. Byte 16-19 & Primärstrom \(I_2\) & A\\
  834. Byte 20-23 & Primärstrom \(I_3\) & A\\
  835. Byte 24-27 & Phasenwinkel \(\varphi_1\) & $^{\circ}$\\
  836. Byte 28-31 & Phasenwinkel \(\varphi_2\) & $^{\circ}$\\
  837. Byte 32-35 & Phasenwinkel \(\varphi_3\) & $^{\circ}$\\
  838. \bottomrule \\
  839. \caption{Datenstruktur der AI-Energy-Meter-Karte}
  840. \label{ai_bytes}
  841. \end{longtable}
  842. Die zweite Datenstruktur beinhaltet die Statusinformationen der
  843. elektronischen Sicherung \emph{DF2101}. Sie ist identisch zu der vom Hersteller
  844. IFM definierten Struktur der IO-Link Prozessdaten des Moduls (siehe
  845. \href{https://www.ifm.com/download/files/ifm-DF2101-20190131-IODD11-de_V5/$file/ifm-DF2101-20190131-IODD11-de_V5.pdf}{DF2101
  846. Schnittstellenbeschreibung} im Anhang)
  847. Beiden Strukturen ist außerdem ein Zeitstempel der CPU vorangestellt,
  848. welcher bei der genauen Bestimmung des Messzeitpunktes herangezogen
  849. wird. Der Zeitstempel besteht aus einer ganzzahliger Anzahl an
  850. Millisekunden, die seit dem Start der CPU vergangen sind. Er ist als
  851. vorzeichenlose, vier Byte LSB Zahl kodiert. Somit wird er circa aller $50$
  852. Tagen überlaufen, was auch bei der Implementierung der Zeitbestimmung im
  853. vorherigen Kapitel beachtet wurde.
  854. Die PLC-Connector Anwendung verwendet zur Kommunikation mit der ET-200SP
  855. CPU die \emph{snap7} Pythonbibliothek. Diese Bibliothek stellt hier
  856. einen TCP-Server auf Port 102 bereit und emuliert damit das Verhalten
  857. einer S7-Steuerung. Die ET-200SP CPU baut anschließend eine Verbindung
  858. zu diesem Server auf. Aus der Sicht des SPS-Programms handelt es sich
  859. beim \emph{snap7} Service um eine Partner-CPU, zu der nun aktiv eine
  860. Verbindung über das S7-Protokoll aufgebaut wird. Die ET-200SP CPU
  861. beginnt nun mit dem Senden der zwei Speicherbereiche. Der erste Bereich
  862. mit den Energiedaten wird in den emulierten Datenbaustein \texttt{DB2}
  863. und der zweite wird in den Baustein \texttt{DB1} der PLC-Connector
  864. Anwendung geschrieben.
  865. \subsection{Allen-Bradley Anlage LL20}\label{allen-bradley-anlage-ll20}
  866. Der zweite Versuchsaufbau dient zur Demonstration der
  867. Anpassungsfähigkeit der Hardware an eine andere Anlagenstruktur, im
  868. Speziellen an Kernschießanlagen mit einer zentralen Compact Logix
  869. Steuerung von Allen-Bradley und der Verwendung des EtherNet-IP
  870. Protokolls. Er fand an einer Anlage vom Typ LL20 in der 20./21. KW 2022
  871. statt. Wie auch beim ersten Versuch werden die elektrischen Werte der
  872. Einspeisung, die Stromverbräuche der Kleinstspannungsverbraucher und der
  873. Anlagenzustand erfasst.
  874. \begin{figure}[H]
  875. \centering
  876. \includegraphics[width=16cm]{out/diagrams/benton/Benton.png}
  877. \caption{AB Versuch}
  878. \end{figure}
  879. Zur Energieerfassung kommen hier die gleichen Baugruppen wie im letzten
  880. Versuch zum Einsatz. Für die $24\mathrm{V}$ Strommessung werden wieder die
  881. elektronischen Sicherungen von IFM verwendet und zur Instrumentierung
  882. der Einspeisung wird die Energiemeterkarte in Kombination mit
  883. \(50\mathrm{A}:5\mathrm{A}\) Stromwandlern eingesetzt. Beide werden wieder von einer
  884. ET-200ST CPU gesteuert. Beim Auslesen der zentralen Steuerung ist jedoch
  885. ein großer Unterschied vorzufinden: Ihre Programmierung unterscheidet
  886. sich stark von der Programmstruktur einer Siemens CPU. Anstelle von
  887. Datenbausteinen werden hier sogenannte Tags verwendet, um interne
  888. Zustandsvariablen anzulegen. Diese Tags können über EtherNet/IP mit Hilfe der \emph{pylogix} Bibliothek von der
  889. \href{https://gogs.justprojects.de/Master/smart-energy-monitor/src/benton-foundry-LL20/box-pc/application}{PLC-Connector}
  890. Anwendung ausgelesen werden. Zum Lesen des Anlagenstatus wurde in
  891. diesem Fall kein neuer Speicherbereich angelegt; der Zugriff auf die
  892. Tags kann nämlich direkt erfolgen. Eine Auflistung der ausgelesenen Tags befindet sich im Anhang \ref{ab_Tags}. Diese Tags werden von der PLC-Connector Anwendung aller
  893. \(20\mathrm{ms}\) über das EtherNet/IP Protokoll von der Steuerung
  894. abgefragt. Dabei können mehrere Leseanfragen in einem Paket
  895. kombiniert werden, was die Anzahl an benötigten Ethernet Roundtrips
  896. gering hält. Für die Anbindung an das Überwachungsnetzwerk der
  897. Allen-Bradley-Steuerung wird auch ein anderes Subnetz verwendet. Das
  898. Subnetz ist hier \texttt{192.168.1.0/24} und die IP-Adresse der
  899. Steuerung lautet \texttt{192.168.1.15}.
  900. \subsection{Vergleich der Versuche}\label{vergleich-der-versuche}
  901. Bei der LL20 handelt es sich im Vergleich zur LFB65 um eine kleinere und
  902. kompaktere Kernschießmaschine. In den Versuchen konnten fast identische
  903. externe Komponenten eingesetzt werden. Der einzige Unterschied in der
  904. Hardware war die Verwendung von Stromwandlern mit unterschiedlichen
  905. Umsetzungsfaktoren. Im ersten Test wurden Wandler mit einem
  906. Umsetzungsfaktor von $150\mathrm{A}:5\mathrm{A}$ eingesetzt, während im zweiten Test ein
  907. Faktor von $50\mathrm{A}:5\mathrm{A}$ ausreichend war. Die Kommunikation mit den Sensoren
  908. war in beiden Fällen identisch, da dies durch eine externe Steuerung
  909. übernommen wurde. In Zukunft wird für den Aufbau jedoch keine externe
  910. Steuerung mehr nötig sein, denn diese übermittelnde Funktion der ET200
  911. CPU soll auch durch die Steuerung der jeweiligen Anlage übernommen
  912. werden.
  913. Die Versuche unterschieden sich auch im Kommunikationsprotokoll zwischen
  914. dem Computer und der jeweiligen Steuerung der Anlage. Es wurden zwei
  915. unterschiedliche Versionen der Verarbeitungssoftware eingesetzt; bei der
  916. einen fand die Kommunikation mit der Steuerung über das S7-Protokoll
  917. statt und bei der anderen über EtherNet-IP. Beide Protokolle bauen auf
  918. TCP/IP auf und sind so beide in der Anwendungsschicht des
  919. Internetprotokolls anzufinden.
  920. \section{Ergebnisse}\label{ergebnisse}
  921. Beim Versuch an der LFB65 wurden insgesamt über $70.000.000$ Datenpunkte über $7$ Stunden kontinuierlichen Betriebs der Kernschießmaschine aufgezeichnet. Allein anhand der Strommesswerte ist ein klares Bild des automatischen Zyklusablaufs zu erkennen. Beim zweiten Versuch kam hingegen kein kontinuierlicher Betrieb zustande, da die Anlage ein anderes technisches Problem aufzeigte. Über die Dauer des zweiten Versuchs war die LL20 Anlage häufig wegen der Reparaturen außer Betrieb.
  922. \begin{figure}[H]
  923. \centering
  924. \includegraphics[width=16cm]{analyse/data/400v_total_power.pdf}
  925. \caption{Leistungsaufnahme der LFB65}
  926. \label{fig:400v_total_power}
  927. \end{figure}
  928. Abbildung \ref{fig:400v_total_power} zeigt die Leistungsaufnahme der LFB65 über die ersten Stunden des Betriebszeitraums. Zur Überlappung der Zeitachse wurden die von der SPS aufgenommenen Statusbits herangezogen und der Verlauf jeweils bei Beginn eines neuen Zykluses zurückgesetzt. Dazu ergänzend zeigt Anhang \ref{raw_measurements_one_cycle} die rohen Strommessungen der Einspeisung und der jeweiligen $24\mathrm{V}$ Kanäle zusammen mit den entsprechenden SPS-Statussignalen über einen einzelnen Maschinenzyklus. Daneben sind auch von diesem einen Zyklus die einzelnen Phasen des Zyklusablaufs in der LFB65 aufgeführt.
  929. Die größte Leistungsaufnahme der Gesamtanlage tritt beim Öffnen der Seitenteile auf, gefolgt vom Heben und Senken des Hubtisches. Das ist dadurch zu erklären, dass das dafür verwendete hydraulische Aggregat mit der größte Verbraucher der Maschine ist. Der Grundverbrauch der Gesamtanlage im betriebsbereiten Zustand beträgt rund $20\mathrm{A}$, was zusammen mit der dreiphasigen $400\mathrm{V}$ Netzspannung der folgenden Mindestleistungsaufnahme entspricht: $$ I_L \cdot \frac {U_{LL}} {\sqrt{3}} \cdot 3 = 20\mathrm{A} \cdot 400\mathrm{V} \cdot \sqrt{3} \approx 14\mathrm{kVA}$$
  930. Im Plot ist auch ein Drift in der Leistungsaufnahme zu erkennen. Dieser ist auf die Veränderung der Netzspannung zurückzuführen. Die Netzspannung schwankt im Bereich von $390\mathrm{V}$ bis $405\mathrm{V}$, was zu einer Veränderung der Leistungsaufnahme führt. Die Leistungsaufnahme der LFB65 ist also nicht nur vom programmierten Zyklus, sondern auch von der Netzspannung abhängig. Eine Änderung der Spannung führt auch zu einer Änderung der Taktzeit. Die Taktzeit schwankt in einem Bereich von $33$ bis $34\mathrm{s}$, wobei die schnellere Taktzeit mit der höheren Netzspannung einhergeht. Dies kann zum Beispiel durch das schnellere Erreichen von Endlagen der Aktoren erklärt werden. Alle fünf Minuten ist ein kurzer Ausfall der Stromstärke aufgezeichnet worden. Dieser ist auf eine Fehlfunktion der Datenübertragung zurückzuführen, da der Ausfall nur einzelne Werte der Stromstärke der Einspeisung betrifft. Der numerische Wert der Ausfälle ist immer exakt $0,00\mathrm{A}$, wodurch eine reale Ursache ausgeschlossen werden kann.
  931. \begin{figure}[H]
  932. \centering
  933. \includegraphics[width=16cm]{analyse/data/24v_current.pdf}
  934. \caption{24V Gesamtstrom an der LFB65}
  935. \label{fig:24v_current}
  936. \end{figure}
  937. In der Kleinstspannungsebene sind die Relais und Schütze auf Kanal sechs der elektronischen Sicherungen mit die größten Verbraucher. Sie benötigen zeitweise über $5\mathrm{A}$, was der Hälfte des eingestellten Auslösestroms entspricht. Alle Kanäle zusammen benötigen durchschnittlich $18\mathrm{A}$, jedoch taucht sporadisch ein Überstromereignis auf Kanal $10$ auf. An diesem Kanal sind die Proportionalventile der Anlage angeschlossen (siehe Anlage \ref{eplan_lfb65}). Durch diese Abnormalität betrug der maximale Stromverbrauch der $24\mathrm{V}$ Komponenten während des kompletten Laufs $27,9\mathrm{A}$. Wenn dieses Fehlverhalten pro Vorkommen noch länger andauern würde, dann würde die Sicherung für den Kanal $10$ auslösen und die Anlage wegen der dadurch entstehenden Kommunikationsfehler anhalten. Der gemessene Maximalstrom liegt noch unterhalb des Nennstroms des Netzteils, welches bis zu $40\mathrm{A}$ kontinuierlich liefern kann.
  938. Bezüglich der Qualität der Daten gibt es auch einige Besonderheiten. Auf den Messwerten des \emph{AI Energy Meters} wird eine aggressive Filterung direkt im Gerät durchgeführt. Dieses Verhalten ist nicht gut dokumentiert und führt dazu, dass kurze Ereignisse wie Anlaufströme oder hochfrequente Resonanzen nicht mehr in den Daten erkennbar sind.\cite{voltage_disturbance} Der Verlauf des Graphen in Abbildung \ref{fig:400v_total_power} hat für den verwendeten Messintervall von $60\mathrm{ms}$ zu wenig hochfrequente Anteile. Eine Verbesserung könnte mit dem Auslesen der vom Modul zur Verfügung gestellten Oberfrequenzanteilen geschehen. Die Stromwerte der elektrischen Sicherungsmodule von \emph{IFM} entsprechen auch nicht ganz den Erwartungen. Obwohl das aufgebaute Datenübertragungs- und Verarbeitungssystem in der Lage ist, Messpunkte aller $20\mathrm{ms}$ entgegenzunehmen, werden die Prozessdaten des IO-Link-Geräts nicht so häufig aktualisiert. Die Folge ist, dass bis zu $30$ identische Messwerte in die Datenbank geschrieben wird, bis der Wert von der Sensorbaugruppe geändert wird. Dies entspricht nicht dem erwarteten Verhalten des \emph{DF2101}, da es laut Dokumentation bis zu 50-mal pro Sekunde Prozessdaten an den IO-Link-Master liefern sollte (vgl. Anhang \ref{ifm_df2101}). Als Resultat weisen die Graphen der Stromverläufe nicht realitätsgetreue Schrittfunktionen mit einem individuellen Aktualisierungsintervall von ca. $700\mathrm{ms}$ auf.
  939. Eine mögliche Erweiterung des Informationsgehalts der Strommesswerte könnte das Auslesen und Zurücksetzen der azyklischen Maximalwerte des IFM Kopfmoduls sein. Es wäre möglich, dass diese öfter aktualisiert werden als die zyklischen Prozessdaten und somit mehr über den tatsächlichen Maximalstrom aussagen. Diese Werte bieten mit ihrer zusätzlichen Dezimalstelle den Vorteil einer höheren Präzision als die zyklischen Prozessdaten. Der Nachteil dieser Datenquelle ist jedoch der erhöhte Kommunikationsaufwand in der SPS und die damit verbundene negative Beeinträchtigung ihrer Zykluszeit.
  940. \newpage
  941. \section{Fazit}
  942. Das erstellte System zur Erfassung und Auswertung von Energieverbrauchswerten in einer Kernschießmaschine hat sich als sehr nützlich erwiesen. Die Messdaten können in Echtzeit aufbereitet und visualisiert werden. Die Einsicht in die Ströme der einzelnen $24\mathrm{V}$ Kanäle ermöglicht eine schnelle Analyse von Problemen und die Erkennung von Abweichungen von den Normwerten. Auf Basis der Stromverläufe können die einzelnen Sicherungen identifiziert werden, die einen hohen Stromverbrauch aufweisen. Die anderen Sicherungen können in Zukunft nach einem validierten Referenzstromverbrauch auf einen passenden Auslösewert eingestellt werden.
  943. Die Stromverläufe können auch für das Netzteil der $24\mathrm{V}$ Versorgung verwendet werden, um die maximale Leistungsabgabe im Betrieb zu bestimmen.
  944. Bei der Wahl der Hardware sind mangels Kompatibilität einige Kompromisse eingegangen worden. Es wäre besser, wenn alle Energiesensoren über eine einheitliche Kommunikationsschnittstelle verfügen würden. Auch die Aktualisierungsrate des DF2101 ist nicht optimal. Nichtsdestotrotz ist ein System entstanden, welches die gewünschten Messwerte liefert und den Bedingungen des Umfelds gerecht wird.
  945. Die PC-basierte Datenbank bietet eine gute Möglichkeit, die Messwerte zu speichern und zu analysieren. Eine Anlage konnte im Versuch mit den gewonnenen Informationen verbessert werden; insbesondere wurde ein Problem aufgedeckt, welches zu irregulären Überstromereignissen in der $24\mathrm{V}$ Unterverteilung führt. Die Messdaten können auch für die Dokumentation neuer Anlagen verwendet werden, indem das System zukünftig während der Qualitätskontrolle eingesetzt wird.
  946. In Zukunft wird die Software durch ihren modularen Aufbau noch mehr Anlagentypen unterstützen können und deren Konstrukteuren steht es offen weitere Middleware-Module zur Datenanalyse und -aufbereitung zu entwickeln.
  947. %-------------- Literaturverzeichnis
  948. \newpage
  949. \nocite{*}
  950. \printbibliography
  951. %-------------- Anhang
  952. \newpage
  953. \begin{appendices}
  954. \renewcommand{\thesubsection}{\Roman{subsection}}
  955. \subsection{IFM Sicherungen im Schaltschrank der LFB Anlage}
  956. \label{img_ifm}
  957. \includegraphics[width=16cm]{images/hengli-ifm-sicherungen.jpg}
  958. \subsection{Änderungen an der LFB65 Anlage}
  959. \label{eplan_lfb65}
  960. Modifizierter EPLAN der LFB65 Anlage mit den Änderungen, die für die Messung der Energieverbrauchswerte notwendig waren. Die originalen Zeichnungen wurden von einem anderen Mitarbeiter der LMS erstellt. vgl. \cite{EPLAN_113638_LFB65}
  961. (nächste Seite)
  962. \includepdf[angle=90,scale=0.9]{eplan-lfb65/p20.pdf}
  963. \includepdf[angle=90,scale=0.9]{eplan-lfb65/p21.pdf}
  964. \includepdf[angle=90,scale=0.9]{eplan-lfb65/p70.pdf}
  965. \includepdf[angle=90,scale=0.9]{eplan-lfb65/p71.pdf}
  966. \includepdf[angle=90,scale=0.9]{eplan-lfb65/p72.pdf}
  967. \newpage
  968. \subsection{Datenerfassung an der LFB Anlage}
  969. \label{img_interfacemodul}
  970. \includegraphics[width=16cm]{images/hengli-interfacemodul.jpg}
  971. \subsection{PLC Programm der ET200SP in den Versuchen 1 und 2}
  972. \label{plc_programm}
  973. (nächste Seite)
  974. \includepdf[pages=-]{AI-energy-meter-Project/main.pdf}
  975. \includepdf[pages=-]{AI-energy-meter-Project/interrupt20ms.pdf}
  976. \includepdf[pages=-]{AI-energy-meter-Project/interrupt60ms.pdf}
  977. \newpage
  978. \subsection{PLC Datenbaustein der LFB65 Kernschießmaschine}
  979. \label{siemens_tags}
  980. \begin{longtable}[]{@{}lll@{}}
  981. \toprule
  982. \textbf{Offset in DB3} & BE Bit Index & Name\\
  983. \midrule
  984. \endhead
  985. Byte 0 & Bit 7 & Unterteil einfahren \\
  986. Byte 0 & Bit 6 & Unterteil ausfahren \\
  987. Byte 0 & Bit 5 & Auswerfer 1 heben \\
  988. Byte 0 & Bit 4 & Auswerfer 1 senken \\
  989. Byte 0 & Bit 3 & Auswerfer 2 heben \\
  990. Byte 0 & Bit 2 & Auswerfer 2 senken \\
  991. Byte 0 & Bit 1 & Abdrücker Seitenteil links einfahren \\
  992. Byte 0 & Bit 0 & Abdrücker Seitenteil links ausfahren \\
  993. \midrule
  994. Byte 1 & Bit 7 & Abdrücker Seitenteil rechts einfahren \\
  995. Byte 1 & Bit 6 & Abdrücker Seitenteil rechts ausfahren \\
  996. Byte 1 & Bit 5 & Rolltor schließen \\
  997. Byte 1 & Bit 4 & Rolltor öffnen \\
  998. Byte 1 & Bit 3 & Gaswagen ausfahren \\
  999. Byte 1 & Bit 2 & Gaswagen einfahren \\
  1000. Byte 1 & Bit 1 & Schwenkplatte abklappen \\
  1001. Byte 1 & Bit 0 & Schwenkplatte einklappen \\
  1002. \midrule
  1003. Byte 2 & Bit 7 & Losteil 1 Unterteil einfahren \\
  1004. Byte 2 & Bit 6 & Losteil 1 Unterteil ausfahren \\
  1005. Byte 2 & Bit 5 & Losteil 2 einfahren \\
  1006. Byte 2 & Bit 4 & Losteil 2 ausfahren \\
  1007. Byte 2 & Bit 3 & Losteil 3 einfahren \\
  1008. Byte 2 & Bit 2 & Losteil 3 ausfahren \\
  1009. Byte 2 & Bit 1 & Losteil 4 einfahren \\
  1010. Byte 2 & Bit 0 & Losteil 4 ausfahren \\
  1011. \midrule
  1012. Byte 3 & Bit 7 & Losteil 5 einfahren \\
  1013. Byte 3 & Bit 6 & Losteil 5 ausfahren \\
  1014. Byte 3 & Bit 5 & Seitenteil links schließen \\
  1015. Byte 3 & Bit 4 & Seitenteil rechts schließen \\
  1016. Byte 3 & Bit 3 & Seitenteil links und rechts öffnen \\
  1017. Byte 3 & Bit 2 & Sandschleuse schließen \\
  1018. Byte 3 & Bit 1 & Sandschleuse öffnen \\
  1019. Byte 3 & Bit 0 & Sandmessung 3 Wege Ventil schließen \\
  1020. \midrule
  1021. Byte 4 & Bit 7 & Sandmessung 3 Wege Ventil öffnen \\
  1022. Byte 4 & Bit 6 & Schuss \\
  1023. Byte 4 & Bit 5 & Hubtisch senken \\
  1024. Byte 4 & Bit 4 & Hubtisch heben \\
  1025. Byte 4 & Bit 3 & Oberteil heben \\
  1026. Byte 4 & Bit 2 & Oberteil senken \\
  1027. Byte 4 & Bit 1 & \\
  1028. Byte 4 & Bit 0 & \\
  1029. \bottomrule \\
  1030. \caption{Struktur des Datenbausteins DB3 im LFB Versuch}
  1031. \end{longtable}
  1032. \subsection{Messergebnisse eines Anlagenzykluses an der LFB65}
  1033. \label{raw_measurements_one_cycle}
  1034. \includegraphics[width=10cm]{diagrams/raw-measurement-lfb65-rotated.png}
  1035. \includegraphics[angle=90,width=6cm]{out/diagrams/hengli-timing/Hengli-Timing.png}
  1036. \newpage
  1037. \subsection{PLC Tags der LL20 Kernschießmaschine}
  1038. \label{ab_Tags}
  1039. \begin{longtable}[]{@{}lll@{}}
  1040. \toprule
  1041. \textbf{Tag{[}Byte Offset{]}} & BE Bit Index & Name\\
  1042. \midrule
  1043. \endhead
  1044. B14{[}31{]} & 1 & ejector\_move\_down\\
  1045. B14{[}32{]} & 1 & ejector\_move\_up\\
  1046. B14{[}34{]} & 1 & carriage\_move\_out\\
  1047. B14{[}35{]} & 1 & carriage\_move\_in\\
  1048. B14{[}37{]} & 1 & side\_clamps\_open\\
  1049. B14{[}38{]} & 1 & side\_clamps\_close\\
  1050. B14{[}42{]} & 1 & table\_move\_down\\
  1051. B14{[}43{]} & 1 & table\_move\_up\\
  1052. B14{[}45{]} & 1 & gassing\_platemove\_out\\
  1053. B14{[}46{]} & 1 & gassing\_plate\_move\_in\\
  1054. B14{[}48{]} & 1 & cope\_eject\_plate\_move\_out\\
  1055. B14{[}49{]} & 1 & cope\_eject\_plate\_move\_in\\
  1056. B14{[}51{]} & 1 & top\_part\_move\_up\\
  1057. B14{[}52{]} & 1 & top\_part\_move\_down\\
  1058. B14{[}54{]} & 1 & front\_door\_open\\
  1059. B14{[}55{]} & 1 & front\_door\_close\\
  1060. B14{[}57{]} & 1 & pneumatic\_loose\_part\_1\_move\_out\\
  1061. B14{[}58{]} & 1 & pneumatic\_loose\_part\_1\_move\_in\\
  1062. B14{[}60{]} & 1 & hydraulic\_loose\_part\_2\_move\_out\\
  1063. B14{[}61{]} & 1 & hydraulic\_loose\_part\_2\_move\_in\\
  1064. B14{[}63{]} & 1 & hydraulic\_loose\_part\_3\_move\_out\\
  1065. B14{[}64{]} & 1 & hydraulic\_loose\_part\_3\_move\_in\\
  1066. B14{[}69{]} & 1 & clamping\_device\_side\_clamp\_left\_clamp\\
  1067. B14{[}70{]} & 1 & clamping\_device\_side\_clamp\_left\_loose\\
  1068. B14{[}72{]} & 1 & clamping\_device\_side\_clamp\_right\_clamp\\
  1069. B14{[}73{]} & 1 & clamping\_device\_side\_clamp\_right\_loose\\
  1070. B14{[}81{]} & 1 & clamping\_device\_shoot\_plate\_clamp\\
  1071. B14{[}82{]} & 1 & clamping\_device\_shoot\_plate\_loose\\
  1072. B14{[}83{]} & 1 & sand\_refill\\
  1073. B14{[}84{]} & 1 & sand\_gate\_close\\
  1074. B14{[}85{]} & 1 & sand\_gate\_open\\
  1075. B14{[}93{]} & 1 & shoot\\
  1076. B14{[}103{]} & 1 & clamping\_device\_gassing\_plate\_clamp\\
  1077. B16{[}12{]} & 1 & central\_amine\_supply\_refill\\
  1078. B16{[}13{]} & 1 & gassing\\
  1079. B16{[}15{]} & 1 & gas\_generator\_process\_coldbox\_betaset\\
  1080. B18{[}31{]} & 1 & mixer\_lid\_move\_up\\
  1081. B18{[}32{]} & 1 & mixer\_lid\_move\_down\\
  1082. B18{[}35{]} & 7 & mixer\_wing\_motor\_on\\
  1083. B18{[}37{]} & 1 & mixer\_move\_up\\
  1084. B18{[}38{]} & 1 & mixer\_move\_down\\
  1085. B18{[}40{]} & 1 & sand\_dosing\_unit\_inlet\\
  1086. B18{[}42{]} & 1 & sand\_dosing\_unit\_outlet\\
  1087. B18{[}44{]} & 1 & binder\_1\_sucking\\
  1088. B18{[}45{]} & 1 & binder\_1\_blowing\\
  1089. B18{[}47{]} & 1 & binder\_2\_suction\\
  1090. B18{[}48{]} & 1 & binder\_2\_blowing\\
  1091. B18{[}50{]} & 1 & binder\_3\_sucking\\
  1092. B18{[}51{]} & 1 & binder\_3\_blowing\\
  1093. B18{[}53{]} & 1 & binder\_4\_sucking\\
  1094. B18{[}54{]} & 1 & binder\_4\_blowing\\
  1095. B18{[}59{]} & 1 & additive\_1\_dosing\\
  1096. B18{[}60{]} & 1 & additive\_2\_dosing\\
  1097. B18{[}62{]} & 1 & mixer\_bowl\_direction\_eject\_1\_machine\\
  1098. B18{[}63{]} & 1 & mixer\_bowl\_direction\_eject\_2\_scrap\\
  1099. B18{[}65{]} & 1 & cleaning\_cylinder\_move\_up\\
  1100. B18{[}66{]} & 1 & cleaning\_cylinder\_move\_down\\
  1101. B18{[}68{]} & 1 & mixer\_sand\_slide\_move\_to\_machine\\
  1102. B18{[}69{]} & 1 & mixer\_sand\_slide\_move\_to\_scrap\\
  1103. B18{[}71{]} & 1 & vertical\_mixersand\_slide\_gateclose\\
  1104. B18{[}72{]} & 1 & vertical\_mixer\_sand\_slide\_gate\_open\\
  1105. B18{[}73{]} & 1 & sand\_sender\\
  1106. \bottomrule \\
  1107. \caption{Ausgelesene PLC-Tags im LL20 Versuch}
  1108. \end{longtable}
  1109. \subsection{DF2101 Datenblatt}
  1110. \label{ifm_df2101}
  1111. Quelle: \url{https://www.ifm.com/de/de/product/DF2101}
  1112. \noindent
  1113. Stand: 01.10.2021
  1114. \noindent
  1115. (nächste Seite)
  1116. \includepdfmerge[pages=-,scale=0.9,nup=1x2]{external-content/ifm-DF2101-20190131-IODD11-de_V5.pdf}
  1117. \end{appendices}
  1118. \newpage
  1119. \section*{Eidesstattliche Erklärung}
  1120. Ich versichere an Eides statt, dass ich die vorstehende Arbeit selbstständig und ohne fremde Hilfe angefertigt und mich anderer als der im beigefügten Verzeichnis angegebenen Hilfsmittel nicht bedient habe. Alle Stellen, die wörtlich oder sinngemäß aus Veröffentlichungen übernommen wurden, sind als solche kenntlich gemacht. Alle Internetquellen sind der Arbeit beigefügt. Des Weiteren versichere ich, dass ich die Arbeit vorher nicht in einem anderen Prüfungsverfahren eingereicht habe und dass die eingereichte schriftliche Fassung der auf dem elektronischen Speichermedium entspricht.
  1121. \vspace{3cm}
  1122. \begin{flushleft}
  1123. Ort, Datum \hspace{10.76cm} Unterschrift
  1124. \end{flushleft}
  1125. \end{document}