betreibe ein WAGO 758-870 mit Codesys, und habe das Problem, dass nach einem Programmstart das Programm losläuft aber noch nicht alle Eingänge eingelesen sind. Ich bekomme dann natürlich erstmal unzählige Störmeldungen und Fehlfunktionen.
Sollte das Programm nicht eigentlich erst automatisch loslaufen nachdem alle Eingänge eingelesen wurden ?
Also so: Eingänge einlesen -> Programmzyklus -> Ausgänge schreiben, u.s.w. ...
Nach einem Power off/on ist es immer ganz schlimm. Was mache ich falsch ?
Grüsse,
Dieter
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Zitat:
Also so: Eingänge einlesen -> Programmzyklus -> Ausgänge schreiben, u.s.w. ...
Nach einem Power off/on ist es immer ganz schlimm. Was mache ich falsch ?
So sollte es eigentlich sein.
Kann es sein, dass du irgendeine Spannungsversorgung "später" zuschaltest, sodass Eingänge erst "später" kommen.
Mach doch mal den ultimativen Test.
Lege von der Spannungsversorgung der CPU direkt auf einen Eingang.
Frage nach einen 0-Signal ab.
Nach der Abfrage setzt du einen Merker.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Das verstehe ich nicht ganz. Ich hab das Problem ja auch nach "Alles bereinigen" und dann Programm neu einspielen, nur halt nicht so stark wie nach einem Power off/on.
Zitat:
Lege von der Spannungsversorgung der CPU direkt auf einen Eingang.
Ich habe keine Eingänge an der Steuerung selbst, nur an den 11 Profibuscontrollern. Diese sind aber permanent mit Spannung versorgt.
Komisch was hier passiert ?!
Noch was komisches, vielleicht hast du ja eine Idee.
In der Haupttask (Prio 0) wird als erstes ein Programm aufgerufen, welches verschiedene Variablen initialisieren soll. Trotzdem meckert nach Programmstart ein weiter hinten liegendes Programm, weil die besagten Variablen einen falschen Wert haben. Wie kann das ? Die Reihenfolge der Einträge in der Taskkonfiguration ist doch auch die Aufrufreihenfolge, oder ?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hallo,
betreibe ein WAGO 758-870 mit Codesys, und habe das Problem, dass nach einem Programmstart das Programm losläuft aber noch nicht alle Eingänge eingelesen sind. Ich bekomme dann natürlich erstmal unzählige Störmeldungen und Fehlfunktionen.
Sollte das Programm nicht eigentlich erst automatisch loslaufen nachdem alle Eingänge eingelesen wurden ?
Also so: Eingänge einlesen -> Programmzyklus -> Ausgänge schreiben, u.s.w. ...
Nach einem Power off/on ist es immer ganz schlimm. Was mache ich falsch ?
Grüsse,
Dieter
Hi
So sollte es eigentlich sein.
Kann es sein, dass du irgendeine Spannungsversorgung "später" zuschaltest, sodass Eingänge erst "später" kommen.
Mach doch mal den ultimativen Test.
Lege von der Spannungsversorgung der CPU direkt auf einen Eingang.
Frage nach einen 0-Signal ab.
Nach der Abfrage setzt du einen Merker.
Das verstehe ich nicht ganz. Ich hab das Problem ja auch nach "Alles bereinigen" und dann Programm neu einspielen, nur halt nicht so stark wie nach einem Power off/on.
Ich habe keine Eingänge an der Steuerung selbst, nur an den 11 Profibuscontrollern. Diese sind aber permanent mit Spannung versorgt.
Komisch was hier passiert ?!
Noch was komisches, vielleicht hast du ja eine Idee.
In der Haupttask (Prio 0) wird als erstes ein Programm aufgerufen, welches verschiedene Variablen initialisieren soll. Trotzdem meckert nach Programmstart ein weiter hinten liegendes Programm, weil die besagten Variablen einen falschen Wert haben. Wie kann das ? Die Reihenfolge der Einträge in der Taskkonfiguration ist doch auch die Aufrufreihenfolge, oder ?
Hi
Grundsätzliches.
Normalerweise sollte man abfragen, ob der Profibuscontroller bereit ist,
ob "gültige" Daten geliefert werden können.