Automatisierungstechnische Praxis

Powered by counter.bloke.com

 
 
 
 

http://www.dziapko.de/sps_1.htm
 


 
The analysis of the software development process for programmable logic controls (PLC) in tlre special machine tools and production systems industry reveals the demand for powerful development methods and support tools to cope with increasing complexity of extensive control software of automated systems. Software testing and setting into operation of production systems is given special consideration along with software design. The software concepts on the international standard IEC 1131/3 (previously IEC 65A/(SEC)67and IEC65A(SEC)90) allow to reduce the eff'ort for programming of PLCs in type-specific, assembler-like languages. A software development environment is presented supporting the high level langccage "Structured Text .' and the IEC-instruction list. The languages for control applications can be translated into instruction lists of commercially available PLCs. To analyse and erase errors in PLC programs, distinct error categories can be handled separately. A PLC-interpreter and debugger is part of the development system and allows user-controlea program execution and user friendly manipulation of stored data for software testing.

Die Analyse der Softwareentwicklung für speicherprogrammierbare Steuerungen (SPS) im Sondermaschinen und Anlagenbau macht den Bedarf für leistungsfähige Entwicklungsmethoden und Werkzeuge zur Bewältigung der steigenden Komplexität umfangreicher Steuerungssoftware von Automatisierungssystemen deutlich. Neben dem Programmentwurf müssen vor allem der Softwaretest und die Inbetriebnahme unterstützt werden. Mit dem Sprachkonzept der IEC 1131/3 (bisher DIN-IEC 65A (Sec) 67) kann der bisher hohe Aufwand für die Programmerstellung für SPS in herstellerspezifischen, assemblerartigen Sprachen reduziert werden. Die vorgestellte Softwareentwicklungsumgebung unterstützt die Programmerstellung in der höheren Sprache "Strukturierter Text" (IEC-ST) und der IEC-Anweisungsliste (IEC-AWL), die in die Anweisungsliste einer handelsüblichen SPS übersetzt werden. Fehlerursachen können durch Test-,und Inbetriebnahmehilfen analysiert und behoben werden durch getrennte Bearbeitung einzelner Fehlerklassen. Ein Steuerungsinterpreter bzw. Debugger auf dem Entwicklungsrechner der SPS-Software (Programmiergerät) ermöglicht den kontrollierten Programmablauf und die Manipulation beliebiger Speicherbereiche zur semantischen Prüfung des Programms.
 
 
 
 

1. Einleitung

Die Situation des Entwicklers von Software für speicherprogrammierbare Steuerungen (SPS) ist nicht beneidenswert. Bei der Inbetriebnahme von Fertigungsanlagen und Maschinen müssen schwierige Aufgaben unter den Arbeitsbedingungen der Produktion durchgeführt werden. Neben Lärm, erhöhten Umgebungstemperaturen und oft beengten Platzverhältnissen können Zeitdruckund Softwareentwicklungssysteme mit eingeschränkter Benutzerfreundlichkeit ein hohes Maß an Streß beim Programmierer erzeugen.

Unzureichend strukturierte und fehlerhafte Software, elektrische Verkabelungsfehler und mechanische Störungen verursachen Fehlfunktionen einer Anlage. Nur mit einer genauen Kenntnis des gesamten Automatisierungssystems und durch die Analyse der Steuerungszustände und des funktionalen Maschinenablaufs können die Funktionsstörungen beseitigt werden. Dabei kann das Steuerungsprogramm nicht isoliert betrachtet werden. Er~ das richtige Zusammenspiel der softwaretechnisch definierten Steuerungslogik, der elektrischen Bauteile und ihrer Installation sowie der Mechanik der Fertigungseinrichtung führt zur gewünschten Funktion des Gesamtsystems.

Die Analyse und Beseitigung von Fehlern mit dem Ziel, einen sicheren und funktionstüchtigen Anlagenbetrieb herzustellen, erfordert deshalb ein hohes Maß an gedanklicher Konzentration des Softwareentwicklers. Durch ein übersichtlich strukturiertes und zustandsorientiert gestaltetes Steuerungsprogramm werden die Fehlersuche vereinfacht und die für die Inbetriebnahme benötigte Zeit reduziert.

