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(uploadHardwareConfigurationRequest); /*Thread.Sleep(5000);*/ //var response3 = stubManager.Run("StubValveRequest" ,6, 10, false); var response4 = stubManager.Run("StubMotorRunRequest" ,3, false, 1600); Thread.Sleep(1000); //open valve toward the midtank, stop dispenser //var response3 = stubManager.Run("StubValveRequest" ,6, 10, false); //var response2 = stubManager.Run("StubMotorStopRequest" ,3,2); }