FrankTheTank
Level-1
- Beiträge
 - 41
 
- Reaktionspunkte
 - 0
 
-> Hier kostenlos registrieren
Hallo Allerseits!
Ich bin neu in der S7 Welt und als "Hochsprachler" (C++, Matlab, etc.) tu ich mir noch etwas schwer mit AWL und Co.
Ich möchte gerne einen REAL Wert (Zeitangabe in Sekunden) in S5Time Umwandeln, um damit einen Timer zu starten. Durch Recherche hier im Forum und im Internet bin ich bisher soweit gekommen:
	
	
	
		
Das Problem ist nun, dass als Ausgang von FC40 nicht (wie gewünscht) 2 Sekunden als TmaxS5Time herauskommt, sondern 20 Millisekunden. Woran kann das liegen? Wenn ich den Baustein beobachte und als die Darstellung auf Dezimal stelle, so hat TmaxTime den Wert 2000. Als Millisekunden wären das genau die 2 Sekunden, die ich möchte.
Mit freundlichen Grüßen,
FrankTheTank
	
		
			
		
		
	
				
			Ich bin neu in der S7 Welt und als "Hochsprachler" (C++, Matlab, etc.) tu ich mir noch etwas schwer mit AWL und Co.
Ich möchte gerne einen REAL Wert (Zeitangabe in Sekunden) in S5Time Umwandeln, um damit einen Timer zu starten. Durch Recherche hier im Forum und im Internet bin ich bisher soweit gekommen:
		Code:
	
	 L     2.000000e+000              // Zeit in Sekunden (Real)
 L     1.000000e+003              //
 *R                        // Umwandlung Sekunden in Millisekunden
 RND                         // Umwandlung Real in DInt
 T     #TmaxTime                   // Speichern als Time
CALL  "TIM_S5TI"
       IN     :=#TmaxTime
       RET_VAL:=#TmaxS5Time
      NOP   0
	Das Problem ist nun, dass als Ausgang von FC40 nicht (wie gewünscht) 2 Sekunden als TmaxS5Time herauskommt, sondern 20 Millisekunden. Woran kann das liegen? Wenn ich den Baustein beobachte und als die Darstellung auf Dezimal stelle, so hat TmaxTime den Wert 2000. Als Millisekunden wären das genau die 2 Sekunden, die ich möchte.
Mit freundlichen Grüßen,
FrankTheTank