Das Ende der Alternativlosigkeit : Entscheiden Sie sich jetzt gegen den Zufall in der Programmierung

Selmo Technologies

Markus Gruber, CEO Selmo Technology: „Programmierung, wie wir sie bisher kennen, ist ein manueller Prozess. Wir haben dieses Problem erkannt und gelöst!“

- © Selmo Technology

Das Problem beginnt bei der Programmierung, sagt Markus Gruber, CEO von Selmo Technology: „Programmierung, wie wir sie bislang kennen, ist ein manueller Prozess.“ Um ein System, beispielsweise eine Maschine, steuern zu können, wird ein Programm benötigt. Dafür beschreibt der Programmierer den gewünschten logischen Ablauf in einem Prozess. Dieser umfasst allerdings nur die gewünschten Zustände der Maschine. Um sicherzustellen, dass ein Fehler im Prozess auch als solcher erkannt wird, müsste der Programmierer alle übrigen möglichen Zustände der Maschine als Fehler programmieren. Und hier liegt das Problem: Die Anzahl möglicher Zustände eines Systems ist so groß, dass die Beschreibung aller Fehler unmöglich wäre. Also kann man auch dann, wenn kein Fehler angezeigt wird, nicht sicher sein, dass es keinen gibt. „Wir haben dieses Problem erkannt und gelöst“, sagt Gruber.

Selmo Technology

Interview: Selmo-CEO Markus Gruber

Vom Erfinder zum Unternehmer

Nullen und Einsen und viel zu viele Bits

Null und Eins sind die beiden Zustände eines Bits. Ein Bit entspricht der kleinsten Information und ist in jedem digitalen System vorhanden. Weil jedes System natürlich nicht nur aus einem Bit, sondern aus vielen Bits besteht, ergibt sich schnell eine sehr große Anzahl möglicher Bit-Kombinationen, auch Bitmuster genannt. Die Summe aller Zustände errechnet sich aus der Formel 2 hoch Anzahl der Bits und wird als Zustandsraum bezeichnet. So beschreibt ein Bitmuster aus 16 Bits beispielsweise bereits 65.536 Zustände. Diese Problematik der schnell wachsenden Anzahl möglicher Zustände wird auch als state explosion problem bezeichnet. Das gilt auch für Maschinen und Anlagen. Gruber: „Unser Grundgedanke ist, jedes Bit unter Kontrolle zu halten.“ Dementsprechend hat Selmo Technology auch den Firmenslogan kreiert: „Software that never lets you down“ – also Software, auf die man sich verlassen kann. Damit verändert sich die Art, wie die SPS programmiert wird.

Selmo Technology setzt auf einfache, transparente Bedienbarkeit und ein payper- use-Modell. Damit kann jeder Nutzer die Software ausführlich testen, ehe Kosten anfallen.

- © Selmo Technology

Die schwierige Fehlersuche im klassischen Programm

Seit mehr als 40 Jahren werden Steuerungen mithilfe von DEA auf die gleiche Art und Weise programmiert. Der Ablauf wird, ausgehend von der Grundstellung, in einer Schrittkette definiert. Dabei gibt es zwei wichtige Elemente: den Zustand und den Zustandsübergang, auch Transition genannt. Bei jedem Schritt wird zunächst der Ausgang geschaltet und mit dem Feedback des Eingangs wird ein Zustandswechsel herbeigeführt. Alle Zustände, die der Programmierer so als ganzzahlige Werte definiert, stellen im Programm ein fiktives Abbild der Maschine dar. Es handelt sich also um eine Zahl, die zwar einen Zustand ausdrückt, aber nichts mit dem realen System zu tun hat. Der Zustand des Systems wird dadurch nicht abgebildet. Das heißt: Die Programmierung bildet einen Ist-Zustand ab und das System selbst befindet sich ebenfalls in einem Ist-Zustand. Beide Ist-Zustände sind nicht vergleichbar. Vom Programm kann demnach nicht auf den Zustand der Maschine geschlossen werden.

Um im Falle einer Fehlermeldung herausfinden zu können, wo genau der Fehler liegt, müsste der Programmierer nun aus der hohen Anzahl möglicher Zustände im System jeden einzelnen Fehlerzustand programmieren. Jedes Bitmuster aus dem System müsste als unerlaubt oder erlaubt beschrieben werden. Das ist aufgrund der hohen Zahl an Fehlermöglichkeiten jedoch in den allermeisten Fällen unmöglich. Deshalb gilt in einem herkömmlichen Programm, dass ein System nicht zwangsweise fehlerfrei sein muss, wenn keine Fehlermeldung angezeigt wird. Es steht lediglich fest, dass der Fehler nicht programmiert wurde.

„Die manuelle Programmierung mit herkömmlichen Methoden ist limitiert und unvollständig, weil viele Zustände in einem System undefiniert bleiben“, bringt Markus Gruber das Problem auf den Punkt. Aber genau diese undefinierten Fehlerzustände sind es, die zu Fehlverhalten und oft auch zu ungeplanten Stillständen führen. Die Selmo Solution denkt Programmierung neu, um Systeme endlich vollständig kontrollierbar zu machen und so schlussendlich eine höhere Maschinen- und Anlagenverfügbarkeit zu ermöglichen.

