Warum SELMO

<< Click to Display Table of Contents >>

Navigation:  Willkommen bei SELMO > SELMO Einstieg >

Warum SELMO

Bei SPS Programmen werden in jedem Zyklus die Eingänge gelesen und mit der Logik des Programms logisch verknüpft. Das Ergebnis wird dann auf die Ausgänge geschrieben. Das passiert in jedem Zyklus und dadurch kann über die SPS ein definierter Ablauf programmiert werden.

 

Es gibt zwei Arten von Programmen: die Verknüpfungssteuerung und die Ablaufsteuerung.

 

Bei Verknüpfungssteuerungen werden Eingänge direkt und logisch auf die Ausgänge geschrieben. Die kombinatorische Logik mündet in einem Output bzw. einer logischen Variablen.

 

Bei Ablaufsteuerungen werden Zustände und Zustandsübergänge definiert. So werden Eingänge in Abhängigkeit vom Zustand auf die Ausgänge logisch ausgewertet. Ein Vorteil der Ablaufsteuerungen ist es, dass definierte Zustände und Zustandsübergänge vorhanden sind.

 

 

Der Programmierer muss nun die Abfolge der Zustände und die Zustandsübergänge programmieren. Er muss aber auch die nicht erlaubten Zustände und die nicht erlaubten Zustandsübergänge vorwegnehmen und programmieren. So entsteht ein Programm für einen Ablauf, Zustände, verbotene Zustände und Zustandsübergänge.

 

So müssen in jedem Zustand alle Eingänge daraufhin geprüft werden, ob das Eingangsabbild erlaubt ist und zum Zustand passt. Wenn das Eingangsabbild der Weiterschaltbedingung entspricht, wechselt der Zustand in den Folgezustand. Mit der Weiterschaltung werden die Ausgänge geschaltet und Bewegungen bzw. Signalwechsel bilden sich am Eingangsabbild ab. So werden alle Aktionen mit einem definierten Eingangsabbild ausgeführt.

 

Der Ablauf wird grundsätzlich vom Prozess vorgegeben. Mechanik und Elektrik definieren aus den Vorgaben die Baugruppen mit Signalen und Aktoren, die in der Konstruktion durch einen Schaltplan abgebildet werden.

 

Der Programmierer muss dann diese Informationen zum Ablauf mit den Eingängen und Ausgängen in ein Programm übertragen. Das ist ein manueller Prozess und es hängt grundsätzlich vom Programmierer ab, wie gut die Softwarequalität ist.

 

Die Prozessparameter, welche für die Anwendung wichtig sind, werden später über die Anforderungen der HMI definiert. Diese müssen dann mit dem Ablauf in Zusammenhang gebracht werden.

 

Mechanik, Elektrotechnik und Software arbeiten meist bis zur Inbetriebnahme unabhängig voneinander und wenig abgestimmt. Bei der Inbetriebnahme kommen die geplanten Komponenten zusammen. Und nicht selten kommt es dort zu ersten Komplikationen. So werden Inbetriebnahme und Umsetzung verzögert. Meist muss das Problem über die Software gelöst werden.

 

Mit SELMO wird schon zu Beginn eine Anforderungsanalyse durchgeführt und in Form eines Modells abgebildet. Aus diesem Modell leiten sich die Anforderungen für Mechanik und Elektrik ab. Die Anforderungen für die Software, welche die Logik des Ablaufes beschreibt, werden direkt in ein ausführbares SPS-Programm generiert. Für die Software gilt es nur noch, aus den Komponenten der Mechanik die jeweils nicht vorhandenen Funktionen wie Treiber und Schnittstellen zu programmieren. Durch das gemeinsame Modell für alle Experten treffen zum Zeitpunkt der Inbetriebnahme die Funktionen und Umsetzungen ideal zusammen. Da durch SELMO die Programmierung komplett automatisch durchgeführt wird, sind die Struktur und die logischen Abläufe zu 100% abgestimmt mit den Modell-Anforderungen.

 

