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

Ergebnis 1 bis 10 von 10

Thema: Impuls auswerten

  1. #1
    Registriert seit
    27.09.2006
    Beiträge
    5
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich brauche einen Impulsgenerator. Den Impuls möchte ich natürlich auf die ein oder andere Weise auswerten.

    Hier im Beispiel soll einfach nur ein Bit gesetzt werden. Der Impulsgenerator soll weiter laufen.

    Ordne ich die Netzwerke so wie hier an, funktioniert das nicht. Drehe ich die Netzwerke um, dann funktionierts?

    Weiß jemand woran das liegt? Kann man das Problem beheben, so dass es nicht auf die Anordnung der Netzwerke ankommt?

    Netzwerk1:
    U E 0.0
    UN T 0
    L S5T#3S
    SE T 0


    Netzwerk2:
    U T 0
    S A 0.0


    Verwende: Step7 V5.3 SP3

    Vielen Dank

    Sven
    Zitieren Zitieren Impuls auswerten  

  2. #2
    Registriert seit
    01.02.2006
    Beiträge
    212
    Danke
    33
    Erhielt 6 Danke für 5 Beiträge

    Standard

    wieso nicht so:

    un t1 //Timer
    = m1.0 //Impuls
    l s5t#1s //Taktzeit
    sv t1
    Gruß

    Jelly

  3. #3
    Registriert seit
    19.09.2006
    Beiträge
    60
    Danke
    10
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Hier ne Kleine lösung von mir:
    Das ganze läuft bei mir in einem FB ab, da laufen so die Allgemeinen Sachen, hier mal der entsprechende Auszug, als Taktmerker nutze ich standartmäßig MB 1 (einzustellen in der HW Konfig)

    Code:
    FUNCTION_BLOCK " "
    
    VAR
      Merker : INT ; //Zustandsmerker für Impulsbildung
    END_VAR
    
    NETWORK 
    TITLE =Impulserzeugung aus Taktmerker
    
     L       #Merker ; // Zustandsmerker
     L       MB     1 ; // Taktmerker
     T      #Merker ;
    XOW   ;
    L        MB      1 ; // Taktmerker
    UW     ;
    T        MB      2 ; // Impulsmerker
    
    END_FUNCTIONS_BLOCK
    Die Impulse entsprechen dann Flanke Positiv vom Taktmerker
    Geändert von KG_TC (12.10.2006 um 14:48 Uhr)

  4. #4
    Registriert seit
    30.03.2005
    Beiträge
    2.096
    Danke
    0
    Erhielt 673 Danke für 541 Beiträge

    Standard

    Ich würde folgendes Programm schreiben (FUP-Konform):

    Code:
    Netzwerk 1:
     
    U   E 0.0
    UN  M 1.0
    L   S5T#3S
    SE  T 0
    NOP 0
    NOP 0
    NOP 0
    U   T 0
    =   M 1.0
     
    Netzwerk 2:
     
    U   M 1.0
    S   A 0.0
    Gruß Kai

  5. #5
    SvenP ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    27.09.2006
    Beiträge
    5
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo,

    das ging ja schnell. Vielen Dank dafür. Aber weiss denn jemand warum das so nicht funktioniert?

    Grüße

    Sven
    Zitieren Zitieren Warum ist das so?  

  6. #6
    Registriert seit
    30.03.2005
    Beiträge
    2.096
    Danke
    0
    Erhielt 673 Danke für 541 Beiträge

    Standard

    Timer arbeiten zyklusunabhängig, das kann zu Problemen führen.

    Das SPS-Programm arbeitet sequenziell, also Zeile für Zeile. Ein Timer läuft aber immer ab, das heißt, wenn er an 3 verschiedenen Stellen in einem Programm abgefragt wird, kann er an der 1. Stelle noch LOW sein, an der 2. und 3. Stelle aber High.

    Deshalb sollte man grundsätzlich mit einem Merker bei so etwas arbeiten. Das garantiert Dir einen Merker, der 1 Zyklus high ist.

    Weitere Informationen findest Du unter anderem hier:

    http://www.sps-forum.de/showthread.php?t=8122

    Gruß Kai

  7. #7
    Registriert seit
    30.03.2005
    Beiträge
    2.096
    Danke
    0
    Erhielt 673 Danke für 541 Beiträge

    Standard

    Zitat Zitat von SvenP Beitrag anzeigen
    Ordne ich die Netzwerke so wie hier an, funktioniert das nicht. Drehe ich die Netzwerke um, dann funktionierts?

    Weiß jemand woran das liegt? Kann man das Problem beheben, so dass es nicht auf die Anordnung der Netzwerke ankommt?

    Netzwerk1:
    U E 0.0
    UN T 0
    L S5T#3S
    SE T 0

    Netzwerk2:
    U T 0
    S A 0.0
    Bei diesem Programm kann folgendes Problem auftreten:

    - Das Programm befindet sich in seinem Ablauf in einem Netzwerk hinter dem Netzwerk 2.

    - Der Timer T0 (der Timer arbeitet zyklusunabhängig) läuft ab und wird auf High gesetzt.

    - Das Programm arbeitet das letzte Netzwerk ab und beginnt in einem neuen Zyklus wieder bei Netzwerk 1.

    - In Netzwerk 1 wird der Timer T0 wieder zurückgesetzt, also auf Low gesetzt.

    - In Netzwerk 2 ist der Timer auf Low, der Ausgang A0.0 wird also nicht gesetzt.

    Der Timer T0 kann also vom Programm gesetzt und wieder rückgesetzt werden, bevor das Programm das Netztwerk 2 erreicht und abarbeitet.

    Ich hoffe, dass war einigermaßen verständlich.

    Gruß Kai

  8. #8
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.235
    Danke
    634
    Erhielt 955 Danke für 769 Beiträge

    Standard

    Zitat Zitat von SvenP Beitrag anzeigen
    das ging ja schnell. Vielen Dank dafür. Aber weiss denn jemand warum das so nicht funktioniert?
    Der Ausgang wird beim SE gesetzt, wenn die Zeit abgelaufen ist UND der Eingang noch ansteht. Das kann in der dargestellten Variante nur theoretisch passieren. Da bei Siemens die Timer im Zyklus weiterlaufen wäre dies genau dann, wenn der Timer nach UN T 0 und vor U T0 abläuft (also sehr unwahrscheinlich). Im umgekehrten Fall liegt immerhin ein ganzer Zyklus dazwischen und die Wahrscheinlichkeit ist somit fast 100 %.
    Rainer Hönle
    DELTA LOGIC GmbH

    Ein Computer kann das menschliche Gehirn nicht ersetzen. Engstirnigkeit kann unmöglich simuliert werden. (Gerd W. Heyse)

  9. #9
    Registriert seit
    07.07.2004
    Beiträge
    3.285
    Danke
    38
    Erhielt 584 Danke für 382 Beiträge

    Daumen runter

    Hallo,

    Zitat Zitat von SvenP
    Netzwerk1:
    U E 0.0
    UN T 0
    L S5T#3S
    SE T 0

    Netzwerk2:
    U T 0
    S A 0.0
    Nicht der richtige Ansatz für einen Impulsgenerator, nein eigentlich völlig daneben. In der S7-Hilfe und Librarys und auf der Siemens A&D Homepage sind entsprechende Beispiele mit einstellbaren Schaltzeiten vorhanden..

    Gruss

    Question_mark
    ''Ich habe wirklich keine Vorurteile.
    Meine Meinung ist nur die Summe der Erfahrungen" ... (Question_mark)
    Zitieren Zitieren Impulsgenerator  

  10. #10
    Registriert seit
    17.10.2005
    Ort
    Wohnort
    Beiträge
    37
    Danke
    3
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Naja Richtig oder nicht, Funktionieren muss es. Und wenn man ein paar Sachen beachtet tut das auch.
    Code:
    U T100
    = M10.0
    
    UN M 10.0
    L S5T#3s
    SE T100
    Tut auf jedenfall, zumindest bei mir schon Jahrelang.
    ____________________________________________________________

    Viele Worte können nicht das beschreiben was Keiner wissen kann!
    ____________________________________________________________

Ähnliche Themen

  1. Impuls in S7-V11 erstellen
    Von rkoe1 im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 23.09.2011, 16:03
  2. Impuls vervielfältigen
    Von Hajo im Forum Simatic
    Antworten: 17
    Letzter Beitrag: 18.11.2010, 14:57
  3. Kurzer Impuls
    Von cboerm im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 08.07.2010, 11:46
  4. Impuls
    Von titinparma im Forum Simatic
    Antworten: 32
    Letzter Beitrag: 24.10.2007, 18:04
  5. Start Impuls
    Von magmaa im Forum Programmierstrategien
    Antworten: 10
    Letzter Beitrag: 08.04.2007, 15:00

Lesezeichen

Berechtigungen

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