From a4d662dcdcde9ea06de758ede42657a4be38b84b Mon Sep 17 00:00:00 2001 From: Shlomo Hecht Date: Sun, 26 Jan 2020 15:47:08 +0200 Subject: stubs update --- .../Stubs Collection/stubs/Autohome_Control.cs | 30 +++ .../stubs/Motor_Get_Param_Horizontal_Printing2.cs | 22 +- .../Stubs Collection/stubs/Progress_SetRapid.cs | 23 ++ .../Assemblies/Other/Read_Cartridge_Present.cs | 97 +++++++ .../stubs/Scripts/Assemblies/Other/Tamper_sw.cs | 94 +++++++ .../Scripts/Assemblies/Other/Tamper_switch.cs | 72 +++++ .../stubs/Scripts/Assemblies/Other/ssr9-chiller.cs | 38 +++ .../stubs/Scripts/Assemblies/newWHS/fan.cs | 34 +++ .../stubs/Scripts/Assemblies/newWHS/test_fan.cs | 90 +++++++ .../stubs/Scripts/Assemblies/newWHS/test_valv1.cs | 47 ++++ .../Assemblies/newWHS/test_valv1_disable.cs | 40 +++ .../Scripts/Motor_Get_Param_Horizontal_Printing.cs | 215 +++++++++++++++ .../stubs/Scripts/NewSpeedSensor.cs | 45 ++++ .../stubs/Scripts/new dispenser card GPIO.cs | 90 +++++++ .../stubs/Set loading arm center.cs | 22 ++ .../Stubs Collection/stubs/SetWindingRotations.cs | 27 ++ .../stubs/embeddedparametersbuildand load.cs | 178 +++++++++++++ Software/Stubs Collection/stubs/moveloadarmback.cs | 29 ++ Software/Stubs Collection/stubs/newWHS/fan.cs | 34 --- Software/Stubs Collection/stubs/newWHS/test_fan.cs | 90 ------- .../Stubs Collection/stubs/newWHS/test_valv1.cs | 47 ---- .../stubs/newWHS/test_valv1_disable.cs | 40 --- .../stubs/technician view files/new head.tpf | 294 +++++++++++++++------ Software/Stubs Collection/stubs/temp/EmbParam.cfg | Bin 0 -> 252 bytes .../stubs/temp/embeddedparametersbuild.cs | 178 +++++++++++++ 25 files changed, 1579 insertions(+), 297 deletions(-) create mode 100644 Software/Stubs Collection/stubs/Autohome_Control.cs create mode 100644 Software/Stubs Collection/stubs/Progress_SetRapid.cs create mode 100644 Software/Stubs Collection/stubs/Scripts/Assemblies/Other/Read_Cartridge_Present.cs create mode 100644 Software/Stubs Collection/stubs/Scripts/Assemblies/Other/Tamper_sw.cs create mode 100644 Software/Stubs Collection/stubs/Scripts/Assemblies/Other/Tamper_switch.cs create mode 100644 Software/Stubs Collection/stubs/Scripts/Assemblies/Other/ssr9-chiller.cs create mode 100644 Software/Stubs Collection/stubs/Scripts/Assemblies/newWHS/fan.cs create mode 100644 Software/Stubs Collection/stubs/Scripts/Assemblies/newWHS/test_fan.cs create mode 100644 Software/Stubs Collection/stubs/Scripts/Assemblies/newWHS/test_valv1.cs create mode 100644 Software/Stubs Collection/stubs/Scripts/Assemblies/newWHS/test_valv1_disable.cs create mode 100644 Software/Stubs Collection/stubs/Scripts/Motor_Get_Param_Horizontal_Printing.cs create mode 100644 Software/Stubs Collection/stubs/Scripts/NewSpeedSensor.cs create mode 100644 Software/Stubs Collection/stubs/Scripts/new dispenser card GPIO.cs create mode 100644 Software/Stubs Collection/stubs/Set loading arm center.cs create mode 100644 Software/Stubs Collection/stubs/SetWindingRotations.cs create mode 100644 Software/Stubs Collection/stubs/embeddedparametersbuildand load.cs create mode 100644 Software/Stubs Collection/stubs/moveloadarmback.cs delete mode 100644 Software/Stubs Collection/stubs/newWHS/fan.cs delete mode 100644 Software/Stubs Collection/stubs/newWHS/test_fan.cs delete mode 100644 Software/Stubs Collection/stubs/newWHS/test_valv1.cs delete mode 100644 Software/Stubs Collection/stubs/newWHS/test_valv1_disable.cs create mode 100644 Software/Stubs Collection/stubs/temp/EmbParam.cfg create mode 100644 Software/Stubs Collection/stubs/temp/embeddedparametersbuild.cs (limited to 'Software/Stubs Collection') diff --git a/Software/Stubs Collection/stubs/Autohome_Control.cs b/Software/Stubs Collection/stubs/Autohome_Control.cs new file mode 100644 index 000000000..597a70893 --- /dev/null +++ b/Software/Stubs Collection/stubs/Autohome_Control.cs @@ -0,0 +1,30 @@ +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.Stubs; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ + + +ProgressRequest progressRequest = new ProgressRequest(); +progressRequest.Amount = 0xAD; +/* + AutoHoming_off = 0 + AutoHoming_PowerOff = 1 + AutoHoming_PowerOn_off = 2 + AutoHoming_JobEnd_PowerOn_off = 3 +*/ +//USE 0 TO TURN OFF, 3 TO TURN ON +progressRequest.Delay = 0; + + var response = stubManager.Run(progressRequest); + +} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Motor_Get_Param_Horizontal_Printing2.cs b/Software/Stubs Collection/stubs/Motor_Get_Param_Horizontal_Printing2.cs index 763288603..09d22dea9 100644 --- a/Software/Stubs Collection/stubs/Motor_Get_Param_Horizontal_Printing2.cs +++ b/Software/Stubs Collection/stubs/Motor_Get_Param_Horizontal_Printing2.cs @@ -40,7 +40,7 @@ const Int32 x_STATUS = 0x19; //------------------------------- const Int32 x_GET_PARAM = 0x20; //------------------------------- -const Int32 Max_Motor_ID = 30; +const Int32 Max_Motor_ID = 25; @@ -98,6 +98,22 @@ Int32 i = 12; // to run only for specific motor public void OnExecute(StubManager stubManager) { + +stubManager.Run("StubFpgaWriteRegRequest" ,0x60000380 , 0x06b9); +stubManager.Run("StubFpgaWriteRegRequest" ,0x60000390 , 0x003f); +stubManager.Run("StubFpgaWriteRegRequest" ,0x60000550 , 0x0003); +stubManager.Run("StubFpgaWriteRegRequest" ,0x60000b80 , 0x001f); + + + + + + + + + + + for (i = 0; i < Max_Motor_ID; i++) { @@ -166,7 +182,9 @@ public void OnExecute(StubManager stubManager) response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_ADC_OUT)<<8, 0, 0); stubManager.WriteHex(response.RecivedData,4); - if( response.RecivedData > 12 ) + if( response.RecivedData > 0x15 ) + stubManager.Write("\t\tDual_Driver"); + else if ( response.RecivedData > 0x0b) stubManager.Write("\t\tVolage_Driver"); else if ( response.RecivedData > 8 ) stubManager.Write("\t\tCurrent_Driver"); diff --git a/Software/Stubs Collection/stubs/Progress_SetRapid.cs b/Software/Stubs Collection/stubs/Progress_SetRapid.cs new file mode 100644 index 000000000..fbe559378 --- /dev/null +++ b/Software/Stubs Collection/stubs/Progress_SetRapid.cs @@ -0,0 +1,23 @@ +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.Stubs; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ + + +ProgressRequest progressRequest = new ProgressRequest(); +progressRequest.Amount = 0xE0; +progressRequest.Delay = 0x1; + + var response = stubManager.Run(progressRequest); + +} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Scripts/Assemblies/Other/Read_Cartridge_Present.cs b/Software/Stubs Collection/stubs/Scripts/Assemblies/Other/Read_Cartridge_Present.cs new file mode 100644 index 000000000..397999f12 --- /dev/null +++ b/Software/Stubs Collection/stubs/Scripts/Assemblies/Other/Read_Cartridge_Present.cs @@ -0,0 +1,97 @@ +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.Stubs; +using Tango.Stubs; + +include "..\..\Defines\Tango_Defines_Basic.cs" +include "Tango_Defines_LimitSwitch.cs" +//include "C:\To_Backup\Mulberry\Mulberry_current\Customers\Twine\Tango\LAB_Tests\Main_PCB\ATP_Test\Scripts\Defines\Tango_Defines_Basic.cs" +//include "C:\To_Backup\Mulberry\Mulberry_current\Customers\Twine\Tango\LAB_Tests\Main_PCB\ATP_Test\Scripts\Defines\Tango_Defines_LimitSwitch.cs" + +//MF 23092018 2 spare LS not include + +const Int32 F3_CARTx_PRES_02_Direct = 0x60000870; +const Int32 F3_LOW_Cart_Led1 = 0x60000ba4; +const Int32 F3_High_Cart_Led1 = 0x60000ba6; +const Int32 F3_LOW_Cart_Led2 = 0x60000ba8; +const Int32 F3_High_Cart_Led2 = 0x60000baa; +const Int32 F3_LOW_Cart_Led3 = 0x60000bac; +const Int32 F3_High_Cart_Led3 = 0x60000bae; + +const Int32 F3_PreScalar_Leds = 0x60000be8; + + +public void OnExecute(StubManager stubManager) +{ + + uint Temp = 0; + uint Temp1 = 0; + int counter = 0; + stubManager.Write("\nReading register F3_CARTx_PRES_02_Direct: "); + stubManager.Run("StubFpgaWriteRegRequest" ,F3_LOW_Cart_Led1,100);//Low 8 bit + +var response = stubManager.Run("StubFpgaReadRegRequest" ,F3_PreScalar_Leds,250); + stubManager.WriteHex(response.Value,4); + Temp = response.Value; + stubManager.Write("\nActivate limit switches one-by-one"); + + while ( counter != 1000) + { + response = stubManager.Run("StubFpgaReadRegRequest" ,F3_CARTx_PRES_02_Direct); + + + + if (response.Value != Temp) + { + stubManager.WriteHex(response.Value,4); + + + Temp1=response.Value & 0x080; + if (Temp1 ==0x0080) + { + stubManager.Write("\nCART1_PRES"); + stubManager.Run("StubFpgaWriteRegRequest" ,F3_LOW_Cart_Led1,255);//Low 8 bit + stubManager.Run("StubFpgaWriteRegRequest" ,F3_High_Cart_Led1,255);//High 8 bit + + + } + Temp1=response.Value & 0x0040; + if (Temp1 ==0x0040) + { + stubManager.Write("\nCART2_PRES"); + stubManager.Run("StubFpgaWriteRegRequest" ,F3_LOW_Cart_Led2,255);//Low 8 bit + stubManager.Run("StubFpgaWriteRegRequest" ,F3_High_Cart_Led2,255);//High 8 bit + } + + Temp1=response.Value & 0x0020; + if (Temp1 ==0x0020) + { + stubManager.Write("\nCART3_PRES"); + stubManager.Run("StubFpgaWriteRegRequest" ,F3_LOW_Cart_Led3,255);//Low 8 bit + stubManager.Run("StubFpgaWriteRegRequest" ,F3_High_Cart_Led3,255);//High 8 bit + } + + + counter = counter + 1; + } + Thread.Sleep(1000); + Temp = response.Value; + stubManager.Run("StubFpgaWriteRegRequest" ,F3_LOW_Cart_Led1,10);//Low 8 bit + stubManager.Run("StubFpgaWriteRegRequest" ,F3_High_Cart_Led1,1);//High 8 bit + stubManager.Run("StubFpgaWriteRegRequest" ,F3_LOW_Cart_Led2,10);//Low 8 bit + stubManager.Run("StubFpgaWriteRegRequest" ,F3_High_Cart_Led2,1);//High 8 bit + stubManager.Run("StubFpgaWriteRegRequest" ,F3_LOW_Cart_Led3,10);//Low 8 bit + stubManager.Run("StubFpgaWriteRegRequest" ,F3_High_Cart_Led3,1);//High 8 bit + + } + + + +} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Scripts/Assemblies/Other/Tamper_sw.cs b/Software/Stubs Collection/stubs/Scripts/Assemblies/Other/Tamper_sw.cs new file mode 100644 index 000000000..2c51aebe7 --- /dev/null +++ b/Software/Stubs Collection/stubs/Scripts/Assemblies/Other/Tamper_sw.cs @@ -0,0 +1,94 @@ +sing 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.Stubs; +using Tango.Stubs; + +include "..\..\Defines\Tango_Defines_Basic.cs" +include "Tango_Defines_LimitSwitch.cs" +//include "C:\To_Backup\Mulberry\Mulberry_current\Customers\Twine\Tango\LAB_Tests\Main_PCB\ATP_Test\Scripts\Defines\Tango_Defines_Basic.cs" +//include "C:\To_Backup\Mulberry\Mulberry_current\Customers\Twine\Tango\LAB_Tests\Main_PCB\ATP_Test\Scripts\Defines\Tango_Defines_LimitSwitch.cs" + +//MF 23092018 2 spare LS not include + +const Int32 F3_GPI_01_Direct = 0x60000820; + +public void OnExecute(StubManager stubManager) +{ + + uint Temp = 0; + uint Temp1 = 0; + int counter = 0; + stubManager.Write("\nReading register F3_GPI_01_Direct: "); + +var response = stubManager.Run("StubFpgaReadRegRequest" ,F3_GPI_01_Direct); + stubManager.WriteHex(response.Value,4); + Temp = response.Value; + stubManager.Write("\nActivate limit switches one-by-one"); + + while ( counter != 1000) + { + response = stubManager.Run("StubFpgaReadRegRequest" ,F3_GPI_01_Direct); + + + + if (response.Value != Temp) + { + stubManager.WriteHex(response.Value,4); + + + Temp1=response.Value & 0x0008; + if (Temp1 ==0x0008) + { + stubManager.Write("\nF3_GPI_PANSW6"); + + } + Temp1=response.Value & 0x0010; + if (Temp1 ==0x0010) + { + stubManager.Write("\nF3_GPI_PANSW5"); + } + + Temp1=response.Value & 0x0020; + if (Temp1 ==0x0020) + { + stubManager.Write("\nF3_GPI_PANSW4"); + } + + Temp1=response.Value & 0x0040; + if (Temp1 ==0x0040) + { + stubManager.Write("\nF3_GPI_PANSW3"); + } + + Temp1=response.Value & 0x0080; + if (Temp1 ==0x0080) + { + stubManager.Write("\nF3_GPI_PANSW2"); + } + + + Temp1=response.Value & 0x0100; + if (Temp1 ==0x0100) + { + stubManager.Write("\nF3_GPI_PANSW1"); + } + + + + counter = counter + 1; + } + Thread.Sleep(1000); + Temp = response.Value; + + } + + + +} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Scripts/Assemblies/Other/Tamper_switch.cs b/Software/Stubs Collection/stubs/Scripts/Assemblies/Other/Tamper_switch.cs new file mode 100644 index 000000000..9b741d981 --- /dev/null +++ b/Software/Stubs Collection/stubs/Scripts/Assemblies/Other/Tamper_switch.cs @@ -0,0 +1,72 @@ +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.Stubs; +using Tango.Stubs; + +include "..\..\Defines\Tango_Defines_Basic.cs" +include "Tango_Defines_LimitSwitch.cs" +//include "C:\To_Backup\Mulberry\Mulberry_current\Customers\Twine\Tango\LAB_Tests\Main_PCB\ATP_Test\Scripts\Defines\Tango_Defines_Basic.cs" +//include "C:\To_Backup\Mulberry\Mulberry_current\Customers\Twine\Tango\LAB_Tests\Main_PCB\ATP_Test\Scripts\Defines\Tango_Defines_LimitSwitch.cs" + + + +public void OnExecute(StubManager stubManager) +{ + uint Temp = 0; + uint Temp1 = 0; + int counter = 0; + stubManager.Write("\nReading register F3_GPI_01_Direct: "); + var RetVal = Fpga_Read_Reg(FPGA3, F3_GPI_01_Direct, 0); + stubManager.WriteHex(RetVal.Value,4); + Temp = RetVal.Value; + stubManager.Write("\nActivate Tamper switches one-by-one"); + + while ( counter != 100000) + { + RetVal = Fpga_Read_Reg(FPGA3, F3_GPI_01_Direct, 0); + if (RetVal.Value != Temp) + { + stubManager.Write("\nRegister F3_GPI_01_Direct new value: "); + stubManager.WriteHex(RetVal.Value, 4); + + Temp1=RetVal.Value & 0x0008; + if (Temp1 !=0x0008) + stubManager.Write("\nPANSW6"); + + + Temp1=RetVal.Value & 0x0010; + if (Temp1 !=0x0010) + stubManager.Write("\nPANSW5"); + + Temp1=RetVal.Value & 0x0020; + if (Temp1 !=0x0020) + stubManager.Write("\nPANSW4"); + + Temp1=RetVal.Value & 0x0040; + if (Temp1 !=0x0040) + stubManager.Write("\nPANSW3"); + + Temp1=RetVal.Value & 0x0080; + if (Temp1 !=0x0080) + stubManager.Write("\nPANSW2"); + + Temp1=RetVal.Value & 0x0100; + if (Temp1 !=0x0100) + stubManager.Write("\nPANSW1"); + + + counter = counter + 1; + } + Thread.Sleep(100); + Temp = RetVal.Value; + + } + +} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Scripts/Assemblies/Other/ssr9-chiller.cs b/Software/Stubs Collection/stubs/Scripts/Assemblies/Other/ssr9-chiller.cs new file mode 100644 index 000000000..28d6f69fc --- /dev/null +++ b/Software/Stubs Collection/stubs/Scripts/Assemblies/Other/ssr9-chiller.cs @@ -0,0 +1,38 @@ +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.Stubs; +using Tango.Stubs; + +include "..\..\Defines\Tango_Defines_Basic.cs" +include "Tango_Defines_SSR.cs" +//include "C:\To_Backup\Mulberry\Mulberry_current\Customers\Twine\Tango\Software\Stub_scripts\Tango_Defines_Basic.cs" +//include "C:\To_Backup\Mulberry\Mulberry_current\Customers\Twine\Tango\Software\Stub_scripts\Interfaces\Tango_Defines_SSR.cs" + +//---------------------- +const Int32 I2C_ID = 2; +//const Int32 I2C_Slave_Add = 0x46; //must be 0x40, 0x44 or 0x46 +//---------------------- + + +public void OnExecute(StubManager stubManager) +{ + + + UInt32 temp=0; + + + //Write F2_GPO_CHILLER_SSR9_CTRL SSR/SSR no. 9 + SetBit (FPGA2, F2_CTRL, 2, 1); + stubManager.Write("\tTesting SSR no. 9\tCHILLER\t"); + Thread.Sleep(10000); + SetBit (FPGA2, F2_CTRL, 2, 0); + + +} diff --git a/Software/Stubs Collection/stubs/Scripts/Assemblies/newWHS/fan.cs b/Software/Stubs Collection/stubs/Scripts/Assemblies/newWHS/fan.cs new file mode 100644 index 000000000..7e68d62ef --- /dev/null +++ b/Software/Stubs Collection/stubs/Scripts/Assemblies/newWHS/fan.cs @@ -0,0 +1,34 @@ +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.Stubs; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ + + + // Request ---- +// Int32 : Amount +// Int32 : Delay + +// Response ---- +// Double : Progress +//stubManager.Run("ProgressRequest" ,0xFAC2, 0x20); //WHS FAN 1 low seed +//stubManager.Run("ProgressRequest" ,0xFAC3, 0x20); //WHS FAN 2 low seed +//stubManager.Run("ProgressRequest" ,0xFAC4, 0x20); //WHS FAN 3 low seed +//stubManager.Run("ProgressRequest" ,0xFAC5, 0x20); //WHS FAN 4 low seed +//stubManager.Run("ProgressRequest" ,0xFAC6, 0x20); //WHS FAN 5 low seed +//stubManager.Run("ProgressRequest" ,0xFAC2, 0x20); //WHS FAN 6 low seed +var response = stubManager.Run("ProgressRequest" ,0xFAC3, 0x20); + + + + +} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Scripts/Assemblies/newWHS/test_fan.cs b/Software/Stubs Collection/stubs/Scripts/Assemblies/newWHS/test_fan.cs new file mode 100644 index 000000000..acd5e3c50 --- /dev/null +++ b/Software/Stubs Collection/stubs/Scripts/Assemblies/newWHS/test_fan.cs @@ -0,0 +1,90 @@ +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.Stubs; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ +// Request ---- +// Int32 : Amount +// Int32 : Delay + +// Response ---- +// Double : Progress +stubManager.Run("ProgressRequest" ,0x3E9, 0x0001); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x0101); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x0201); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x0301); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x0401); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x0501); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x0601); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x0701); +Thread.Sleep(1000); //Sleep for 10 milli. + +stubManager.Run("ProgressRequest" ,0x3E9, 0x4001); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x4101); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x4201); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x4301); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x4401); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x4501); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x4601); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x4701); +Thread.Sleep(1000); //Sleep for 10 milli. + +stubManager.Run("ProgressRequest" ,0x3E9, 0x0001); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x0101); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x0201); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x0301); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x0401); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x0501); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x0601); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x0701); +Thread.Sleep(1000); //Sleep for 10 milli. + +stubManager.Run("ProgressRequest" ,0x3E9, 0x4001); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x4101); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x4201); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x4301); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x4401); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x4501); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x4601); +Thread.Sleep(1000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x4701); +Thread.Sleep(1000); //Sleep for 10 milli. + +var response = stubManager.Run("ProgressRequest" ,0x3E8, 0); +} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Scripts/Assemblies/newWHS/test_valv1.cs b/Software/Stubs Collection/stubs/Scripts/Assemblies/newWHS/test_valv1.cs new file mode 100644 index 000000000..c81bdaebd --- /dev/null +++ b/Software/Stubs Collection/stubs/Scripts/Assemblies/newWHS/test_valv1.cs @@ -0,0 +1,47 @@ +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.Stubs; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ +// Request ---- +// Int32 : Amount +// Int32 : Delay + +// Response ---- +// Double : Progress + +//valv1 +var response1 = stubManager.Run("ProgressRequest" ,0x3E9, 0x8501); //valv1_en=1 +Thread.Sleep(5000); //Sleep for 10 milli. +var response2 = stubManager.Run("ProgressRequest" ,0x3E9, 0x8401);// valv1_dir=1 +Thread.Sleep(5000); //Sleep for 10 milli. +var response3 = stubManager.Run("ProgressRequest" ,0x3E9, 0x8400);// valv1_dir=0 +Thread.Sleep(5000); //Sleep for 10 milli. +var response4 = stubManager.Run("ProgressRequest" ,0x3E9, 0x8500);// valv1_disable + + +// valve 2 +var response5 = stubManager.Run("ProgressRequest" ,0x3E9, 0x8701); //valv2_en=1 +Thread.Sleep(5000); //Sleep for 10 milli. +var response6 = stubManager.Run("ProgressRequest" ,0x3E9, 0x8601);// valv2_dir=1 +Thread.Sleep(5000); //Sleep for 10 milli. +var response7 = stubManager.Run("ProgressRequest" ,0x3E9, 0x8600);// valv2_dir=0 +Thread.Sleep(5000); //Sleep for 10 milli. +var response8 = stubManager.Run("ProgressRequest" ,0x3E9, 0x8700); //valv2_disable + +//test pump +Thread.Sleep(5000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x0701);// pump on +Thread.Sleep(5000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x0700); // pump off + +} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Scripts/Assemblies/newWHS/test_valv1_disable.cs b/Software/Stubs Collection/stubs/Scripts/Assemblies/newWHS/test_valv1_disable.cs new file mode 100644 index 000000000..086063855 --- /dev/null +++ b/Software/Stubs Collection/stubs/Scripts/Assemblies/newWHS/test_valv1_disable.cs @@ -0,0 +1,40 @@ +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.Stubs; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ +// Request ---- +// Int32 : Amount +// Int32 : Delay + +// Response ---- +// Double : Progress +//stubManager.Run("ProgressRequest" ,0x3E9, 0x8500); //valv1_en=0 +//Thread.Sleep(5000); //Sleep for 10 milli. +//stubManager.Run("ProgressRequest" ,0x3E9, 0x8501); //valv1_en=0 +//Thread.Sleep(5000); //Sleep for 10 milli. + + + + int a = 0; + + while (a < 100) + { + a = a + 1; +stubManager.Run("ProgressRequest" ,0x3E9, 0x8500); //valv1_en=0 +Thread.Sleep(5000); //Sleep for 10 milli. +stubManager.Run("ProgressRequest" ,0x3E9, 0x8501); //valv1_en=0 +Thread.Sleep(5000); //Sleep for 10 milli. +//stubManager.WriteLine(a); + } + +} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Scripts/Motor_Get_Param_Horizontal_Printing.cs b/Software/Stubs Collection/stubs/Scripts/Motor_Get_Param_Horizontal_Printing.cs new file mode 100644 index 000000000..7e0d1ae38 --- /dev/null +++ b/Software/Stubs Collection/stubs/Scripts/Motor_Get_Param_Horizontal_Printing.cs @@ -0,0 +1,215 @@ +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.Stubs; +using Tango.Stubs; + +//unmark Auto logging ! + +const Int32 x_ABS_POS = 0x01; +const Int32 x_EL_POS = 0x02; +const Int32 x_MARK = 0x03; +const Int32 x_SPEED = 0x04; +const Int32 x_ACC = 0x05; +const Int32 x_DEC = 0x06; +const Int32 x_MAX_SPEED = 0x07; +const Int32 x_MIN_SPEED = 0x08; +const Int32 x_FS_SPD = 0x15; +const Int32 x_KVAL_HOLD = 0x09; +const Int32 x_KVAL_RUN = 0x0A; +const Int32 x_KVAL_ACC = 0x0B; +const Int32 x_KVAL_DEC = 0x0C; +const Int32 x_INT_SPD = 0x0D; +const Int32 x_ST_SLP = 0x0E; +const Int32 x_FN_SLP_ACC = 0x0F; +const Int32 x_FN_SLP_DEC = 0x10; +const Int32 x_K_THERM = 0x11; +const Int32 x_ADC_OUT = 0x12; +const Int32 x_OCD_TH = 0x13; +const Int32 x_STALL_TH = 0x14; +const Int32 x_STEP_MODE = 0x16; +const Int32 x_ALARM_EN = 0x17; +const Int32 x_CONFIG = 0x18; +const Int32 x_STATUS = 0x19; +//------------------------------- +const Int32 x_GET_PARAM = 0x20; +//------------------------------- +const Int32 Max_Motor_ID = 25; + + + +string[] Motor_ID = new string[30]; + + +Motor_ID[0] ="DH_CLEANHEAD "; +Motor_ID[1] ="DH_CLEANMECH "; +Motor_ID[2] ="DH_LID "; +Motor_ID[3] ="DRYER_DRIVING"; +Motor_ID[4] ="DRYER_LID "; +Motor_ID[5] ="DRYER_LOADARM"; +Motor_ID[6] ="DISPENCER_1 "; +Motor_ID[7] ="DISPENCER_2 "; +Motor_ID[8] ="DISPENCER_3 "; +Motor_ID[9] ="DISPENCER_4 "; +Motor_ID[10]="DISPENCER_5 "; +Motor_ID[11]="DISPENCER_6 "; +Motor_ID[12]="DISPENCER_7 "; +Motor_ID[13]="DISPENCER_8 "; +Motor_ID[14]="SCREW "; +Motor_ID[15]="WINDER "; +Motor_ID[16]="LDANCER1 "; +Motor_ID[17]="LDANCER2 "; +Motor_ID[18]="LDRIVING "; +Motor_ID[19]="LLODING "; +Motor_ID[20]="LPIVOT "; +Motor_ID[21]="RDANCER "; +Motor_ID[22]="RDRIVING "; +Motor_ID[23]="RLOADARM "; +Motor_ID[24]="RLODING "; +Motor_ID[25]="SPARE1_1 "; +Motor_ID[26]="SPARE1_2 "; +Motor_ID[27]="SPARE2_1 "; +Motor_ID[28]="SPARE2_2 "; +Motor_ID[29]="SPARE3 "; + + + + + + + + + + + + + + + + + +Int32 i = 12; // to run only for specific motor + +public void OnExecute(StubManager stubManager) +{ + for (i = 0; i < Max_Motor_ID; i++) + { + + if((i%8 ==0) ) + { + stubManager.Write("\n\n"); + stubManager.Write("MoTor\t\t\tMIN_SPEED\tMAX_SPEED\tSTEP_MODE\tACC\t\tDEC\t\tKVAL_HOLD\tKVAL_RUN\tKVAL_ACC\tKVAL_DEC\tOCD_TH\t\tSTALL_TH\tCONFIG\t\tFS_SPD\t\tADC_OUT\tDriver_Type\n"); + stubManager.Write("------\t\t\t--------\t--------\t----------\t---\t\t---\t\t---------\t--------\t--------\t--------\t------\t\t--------\t------\t\t------\t\t------\t\t------\n"); + } + //stubManager.Write(i); + + stubManager.Write(Motor_ID[i]); + stubManager.Write("\t\t"); + + var response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_MIN_SPEED)<<16, 0, 0); + stubManager.WriteHex(response.RecivedData,4); + stubManager.Write("\t\t"); + + response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_MAX_SPEED)<<16, 0, 0); + stubManager.WriteHex(response.RecivedData,4); stubManager.Write("\t"); + stubManager.Write("\t"); + + response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_STEP_MODE)<<8, 0, 0); + stubManager.WriteHex(response.RecivedData,4); + stubManager.Write("\t\t"); + + response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_ACC)<<16, 0, 0); + stubManager.WriteHex(response.RecivedData,4); + stubManager.Write("\t\t"); + + response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_DEC)<<16, 0, 0); + stubManager.WriteHex(response.RecivedData,4); + stubManager.Write("\t\t"); + + response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_KVAL_HOLD)<<8, 0, 0); + stubManager.WriteHex(response.RecivedData,4); + stubManager.Write("\t\t"); + + response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_KVAL_RUN)<<8, 0, 0); + stubManager.WriteHex(response.RecivedData,4); + stubManager.Write("\t\t"); + + response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_KVAL_ACC)<<8, 0, 0); + stubManager.WriteHex(response.RecivedData,4); + stubManager.Write("\t\t"); + + response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_KVAL_DEC)<<8, 0, 0); + stubManager.WriteHex(response.RecivedData,4); + stubManager.Write("\t\t"); + + response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_OCD_TH)<<8, 0, 0); + stubManager.WriteHex(response.RecivedData,4); + stubManager.Write("\t\t"); + + response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_STALL_TH)<<8, 0, 0); + stubManager.WriteHex(response.RecivedData,4); + stubManager.Write("\t\t"); + + response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_CONFIG)<<16, 0, 0); + stubManager.WriteHex(response.RecivedData,4); + stubManager.Write("\t\t"); + + response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_FS_SPD)<<16, 0, 0); + stubManager.WriteHex(response.RecivedData,4); + stubManager.Write("\t\t"); + + response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_ADC_OUT)<<8, 0, 0); + stubManager.WriteHex(response.RecivedData,4); + if( response.RecivedData > 12 ) + stubManager.Write("\t\tVolage_Driver"); + else if ( response.RecivedData > 8 ) + stubManager.Write("\t\tCurrent_Driver"); + else + stubManager.Write("\t\tNo_Driver"); + + + stubManager.Write("\n\n"); + + } + + stubManager.Write("MoTor\t\t\tINT_SPD\tST_SLP\t\tSLP_ACC\tSLP_DEC\tSTATUS\n"); + stubManager.Write("-----\t\t\t-------\t------\t\t-------\t--------\t-----\n"); + + for (i = 0; i < Max_Motor_ID; i++) + { + stubManager.Write(Motor_ID[i]); + +// stubManager.Write(i); + stubManager.Write("\t\t"); + + var response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_INT_SPD)<<16, 0, 0); + stubManager.WriteHex(response.RecivedData,4); + stubManager.Write("\t\t"); + + response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_ST_SLP)<<8, 0, 0); + stubManager.WriteHex(response.RecivedData,4); + stubManager.Write("\t\t"); + + response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_FN_SLP_ACC)<<8, 0, 0); + stubManager.WriteHex(response.RecivedData,4); + stubManager.Write("\t\t"); + + response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_FN_SLP_DEC)<<8, 0, 0); + stubManager.WriteHex(response.RecivedData,4); + stubManager.Write("\t\t"); + + response = stubManager.Run("StubMotorRequest" ,i, (x_GET_PARAM | x_STATUS)<<16, 0, 0); + stubManager.WriteHex(response.RecivedData,4); + stubManager.Write("\n\n"); + + + + } + +} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Scripts/NewSpeedSensor.cs b/Software/Stubs Collection/stubs/Scripts/NewSpeedSensor.cs new file mode 100644 index 000000000..02f8384bc --- /dev/null +++ b/Software/Stubs Collection/stubs/Scripts/NewSpeedSensor.cs @@ -0,0 +1,45 @@ +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.Stubs; +using Tango.Stubs; + +const UInt32 Freq = 29166667;//FPGA Freq + +const UInt32 F1_Tacho_reg9 = 0x1E2;//Time of Tacho / No of clk in one cycle +const UInt32 F1_gpo_cnt_A_reg = 0x3B0;// how many pulses to count +//const Int32 F1_Prescaler1_reg5 = 0x3E8; //OLD FPGA 05.022019 +const UInt32 F1_Prescaler1_reg6 = 0x3EA; //New FPGA + +const UInt32 CNT = 4;//bigger number for resolution +const UInt32 Presc = 2;//Lower number for resolution +UInt32 temp; + +public void OnExecute(StubManager stubManager) +{ + stubManager.Run("StubFpgaWriteRegRequest" ,0x60000000 + F1_Prescaler1_reg6, Presc);//for new FPGA use reg6!! + var response = stubManager.Run("StubFpgaReadRegRequest" ,0x60000000 + F1_Prescaler1_reg6);//for new FPGA use reg6!!! + response = stubManager.Run("StubFpgaReadRegRequest" ,0x60000000 + F1_gpo_cnt_A_reg); + stubManager.Run("StubFpgaWriteRegRequest" ,0x60000000 + F1_gpo_cnt_A_reg, CNT); + response = stubManager.Run("StubFpgaReadRegRequest" ,0x60000000 + F1_gpo_cnt_A_reg); + + for(int i =0;i<1000;i++) + { + response = stubManager.Run("StubFpgaReadRegRequest" ,0x60000000 + F1_Tacho_reg9); + + + temp = (Freq * CNT) /((UInt32)response.Value * Presc); + + stubManager.Write(temp); + stubManager.Write(" Hz, "); + stubManager.WriteHex((response.Value & 0xffff),4); + stubManager.WriteLine(""); + Thread.Sleep(100); //Sleep for 100 milli. + } +} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Scripts/new dispenser card GPIO.cs b/Software/Stubs Collection/stubs/Scripts/new dispenser card GPIO.cs new file mode 100644 index 000000000..43d0dd76a --- /dev/null +++ b/Software/Stubs Collection/stubs/Scripts/new dispenser card GPIO.cs @@ -0,0 +1,90 @@ +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.Stubs; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ + // Request ---- + // UInt32 : DispenserId + // Boolean : Start --- true for ByPass + // Boolean : SetDirection --- true for TestRelay + // UInt32 : SetMicrostepDivision -- 1 for TestByPassTestRelay + // Int32 : SetSpeed + + // Response ---- + // UInt32 : DispenserId + // UInt32 : DispenserPosition --- MSB for Disp_UP, LSB for Disp_Down + // UInt32 : InkWorningLevel ---- MSB for Realy_On, LSB for Over_Press + // String : Status + // UInt32 : StatusWord + + stubManager.Write("read inputs "); + stubManager.WriteLine(""); + var response = stubManager.Run("StubDispenserRequest" ,3, false, false, 0, 0);//read inputs + stubManager.Write("MSB for Disp_UP, LSB for Disp_Down "); + stubManager.WriteHex((response.DispenserPosition),4); + stubManager.WriteLine(""); + stubManager.Write("MSB for Realy_On, LSB for Over_Press "); + stubManager.WriteHex((response.InkWorningLevel),4); + stubManager.WriteLine(""); + stubManager.WriteLine("----"); + stubManager.WriteLine(""); + + stubManager.Write("TestRelay + read inputs "); + stubManager.WriteLine(""); + response = stubManager.Run("StubDispenserRequest" ,3, false, true, 0, 0);//TestRelay + read inputs + stubManager.Write("MSB for Disp_UP, LSB for Disp_Down "); + stubManager.WriteHex((response.DispenserPosition),4); + stubManager.WriteLine(""); + stubManager.Write("MSB for Realy_On, LSB for Over_Press "); + stubManager.WriteHex((response.InkWorningLevel),4); + stubManager.WriteLine(""); + stubManager.WriteLine("----"); + stubManager.WriteLine(""); + + stubManager.Write("ByPass + TestRelay + read inputs "); + stubManager.WriteLine(""); + response = stubManager.Run("StubDispenserRequest" ,3, true, true, 0, 0);//ByPass + TestRelay + read inputs + stubManager.Write("MSB for Disp_UP, LSB for Disp_Down "); + stubManager.WriteHex((response.DispenserPosition),4); + stubManager.WriteLine(""); + stubManager.Write("MSB for Realy_On, LSB for Over_Press "); + stubManager.WriteHex((response.InkWorningLevel),4); + stubManager.WriteLine(""); + stubManager.WriteLine("----"); + stubManager.WriteLine(""); + + stubManager.Write("Remove ByPass (TestRelay + read inputs) "); + stubManager.WriteLine(""); + response = stubManager.Run("StubDispenserRequest" ,3, false, true, 0, 0);//TestRelay + read inputs + stubManager.Write("MSB for Disp_UP, LSB for Disp_Down "); + stubManager.WriteHex((response.DispenserPosition),4); + stubManager.WriteLine(""); + stubManager.Write("MSB for Realy_On, LSB for Over_Press "); + stubManager.WriteHex((response.InkWorningLevel),4); + stubManager.WriteLine(""); + stubManager.WriteLine("----"); + stubManager.WriteLine(""); + + + stubManager.Write("Rempve TestRelay and read inputs "); + stubManager.WriteLine(""); + response = stubManager.Run("StubDispenserRequest" ,3, false, false, 0, 0);//read input + stubManager.Write("MSB for Disp_UP, LSB for Disp_Down "); + stubManager.WriteHex((response.DispenserPosition),4); + stubManager.WriteLine(""); + stubManager.Write("MSB for Realy_On, LSB for Over_Press "); + stubManager.WriteHex((response.InkWorningLevel),4); + stubManager.WriteLine(""); + stubManager.WriteLine("----"); + stubManager.WriteLine(""); + +} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Set loading arm center.cs b/Software/Stubs Collection/stubs/Set loading arm center.cs new file mode 100644 index 000000000..bb502309e --- /dev/null +++ b/Software/Stubs Collection/stubs/Set loading arm center.cs @@ -0,0 +1,22 @@ +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.Stubs; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ + + +ProgressRequest progressRequest = new ProgressRequest(); +progressRequest.Amount = 0xB1; + +var response = stubManager.Run(progressRequest); + +} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/SetWindingRotations.cs b/Software/Stubs Collection/stubs/SetWindingRotations.cs new file mode 100644 index 000000000..e89bc04e5 --- /dev/null +++ b/Software/Stubs Collection/stubs/SetWindingRotations.cs @@ -0,0 +1,27 @@ +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.Stubs; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ + +// use this stub to set the number of thread rotation on each screw passage (bigger the number - slower the screw) +ProgressRequest progressRequest = new ProgressRequest(); +//DO NOT CHANGE THIS LINE!!!!!!!!!!!!!! +progressRequest.Amount = 0xF1; //DO NOT CHANGE THIS LINE!!!!!!!!!!!!!! +//DO NOT CHANGE THIS LINE!!!!!!!!!!!!!! + +//set the number of rotations *1000 +progressRequest.Delay = 6123; + + var response = stubManager.Run(progressRequest); + +} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/embeddedparametersbuildand load.cs b/Software/Stubs Collection/stubs/embeddedparametersbuildand load.cs new file mode 100644 index 000000000..ed3e3f8d9 --- /dev/null +++ b/Software/Stubs Collection/stubs/embeddedparametersbuildand load.cs @@ -0,0 +1,178 @@ +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.Stubs; +using Tango.Stubs; +using Google.Protobuf; +using Tango.PMR.EmbeddedParameters; +using System.IO; +using Tango.PMR.IO; + + +public void OnExecute(StubManager stubManager) +{ + + +ConfigurationParameters configurationParameters = new ConfigurationParameters(); + +configurationParameters.BreakSensorLimit = 10; + +//how many samples to collect in diagnostics before sending +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 = 49; +configurationParameters.OpenValveTimeout = 49; + +//backlash after filling - target pressure, timoeout, time staps (speed will be added in general parameters) +configurationParameters.InitialDispenserPressure = 0.25; +configurationParameters.InitialDispenserTimeout = 60000; //20 seconds +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.0; +configurationParameters.DispenserBuildPressureTimeout = 180000; +configurationParameters.DispenserBuildPressureLag = 50; + +//temperature band 1000 = 100% - thresholds for job start around target temprature - AC +configurationParameters.ACHeatersLowerOperationLimit = 995; +configurationParameters.ACHeatersUpperOperationLimit = 1005; + +//temperature band 1000 = 100% - thresholds for job start around target temprature - DC +configurationParameters.DCHeatersLowerOperationLimit = 978; +configurationParameters.DCHeatersUpperOperationLimit = 1005; + +// mid tank reading offset to add to the readout (OBSOLETE!) +configurationParameters.MidTankPressureCorrection = 0.0; + +//waste factor for intersegment pressure building +configurationParameters.DispenserPresegmentWFCF = 40; +//how much time to start the WFCF process (pressure buildup) before segment start +configurationParameters.IDSPreSegmentWFCFTimeBeforeSegment = 30000; + +//flag: start heaters according to saved process parameters upon init? +configurationParameters.StartHeatingOnInitSequence = true; + +// current test for the heaters - alarm thresholds +configurationParameters.CurrentAlarmLowLimit = 0.78; +configurationParameters.CurrentAlarmHighLimit = 1.07; + +//currently not in use +configurationParameters.IDSSegmentRefillTimeout = 5000; +configurationParameters.IDSPreSegmentBuildupTime = 5000; +//cleaning!!!!!!!!!! +configurationParameters.IDSCleaningSpeed = 800; +configurationParameters.IDSCleaningStopBeforeSegmentTime = 10000; //end of presegemnt +configurationParameters.IDSCleaningStartSprayPreSegmentTime =2000; //beginning of presegment + +configurationParameters.IDSLeftCleaningMotorSpeed = 49; +configurationParameters.IDSRightCleaningMotorSpeed = 49; + +configurationParameters.SwitchToIdleTimeinSeconds = 3600; +configurationParameters.IdleDrierTemperature = 80; +configurationParameters.IdleHeadTemperature = 80; +configurationParameters.IdleMixerTemperature = 0; +configurationParameters.PowerOffTemperatureLimit = 100; + +//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; +configurationParameters.GeneralParameters.Add(checkCurrentAlarms); +//check the tamper alarms + +/*3*/ +Double checkTamperAlarms = new Double(); +checkTamperAlarms = 0.0; +configurationParameters.GeneralParameters.Add(checkTamperAlarms); + +/*4*/ +Double checkMotorAlarms = new Double(); +checkMotorAlarms = 1.0; +configurationParameters.GeneralParameters.Add(checkMotorAlarms); + +/*5*/ +Double WinderBackToBaseTime = new Double(); +WinderBackToBaseTime = 820.0; +configurationParameters.GeneralParameters.Add(WinderBackToBaseTime); + +/*6*/ +Double DispenserInitialPressureSpeed = new Double(); +DispenserInitialPressureSpeed = 1050.0; +configurationParameters.GeneralParameters.Add(DispenserInitialPressureSpeed); + +/*7*/ +Double SetDiagnosticMode = new Double(); +SetDiagnosticMode = 3.0; +configurationParameters.GeneralParameters.Add(SetDiagnosticMode); + +/*8*/ +Double SetAutoFill = new Double(); +SetAutoFill = 3.0; +configurationParameters.GeneralParameters.Add(SetAutoFill); + +File.WriteAllBytes("C:/temp/EmbParam.cfg",configurationParameters.ToBytes()); + +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(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(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(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 } */ + + +} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/moveloadarmback.cs b/Software/Stubs Collection/stubs/moveloadarmback.cs new file mode 100644 index 000000000..b7f5e0fa6 --- /dev/null +++ b/Software/Stubs Collection/stubs/moveloadarmback.cs @@ -0,0 +1,29 @@ +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.Stubs; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ +// Request ---- +// UInt32 : MotorID +// Boolean : Direction +// UInt32 : Position + +// Response ---- +// UInt32 : MotorID +// UInt32 : Position +// UInt32 : StatusReg +// Boolean : Direction +// UInt32 : MotStatus +// Boolean : STEPLOSSA +// Boolean : STEPLOSSB +var response = stubManager.Run("StubMotorMovRequest" ,5, true, 15); +} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/newWHS/fan.cs b/Software/Stubs Collection/stubs/newWHS/fan.cs deleted file mode 100644 index 7e68d62ef..000000000 --- a/Software/Stubs Collection/stubs/newWHS/fan.cs +++ /dev/null @@ -1,34 +0,0 @@ -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.Stubs; -using Tango.Stubs; - -public void OnExecute(StubManager stubManager) -{ - - - // Request ---- -// Int32 : Amount -// Int32 : Delay - -// Response ---- -// Double : Progress -//stubManager.Run("ProgressRequest" ,0xFAC2, 0x20); //WHS FAN 1 low seed -//stubManager.Run("ProgressRequest" ,0xFAC3, 0x20); //WHS FAN 2 low seed -//stubManager.Run("ProgressRequest" ,0xFAC4, 0x20); //WHS FAN 3 low seed -//stubManager.Run("ProgressRequest" ,0xFAC5, 0x20); //WHS FAN 4 low seed -//stubManager.Run("ProgressRequest" ,0xFAC6, 0x20); //WHS FAN 5 low seed -//stubManager.Run("ProgressRequest" ,0xFAC2, 0x20); //WHS FAN 6 low seed -var response = stubManager.Run("ProgressRequest" ,0xFAC3, 0x20); - - - - -} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/newWHS/test_fan.cs b/Software/Stubs Collection/stubs/newWHS/test_fan.cs deleted file mode 100644 index acd5e3c50..000000000 --- a/Software/Stubs Collection/stubs/newWHS/test_fan.cs +++ /dev/null @@ -1,90 +0,0 @@ -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.Stubs; -using Tango.Stubs; - -public void OnExecute(StubManager stubManager) -{ -// Request ---- -// Int32 : Amount -// Int32 : Delay - -// Response ---- -// Double : Progress -stubManager.Run("ProgressRequest" ,0x3E9, 0x0001); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x0101); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x0201); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x0301); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x0401); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x0501); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x0601); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x0701); -Thread.Sleep(1000); //Sleep for 10 milli. - -stubManager.Run("ProgressRequest" ,0x3E9, 0x4001); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x4101); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x4201); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x4301); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x4401); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x4501); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x4601); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x4701); -Thread.Sleep(1000); //Sleep for 10 milli. - -stubManager.Run("ProgressRequest" ,0x3E9, 0x0001); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x0101); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x0201); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x0301); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x0401); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x0501); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x0601); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x0701); -Thread.Sleep(1000); //Sleep for 10 milli. - -stubManager.Run("ProgressRequest" ,0x3E9, 0x4001); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x4101); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x4201); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x4301); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x4401); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x4501); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x4601); -Thread.Sleep(1000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x4701); -Thread.Sleep(1000); //Sleep for 10 milli. - -var response = stubManager.Run("ProgressRequest" ,0x3E8, 0); -} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/newWHS/test_valv1.cs b/Software/Stubs Collection/stubs/newWHS/test_valv1.cs deleted file mode 100644 index c81bdaebd..000000000 --- a/Software/Stubs Collection/stubs/newWHS/test_valv1.cs +++ /dev/null @@ -1,47 +0,0 @@ -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.Stubs; -using Tango.Stubs; - -public void OnExecute(StubManager stubManager) -{ -// Request ---- -// Int32 : Amount -// Int32 : Delay - -// Response ---- -// Double : Progress - -//valv1 -var response1 = stubManager.Run("ProgressRequest" ,0x3E9, 0x8501); //valv1_en=1 -Thread.Sleep(5000); //Sleep for 10 milli. -var response2 = stubManager.Run("ProgressRequest" ,0x3E9, 0x8401);// valv1_dir=1 -Thread.Sleep(5000); //Sleep for 10 milli. -var response3 = stubManager.Run("ProgressRequest" ,0x3E9, 0x8400);// valv1_dir=0 -Thread.Sleep(5000); //Sleep for 10 milli. -var response4 = stubManager.Run("ProgressRequest" ,0x3E9, 0x8500);// valv1_disable - - -// valve 2 -var response5 = stubManager.Run("ProgressRequest" ,0x3E9, 0x8701); //valv2_en=1 -Thread.Sleep(5000); //Sleep for 10 milli. -var response6 = stubManager.Run("ProgressRequest" ,0x3E9, 0x8601);// valv2_dir=1 -Thread.Sleep(5000); //Sleep for 10 milli. -var response7 = stubManager.Run("ProgressRequest" ,0x3E9, 0x8600);// valv2_dir=0 -Thread.Sleep(5000); //Sleep for 10 milli. -var response8 = stubManager.Run("ProgressRequest" ,0x3E9, 0x8700); //valv2_disable - -//test pump -Thread.Sleep(5000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x0701);// pump on -Thread.Sleep(5000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x0700); // pump off - -} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/newWHS/test_valv1_disable.cs b/Software/Stubs Collection/stubs/newWHS/test_valv1_disable.cs deleted file mode 100644 index 086063855..000000000 --- a/Software/Stubs Collection/stubs/newWHS/test_valv1_disable.cs +++ /dev/null @@ -1,40 +0,0 @@ -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.Stubs; -using Tango.Stubs; - -public void OnExecute(StubManager stubManager) -{ -// Request ---- -// Int32 : Amount -// Int32 : Delay - -// Response ---- -// Double : Progress -//stubManager.Run("ProgressRequest" ,0x3E9, 0x8500); //valv1_en=0 -//Thread.Sleep(5000); //Sleep for 10 milli. -//stubManager.Run("ProgressRequest" ,0x3E9, 0x8501); //valv1_en=0 -//Thread.Sleep(5000); //Sleep for 10 milli. - - - - int a = 0; - - while (a < 100) - { - a = a + 1; -stubManager.Run("ProgressRequest" ,0x3E9, 0x8500); //valv1_en=0 -Thread.Sleep(5000); //Sleep for 10 milli. -stubManager.Run("ProgressRequest" ,0x3E9, 0x8501); //valv1_en=0 -Thread.Sleep(5000); //Sleep for 10 milli. -//stubManager.WriteLine(a); - } - -} \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/technician view files/new head.tpf b/Software/Stubs Collection/stubs/technician view files/new head.tpf index 1dfde4520..c2ae54a7d 100644 --- a/Software/Stubs Collection/stubs/technician view files/new head.tpf +++ b/Software/Stubs Collection/stubs/technician view files/new head.tpf @@ -41,7 +41,7 @@ DryerAirHeater 0 - -137.64 + 8.5 false false true @@ -60,7 +60,7 @@ DryerMainHeater 0 - 8.5 + -2.05 false false true @@ -79,7 +79,7 @@ DryerSecondaryHeater 0 - 233.14999999999998 + 8.5 false false true @@ -98,7 +98,7 @@ HeaterZone3 0 - 283.75 + 8.5 false false true @@ -116,13 +116,13 @@ -1 HeaterZone2 - 100 - 99.94 + 30 + 225.29 false - false - true + true + false - 100 + 30 32a91e5f-27c8-490d-b187-8e39b6626a13 @@ -135,13 +135,13 @@ -1 HeaterZone1 - 100 - 99.97 + 0 + 8.5 false false true - 100 + 0 c844235a-8a29-4c2e-a964-e8f546d2ced7 @@ -154,13 +154,13 @@ -1 MixerHeater - 0 - 283.75 + 30 + 216.54999999999998 false - false - true + true + false - 0 + 30 45b121b5-cf7c-41f7-8089-6d4d6b1ed2c8 @@ -173,13 +173,13 @@ -1 HeaterZone4 - 100 - 99.97 + 30 + 170.98999999999998 false - false - true + true + false - 100 + 30 e6b3eb18-482b-450e-b8a8-d2ac6bba4fd4 @@ -192,13 +192,13 @@ -1 HeaterZone5 - 100 - 99.97 + 0 + 8.5 false false true - 100 + 0 efff2e67-e3a3-4667-9208-4704707d7cda @@ -211,13 +211,13 @@ -1 HeaterZone6 - 99 - 98.97 + 0 + 279.81 false false true - 99 + 0 f9936dba-cef8-41e3-a715-eb629dca1870 @@ -810,6 +810,44 @@ 3EEE3B24-55DD-49F2-9339-F83F883BB908 -1 + + e502555c-95b0-4688-b5e3-8becb30fc62c + 1458.875 + 91.7821782178217 + 200 + 187.45575221238937 + 0 + F8C1BA7F-F6DF-414D-BAF5-D4CB292F91F6 + -1 + + DryerAirHeater + 0 + 0 + false + false + false + + 0 + + + 0f7a35fc-e363-45b2-948d-ba66f91e4f0d + 1457.8333333333333 + 344.58910891089096 + 200 + 187.45575221238937 + 0 + F39B952A-6194-4055-A5CB-A3421BFE0F9B + -1 + + DryerAirHeater + 0 + 0 + false + false + false + + 0 + @@ -874,9 +912,9 @@ -14774017 1 1460 + true 0 16384 - true 984b4126-3dda-4624-a79f-0646eb0e1358 @@ -889,9 +927,9 @@ -14774017 1 1516 + true 0 16384 - true 8ebc3ab7-a02d-4b12-93b3-2563443831d7 @@ -904,9 +942,9 @@ -14774017 1 1398 + true 0 16384 - true acafb268-5e97-4277-8dc8-173250a9e3f8 @@ -919,9 +957,9 @@ -14774017 1 1273 + true 0 100 - true 3ccb1485-b0e9-4d36-a931-a1b3865edeaa @@ -945,9 +983,9 @@ -14774017 1 514 + true 0 100000 - true 75b99507-4eba-4b11-b52e-26732d4c5479 @@ -960,9 +998,9 @@ -14774017 4 1398 + true 0 100 - true a30e48de-be76-4230-92d0-d27d6f37b940 @@ -975,9 +1013,9 @@ -14774017 4 1398 + true 0 100 - true 5ac4b368-093a-4192-98d4-e9d24f229b13 @@ -990,9 +1028,9 @@ -14774017 4 1398 + true 0 100 - true 9c34dc69-cfaa-48b4-9d02-8f0d9bba79dd @@ -1446,9 +1484,9 @@ -14774017 3 1426 + true 0 100 - true cc99a514-1498-4b93-a4eb-4e0a2a2e9de6 @@ -1461,9 +1499,9 @@ -14774017 1 1282 + true 0 100 - true cdddd48e-422d-48f4-8397-5032c3705fdb @@ -1671,9 +1709,9 @@ -14774017 2 2962 + true 0 300 - true 81b78212-14d8-4a66-bf3a-eeea9900e0d6 @@ -1715,9 +1753,9 @@ -14774017 2 2962 + true 0 300 - true 064bd571-4250-4ea3-8ed5-96f1ddc8fe6b @@ -1750,8 +1788,8 @@ 85b25b0b-cd3d-4a8a-88f5-f832623d7ec2 - 15 - 708.27433628318636 + 8.75 + 704.87334618417651 350 152.70353982300856 0 @@ -1759,28 +1797,28 @@ -14774017 2 2962 + true 0 300 - true 85e9ecc2-3bce-4055-89a9-1712752898a9 - 384 - 708.34070796460185 + 375.66666666666663 + 902.19714360816624 128 91.469026548670342 0 - 96A8AF31-B489-4FA2-BF99-C66D7DEC94C8 + 500698E0-5623-4A47-9537-FCAAF5D0B725 -1 8d9b0d4b-ac5e-4c17-b7eb-4d59825064c7 - 522 - 719.04867256637192 + 523.04166666666652 + 895.90015771488663 103 121.59292035398221 0 - 2D578A37-D808-40D0-ACE4-4A868EDD6BDC + F39B952A-6194-4055-A5CB-A3421BFE0F9B -1 HeaterZone12 @@ -1803,9 +1841,9 @@ -14774017 2 2962 + true 0 300 - true 5ed86083-bdd6-4648-b7ca-f17fa97f034a @@ -1847,9 +1885,9 @@ -14774017 2 2962 + true 0 300 - true e8130372-e0ee-4c1c-a43d-4ab15ff57bd8 @@ -1891,9 +1929,9 @@ -14774017 2 2962 + true 0 300 - true e7935033-56c6-42a4-a2b3-f5eedb0a11e7 @@ -1935,9 +1973,9 @@ -14774017 2 2962 + true 0 300 - true b3826c8e-1d82-4f4f-ad9f-d88f257dffb2 @@ -1961,7 +1999,7 @@ HeaterZone3 0 - 283.75 + 8.5 false false true @@ -1979,9 +2017,9 @@ -14774017 2 2962 + true 0 100 - true 233f0076-7595-4ecb-8496-41eeb7b457ea @@ -2004,13 +2042,13 @@ -1 HeaterZone1 - 100 - 99.97 + 0 + 8.5 false false true - 100 + 0 7b7d9bea-29df-4f94-8ab6-2a6d7105bccf @@ -2023,9 +2061,9 @@ -14774017 2 2962 + true 0 300 - true 72d7192b-dd27-4064-9f5f-90062388a81c @@ -2048,13 +2086,13 @@ -1 HeaterZone2 - 100 - 99.94 + 30 + 225.29 false - false - true + true + false - 100 + 30 64fba32f-3c03-42b3-b1ed-e2bdbe454bd6 @@ -2067,9 +2105,9 @@ -14774017 2 2962 + true 0 300 - true 5f451443-fab2-4bf6-8f21-5e038ca2c726 @@ -2092,13 +2130,13 @@ -1 HeaterZone6 - 99 - 98.97 + 0 + 279.81 false false true - 100 + 0 4f3b4ecd-759a-4ba5-80f3-74cc485d7085 @@ -2111,9 +2149,9 @@ -14774017 2 2962 + true 0 300 - true 665593d6-e689-459e-94f9-2cdcce6150ac @@ -2136,13 +2174,13 @@ -1 HeaterZone5 - 100 - 99.97 + 0 + 8.5 false false true - 100 + 0 60dff2b2-7ddc-47a9-90b1-3f45968c1790 @@ -2155,9 +2193,9 @@ -14774017 2 2962 + true 0 300 - true b53a74f3-8e91-40ce-b980-c5b237baeee9 @@ -2180,13 +2218,101 @@ -1 HeaterZone4 - 100 - 99.97 + 30 + 170.98999999999998 + false + true + false + + 30 + + + f786b4da-3291-4ccb-a280-196fd8697ac1 + 5.7499999999999858 + 866.06435643564362 + 350 + 152.70353982300856 + 0 + 0E4783A1-B8DE-451E-B357-322C39E448DD + -14774017 + 2 + 2962 + true + 0 + 300 + + + 584c7f29-49cc-4845-a7ab-09239bd3a986 + 377.875 + 735.75944098834611 + 128 + 91.469026548670342 + 0 + 96A8AF31-B489-4FA2-BF99-C66D7DEC94C8 + -1 + + + 5c6da8d4-bd2e-44cc-8d99-a6b8bca7df3f + 524.20833333333337 + 721.52681153071046 + 103 + 121.59292035398221 + 0 + 2D578A37-D808-40D0-ACE4-4A868EDD6BDC + -1 + + DryerAirHeater + 0 + 0 false false - true + false - 100 + 0 + + + 05eab3d7-3af6-4d3f-b3b3-468eeb77a503 + 644.29166666666674 + 874.00000000000011 + 350 + 152.70353982300856 + 0 + 0E4783A1-B8DE-451E-B357-322C39E448CC + -14774017 + 2 + 2962 + true + 0 + 300 + + + c1f48bf1-9cb3-475a-b152-e8b9a211b694 + 1010.1666666666667 + 895.60597564181194 + 128 + 91.469026548670342 + 0 + 7FCA67CB-785B-49F7-B9F2-191E3ACC6CB7 + -1 + + + c5fbeda2-230d-40e4-9d52-5b3236e0c561 + 1161.708333333333 + 885.907999649522 + 103 + 121.59292035398221 + 0 + F8C1BA7F-F6DF-414D-BAF5-D4CB292F91F6 + -1 + + DryerAirHeater + 0 + 0 + false + false + false + + 0 @@ -2319,9 +2445,9 @@ -14774017 3 3600 + true 0 100 - true aae29286-81b3-476a-9f58-c0fd246cae96 @@ -2334,9 +2460,9 @@ -14774017 3 3600 + true 0 100 - true 7d94c7c4-1288-4f9d-b0e6-a06794829642 @@ -2428,9 +2554,9 @@ -14774017 3 3600 + true 0 100 - true 1c254a92-c075-453f-9667-cdcc91cf8e6a @@ -2465,9 +2591,9 @@ -14774017 3 3600 + true 0 100 - true 0bef6e9d-6da0-4f06-9e1a-c00142bde4c1 @@ -2502,9 +2628,9 @@ -14774017 3 3600 + true 0 100 - true 39f6a02c-c4d9-47d0-b92d-bdea0ed5d3ce @@ -2658,9 +2784,9 @@ -14774017 1 1942 + true 0 100 - true 604e031b-89c3-4c9d-90ef-7b861a77e5e0 @@ -2685,5 +2811,5 @@ - 4 + 0 \ No newline at end of file diff --git a/Software/Stubs Collection/stubs/temp/EmbParam.cfg b/Software/Stubs Collection/stubs/temp/EmbParam.cfg new file mode 100644 index 000000000..00a9e0549 Binary files /dev/null and b/Software/Stubs Collection/stubs/temp/EmbParam.cfg differ diff --git a/Software/Stubs Collection/stubs/temp/embeddedparametersbuild.cs b/Software/Stubs Collection/stubs/temp/embeddedparametersbuild.cs new file mode 100644 index 000000000..c49e44582 --- /dev/null +++ b/Software/Stubs Collection/stubs/temp/embeddedparametersbuild.cs @@ -0,0 +1,178 @@ +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.Stubs; +using Tango.Stubs; +using Google.Protobuf; +using Tango.PMR.EmbeddedParameters; +using System.IO; +using Tango.PMR.IO; + + +public void OnExecute(StubManager stubManager) +{ + + +ConfigurationParameters configurationParameters = new ConfigurationParameters(); + +configurationParameters.BreakSensorLimit = 10; + +//how many samples to collect in diagnostics before sending +configurationParameters.DiagnosticCollectionLimit = 1; + +//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 = 49; +configurationParameters.OpenValveTimeout = 49; + +//backlash after filling - target pressure, timoeout, time staps (speed will be added in general parameters) +configurationParameters.InitialDispenserPressure = 0.25; +configurationParameters.InitialDispenserTimeout = 60000; //20 seconds +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.0; +configurationParameters.DispenserBuildPressureTimeout = 180000; +configurationParameters.DispenserBuildPressureLag = 50; + +//temperature band 1000 = 100% - thresholds for job start around target temprature - AC +configurationParameters.ACHeatersLowerOperationLimit = 995; +configurationParameters.ACHeatersUpperOperationLimit = 1005; + +//temperature band 1000 = 100% - thresholds for job start around target temprature - DC +configurationParameters.DCHeatersLowerOperationLimit = 978; +configurationParameters.DCHeatersUpperOperationLimit = 1005; + +// mid tank reading offset to add to the readout (OBSOLETE!) +configurationParameters.MidTankPressureCorrection = 0.0; + +//waste factor for intersegment pressure building +configurationParameters.DispenserPresegmentWFCF = 40; +//how much time to start the WFCF process (pressure buildup) before segment start +configurationParameters.IDSPreSegmentWFCFTimeBeforeSegment = 30000; + +//flag: start heaters according to saved process parameters upon init? +configurationParameters.StartHeatingOnInitSequence = true; + +// current test for the heaters - alarm thresholds +configurationParameters.CurrentAlarmLowLimit = 0.78; +configurationParameters.CurrentAlarmHighLimit = 1.07; + +//currently not in use +configurationParameters.IDSSegmentRefillTimeout = 5000; +configurationParameters.IDSPreSegmentBuildupTime = 5000; +// +configurationParameters.IDSCleaningSpeed = 800; +configurationParameters.IDSCleaningStopBeforeSegmentTime = 10000; //end of presegemnt +configurationParameters.IDSCleaningStartSprayPreSegmentTime =2000; //beginning of presegment + +configurationParameters.IDSLeftCleaningMotorSpeed = 49; +configurationParameters.IDSRightCleaningMotorSpeed = 49; + +configurationParameters.SwitchToIdleTimeinSeconds = 3600; +configurationParameters.IdleDrierTemperature = 80; +configurationParameters.IdleHeadTemperature = 80; +configurationParameters.IdleMixerTemperature = 0; +configurationParameters.PowerOffTemperatureLimit = 50; + +//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; +configurationParameters.GeneralParameters.Add(checkCurrentAlarms); +//check the tamper alarms + +/*3*/ +Double checkTamperAlarms = new Double(); +checkTamperAlarms = 0.0; +configurationParameters.GeneralParameters.Add(checkTamperAlarms); + +/*4*/ +Double checkMotorAlarms = new Double(); +checkMotorAlarms = 1.0; +configurationParameters.GeneralParameters.Add(checkMotorAlarms); + +/*5*/ +Double WinderBackToBaseTime = new Double(); +WinderBackToBaseTime = 800.0; +configurationParameters.GeneralParameters.Add(WinderBackToBaseTime); + +/*6*/ +Double DispenserInitialPressureSpeed = new Double(); +DispenserInitialPressureSpeed = 1150.0; +configurationParameters.GeneralParameters.Add(DispenserInitialPressureSpeed); + +/*7*/ +Double SetDiagnosticMode = new Double(); +SetDiagnosticMode = 1.0; +configurationParameters.GeneralParameters.Add(SetDiagnosticMode); + +/*8*/ +Double SetAutoFill = new Double(); +SetAutoFill = 3.0; +configurationParameters.GeneralParameters.Add(SetAutoFill); + +File.WriteAllBytes("C:/temp/EmbParam.cfg",configurationParameters.ToBytes()); + +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(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(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(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 } */ + + +} \ No newline at end of file -- cgit v1.3.1