# mehrfache Zuweisung von Ausgängen im Programm



## mitchih (11 September 2007)

Hallo,
ich habe ein kleines Problemchen!!!

Ich befinde mich in einer Projektarbeit zum staatl. geprüften Techniker.

Ich plage mich zurzeit mit einer TSX Premium (Tele) herum. 
Der Auftraggeber besteht daruf alle anweisungen in st zu schreiben (habe ich ach kein problem mit) Abläufe möchte er in Graph. Ist ja soweit auch ok.
Nun will er aber das ich die benötigten Ausgänge (alle inkl. Ventile etc..) dirket in der SK ansteuere und dann im Hand Baustein nochmal etc...

Das würden sie immer so machen. Grund ist angeblich die Isolation der Anlagenteile!!!

Für mich hat das mit Isolation nix zu tun sondern beherbegt eher ein großes Fehlerrisko.

Habe bereits einige Anlagen in Betrieb genommen bzw. rep. aber sowas habe ich noch nie gesehen!!!

Gibt es eine Vorschrift in der iec die sowas prinzipiell verbietet???

danke 
mitchih


----------



## zotos (11 September 2007)

Ich habe das schon gesehen. Und bei Deinem "Kunden" scheint das ja auch zu funktionieren. 

Also wenn Du jetzt als angehender Techniker versuchst den "Kunden" um zustimmen solltest Du vielleicht einen anderen "Kunden" suchen.

Das ganze wird wohl so sein das die Automatik-Schrittkette nur in Automatik und Tipp betrieb aufgerufen wird. Und der Handbetrieb-Baustein eben nur im Handbetrieb.

//Edit: War vorhin etwas unter Zeitdruck.
Also ich würde den Kunden nach vorhandener Software fragen. Damit Du ihre Vorgehensweise auch nachvollziehen kannst.
Ansich ist das kein großes Hexenwerk man braucht aber eben eine klare Struktur um die wirklich Doppelzuweisung (also das mehr als ein Baustein der auf den Ausgang zugreift aktiv ist) zu vermeiden.

Die Anlagen die ich kenne die ein ähnliches Konzept haben. Sind eben so auf gebaut das immer nur der eine oder andere Baustein abgearbeitet wird.

Automatik lässt sich nur in Grundstellung starten (ist für das Konzept wohl nicht zwingend aber vereinfacht das Ganze)
In Hand ist es so das man bei der Visualisierung den Aktor auswählen kann und mittels zwei Tasten Basis-Stellung Arbeits-Stellung  manipuliert werden also der Zustand ändert sich nur auf Tastendruck ansonsten bleibt der Aktor in der Stellung die er hat (es gibt aber auch da Ausnahmen ;o)).

Ah und das:


mitchih schrieb:


> ...
> Gibt es eine Vorschrift in der iec die sowas prinzipiell verbietet???
> ...


kann man mit nein beantworten.


----------



## Rudi (11 September 2007)

Ich sehe das auch so. Man sollte schon Wünsche des Kunden berücksichtigen sofern sie nicht ganz abwegig sind.
Es sei denn Du bezahlst den Kunden dafür das Du ihm das Programm schreiben darfst.


----------



## repök (11 September 2007)

Eine Vorschrift gibts da nicht. Aber so etwas macht man (ich) nicht. 
Aber Kunde ist König, und des Menschen Wille ein Ententeich.


----------



## xetni (16 September 2007)

*Stellt kein Problem dar !*

In der Schrittkettenprogrammierung ist es üblich und erlaubt die Ausgänge in verschiedenen Schritten mehrfach anzusteuern.
Der Programmierer trägt Sorge dafür daß jeweils nur 1 Schritt aktiv sein kann.
(Die meisten Programmiertools haben heute spezielle Schrittbefehle dafür).
Auszug aus dem Mitsubishi Programmierhandbuch Seite 5.7 für FX-Steuerungen :
"Der gleiche Ausgang kann mit verschiedenen Schrittstatusoperanden angesprochen werden.Die Doppelbelegung ist in diesem Fall unproblematisch da 2 Schritte nicht gleichzeitig aktiv sein können."

Gruß XETNI


----------



## SSO (17 September 2007)

Habe ich früher einen Programmierfehler gesucht, war die erste Kontrolle ob die Ausgänge auch wirklich nur einmal zugewiesen wurden. Habe ich zwei Zuweisungen gefunden war der Fehler meist gefunden. 
Vor ein paar Jahren habe ich dann einen Kunden gehabt, bei denen war das ganz normal. 

erste Zuweisung im AUTO Baustein
zweite Zuweisung im HAND Baustein
dritte Zuweisung wenn AUS (Ausgänge zurücksetzen)

Absolut grausam. Nach dem es in jeder SPS noch mehrer Bereiche gibt, gibt es auch mehrer Bausteine für HAND AUTO AUS. Wer da nicht fürchterlich aufpasst, das der Ausgang auch im richtigen AUS Baustein gelöscht wird, hat einen tollen Fehler, der teilweise Jahrelang hoch spradisch zu schlägt und wirklich viel Ärger machen kann.

Inzwischen habe ich dem Kunden seinen Standart neu geschrieben.  

Gruß,
Andi.


----------



## xetni (18 September 2007)

Du hast da noch einen kleinen Fehler in deiner Denke !
Es wird kein Ausgang "gesetzt" und in einem anderen Baustein wieder "Rückgesetzt".Die Zuweisung lautet lediglich z.B.

Lade Schrittmerker 12
= Ausgang 1.0

Wenn der Schritt 12 verlassen wird ist somit automatisch der Ausgang nicht mehr aktiv. In einem neuen Schritt wird der Ausgang bei Bedarf auf dieselbe Art und Weise wieder zugewiesen.
Somit läufst du nie Gefahr daß ein gesetzter Ausgang  "vergessen" werden kann.
Ist eine sehr effektive Art ein Programm zu schreiben und dabei die Übersicht zu behalten.

Und wenn du das halt nicht auf diese Art machen willst dann schreibst du einfach :

Lade Schrittmerker 12
ODER Schrittmerker 13
ODER Schrittmerker xy
= Ausgang 1.0

Dann hast du die gewünschte Einmalzuweisung.
Brauchst aber natürlich ein paar Zeilen mehr Programmcode)

Gruß XETNI


----------



## BUR (18 September 2007)

XETNI hat Recht, so wirds gemacht. Außerdem darf der Automatikbaustein nur aufgerufen werden, wenn der Handbaustein nicht aufgerufen wird und umgekehrt. Anlage mit mehreren Betriebsarten haben für gewöhnlich auch einen Betriebsartenwahlschalter, somit ist die Sache eh ganz einfach.

Gruß
BUR


----------

