From 8f59ef6ef5aa1c4f9d5fc19fc26df4b92fe5662c Mon Sep 17 00:00:00 2001 From: Shlomo Hecht Date: Tue, 5 Jan 2021 13:18:52 +0200 Subject: PBU in pre-run preparations --- .../Embedded/Common/SWUpdate/FirmwareUpgrade.c | 3 +- Software/Embedded_SW/Embedded/DataDef.h | 5 +- .../Embedded/Modules/IDS/IDS_dispenser.c | 7 +- .../Embedded_SW/Embedded/Modules/IDS/IDS_maint.c | 35 ++--- .../Embedded_SW/Embedded/Modules/IDS/IDS_print.c | 141 ++++++++++----------- .../Embedded/Modules/Stubs_Handler/Progress.c | 11 -- .../Embedded/Modules/Thread/Thread_print.c | 14 +- .../Embedded/Software Release Notes.txt | 10 ++ .../Initialization/PowerOffSequence.c | 8 +- 9 files changed, 100 insertions(+), 134 deletions(-) (limited to 'Software/Embedded_SW') diff --git a/Software/Embedded_SW/Embedded/Common/SWUpdate/FirmwareUpgrade.c b/Software/Embedded_SW/Embedded/Common/SWUpdate/FirmwareUpgrade.c index a404ca8ee..64c5dd9a2 100644 --- a/Software/Embedded_SW/Embedded/Common/SWUpdate/FirmwareUpgrade.c +++ b/Software/Embedded_SW/Embedded/Common/SWUpdate/FirmwareUpgrade.c @@ -56,6 +56,7 @@ uint32_t ActivateVersionCallBackFunction(uint32_t IfIndex, uint32_t BusyFlag) ActivateVersionResponse response = ACTIVATE_VERSION_RESPONSE__INIT; MessageContainer responseContainer; bool last = true; + double file_progress = (double)vme_index/CurrentFileSize; if (CurrentRunningFile3.0)&&(DispenserPBUReady[i]==false)) + { + Control3WayValvesWithCallback ((Valves_t)i, MidTank_Dispenser, NULL); //direction: MidTank_Dispenser or Dispenser_Mixer + DispenserPBUReady[i] = true; + } +#endif //IDS_StopHomeDispenser(i); if (DispenserUsedInJob[i] == true) //we actually should check for all dispensers { @@ -642,8 +649,16 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl { if (AdjustDispenserSpeedToPressure(i,DispenserPreparePressure,pressure) == true) { +#ifdef DISPENSER_PBU_PRE_RUN + if(DispenserPBUReady[i] == true) + { + NumofReadyDispensers++; + DispenserReady[i] = true; + } +#else NumofReadyDispensers++; DispenserReady[i] = true; +#endif } } //ReportWithPackageFilter(IDSFilter,"IDS prepare",__FILE__,i,(int)DispenserTotalPrepareSteps[i],RpWarning,(int)(CurrentDispenserSpeed[i]*100),0); @@ -661,6 +676,16 @@ 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; } + + pressure = GetDispenserPressure(LUBRICANT_DISPENSER); + if ((pressure > 0.01)&&(lubricant_speed > 0.1)) + { + HW_Motor_Id = DispenserIdToMotorId[LUBRICANT_DISPENSER]; + MotorStop(HW_Motor_Id, Hard_Hiz); + if (CurrentDispenserSpeed[LUBRICANT_DISPENSER]) + ReportWithPackageFilter(IDSFilter,"IDS stop lubricant",__FILE__,LUBRICANT_DISPENSER,(int)(pressure*100),RpWarning,(int)CurrentDispenserSpeed[LUBRICANT_DISPENSER] ,0); + CurrentDispenserSpeed[LUBRICANT_DISPENSER] = 0; + } #endif if ((NumofReadyDispensers)&&(DispenserBuildTimeCounter%1000 == 0)) { @@ -743,14 +768,7 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl segmentfirst_speed /= 100; DispenserSegmentReady[DispenserId] = false; //Control3WayValvesWithCallback (DispenserId, Dispenser_Mixer, NULL); //direction: MidTank_Dispenser or Dispenser_Mixer - if (Special_Dispensers == true) - { - IDS_Dispenser_Start_Motor_and_Open_Valve(DispenserId,segmentfirst_speed,NULL); - } - else - { - MotorSetSpeed(HW_Motor_Id, segmentfirst_speed); - } + MotorSetSpeed(HW_Motor_Id, segmentfirst_speed); CurrentDispenserSpeed[DispenserId] = segmentfirst_speed; /*usnprintf(IdMessage, 80, @@ -808,6 +826,14 @@ 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); } + if (CurrentDispenserSpeed[LUBRICANT_DISPENSER]) + { + HW_Motor_Id = DispenserIdToMotorId[LUBRICANT_DISPENSER]; + MotorStop(HW_Motor_Id, Hard_Hiz); + if (CurrentDispenserSpeed[LUBRICANT_DISPENSER]) + ReportWithPackageFilter(IDSFilter,"IDS stop lubricant",__FILE__,LUBRICANT_DISPENSER,(int)(pressure*100),RpWarning,(int)CurrentDispenserSpeed[LUBRICANT_DISPENSER] ,0); + CurrentDispenserSpeed[LUBRICANT_DISPENSER] = 0; + } #endif SafeRemoveControlCallback(DispenserPrepareControlId, IDS_Prepare_Callback ); DispenserPrepareControlId = 0xFF; @@ -859,11 +885,6 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl TargetNumberOfStepsPreRun = InitialDispenserTimeout; MaximalPressurePreRun = InitialDispenserPressure; - if(Head_Type == HEAD_TYPE_ARC) - { - MotorMovetoLimitSwitch(HARDWARE_MOTOR_TYPE__MOTO_DH_LID,1-MotorsCfg[HARDWARE_MOTOR_TYPE__MOTO_DH_LID].directionthreadwize, 30, Motor_Id_to_LS_IdDown[HARDWARE_MOTOR_TYPE__MOTO_DH_LID], NULL,30000); - } - for (Motor_i = 0;Motor_i < MAX_SYSTEM_DISPENSERS;Motor_i++) { TimerMotors_t HW_Motor_Id = DispenserIdToMotorId[Motor_i]; @@ -904,6 +925,7 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl { int i; double dispenserspeed = 0; + double pressure; if (IDS_Active == false) { @@ -930,6 +952,16 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl } DispenserTotalPrepareSteps[i] = 0; ReportWithPackageFilter(IDSFilter,"Dispenser total prepare steps zero",__FILE__,i,DispenserTotalPrepareSteps[i],RpWarning,IDS_Dispenser_Data[i].consumedinnanolitter,0); +#ifdef DISPENSER_PBU_PRE_RUN + pressure = GetDispenserPressure(i); + if (pressure<3.0) + { + Control3WayValvesWithCallback ((Valves_t)i, MidTank_Dispenser, NULL); //direction: MidTank_Dispenser or Dispenser_Mixer + DispenserPBUReady[i] = false; + } + else + DispenserPBUReady[i] = true; +#endif } else { @@ -962,10 +994,6 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl for (i = 0; i < MAX_DYE_DISPENSERS; i++) { dispenserspeed = DispenserPrepareSpeed; - if (Special_Dispensers == true) - { - dispenserspeed = 300; - } TimerMotors_t HW_Motor_Id = DispenserIdToMotorId[i]; if (DispenserUsedInJob[i] == true) //we actually should check for all dispensers @@ -974,14 +1002,7 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl { ReportWithPackageFilter(IDSFilter,"Prepare Speed",__FILE__,HomingActive[i],i,RpWarning,(int)dispenserspeed,0); MotorSetDirection((TimerMotors_t)HW_Motor_Id,MotorsCfg[HW_Motor_Id].directionthreadwize); //set the dispenser to the - if (Special_Dispensers == true) - { - MotorSetSpeed((TimerMotors_t)HW_Motor_Id,dispenserspeed); //set the dispenser to the - } - else - { - IDS_Dispenser_Start_Motor_and_Open_Valve(i,dispenserspeed, NULL); - } + MotorSetSpeed((TimerMotors_t)HW_Motor_Id,dispenserspeed); //set the dispenser to the } /*else { @@ -998,6 +1019,16 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl 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); + if (lubricant_speed > 0.1) + { + if (GetDispenserPressure(LUBRICANT_DISPENSER) < 0.01) + { + TimerMotors_t HW_Motor_Id = DispenserIdToMotorId[LUBRICANT_DISPENSER]; + MotorSetSpeed((TimerMotors_t)HW_Motor_Id,INITIAL_CLEANER_SPEED ); //set the dispenser to the + CurrentDispenserSpeed[LUBRICANT_DISPENSER] = INITIAL_CLEANER_SPEED; + } + ReportWithPackageFilter(IDSFilter,"IDS start lubricant",__FILE__,CLEANER_DISPENSER,(int)(GetDispenserPressure(CLEANER_DISPENSER)*100),RpWarning,(int)CurrentDispenserSpeed[CLEANER_DISPENSER] ,0); + } #endif } @@ -1127,14 +1158,7 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl { if (DispenserUsedInJob[DispenserId] == true) { - if (Special_Dispensers == true) - { - IDS_Dispenser_Close_Valve_And_Stop_Motor(DispenserId,NULL); - } - else - { - MotorStop(HW_Motor_Id, Hard_Hiz); - } + IDS_Dispenser_Close_Valve_And_Stop_Motor(DispenserId,NULL); CurrentDispenserSpeed[DispenserId] = 0; //usnprintf(IdsMessage, 80,"Presegment Prepare Dispenser %d stopped",DispenserId,(int) segmentfirst_speed); //ReportWithPackageFilter(IDSFilter,IdsMessage, __FILE__, __LINE__, Dispenser_i, RpWarning, segmentfirst_speed, 0); @@ -1402,7 +1426,7 @@ uint32_t IDSCheckSegmentData(void *SegmentDetails, int SegmentId) }//for brushstops } } - ReportWithPackageFilter(IDSFilter,"Unhandled brushstops result",__FILE__,__LINE__,(int)Brush_i,RpWarning,(int)PrevSegment->brushstopscount,0); + ReportWithPackageFilter(IDSFilter,"Unhandled brushstops result",__FILE__,__LINE__,(int)Brush_i,RpWarning,(int)PrevSegment,0); return OK; } uint32_t IDSPreSegmentState(void *SegmentDetails, int SegmentId) @@ -1521,14 +1545,7 @@ uint32_t IDSPreSegmentState(void *SegmentDetails, int SegmentId) { if (DispenserUsedInJob[DispenserId] == true) { - if (Special_Dispensers == true) - { - IDS_Dispenser_Close_Valve_And_Stop_Motor(DispenserId,NULL); - } - else - { - MotorStop(HW_Motor_Id,Soft_Hiz); //26/03/19 test without valves - } + IDS_Dispenser_Close_Valve_And_Stop_Motor(DispenserId,NULL); CurrentDispenserSpeed[DispenserId] = 0; DispenserPreSegmentReady[DispenserId] = true; //27/03/19 check if job should be stopped REPORT_MSG(DispenserId,"Dispenser stopped pre Segment"); @@ -1601,15 +1618,7 @@ void IDS_StartBrushStop(int n_dispensers, JobDispenser** Dispensers) /*IDS_Dispenser_Start_Motor_and_Open_Valve(DispenserId, segmentfirst_speed, NULL);*/ - //Control3WayValvesWithCallback (DispenserId, Dispenser_Mixer, NULL); //direction: MidTank_Dispenser or Dispenser_Mixer - if (Special_Dispensers == true) - { - IDS_Dispenser_Start_Motor_and_Open_Valve(DispenserId,segmentfirst_speed, NULL); - } - else - { - MotorSetSpeed(HW_Motor_Id, segmentfirst_speed); - } + IDS_Dispenser_Start_Motor_and_Open_Valve(DispenserId,segmentfirst_speed, NULL); CurrentDispenserSpeed[DispenserId] = segmentfirst_speed; /*usnprintf(IdsMessage, 80, "Dispenser %d nl/sec %d nl/pulse %d Pulse/sec %d speed %d steps %d/%d", @@ -1628,14 +1637,7 @@ void IDS_StartBrushStop(int n_dispensers, JobDispenser** Dispensers) //IDS_Dispenser_Close_Valve_And_Stop_Motor(DispenserId,NULL);*/ if (DispenserUsedInJob[DispenserId] == true) { - if (Special_Dispensers == true) - { - IDS_Dispenser_Close_Valve_And_Stop_Motor(DispenserId,NULL); - } - else - { - MotorStop(HW_Motor_Id, Hard_Hiz); - } + IDS_Dispenser_Close_Valve_And_Stop_Motor(DispenserId,NULL); CurrentDispenserSpeed[DispenserId] = 0; } //ReportWithPackageFilter(IDSFilter,"inActive dispenser stopped", __FILE__, __LINE__, DispenserId, RpWarning, segmentfirst_speed, 0); @@ -1845,14 +1847,7 @@ uint32_t IDSSegmentState(void *SegmentDetails, int SegmentId) { DispenserDistanceToSpoolReady[Dispenser_i] = false; dispenserCount++; - if (Special_Dispensers == true) - { - IDS_Dispenser_Close_Valve_And_Stop_Motor(Dispenser_i,NULL); - } - else - { - MotorStop(DispenserIdToMotorId[Dispenser_i],Hard_Hiz); - } + IDS_Dispenser_Close_Valve_And_Stop_Motor(Dispenser_i,NULL); Control3WayValvesWithCallback ((Valves_t)Dispenser_i, MidTank_Dispenser, IDS_Valve_DistanceToSpoolValveReady); //direction: MidTank_Dispenser or Dispenser_Mixer CurrentDispenserSpeed[Dispenser_i] = 0; //IDS_Dispenser_Close_Valve_And_Stop_Motor(Dispenser_i,IDS_Valve_DistanceToSpoolValveReady); @@ -1940,14 +1935,8 @@ uint32_t IDSSegmentState(void *SegmentDetails, int SegmentId) if (DispenserUsedInJob[Dispenser_i] == true) { AlarmHandlingSetAlarm (EVENT_TYPE__DISPENSER_1_UNDERPRESSURE+Dispenser_i,OFF); //handle alarm detection and operation - if (Special_Dispensers == true) - { - IDS_Dispenser_Close_Valve_And_Stop_Motor(Dispenser_i,NULL); - } - else - { - MotorStop(DispenserIdToMotorId[Dispenser_i],Hard_Hiz); - } + TimerMotors_t HW_Motor_Id = DispenserIdToMotorId[Dispenser_i]; + MotorStop(HW_Motor_Id,Hard_Hiz); #ifdef DISPENSER_VALVES_OPEN Control3WayValvesWithCallback (Dispenser_i, Dispenser_Mixer, IDS_Valve_EndValveReady); //direction: MidTank_Dispenser or Dispenser_Mixer #else diff --git a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c index 659a308db..6a3c2074f 100644 --- a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c +++ b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c @@ -1018,17 +1018,6 @@ void Stub_ProgressRequest(MessageContainer* requestContainer) response.has_progress = true; } else - if(request->amount == 0xE5) //fast refresh for pressure - { - if (request->delay<=1) - { - Report("Set special dispensers ",__FILE__,__LINE__,request->delay,RpWarning,Special_Dispensers,0); - Special_Dispensers = request->delay; - } - response.progress = (double)OK; - response.has_progress = true; - } - else if(request->amount == 0xE6) //fast refresh for pressure { Report("HeaterSafetyTestSetLimits ",__FILE__,__LINE__,request->delay,RpWarning,0,0); diff --git a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c index 697f1bd5d..40748b0ee 100644 --- a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c +++ b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c @@ -1114,6 +1114,12 @@ uint32_t ThreadPrepareState(void *JobDetails) PrepareWaitCount = 0; + status = ThreadPrepare_Tension (HARDWARE_DANCER_TYPE__LeftDancer, windertension); + ReportWithPackageFilter(ThreadFilter,"ThreadPrepare_Tension Winder",__FILE__,HARDWARE_DANCER_TYPE__LeftDancer,PrepareWaitCount,RpWarning,(int)windertension,0); +#ifndef BTSR_NO_PULLER_TFU + status = ThreadPrepare_Tension (HARDWARE_DANCER_TYPE__MiddleDancer, pullertension); + ReportWithPackageFilter(ThreadFilter,"ThreadPrepare_Tension Puller",__FILE__,HARDWARE_DANCER_TYPE__MiddleDancer,PrepareWaitCount,RpWarning,(int)pullertension,0); +#endif #ifdef UFEEDER_BTSR status = ThreadPrepare_Tension (HARDWARE_DANCER_TYPE__LeftDancer, JobTicket->btsrparameters->exittension); ReportWithPackageFilter(ThreadFilter,"ThreadPrepare_Tension Winder",__FILE__,HARDWARE_DANCER_TYPE__LeftDancer,PrepareWaitCount,RpWarning,(int)JobTicket->btsrparameters->exittension,0); @@ -1122,16 +1128,10 @@ uint32_t ThreadPrepareState(void *JobDetails) BTSR_Read_Length(RUFeeder1, HIGHEST); ReportWithPackageFilter(ThreadFilter,"ThreadPrepare_Tension BTSR",__FILE__,application,type,RpError,tension,tension_err); #else - status = ThreadPrepare_Tension (HARDWARE_DANCER_TYPE__LeftDancer, windertension); - ReportWithPackageFilter(ThreadFilter,"ThreadPrepare_Tension Winder",__FILE__,HARDWARE_DANCER_TYPE__LeftDancer,PrepareWaitCount,RpWarning,(int)windertension,0); -#endif -#ifndef BTSR_NO_PULLER_TFU - status = ThreadPrepare_Tension (HARDWARE_DANCER_TYPE__MiddleDancer, pullertension); - ReportWithPackageFilter(ThreadFilter,"ThreadPrepare_Tension Puller",__FILE__,HARDWARE_DANCER_TYPE__MiddleDancer,PrepareWaitCount,RpWarning,(int)pullertension,0); -#endif #ifndef BTSR_NO_FEEDER_TFU status = ThreadPrepare_Tension (HARDWARE_DANCER_TYPE__RightDancer, feedertension); ReportWithPackageFilter(ThreadFilter,"ThreadPrepare_Tension Feeder",__FILE__,HARDWARE_DANCER_TYPE__RightDancer,PrepareWaitCount,RpWarning,(int)feedertension,0); +#endif #endif FirstCalcInJob = true; diff --git a/Software/Embedded_SW/Embedded/Software Release Notes.txt b/Software/Embedded_SW/Embedded/Software Release Notes.txt index 55bb213d2..d5db2f317 100644 --- a/Software/Embedded_SW/Embedded/Software Release Notes.txt +++ b/Software/Embedded_SW/Embedded/Software Release Notes.txt @@ -9,6 +9,16 @@ IDS - gradient brushstop offset size from the file store real time and use in error log BTSR Support +Embedded SW Release note - Version 1.5.3(5) - Pack 3+ (Mid-Alpha) +============================================================= +fix file system bug (file delete when there is no existing file) +fix alarm report - dispenser Id +pull down cleaner dispenser on pressure rise during segment +fix cartridge percentage +fix INIT reporting (BIT skipping) +fix idle head blowers setting (1.2 m^3/H) and arc head setting (60c) +build lubricant pressure before job (to 0.01) + Embedded SW Release note - Version 1.5.3(4) - Pack 3 ============================================================= remove ErrFile.txt handling (storing logs while report is disconnected) - from release version diff --git a/Software/Embedded_SW/Embedded/StateMachines/Initialization/PowerOffSequence.c b/Software/Embedded_SW/Embedded/StateMachines/Initialization/PowerOffSequence.c index b5ebdee17..a77b22c47 100644 --- a/Software/Embedded_SW/Embedded/StateMachines/Initialization/PowerOffSequence.c +++ b/Software/Embedded_SW/Embedded/StateMachines/Initialization/PowerOffSequence.c @@ -484,11 +484,9 @@ uint32_t PowerOffTurnOffDryerFan(void) int i; Control_Dryer_Fan(STOP,75);//use START or STOP, 0 - 100% PowerOffMachineState++; - if (Special_Dispensers == false) - { - for (i=0;i Date: Tue, 5 Jan 2021 13:27:35 +0200 Subject: eeprom float read/write --- .../Embedded/Drivers/flash_ram/MCU_E2Prom.c | 70 +++++++++++++++++----- .../Embedded/Drivers/flash_ram/MCU_E2Prom.h | 4 +- .../Embedded/Modules/Stubs_Handler/Procedure.c | 48 ++++++++++++++- 3 files changed, 106 insertions(+), 16 deletions(-) (limited to 'Software/Embedded_SW') diff --git a/Software/Embedded_SW/Embedded/Drivers/flash_ram/MCU_E2Prom.c b/Software/Embedded_SW/Embedded/Drivers/flash_ram/MCU_E2Prom.c index 20c6d5a00..5cf4f5872 100644 --- a/Software/Embedded_SW/Embedded/Drivers/flash_ram/MCU_E2Prom.c +++ b/Software/Embedded_SW/Embedded/Drivers/flash_ram/MCU_E2Prom.c @@ -45,6 +45,7 @@ uint32_t MCU_E2PromProgram(int Address,uint32_t Data) return (EEPROMProgram((uint32_t *)&Buffer, Address*4, 4)); #endif } + uint32_t MCU_E2PromRead(int Address,uint32_t *Data) { if (Address>=MAX_EEPROM_STORAGE) @@ -60,6 +61,44 @@ uint32_t MCU_E2PromRead(int Address,uint32_t *Data) return OK; } + +uint32_t MCU_E2PromProgramFloat(int Address,float Data) +{ + float Buffer = Data; + if (Address>=MAX_EEPROM_STORAGE) + { + Report("MCU_E2PromProgram Error",__FILE__,__LINE__,Address,RpWarning,Data,0); + return ERROR; + } + if ((Address>=EEPROM_STORAGE_DANCER_0)&&(Address<=EEPROM_STORAGE_DANCER_2)) + { + Report("~~~~~~Store dancers eeprom ",__FILE__,__LINE__,(int)Address,RpWarning,(int)Data,0); + + } + Report("MCU_E2PromProgram",__FILE__,__LINE__,Address,RpWarning,(int)Data*1000,0); +#ifdef EVALUATION_BOARD + return 0; +#else + return (EEPROMProgram((float *)&Buffer, Address*4, 4)); +#endif +} + +uint32_t MCU_E2PromReadFloat(int Address,float *Data) +{ + if (Address>=MAX_EEPROM_STORAGE) + { + Report("MCU_E2PromRead Error",__FILE__,__LINE__,Address,RpWarning,(int)(*Data)*1000,0); + //return ERROR; + } +#ifndef EVALUATION_BOARD + EEPROMRead((float *)Data,Address*4, 4); +#endif + Report("MCU_E2PromRead",__FILE__,__LINE__,Address,RpWarning,(int)(*Data)*1000,0); + + return OK; + +} + /**************************************************/ uint32_t MCU_E2PromProgramChunk(int Address,uint16_t Length,uint32_t Data) { @@ -362,6 +401,7 @@ void MainCardEEpromWriteRequestFunc(MessageContainer* requestContainer) stub_main_card_eeprom_write_request__free_unpacked(request,NULL); } + uint32_t BtsrSaveParamsToEeprom(void *Data) { BTSRParameters* BtsrPrameters = Data; @@ -373,17 +413,17 @@ uint32_t BtsrSaveParamsToEeprom(void *Data) if (memcmp(BtsrPrameters,&ExistingBtsrPrameters,sizeof(ExistingBtsrPrameters))) { data = BtsrPrameters->feedingtension; - status |= MCU_E2PromProgram(EEPROM_BTSR_FEEDING_TENSION, data); + status |= MCU_E2PromProgramFloat(EEPROM_BTSR_FEEDING_TENSION, data); status |= MCU_E2PromProgram(EEPROM_BTSR_TYPE, BtsrPrameters->btsryarntype); status |= MCU_E2PromProgram(EEPROM_BTSR_APPLICATION, BtsrPrameters->btsrapplicationtype); data = BtsrPrameters->threadlengthfactor; - status |= MCU_E2PromProgram(EEPROM_BTSR_LENGTH_OFFSET, data); + status |= MCU_E2PromProgramFloat(EEPROM_BTSR_LENGTH_OFFSET, data); data = BtsrPrameters->tensionerror; - status |= MCU_E2PromProgram(EEPROM_BTSR_TENSION_ERROR, data); + status |= MCU_E2PromProgramFloat(EEPROM_BTSR_TENSION_ERROR, data); data = BtsrPrameters->spooltension; - status |= MCU_E2PromProgram(EEPROM_BTSR_SPOOL_TENSION, data); + status |= MCU_E2PromProgramFloat(EEPROM_BTSR_SPOOL_TENSION, data); data = BtsrPrameters->exittension; - status |= MCU_E2PromProgram(EEPROM_BTSR_EXIT_TENSION, data); + status |= MCU_E2PromProgramFloat(EEPROM_BTSR_EXIT_TENSION, data); } return status; } @@ -393,19 +433,21 @@ uint32_t BtsrReadParamsFromEeprom(void *Data) BTSRParameters* BtsrPrameters = Data; uint32_t status = 0; float data; - status |= MCU_E2PromRead(EEPROM_BTSR_FEEDING_TENSION, &data); + uint32_t value; + + status |= MCU_E2PromReadFloat(EEPROM_BTSR_FEEDING_TENSION, &data); BtsrPrameters->feedingtension = data; - status |= MCU_E2PromRead(EEPROM_BTSR_TYPE, &data); - BtsrPrameters->btsryarntype = data; - status |= MCU_E2PromRead(EEPROM_BTSR_APPLICATION, &data); - BtsrPrameters->btsrapplicationtype = data; - status |= MCU_E2PromRead(EEPROM_BTSR_LENGTH_OFFSET, &data); + status |= MCU_E2PromRead(EEPROM_BTSR_TYPE, &value); + BtsrPrameters->btsryarntype = value; + status |= MCU_E2PromRead(EEPROM_BTSR_APPLICATION, &value); + BtsrPrameters->btsrapplicationtype = value; + status |= MCU_E2PromReadFloat(EEPROM_BTSR_LENGTH_OFFSET, &data); BtsrPrameters->threadlengthfactor = data; - status |= MCU_E2PromRead(EEPROM_BTSR_TENSION_ERROR, &data); + status |= MCU_E2PromReadFloat(EEPROM_BTSR_TENSION_ERROR, &data); BtsrPrameters->tensionerror = data; - status |= MCU_E2PromRead(EEPROM_BTSR_SPOOL_TENSION, &data); + status |= MCU_E2PromReadFloat(EEPROM_BTSR_SPOOL_TENSION, &data); BtsrPrameters->spooltension = data; - status |= MCU_E2PromRead(EEPROM_BTSR_EXIT_TENSION, &data); + status |= MCU_E2PromReadFloat(EEPROM_BTSR_EXIT_TENSION, &data); BtsrPrameters->exittension = data; Report("BtsrReadParamsFromEeprom",__FILE__,__LINE__,(int)(BtsrPrameters->feedingtension*1000),RpWarning,(int)(BtsrPrameters->tensionerror*1000),(int)(BtsrPrameters->exittension*1000)); Report("BtsrReadParamsFromEeprom",__FILE__,__LINE__,(int)(BtsrPrameters->btsrapplicationtype),RpWarning,(int)(BtsrPrameters->btsryarntype),(int)(BtsrPrameters->threadlengthfactor*1000)); diff --git a/Software/Embedded_SW/Embedded/Drivers/flash_ram/MCU_E2Prom.h b/Software/Embedded_SW/Embedded/Drivers/flash_ram/MCU_E2Prom.h index 24f229b2c..297ce1efe 100644 --- a/Software/Embedded_SW/Embedded/Drivers/flash_ram/MCU_E2Prom.h +++ b/Software/Embedded_SW/Embedded/Drivers/flash_ram/MCU_E2Prom.h @@ -68,7 +68,7 @@ typedef enum { ORIFICE3_ZERO_VALUE_ADDR, }EEPROM_ADDRESSES;*/ -#define EEPROM_RESET_REASON_HEAD_ADDRESS 160 +#define EEPROM_RESET_REASON_HEAD_ADDRESS 300 #define EEPROM_RESET_REASON_MAX_DATA 80 #define DISPENSERS_MAP_IN_EEPROM 0x200 @@ -82,6 +82,8 @@ void MCU_E2PromUpdateResetReason(int i); uint32_t MCU_E2PromProgram(int Address,uint32_t Data); uint32_t MCU_E2PromRead(int Address,uint32_t *Data); +uint32_t MCU_E2PromProgramFloat(int Address,float Data); +uint32_t MCU_E2PromReadFloat(int Address,float *Data); void MCU_E2PromProgramMidTank(int midtankId,float a,float b); float MCU_E2PromReadMidtank_A(int MidtankId); float MCU_E2PromReadMidtank_B(int MidtankId); diff --git a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Procedure.c b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Procedure.c index c84dc5fb5..d1ba28d7e 100644 --- a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Procedure.c +++ b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Procedure.c @@ -72,8 +72,10 @@ void Stub_ProcedureRequest(MessageContainer* requestContainer) bool ResetNeeded = false; ProcedureRequest* request = procedure_request__unpack(NULL, requestContainer->data.len, requestContainer->data.data); - int i,n_param = request->n_param; + int rc, i,n_param = request->n_param; ProcedureResponse response = PROCEDURE_RESPONSE__INIT; + BTSRParameters *BtsrPrameters = NULL; + char str[200]; /* protobuf_c_boolean has_type; int32_t type; protobuf_c_boolean has_timeout; @@ -89,6 +91,50 @@ void Stub_ProcedureRequest(MessageContainer* requestContainer) { switch (request->type) { + case 1: + BtsrPrameters = my_malloc(sizeof(BTSRParameters)); + BtsrPrameters->btsryarntype = request->param[0]; + BtsrPrameters->btsrapplicationtype = request->param[1]; + BtsrPrameters->feedingtension = request->param[2]; + BtsrPrameters->exittension = request->param[3]; + BtsrPrameters->tensionerror = request->param[4]; + BtsrPrameters->threadlengthfactor = request->param[5]; + rc = BtsrSaveParamsToEeprom(BtsrPrameters); + free(BtsrPrameters); + response.replymessage = request->testname; + if (n_param) + { + response.replyvalue = (float*)my_malloc(sizeof(float *)*(request->n_param)); + response.n_replyvalue = request->n_param; + for(i=0;itestname,__FILE__,__LINE__,(int)request->type,RpWarning,(int) request->n_param,0); + response.replyvalue[i] = request->param[i]; + } + } + response.time = msec_millisecondCounter; + response.type = request->type; + break; + case 2: + BtsrPrameters = my_malloc(sizeof(BTSRParameters)); + rc = BtsrReadParamsFromEeprom(BtsrPrameters); + sprintf(str, "type = %d, app = %d, tension = %f, exittension = %f, tensionerror = %f, lengthfactor = %f", BtsrPrameters->btsryarntype, + BtsrPrameters->btsrapplicationtype, BtsrPrameters->feedingtension, BtsrPrameters->exittension, BtsrPrameters->tensionerror, BtsrPrameters->threadlengthfactor); + response.replymessage = str; + if (n_param) + { + response.replyvalue = (float*)my_malloc(sizeof(float *)*(request->n_param)); + response.n_replyvalue = request->n_param; + for(i=0;itestname,__FILE__,__LINE__,(int)request->type,RpWarning,(int) request->n_param,0); + response.replyvalue[i] = request->param[i]; + } + } + response.time = msec_millisecondCounter; + response.type = request->type; + free(BtsrPrameters); + break; default: response.replymessage = request->testname; if (n_param) -- cgit v1.3.1 From af2f6e0aff929df42b7409042a4c3f497e7e5902 Mon Sep 17 00:00:00 2001 From: Ronen Sberlo Date: Tue, 5 Jan 2021 15:43:16 +0200 Subject: in BTSR left dancer tension gets from exit tension insted of winder tension --- .../Embedded_SW/Embedded/Modules/Thread/Thread_print.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'Software/Embedded_SW') diff --git a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c index 40748b0ee..697f1bd5d 100644 --- a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c +++ b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c @@ -1114,12 +1114,6 @@ uint32_t ThreadPrepareState(void *JobDetails) PrepareWaitCount = 0; - status = ThreadPrepare_Tension (HARDWARE_DANCER_TYPE__LeftDancer, windertension); - ReportWithPackageFilter(ThreadFilter,"ThreadPrepare_Tension Winder",__FILE__,HARDWARE_DANCER_TYPE__LeftDancer,PrepareWaitCount,RpWarning,(int)windertension,0); -#ifndef BTSR_NO_PULLER_TFU - status = ThreadPrepare_Tension (HARDWARE_DANCER_TYPE__MiddleDancer, pullertension); - ReportWithPackageFilter(ThreadFilter,"ThreadPrepare_Tension Puller",__FILE__,HARDWARE_DANCER_TYPE__MiddleDancer,PrepareWaitCount,RpWarning,(int)pullertension,0); -#endif #ifdef UFEEDER_BTSR status = ThreadPrepare_Tension (HARDWARE_DANCER_TYPE__LeftDancer, JobTicket->btsrparameters->exittension); ReportWithPackageFilter(ThreadFilter,"ThreadPrepare_Tension Winder",__FILE__,HARDWARE_DANCER_TYPE__LeftDancer,PrepareWaitCount,RpWarning,(int)JobTicket->btsrparameters->exittension,0); @@ -1128,10 +1122,16 @@ uint32_t ThreadPrepareState(void *JobDetails) BTSR_Read_Length(RUFeeder1, HIGHEST); ReportWithPackageFilter(ThreadFilter,"ThreadPrepare_Tension BTSR",__FILE__,application,type,RpError,tension,tension_err); #else + status = ThreadPrepare_Tension (HARDWARE_DANCER_TYPE__LeftDancer, windertension); + ReportWithPackageFilter(ThreadFilter,"ThreadPrepare_Tension Winder",__FILE__,HARDWARE_DANCER_TYPE__LeftDancer,PrepareWaitCount,RpWarning,(int)windertension,0); +#endif +#ifndef BTSR_NO_PULLER_TFU + status = ThreadPrepare_Tension (HARDWARE_DANCER_TYPE__MiddleDancer, pullertension); + ReportWithPackageFilter(ThreadFilter,"ThreadPrepare_Tension Puller",__FILE__,HARDWARE_DANCER_TYPE__MiddleDancer,PrepareWaitCount,RpWarning,(int)pullertension,0); +#endif #ifndef BTSR_NO_FEEDER_TFU status = ThreadPrepare_Tension (HARDWARE_DANCER_TYPE__RightDancer, feedertension); ReportWithPackageFilter(ThreadFilter,"ThreadPrepare_Tension Feeder",__FILE__,HARDWARE_DANCER_TYPE__RightDancer,PrepareWaitCount,RpWarning,(int)feedertension,0); -#endif #endif FirstCalcInJob = true; -- cgit v1.3.1 From a9f6f542b73e33e981d0f9167c5ae37ece7fb924 Mon Sep 17 00:00:00 2001 From: Ronen Sberlo Date: Tue, 5 Jan 2021 16:40:14 +0200 Subject: log print fix --- Software/Embedded_SW/Embedded/Drivers/flash_ram/MCU_E2Prom.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'Software/Embedded_SW') diff --git a/Software/Embedded_SW/Embedded/Drivers/flash_ram/MCU_E2Prom.c b/Software/Embedded_SW/Embedded/Drivers/flash_ram/MCU_E2Prom.c index 5cf4f5872..44f1ffe78 100644 --- a/Software/Embedded_SW/Embedded/Drivers/flash_ram/MCU_E2Prom.c +++ b/Software/Embedded_SW/Embedded/Drivers/flash_ram/MCU_E2Prom.c @@ -449,8 +449,8 @@ uint32_t BtsrReadParamsFromEeprom(void *Data) BtsrPrameters->spooltension = data; status |= MCU_E2PromReadFloat(EEPROM_BTSR_EXIT_TENSION, &data); BtsrPrameters->exittension = data; - Report("BtsrReadParamsFromEeprom",__FILE__,__LINE__,(int)(BtsrPrameters->feedingtension*1000),RpWarning,(int)(BtsrPrameters->tensionerror*1000),(int)(BtsrPrameters->exittension*1000)); - Report("BtsrReadParamsFromEeprom",__FILE__,__LINE__,(int)(BtsrPrameters->btsrapplicationtype),RpWarning,(int)(BtsrPrameters->btsryarntype),(int)(BtsrPrameters->threadlengthfactor*1000)); + Report("BtsrReadParamsFromEeprom",__FILE__,(int)(BtsrPrameters->feedingtension*1000),(int)(BtsrPrameters->tensionerror*1000),RpWarning,(int)(BtsrPrameters->exittension*1000), 0); + Report("BtsrReadParamsFromEeprom",__FILE__,BtsrPrameters->btsrapplicationtype,BtsrPrameters->btsryarntype,RpWarning,(int)(BtsrPrameters->threadlengthfactor*1000), 0); return status; } -- cgit v1.3.1 From e8578185b85e3957adc627c414d9ab3cc9bda463 Mon Sep 17 00:00:00 2001 From: Shlomo Hecht Date: Tue, 5 Jan 2021 22:44:30 +0200 Subject: smal fixes from 1.5.3.6 --- Software/Embedded_SW/Embedded/Modules/General/MachineStatus.c | 2 +- Software/Embedded_SW/Embedded/Modules/Waste/Waste_maint.c | 4 ++-- .../Embedded_SW/Embedded/StateMachines/Initialization/InitSequence.c | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) (limited to 'Software/Embedded_SW') diff --git a/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.c b/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.c index e6c596d15..5bce161ae 100644 --- a/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.c +++ b/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.c @@ -263,7 +263,7 @@ uint32_t CartridgeStateUpdate(CartridgeSlot Slot, int32_t index, CartridgeState CartridgeStatus.has_state = true; CartridgeStatus.state = State; CartridgeStatus.cartridge = &CartData; - if (percentage>1) + //if (percentage>0.1) { CartridgeStatus.has_progresspercentage = true; CartridgeStatus.progresspercentage = percentage; diff --git a/Software/Embedded_SW/Embedded/Modules/Waste/Waste_maint.c b/Software/Embedded_SW/Embedded/Modules/Waste/Waste_maint.c index b8f7024fb..374977065 100644 --- a/Software/Embedded_SW/Embedded/Modules/Waste/Waste_maint.c +++ b/Software/Embedded_SW/Embedded/Modules/Waste/Waste_maint.c @@ -274,9 +274,9 @@ bool RdWasteTankOverFlowSensor() return 0; } -int WHS_GetCartridgeFillPercent() +float WHS_GetCartridgeFillPercent() { - return (((wasteLevel - wasteLevelEmpty) * 100) / WASTE_CARTRIDGE_SIZE); + return (100 - (((wasteLevel - wasteLevelEmpty) * 100) / WASTE_CARTRIDGE_SIZE)); } int WHS_GetCartridgeFill() { diff --git a/Software/Embedded_SW/Embedded/StateMachines/Initialization/InitSequence.c b/Software/Embedded_SW/Embedded/StateMachines/Initialization/InitSequence.c index 06dac8fdc..a5440db21 100644 --- a/Software/Embedded_SW/Embedded/StateMachines/Initialization/InitSequence.c +++ b/Software/Embedded_SW/Embedded/StateMachines/Initialization/InitSequence.c @@ -784,13 +784,13 @@ uint32_t PowerUpUpdate(MACHINE_STATE_STAGES_ENUM stage) response.state = POWER_UP_STATE__BuiltInTest; response.progresspercentage = 15.0; response.message = "Built In Test"; + response.message = "Built In Test failed"; + Error = ERROR_CODE__POWER_UP_BUILT_IN_FAILED; break; case MACHINE_STATE_BUILT_IN_TEST: response.state = POWER_UP_STATE__BuiltInTest; response.progresspercentage = 15.0; response.message = "Built In Test"; - //response.message = "Built In Test failed"; - //Error = ERROR_CODE__POWER_UP_BUILT_IN_FAILED; break; case MACHINE_STATE_INITIAL_BLOWER_ACTIVATION: response.state = POWER_UP_STATE__InitialBlowerActivation; -- cgit v1.3.1 From b9a85d61fcb3186754d24ea38268143fd3f47f4c Mon Sep 17 00:00:00 2001 From: Shlomo Hecht Date: Wed, 6 Jan 2021 13:58:41 +0200 Subject: fix bug in pre-run PBU, and in dispensers 25%. 50% indications --- Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c | 4 ++-- Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c | 6 +++++- .../Embedded/StateMachines/Initialization/InitSequence.c | 5 ++--- Software/Embedded_SW/Embedded/StateMachines/Printing/JobSTM.c | 4 ++-- 4 files changed, 11 insertions(+), 8 deletions(-) (limited to 'Software/Embedded_SW') diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c index 404fbf3de..99d5faf07 100644 --- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c +++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_dispenser.c @@ -400,12 +400,12 @@ void IDS_Dispenser_Content_Calculation (char DispenserId) { ReportWithPackageFilter(IDSFilter,"IDS_Dispenser_Data ",__FILE__,DispenserId,(int)IDS_Dispenser_Data[DispenserId].consumedinnanolitter,RpWarning,(int)CurrentDispenserSpeed[DispenserId],0); } - if ((Dispenser_Id_to_LS_50_Id[DispenserId])&&(DispenserDirectionFlag_50[DispenserId]==false)) + if ((Dispenser_Id_to_LS_50_Id[DispenserId] == LIMIT)&&(DispenserDirectionFlag_50[DispenserId]==false)) { DispenserDirectionFlag_50[DispenserId]= true; ReportWithPackageFilter(IDSFilter,"Dispenser at 50% ",__FILE__,DispenserId,(int)IDS_Dispenser_Data[DispenserId].consumedinnanolitter,RpWarning,(int)65000000,0); } - if ((Dispenser_Id_to_LS_25_Id[DispenserId])&&(DispenserDirectionFlag_25[DispenserId]==false)) + if ((Dispenser_Id_to_LS_25_Id[DispenserId] == LIMIT)&&(DispenserDirectionFlag_25[DispenserId]==false)) { DispenserDirectionFlag_25[DispenserId]= true; ReportWithPackageFilter(IDSFilter,"Dispenser at 25% ",__FILE__,DispenserId,(int)IDS_Dispenser_Data[DispenserId].consumedinnanolitter,RpWarning,(int)32500000,0); diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c index 504b3bb0c..97c37cc4f 100644 --- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c +++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c @@ -623,7 +623,8 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl #ifdef DISPENSER_PBU_PRE_RUN if ((pressure>3.0)&&(DispenserPBUReady[i]==false)) { - Control3WayValvesWithCallback ((Valves_t)i, MidTank_Dispenser, NULL); //direction: MidTank_Dispenser or Dispenser_Mixer + Control3WayValvesWithCallback ((Valves_t)i, Dispenser_Mixer, NULL); //direction: MidTank_Dispenser or Dispenser_Mixer + ReportWithPackageFilter(IDSFilter,"Opening Dispenser valve for PBU",__FILE__,__LINE__,i,RpWarning,(int)(pressure*100),0); DispenserPBUReady[i] = true; } #endif @@ -654,6 +655,8 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl { NumofReadyDispensers++; DispenserReady[i] = true; + ReportWithPackageFilter(IDSFilter,"Dispenser ready PBU",__FILE__,__LINE__,i,RpWarning,(int)NumofReadyDispensers,0); + } #else NumofReadyDispensers++; @@ -957,6 +960,7 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl if (pressure<3.0) { Control3WayValvesWithCallback ((Valves_t)i, MidTank_Dispenser, NULL); //direction: MidTank_Dispenser or Dispenser_Mixer + ReportWithPackageFilter(IDSFilter,"Closing Dispenser valve for PBU",__FILE__,__LINE__,i,RpWarning,(int)(pressure*100),0); DispenserPBUReady[i] = false; } else diff --git a/Software/Embedded_SW/Embedded/StateMachines/Initialization/InitSequence.c b/Software/Embedded_SW/Embedded/StateMachines/Initialization/InitSequence.c index 06dac8fdc..7f1b9ffb5 100644 --- a/Software/Embedded_SW/Embedded/StateMachines/Initialization/InitSequence.c +++ b/Software/Embedded_SW/Embedded/StateMachines/Initialization/InitSequence.c @@ -783,14 +783,13 @@ uint32_t PowerUpUpdate(MACHINE_STATE_STAGES_ENUM stage) case MACHINE_STATE_BUILT_IN_FAILED: response.state = POWER_UP_STATE__BuiltInTest; response.progresspercentage = 15.0; - response.message = "Built In Test"; + response.message = "Built In Test failed"; + Error = ERROR_CODE__POWER_UP_BUILT_IN_FAILED; break; case MACHINE_STATE_BUILT_IN_TEST: response.state = POWER_UP_STATE__BuiltInTest; response.progresspercentage = 15.0; response.message = "Built In Test"; - //response.message = "Built In Test failed"; - //Error = ERROR_CODE__POWER_UP_BUILT_IN_FAILED; break; case MACHINE_STATE_INITIAL_BLOWER_ACTIVATION: response.state = POWER_UP_STATE__InitialBlowerActivation; diff --git a/Software/Embedded_SW/Embedded/StateMachines/Printing/JobSTM.c b/Software/Embedded_SW/Embedded/StateMachines/Printing/JobSTM.c index 9f5151117..ab246dbc3 100644 --- a/Software/Embedded_SW/Embedded/StateMachines/Printing/JobSTM.c +++ b/Software/Embedded_SW/Embedded/StateMachines/Printing/JobSTM.c @@ -1197,10 +1197,10 @@ void SendJobProgress(double ProcessedLength, int SegmentId, bool done, char *Mes if ((heaterRatio>0.99)&&(dispenserRatio>0.99)) { wfcf_count+=1.00; - Report("prepare_progress wfcf" ,__FILE__,(int)(wfcf_count),(int)(heaterRatio*100),RpWarning,(int)(dispenserRatio*100),0); + //Report("prepare_progress wfcf" ,__FILE__,(int)(wfcf_count),(int)(heaterRatio*100),RpWarning,(int)(dispenserRatio*100),0); } prepare_progress = (0.9*heaterRatio)+(0.08*dispenserRatio) + (0.02*wfcf_count/25.0); - Report("prepare_progress" ,__FILE__,(int)(prepare_progress*1000),(int)(heaterRatio*1000),RpWarning,(int)(dispenserRatio*1000),0); + //Report("prepare_progress" ,__FILE__,(int)(prepare_progress*1000),(int)(heaterRatio*1000),RpWarning,(int)(dispenserRatio*1000),0); } else wfcf_count = 0; -- cgit v1.3.1