aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Stubs Collection/stubs/HeaterTest5.cs
blob: 5f9fe528497fa0ca7d159af4df6e79bf726a996a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
using System.Text;
using System.Linq;
using System.Drawing;
using System.Diagnostics;
using System.Windows.Forms;
using System.Threading;
using System.Threading.Tasks;
using System.Collections.Generic;
using Tango.PMR.Debugging;
using Tango.PMR.Stubs;
using Tango.PMR.Hardware;
using Tango.Stubs.UI;

public void OnExecute(StubManager stubManager)
{
/*    for (int i = 0; i < 10; i++)
    {
        var response = stubManager.Run<CalculateResponse>("calculate", 10, 5);
        
        if (response.Sum == 15)
        {
            stubManager.WriteLine("OK!");
        }
    }
    */
   
// Request ----
// Double : DryerZone1Temp
// Double : DryerZone2Temp
// RepeatedField`1 : HardwarePidControl
// RepeatedField`1 : ProcessParameters

// Response ----
// UInt32 : HeaterGroupId
// UInt32 : Zone1Temp
// UInt32 : Zone2Temp
// Boolean : Heater1Active
// Boolean : Heater2Active
// UInt32 : Heater1Percentage
// UInt32 : Heater2Percentage
  HardwarePidControl Pid1 = new HardwarePidControl();
  HardwarePidControl Pid2 = new HardwarePidControl();
//Pid1.has_hardwarepidcontroltype = true;
Pid1.HardwarePidControlType = (HardwarePidControlType)3;
  // Pid1.has_outputproportionalpowerlimit = true;
   Pid1.OutputProportionalPowerLimit = 50;
  // Pid1.has_outputproportionalband = true;
   Pid1.OutputProportionalBand = 3;
  // Pid1.has_kp = true;
  Pid1.SensorCorrectionAdjustment = 2.0;
  //Pid1.has_ki = true;
  Pid1.IntegralTime = 0.01;
  
  //Pid2.has_hardwarepidcontroltype = true;
Pid2.HardwarePidControlType = (HardwarePidControlType)4;
  // Pid2.has_outputproportionalpowerlimit = true;
   Pid2.OutputProportionalPowerLimit = 40;
  // Pid2.has_outputproportionalband = true;
   Pid2.OutputProportionalBand = 2;
  // Pid2.has_kp = true;
  Pid2.SensorCorrectionAdjustment = 0.5;
  //Pid2.has_ki = true;
  Pid2.IntegralTime = 0.1;

var response = stubManager.Run<StubHeatingTestResponse>("StubHeatingTestRequest" ,100.0, 100.0, Pid1, Pid2);	
Pid1.HardwarePidControlType = (HardwarePidControlType)5;
Pid2.HardwarePidControlType = (HardwarePidControlType)6;

 response = stubManager.Run<StubHeatingTestResponse>("StubHeatingTestRequest" ,100.0, 100.0, Pid1, Pid2);	

int i=0;
		// Request ----

// Response ----
// UInt32 : HeaterGroupId
// UInt32 : Zone1Temp
// UInt32 : Zone2Temp
// Boolean : Heater1Active
// Boolean : Heater2Active
// UInt32 : Heater1Percentage
// UInt32 : Heater2Percentage
//StubHeatingTestPollResponse response1;
stubManager.RunContinuous<StubHeatingTestPollResponse>("StubHeatingTestPollRequest",(response1) => 
                                                   {                                                   	
				stubManager.WriteLine (String.Format("Temperature, {0}, State {1}, Init {2}, Id {3}, Actual {4}, Alloc {5}, Err {6} {7}",++i,response1.Heater1Active,response1.Heater2Active,response1.Zone1Temp,response1.Zone2Temp,response1.Heater1Percentage,response1.Heater2Percentage, response1.InfoMessage));
                                                   	
                                                   },0);
/*stubManager.RunContinuous<DebugLogResponse>("DebugLogRequest",(response2) => 
                                                   {                                                   	
				stubManager.WriteLine (String.Format("Report, {0}, {1}, {2}",response2.FileName,response2.LineNumber,response2.Message));
                                                   	
                                                   },0);
                                                   
 */                                                  
		
		
}