git-svn-id: http://moon:8086/svn/projects/HendiControl@143 fda53097-d464-4ada-af97-ba876c37ca34
61 lines
1.3 KiB
Python
61 lines
1.3 KiB
Python
#!/usr/bin/python3
|
|
|
|
import time
|
|
import json
|
|
from controller import Controller
|
|
from mass import Mass
|
|
from stirrer import Stirrer
|
|
from pololu1376 import Pololu1376
|
|
|
|
from matplotlib.pyplot import figure, clf, plot, xlabel, ylabel, xlim, ylim, title, grid, axes, show, subplot
|
|
|
|
def results_plot(self):
|
|
|
|
figure(1)
|
|
subplot(4, 1, 1)
|
|
plot(self.time_v, self.theta_v, 'b-', linewidth=1)
|
|
title('Temperature')
|
|
grid(True)
|
|
ylabel('°C')
|
|
subplot(4, 1, 2)
|
|
plot(self.time_v, self.power_v, 'r-', linewidth=1)
|
|
title('Power')
|
|
grid(True)
|
|
ylabel('W')
|
|
subplot(4, 1, 3)
|
|
plot(self.time_v, self.error_v, 'b-', linewidth=1)
|
|
title('Error')
|
|
grid(True)
|
|
ylabel('°C')
|
|
subplot(4, 1, 4)
|
|
plot(self.time_v, self.heatrate_v, 'r-', linewidth=1)
|
|
title('Heatrate')
|
|
grid(True)
|
|
ylabel('°C/min')
|
|
xlabel('t/min')
|
|
show()
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
|
fp = open("brewpi.json")
|
|
configJson = json.load(fp)
|
|
|
|
plant_class = globals()[configJson["Controller"]['plant_name']]
|
|
plant = plant_class(configJson["WaterSim"])
|
|
ruehrer_class = globals()[configJson["Controller"]['stirrer_name']]
|
|
ruehrer = ruehrer_class(configJson["Controller"]['dt'])
|
|
|
|
ablauf = Controller(configJson["Controller"], plant, ruehrer)
|
|
|
|
fp = open("Rezept-001.json")
|
|
recipeJson = json.load(fp)
|
|
|
|
ablauf.start(recipeJson)
|
|
ablauf.wait_finished()
|
|
|
|
results_plot(ablauf)
|
|
|
|
print ("End of program.")
|
|
|