Entwurf und Implementierung des Steuerungsprogramms beanspruchen im Sondermaschinenbau in etwa die selbe Zeit wie die Inbetriebnahme. Maßnahmen, Steuerungssoftware effektiver, einfacher und in kürzerer Zeit zu erstellen, müssen deshalb neben dem Programmentwurf vor allem den Softwaretest und die Anlagendiagnose unterstützen. Die benutzerfreundliche Bedienung der Entwicklungsumgebung für Steuerungsprogramme, die den Zugriff auf alle relevanten Konstruktions- und Programminformationen einer Produktionsanlage unterstützt, verdient deshalb besondere Auf merksamkeit.

Die Erhöhung der Effizienz und die Erleichterung der Arbeit bei der SPS-Softwareentwicklung lassen sich durch folgende Ziele erreichen: Erstens ist ein wirkungsvolles Projektmanagement des Anlagenerstellungsprozesses erforderlich, das die Kontrolle der im Pflichtenheft spezifizierten Forderungen übernimmt, die Informationsflüsse zwischen den Projektmitarbeitern organisiert und überprüft und damit für die Integration der verschiedenen Teilbereiche des Projekts sorgt. Zweitens benötigt der Softwareentwickler geeignete Methoden und Werkzeuge für den Entwurf, die Implementierung und den Test von SPS-Programmen, die im folgenden genauer untersucht werden.

Die integrierte Auftragsabwicklung [l; 2] und Konstruktion [3; 4] und Simultaneous Engineering [5 bis 8] unterstützen dabei die effektive Planung und Organisation der Abläufe bei der Realisierung von automatisierten Produktionssystemen und -einrichtungen. Vorgehensweise und Methodik für die Planung und das Projektmanagement bei der Anlagenentwicklung, auf die im vorliegenden Beitrag nicht näher eingangen werden soll, werden in [9] und [10] behandelt.

2. Analyse der Softwareentwicklung für SPS

Der vorliegenden Analyse der Softwareentwicklung für SPS liegen die aus der Beratungspraxis im Bereich F & E-Management gewonnenen Erfahrungen mit mittelständischen Sondermaschinenherstellern zugrunde. Kennzeichnend für diesen Bereich sind spezialisierte konstruktive und steuerungstechnische Lösungen, die hohe technische und organisatorische Anforderungen an die Anlagenplanung und -herstellung stellen. Steigende Entwicklungsleistungen für komplexe Produktionseinrichtungen sind auf Grund verringerter Lieferfristen in einem kürzeren Zeitraum zu erbringen. Die Konstruktions- und Softwarekosten sind im Sondermaschinenbau auf eine oder wenige Anlagen umzulegen. Nach Abschluß der Spezifikationsphase auftretende Kundenforderungen müssen auch während der Anlagenherstellung mit Änderungsaufträgen ausgeführt werden.

Die Entwicklung einer Fertigungseinrichtung läuft in der Praxis meist sequentiell ab. Die Spezifikation aus dem Kaufvertrag und der Grobentwurf werden von der mechanischen Konstruktion detailliert und weiter ausgeführt. Die dabei entstehenden Unterlagen stellen die Eingangsinformationen für die elektrische Hardwareplanung dar. Ihre Aufgabe ist die Auswahl der elektrischen Aktoren und Sensoren, der Bedienungselemente und der Stromversorgungseinrichtungen sowie der Schaltungsentwurf.
 

a) Der Einsatzbereich von SPS

Bei der Wahl des Steuerungsrechners muß, abhängig vom Umfang und von der Art der Aufgabe, entschieden werden, ob eine oder mehrere SPS, ein Prozeßrechner [11; 12] oder beide Rechnerarten zum Einsatz kommen. Mit der Rechnerarchitektur und der Steuerungshardware werden wesentliche Randbedingungen eines Automatisierungssystems festgelegt. Sinkende Hardwarepreise und zunehmende Softwarekosten führen hier zu modularen, dezentralen Steuerungsarchitekturen mit übersichtlichen Teilsystemen. Die Festlegung und Durchsetzung von standardisierten Bussystemen und Kommunikationsprotokollen [13; 14] vereinfacht die Vernetzung unterschiedlicher Automatisierungsrechner und ermöglicht den Einsatz der für die jeweiligen Anforderungen am besten geeigneten Hardware. Überschaubare Aufgabenbereiche, die von einem Rechner bearbeitet werden und über eindeutige Schnittstellen verfügen, reduzieren die Komplexität der Anlagensteuerung. Die Aufspaltung umfangreicher Steuerungsaufgaben in weitgehend unabhängige Teilprobleme vereinfacht die Implementierung der Steuerung und ergibt strukturierte, einfach zu wartende Softwarelösungen.

