- better template
git-svn-id: http://moon:8086/svn/projects/HendiControl@261 fda53097-d464-4ada-af97-ba876c37ca34
This commit is contained in:
@@ -10,62 +10,37 @@
|
|||||||
"plant_name" : "Mass",
|
"plant_name" : "Mass",
|
||||||
"useKalman" : true,
|
"useKalman" : true,
|
||||||
"kalman" : {
|
"kalman" : {
|
||||||
"dt" : 1,
|
"dt" : 1.0,
|
||||||
"var_P" : 0.0,
|
"var_P" : 0,
|
||||||
"var_Q" : 0.0000001,
|
"var_Q" : 0.000001,
|
||||||
"var_R" : 0.5,
|
"var_R" : 1,
|
||||||
"var_Z" : 0.1
|
"var_Z" : 0.0
|
||||||
},
|
},
|
||||||
"Hold" : {
|
"Hold" : {
|
||||||
"Acqu": {
|
|
||||||
"thresh_leave" : -100.0,
|
|
||||||
"Pid" : {
|
|
||||||
"kp" : 0.2,
|
|
||||||
"ki" : 0.001,
|
|
||||||
"kd" : 0.2,
|
|
||||||
"rho" : 0.99999
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"Track": {
|
|
||||||
"thresh_leave" : 1.5,
|
|
||||||
"Pid" : {
|
"Pid" : {
|
||||||
"kp" : 0.4,
|
"kp" : 0.4,
|
||||||
"ki" : 0.002,
|
"ki" : 0.001,
|
||||||
"kd" : 0.2,
|
"kd" : 0.1,
|
||||||
"rho" : 0.9999
|
"rho" : 0.9999
|
||||||
}
|
}
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"Heat" : {
|
"Heat" : {
|
||||||
"Acqu": {
|
|
||||||
"thresh_leave" : -100.0,
|
|
||||||
"Pid" : {
|
"Pid" : {
|
||||||
"kp" : 0.2,
|
"kp" : 0.1,
|
||||||
"ki" : 0.004,
|
"ki" : 0.004,
|
||||||
"kd" : 4.0,
|
"kd" : 0.5,
|
||||||
"rho" : 0.99999
|
"rho" : 0.999999
|
||||||
}
|
|
||||||
},
|
|
||||||
"Track": {
|
|
||||||
"thresh_leave" : 0.5,
|
|
||||||
"Pid" : {
|
|
||||||
"kp" : 0.2,
|
|
||||||
"ki" : 0.004,
|
|
||||||
"kd" : 0.05,
|
|
||||||
"rho" : 0.9999
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
"WaterSim" :
|
"WaterSim" :
|
||||||
{
|
{
|
||||||
"dt" : 1.0,
|
"dt" : 1.0,
|
||||||
"theta_amb" : 15,
|
"theta_amb" : 20,
|
||||||
"C" : 4190,
|
"C" : 4190,
|
||||||
"M" : 25,
|
"M" : 20,
|
||||||
"L" : 0.15,
|
"L" : 0.1,
|
||||||
"Td" : 20,
|
"Td" : 30,
|
||||||
"kn" : 0.2
|
"kn" : 0.2
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@@ -229,11 +229,11 @@ class Controller(TimerListener):
|
|||||||
ovenStateNext = ovenStates.NOP
|
ovenStateNext = ovenStates.NOP
|
||||||
|
|
||||||
if self.ovenState != ovenStates.NOP:
|
if self.ovenState != ovenStates.NOP:
|
||||||
self.pid_hold.process(self.dt, self.params['Hold']['Acqu']['Pid'], ctrl_theta_err)
|
self.pid_hold.process(self.dt, self.params['Hold']['Pid'], ctrl_theta_err)
|
||||||
self.pid_rate.process(self.dt, self.params['Heat']['Acqu']['Pid'], ctrl_heatrate_err)
|
self.pid_rate.process(self.dt, self.params['Heat']['Pid'], ctrl_heatrate_err)
|
||||||
|
|
||||||
power_hold = max(self.params['P_min'], min(self.params['P_max'], self.params['P_max'] * self.pid_hold.get_y()))
|
power_hold = max(self.params['P_min'], min(self.params['P_max'], self.params['P_max'] * self.pid_hold.get_y()))
|
||||||
power_heat = max(self.params['P_min'], min(self.params['P_max'], self.params['P_max']*self.pid_rate.get_y()))
|
power_heat = max(self.params['P_min'], min(self.params['P_max'], self.params['P_max'] * self.pid_rate.get_y()))
|
||||||
power_soll = min(power_hold, power_heat)
|
power_soll = min(power_hold, power_heat)
|
||||||
self.plant.setPower(power_soll)
|
self.plant.setPower(power_soll)
|
||||||
power_ist = self.plant.getPower()
|
power_ist = self.plant.getPower()
|
||||||
|
|||||||
Reference in New Issue
Block a user