Die Software, welche die Mechanik und Elektrik benötigt, um eine Maschine zu betreiben, wird automatisch durch einen neuartigen Algorithmus erzeugt. Die Software zeichnet besonders aus, dass sie alle Signale und Zustände zu jedem Zeitpunkt überwacht. Um derart gleich hohe Qualität an Software zu erzeugen, müsste unmenschlich viel Programmieraufwand geleistet werden.

 

SELMO überwacht alle Eingänge in jedem Zustand und reagiert auf jede Abweichung. So wird das Modell ständig mit der realen Maschine verglichen. Bei Abweichungen reagiert die Software mit einer Störung und gibt detaillierte Informationen über die Fehlerursache aus. In der individuellen Programmierung bedarf es äußerst großem Aufwand, ein Programm zu entwickeln, dass ein kompliziertes System wie eine Anlage, komplett beschreibt.

 

SELMO erzeugt automatisch ein Programm, das ein komplexes System wie eine Anlage komplett beschreibt.

 

schnell

fehlerfrei

einfach

sicher

 

SELMO löst das Komplexitätsproblem in der SPS Programmierung mit Hilfe von automatischer Intelligenz.

 

 

 

Beispiel

NeuesElement385

 

 

 

 

 

 

 

 

 

 

 

E1

E2

E3

E4

E5

 

 

1

0

0

0

0

0

 

 

2

1

0

0

0

0

 

 

3

0

1

0

0

0

 

Ü Z6

4

1

1

0

0

0

 

 

5

0

0

1

0

0

 

Ü Z4

6

1

0

1

0

0

 

 

7

0

1

1

0

0

 

Paircheck

8

1

1

1

0

0

 

Paircheck

9

0

0

0

1

0

 

Ü Z3

10

1

0

0

1

0

 

 

11

0

1

0

1

0

Z1 / Z6

Ü Z1

12

1

1

0

1

0

Z2

Ü Z2

13

0

0

1

1

0

Z3

 

14

1

0

1

1

0

 

 

15

0

1

1

1

0

 

Paircheck

16

1

1

1

1

0

 

Paircheck

17

0

0

0

0

1

 

Ü Z5

18

1

0

0

0

1

 

 

19

0

1

0

0

1

Z5

 

20

1

1

0

0

1

 

 

21

0

0

1

0

1

Z4

 

22

1

0

1

0

1

 

 

23

0

1

1

0

1

 

Paircheck

24

1

1

1

0

1

 

Paircheck

25

0

0

0

1

1

 

Paircheck

26

1

0

0

1

1

 

Paircheck

27

0

1

0

1

1

 

Paircheck

28

1

1

0

1

1

 

Paircheck

29

0

0

1

1

1

 

Paircheck

30

1

0

1

1

1

 

Paircheck

31

0

1

1

1

1

 

Paircheck

32

1

1

1

1

1

 

Paircheck

33

0

0

0

0

0

 

 

34

1

0

0

0

0

 

 

35

0

1

0

0

0

 

 

36

1

1

0

0

0

 

 

37

0

0

1

0

0

 

 

38

1

0

1

0

0

 

 

39

0

1

1

0

0

 

Paircheck

40

1

1

1

0

0

 

Paircheck

41

0

0

0

1

0

 

 

42

1

0

0

1

0

 

 

43

0

1

0

1

0

 

 

44

1

1

0

1

0

 

 

45

0

0

1

1

0

 

 

46

1

0

1

1

0

 

 

47

0

1

1

1

0

 

Paircheck

48

1

1

1

1

0

 

Paircheck

49

0

0

0

0

1

 

 

50

1

0

0

0

1

 

 

51

0

1

0

0

1

 

 

52

1

1

0

0

1

 

 

53

0

0

1

0

1

 

 

54

1

0

1

0

1

 

 

55

0

1

1

0

1

 

Paircheck

56

1

1

1

0

1

 

Paircheck

57

0

0

0

1

1

 

Paircheck

58

1

0

0

1

1

 

Paircheck

59

0

1

0

1

1

 

Paircheck

60

1

1

0

1

1

 

Paircheck

61

0

0

1

1

1

 

Paircheck

62

1

0

1

1

1

 

Paircheck

63

0

1

1

1

1

 

Paircheck

64

1

1

1

1

1

 

Paircheck