Zur Verringerung des Aufwands für die Softwareerstellung ist die Auswahl geeigneter Hardware deshalb wesentlich. Die Verarbeitung vieler paralleler Binärsignale unter Echtzeitbedingungen ist das klassische Einsatzfeld von SPS. Auch komplexe logische Verknüpfungen von Binärsignalen lassen sich für SPS einfach programmieren.

Eine Beschreibung und Abgrenzung der Eigenschaften von SPS wird in [15] vorgenommen. Einführende Informationen über SPS finden sich in [16] und [17].

Die SPS kann durch ihre modulare Struktur auf die Steuerungsaufgabe einfach zugeschnitten werden und bietet Module mit Sonderfunktionen für spezielle Steuerungsaufgaben, wie z. B. das Positionieren, Zählen oder die Datenkommunikation. Diese Funktionen verursachen nur einen geringen Softwareaufwand durch die weitgehende Unterstützung der Hard- und Firmware der Modulbaugruppen. Darüber hinaus sind SPS für den Einsatz in einem rauhen, industriellen Umfeld ausgelegt und bieten eine hohe Betriebszuverlässigkeit durch Selbstdiagnosefunktionen, Potentialtrennung an den Schnittstellen zum Anlagenprozeß und ein definiertes Verhalten des Programms bei Störungen und beim Anlauf nach dem Einschalten der Steuerung.

Fallen neben der logischen Verarbeitung von Binärsignalen umfangreiche Datenkommunikations-, Konvertierungs- und Erfassungsaufgaben an, so stellt eine Kombination aus SPS und Industrie-PC eine günstigere Rechnerlösung dar als der alleinige Einsatz nur eines Steuerungsrechners. Durch den Fortschritt in der Hardwareentwicklung ist der Aufwand für die Verbindung von SPS und PC minimal. Die Integration über einen Systembus [18] bildet dabei eine flexibel einsetzbare und leistungsfähige Architektur. Mit der SPS lassen sich einerseits hohe Anforderungen an die Echtzeitverarbeitung der Binärsignale erfüllen. Für den PC kann andererseits ein großes Spektrum von Standard-Software eingesetzt werden, das herstellerunabhängig ist und durch eigene Programme in beliebigen Sprachen ergänzt werden kann.

Den zunächst höheren Kosten der Steuerungs-Hardware beim kombinierten Einsatz von SPS und Industrie-PC stehen Einsparungen auf der Seite der Softwareentwicklung und -wartung gegenüber, welche die Gesamtkosten bei komplexen Anlagensteuerungen senken. Bei umfangreichen Automatisierungsanlagen in der Fertigung ist auch die Dezentralisierung der SPS-Aufgaben sinnvoll, um zu lange Programmzykluszeiten und dadurch resultierende Probleme mit der Echtzeitdatenverarbeitung zu umgehen. Die modulartige Organisation der Stationen von Fertigungsanlagen erlaubt es, Schnittstellen für den Datenaustausch mit geringem Aufwand zu definieren und das Steuerungsprogramm in einem leicht überschaubaren Umfang zu halten.

SPS mit mehreren Prozessoren, deren Rechenleistung durch zusätzliche CPU-Karten erweiterbar ist [l9], können bei größeren Aufgaben flexibel an die Anforderungen der Verarbeitungsgeschwindigkeit der Steuerungsaufgabe angepaßt werden. Die Verteilung der Programme auf die einzelnen Prozessoren unterstützt dabei die Strukturierung der Softwarelösung. Außerdem kann auf alle Steuerungsdaten der Anwendung einfach zugegriffen werden.
 

b) Phasenmodell der SPS-Softwareentwicklung

