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

Ergebnis 1 bis 8 von 8

Thema: Eingangswort in Zeitbausteinen

  1. #1
    Registriert seit
    17.08.2015
    Beiträge
    3
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo User.

    Ich habe eine Aufgabenstellung in der Ich ein Eingangswort ( EW2 ) in eine Einschaltverzögerung einbinden soll ( S_EVERZ ). Nun nimmt der Timer nur den Wert ( S5t#Xs ) an dem Eingang ( TW ).

    Wie bekomme ich nun das Eingangswort in den Timer eingebunden?

    Die Eingabe soll über BCD-Zifferstellung eingegeben werden. Die Ausgabe erfolgt über das Ausgangswort 2 ( AW2 ) über den Timerausgang DEZ.

    Entschuldigt, bin aber ein ziemlicher Neuling in der Hinsicht.

    MfG Dranix
    Zitieren Zitieren Eingangswort in Zeitbausteinen  

  2. #2
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.197
    Danke
    926
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    Mit MOVE das Eingangswort in eine temporäre Variable vom Typ S5TIME kopieren und diese Variable am S_EVERZ anlegen.

    Empfehlung: das Eingangswort auf korrektes und zulässiges BCD-Format überprüfen.

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  3. #3
    Registriert seit
    30.10.2009
    Ort
    10 km vom Herzen der Natur
    Beiträge
    1.626
    Danke
    120
    Erhielt 340 Danke für 255 Beiträge

    Standard

    Nicht vergessen das Vorzeichen-Nibble durch den Zeitfaktor zu ersetzen!
    Gruß
    Michael

  4. #4
    Dranix ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    17.08.2015
    Beiträge
    3
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo Harald.

    Hatte bisher leider nur mit den In IN out OUT Parametern zutun sodass ich nicht weiß wie ich mit den temp Variablen umgehen soll. Könntest du mir deinen Weg genauer schildern?

    Vielleicht ist es möglich es anhand eines Beispiels zu zeigen? Zumal ich die Befehle bzw Adressierung nicht weiß.

    mfg

  5. #5
    Dranix ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    17.08.2015
    Beiträge
    3
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Zitat Zitat von M-Ott Beitrag anzeigen
    Nicht vergessen das Vorzeichen-Nibble durch den Zeitfaktor zu ersetzen!
    Und was ist das Vorzeichen nibble?

  6. #6
    Registriert seit
    30.10.2009
    Ort
    10 km vom Herzen der Natur
    Beiträge
    1.626
    Danke
    120
    Erhielt 340 Danke für 255 Beiträge

    Standard

    Schau Dir mal in der STEP7-Hilfe den Aufbau des BCD- und des S5TIME-Formats an, dann müsstest Du eigentlich vestehen, was ich meine.
    Gruß
    Michael

  7. #7
    Registriert seit
    23.07.2009
    Ort
    Österreich
    Beiträge
    2.356
    Danke
    455
    Erhielt 695 Danke für 520 Beiträge

    Standard

    Zitat Zitat von Dranix Beitrag anzeigen
    Und was ist das Vorzeichen nibble?
    Am einfachsten und sichersten ist es wohl den FC40 TIM_S5TI zum Wandeln zu nehmen.

    Einfach das Eingangswort mit MOVE auf eine DINT-Variable kopieren.
    [EDIT] Wenn das EW als BCD daherkommt, dann eben noch mal vor dem MOVE auf DINT mit BTI in einen INT wandeln. [/EDIT]
    Diese dann mit MUL_DI mit deiner Zeitbasis multiplizieren so das am Ende Millisekunden rauskommen.
    Mal L#1000 = Zeitbasis Sekunden, mal L#60000 ist Zeitbasis Minuten, etc...
    Den DINT dann mit einem weiteren MOVE auf eine Variable vom Typ TIME kopieren.

    Danach aus der Standardbibliothek (SimaticManager/Projekt Öffnen/Reiter Bibliotheken/Standard Library/IEC-Function-Blocks) den FC40 "TIM_S5T" in dein Projekt kopieren.

    "TIM_S5T" aufrufen, am IN kommt die TIME-Variable dran, an RET_VAL kommt die S5-Time Variable raus. Damit dann auf den S_EVERZ.
    Beim FC40 noch den ENO-Ausgang auswerten, bei Wandlungsfehler oder Vorgabe >2h35min... geht dieser auf FALSE.

    Besser so als manuelles zusammenbasteln, dann sparen wir uns auch die CPU-Stopps wegen "BCD-Wandlungsfehler" und wie sie noch alle heißen.

    [EDIT] Hab zuvor überlesen das die Vorgabe als BCD daherkommt, klingt irgendwie nach nem Übungsbeispiel dass auf dieses grausige S5T-Gebastel abzielt.[/EDIT]
    Geändert von RONIN (17.08.2015 um 22:11 Uhr)
    If at first you don't succeed, you're not Van Damme!
    ... or maybe using TIA!

  8. #8
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.197
    Danke
    926
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ich vermute mal, daß die Augabenstellung von der beliebten uralten Schulungsaufgabe/Hausaufgabe kommt, wo mit BCD-Schaltern die 3 Ziffern + die Zeitbasis eingegeben werden soll. Eine Prüfung auf zulässige BCD-Ziffern (Tetraden) soll/kann bei dem Schulungsstand (noch) nicht stattfinden. Fehler kommen da noch nicht vor
    Fortgeschrittene Schüler bekommen aber schonmal gerne die Zusatzaufgabe, die höchsten zwei Bits wegen der Zeitbasis aus dem EingangsWord auszublenden (obwohl das für das S5T# nicht nötig ist).

    Falls doch Interesse an einer BCD-Ziffern-Prüfung besteht, da verweise ich gerne mal auf diesen Programmierwettbewerb: BCD-Prüfung


    Zitat Zitat von Dranix Beitrag anzeigen
    Hatte bisher leider nur mit den In IN out OUT Parametern zutun sodass ich nicht weiß wie ich mit den temp Variablen umgehen soll. Könntest du mir deinen Weg genauer schildern?
    Z.B. so:
    - im Bausteinkopf im TEMP-Abschnitt eine Variable "tmpS5Time" mit dem Datentyp "S5Time" anlegen
    - ein MOVE von EW2 zu #tmpS5Time (weil MOVE kann zwischen verschiedenen Datentypen kopieren)
    - #tmpS5Time an den Eingang TW vom S_EVERZ

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

Ähnliche Themen

  1. Step 7 Eingangswort über Pointer einlesen (Anfängerfrage)
    Von MarcusSPunkt im Forum Simatic
    Antworten: 38
    Letzter Beitrag: 20.12.2013, 19:26
  2. Eingangswort und Visualisierung
    Von OKL im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 01.04.2012, 23:30
  3. Ausgangswort,Eingangswort,Merkerwort
    Von michaelg im Forum Simatic
    Antworten: 16
    Letzter Beitrag: 25.08.2011, 11:41
  4. Eingangswort Doppelt vergeben ?
    Von hightower777 im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 10.02.2010, 15:02
  5. Antworten: 9
    Letzter Beitrag: 14.12.2007, 18:07

Lesezeichen

Berechtigungen

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