314C-2 DP mittels CP343-1 Lean an PC

Zuviel Werbung?
-> Hier kostenlos registrieren
Wer so etwas an einem Tag entwickelt, für den lohnt sich eine Eigenentwicklung natürlich bereits ab der zweiten Steuerung.

das von mir oben hochgeladene habe ich an einem tag entwickelt.
es ist in einigen dingen noch rudimentär aber eignet sich bereits für den produktiven einsatz.

falls irgendjemand eine admin konsole dazu haben will, die kostet pro installierten PMServer 699€ :rolleyes:
 
*ROFL*

Hier is was los... während andere arbeiten müssen... ;)
Aber erfreuliche Nachricht, es klappt! Zumindest grundsätzlich. Jetzt ist der IT Heinz mit seiner Software dran, danach werd ich alles noch schön mit Handshake und so machen.
Was ich gemacht hab? nicht wirklich was, ausser alles nochmal zu kontrollieren, nochmal alles hochzuladen und heut meinen Laptop zu nehmen anstatt seinem.

Das Testprogramm zeigt auch alles an, was der PC empfängt. Leider war der Heinz heut aber nicht mehr mit (Vieleicht ja der Grund das es ging? :rolleyes: )
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Weiß einer wie da (Beim FC5) die "Binärkodierung des Zeitstempels am Ende der Übertragung ist? ASCII-kodiert ist es scheinbar nicht" :confused:

Als IT Fachmann sollte man das doch mit einem blick sehen und brauch nich nachfragen... :D
 

Anhänge

  • RCV Evobus.JPG
    RCV Evobus.JPG
    146,5 KB · Aufrufe: 16
Weiß einer wie da (Beim FC5) die "Binärkodierung des Zeitstempels am Ende der Übertragung ist? ASCII-kodiert ist es scheinbar nicht" :confused:

Als IT Fachmann sollte man das doch mit einem blick sehen und brauch nich nachfragen... :D

das istn normaler date and time aus der steuerung

yyMMddhhmmss[ms][ms][ms]d

bei dir also: 02.08.2011 12:12:08.623 an einem dienstag (3)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Also 'ganz normal' BCD-codiert und kein ASCII!

und so bekommt man es zerlegt:

Code:
*
_AbDateTime[k] = (byte)_Plc.Read(_sDtAdress);
_AsDateTime = BitConverter.ToString(_AbDateTime).Split('-');
try
{
     _sDateTime = "20" + _AsDateTime[0] + "-" + _AsDateTime[1] + "-" + _AsDateTime[2] + "T"
     + _AsDateTime[3] + ":" + _AsDateTime[4] + ":" + _AsDateTime[5];
}
catch
{
     _sDateTime = DateTime.Now.ToString();
     dbLog("ERR", "Event " + (giCount + 1) + "  logged with actual Time in DB\n not able to parse " + _AsDateTime[2] + "." + _AsDateTime[1] + ".20" + _AsDateTime[0] + " "
     + _AsDateTime[3] + ":" + _AsDateTime[4] + ":" + _AsDateTime[5] + "."
     + _AsDateTime[6] + _AsDateTime[7][0]);
}
 
Zuviel Werbung?
-> Hier kostenlos registrieren
und so bekommt man es zerlegt:

Code:
*
_AbDateTime[k] = (byte)_Plc.Read(_sDtAdress);
_AsDateTime = BitConverter.ToString(_AbDateTime).Split('-');
try
{
     _sDateTime = "20" + _AsDateTime[0] + "-" + _AsDateTime[1] + "-" + _AsDateTime[2] + "T"
     + _AsDateTime[3] + ":" + _AsDateTime[4] + ":" + _AsDateTime[5];
}
catch
{
     _sDateTime = DateTime.Now.ToString();
     dbLog("ERR", "Event " + (giCount + 1) + "  logged with actual Time in DB\n not able to parse " + _AsDateTime[2] + "." + _AsDateTime[1] + ".20" + _AsDateTime[0] + " "
     + _AsDateTime[3] + ":" + _AsDateTime[4] + ":" + _AsDateTime[5] + "."
     + _AsDateTime[6] + _AsDateTime[7][0]);
}

Stimmt aber nicht ganz, da von 90-99 Die Jahre als 1990 - 1999 gelten! Quelle: http://spsforum.com/showpost.php?p=160086&postcount=2 (Anhang 1)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Du benötigst dazu ein Sockethandler, der die Verbindung am PC auch annimmt.
Habe da schon einige Erfahrung mit einer S7-300 mit einer CP343-1 Lean gemacht.
Der Prozess läuft ziemlich stabil.
Lesen und schreiben von Daten in die SPS geht auf diesem Weg recht elegant.
 
Zurück
Oben