blob: 7a62ec005634baa228f406029563355c83674852 (
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 Dispenser7Motor = new HardwareMotor();
Dispenser7Motor.HardwareMotorType = Tango.PMR.Hardware.HardwareMotorType.MotoDispenser7;
Dispenser7Motor.MinFrequency = 0;
Dispenser7Motor.MaxFrequency = 100000;
Dispenser7Motor.SetMicroStep = 1;
Dispenser7Motor.MicroStep = 16;
Dispenser7Motor.MaxChangeSlope = 0x7ff;
Dispenser7Motor.HighLengthMicroSecond = 0;
Dispenser7Motor.SpeedMaster = false;
Dispenser7Motor.PulsePerRound = 200;
Dispenser7Motor.PulleyRadius = 0.8;
Dispenser7Motor.ConfigWord = 0x1CA0;
Dispenser7Motor.DirectionThreadWize = false;
Dispenser7Motor.KvalHold = 0x08;
Dispenser7Motor.KvalRun = 0x20;
Dispenser7Motor.KvalAcc = 0x20;
Dispenser7Motor.KvalDec = 0x3ff;
Dispenser7Motor.OverCurrentThreshold = 0xF;
Dispenser7Motor.StallThreshold = 0x7F;
Dispenser7Motor.ThermalCompensationFactor = 0;
Dispenser7Motor.LowSpeedOptimization = false;
Dispenser7Motor.StSlp = 0x7;
Dispenser7Motor.IntSpd = 0x22C5;
Dispenser7Motor.FnSlpAcc = 0x15;
Dispenser7Motor.FnSlpDec = 0x15;
Dispenser7Motor.FsSpd = 0x3ff;
UploadHardwareConfigurationRequest uploadHardwareConfigurationRequest = new UploadHardwareConfigurationRequest();
HardwareConfiguration hardwareConfiguration = new HardwareConfiguration();
hardwareConfiguration.Motors.Add(Dispenser7Motor);
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" ,12, false, 1200);
Thread.Sleep(1000);
//open valve toward the midtank, stop dispenser 7
//var response3 = stubManager.Run<StubValveResponse>("StubValveRequest" ,6, 10, false);
//var response2 = stubManager.Run<StubMotorStopResponse>("StubMotorStopRequest" ,12,2);
}
|