blob: 103885b47384e7d799c41f6d75a7cfd25a968fac (
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
|
using System;
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.Hardware;
using Tango.PMR.Printing;
using Tango.PMR.Stubs;
using Tango.Stubs;
public void OnExecute(StubManager stubManager)
{
Thread.Sleep(10);
HardwareMotor DryerMotor = new HardwareMotor();
DryerMotor.HardwareMotorType = Tango.PMR.Hardware.HardwareMotorType.MotoDryerDriving;
DryerMotor.MinFrequency = 0;
DryerMotor.MaxFrequency = 100000;
DryerMotor.SetMicroStep = 1;
DryerMotor.MicroStep = 16;
DryerMotor.MaxChangeSlope = 0x7ff;
DryerMotor.HighLengthMicroSecond = 0;
DryerMotor.SpeedMaster = false;
DryerMotor.PulsePerRound = 200;
DryerMotor.PulleyRadius = 0.8;
DryerMotor.ConfigWord = 0x1C80;
DryerMotor.DirectionThreadWize = false;
DryerMotor.KvalHold = 0x08;
DryerMotor.KvalRun = 0x35;
DryerMotor.KvalAcc = 0x7f;
DryerMotor.KvalDec = 0x27;
DryerMotor.OverCurrentThreshold = 0x7;
DryerMotor.StallThreshold = 0x1F;
DryerMotor.ThermalCompensationFactor = 0;
DryerMotor.LowSpeedOptimization = false;
DryerMotor.StSlp = 0x20;
DryerMotor.IntSpd = 0x1A13;
DryerMotor.FnSlpAcc = 0x50;
DryerMotor.FnSlpDec = 0x50;
DryerMotor.FsSpd = 0x27;
UploadHardwareConfigurationRequest uploadHardwareConfigurationRequest = new UploadHardwareConfigurationRequest();
HardwareConfiguration hardwareConfiguration = new HardwareConfiguration();
hardwareConfiguration.Motors.Add(DryerMotor);
stubManager.WriteLine("data.data length = " + hardwareConfiguration.CalculateSize());
uploadHardwareConfigurationRequest.HardwareConfiguration = hardwareConfiguration;
//var response = stubManager.Run<UploadHardwareConfigurationResponse>(uploadHardwareConfigurationRequest);
/*Thread.Sleep(5000);*/
//var response3 = stubManager.Run<StubValveResponse>("StubValveRequest" ,6, 10, false);
var response4 = stubManager.Run<StubMotorRunResponse>("StubMotorRunRequest" ,3, false, 1600);
Thread.Sleep(1000);
//open valve toward the midtank, stop dispenser
//var response3 = stubManager.Run<StubValveResponse>("StubValveRequest" ,6, 10, false);
//var response2 = stubManager.Run<StubMotorStopResponse>("StubMotorStopRequest" ,3,2);
}
|