Qualität gibt an, in welchem Maß ein Produkt den allgemein bestehenden Anforderungen entspricht und ist gleichzeitig ein Synonym für Güte. (siehe Wikipedia, \’Qualität\‘, 10.3.2012) Im Bereich Software-Engineering steht \’Qualität\‘ für: Komplexes einfach und strukturiert umetzen. Die Minimierung der Entwicklungszeiten und somit der Kosten ist dabei nur ein wichtiger Aspekt. Ebenso wichtig sind Faktoren wie Modularität, Wiederverwendbarkeit, einfache Wartbarkeit und somit eine \’höhere Lebenserwartung\‘ der Software. Diesen Qualitätsmerkmalen kann mit objektorientierten Konzepten entsprochen werden. Mit objektorientierten Engineering Tools, wie zum Beispiel Lasal von Sigmatek, lassen sich die Engineeringzeiten erheblich reduzieren und neue Ausprägungen von Maschinenteilen können mit minimalem Programmier- und Testaufwand umgesetzt werden. Bei der objektorientierten Programmierung (=OOP) werden Code und Daten in logische Einheiten, in \’Objekte\‘ zusammengefasst und in einem Block gekapselt. Dies macht schon aus dem Grund Sinn, weil zumeist ein bestimmter Codeteil für bestimmte Daten verantwortlich ist. Die Objekte werden nach außen hin abgeschottet, sodass eine ungewollte Beeinflussung ausgeschlossen werden kann. Hinter einem Objekt steht jeweils eine Klasse. Sie ist der \’Bauplan\‘ für ein Objekt und definiert den Programmcode und die Datenelemente. Sobald diese Funktionsblöcke mit Parametern und Schnittstellen versehen sind, bezeichnet man sie als Objekte. Welche Vorteile bietet die Kapselung? Jeder Programmierer kennt das Problem von unstrukturiertem Code, wo Variablen kreuz und quer im Projekt verteilt beschrieben werden, sodass die Auswirkungen einer Programmänderung praktisch nicht vorhersehbar sind. Anders bei der OOP: Hier ist diese Variable nur über zugehörige Methoden manipulierbar. Somit sind klare Schnittstellen vorgegeben, die es dann auch zu verwenden gilt. Durch Client/Server-Technik müssen nicht für jeden Zugriff auf Variablen eigene Methoden erzeugt werden. Ein Server bringt per Definition bereits Write- und Read-Methoden mit, der Programmieraufwand verringert sich. Moderne Engineering Tools wie Lasal von Sigmatek übernehmen immer wiederkehrende Funktionen für den Anwender. So wird beispielsweise der Code für die Deklarationen von Klassen, Variablen, Schnittstellen etc. automatisch im Hintergrund erstellt. Dem Anwender bleibt nur mehr die Implementierung der Methoden in der Klasse, fehlerhafte Deklarationen werden minimiert. Dazu kann er auf bewährte Programmiersprachen wie Structured Text (ST), Anweisungsliste (AWL), Kontaktplan (KOP) nach IEC 61131-3 oder ANSI-C zurückgreifen. Flexibles Baukastensystem Die einzelnen Software-Module (Objekte) lassen sich wie in einem Baukastensystem zusammensetzen. Der Vorteil dieser Entwicklungsmethode ist ihre durchgängige Modularität von der untersten Ebene der einzelnen Funktion bis hinauf zum Gesamtprojekt. Funktionen können einzeln oder in Gruppen entwickelt, getestet, hinzugefügt, ausgetauscht oder bei Nicht-Verwendung einer Option ausgeblendet werden. Wie in der Mechanik, wo eine erprobte Konstruktion wiederverwendet wird, können auch bei der OOP dank der modularen Struktur einmal erstellte und getestete Applikationsteile einfach wieder verwendet werden, ohne diese noch einmal überprüfen zu müssen. Software wird somit \’nachhaltig\‘, das ist gerade bei komplexen Applikationen ein wichtiger Faktor. Denn wenn Code über längere Zeit verwendet wird – was ja prinzipiell erstrebenswert ist – entsteht bei bisherigen Programmiermethoden oft ein undurchschaubares Softwaregebilde. Durch die Strukturiertheit der OOP ist es hingegen möglich, bestehende Klassen zu erweitern beziehungsweise zu verändern (Ableitung) – und zwar ohne dazu in die ursprüngliche Klasse eingreifen zu müssen. Die Änderungen sind somit immer nachvollziehbar und einfach zu erkennen. Mit der OOP wird Code also einfach lesbar, testbar und wiederverwendbar. So lässt sich die Qualität der Software erheblich steigern und der Programmieraufwand minimieren. Diese Strukturiertheit der OOP kommt dem Maschinenbauer vor allem bei komplexen Projekten zu Gute. Je umfangreicher das Projekt ist und je mehr Personen über den Produktlebenszyklus daran beteiligt sind – sprich umso mehr das Maschinenprogramm im Laufe der Zeit wächst -, desto gewichtiger ist der Vorteil, der sich durch die Übersichtlichkeit dank klarer Kapselung ergibt. Mehr Transparenz durch grafische Darstellung LASAL arbeitet mit grafischer Darstellung. Dies trägt ebenfalls zur Vereinfachung bei. Beim grafischen Ansatz werden die von Klassen erzeugten Objekte (Maschinenmodule) in sogenannten Netzwerken dargestellt. Der Entwickler sieht auf den ersten Blick die Eigenschaften eines Maschinenteils sowie die Kommunikation mit anderen Objekten also anderen Maschinenteilen. Das Ändern einer Klasse über die Bedienoberfläche wirkt sich sofort auf die grafische Darstellung aus. Die Maschine wird somit in der Software grafisch nachgebildet. Vererbung erhöht Modularität Stichwort Vererbung: Bei vielen Projekten existieren ähnliche Funktionalitäten in unterschiedlichen Ausprägungen. Eine Klasse lässt sich durch Vererbung verfeinern, indem die Basisklasse um zusätzliche Informationen des Programmcode erweitert und angepasst wird. Nehmen wir als Beispiel die Ansteuerung von Antrieben. Zum einen gibt es hier eine Klasse, die die Bewegungsabläufe des Antriebs je nach Maschinenzustand implementiert. Diese Klasse setzt Kommandos wie Enable, FahreReferenz oder MoveToPosition an den Antrieb ab. Je nach Maschinenvariante ist es oft nötig, unterschiedliche Antriebsarten anzusteuern, wie etwa einen Servoantrieb, einen Schrittmotor oder eine reine Simulation der Verfahrbewegung für Präsentations- und Testzwecke. Softwaretechnisch am unsinnigsten wäre es dabei, die verschiedenen Antriebsarten schon in der Klasse für den Bewegungsablauf zu berücksichtigen, da die Software dadurch komplex und schlechter test- beziehungsweise wartbar wird. Die Objektorientierung ermöglicht hier einfache Abhilfe: Es wird eine Schnittstellenklasse definiert, in der alle Kommandos eingefügt werden, die die Handling-Klasse benötigt. Diese Schnittstellenklasse kann als Basisklasse für die unterschiedlichen Antriebsvarianten dienen. Die Implementierung der einzelnen Methoden wird dann in der Ableitung ausprogrammiert, da die Enable-Funktion für einen Servoantrieb sicher anders aussieht, als für die Simulation. Das Wesentliche an diesem Beispiel jedoch ist, dass die Handling-Klasse immer nur auf die Basisklasse referenziert. Somit wird der tatsächlich angeschlossene Antrieb softwaretechnisch einfach austauschbar. Die einfache Wiederverwendbarkeit, die Eigenschaftsvererbung und die umfangreichen Bibliotheken mit vorgefertigten Softwarebausteinen vereinfachen die Entwicklung. Das größte Potential zur Einsparung von Programmierzeiten liegt aber darin, dass durch die frühzeitige Überprüfbarkeit nur einmal programmiert werden muss. Simulation spart Zeit und Kosten Mit dem Simulationstool Lars kann der Code ohne angeschlossene Steuerung auf einem Windows-Rechner simuliert und getestet werden. Das gilt für komplette Applikationsprogramme, aber auch für noch nicht fertiggestellte Systemteile. So ist es möglich, die Funktionalität der Maschine zu überprüfen und den Quellcode zu debuggen, noch bevor die mechanischen Komponenten fertig sind. Eventuelle Designfehler lassen sich frühzeitig erkennen. Lars kann vielfältig genutzt werden: zum Entwickeln und Testen von Programmen auf dem PC, wenn die eigentliche Zielhardware nicht zur Verfügung steht, für Visualisierungen auf Windows-Rechnern oder für Demo-Applikationen zu Präsentationszwecken. Im Projekt können sogar die Verknüpfungen zu den I/Os bereits bestehen. Diese lassen sich einfach simulieren, auch wenn Hardware physikalisch nicht vorhanden ist. All dies beschleunigt die Entwicklung. Flexible Updates per Kapselung Die gekapselten Objekte kommunizieren über Schnittstellen mit der \’Außenwelt\‘. \’Unsauberkeiten\‘ wie Zugriffe auf Daten an x Stellen im Projekt sind somit erst gar nicht möglich. Dank dieser klar definierten Schnittstellen sind Objekte später mit Leichtigkeit gegen andere austauschbar. Software wird so wartungsfreundlich und leicht testbar – und das noch nach Jahren. Mit der Kapselung bei der OOP ergeben sich somit neue und höchst flexible Möglichkeiten bei Programm-Updates oder Fehlerkorrekturen in der Software. Ein Beispiel: Angenommen ein Softwarebaustein hat die Aufgabe eine Temperatur zu regeln. Es sind tausende Maschinen in unzähligen Maschinenvarianten am Markt und dann stellt man fest, dass der Temperaturregler einen schwerwiegenden Fehler enthält. Klassischerweise müsste der Hersteller nun für jede Maschine den spezifischen Softwarestand korrigieren und an der Maschine updaten. Lasal Class erstellt in diesem Fall auf Knopfdruck einen USB-Stick mit der korrigierten Klasse, in unserem Beispiel dem korrekten Reglerbaustein. Dieser kann überall per Stick oder Online-Fernwartung eingespielt werden, ohne dafür die tatsächlichen Programme auf den Maschinen kennen zu müssen. Komfortables Debugging Eine zügige Entwicklung und umfassende Analyse von Programmen oder auch eine eventuelle Fehlersuchte wird mit einer Vielzahl an integrierten Debugging-Tools erleichtert: Beispiele dafür sind das Setzen von Breakpoints, eine Online-Diagnose im Netzwerk, bei welcher der aktueller Status der einzelnen Objekte ersichtlich ist, eine Wertänderung direkt im Netzwerk und das Absetzen von ganzen Befehlsketten mit Parametern. Mit dem PlcTraceView lassen sich die Task-Abarbeitungen anzeigen. Der Echtzeit Data Analyzer ermöglicht eine Samplerate bis zu 50µs und Realtime-Trendaufzeichnungen. Auch ein umfassender Projektvergleich ist integriert. Programme automatisch erstellen Gekapselte Bausteine eröffnen die Möglichkeit, Projekte mit Hilfe der standardisierten Script-Sprache Python vollkommen automatisch zu erstellen oder abzuändern. So können abgestimmte Software-Versionen für unterschiedliche Ausstattungsvarianten oder Ausprägungen generiert werden. Oft gibt es für eine bestimmte Maschinen-Baureihe ein einziges Basisprojekt. Von diesem können dann automatisch verschiedene Varianten für die kundenspezifischen Maschinen derselben Baureihe abgeleitet werden.
Gekapselter Code erhöht Softwarequalität und Flexibilität
-
Platzsparende Antriebstechnik für die Verpackungsindustrie
Effizient, robust und kompakt
In der Lebensmittel- und Getränkeproduktion ist der Platz meist begrenzt. Daher ist bei der Installation von Förderanlagen oft ein kompaktes Design gefragt. Der schwedische Maschinenbauer Fredriksons nutzt die…
-
Workshop ebnet produzierenden Unternehmen den Weg zur Smart Factory
KI in der Praxis
Smart Manufacturing verlangt nach konkreten Projekten. Ein Workshop zeigt praxisnahe Wege zur Smart Factory auf.
-
Bomag standardisiert die Elektrokonstruktion von mobilen Arbeitsmaschinen
Der Kabelbaum als digitaler Zwilling
Kabelbäume zählen zu den aufwendigsten Baugruppen mobiler Maschinen – und entstehen in vielen Unternehmen noch immer erst spät im Entwicklungsprozess. Bomag hat diesen Ablauf grundlegend verändert: Mit Eplan…
-
Vorsprung im Packaging
Automatisierungstechnik von Beckhoff ermöglicht die effiziente Entwicklung ressourcenschonender Verpackungsmaschinen, verkürzt Konstruktionszeiten und senkt Kosten – für innovative Lösungen und nachhaltige Produktionsprozesse.
-
Modulare I/O-Systeme werden zur Architektur hinter moderner Produktion
Vom Anschlusspunkt zur Dateninfrastruktur
Industrielle Steuerungssysteme werden nicht mehr durch zentralisierte Logik und starre Architekturen bestimmt, sondern entwickeln sich zu dezentralen, datengesteuerten Systemen, die zunehmend davon abhängen, wie Informationen durch das System…
-
Anzeige
Vorsprung im Packaging
Automatisierungstechnik von Beckhoff ermöglicht die effiziente Entwicklung ressourcenschonender Verpackungsmaschinen, verkürzt Konstruktionszeiten und senkt…
-
Nachgefragt: Wie weit die Industrie bei Umsetzung, Security und Compliance ist – Teil 1
Maschinenverordnung 2027: Die Zeit läuft
Der Countdown läuft: Am 20. Januar 2027 wird die EU-Maschinenverordnung 2023/1230 verbindlich. Doch…
-
Messevorschau Sensor+Test 2026
Starkes Rahmenprogramm auf dem Branchentreffpunkt
Die Sensor+Test 2026 bietet ein umfassendes Rahmenprogramm mit Fachforen und Kongressen. Besucher erhalten…
-
Sensorbasierte Echtzeitüberwachung des Schmierungszustands
Das Lager wird zum Sensor
Lagerschäden werden mit klassischer Sensortechnologie typischerweise erst in einem bereits fortgeschrittenen Stadium erkannt,…
-
Integrierte Kompaktantriebe ermöglichen schaltschranklose Maschinen
Es geht auch ohne Einspeisemodul
Dezentrale Servomotoren kommen häufig bei räumlich verteilten Einzelachsen zum Einsatz. Die im Motor…
-
Cobots bringen mehr Effizienz in die EMS-Fertigung
Bestückung neu gedacht
Mit Cobots lassen sich auch komplizierte Prozesse teilautomatisieren, etwa die Bestückung von Leiterplatten…
-
Neue Ansätze und Geschäftsmodelle für zirkuläre Fluidtechnik
Mehr als nur nachhaltig
> Neue Ansätze & Geschäftsmodelle für zirkuläre Fluidtechnik. Bürkert unterstützt Transformationsprozess mit Lösungen…
-
Assistenz für reproduzierbare Fertigungsschritte
Digitale Ordnung statt Papierstapel
Auch wenn viele Produktionen hochautomatisiert sind, spielt sich ein entscheidender Teil der Wertschöpfung…
-
Hohe Untersetzungen und Präzision
Kombinationsgetriebe
Dunkermotoren stellt mit den neuen WG-Kombinationsgetrieben eine wirtschaftliche Lösung für Anwendungen vor, die…
-
Erfassung analoger Signale
Analoges Mixmodul
Das analoge Mixmodul AM 821 aus der S?Dias?Serie von Sigmatek kombiniert acht analoge…
-
Was wurde eigentlich aus …
SafetyBridge Technology von Phoenix Contact?
In der Titelstory des SPS-MAGAZINs 5/2016 ging es unter dem Titel: ‚Die SafetyBridge…
-
Rovema macht mit ctrlX Automation seine Maschinen zukunftssicher
Technologisch flexibel und strategisch unabhängig
Automatisierung bedeutet heute mehr als präzise Bewegungsabläufe. Um zukunftsfähige Maschinen zu entwickeln und…
-
Kompakte S7-Steuerung mit Touchpanel
Die Jedermanns-SPS
Kompakte Panel-SPS-Lösungen mit integrierter Steuerung und I/Os ermöglichen den wirtschaftlichen Ersatz klassischer Handbedienelemente,…
-
Webbasiertes Engineering-Tool als Designer für die schaltschranklose Automatisierung
„Wir vereinfachen die Umsetzung drastisch“
Der neue MX-System Designer von Beckhoff ermöglicht strukturierte und technisch validierte elektrische Auslegung…
-
60% erleben mindestens einen Cyberangriff pro Jahr
TXOne Networks hat seinen Annual OT/ICS Cybersecurity Report 2026 veröffentlicht.
-
Embedded-PC für Edge Computing
Der Embedded-PC DX-1300 von Spectra wurde entwickelt um den steigenden Bedarf an Echtzeitdatenverarbeitung…
-
Einsatz des digitalen Zwillings steigt
Das Industrie-4.0-Barometer von MHP und der LMU zeigt: Industrieunternehmen setzen immer mehr Industrie-4.0-Technologien…
-
Über 200 Artikel
Bedienen und Signalisieren
Mit einem umfangreichen Systembaukasten präsentiert Phoenix Contact neue Lösungen für das Bedienen und…
-
Für Ex-Bereiche
Magnetfreier IE6-Motor
ABB bietet einen IE6 Hyper-Efficiency-Motor anbietet, der nach Atex- und IECEx-Anforderungen für den…
-
Für Rechenzentren
Direct-to-Chip-Flüssigkühlung
Der steigende Einsatz von Künstlicher Intelligenz (KI), High-Performance-Computing (HPC) und beschleunigten Workloads führt…
















