PID-Regler in Codesys (Weckalarm OB35)

Benno

Well-known member
Beiträge
98
Punkte Reaktionen
1
Zuviel Werbung?
->Hier kostenlos registrieren
Hallo,

wenn man bei Siemens einen PID-Regler programmiert wird dieser immer im OB35 geschrieben und je nach eingegebener
Zeit aufgerufen (Weckalarm).Gibt es so einen Baustein auch in Codesys?

MfG
Benno
 
OP
B

Benno

Well-known member
Beiträge
98
Punkte Reaktionen
1
Zuviel Werbung?
->Hier kostenlos registrieren
Das Hilft mir schon mal echt weiter, danke. Wie geh ich nun am geschicktesten vor?rufe ich den PID_PRG in mein Haupt_PRG auf,
deklariere ich die Variablen(Istwert,Sollwert usw.) Global oder leg ich ein Struct an?

Gruß
Benno
 
OP
B

Benno

Well-known member
Beiträge
98
Punkte Reaktionen
1
Kann mir einer sagen warum sobald ich das "pid_prg" im taskkonfig. aufrufe und zyklisch abarbeiten lasse der Rest
von meinem Programm nicht mehr abgearbeitet wird?

Gruß
Benno
 

Ghosty

Well-known member
Beiträge
134
Punkte Reaktionen
25
Zuviel Werbung?
->Hier kostenlos registrieren
Kann es sein, damit du den Rest deines Programmes nicht Aufrufst? Das Programm in der Taskkonfig wird Zyklisch abgearbeitet. Die restlichen Funktionen solltest du in deinem zyklischen Programm oder einem seperaten Task aufrufen.
Evtl. kannst dein Programm auch einfach mal hier reinstellen, damit man es sich anschauen kann.
 
OP
B

Benno

Well-known member
Beiträge
98
Punkte Reaktionen
1
ja du hast recht, ich wusste nicht das man das Hauptprogramm dann auch in einem Task aufrufen muss.

Danke
 

Chräshe

Well-known member
Beiträge
830
Punkte Reaktionen
237
Hallo Benno,

Vermutlich ist dein Problem inzwischen gelöst.
Du weißt inzwischen, wie du unterschiedliche Task einstellen kannst…

Würdest du den kostenlosen Regler von OSCAT verwenden, könntest du dir das alles sparen:
23. Regelungstechnik
23.1. Einleitung
Im Bereich der Regelungstechnik werden Bausteine zum Aufbau von Reglern
und Regelstrecken zur Verfügung gestellt. Soweit möglich messen die
Bausteine selbst die Zykluszeit und errechnen mit der jeweils aktuellen
Zykluszeit die Ausgangsveränderung. Dieses Verfahren hat gegenüber einer
fest eingestellten Zykluszeit den Vorteil das Regelstrecken verschiedenster
Geschwindigkeit innerhalb derselben Task verarbeitet werden
können. Ein weiterer Vorteil ist die Tatsache das bei niedrig priorisierten
Tasks die Zykluszeit schwanken kann und ein Regler mit fixer Zykluszeit
ungenaue Ausgangswerte erzeugt. Der Anwender hat beim Einsatz sicherzustellen
das die Zykluszeit der Task entsprechend den Anforderungen der
Regelstrecke eingestellt ist.
Nur schade, dass es noch kein Autotuning gibt…

Gruß
Chräshe
 
Oben