Die Entwicklung von SPS-Software kann in mehrere Phasen gegliedert werden:

-Wartung.


Die einzelnen Phasen werden im folgenden näher betrachtet. Eine einführende und vertiefende Darstellung der SPS-Programmierung ist in [15; 20; 21] zu finden.

Anforderungsdefinition

Alle die Software betreffenden Bestimmungen des Auftrags und des Pflichtenhefts eines Automatisierungssystems können direkt in die Anforderungsdefinition der Software übernommen werden. Programmier- und Dokumentationsrichtlinien des Auftraggebers sollten explizit erfaßt werden, wenn sie in Form von Firmenbestimmungen oder -normen im Auftrag erwähnt sind. Die Unterlagen der mechanischen und elektrischen Konstruktion ergänzen die Anforderungen an die Software. Der Funktionsablauf des automatisierten Prozesses und die in den Schaltungsunterlagen bereits festgelegte Schnittstelle zwischen Steuerung und Prozeß liefern die wesentlichen Informationen.

Im Gegensatz zu konventionellen Datenverarbeitungsprogrammen bildet ein Steuerungsprogramm keine abgeschlossene Einheit mit dem Rechner, der das Programm ausführt. Durch die Kopplung an den Datenverarbeitungsprozeß ist die Berücksichtigung des physikalischen Maschinenprozesses bei der Informationsverarbeitung notwendig. Bild I verdeutlicht dies in einer schematischen Darstellung. Die eindeutige Beschreibung der mechanischen und elektrischen Ausführung einer Produktionsanlage ist deshalb eine Voraussetzung für die Definition der Anforderungen an die Steuerung. Gelangt der Informationsfluß der Konstruktionsdaten unvollständig oder zu spät zur Softwareentwicklung, kann keine gültige Spezifikation der Steuerungsprogramme erstellt werden. Die Wichtigkeit eines gut organisierten und verwalteten Auftragsdurchlaufs einer Fertigungsanlage wird dadurch deutlich. Vor allem die zuverlässige, konsistente und rasche Informationsbereitstellung und -verteilung ist für die neuen SPS-Typs und seiner Softwareentwicklungsumgebung vertraut zu machen.

Obwohl die auf einzelne Steuerungsfamilien spezifisch zugeschnittenen Softwarepakete zur Programmentwicklung in den letzten Jahren in ihrer Funktionalität erweitert und in der Bedienungsfreundlichkeit verbessert wurden, werden sie den steigenden Anforderungen nicht voll gerecht. Das Hauptproblem liegt in der starren, hierarchisch organisierten Bedienung. Werden verschiedene Informationen gleichzeitig benötigt, so müssen sie, mit oft langen, umständlichen Bedienungsfolgen, nacheinander abgefragt werden. Es ist z. B. meist nicht möglich, den aufrufenden und den aufgerufenen Programmbaustein parallel zu editieren und die Symbolliste mit den Zuordnungen der absoluten Speicheradressen gleichzeitig darzustellen. Eine effiziente, benutzerfreundliche Entwicklungsumgebung muß dies jedoch ermöglichen. Lediglich Funktionen zur einfachen Bearbeitung des Programmtextes, wie z. B. Suchen nach Begriffen oder Kopieren eines Textabschnitts, werden unterstützt.

Inbetriebnahme

Die Inbetriebnahme eines Automatisierungssystems betrifft nicht nur die Softwareentwicklung, sondern alle an der Herstellung beteiligten konstruktiven und fertigungstechnischen Bereiche [31]. Entsprechend dem Gehirn eines Lebewesens. nimmt die Steuerung die Ausführung der Kontroll-, Steuer- und Entscheidungsfunktionen wahr. Erst durch die Ansteuerung der Aktorik und Erfassung der Sensorsignale kann die Funktionsfähigkeit einer Anlage geprüft werden. Die Fehlerdiagnose und -analyse erfolgt deshalb auf der Grundlage der Steuerungsfunktionen und der Erfassung der Anlagenzustände im Monitorbetrieb der SPS mit dem Programmiergerät. Der Softwareentwickler hat aus diesem Grund die führende Rolle bei der Inbetriebnahme. Auch wenn viele Fehlfunktionen keine primär softwaretechnische Ursache haben, werden sie dennoch in erster Linie von ihm festgestellt. Um das Gesamtsystem bei der Inbetriebnahme in einen funktionstüchtigen Zustand zu bringen, gibt es prinzipiell unterschiedliche Möglichkeiten. Ein Näherungsschalter, der eine Hubbewegung auslöst, kann z. B. durch vorzeitiges Schalten Störungen verursachen. Die Behebung der Störung kann durch Versetzen des Schalters (mechanisch), durch Einstellen des Schaltbereichs (elektrisch) oder durch eine programmierte Verzögerung (softwaretechnisch) erfolgen.