Vom Ist-Ist zum Soll-Ist-Vergleich

Wie in der herkömmlichen Programmierung auch, wird der gewünschte Ablauf zunächst in einem DEA formuliert. Im Gegensatz zur manuellen Programmierung verwendet Selmo zur Zustandsbeschreibung jedoch keine fiktiven Werte in der Steuerung. Selmo definiert das gesamte Bitmuster als erlaubten Zustand. Das heißt: Nur die Bitmuster sind erlaubt, die im Prozessmodell formuliert werden. So entsteht ein Soll-Zustand der Bitmuster, die im System möglich sind. Alle anderen Bitmuster sind nicht erlaubt und somit automatisch als Fehler definiert. Mit Selmo findet also kein Ist-Ist-Vergleich mehr statt, sondern ein Soll-Ist-Vergleich.

Wenn in einem mit Selmo programmierten System keine Fehlermeldung angezeigt wird, ist sichergestellt, dass auch wirklich kein Fehler im System vorliegt. Der Zustand in der Programmierung und der Zustand im System sind zu jedem Zeitpunkt abgestimmt. Kommt es zu einer Abweichung, wird diese als bitgenaue Fehlermeldung angezeigt. Fehler können so schnell und einfach beseitigt werden. Durch diese Logik kann eine Synchronisierung zwischen Programm und System stattfinden. Zum einen kann der Bediener die Abweichung des Systems vom aktuellen Zustand im Programm erkennen und diese mit einfachen Bedienschritten beseitigen. Zum anderen kann er den richtigen Zustand in der Programmierung suchen, der zum aktuellen Zustand im System passt.

Das ABS für die Maschine

Markus Gruber bringt dazu einen anschaulichen Vergleich aus dem Alltag. „Um mit einem Auto zu fahren, brauche ich kein ABS. Aber wenn ich bremsen muss, bin ich froh, wenn ich ABS habe!“ Selmo hat denselben Effekt: „Wenn die Maschine läuft, ist die Software vielleicht gar nicht so relevant. Aber in dem Moment, in dem sie ein abweichendes Verhalten aufzeigt, wird Selmo zur Versicherung, die eine Blockade verhindert“, so Gruber.

Unvollständig kontrollierbare Systeme als Ergebnis der herkömmlichen Programmierung führen zu unkalkulierbaren Risiken. Mit der Selmo Solution werden Programme für Systeme endlich vollständig beherrschbar. Weil Selmo jede Abweichung sofort erkennt, verhindert es ungeplante Stillstände. Das wird die Zukunft verändern, sagt Gruber: „Wer würde heute noch ein Auto ohne ABS kaufen? Wir haben einen ähnlichen Effekt, wir sind das ABS der Maschine!“

Kuchen backen und pay-per-use

Dabei setzt das Unternehmen auf einfache, transparente Bedienbarkeit. So wie jeder, der ein Auto lenken kann, auch eine Bremse bedienen kann, so wird jeder mit minimalen technischen Grundverständnis auch mit Selmo programmieren können. Gruber bringt noch ein anderes Beispiel: „Wenn Sie schon einmal einen Kuchen nach Rezept gebacken haben, dann war diese Schritt-für-Schritt-Anleitung im Wesentlichen das, was wir unter Programmieren verstehen.“ Wer in der Lage ist, in solchen Schritten zu denken, kann auch mit Selmo programmieren. „Dabei unterscheiden wir zwischen dem Modellierer, der den Prozess und den Systemaufbau beschreibt, und dem Implementierer, der das entstandene Programm in die SPS importiert und mit der Anlage verknüpft“, erklärt der Selmo-CEO. Damit lässt sich eine Station in wenigen Tagen programmieren.

Auch bei der Vermarktung geht Selmo Technology neue Wege. Das Produkt wird pay-per-use angeboten. Gruber: „Niemand will mehr für Software zahlen, die er nicht vorher ausführlich testen kann.“ Außerdem will niemand das Risiko eingehen, auf eine Software zu setzen, wenn er nicht weiß, wie die Verfügbarkeit in ein paar Jahren sein wird. Dieser Skepsis will Selmo Technolgies entgegenwirken. „Bei uns kann man Prozesse modellieren, sie voll durchtesten, und wenn der Kunde mit der Lösung zufrieden ist, zahlt er gerne für die einmalige Freischaltgebühr der Software“, erklärt Gruber. Das ist ein faires Angebot: „Wir wollen auch hier vollkommene Transparenz und Klarheit schaffen.“

Akademie: Selmo Studio in der Praxis erleben

In der Selmo-Akademie haben Interessierte die Möglichkeit, zu lernen, wie man mit Selmo Studio effizient arbeitende Maschinen modellieren kann. Das Ausbildungsangebot von Selmo ist kostenlos und richtet sich an alle Berufsgruppen.

Veranstaltungstermine:

10. Oktober, 9.00 Uhr:
Basics Program (für Anfänger)

24. Oktober, 9.00 Uhr:
Basics Program (für Experten)

Weitere Informationen zu den Ausbildungsprogrammen von Selmo finden Sie unter: selmotech.com/de/ selmo-academy