Hallo,
das kommt natürlich darauf an wie Du die Zeit in der S7-Verarbeiten willst !!
Ich gehe mal davon aus das in der S7 ein Datenfeld als „DT“ existiert
Muster Systemzeit in den DB9 schreiben:
include_once ('./common_function.php');
include_once ('./s7_function.php');
$S7_Instanz_ID = xxxxxx ;
$ActSysTime = time();
IPS_LogMessage("SETTIME", "Setze aktuelle Uhrzeit: " . date("y-m-d H:i:s", $ActSysTime));
//YEAR ==> DB9.DBB4
S7_WRITE($S7_Instanz_ID,1,7,9,4,0,intval(hexdec(date("y",$ActSysTime))));
//MONTH ==> DB9.DBB5
S7_WRITE($S7_Instanz_ID,1,7,9,5,0,intval(hexdec(date("m",$ActSysTime))));
//DAY ==> DB9.DBB6
S7_WRITE($S7_Instanz_ID,1,7,9,6,0,intval(hexdec(date("d",$ActSysTime))));
//HOUR ==> DB9.DBB7
S7_WRITE($S7_Instanz_ID,1,7,9,7,0,intval(hexdec(date("H",$ActSysTime))));
//MINUTE ==> DB9.DBB8
S7_WRITE($S7_Instanz_ID,1,7,9,8,0,intval(hexdec(date("i",$ActSysTime))));
//SECOND ==> DB9.DBB9
S7_WRITE($S7_Instanz_ID,1,7,9,9,0,intval(hexdec(date("s",$ActSysTime))));
//Systemzeit gueltig setzen ==> DB9.DBX12.0
S7_WRITE($S7_Instanz_ID,0,7,9,12,0,TRUE);
… dazu die beiden Scripte: S7_FUNCTION.PHP und COMMON_FUNCTION.PHP in den Scriptordner kopieren
tgusi74
S7_FUNCTION.zip (11.1 KB)