[SPS] Aufgabe zur Temperaturauswertung

chillking

Lieutenant
Registriert
Juni 2010
Beiträge
926
Hi zusammen,

ich studiere Elektrotechnik, schreibe demnächst (also Donnerstag :D) eine Klausur in Automatisierungstechnik und komm nicht auf die Lösung zu einer Aufgabe.
Unbenannt.png

Hab berechnet, dass bisher wohl ein 9-Bit-Wandler verwendet wurde und um die 0,01°C zu erkennen bräuchte man ein 15-Bit-Wandler.

Aber was ich mit dem anderen Zeug anfangen soll?!?

Wie kann der Wert 10 mal pro Sekunde wechseln, wenn der OB32 doch nur einmal pro Sekunde aufgerufen wird?

Wäre cool wenn sich hier jmd damit auskennt!

Danke schon mal.
 
Zuletzt bearbeitet:
Den Zyklus des OB32 kann man einstellen. Der Standart ist 1000ms, man kann ihn aber auch genauso gut alle 100ms aufrufen.
Schau mal in der Hardwarekonfig in die Eigenschaften der CPU unter Weckalarme. Da kannst du den OB's 30-38 die Zykluszeit vorschreiben.
Wichtig ist auch dass du ein Teilprozeßabbild vergibst, dieses musst du der Eingangskarte zuweisen damit der Eingangswert nicht zyklisch mit dem OB1 sondern mit dem OB32 ausgelesen wird.
 
Kann nicht nachschauen, das Bild das ich gepostet ist alles was ich hab.

Ist mir auch schon eingefallen, dass der Zyklus verändert wurde, aber davon steht nichts in der Aufgabe. Im Zweifelsfall hätte ich das hingeschrieben.

Würde es was ändern, wenn der Eingang mit dem OB1 eingelesen wird? Die Bearbeitung findet ja trotzdem nur alles eine Sekunde mit dem OB32 statt und es wackelt ja anscheinend der Ausgangswert.
 
Zuletzt bearbeitet:
Hinschreiben kann man es auf jeden Fall, ich würde mich jedoch nicht so sehr darauf versteifen. Der Wert kann sich gerne 10 mal in der Sekunde an der Eingangskarte ändern, die Frage ist ob der Wert auch in dieser Frequenz verarbeitet werden muss. Ich denke der Kern der Aufgabe dreht sich um den 15-Bit-Wandler.
Ich kann auch wenig mit der Termischen Zeitkonstate anfangen.

chillking schrieb:
Würde es was ändern, wenn der Eingang mit dem OB1 eingelesen wird? Die Bearbeitung findet ja trotzdem nur alles eine Sekunde mit dem OB32 statt und es wackelt ja anscheinend der Ausgangswert.

Wenn du den Eingang über den OB1 aufruft wird er mit dem Standartzyklus abgearbeitet, dieser kann natürlich schneller oder langsamer sein.
-Wenn er schneller ist könntest du im OB1 Berechnung (z.B. Mittelwert) machen und diese an den OB32 weitergeben.
-Wenn er langsamer wäre hättest du ein Problem :-)

Ich denke dass das Schwanken nur erwähnt wird um zu verdeutlichen dass die Analog Eingangskarte nicht hoch genug auflöst.
 
Zuletzt bearbeitet:
DoCJonez schrieb:
Hinschreiben kann man es auf jeden Fall, ich würde mich jedoch nicht so sehr darauf versteifen. Der Wert kann sich gerne 10 mal in der Sekunde an der Eingangskarte ändern, die Frage ist ob der Wert auch in dieser Frequenz verarbeitet werden muss. Ich denke der Kern der Aufgabe dreht sich um den 15-Bit-Wandler.
Ich kann auch wenig mit der Termischen Zeitkonstate anfangen.

Okay, dank Dir!
 
DoCJonez schrieb:
Wenn du den Eingang über den OB1 aufruft wird er mit dem Standartzyklus abgearbeitet, dieser kann natürlich schneller oder langsamer sein.
-Wenn er schneller ist könntest du im OB1 Berechnung (z.B. Mittelwert) machen und diese an den OB32 weitergeben.
-Wenn er langsamer wäre hättest du ein Problem :-)

Ich denke dass das Schwanken nur erwähnt wird um zu verdeutlichen dass die Analog Eingangskarte nicht hoch genug auflöst.

Achso, ich meinte ob es ein Unterschied macht, wenn das EW0 mit dem OB1 eingelesen wird (also wenn ich kein Teilprozessabbild vergebe), die Bearbeitung(Mittelwertbildung) aber trotzdem im OB32 gemacht wird. Sollte doch eigentlich kein Unterschied machen oder?
 
Das geht schon, Wenn der OB1 Zyklus aber langsamer ist wie der OB32 Zyklus bekommst du Probleme.

Ein Beispiel:
-OB1 Zyklus 1000ms
-OB32 Zyklus 100ms

Die Berechnung findet im OB32 statt, Der Eingang wird im OB1 ausgelesen. Jetzt berechnest du alle 100ms etwas aus einem Wert der sich nur alle 1000ms ändert. Du machst also in der sekunde 9 unnötige Berechnungen. Wäre der OB1 Zyklus nur 50ms wäre das kein Problem.
 
DoCJonez schrieb:
Das geht schon, Wenn der OB1 Zyklus aber langsamer ist wie der OB32 Zyklus bekommst du Probleme.

Ein Beispiel:
-OB1 Zyklus 1000ms
-OB32 Zyklus 100ms

Die Berechnung findet im OB32 statt, Der Eingang wird im OB1 ausgelesen. Jetzt berechnest du alle 100ms etwas aus einem Wert der sich nur alle 1000ms ändert. Du machst also in der sekunde 9 unnötige Berechnungen. Wäre der OB1 Zyklus nur 50ms wäre das kein Problem.

Jetzt hab ichs, Danke!
 
Aufgabe kam genau so dran...hab mal alles hingeschrieben, schauen wir mal was dabei heraus kommt! Danke nochmal!
 
Zurück
Oben