-> Hier kostenlos registrieren
Hallo,
zur Zeit beschäftige ich mich etwas näher mit Simatic S7. Nun wollte ich einen Funktionsbaustein programmieren, mit dem man einen Stern-Dreick-Anlauf von Motoren realisieren kann.
Der Baustein soll 3 Eingänge (Einschalten, Ausschalten, Zeitwert) und 3 Ausgänge (Netzschütz, Sternschütz, Dreieckschütz) haben.
Diesen Baustein hab ich programmiert, und wenn er nur einmal aufgerufen wird, klappt es super, nur wenn er für 2 verschiedene Motoren mit unterschiedlichen Anlaufzeiten aufgerufen wird, wird nur die längere Zeit bearbeitet und der Motor 1 schaltet erst um, wenn auch Motor 2 umschaltet.
Zur Verdeutlichung hab ich einen Screenshot drangehänt (links FC1, welcher den FB10 zweimal aufruft, einmal mit DB10 und einmal mit DB20, und rechts der ausprogrammierte FB10).
Ich vermute, dass das Problem am "T1" im FB10 liegt, finde aber keine Lösung, dieser Timer müsste ja "lokal" verwendet werden, so dass sich die beiden aufgerufenen DBs nicht stören.
Könnt ihr mir bitte einen Tipp geben, wie man das programmiert, dass jeder Motor ungehindert vom anderen anläuft?
Danke!
zur Zeit beschäftige ich mich etwas näher mit Simatic S7. Nun wollte ich einen Funktionsbaustein programmieren, mit dem man einen Stern-Dreick-Anlauf von Motoren realisieren kann.
Der Baustein soll 3 Eingänge (Einschalten, Ausschalten, Zeitwert) und 3 Ausgänge (Netzschütz, Sternschütz, Dreieckschütz) haben.
Diesen Baustein hab ich programmiert, und wenn er nur einmal aufgerufen wird, klappt es super, nur wenn er für 2 verschiedene Motoren mit unterschiedlichen Anlaufzeiten aufgerufen wird, wird nur die längere Zeit bearbeitet und der Motor 1 schaltet erst um, wenn auch Motor 2 umschaltet.
Zur Verdeutlichung hab ich einen Screenshot drangehänt (links FC1, welcher den FB10 zweimal aufruft, einmal mit DB10 und einmal mit DB20, und rechts der ausprogrammierte FB10).
Ich vermute, dass das Problem am "T1" im FB10 liegt, finde aber keine Lösung, dieser Timer müsste ja "lokal" verwendet werden, so dass sich die beiden aufgerufenen DBs nicht stören.
Könnt ihr mir bitte einen Tipp geben, wie man das programmiert, dass jeder Motor ungehindert vom anderen anläuft?
Danke!