diff options
| author | Shlomo Hecht <shlomo@twine-s.com> | 2020-09-06 15:24:39 +0300 |
|---|---|---|
| committer | Shlomo Hecht <shlomo@twine-s.com> | 2020-09-06 15:24:39 +0300 |
| commit | dc3e9a8e3936f24d01d85652ff2fb9b8c320261c (patch) | |
| tree | d58239e55ba1eaf0a27788c0d20f004c72fa6355 /Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c | |
| parent | b68b34d6247175678f76cc40bb60019685740dd9 (diff) | |
| download | Tango-dc3e9a8e3936f24d01d85652ff2fb9b8c320261c.tar.gz Tango-dc3e9a8e3936f24d01d85652ff2fb9b8c320261c.zip | |
some fixes in dispenser handling, implement setheaterstate, procedures and stubs updated
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c')
| -rw-r--r-- | Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c index 327d80eb1..d40f3c00b 100644 --- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c +++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c @@ -452,10 +452,12 @@ c. Go to step 2.a x Segment.BrushStopsCount. uint32_t DispenserPrepareControlId = 0xFF; int NumOfActiveDispensers = 0; int DispenserBuildTimeCounter = 0; -#define DISPENSER_UP_MOVEMENT + double TargetNumberOfStepsPreRun,MaximalPressurePreRun; int DispenserTotalPrepareSteps[MAX_SYSTEM_DISPENSERS]; bool DispenserLastMovementDown[MAX_SYSTEM_DISPENSERS]; -#define PRESSURE_READ_TIME_GAP 100 + + #define PRESSURE_READ_TIME_GAP 100 + uint32_t InactiveDispenserHome(uint32_t DispenserId, uint32_t ReadValue) { if (AutoHoming_Config >= AutoHoming_JobEnd_PowerOn_off) @@ -582,10 +584,10 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl { DispenserTotalPrepareSteps[i]+=(CurrentDispenserSpeed[i]*PRESSURE_READ_TIME_GAP/eOneSecond); HW_Motor_Id = DispenserIdToMotorId[i]; -//#ifdef DISPENSER_UP_MOVEMENT - if (DispenserTotalPrepareSteps[i]<InitialDispenserTimeout) + + if (DispenserTotalPrepareSteps[i]<TargetNumberOfStepsPreRun) { - AdjustDispenserSpeedToPressure(i,InitialDispenserPressure,pressure); + AdjustDispenserSpeedToPressure(i,MaximalPressurePreRun,pressure); } else if (pressure > DispenserPreparePressure*1.2) { @@ -597,7 +599,6 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl if (AdjustDispenserSpeedToPressure(i,DispenserPreparePressure,pressure) == true) NumofReadyDispensers++; } -//#endif ReportWithPackageFilter(IDSFilter,"IDS prepare",__FILE__,i,(int)DispenserTotalPrepareSteps[i],RpWarning,(int)(CurrentDispenserSpeed[i]*100),0); } } @@ -758,7 +759,7 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl JobTicket* JobTicket = JobDetails; JobEndSequence = false; - if ((pressurebuildup>0.1)&&(pressurebuildup<4.0)) + if ((pressurebuildup>0.1)&&(pressurebuildup<4.5)) { ReportWithPackageFilter(IDSFilter,"Setting pressure from RML feeder tension",__FILE__,__LINE__,(int)(pressurebuildup*100),RpWarning,(int)(DispenserPreparePressure*100),0); DispenserPreparePressure = pressurebuildup; @@ -778,6 +779,8 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl CleaningDispenserSpeed = 0; EnableCleaning = false; } + TargetNumberOfStepsPreRun = InitialDispenserTimeout; + MaximalPressurePreRun = InitialDispenserPressure; for (Motor_i = 0;Motor_i < MAX_SYSTEM_DISPENSERS;Motor_i++) { @@ -1840,7 +1843,7 @@ uint32_t IDSSegmentState(void *SegmentDetails, int SegmentId) DispenserPreSegmentControlId = 0xFF; } - IDS_Dispenser_Store_Data (); + //IDS_Dispenser_Store_Data (); for ( Dispenser_i = 0;Dispenser_i < MAX_SYSTEM_DISPENSERS;Dispenser_i++) { |
