Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 19

Thema: Variablen wechseln ständig zwischen TRUE und FALSE

  1. #1
    Registriert seit
    02.02.2015
    Beiträge
    26
    Danke
    18
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich habe folgendes Problem:

    Wenn ich mein Programm im Run- Modus (PLC Control) laufen habe, wechseln meine Eingänge (BOOL) von alleine ständig zwischen TRUE und FALSE - woran kann das liegen?

    Wenn ich die Eingänge im Systemmanager betrachte sind sie durchgehend 0 und springen nur auf 1 wenn ich die Taster betätige (also wie gewollt).

    Meine Hardware:
    CX9001
    EL1002

    Mein Programm:
    VAR
    taster_up AT %IX0.0 : BOOL;
    taster_down AT %IX0.1 : BOOL;
    heben: BOOL;
    senken: BOOL;
    END_VAR

    IF taster_up = TRUE THEN
    heben := TRUE;
    ELSIF taster_down = TRUE THEN
    senken := TRUE;
    ELSE
    heben := FALSE;
    senken := FALSE;
    END_IF


    taster_up und taster_down wechseln nun ständig zwischen TRUE und FALSE. Die Variablen heben und senken auch (aber nicht unbedingt entsprechend des Programms).

    Vielen Dank für eure Hilfe!!!

    Viele Grüße
    R. Kühl
    Geändert von frigidolf (10.06.2015 um 13:03 Uhr)
    Zitieren Zitieren Eingänge (BOOL) wechseln ständig zwischen TRUE und FALSE obwohl nicht gesetzt  

  2. #2
    Registriert seit
    16.03.2014
    Beiträge
    359
    Danke
    74
    Erhielt 45 Danke für 38 Beiträge

    Standard

    Hi,
    deine Eingangsvariablen kann ich wegen der Baugruppe nicht nachvollziehen, aber deine Abfragelogik ist "etwas chaotisch":
    Zum testen solltest du mal die Eingänge ohne Adresse belegen und dann die Taster simulieren:
    Wenn ich down auf true setze sind heben UND senken auf TRUE ???

    Deine verschaltelte IF / Elseif / Else ist schwer lesbar !

    So wäre es ggf. lesbarer:
    Code:
    heben := taster_up AND NOT taster_down;
    senken := taster_down AND NOT taster_up;
    LG
    Shrimps

  3. Folgender Benutzer sagt Danke zu shrimps für den nützlichen Beitrag:

    frigidolf (10.06.2015)

  4. #3
    frigidolf ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    02.02.2015
    Beiträge
    26
    Danke
    18
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Vielen Dank,
    so sieht der Code tatsächlich übersichtlicher aus (das ist mein erstes Projekt in ST).

    Mein eigentliches Problem liegt jedoch wo anders.
    Wenn ich mir im System Manager unter SPS-Konfiguration die Eingänge ansehe, dann springen die Digitalen Eingänge ständig von 0 auf 1 und wieder zurück. Woran kann das liegen?
    Die Taster werden nicht betätigt und geben im unbetätigten Zustand auch kein Signal weiter (wie ich oben schon beschrieben habe).

    MfG

  5. #4
    Registriert seit
    13.01.2010
    Beiträge
    56
    Danke
    11
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Schau mal im SystemManager nach der Variablen WcState für das entsprechende Eingangsmodul. Deren Wert muss immer 0 sein, ansonsten liegt wahrscheinlich ein Busfehler vor. Dadurch kommt es zu solch undefinierten Vorgängen. In dem Fall solltest du deine hardware prüfen, Busaufbau etc.

  6. Folgender Benutzer sagt Danke zu Daxgehtsteil für den nützlichen Beitrag:

    frigidolf (10.06.2015)

  7. #5
    frigidolf ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    02.02.2015
    Beiträge
    26
    Danke
    18
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke!
    WcState ist durchgehend 0, daran liegt's dann wohl nicht.

    MfG

  8. #6
    Registriert seit
    13.01.2010
    Beiträge
    56
    Danke
    11
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Hm sind alle Klemmen in "OP" ? Wenn das der Fall ist, kann es nur sein das dieses Signal so flackernd im Eingang ankommt. Würde den Taster mal kurz abklemmen und schauen wie sich das Modul und sein digitaler Eingang dann verhält.
    Sonst Taster prüfen. Oder flackert es nur bei Betätigung? In dem Fall den Taster SW-technisch entprellen, ist bei HW-Tastern sowieso zu empfehlen da diese eine prellenden Verhalten aufgrund ihrer Mechanik aufweisen.
    Entprellen:

    Var
    tonDebounceButton : TON;
    end_var

    tonDebounceButton(IN:= taster_up,pt:=t#100ms);

    heben:= tonDebounceButton.Q

    Grüße Dax

  9. #7
    Registriert seit
    13.01.2013
    Beiträge
    626
    Danke
    26
    Erhielt 64 Danke für 59 Beiträge

    Standard

    Oder mit R_Trig entprellen.
    Kann deiner Aussage nicht ganz folgen. Oben steht im Systemmanger ist alles ok unten schreibst du das nicht.
    Hat dein Netzteil genau Power ?

  10. #8
    Registriert seit
    13.01.2010
    Beiträge
    56
    Danke
    11
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Zitat Zitat von Dr.MirakulixX Beitrag anzeigen
    Oder mit R_Trig entprellen.
    Flankenerkennungen sind zur Entprellung nicht geeignet. Bei einer Zykluszeit von z.B. 10ms könnte der Taster ja mit genau 5ms prellen (high und wieder low) , sodass der Taster nicht sofort erkannt wird. Außerdem würden diese ja genau jede Flanke des Prellvorgangs durchgeben, damit ist der Entprelleffekt wieder aufgehoben.
    Besser geeignet sind daher immer Timer, mit ausreichender Einschaltzeit.

    Entprellen.png
    Geändert von Daxgehtsteil (10.06.2015 um 19:38 Uhr)

  11. #9
    frigidolf ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    02.02.2015
    Beiträge
    26
    Danke
    18
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Zitat Zitat von Daxgehtsteil Beitrag anzeigen
    Hm sind alle Klemmen in "OP" ?
    Hallo,

    ja die Klemmen sind in 'OP'.

    Ich hatte mal den das Eingangssignal abgeklemmt - der Eingang hatte trotzdem geflakert.

    MfG

  12. #10
    frigidolf ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    02.02.2015
    Beiträge
    26
    Danke
    18
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Dr.MirakulixX Beitrag anzeigen
    Kann deiner Aussage nicht ganz folgen. Oben steht im Systemmanger ist alles ok unten schreibst du das nicht.
    Hat dein Netzteil genau Power ?
    System Manager - SPS- Konfiguration - Eingänge: ständiges Flackern (0 1 0 1 0 1 0 1)
    System Manager - E/A Geräte - EL1002 - Online: Nur 1 bei Betätigung des Tasters, sonst 0

    Das Netzteil müsste genug Power haben - die Analogen Eingänge funktionieren alle.
    Habe nämlich noch eine analoge Eingangsklemme, einen Buskoppler und eine analoge Ausgangsklemme (+Endklemme) dran hängen. Da ist die Ursache nicht zu suchen oder?

    Vielen Dank für die Hilfe!

    MfG

Ähnliche Themen

  1. Wechseln zwischen PDI4 und IM174
    Von you im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 05.12.2010, 21:06
  2. Antworten: 13
    Letzter Beitrag: 29.04.2010, 14:22
  3. True -False
    Von S7 Frischling im Forum Programmierstrategien
    Antworten: 2
    Letzter Beitrag: 05.10.2009, 18:12
  4. Festes VKE True oder False ?!
    Von erzteufele im Forum Simatic
    Antworten: 13
    Letzter Beitrag: 24.09.2009, 00:32
  5. Antworten: 5
    Letzter Beitrag: 02.12.2004, 14:04

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •