diff options
| author | Shlomo Hecht <shlomo@twine-s.com> | 2018-07-15 15:17:46 +0300 |
|---|---|---|
| committer | Shlomo Hecht <shlomo@twine-s.com> | 2018-07-15 15:17:46 +0300 |
| commit | 2cee68f95ca7cb2dd1ebad34fd80cc583a08c02e (patch) | |
| tree | 127b949cc836bd7d70bc1deeb8970383b63ae46d | |
| parent | 3a674ea0ef5c71843bd876da3bb5e0b0f535110e (diff) | |
| download | Tango-2cee68f95ca7cb2dd1ebad34fd80cc583a08c02e.tar.gz Tango-2cee68f95ca7cb2dd1ebad34fd80cc583a08c02e.zip | |
coordinate between heaters process and job progress (semaphors might be needed)
4 files changed, 47 insertions, 33 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c index 80df0c536..351fc3035 100644 --- a/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c +++ b/Software/Embedded_SW/Embedded/Modules/Heaters/Heaters_print.c @@ -320,6 +320,10 @@ bool HeaterCheckReady(void) void HeaterPrepareReady(void) { int i; + if (GetHeatersPrepareWaiting == false) + { + return; + } for (i=0;i<MAX_HEATERS_NUM;i++) { if (HeaterReady[i] == false) diff --git a/Software/Embedded_SW/Embedded/StateMachines/Printing/JobSTM.c b/Software/Embedded_SW/Embedded/StateMachines/Printing/JobSTM.c index 429d81f46..f135cec56 100644 --- a/Software/Embedded_SW/Embedded/StateMachines/Printing/JobSTM.c +++ b/Software/Embedded_SW/Embedded/StateMachines/Printing/JobSTM.c @@ -131,7 +131,15 @@ static ReturnCode ValidateState(void *JobDetails) return retcode; } +//******************************************************************************************************************** +bool GetHeatersPrepareWaiting(void) +{ + if (PrepareWaiting[Module_Heaters] == ModuleWaiting) + return true; + else + return false; +} //******************************************************************************************************************** static ReturnCode PrepareState(void *JobDetails) { @@ -194,6 +202,7 @@ uint32_t PrepareReady(int ModuleId, ModuleStateEnum result) if (PrepareWaiting[ModuleId] != ModuleWaiting) { LOG_ERROR (ModuleId, "Message from unrelated module!!"); + return ERROR; } PrepareWaiting[ModuleId] = result; diff --git a/Software/Embedded_SW/Embedded/StateMachines/Printing/PrintingSTM.h b/Software/Embedded_SW/Embedded/StateMachines/Printing/PrintingSTM.h index 8bdecbaa1..4d5c9ac6f 100644 --- a/Software/Embedded_SW/Embedded/StateMachines/Printing/PrintingSTM.h +++ b/Software/Embedded_SW/Embedded/StateMachines/Printing/PrintingSTM.h @@ -144,5 +144,6 @@ uint32_t DistanceToSpoolReady(int ModuleId, ModuleStateEnum result); uint32_t PrintingHWConfiguration(void *Configuration); uint32_t EndState(void *JobDetails, char *Message); +bool GetHeatersPrepareWaiting(void); #endif /* STATEMACHINES_PRINTSTM_H_ */ diff --git a/Software/PMR/Messages/Diagnostics/DiagnosticsMonitors.proto b/Software/PMR/Messages/Diagnostics/DiagnosticsMonitors.proto index 893f28a27..f64c16181 100644 --- a/Software/PMR/Messages/Diagnostics/DiagnosticsMonitors.proto +++ b/Software/PMR/Messages/Diagnostics/DiagnosticsMonitors.proto @@ -18,70 +18,70 @@ option java_package = "com.twine.tango.pmr.diagnostics"; message DiagnosticsMonitors { - //Dancer 1 (Min = 0, Max = 255, PPF = 10) + //Dancer 1 (Min = 0, Max = 16384, PPF = 100) repeated double Dancer1Angle = 1; - //Dancer 2 (Min = 0, Max = 1200, PPF = 1) + //Dancer 2 (Min = 0, Max = 16384, PPF = 100) repeated double Dancer2Angle = 2; - //Dancer 3 (Min = 0, Max = 1200, PPF = 1) + //Dancer 3 (Min = 0, Max = 16384, PPF = 100) repeated double Dancer3Angle = 3; - //Feeder Motor (Min = 0, Max = 100, PPF = 1) + //Feeder Motor (Min = 0, Max = 100000, PPF = 100) repeated double FeederMotorFrequency = 4; - //Dryer Motor (Min = 0, Max = 100, PPF = 1) + //Dryer Motor (Min = 0, Max = 100000, PPF = 100) repeated double DryerMotor = 5; - //Poller Motor (Min = 0, Max = 100, PPF = 1) + //Poller Motor (Min = 0, Max = 100000, PPF = 100) repeated double PollerMotor = 6; - //Winder Motor (Min = 0, Max = 100, PPF = 1) + //Winder Motor (Min = 0, Max = 100000, PPF = 100) repeated double WinderMotor = 7; - //Screw Motor (Min = 0, Max = 100, PPF = 1) + //Screw Motor (Min = 0, Max = 100000, PPF = 100) repeated double ScrewMotor = 8; - //Thread Speed (Min = 0, Max = 100, PPF = 1) + //Thread Speed (Min = 0, Max = 100, PPF = 100) repeated double ThreadSpeed = 9; - //Mixer (Min = 0, Max = 100, PPF = 1) + //Mixer (Min = 0, Max = 300, PPF = 10) repeated double MixerTemperature = 10; - //Head Zone 1 (Min = 0, Max = 100, PPF = 1) + //Head Zone 1 (Min = 0, Max = 300, PPF = 10) repeated double HeadZone1Temperature = 11; - //Head Zone 2 (Min = 0, Max = 100, PPF = 1) + //Head Zone 2 (Min = 0, Max = 300, PPF = 10) repeated double HeadZone2Temperature = 12; - //Head Zone 3 (Min = 0, Max = 100, PPF = 1) + //Head Zone 3 (Min = 0, Max = 100, PPF = 10) repeated double HeadZone3Temperature = 13; //Head Air Flow (Min = 0, Max = 100, PPF = 1) repeated double HeadAirFlow = 14; - //Feeder Tension (Min = 0, Max = 100, PPF = 1) + //Feeder Tension (Min = 0, Max = 100, PPF = 10) repeated double FeederTension = 15; - //Puller Tension (Min = 0, Max = 100, PPF = 1) + //Puller Tension (Min = 0, Max = 100, PPF = 10) repeated double PullerTension = 16; - //Dryer Zone 1 (Min = 0, Max = 100, PPF = 1) + //Dryer Zone 1 (Min = 0, Max = 300, PPF = 10) repeated double DryerZone1Temperature = 17; - //Dryer Zone 2 (Min = 0, Max = 100, PPF = 1) + //Dryer Zone 2 (Min = 0, Max = 300, PPF = 10) repeated double DryerZone2Temperature = 18; - //Dryer Zone 3 (Min = 0, Max = 100, PPF = 1) + //Dryer Zone 3 (Min = 0, Max = 300, PPF = 10) repeated double DryerZone3Temperature = 19; - //Dryer Air Flow (Min = 0, Max = 100, PPF = 1) + //Dryer Air Flow (Min = 0, Max = 100, PPF = 10) repeated double DryerAirFlow = 20; - //Winder Tension (Min = 0, Max = 100, PPF = 1) + //Winder Tension (Min = 0, Max = 100, PPF = 10) repeated double WinderTension = 21; - //Dispensers Motors (Min = 0, Max = 1080, PPF = 10) Channel Count = 8 + //Dispensers Motors (Min = 0, Max = 100000, PPF = 10) Channel Count = 8 repeated DoubleArray DispensersMotorsFrequency = 22; //Dispensers Angular Encoders (Min = 0, Max = 100, PPF = 1) Channel Count = 8 @@ -99,40 +99,40 @@ message DiagnosticsMonitors //Filter Delta Pressure (Min = 0, Max = 100, PPF = 1) repeated double FilterDeltaPressure = 27; - //Chiller Temperature (Min = 0, Max = 100, PPF = 1) + //Chiller Temperature (Min = 0, Max = 300, PPF = 10) repeated double ChillerTemperature = 28; - //Dispenser 1 Motor Frequency (Min = 0, Max = 1080, PPF = 10) + //Dispenser 1 Motor Frequency (Min = 0, Max = 100000, PPF = 100) repeated double Dispenser1MotorFrequency = 29; - //Dispenser 2 Motor Frequency (Min = 0, Max = 1080, PPF = 10) + //Dispenser 2 Motor Frequency (Min = 0, Max = 100000, PPF = 100) repeated double Dispenser2MotorFrequency = 30; - //Dispenser 3 Motor Frequency (Min = 0, Max = 1080, PPF = 10) + //Dispenser 3 Motor Frequency (Min = 0, Max = 100000, PPF = 100) repeated double Dispenser3MotorFrequency = 31; - //Dispenser 4 Motor Frequency (Min = 0, Max = 1080, PPF = 10) + //Dispenser 4 Motor Frequency (Min = 0, Max = 100000, PPF = 100) repeated double Dispenser4MotorFrequency = 32; - //Dispenser 5 Motor Frequency (Min = 0, Max = 1080, PPF = 10) + //Dispenser 5 Motor Frequency (Min = 0, Max = 100000, PPF = 100) repeated double Dispenser5MotorFrequency = 33; - //Dispenser 6 Motor Frequency (Min = 0, Max = 1080, PPF = 10) + //Dispenser 6 Motor Frequency (Min = 0, Max = 100000, PPF = 100) repeated double Dispenser6MotorFrequency = 34; - //Dispenser 7 Motor Frequency (Min = 0, Max = 1080, PPF = 10) + //Dispenser 7 Motor Frequency (Min = 0, Max = 100000, PPF = 100) repeated double Dispenser7MotorFrequency = 35; - //Dispenser 8 Motor Frequency (Min = 0, Max = 1080, PPF = 10) + //Dispenser 8 Motor Frequency (Min = 0, Max = 100000, PPF = 100) repeated double Dispenser8MotorFrequency = 36; - //Head Zone 4 (Min = 0, Max = 100, PPF = 1) + //Head Zone 4 (Min = 0, Max = 300, PPF = 10) repeated double HeadZone4Temperature = 37; - //Head Zone 5 (Min = 0, Max = 100, PPF = 1) + //Head Zone 5 (Min = 0, Max = 300, PPF = 10) repeated double HeadZone5Temperature = 38; - //Head Zone 6 (Min = 0, Max = 100, PPF = 1) + //Head Zone 6 (Min = 0, Max = 300, PPF = 10) repeated double HeadZone6Temperature = 39; } |
