diff options
| author | Shlomo Hecht <shlomo@twine-s.com> | 2018-07-15 14:32:42 +0300 |
|---|---|---|
| committer | Shlomo Hecht <shlomo@twine-s.com> | 2018-07-15 14:32:42 +0300 |
| commit | 3a674ea0ef5c71843bd876da3bb5e0b0f535110e (patch) | |
| tree | 069f6411a4145dfa9ccfe0aa2f9a8758c92a8b8e /Software/Embedded_SW/Embedded/Modules/Thread | |
| parent | cc425e019d3a7d3494ac15ffe213b6b47b1c64ed (diff) | |
| download | Tango-3a674ea0ef5c71843bd876da3bb5e0b0f535110e.tar.gz Tango-3a674ea0ef5c71843bd876da3bb5e0b0f535110e.zip | |
idle task priorities upped. distance to spool added. some job related bugs
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules/Thread')
3 files changed, 19 insertions, 17 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c index 2bd03f406..e40be86a0 100644 --- a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c +++ b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_Winder.c @@ -11,9 +11,9 @@ #include "StateMachines/Printing/PrintingSTM.h" #include "Modules/Control/Control.h" -#include "Common/report/report.h" +#include "modules/General/process.h" -#include "modules/general/process.h" +#include "Common/report/report.h" #include "drivers/FPGA/FPGA.h" @@ -226,13 +226,13 @@ uint32_t WinderPresegmentReady(uint32_t deviceID, uint32_t ReadValue) uint32_t Winder_Presegment(void *JobDetails, uint32_t SegmentId) { JobTicket* JobTicket = JobDetails; - float screw_speed = 0; float RotationsPerSecond; + int process_speed = dyeingspeed; if (dyeingspeed == 0) { - LOG_ERROR (-1," unknown job speed"); + LOG_ERROR (dyeingspeed," job speed zero"); return ERROR; } diff --git a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_ex.h b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_ex.h index 4a7f1144c..56e88204f 100644 --- a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_ex.h +++ b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_ex.h @@ -17,6 +17,7 @@ uint32_t InternalWindingConfigMessage(JobSpool* request); uint32_t ThreadPrepareState(void *JobDetails); uint32_t ThreadPreSegmentState(void *JobDetails); uint32_t ThreadSegmentState(void *JobDetails, int SegmentId); +uint32_t ThreadDistanceToSpoolState(void); uint32_t ThreadEndState(void *JobDetails); uint32_t ThreadInitialTestStub(); diff --git a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c index 29e2cd3f6..fd86f0973 100644 --- a/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c +++ b/Software/Embedded_SW/Embedded/Modules/Thread/Thread_print.c @@ -26,7 +26,8 @@ #include "drivers/Motors/Motor.h" #include "drivers/FPGA/FPGA_GPIO/FPGA_GPIO.h" #include "modules/heaters/heaters.h" -#include "modules/general/process.h" +#include "modules/General/process.h" + ////////////////////////////////State machine operation//////////////////////////////////// //the state machine operation is used to operate in runtime correct profile flow execution //by recieved esign flow of the user from the UI @@ -292,7 +293,7 @@ uint32_t ThreadControlCBFunction(uint32_t IfIndex, uint32_t ReadValue) int DancerId; static int pooler_counter = 0; int32_t TranslatedReadValue, avreageSampleValue = 0; - double tempcalcspeed = 0; + //double tempcalcspeed = 0; uint32_t calculated_speed; double NormalizedError; char Message[60]; @@ -546,18 +547,10 @@ uint32_t ThreadPreSegmentState(void *JobDetails) float process_speed = dyeingspeed; if (dyeingspeed == 0) { - LOG_ERROR (-1," unknown job speed"); + LOG_ERROR (dyeingspeed," job speed zero"); return ERROR; } - /*if (JobTicket->processparameters) - if (JobTicket->processparameters->dyeingspeed) - process_speed= JobTicket->processparameters->dyeingspeed; - else - { - LOG_ERROR (-1," unknown job speed"); - return ERROR; - } - */ + SetOriginMotorSpeed(process_speed); ThreadControlActive = true; // set the new speed in the dryer motor to the speed of the new segment @@ -606,7 +599,7 @@ void ThreadSegmentEnded(void) } void ThreadDistanceToSpoolEnded(void) { - + DistanceToSpoolReady(Module_Thread,ModuleDone); } double seglength = 0.0; //******************************************************************************************************************** @@ -620,6 +613,14 @@ uint32_t ThreadSegmentState(void *JobDetails, int SegmentId) } //******************************************************************************************************************** +uint32_t ThreadDistanceToSpoolState(void ) +{ + seglength = dryerbufferlength; + ThreadUpdateProcessLength (seglength,(void *)ThreadDistanceToSpoolEnded); + return OK; +} + +//******************************************************************************************************************** uint32_t ThreadEndState(void *JobDetails) { int Motor_i; |
