aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Stubs Collection/stubs/HeaterTest1.cs
blob: 935738e313bbf5d1691ffdd6a6e24a94abfdea29 (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
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.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)0;
  // Pid1.has_outputproportionalpowerlimit = true;
   Pid1.OutputProportionalPowerLimit = 50;
  // Pid1.has_outputproportionalband = true;
   Pid1.OutputProportionalBand = 3;
  // Pid1.has_kp = true;
  Pid1.Kp = 2.0;
  //Pid1.has_ki = true;
  Pid1.Ki = 0.01;
  
  //Pid2.has_hardwarepidcontroltype = true;
Pid2.HardwarePidControlType = (HardwarePidControlType)1;
  // Pid2.has_outputproportionalpowerlimit = true;
   Pid2.OutputProportionalPowerLimit = 40;
  // Pid2.has_outputproportionalband = true;
   Pid2.OutputProportionalBand = 3;
  // Pid2.has_kp = true;
  Pid2.Kp = 0.5;
  //Pid2.has_ki = true;
  Pid2.Ki = 0.1;

var response = stubManager.Run<StubHeatingTestResponse>("StubHeatingTestRequest" ,200.0, 200.0, Pid1, Pid2);	
while (true)
	{
		// Request ----

// Response ----
// UInt32 : HeaterGroupId
// UInt32 : Zone1Temp
// UInt32 : Zone2Temp
// Boolean : Heater1Active
// Boolean : Heater2Active
// UInt32 : Heater1Percentage
// UInt32 : Heater2Percentage
		var response1 = stubManager.Run<StubHeatingTestPollResponse>("StubHeatingTestPollRequest" ,0);
		Thread.Sleep(100);
	}
}