diff options
10 files changed, 154 insertions, 21 deletions
diff --git a/Software/Embedded_SW/Embedded/Common/SW_Info/SW_Info.c b/Software/Embedded_SW/Embedded/Common/SW_Info/SW_Info.c index d0193f970..a6adc3b3e 100644 --- a/Software/Embedded_SW/Embedded/Common/SW_Info/SW_Info.c +++ b/Software/Embedded_SW/Embedded/Common/SW_Info/SW_Info.c @@ -20,7 +20,7 @@ typedef struct } TangoVersion_t; -TangoVersion_t _gTangoVersion = {1,5,2,1}; +TangoVersion_t _gTangoVersion = {1,5,2,2}; #define BUILD_DATE __DATE__ char Dat[50] = BUILD_DATE; diff --git a/Software/Embedded_SW/Embedded/Communication/Connection.c b/Software/Embedded_SW/Embedded/Communication/Connection.c index af60541aa..0eac579ae 100644 --- a/Software/Embedded_SW/Embedded/Communication/Connection.c +++ b/Software/Embedded_SW/Embedded/Communication/Connection.c @@ -53,6 +53,7 @@ void StopRecurringReports(void) PowerUpStopReporting(); MachineUpdateStopReporting(); PowerDownStopReporting(); + HomingStopReporting(); KeepAliveActive = false; } @@ -140,6 +141,7 @@ void DisconnectionRequest(MessageContainer* requestContainer) DiagnosticsStop(); JobStopReporting(); AlarmHandlingStop(); + HomingStopReporting(); //UART_ResetBuffers(); //------------------------------------------------------------------------------------------- uint8_t* container_buffer = my_malloc(message_container__get_packed_size(&responseContainer)); diff --git a/Software/Embedded_SW/Embedded/DataDef.h b/Software/Embedded_SW/Embedded/DataDef.h index 0d93b3dbe..98fe87f32 100644 --- a/Software/Embedded_SW/Embedded/DataDef.h +++ b/Software/Embedded_SW/Embedded/DataDef.h @@ -635,7 +635,6 @@ Supports diagnostic <id> (--diag_suppress, - pds) #define HEAD6_PT100 TEMP_SENSE_AN_ENCLOSURETEMP3 #define MIXER_PT100 TEMP_SENSE_ANALOG_MIXCHIP_TEMP -//#define LUBRICANT_DISPENSER 7 #ifdef LIGHT_COLORS #define LUBRICANT_DISPENSER 9 #define CLEANER_DISPENSER 9 diff --git a/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/IO_Extender_Ports_TCA9555/WHS_IO.c b/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/IO_Extender_Ports_TCA9555/WHS_IO.c index 3e36d3bba..ea45c89fe 100644 --- a/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/IO_Extender_Ports_TCA9555/WHS_IO.c +++ b/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/IO_Extender_Ports_TCA9555/WHS_IO.c @@ -689,7 +689,7 @@ bool WHS_Control_blub(bool value) } else { - #warning Add warning message + LOG_ERROR (WHS_HW_Ver, "wrong whs hw version"); status = ERROR; } diff --git a/Software/Embedded_SW/Embedded/Modules/Diagnostics/Diagnostics.c b/Software/Embedded_SW/Embedded/Modules/Diagnostics/Diagnostics.c index 4122955b3..11a48b587 100644 --- a/Software/Embedded_SW/Embedded/Modules/Diagnostics/Diagnostics.c +++ b/Software/Embedded_SW/Embedded/Modules/Diagnostics/Diagnostics.c @@ -545,7 +545,7 @@ void CopyTemperaturesToMonitor(void) headblowervoltage2 = HeadBlowersGetRPM(HEAD_FAN_LEFT); DiagnosticsMonitor.headblowervoltage1 = &headblowervoltage1; DiagnosticsMonitor.headblowervoltage2 = &headblowervoltage2; -#warning machine to machine test +//#warning machine to machine test DiagnosticsMonitor.headzone4temperature = HeaterTemperature[HEATER_TYPE__HeaterZone4]; DiagnosticsMonitor.headzone9temperature = diff --git a/Software/Embedded_SW/Embedded/Modules/Diagnostics/Diagnostics.h b/Software/Embedded_SW/Embedded/Modules/Diagnostics/Diagnostics.h index 7ec1962f3..e0afad820 100644 --- a/Software/Embedded_SW/Embedded/Modules/Diagnostics/Diagnostics.h +++ b/Software/Embedded_SW/Embedded/Modules/Diagnostics/Diagnostics.h @@ -54,6 +54,7 @@ uint32_t SetBlowerStateRequestFunc(MessageContainer* requestContainer); void DiaglosticChangeBlowerData(); +void HomingStopReporting(void); diff --git a/Software/Embedded_SW/Embedded/Modules/Diagnostics/DiagnosticsHoming.c b/Software/Embedded_SW/Embedded/Modules/Diagnostics/DiagnosticsHoming.c index 9a14cd1b8..086525bc1 100644 --- a/Software/Embedded_SW/Embedded/Modules/Diagnostics/DiagnosticsHoming.c +++ b/Software/Embedded_SW/Embedded/Modules/Diagnostics/DiagnosticsHoming.c @@ -46,6 +46,16 @@ uint32_t Diagnostics_Dryer_UnLoading(void); uint32_t Diagnostics_Dryer_Loading(void); int kval_upper_value; +void HomingStopReporting(void) +{ + int i; + for (i = 0; i< NUM_OF_MOTORS;i++) + { + HomingToken[i][0] == 0; + } + LOG_ERROR(0,"HomingStopReporting"); +} + /******************************************************************************** * Motor Homing ********************************************************************************/ diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c index 4fd273977..a28d00a91 100644 --- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c +++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c @@ -250,6 +250,7 @@ JobDescriptionFileBrushStop *FirstBrushStop = NULL; DispenserUsedInJob[Dispenser_i] = false; } n_segments = 0; +#ifndef LIGHT_COLORS if (MotorsCfg[DispenserIdToMotorId[CLEANER_DISPENSER]].hardwaremotortype == DispenserIdToMotorId[CLEANER_DISPENSER]) { DispenserUsedInJob[CLEANER_DISPENSER] = true; @@ -260,7 +261,7 @@ JobDescriptionFileBrushStop *FirstBrushStop = NULL; DispenserUsedInJob[CLEANER_DISPENSER] = false; EnableCleaning = false; } - +#endif if (JobTicket->enablelubrication == true) { //DispenserUsedInJob[LUBRICANT_DISPENSER] = true; @@ -521,7 +522,20 @@ uint32_t InactiveDispenserHome(uint32_t DispenserId, uint32_t ReadValue) char IdMessage[100]; int SegmentPrepareWFCFCounter = 0; bool pressureReady = false,endOfPrepareWCF = false; - +int BuildIdsJobPrintString(char *dest,char *desc, int info) +{ + int len = 0,i; + int DispenserSpeed[MAX_SYSTEM_DISPENSERS] = {0,0,0,0,0,0,0,0}; + if (dest == NULL) + return 0; + for (i = 0; i<MAX_SYSTEM_DISPENSERS; i++) + { + if (DispenserUsedInJob[i]) + DispenserSpeed[i] = CurrentDispenserSpeed[i]; + } + len = usnprintf(dest, 80,"%s %d K %d,C %d,M %d,Y %d,TI %d",desc,(int)info,DispenserSpeed[0],DispenserSpeed[1],DispenserSpeed[2],DispenserSpeed[3],DispenserSpeed[4]); + return len; +} bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,double pressure) { TimerMotors_t HW_Motor_Id = DispenserIdToMotorId[DispenserId]; @@ -616,6 +630,7 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl else DispenserReady[i] = true; } +#ifndef LIGHT_COLORS pressure = GetDispenserPressure(CLEANER_DISPENSER); if (pressure > 0.02) { @@ -625,7 +640,7 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl ReportWithPackageFilter(IDSFilter,"IDS stop cleaner",__FILE__,CLEANER_DISPENSER,(int)(pressure*100),RpWarning,(int)CurrentDispenserSpeed[CLEANER_DISPENSER] ,0); CurrentDispenserSpeed[CLEANER_DISPENSER] = 0; } - +#endif if ((NumofReadyDispensers)&&(DispenserBuildTimeCounter%1000 == 0)) { ReportWithPackageFilter(IDSFilter,"IDS_Prepare_Callback",__FILE__,DispenserBuildTimeCounter,NumofReadyDispensers,RpWarning,(int)NumOfActiveDispensers,0); @@ -737,9 +752,10 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl } } }//for - usnprintf(IdMessage, 80,"WFCF %d K %d,C %d,M %d,Y %d,TI %d",WFCF,CurrentDispenserSpeed[0], - CurrentDispenserSpeed[1],CurrentDispenserSpeed[2],CurrentDispenserSpeed[3],CurrentDispenserSpeed[4]); - ReportWithPackageFilter(IDSFilter,IdMessage, __FILE__, __LINE__, DispenserBuildTimeCounter, RpWarning, WFCF, 0); + //usnprintf(IdMessage, 80,"WFCF %d K %d,C %d,M %d,Y %d,TI %d",WFCF,CurrentDispenserSpeed[0], + // CurrentDispenserSpeed[1],CurrentDispenserSpeed[2],CurrentDispenserSpeed[3],CurrentDispenserSpeed[4]); + if (BuildIdsJobPrintString(IdMessage,"WFCF ",WFCF)) + ReportWithPackageFilter(IDSFilter,IdMessage, __FILE__, __LINE__, DispenserBuildTimeCounter, RpWarning, WFCF, 0); }//if n_dis } @@ -761,6 +777,7 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl //start new stage if (endOfPrepareWCF == true) { +#ifndef LIGHT_COLORS if (CurrentDispenserSpeed[CLEANER_DISPENSER]) { HW_Motor_Id = DispenserIdToMotorId[CLEANER_DISPENSER]; @@ -768,6 +785,7 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl CurrentDispenserSpeed[CLEANER_DISPENSER] = 0; ReportWithPackageFilter(IDSFilter,"IDS stop cleaner",__FILE__,CLEANER_DISPENSER,(int)(pressure*100),RpWarning,(int)CurrentDispenserSpeed[CLEANER_DISPENSER] ,0); } +#endif SafeRemoveControlCallback(DispenserPrepareControlId, IDS_Prepare_Callback ); DispenserPrepareControlId = 0xFF; ReportWithPackageFilter(IDSFilter,"IDS_Prepare_Callback SafeRemoveControlCallback",__FILE__,DispenserBuildTimeCounter,NumofReadyDispensers,RpWarning,(int)NumOfActiveDispensers,0); @@ -885,6 +903,7 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl } else { + DispenserTotalPrepareSteps[i] = 0; if (AutoHoming_Config >= AutoHoming_JobEnd_PowerOn_off) { if ((HomingActive[i] == false)&&(PrimingActive[i] == false)) @@ -941,11 +960,12 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl }*/ } } +#ifndef LIGHT_COLORS TimerMotors_t HW_Motor_Id = DispenserIdToMotorId[CLEANER_DISPENSER]; MotorSetSpeed((TimerMotors_t)HW_Motor_Id,INITIAL_CLEANER_SPEED ); //set the dispenser to the CurrentDispenserSpeed[CLEANER_DISPENSER] = INITIAL_CLEANER_SPEED; ReportWithPackageFilter(IDSFilter,"IDS start cleaner",__FILE__,CLEANER_DISPENSER,(int)(GetDispenserPressure(CLEANER_DISPENSER)*100),RpWarning,(int)CurrentDispenserSpeed[CLEANER_DISPENSER] ,0); - +#endif } DispenserBuildTimeCounter = 0; @@ -1088,9 +1108,10 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl } } }//for - usnprintf(IdMessage, 80,"Presegment Prepare K %d,C %d,M %d,Y %d,TI %d",CurrentDispenserSpeed[0], - CurrentDispenserSpeed[1],CurrentDispenserSpeed[2],CurrentDispenserSpeed[3],CurrentDispenserSpeed[4]); - ReportWithPackageFilter(IDSFilter,IdMessage, __FILE__, __LINE__, Dispenser_i, RpWarning, segmentfirst_speed, 0); + //usnprintf(IdMessage, 80,"Presegment Prepare K %d,C %d,M %d,Y %d,TI %d",CurrentDispenserSpeed[0], + // CurrentDispenserSpeed[1],CurrentDispenserSpeed[2],CurrentDispenserSpeed[3],CurrentDispenserSpeed[4]); + if (BuildIdsJobPrintString(IdMessage,"Presegment Prepare ",0)) + ReportWithPackageFilter(IDSFilter,IdMessage, __FILE__, __LINE__, Dispenser_i, RpWarning, segmentfirst_speed, 0); DispenserBuildTimeCounter = 0; //DispenserPrepareControlId = AddControlCallback( IDS_PreSegmentPrepare_Callback, IDS_PRESEGMENT_TIME_STEP,TemplateDataReadCBFunction ,0, 0, 0 ); @@ -1176,8 +1197,10 @@ uint32_t IDS_Cleaning_Stop_Cleaning_Solution (callback_fptr callback); ReportWithPackageFilter(IDSFilter,"End of Pre-segment Handling",__FILE__,__LINE__,InterSegmentStepsCount,RpWarning,(int)lInterSegmentLength,0); //PreSegmentReady(Module_IDS,ModuleDone); SafeRemoveControlCallback(DispenserPreSegmentControlId,IDSPreSegmentStateCallbackRunner); +#ifndef LIGHT_COLORS if (CurrentDispenserSpeed[CLEANER_DISPENSER]>0) IDS_Cleaning_Stop_Cleaning_Solution (NULL); +#endif setRapidPressureRead(false); //if (JobEndSequence == true) // DistanceToSpoolReady(Module_IDS,ModuleDone); @@ -1290,9 +1313,10 @@ uint32_t IDS_Cleaning_Stop_Cleaning_Solution (callback_fptr callback); //SendJobProgress(0.0, 0, false, IdsMessage);*/ } }//for - usnprintf(IdMessage, 80,"Presegment WFCF %d K %d,C %d,M %d,Y %d,TI %d",WFCF,CurrentDispenserSpeed[0], - CurrentDispenserSpeed[1],CurrentDispenserSpeed[2],CurrentDispenserSpeed[3],CurrentDispenserSpeed[4]); - ReportWithPackageFilter(IDSFilter,IdMessage, __FILE__, __LINE__, FileBrushStop->index, RpWarning, lInterSegmentLength, 0); + //usnprintf(IdMessage, 80,"Presegment WFCF %d K %d,C %d,M %d,Y %d,TI %d",WFCF,CurrentDispenserSpeed[0], + // CurrentDispenserSpeed[1],CurrentDispenserSpeed[2],CurrentDispenserSpeed[3],CurrentDispenserSpeed[4]); + if (BuildIdsJobPrintString(IdMessage,"Presegment WFCF ",WFCF)) + ReportWithPackageFilter(IDSFilter,IdMessage, __FILE__, __LINE__, FileBrushStop->index, RpWarning, lInterSegmentLength, 0); } } //startDispensersAtSegmentSpeed*1=WFCFClenerSpray(speed); @@ -1617,9 +1641,10 @@ void IDS_StartBrushStop(int n_dispensers, JobDispenser** Dispensers) } } //for } - usnprintf(IdMessage, 80,"IDS_StartBrushStop %d/%d K %d,C %d,M %d,Y %d,TI %d",FileBrushStop->index,SegmentNumOfBrushStops,CurrentDispenserSpeed[0], - CurrentDispenserSpeed[1],CurrentDispenserSpeed[2],CurrentDispenserSpeed[3],CurrentDispenserSpeed[4]); - ReportWithPackageFilter(IDSFilter,IdMessage, __FILE__, SegmentNumOfBrushStops, FileBrushStop->index, RpWarning,(int)FileBrushStop->offsetmeters, 0); + //usnprintf(IdMessage, 80,"IDS_StartBrushStop %d/%d K %d,C %d,M %d,Y %d,TI %d",FileBrushStop->index,SegmentNumOfBrushStops,CurrentDispenserSpeed[0], + // CurrentDispenserSpeed[1],CurrentDispenserSpeed[2],CurrentDispenserSpeed[3],CurrentDispenserSpeed[4]); + if (BuildIdsJobPrintString(IdMessage,"IDS_StartBrushStop ",FileBrushStop->index)) + ReportWithPackageFilter(IDSFilter,IdMessage, __FILE__, SegmentNumOfBrushStops, FileBrushStop->index, RpWarning,(int)FileBrushStop->offsetmeters, 0); } uint32_t IDSBrushStopRestartCallback(uint32_t IfIndex, uint32_t readValue) @@ -1718,8 +1743,10 @@ uint32_t IDSSegmentState(void *SegmentDetails, int SegmentId) #else Valve_Set(VALVE_MIXCHIP_WASTECH, Mixer_Head); #endif +#ifndef LIGHT_COLORS if (CurrentDispenserSpeed[CLEANER_DISPENSER]>0) IDS_Cleaning_Stop_Cleaning_Solution(NULL); +#endif SegmentNumOfBrushStops = Segment->n_brushstops; BrushStopTime = Segment->length*1000/(double)SegmentNumOfBrushStops; //brushstop in meters //brushstop in millisecond BrushStopTime = ((BrushStopTime*100)/dyeingspeed);//brushstop in seconds @@ -1936,9 +1963,11 @@ uint32_t IDSSegmentState(void *SegmentDetails, int SegmentId) } } +#ifndef LIGHT_COLORS if (CurrentDispenserSpeed[CLEANER_DISPENSER]>0) IDS_Cleaning_Stop_Cleaning_Solution(NULL); - IDS_StopLubrication(); +#endif + IDS_StopLubrication(); Init_CleaningStageCounter();//set the counter before relocating IDS_Cleaning_stop_cleaner_motor(); HeadCard_Actuators_Relocate(); diff --git a/Software/Stubs Collection/Procedures/Read main card informatiom.txt b/Software/Stubs Collection/Procedures/Read main card informatiom.txt new file mode 100644 index 000000000..1252779df --- /dev/null +++ b/Software/Stubs Collection/Procedures/Read main card informatiom.txt @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.ComponentModel; +using System.Linq; +using System.Text; +using System.Threading; +using System.Threading.Tasks; +using System.Drawing; +using Google.Protobuf; +using Tango.BL.Entities; +using Tango.BL.Enumerations; +using Tango.PMR.Stubs; +using Tango.PMR.Diagnostics; +using Tango.PMR.EmbeddedParameters; +using Tango.FSE.Common.Connection; +using Tango.FSE.Common.Diagnostics; +using Tango.FSE.Procedures; + + +private const string JSON_FILE_PATH = "C:/temp/maineeprom.json"; +private const string CSV_FILE_PATH = "C:/temp/maineeprom.csv"; +public class Program +{ + string[] Main_Card_EEpromAddress = { + "DATA_SIZE", + "DANCER_0", + "DANCER_1", + "DANCER_2", + "DRYER_CENTER", + "DRYER_CYCLES", + "MIDTANK_1_A", + "MIDTANK_1_B", + "MIDTANK_2_A", + "MIDTANK_2_B", + "MIDTANK_3_A", + "MIDTANK_3_B", + "MIDTANK_4_A", + "MIDTANK_4_B", + "MIDTANK_5_A", + "MIDTANK_5_B", + "MIDTANK_6_A", + "MIDTANK_6_B", + "MIDTANK_7_A", + "MIDTANK_7_B", + "MIDTANK_8_A", + "MIDTANK_8_B", + "WINDER_CALIBRATION", + "EMBEDDED_VERSION", + "EEPROM_ALARM_SUPPORT", + "EEPROM_ORIFICE1_ZERO_VALUE", + "EEPROM_ORIFICE3_ZERO_VALUE", + "EEPROM_WASTE_TANK_ZERO_VALUE", + "EEPROM_PULLER_TENSION_POSITION", + "EEPROM_WINDER_TENSION_POSITION", + "EEPROM_INIT_FAILURE_COUNTER", + "DANCER_3", + "DANCER_4", + "EEPROM_PRESSURE_SENSOR_V0_0", + "EEPROM_PRESSURE_SENSOR_V0_1", + "EEPROM_DRIER_LOADING_ARM_ANGLE"}; + public void OnExecute(IProcedureContext context) + { + string FileName; + StubReadEmbeddedVersionRequest stubReadEmbeddedVersionRequest = new StubReadEmbeddedVersionRequest(); + var response2 = context.Send<StubReadEmbeddedVersionResponse>(stubReadEmbeddedVersionRequest); + + if ((response2.VerMajor>=1)&&(response2.VerMinor>=5)&&(response2.VerPatch>=2)&&(response2.VerBuild>=2)) + { + MainCardStoredDataRequest mainCardStoredDataRequest = new MainCardStoredDataRequest(); + var response3 = context.Send<MainCardStoredDataResponse>(mainCardStoredDataRequest); + FileName - "C:/temp/mainEEProm"+context.ConnectedMachine.SerialNumber+".json"; + + context.AppendToFile(FileName, "MainCardStoredData: "+ response3); + } + else + { + context.AppendToFile(CSV_FILE_PATH, "Address,Name,Data"); + for (int i = 1; i < 36; i++) + { + StubMainCardEEpromReadRequest stubMainCardEEpromReadRequest = new StubMainCardEEpromReadRequest(); + stubMainCardEEpromReadRequest.Address = i; + stubMainCardEEpromReadRequest.Data = 0; + + var response = context.Send<StubMainCardEEpromReadResponse>(stubMainCardEEpromReadRequest); + context.AppendToFile(CSV_FILE_PATH, response.Address + "," + Main_Card_EEpromAddress[i] +"," + response.Data); + } + } + context.AddResult(ResultType.Passed, "Successfuly read the Main card information", "Test passed."); + } +}
\ No newline at end of file diff --git a/Software/Stubs Collection/Procedures/Read main card information.pproj b/Software/Stubs Collection/Procedures/Read main card information.pproj new file mode 100644 index 000000000..f658a0e8b --- /dev/null +++ b/Software/Stubs Collection/Procedures/Read main card information.pproj @@ -0,0 +1 @@ +{"$id":"1","Name":"Read main card information","Visibility":"Public","Description":"This procedure reads the stored main card information and put it in a file in C:/temp/maineeprom.* for future use","Scripts":{"$id":"2","$values":[{"$id":"3","Code":"using System;\r\nusing System.Collections.Generic;\r\nusing System.Collections.ObjectModel;\r\nusing System.ComponentModel;\r\nusing System.Linq;\r\nusing System.Text;\r\nusing System.Threading;\r\nusing System.Threading.Tasks;\r\nusing System.Drawing;\r\nusing Google.Protobuf;\r\nusing Tango.BL.Entities;\r\nusing Tango.BL.Enumerations;\r\nusing Tango.PMR.Stubs;\r\nusing Tango.PMR.Diagnostics;\r\nusing Tango.PMR.EmbeddedParameters;\r\nusing Tango.FSE.Common.Connection;\r\nusing Tango.FSE.Common.Diagnostics;\r\nusing Tango.FSE.Procedures;\r\n\r\n\r\npublic class Program\r\n{\r\n\tstring[] Main_Card_EEpromAddress = {\r\n\t\"DATA_SIZE\",\r\n\t\"DANCER_0\",\r\n\t\"DANCER_1\",\r\n\t\"DANCER_2\",\r\n\t\"DRYER_CENTER\",\r\n\t\"DRYER_CYCLES\",\r\n\t\"MIDTANK_1_A\",\r\n\t\"MIDTANK_1_B\",\r\n\t\"MIDTANK_2_A\",\r\n\t\"MIDTANK_2_B\",\r\n\t\"MIDTANK_3_A\",\r\n\t\"MIDTANK_3_B\",\r\n\t\"MIDTANK_4_A\",\r\n\t\"MIDTANK_4_B\",\r\n\t\"MIDTANK_5_A\",\r\n\t\"MIDTANK_5_B\",\r\n\t\"MIDTANK_6_A\",\r\n\t\"MIDTANK_6_B\",\r\n\t\"MIDTANK_7_A\",\r\n\t\"MIDTANK_7_B\",\r\n\t\"MIDTANK_8_A\",\r\n\t\"MIDTANK_8_B\",\r\n\t\"WINDER_CALIBRATION\",\r\n\t\"EMBEDDED_VERSION\",\r\n\t\"EEPROM_ALARM_SUPPORT\",\r\n\t\"EEPROM_ORIFICE1_ZERO_VALUE\",\r\n\t\"EEPROM_ORIFICE3_ZERO_VALUE\",\r\n\t\"EEPROM_WASTE_TANK_ZERO_VALUE\",\r\n\t\"EEPROM_PULLER_TENSION_POSITION\",\r\n\t\"EEPROM_WINDER_TENSION_POSITION\",\r\n\t\"EEPROM_INIT_FAILURE_COUNTER\",\r\n\t\"DANCER_3\",\r\n\t\"DANCER_4\",\r\n\t\"EEPROM_PRESSURE_SENSOR_V0_0\",\r\n\t\"EEPROM_PRESSURE_SENSOR_V0_1\",\r\n\t\"EEPROM_DRIER_LOADING_ARM_ANGLE\"};\r\n public void OnExecute(IProcedureContext context)\r\n {\r\n \tstring FileName;\r\n\r\n\t\tStubReadEmbeddedVersionRequest stubReadEmbeddedVersionRequest = new StubReadEmbeddedVersionRequest();\r\n\t\tvar response2 = context.Send<StubReadEmbeddedVersionResponse>(stubReadEmbeddedVersionRequest);\r\n\t\r\n\t\tif ((response2.VerMajor>=1)&&(response2.VerMinor>=5)&&(response2.VerPatch>=2)&&(response2.VerBuild>=2))\r\n\t\t{\r\n\t\t\tMainCardStoredDataRequest mainCardStoredDataRequest = new MainCardStoredDataRequest();\r\n\t\t\tvar response3 = context.Send<MainCardStoredDataResponse>(mainCardStoredDataRequest);\r\n\t\t\t//context.AppendToFile(JSON_FILE_PATH, \"MainCardStoredData: \"+ response3);\r\n\t\t\tFileName = \"C:/temp/mainEEProm_\"+context.ConnectedMachine.SerialNumber+\".json\";\r\n\r\n\t\t\tcontext.AppendToFile(FileName, \"MainCardStoredData: \"+ response3);\r\n\t\t}\r\n\t\telse\r\n\t\t{\r\n\t\t\tFileName = \"C:/temp/mainEEProm_\"+context.ConnectedMachine.SerialNumber+\".csv\";\r\n\r\n\t\t\tcontext.AppendToFile(FileName, \"Address,Name,Data\");\r\n\t\t for (int i = 1; i < 36; i++)\r\n\t\t {\r\n\t\t\t\tStubMainCardEEpromReadRequest stubMainCardEEpromReadRequest = new StubMainCardEEpromReadRequest();\r\n\t\t\t\tstubMainCardEEpromReadRequest.Address = i;\r\n\t\t\t\tstubMainCardEEpromReadRequest.Data = 0;\r\n\t\t\r\n\t\t\t\tvar response = context.Send<StubMainCardEEpromReadResponse>(stubMainCardEEpromReadRequest);\r\n\t\t\t\tcontext.AppendToFile(FileName, \"\\r\\n\"+response.Address + \",\" + Main_Card_EEpromAddress[i] +\",\" + response.Data);\r\n\t\t\t}\t\t\r\n\t\t} \r\n context.AddResult(ResultType.Passed, \"Successfuly read the Main card information\", \"Test passed.\");\r\n }\r\n}","Name":"Program.csx","IsEntryPoint":true},{"$id":"4","Code":"using System;\r\nusing System.Collections.Generic;\r\nusing System.Collections.ObjectModel;\r\nusing System.ComponentModel;\r\nusing System.Linq;\r\nusing System.Text;\r\nusing System.Threading;\r\nusing System.Threading.Tasks;\r\nusing System.Drawing;\r\nusing Google.Protobuf;\r\nusing Tango.BL.Entities;\r\nusing Tango.BL.Enumerations;\r\nusing Tango.PMR.Stubs;\r\nusing Tango.PMR.Diagnostics;\r\nusing Tango.FSE.Common.Connection;\r\nusing Tango.FSE.Common.Diagnostics;\r\nusing Tango.FSE.Procedures;\r\n\r\npublic class Service\r\n{\r\n public double Calc(double a, double b)\r\n {\r\n return a + b;\r\n }\r\n}","Name":"Service.csx","IsEntryPoint":false}]},"Inputs":{"$id":"5","$values":[]},"Variables":{"$id":"6","$values":[]},"ReferenceAssemblies":{"$id":"7","$values":[{"$id":"8","File":"C:\\Windows\\Microsoft.NET\\Framework\\v4.0.30319\\mscorlib.dll","HintType":"System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"},{"$id":"9","File":"C:\\Windows\\Microsoft.Net\\assembly\\GAC_MSIL\\System.Core\\v4.0_4.0.0.0__b77a5c561934e089\\System.Core.dll","HintType":"System.Linq.Enumerable, System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"},{"$id":"10","File":"C:\\Windows\\Microsoft.Net\\assembly\\GAC_MSIL\\System.Windows.Forms\\v4.0_4.0.0.0__b77a5c561934e089\\System.Windows.Forms.dll","HintType":"System.Windows.Forms.Form, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"},{"$id":"11","File":"C:\\Program Files (x86)\\Twine Solutions LTD\\Tango FSE\\Tango.FSE.Procedures.dll","HintType":"Tango.FSE.Procedures.ProcedureProject, Tango.FSE.Procedures, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"},{"$id":"12","File":"C:\\Program Files (x86)\\Twine Solutions LTD\\Tango FSE\\Tango.FSE.Common.dll","HintType":"Tango.FSE.Common.Diagnostics.IDiagnosticsProvider, Tango.FSE.Common, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"},{"$id":"13","File":"C:\\Program Files (x86)\\Twine Solutions LTD\\Tango FSE\\Tango.BL.dll","HintType":"Tango.BL.Enumerations.TechMonitors, Tango.BL, Version=2.0.36.1608, Culture=neutral, PublicKeyToken=null"},{"$id":"14","File":"C:\\Program Files (x86)\\Twine Solutions LTD\\Tango FSE\\Tango.PMR.dll","HintType":"Tango.PMR.Common.MessageType, Tango.PMR, Version=2.0.40.1608, Culture=neutral, PublicKeyToken=null"},{"$id":"15","File":"C:\\Program Files (x86)\\Twine Solutions LTD\\Tango FSE\\Tango.Transport.dll","HintType":"Tango.Transport.ITransporter, Tango.Transport, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"},{"$id":"16","File":"C:\\Program Files (x86)\\Twine Solutions LTD\\Tango FSE\\Tango.Integration.dll","HintType":"Tango.Integration.Operation.IMachineOperator, Tango.Integration, Version=2.0.31.1608, Culture=neutral, PublicKeyToken=null"},{"$id":"17","File":"C:\\Program Files (x86)\\Twine Solutions LTD\\Tango FSE\\Google.Protobuf.dll","HintType":"Google.Protobuf.IMessage, Google.Protobuf, Version=3.4.1.0, Culture=neutral, PublicKeyToken=a7d26565bac4d604"},{"$id":"18","File":"C:\\Windows\\Microsoft.Net\\assembly\\GAC_MSIL\\System.Drawing\\v4.0_4.0.0.0__b03f5f7f11d50a3a\\System.Drawing.dll","HintType":"System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"},{"$id":"19","File":"C:\\Program Files (x86)\\Twine Solutions LTD\\Tango FSE\\Tango.DataStore.dll","HintType":"Tango.DataStore.IDataStoreItem, Tango.DataStore, Version=2.0.4.1608, Culture=neutral, PublicKeyToken=null"}]},"Resources":{"$id":"20","$values":[]},"Dialogs":{"$id":"21","$values":[]},"ID":"fa8293e8-0db3-4461-a0ed-6d9406d80df1","ApartmentState":"STA"}
\ No newline at end of file |
