- added stirrer

- many other improvements

git-svn-id: http://moon:8086/svn/projects/HendiControl@116 fda53097-d464-4ada-af97-ba876c37ca34
This commit is contained in:
2019-03-21 17:55:37 +00:00
parent 75b920047a
commit 08d8c32106
10 changed files with 213 additions and 71 deletions
+8 -6
View File
@@ -5,9 +5,12 @@ from aplant import APlant
class Mass(APlant):
def __init__(self, params):
print(json.dumps({'Mass': params}, indent=4, sort_keys=True))
self.dt = params['dt']
self.alpha = 1.0
self.e = 0
self.x = 0
self.gain = 0.8
self.gain = 0.95
self.C = params['C']
self.M = params['M']
@@ -18,13 +21,12 @@ class Mass(APlant):
self.theta = 0
self.P = 0
def process(self, dt):
alpha = 1.0
if self.Td > 0:
alpha = dt/self.Td
self.alpha = self.dt/self.Td
self.e = self.e*(1 - ((self.L*self.theta)*dt)/(self.M*self.C))
self.x = (1-alpha)*self.x + self.gain*alpha*self.P*dt
def process(self):
self.e = self.e*(1 - ((self.L*self.theta)*self.dt)/(self.M*self.C))
self.x = (1-self.alpha)*self.x + self.gain*self.alpha*self.P
self.e += self.x
self.theta = self.e/(self.M*self.C)