aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Stubs Collection
diff options
context:
space:
mode:
authorShlomo Hecht <shlomo@twine-s.com>2019-12-18 19:19:23 +0200
committerShlomo Hecht <shlomo@twine-s.com>2019-12-18 19:19:23 +0200
commit23abfd4bf042906abe5de4a46a15c529fceb54d7 (patch)
treef3ffa1dcd0050e3ab7d6d2fd429acd6cdd1846aa /Software/Stubs Collection
parenta61a911d1ebde107ba7bf210af7e753e692d93e2 (diff)
downloadTango-23abfd4bf042906abe5de4a46a15c529fceb54d7.tar.gz
Tango-23abfd4bf042906abe5de4a46a15c529fceb54d7.zip
some fixes in thread loading
Diffstat (limited to 'Software/Stubs Collection')
-rw-r--r--Software/Stubs Collection/stubs/embeddedparametersbuild.cs67
1 files changed, 51 insertions, 16 deletions
diff --git a/Software/Stubs Collection/stubs/embeddedparametersbuild.cs b/Software/Stubs Collection/stubs/embeddedparametersbuild.cs
index a08ca327a..e106699c8 100644
--- a/Software/Stubs Collection/stubs/embeddedparametersbuild.cs
+++ b/Software/Stubs Collection/stubs/embeddedparametersbuild.cs
@@ -24,15 +24,15 @@ ConfigurationParameters configurationParameters = new ConfigurationParameters();
configurationParameters.BreakSensorLimit = 10;
//how many samples to collect in diagnostics before sending
-configurationParameters.DiagnosticCollectionLimit = 1;
+configurationParameters.DiagnosticCollectionLimit = 3;
//how many consecutive readout before declaring DC over/underheat alarm
configurationParameters.OverHeatCountLimit = 3;
configurationParameters.UnderHeatCountLimit = 3;
// time of motor activity before opening the valve or after closing the valve, in milliseconds
-configurationParameters.CloseValveTimeout = 10;
-configurationParameters.OpenValveTimeout = 10;
+configurationParameters.CloseValveTimeout = 48;
+configurationParameters.OpenValveTimeout = 48;
//backlash after filling - target pressure, timoeout, time staps (speed will be added in general parameters)
configurationParameters.InitialDispenserPressure = 0.25;
@@ -41,9 +41,9 @@ configurationParameters.InitialDispenserTimeLag = 100;
//job prepare - build pressure in dispensers - target pressure, timoeout, time staps, speed
configurationParameters.DispenserBuildPressureSpeed = 950; //no more than 1000
-configurationParameters.DispenserBuildPressureLimit = 1.2;
-configurationParameters.DispenserBuildPressureTimeout = 80000;
-configurationParameters.DispenserBuildPressureLag = 50;
+configurationParameters.DispenserBuildPressureLimit = 1.0;
+configurationParameters.DispenserBuildPressureTimeout = 180000;
+configurationParameters.DispenserBuildPressureLag = 100;
//temperature band 1000 = 100% - thresholds for job start around target temprature - AC
configurationParameters.ACHeatersLowerOperationLimit = 995;
@@ -65,34 +65,37 @@ configurationParameters.IDSPreSegmentWFCFTimeBeforeSegment = 30000;
configurationParameters.StartHeatingOnInitSequence = true;
// current test for the heaters - alarm thresholds
-configurationParameters.CurrentAlarmLowLimit = 0.80;
+configurationParameters.CurrentAlarmLowLimit = 0.78;
configurationParameters.CurrentAlarmHighLimit = 1.07;
+//currently not in use
configurationParameters.IDSSegmentRefillTimeout = 5000;
configurationParameters.IDSPreSegmentBuildupTime = 5000;
//cleaning!!!!!!!!!!
configurationParameters.IDSCleaningSpeed = 800;
-configurationParameters.IDSCleaningStopBeforeSegmentTime = 3000;
-configurationParameters.IDSCleaningStartSprayPreSegmentTime = 1000;
+configurationParameters.IDSCleaningStopBeforeSegmentTime = 10000; //end of presegemnt
+configurationParameters.IDSCleaningStartSprayPreSegmentTime =2000; //beginning of presegment
+
+configurationParameters.IDSLeftCleaningMotorSpeed = 48;
+configurationParameters.IDSRightCleaningMotorSpeed = 48;
-configurationParameters.IDSLeftCleaningMotorSpeed = 30;
-configurationParameters.IDSRightCleaningMotorSpeed = 23;
configurationParameters.SwitchToIdleTimeinSeconds = 3600;
configurationParameters.IdleDrierTemperature = 80;
configurationParameters.IdleHeadTemperature = 80;
configurationParameters.IdleMixerTemperature = 0;
-configurationParameters.PowerOffTemperatureLimit = 50;
+configurationParameters.PowerOffTemperatureLimit = 60;
//general parameters, ORDER MUST BE PRESERVED!!!!
//check the dispensers hard limit alarms
/*1*/
Double checkHardLimitAlarms = new Double();
+
checkHardLimitAlarms = 1.0;
configurationParameters.GeneralParameters.Add(checkHardLimitAlarms);
/*2*/
Double checkCurrentAlarms = new Double();
-checkCurrentAlarms = 1.0;
+checkCurrentAlarms = 0.0;
configurationParameters.GeneralParameters.Add(checkCurrentAlarms);
//check the tamper alarms
@@ -108,12 +111,12 @@ configurationParameters.GeneralParameters.Add(checkMotorAlarms);
/*5*/
Double WinderBackToBaseTime = new Double();
-WinderBackToBaseTime = 800.0;
+WinderBackToBaseTime = 820.0;
configurationParameters.GeneralParameters.Add(WinderBackToBaseTime);
/*6*/
Double DispenserInitialPressureSpeed = new Double();
-DispenserInitialPressureSpeed = 800.0;
+DispenserInitialPressureSpeed = 1050.0;
configurationParameters.GeneralParameters.Add(DispenserInitialPressureSpeed);
/*7*/
@@ -123,7 +126,7 @@ configurationParameters.GeneralParameters.Add(SetDiagnosticMode);
/*8*/
Double SetAutoFill = new Double();
-SetAutoFill = 0.0;
+SetAutoFill = 3.0;
configurationParameters.GeneralParameters.Add(SetAutoFill);
File.WriteAllBytes("C:/temp/EmbParam.cfg",configurationParameters.ToBytes());
@@ -134,7 +137,39 @@ byte[] fileBytes = File.ReadAllBytes("C:/temp/EmbParam.cfg");
var config = ConfigurationParameters.Parser.ParseFrom(fileBytes);
stubManager.Write( config);
+ Thread.Sleep(1000);
+stubManager.Write("\n\n Deleting old file");
+
+DeleteRequest deleteRequest = new DeleteRequest();
+deleteRequest.Path = "SYSINFO//EmbParam.cfg";
+deleteRequest.Attribute = Tango.PMR.IO.FileAttribute.Unspecified;
+DeleteResponse response5 = stubManager.Run<DeleteResponse>(deleteRequest);
+
+ Thread.Sleep(1000);
+stubManager.Write("\n\n Loading new file file");
+
+ FileUploadRequest fileUploadRequest = new FileUploadRequest();
+fileUploadRequest.Path = "SYSINFO//EmbParam.cfg";
+fileUploadRequest.Length = (int)fileBytes.Length;
+FileUploadResponse response2 = stubManager.Run<FileUploadResponse>(fileUploadRequest);
+ Thread.Sleep(1000);
+long chunk_size = response2.MaxChunkLength;
+
+FileStream fs = new FileStream("C:/temp/EmbParam.cfg",FileMode.Open);
+
+while (fs.Position < fs.Length)
+{
+ stubManager.Write("Position "+ fs.Position+ " Length "+ fs.Length +"\n\n");
+ FileChunkUploadRequest fileChunkUploadRequest = new FileChunkUploadRequest();
+ fileChunkUploadRequest.UploadID = response2.UploadID;
+ byte[] chunk = new byte[Math.Min(chunk_size,fs.Length - fs.Position)];
+ fs.Read(chunk,0,chunk.Length);
+ fileChunkUploadRequest.Buffer = ByteString.CopyFrom(chunk);
+ var response3 = stubManager.Run<FileChunkUploadResponse>(fileChunkUploadRequest);
+ Thread.Sleep(2000);
+}
+
/*
13:46:42.38: Executing script 'embeddedparametersbuild.cs'...
{ "BreakSensorLimit": 10, "DiagnosticCollectionLimit": 1, "OverHeatCountLimit": 3, "UnderHeatCountLimit": 3, "CloseValveTimeout": 255, "OpenValveTimeout": 255, "InitialDispenserPressure": 1.5, "InitialDispenserTimeout": 60000, "InitialDispenserTimeLag": 100, "DispenserBuildPressureSpeed": 800, "DispenserBuildPressureLimit": 0.9, "DispenserBuildPressureTimeout": 80000, "DispenserBuildPressureLag": 50, "ACHeatersLowerOperationLimit": 995, "ACHeatersUpperOperationLimit": 1005, "DCHeatersLowerOperationLimit": 978, "DCHeatersUpperOperationLimit": 1005, "DispenserPresegmentWFCF": 80, "StartHeatingOnInitSequence": true, "GeneralParameters": [ 1, 1, 1, 1, 800, 1000 ], "CurrentAlarmLowLimit": 0.8, "CurrentAlarmHighLimit": 1.07, "IDSSegmentRefillTimeout": 5000, "IDSPreSegmentBuildupTime": 5000, "IDSCleaningSpeed": 50, "IDSCleaningStopBeforeSegmentTime": 3000, "IDSCleaningStartSprayPreSegmentTime": 1000, "IDSLeftCleaningMotorSpeed": 30, "IDSRightCleaningMotorSpeed": 23, "SwitchToIdleTimeinSeconds": 3600, "IdleDrierTemperature": 80, "IdleHeadTemperature": 80, "PowerOffTemperatureLimit": 50, "IDSPreSegmentWFCFTimeBeforeSegment": 1500 } */