mike91 - 2020-07-03

Hallo,

Ich nutze CODESYS 3.5 SP15 und CODESYS Control for Raspberry Pi SL. Über eine Platine, wo ich keine Einzelheiten kenne, werden verschiedene digitale und analoge Ein- und Ausgangspins zur Verfügung gestellt.

Nun ist es so, dass ich einen der Eingangspins negiert an SET1 eines SR-FlipFlops lege und an dem Pin selbst ein Signal anlege. Beim Starten des Programms wird der Ausgang des SR-FlipFlops direkt gesetzt. Da der Pin eingeschaltet ist und der Eingang negiert ist, sollte dies nicht passieren.

Nun habe ich zum Debuggen mal Einzeldurchläufe vom Start weg durchgeführt und festgestellt, dass der Pin, obwohl ein Signal anliegt, im ersten Durchgang 0 ist (FlipFlop.Q1 wird gesetzt) und erst im zweiten den Wert 1 annimmt. Als kleinen Trick habe ich nun versucht, die Eingangsvariable in der Variablendeklaration schon mal auf 1 zu setzen, aber wenn ich nun den Einzeldurchlauf starte, ist im ersten Zyklus alles wie es soll, im zweiten wird der Eingang auf einmal 0 und im dritten wieder 1. Danach bleibt er 1.

Dies tritt nur nach dem erneuten Laden oder Ändern des Programms auf. Nach dem normalen aus- und wieder einloggen besteht das Problem nicht.

Habt ihr Ideen, woran das liegen könnte?
Danke schonmal. Gruß Mike