Zur Unterstützung der Inbetriebnahme bieten SPS in Verbindung mit ihren Programmiergeräten Test- und Monitorfunktionen [32]. Die Möglichkeit, Programmbausteine im Online-Test auf der Steuerung zu editieren und die Programmbearbeitung zu visualisieren, ist eine wichtige Hilfe, den korrekten Ablauf eines Programms zu überprüfen. Durch die Darstellung von Registerinhalten und Speicherbereichen können dabei interne Zustände der Steuerung überwacht werden.

Für Boolesche Verknüpfungen und Steuerungszustände. die den klassischen Einsatzfall von SPS darstellen, sind diese Testfunktionen bestens geeignet. Speicherbereiche mit schnell wechselnden Inhalten und Programmabschnitte, die nur bedingt mit umfangreicher Verarbeitung von Datenworten oder indirekter Adressierung durchlaufen werden, sind damit jedoch nur schwer überprüfbar. Komfortable Programmiersysteme ermöglichen deshalb die Protokollierung des Monitorbetriebs. Diese wichtige Unterstützung kann aber die fehlende. frei manipulierbare Offline-Logikanalyse des SPS-Programms nicht ersetzen. Speziell die zunehmend notwendigen Programmteile der Datenerfassung und -kommunikation bei Vernetzung, Qualitätssicherung, Visualisierung, Identifikation und Auftragsverwaltung machen die Prüfung und Kontrolle des Programmablaufs mit den Funktionen eines Debuggers erforderlich.

Dokumentation

Die Dokumentation eines SPS-Programms umfaßt üblicherweise den Quellcode des erstellten Programms, die Symbolliste und die Querverweisliste. In der Symbolliste werden absoluten Speicheradressen zum einfacheren Verständnis Bezeichnungen zugeordnet. Die Querverweisliste dokumentiert, an welchen Stellen im Programm ein Operand verwendet wurde, und welche Operation dabei ausgeführt wird. Darüber hinaus sind. neben den Unterlagen von Peripherieeinheiten (z. B. Textanzeigen, Bedienpulte...) und deren Bedienungsanleitungen, freie verbale Dokumentationstexte üblich.

Auch wenn die endgültigen Dokumentationsunterlagen nach Abschluß der Inbetriebnahme fertiggestellt werden, ist die Erfassung und Aufbereitung der Entwicklungsinformationen ein parallel zum Erstellungsprozeß der Software ablaufender Vorgang. Dabei müssen die Dokumentationsunterlagen den einfachen Zugriff auf den aktuellen Entwicklungsstand eines Projekts ermöglichen. Die bereichsübergreifende Abstimmung und Prüfung der Konstruktionsunterlagen erfordert außerdem eine umfassende projektbezogene Informationsverwaltung.

Wartung

Fertigungseinrichtungen unterliegen einer ständigen Optimierung. Nach Aufnahme des Produktionsbetriebs ergeben sich häufig auch Erweiterungen. Eingriffe in die Steuerungssoftware sind deshalb nicht ungewöhnlich. Bei Reparaturarbeiten ist der Zugriff auf die SPS und auf den Monitorbetrieb zur Fehleranalyse verbreitet, wenn Anlagen ohne Diagnoseauswertung die Fehlerursache nicht direkt anzeigen. Neben der Dokumentation der Software sind die Schaltungsunterlagen einer Produktionseinrichtung für die einfache Durchführung von Wartungsarbeiten an der Steuerung wichtig.
 
 


 
 

Copyright © 1999
This Home Page was created by Netscape Composer Sun 02-07-1999
http://www.dziapko.de/sps_1.htm