aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded
diff options
context:
space:
mode:
authorShlomo Hecht <shlomo@twine-s.com>2019-09-03 14:35:49 +0300
committerShlomo Hecht <shlomo@twine-s.com>2019-09-03 14:35:49 +0300
commitb8aef0537ad419b20efba682bfd06caeb53fe444 (patch)
tree91867a4df1b28c9af879083a6c3e3cd1a245f2d4 /Software/Embedded_SW/Embedded
parent62905aaa550ea584f29feae2ba35fc6df6c42c8f (diff)
downloadTango-b8aef0537ad419b20efba682bfd06caeb53fe444.tar.gz
Tango-b8aef0537ad419b20efba682bfd06caeb53fe444.zip
improve winding, logs, pressure handling
Diffstat (limited to 'Software/Embedded_SW/Embedded')
-rw-r--r--Software/Embedded_SW/Embedded/Drivers/ADC_Sampling/ADC_VOC_Sensor.c2
-rw-r--r--Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c16
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c2
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Waste/Waste_init.c4
-rw-r--r--Software/Embedded_SW/Embedded/StateMachines/Printing/PrintingSTM.c3
5 files changed, 20 insertions, 7 deletions
diff --git a/Software/Embedded_SW/Embedded/Drivers/ADC_Sampling/ADC_VOC_Sensor.c b/Software/Embedded_SW/Embedded/Drivers/ADC_Sampling/ADC_VOC_Sensor.c
index 7eccf5c58..71a7ef034 100644
--- a/Software/Embedded_SW/Embedded/Drivers/ADC_Sampling/ADC_VOC_Sensor.c
+++ b/Software/Embedded_SW/Embedded/Drivers/ADC_Sampling/ADC_VOC_Sensor.c
@@ -23,7 +23,7 @@
uint16_t VOC_Index = 0;
uint8_t Gas_PPM[MAX_VOC_SAMPLES] = {0};
-uint32_t VOC_Slope=0,VOC_AverageLimit=0, VOC_Slope_Time=0;
+uint32_t VOC_Slope=2,VOC_AverageLimit=0, VOC_Slope_Time=10;
bool VOC_TimeAlarm = false,VOC_SlopeAlarm = false;
void VOCAlarmsInit(void)
diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c
index 746182def..70c86d843 100644
--- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c
+++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c
@@ -979,6 +979,12 @@ uint32_t IDS_Cleaning_Stop_Cleaning_Solution (callback_fptr callback);
//IDS_Cleaning_Center_And_Stop_Rockers (int timeout,callback_fptr callback);
}
}
+ if (FileBrushStop == NULL)
+ {
+ //cleaning
+ return OK;
+ }
+
if ((InterSegmentStartWFCFDispensers > 12000)&&(InterSegmentStartWFCFDispensers == (InterSegmentStepsCount+12000)))
{
//start prepare 4 seconds before wcf
@@ -1305,7 +1311,7 @@ void IDS_StartBrushStop(int n_dispensers, JobDispenser** Dispensers)
//Control3WayValvesWithCallback (DispenserId, Dispenser_Mixer, NULL); //direction: MidTank_Dispenser or Dispenser_Mixer
MotorSetSpeed(HW_Motor_Id, segmentfirst_speed);
CurrentDispenserSpeed[DispenserId] = segmentfirst_speed;
- usnprintf(IdMessage, 80,
+ usnprintf(IdsMessage, 80,
"Dispenser %d nl/sec %d nl/pulse %d speed %d steps %d/%d",
DispenserId,
(int) Dispensers[Dispenser_i]->nanolitterpersecond,
@@ -1321,7 +1327,7 @@ void IDS_StartBrushStop(int n_dispensers, JobDispenser** Dispensers)
//IDS_Dispenser_Close_Valve_And_Stop_Motor(DispenserId,NULL);*/
MotorStop(HW_Motor_Id, Hard_Hiz);
CurrentDispenserSpeed[DispenserId] = 0;
- Report("inActive dispenser stopped", __FILE__, __LINE__, DispenserId, RpWarning, segmentfirst_speed, 0);
+ //Report("inActive dispenser stopped", __FILE__, __LINE__, DispenserId, RpWarning, segmentfirst_speed, 0);
}
}
}
@@ -1463,10 +1469,14 @@ uint32_t IDSSegmentState(void *SegmentDetails, int SegmentId)
DispenserDistanceToSpoolReady[Dispenser_i] = false;
MotorStop(DispenserIdToMotorId[Dispenser_i],Hard_Hiz);
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);
}
//cleaning
+ if (FileBrushStop)
+ FreeBrushStopFileData(FileBrushStop);
+ FileBrushStop = NULL;
lInterSegmentLength = (dryerbufferCentimeters*1000/dyeingspeed);
lInterSegmentLength-=(lInterSegmentLength%100); //round to a 100 multiplication
@@ -1523,6 +1533,8 @@ uint32_t IDSSegmentState(void *SegmentDetails, int SegmentId)
{
MotorStop(DispenserIdToMotorId[Dispenser_i],Hard_Hiz);
Control3WayValvesWithCallback (Dispenser_i, MidTank_Dispenser, IDS_Valve_EndValveReady); //direction: MidTank_Dispenser or Dispenser_Mixer
+ CurrentDispenserSpeed[Dispenser_i] = 0;
+
//IDS_Dispenser_Close_Valve_And_Stop_Motor(Dispenser_i,IDS_Valve_EndValveReady);
}
else
diff --git a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c
index e01d12a05..20045e5fb 100644
--- a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c
+++ b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c
@@ -322,7 +322,7 @@ uint32_t Screw100msecDirectionChange(uint32_t deviceID, uint32_t BusyFlag)
#ifdef READ_SCREW_ENCODER
int WinderRun;
WinderRun = abs(ScrewLocationRun[1] - ScrewLocationRun[0]);
- if ((WinderRun < 50000)&&(Add100 == false))
+ if /*((WinderRun < 50000)&&(Add100 == false))*/(Add100 == false)
{
WinderRunSum+=WinderRun;
WinderRunSamples++;
diff --git a/Software/Embedded_SW/Embedded/Modules/Waste/Waste_init.c b/Software/Embedded_SW/Embedded/Modules/Waste/Waste_init.c
index 62b8288bf..b4bf61219 100644
--- a/Software/Embedded_SW/Embedded/Modules/Waste/Waste_init.c
+++ b/Software/Embedded_SW/Embedded/Modules/Waste/Waste_init.c
@@ -1074,10 +1074,10 @@ WHS_sensor CartridgeCoverCallBackFunction()
{
REPORT_MSG(parameter," ------------ Mid-tank Filling : Close cartridge cover ----------------- ");
}
- else if(WHS_info.WHS_sensors.cartridge_cover == WHS_CartridgeCoverOPEN)
+ /*else if(WHS_info.WHS_sensors.cartridge_cover == WHS_CartridgeCoverOPEN)
{
REPORT_MSG(parameter," ------------ Mid-tank Filling : Cartridge door open ----------------- ");
- }
+ }*/
return ret;
}
diff --git a/Software/Embedded_SW/Embedded/StateMachines/Printing/PrintingSTM.c b/Software/Embedded_SW/Embedded/StateMachines/Printing/PrintingSTM.c
index 8606d68d3..876d50da8 100644
--- a/Software/Embedded_SW/Embedded/StateMachines/Printing/PrintingSTM.c
+++ b/Software/Embedded_SW/Embedded/StateMachines/Printing/PrintingSTM.c
@@ -266,7 +266,7 @@ JobDescriptionFileBrushStop *GetNextBrushStopFromJobFile()
}
void FreeBrushStopFileData(JobDescriptionFileBrushStop *BrushStop)
{
- REPORT_MSG(BrushStop->index,"Free BrushStop file Read Index");
+ //REPORT_MSG(BrushStop->index,"Free BrushStop file Read Index");
if (BrushStop)
job_description_file_brush_stop__free_unpacked (BrushStop,NULL);
BrushStop = NULL;
@@ -788,6 +788,7 @@ void PrintSTMMsgHandler(void * msg)
EndState(CurrentJob, "Job Distance t Spool Failed");
break;
case PrintSystemFailure:
+ Report("PrintSystemFailure - Job aborted",__FILE__,__LINE__, SegmentId,RpMessage,n_segments,0);
EndState(CurrentJob, Message->messageData);
break;
default: