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

Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 21

Thema: S5 OP17: Zählersetzen geht nicht immer

  1. #11
    Registriert seit
    12.08.2008
    Beiträge
    33
    Danke
    11
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo die Wandlung hatte ich ursprünglich genau da gemacht wo du jetzt diese vorschlägst. Ich habe die Wandlung jetzt vor diesen Codeblock gesetzt um dies als Fehler auszuschließen.

  2. #12
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.262
    Danke
    537
    Erhielt 2.707 Danke für 1.956 Beiträge

    Standard

    Das heißt, du machst die Wandlung immer? Ok, geht auch, kostet etwas Zykluszeit. Aber, wenn die Wandlung vor dem Codeblock sitzt, darfst du sie nicht erst mit dem M3.1 anstoßen! Geht es denn nun eigentlich?
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  3. #13
    Registriert seit
    12.08.2008
    Beiträge
    33
    Danke
    11
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Also an der Wandlung kann es nicht liegen. DW3 und M42 habe bei Status-Variabel immer den selben wert. den ich am OP eingebe.
    Wenn das läuft kann ich die Wandlung auch im den bedingten Block verstecken.

    Aber, wenn die Wandlung vor dem Codeblock sitzt, darfst du sie nicht erst mit dem M3.1 anstoßen!
    ??? Habe ich jetzt nicht ganz verstanden. Meinst du das die Wandlung mehr als ein Zyklus im Anspruch nimmt?

    Geht es denn nun eigentlich?
    Leider Nicht

  4. #14
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.262
    Danke
    537
    Erhielt 2.707 Danke für 1.956 Beiträge

    Standard

    Zitat Zitat von leszek77 Beitrag anzeigen
    ??? Habe ich jetzt nicht ganz verstanden. Meinst du das die Wandlung mehr als ein Zyklus im Anspruch nimmt?
    Glaube ich eher nicht, das die Wandlung länger dauert, dann hätte es ein Bit Busy oder Done o.ä. geben müssen. Wenn die Wandlung mit M3.1 angestoßen wird, der M3.1 aber erst nach dem Wanndlungsbaustein gebildet wird, dann hättest du den Effekt, daß die Anzeige immer eins nachhängt.

    der Ablauf ist ja im Moment so:

    1. Wert wird geändert

    2. Wandelbaustein, der M3.1 ist noch nicht da, also wird nicht gewandelt im MW42 steht nach wie vor der letzte Wert

    3. M3.1 wird True, der Wert hat sich ja geändert

    4. Wert auf Null

    5. Zähler wird gesetzt, mit MW42, also einem alten Wert!

    6. Zyklusende, Austritt am Ende OB1

    7. Zyklusanfang, Eintritt an Anfang OB1

    8. --> das ist jetzt 2.
    M 3.1 ist ja noch da, nun wird gewandelt

    9. --> das ist 3.
    Wert ist 0, also M3.1 auf False

    usw.

    Daher ist es wichtig, den M3.1 vor dem Wandeln zu bilden falls du das Wandeln mit dem M3.1 startest.
    Geändert von Ralle (25.10.2008 um 18:47 Uhr)
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  5. Folgender Benutzer sagt Danke zu Ralle für den nützlichen Beitrag:

    leszek77 (27.10.2008)

  6. #15
    Registriert seit
    12.08.2008
    Beiträge
    33
    Danke
    11
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke, für den Lösungsansatz. Ich werde das Heute nachmittag auf der Arbeit ausprobieren und bereichten wie es gelaufen ist.

  7. #16
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.262
    Danke
    537
    Erhielt 2.707 Danke für 1.956 Beiträge

    Standard

    Zitat Zitat von leszek77 Beitrag anzeigen
    Danke, für den Lösungsansatz. Ich werde das Heute nachmittag auf der Arbeit ausprobieren und bereichten wie es gelaufen ist.
    Aber Achtung, ich hab im letzten Post beschrieben,was meiner Meinung nach falsch läuft, nicht das du das überlesen hast.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  8. #17
    Registriert seit
    12.08.2008
    Beiträge
    33
    Danke
    11
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo,
    ich habe jetzt mein Programm soweit geändert das es Funktioniert, aber noch nicht Richtig. Wenn ich die Enter Taste jetzt extrem kurz drücke dann wird der wert nicht übernommen. Ich denke das hat etwas mit der Zykluszeit bzw den Basistakt zur tun.
    hier mein aktueller code:
    Code:
    000B      :L   DW 23 (ereignis:werteingabe)
    000C      :L   KF +0
    000E      :><F
    000F      :=   M  3.1                        
    0016      :UN  M  3.1                            
    0017      :SPB =  M01
    Springe solange der Benutzer noch nicht Mit der Eingabe
    angefangen hat.
    
    0019      :U   M39.6                                OP- Enter Taste gedrueckt
    001A      :SPB =  M01
    Springe solange der Benutzer noch nicht die Enter Taste
    loßgelassen hat.
    
    001C      :SPA FB 241                               BCD
    001D NAME :COD:16
    001E DUAL >    DW 3                                 (E/W)
    001F SBCD >    M  46.0                              (A/BI)
    0020 BCD2 >    MB 44                                BCD
    0021 BCD1 >    MW 42                                BCD-Z3
    0022      :
    0023      :L   KF +0
    0025      :T   DW 23
    
    0026 M01  :
    0027      :U   M  3.1                               
    0028      :UN  M  39.6                              
    0029      :L   MW 42                                BCD-Z3
    002A      :S   Z  3                                 Op-Bereichszaehler

  9. #18
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.262
    Danke
    537
    Erhielt 2.707 Danke für 1.956 Beiträge

    Standard

    Zitat Zitat von leszek77 Beitrag anzeigen
    Wenn ich die Enter Taste jetzt extrem kurz drücke dann wird der wert nicht übernommen. Ich denke das hat etwas mit der Zykluszeit bzw den Basistakt zur tun.
    Ja, das denke ich auch, dann kann es durchaus passieren, das die Enter-Taste nicht ankommt. Aber eigentlich sollte das doch auch ohne die Entertaste zum laufen zu bringen sein. Hab leider keine Hardware zur Verfügung um das auch mal etwas zu testen.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  10. #19
    Registriert seit
    12.08.2008
    Beiträge
    33
    Danke
    11
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Zitat Zitat von Sven_HH Beitrag anzeigen
    Moin,

    sieh mal nach wie der Basistakt der Steuerung eingestellt ist.
    Sollte dieser > 1 X 200ms verlängert sich auch der Erfassungszyklus.
    Bei 3 X 200ms hast du 3 sec. Erfassungszyklus.
    Wenn ich mich nicht irre kann man der Erfassungszyklus für die Funktios- und Systemtastertur beim OP 17 nur über diesen Wert beeinflussen.
    Ich werde heute mit der Entertaste ein verlängerten Impuls setzen der höher ist als der Basistakt und es dann damit versuchen:
    Code:
    000B      :L   DW 23 (ereignis:werteingabe)
    000C      :L   KF +0
    000E      :><F
    000F      :=   M  3.1                        
    0016      :UN  M  3.1                            
    0017      :SPB =  M01
    Springe solange der Benutzer noch nicht Mit der Eingabe
    angefangen hat.
    
    0019      :U   M39.6                                OP- Enter Taste gedrueckt
    001A      :SPB =  M01
    Springe solange der Benutzer noch nicht die Enter Taste
    loßgelassen hat.
    
    un m39.6
    l kt 30.1
    sv t10
    
    001C      :SPA FB 241                               BCD
    001D NAME :COD:16
    001E DUAL >    DW 3                                 (E/W)
    001F SBCD >    M  46.0                              (A/BI)
    0020 BCD2 >    MB 44                                BCD
    0021 BCD1 >    MW 42                                BCD-Z3
    0022      :
    0023      :L   KF +0
    0025      :T   DW 23
    
    0026 M01  :
    0027      :U   M  3.1                               
    u t10                             
    0029      :L   MW 42                                BCD-Z3
    002A      :S   Z  3                                 Op-Bereichszaehler
    mal schauen ob es besser funktionieren wird

  11. #20
    Registriert seit
    11.12.2007
    Beiträge
    189
    Danke
    54
    Erhielt 33 Danke für 32 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von peter(R) Beitrag anzeigen
    Das ist ein altes Problem bei den Dingern. Die Übertragung zu SPS dauert etwas. Wenn Du vorher den Finger vom Knopf nimmst dann kommt nix an.
    Geht eigentlich nur über Bit setzen

    Im OP

    U Enter
    S Bit

    In SPS

    U Bit
    L DW
    S Z

    L DW
    L Z
    =!
    R Bit



    peter(R)
    Hallo leszek77

    Genau das ist dein Problem... nur bei der ENTER Taste kann man kein Bit setzen... Versuchs mal mit einer F oder K Taste.
    Wenn Du umbedingt die ENTER Taste nutzen willst dann lass Dir von der Steuerung ne Rückmeldung ans OP senden, damit stellst Du sicher das sie auch "Angekommen" ist.

    Gruß
    Sven_HH

Ähnliche Themen

  1. Timer (SE) starten nicht immer
    Von Hello_SPS im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 13.11.2009, 10:09
  2. Antworten: 7
    Letzter Beitrag: 19.02.2008, 20:04
  3. Pc geht immer aus!!
    Von Anonymous im Forum PC- und Netzwerktechnik
    Antworten: 17
    Letzter Beitrag: 14.10.2005, 21:54
  4. FB alleine geht, FB 2x geht nicht?
    Von MSP im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 18.08.2005, 15:00
  5. CPU 314 geht immer wieder auf Stop
    Von hubert im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 18.04.2005, 12:31

Lesezeichen

Berechtigungen

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