oscat.lib > Modulentwicklung / Module Development

Temperaturabhaengige Ansteuerung eines Servomotors

(1/1)

wero:
Hallo Hugo,

habe schon die halbe Oscat Lib durchprobiert, aber keinen brauchbaren Ansatz gefunden. Ich muss einen Servomotor, der ein Warmwasserventil oeffnet temperaturabhaengig ansteuern.
Das Problem ist das der Motor nich modular ansteuerbar ist. Es gibt drei Punkte. Oeffnen, Schliessen und Neutral.
Im Moment probiere ich mit Impulsen das Ventil zu oeffnen oder zu Schliessen, was aber nicht leicht ist weil der Motor bei schnellen Temperaturwechseln anders reagieren muesste, als bei langsamen.
Haenge einen Denkanstoss an.
Wie koennte man so ein Problem loesen?
Viele Gruesse
wero


--- Code: ---FUNCTION Impuls : TIME
VAR_INPUT
IN: INT;
END_VAR
VAR
END_VAR

CASE IN OF

80,79,78,77,76,75,74,73,72,71:
Impuls:=T#5000ms;
70,69,68,67,66,65,64,63,62,61,60,59,58,57,56,55,54,53,52,50:
Impuls:=T#6000ms;
49,48,47,46,45,44,43,42,41,40:
Impuls:=T#7000ms;
39,38,37,36,35,34,33,32,31,30,29,28,27,26,25,24,23,22,21:
Impuls:=T#8000ms;
20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0:
Impuls:=T#10000ms;
END_CASE
END_FUNCTION

--- Ende Code ---

gravieren:
Hi

Versuche doch mal dem "PID-Regler" mit dem Modul "Actuator_3P"


Damit läuft "die Sache".

peewit:
hi wero

nur ein kleiner tip am rande, das kann man auch so formulieren


--- Code: ---CASE IN OF

71..80:
Impuls:=T#5000ms;
50..70:
Impuls:=T#6000ms;
40..49:
Impuls:=T#7000ms;
21..39:
Impuls:=T#8000ms;
0..20:
Impuls:=T#10000ms;
END_CASE
--- Ende Code ---

wero:
Hallo,

mit dem Actuator_3P habe ich nichts hinbekommen. Entweder ist er zu langsam oder bei veraenderung on/offtime zu ungenau.
Habe aber mit dem PID-Regler einige Versuche gemacht, und dann hinten selbst was drangehaengt. Funktioniert aber es koennte besser sein.

Danke Peewit fuer den Tipp.

Viele Gruesse,
wero

Navigation

[0] Themen-Index

Zur normalen Ansicht wechseln