Zeit in Abhängigkeit von S5Time ändern

bapfy

Level-1
Beiträge
62
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Zum Problem:
Ich habe eine s5time, angenommen s5t#2s.
jetzt brauch ich eine zweite Zeit die immer 3/4 von oberen Zeitwert ist, ... der obere Zeitwert ist jedoch änderbar.
d.h. T1 = s5t#4s , d.h. T2= s5t#3s

Das Format S5Time soll beibehalten werden.

:?:
 
Hallo bapfy
z.Bpl in einem DB
Code:
  SET   
      SAVE  
      =     L      8.1
      U     #Ausfuehren                  // Ausfuehren Format BOOL  IN_OUT
      SPBN  ausf
      L     DB64.DBW    0                // Zeit als INT
      ITB   
      T     #HM_S5_Zeit_0
      L     #HM_S5_Zeit_0
      L     W#16#2000
      OW    
      T     #HM_S5_Zeit_0             // TEMP Format WORD
      L     #HM_S5_Zeit_0
      T     DBW    2
      L     DBW    0
      UD    DW#16#FFFF
      DTR   
      L     #Faktor                     // Faktor in REAL 0.X Zeit kleiner  1.X Zeit groesser
      *R    
      T     #HM_REAL
      L     #HM_REAL
      RND   
      ITB   
      T     #HM_S5_Zeit_1         // TEMP Format WORD
      L     #HM_S5_Zeit_1
      L     W#16#2000
      OW    
      T     #HM_S5_Zeit_1
      L     #HM_S5_Zeit_1
      T     DBW    4
      CLR   
      =     #Ausfuehren
ausf: CLR   
      U     L      8.1
      SAVE  
      BE  
  
// Aufruf der Zeiten

      U     M      1.1
      L     DB64.DBW    2    // Zeit aus INT Wert
      SE    T      1
    
      U     M      1.1
      L     DB64.DBW    4   // um faktor < oder > 
      SE    T      1
mfG
hg
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo bapfy, schau mal hier (http://www.sps-forum.de/phpBB2/viewtopic.php?t=3007), da ist mal für das Forum zusammengefaßt, wie sich das Zeitformat zusammensetzt. Wenn du das einmal weißt, ist der Rest kein Problem mehr. Die Zeiten kannst du z.Bsp. bei einem OP auch als Int mit 2 Kommastellen angeben, dann bekommst du für 2,53 Sekunden eine Int 253, die kannst du dann noch für den 2. Wert teilen und so umrechnen:

Dieser Code rechnet in Sekunden um:
Code:
      L     "DATA_GLOBAL_TECHNOLOGIE".Produktionsdaten[18]    //Pause zwischen Stopfen in Sekunden (Int oder Word)
      ITB                               //Wandeln in BCD
      L     W#16#2000                   //2#0010 0000 0000 0000  Sekunden-Format
      OW    
      T     #Zeitwert           //Word

#Zeitwert kannst du direkt an einen Timer schreiben.
 
Zurück
Oben