From 5baa36de16ba1e55cd8dd735e8e83caaf56a358e Mon Sep 17 00:00:00 2001 From: Shlomo Hecht Date: Mon, 1 Jun 2020 10:48:22 +0300 Subject: fix head identification; remove adc interrupt --- Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'Software/Embedded_SW/Embedded/Modules/Control') diff --git a/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c b/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c index d334c9001..9609e445e 100644 --- a/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c +++ b/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c @@ -626,6 +626,10 @@ uint32_t MillisecLowLoop(uint32_t tick) Trigger_HeaterWriting(); } + if (m20msecTick) + { + ADC0SS0Handler(); + } if(Fifty_msTick) { WHS_Read_GPI_Registers(); -- cgit v1.3.1 From 582972578fa49e231d567682e6e61f642f760590 Mon Sep 17 00:00:00 2001 From: Shlomo Hecht Date: Tue, 2 Jun 2020 18:09:38 +0300 Subject: blower control improved. diagnostics for system tests --- .../WHS_Card/D_Max5805_ADC_Blower/WHS_Blower.c | 24 +++++++-- .../Embedded/Modules/Control/MillisecTask.c | 4 ++ .../Embedded/Modules/Control/MillisecTask.h | 1 + .../Embedded/Modules/Diagnostics/Diagnostics.c | 63 ++++++++++++++-------- .../Embedded_SW/Embedded/Modules/IDS/IDS_print.c | 2 +- .../Modules/Stubs_Handler/Stub_TempSensor.c | 1 + 6 files changed, 67 insertions(+), 28 deletions(-) (limited to 'Software/Embedded_SW/Embedded/Modules/Control') diff --git a/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/D_Max5805_ADC_Blower/WHS_Blower.c b/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/D_Max5805_ADC_Blower/WHS_Blower.c index 3341557c6..4dc30752d 100644 --- a/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/D_Max5805_ADC_Blower/WHS_Blower.c +++ b/Software/Embedded_SW/Embedded/Drivers/I2C_Communication/WHS_Card/D_Max5805_ADC_Blower/WHS_Blower.c @@ -222,6 +222,7 @@ double WHS_Blower_Avarege(WHS_Flow_Meter ORF_id) Q_temp = get_Q(ORF_id); if (fabs(Q_temp - average_Q) > 1.75) { + Report("------------ set_new_Q_average :-----------------", __FILE__,__LINE__, (int)(Q_temp*100), RpMessage, (int)(average_Q*100), 0); set_new_Q_average(ORF_id, Q_temp); average_Q = Q_temp; } @@ -256,13 +257,15 @@ void set_new_Q_average(WHS_Flow_Meter ORF_id,double Q_temp) break; } } - +//char whs_str[150]; double calc_Q_average(WHS_Flow_Meter ORF_id,double Q_temp) { static uint8_t i_head = 0 ; static uint8_t i_drier = 0 ; double sum_orifice_Q = 0.0; double Q_average = 0.0; + //double Q_sum = 0.0,t_avg; + //int ii; switch (ORF_id) { @@ -280,6 +283,17 @@ double calc_Q_average(WHS_Flow_Meter ORF_id,double Q_temp) sum_orifice_Q += average_orf1_Q_buff[i_head]; average_Q_orifice1 = sum_orifice_Q /ORF_BUFF_SIZE; Q_average = average_Q_orifice1; + /*if (i_head == 0) + { + for (ii = 0; ii= Diagnostic_Extended_Mode) + { + DiagnosticsMonitor.n_dispenser1pressure = temp; + DiagnosticsMonitor.dispenser1pressure = dispenserspressure[0]; + DiagnosticsMonitor.n_dispenser2pressure = temp; + DiagnosticsMonitor.dispenser2pressure = dispenserspressure[1]; + DiagnosticsMonitor.n_dispenser3pressure = temp; + DiagnosticsMonitor.dispenser3pressure = dispenserspressure[2]; + DiagnosticsMonitor.n_dispenser4pressure = temp; + DiagnosticsMonitor.dispenser4pressure = dispenserspressure[3]; + DiagnosticsMonitor.n_dispenser5pressure = temp; + DiagnosticsMonitor.dispenser5pressure = dispenserspressure[4]; + DiagnosticsMonitor.n_dispenser6pressure = temp; + DiagnosticsMonitor.dispenser6pressure = dispenserspressure[5]; + DiagnosticsMonitor.n_dispenser7pressure = temp; + DiagnosticsMonitor.dispenser7pressure = dispenserspressure[6]; + DiagnosticsMonitor.n_dispenser8pressure = temp; + DiagnosticsMonitor.dispenser8pressure = dispenserspressure[7]; + + } DiagnosticsMonitor.n_midtank1level = 1; diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c index f34e56470..1c43872cc 100644 --- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c +++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c @@ -710,7 +710,7 @@ uint32_t InactiveDispenserHome(uint32_t DispenserId, uint32_t ReadValue) JobTicket* JobTicket = JobDetails; JobEndSequence = false; - if ((pressurebuildup>0.1)&&(pressurebuildup<1.5)) + if ((pressurebuildup>0.1)&&(pressurebuildup<2.5)) { Report("Setting pressure from RML feeder tension",__FILE__,__LINE__,(int)(pressurebuildup*100),RpWarning,(int)(DispenserPreparePressure*100),0); DispenserPreparePressure = pressurebuildup; diff --git a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Stub_TempSensor.c b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Stub_TempSensor.c index f4384ab94..fe1118f15 100644 --- a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Stub_TempSensor.c +++ b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Stub_TempSensor.c @@ -149,6 +149,7 @@ void Stub_TempSensorRequest(MessageContainer* requestContainer) response.temperature_c_mult_by_100 = TempSensorResponse[request->stemp_sensor_id].Temperature_C_mult_by_100; } + response.temperature_c_mult_by_100 = MillisecGetTemperatures(request->stemp_sensor_id); /* -- cgit v1.3.1