diff options
| author | Shlomo Hecht <shlomo@twine-s.com> | 2020-10-09 16:46:20 +0300 |
|---|---|---|
| committer | Shlomo Hecht <shlomo@twine-s.com> | 2020-10-09 16:46:20 +0300 |
| commit | 07276289ff121853256bb894bc3040c4f5bfb2b0 (patch) | |
| tree | 369835914beffe3330a3f16150e8a6ce70f10b46 /Software/Embedded_SW/Embedded/Modules/General | |
| parent | 67bfd778a15597bb213c94fa5c2f5495fafd7c66 (diff) | |
| download | Tango-07276289ff121853256bb894bc3040c4f5bfb2b0.tar.gz Tango-07276289ff121853256bb894bc3040c4f5bfb2b0.zip | |
ifs filling / waste emptying interface
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules/General')
| -rw-r--r-- | Software/Embedded_SW/Embedded/Modules/General/MachineStatus.c | 51 |
1 files changed, 48 insertions, 3 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.c b/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.c index 9297d3bb8..b9bcc1624 100644 --- a/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.c +++ b/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.c @@ -27,7 +27,9 @@ #include "StateMachines/Initialization/InitSequence.h" #include "Modules/General/MachineStatus.h" +#include "Modules/AlarmHandling/AlarmHandling.h" #include "Modules/Control/MillisecTask.h" +#include "modules/waste/waste_ex.h" #include "modules/ids/ids_ex.h" MachineState StoredMachineStatus = MACHINE_STATE__PowerUp; @@ -78,6 +80,7 @@ int MachineUpdateResponseFunc(void) int1valid = false; if((internaltemp2<=MINIMUM_HEATER_READ*100)||(MAXIMUM_HEATER_READ*100<=internaltemp2)) int2valid = false; + MachineStatus.has_overalltemperature = true; if ((int2valid == true)&&(int1valid == true)) { usetemp = (max(internaltemp1,internaltemp2))/100; @@ -89,17 +92,19 @@ int MachineUpdateResponseFunc(void) } else { - AlarmHandlingSetAlarm(EVENT_TYPE__TEMPERATURE_MEASUREMENT_ERROR, true); + //AlarmHandlingSetAlarm(EVENT_TYPE__TEMPERATURE_MEASUREMENT_ERROR, true); temp_measure_alarm = true; if ((int2valid == false)&&(int1valid == true)) usetemp = internaltemp1/100; else if ((int2valid == false)&&(int1valid == false)) + { + MachineStatus.has_overalltemperature = FALSE; usetemp = 0; + } else if ((int1valid == false)&&(int2valid == true)) usetemp = internaltemp2/100; } - MachineStatus.has_overalltemperature = true; if (FPGA_Read_limit_Switches(GPI_SW_SPOOL_EXISTS)==LIMIT) @@ -133,7 +138,47 @@ int MachineUpdateResponseFunc(void) } else return ERROR; - + MachineStatus.has_middlecartridgestate = true; + switch (cartGetState(WasteCartridge_middle)) + { + case CartridgeStateOUT: + MachineStatus.middlecartridgestate = WASTE_CARTRIDGE_STATE__CartAbsent; + break; + case CartridgeStateIN: + case CartridgeStateSELECTED: + MachineStatus.middlecartridgestate = WASTE_CARTRIDGE_STATE__CartEmpty; + break; + case CartridgeStateACTIVE: + MachineStatus.middlecartridgestate = WASTE_CARTRIDGE_STATE__CartFilling; + break; + case CartridgeStateFULL: + MachineStatus.middlecartridgestate = WASTE_CARTRIDGE_STATE__CartFull; + break; + default: + MachineStatus.middlecartridgestate = WASTE_CARTRIDGE_STATE__CartAbsent; + break; + } + MachineStatus.has_lowercartridgestate = true; + MachineStatus.lowercartridgestate = WASTE_CARTRIDGE_STATE__CartAbsent; + switch (cartGetState(WasteCartridge_lower)) + { + case CartridgeStateOUT: + MachineStatus.lowercartridgestate = WASTE_CARTRIDGE_STATE__CartAbsent; + break; + case CartridgeStateIN: + case CartridgeStateSELECTED: + MachineStatus.lowercartridgestate = WASTE_CARTRIDGE_STATE__CartEmpty; + break; + case CartridgeStateACTIVE: + MachineStatus.lowercartridgestate = WASTE_CARTRIDGE_STATE__CartFilling; + break; + case CartridgeStateFULL: + MachineStatus.lowercartridgestate = WASTE_CARTRIDGE_STATE__CartFull; + break; + default: + MachineStatus.lowercartridgestate = WASTE_CARTRIDGE_STATE__CartAbsent; + break; + } responseContainer = /*MachineUpdate*/createContainer(MESSAGE_TYPE__StartMachineStatusUpdateResponse, MachineUpdateToken, false, &response, &start_machine_status_update_response__pack, &start_machine_status_update_response__get_packed_size); |
