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

Results 1 to 10 of 10

Thread: Variabele Zeit in einen Timer laden

  1. #1
    Join Date
    13.11.2003
    Posts
    12
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo liebe Forenteilnehmer und Spezialisten,

    ich bin hier neu im Forum und habe eine Frage, die mir bestimmt jemand beantworten kann.

    Ich möchte auf einem TP270 eine variabele Zeit eingeben, mit der dann ein Timer "gefüttert" werden soll. Den Wert vom Panel in einen DB zu laden ist kein Problem, nur wie bekomme ich den Zahlenwert in den Timer und welches Format muss der Zeitwert haben? Ich prog. in AWL und würde mich über einen Tip oder ein Beispiel freuen.

    Vielen Dank und freundliche Grüße, Willibald.
    Reply With Quote Reply With Quote Variabele Zeit in einen Timer laden  

  2. #2
    Join Date
    20.06.2003
    Location
    Sauerland.NRW.Deutschland
    Posts
    5,451
    Danke
    99
    Erhielt 923 Danke für 628 Beiträge

    Default

    s5 oder s7?

    protool und db
    bei s5 gibst du als format für die variable KT an.
    bei s7 s5_time.

    im prog
    in s5
    A DB 10
    L DW 20 //z.b.
    SE T10

    in s7
    L db10.dbw10
    SE T10
    mfg Volker .......... .. alles wird gut ..

    =>Meine Homepage .. direkt zum Download auf meiner HP
    zum Download im Internet (Backup nicht unbedingt aktuell)

  3. #3
    Willibald is offline Neuer Benutzer
    Themenstarter
    Join Date
    13.11.2003
    Posts
    12
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Default

    Hallo Volker,&

    warum geht denn bei Werten ab ca. 160 dezimal für die Zeit im DB die CPU in Stop?
    Was habe ich übersehen??

    Dank und Gruß, Willibald.
    Reply With Quote Reply With Quote sorry, S7 und MPI-Kopplung  

  4. #4
    Join Date
    20.06.2003
    Location
    Sauerland.NRW.Deutschland
    Posts
    5,451
    Danke
    99
    Erhielt 923 Danke für 628 Beiträge

    Default

    also zunäscht solltest du immer angeben was für eine steuerung du einsetzt. s5 oder s7
    und was heisst hier 160? was für ein format? dez/hex?

    s5
    die größte zeit ist KT 999.3 also 9990 sek.
    s7
    die größte zeit ist S5T#2h46m30s

    das ist bei beiden in Hex KH3999
    die erste trade entspricht der zeitbasis.
    3 = 10 sek, 2 = 1 sek, 1 = 0,1 sek, 0 = 0,01 sek.
    multipliziert mit den anderen 3 tetraden ergibt deinen zeitwert.

    z.b. KH 2543 = KT 543.2 = 543 sekunden = S5T#9m3s0ms

    so wenn du nun dezimal 160 einliest sieht das so aus.
    DW 90 KF=+160 <=> DW 90 KH=00A0
    und diesen zeitwert mag ein timer gar nicht.

    das sollte dir ein wenig auf die sprünge helfen.
    mfg Volker .......... .. alles wird gut ..

    =>Meine Homepage .. direkt zum Download auf meiner HP
    zum Download im Internet (Backup nicht unbedingt aktuell)

  5. #5
    Join Date
    29.08.2003
    Posts
    221
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Default

    Ich habe mit den "Normalen" Timern z.B. EVERZ keine Guten erfahrungen gemacht wenn ich die Zeiten Variabel vorgeben musste.

    Versuchs mal mit den SFB Timern dort wird als Zeitwert eine Time Variable angelegt die aus einem DW besteht und im Prinzip DINT ist.
    Die Basis der Zahl ist ms z.B.
    DINT 1000 wären im Zeitglied 1000 ms
    DINT 2000 wären im Zeitgleid 2000 ms

    Zahlen in diesem Format lassen sich aus in der CPU leicht umrechnen

    Die Timer wären TON oder TOFF

    Dies kenne ich allerdings nur von der S7 (ich gehe davon aus das du eine solche hast)

  6. #6
    Join Date
    20.06.2003
    Location
    Sauerland.NRW.Deutschland
    Posts
    5,451
    Danke
    99
    Erhielt 923 Danke für 628 Beiträge

    Default

    Quote Originally Posted by Balou
    Ich habe mit den "Normalen" Timern z.B. EVERZ keine Guten erfahrungen gemacht wenn ich die Zeiten Variabel vorgeben musste.
    welche schlechten erfahrungen?
    man muss allerdings wissen, dass die timer zyklusunabhängig laufen.

    z.b.
    Code:
    un t1
    l s5t#3s
    se t1
    dies könnte ein problem sein, welches sich aber leicht umgehen lässt.

    Code:
    un m1.0
    l s5t#3s
    se t1
    u t1
    = m1.0
    hier ist der merker für einen zyklus high.

    Die Timer wären TON oder TOFF
    Dies kenne ich allerdings nur von der S7 (ich gehe davon aus das du eine solche hast)
    diese timer sind IEC-1131 norm und sollten in jeder sps zur verfügung stehen.
    mfg Volker .......... .. alles wird gut ..

    =>Meine Homepage .. direkt zum Download auf meiner HP
    zum Download im Internet (Backup nicht unbedingt aktuell)

  7. #7
    Join Date
    15.07.2004
    Posts
    7
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Default

    Hallo,

    habe folgendes Problem,

    will eine Realzahl z.B 1,862
    als Zeitwert in einem Timer laden

    Hab schon alles mögliche Probiert, auch mit den SFB Timern von S7

    meine 1,862 sind aber dann nicht 1,862 Sekunden

    Für eine baldige Antwort wäre ich dankbar
    Reply With Quote Reply With Quote Gleitpunktpunktzahl in Timer laden  

  8. #8
    Join Date
    17.06.2004
    Location
    Offenau
    Posts
    4,079
    Danke
    210
    Erhielt 466 Danke für 366 Beiträge

    Default

    wie wärs mit:


    L 1,862
    L 1000
    *R
    RND
    DTB
    UW W#16#03FF
    //ausmaskieren
    T LW0
    L W#16#2000
    T LW1
    L LW0
    L LW1
    UW
    T LW0
    //Zeitwert in LW0
    LC LW0
    SA T1



    is natürlich ohne garantie, hab nix probiert nur gegugt![/code]
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten
    Reply With Quote Reply With Quote timerwert umrechnen:  

  9. #9
    Join Date
    15.07.2004
    Posts
    7
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Default

    danke ,

    werd ich baldmöglichst ausprobierern

  10. #10
    Join Date
    16.06.2003
    Location
    88356 Ostrach
    Posts
    5,006
    Danke
    1,346
    Erhielt 1,168 Danke für 550 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Quote Originally Posted by AWu
    1,862 Sekunden
    ähh, ist das dein ernst?
    so hochaulösende zeiten sind mit normalen timer nur shclecht zu machen, ich meine das müsste dann ja auf die ms genau sein. wenn deine sps eine zykluszeit von 10-20ms hat ist das unmöglich.

    eventuell noch mit alarm-ob´s, aber wozu braucht man solche zeiten?

    hier noch eine andere möglichkeit um zeiten im tp170 einzugeben:

    mache ein eingabefeld, schreibe den wert als int direkt zb in db10.dbw10

    in die sps kommt folgender code:

    Code:
          
          L     DB10.DBW   10               // Beipiel
          ITB   
          L     W#16#2000                   // 2 Steht für Sekunde &#40;S5 Time&#41;
          OW    
          SE    T     10

    wenn du in deinem eingabefeld eine kommastelle einfügst, als zb 1,5s eingeben willst.

    dann kannst du statt hex 2000 auch hex 1000 im programm laden, das wäre die basis für 100ms.

    wenn du dann in dein eingabefeld zb 1,5 eingibst steht in db10.dbw10 dezimal 15 drin. 15x100ms = 1,5s

    aber genauer als bis auf 100ms aufzulösen macht mit einer sps keinen sinn. wenn dann mit alram-ob´s aber das ist wieder ne andere geschichte...
    Reply With Quote Reply With Quote Re: Gleitpunktpunktzahl in Timer laden  

Similar Threads

  1. Replies: 3
    Last Post: 03.09.2019, 18:07
  2. Replies: 8
    Last Post: 15.05.2012, 12:41
  3. Eine Zeit aus einen FB-Parameter laden
    By borstek in forum Simatic
    Replies: 3
    Last Post: 15.01.2008, 14:32
  4. S7: Gibts einen Timer der zb. eine 42h zeit hat?
    By funkdoc in forum Programmierstrategien
    Replies: 9
    Last Post: 12.07.2006, 08:58
  5. Replies: 5
    Last Post: 24.07.2003, 18:17

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •