Wo bekomme ich den SFC64 her?

Ingo

Level-1
Beiträge
19
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich bräuchte diesen um eine Zeit zu messen.
Wie es funktioniert habe ich hier im Forum gefunden.

Nur wo bekomme ich den her um ihn in die CPU zu laden?
Kann das einfach nicht finden.

Dank und Gruß
Ingo
 
SFCs und SFBs sind schon in der CPU. Welche genau vorhanden sind steht in der Doku. Wenn du ihn benutzen willst, kannst du ihn aus der Standardbibliothek laden
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi,
um was für Zeitmessungen geht es denn?

Da ich festgestellt habe, das Timer und der interne Taktmerker der CPU nicht genau sind, habe ich mir für wirklich Zeitkritische Sachen einen FB geschrieben, der die SPS-Uhrzeit ausließt. Damit errechne ich die Zykluszeit (denn die stimmt auch nicht, was die CPU ausgibt). Durch aufsummieren der wirklichen Zykluszeit kann man nun viele Zeitmessungen durchführen.

Gruß Dirk
 
Bin grad über was gestolpert...

SFC78 kann die Laufzeit eines OB in Microsekunden zurück. Hab aber grad nicht die Muse das mal genauer auseinanderzunehmen. Auf dieser Basis könnte DiGo evtl. eine Atomuhr basteln.
 
Hi,
um was für Zeitmessungen geht es denn?

Da ich festgestellt habe, das Timer und der interne Taktmerker der CPU nicht genau sind, habe ich mir für wirklich Zeitkritische Sachen einen FB geschrieben, der die SPS-Uhrzeit ausließt. Damit errechne ich die Zykluszeit (denn die stimmt auch nicht, was die CPU ausgibt). Durch aufsummieren der wirklichen Zykluszeit kann man nun viele Zeitmessungen durchführen.

Gruß Dirk

Hallo,
ich möchte meinen aktuellen Stromverbrauch loggen.
Dazu habe ich den S0-Bus des Zählers angeschlossen und möchte die Zeit zwischen den Pulsen messen.
Die Auflösung solte ausreichen,
bei 1kW beträgt die Zeit 4500ms.

Gruß Ingo
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Sicher kannst du das über den SFC64 lösen, aber ich würde die Zeit des letzten Zyklus aufaddieren. Die wird dir im OB1 in den Lokaldaten bereitgestellt. Beim Thema SFC64 hast du das Problem mit dem Überlauf, den du berücksichtigen musst.

Du kannst mit einer pos. Flanke deines Stromzählers die aufaddierte Zeit auf 0 setzten und dann wieder Zählen. Ich denke, die Messung sollte dann ausreichend genau sein.
 
Hallo,
das klingt für mich nach der einfachsten Lösung.
Aktuell verwende ich dafür einen 20ms Takt,
was schon recht genaue Werte liefer.
Aber Besser ist sicher dein Vorschlag.

Danke und Gruß
Ingo
 
Hallo,
das klingt für mich nach der einfachsten Lösung.
Aktuell verwende ich dafür einen 20ms Takt,
was schon recht genaue Werte liefer.
Aber Besser ist sicher dein Vorschlag.

Danke und Gruß
Ingo

Jetzt versteh ich wo deine Ungenauigkeiten herkommen. Die Zyklen laufen nicht synchron mit dem Takt und deshalb kappt das nicht so genau.

Beispiel:
Zykluszeit konstant 6ms dann hast du nach 3 Zyklen 18ms und aber der Zählimpuls kommt noch nicht. Der kommt dann nach 24ms.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Jetzt versteh ich wo deine Ungenauigkeiten herkommen. Die Zyklen laufen nicht synchron mit dem Takt und deshalb kappt das nicht so genau.

Beispiel:
Zykluszeit konstant 6ms dann hast du nach 3 Zyklen 18ms und aber der Zählimpuls kommt noch nicht. Der kommt dann nach 24ms.
:confused:
es gibt doch die OB1 variable "zykluszeit des letzten zyklus" ...
 
:confused:
es gibt doch die OB1 variable "zykluszeit des letzten zyklus" ...

Sicher kannst du das über den SFC64 lösen, aber ich würde die Zeit des letzten Zyklus aufaddieren. Die wird dir im OB1 in den Lokaldaten bereitgestellt. Beim Thema SFC64 hast du das Problem mit dem Überlauf, den du berücksichtigen musst.

Du kannst mit einer pos. Flanke deines Stromzählers die aufaddierte Zeit auf 0 setzten und dann wieder Zählen. Ich denke, die Messung sollte dann ausreichend genau sein.

Hab ich ja vorgeschlagen:ROFLMAO:
 
Jetzt versteh ich wo deine Ungenauigkeiten herkommen. Die Zyklen laufen nicht synchron mit dem Takt und deshalb kappt das nicht so genau.

Beispiel:
Zykluszeit konstant 6ms dann hast du nach 3 Zyklen 18ms und aber der Zählimpuls kommt noch nicht. Der kommt dann nach 24ms.

Also,
ich habe das ganze jetzt über den OB1 gelöst,
danke für den Vorschlag.

Zum Ergebnis:
Ich habe einen Test über 20h gemacht.
Der über die Zeitmessung mit dem OB1 berechnete Verbrauch lag im Mittel bei 0,664444kW
Der vom Stromzähler gemessene Verbrauch liegt im Mittel bei 0,663kW.

Mit dieser Genauigkeit kann ich locker leben und sie übertrifft meine Erwartungen :)

Dank und Gruß an alle
Ingo
 
Zurück
Oben