aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Modules/Thread/Thread.h
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules/Thread/Thread.h')
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Thread/Thread.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/Thread/Thread.h b/Software/Embedded_SW/Embedded/Modules/Thread/Thread.h
index 9c42dde01..8c6164219 100644
--- a/Software/Embedded_SW/Embedded/Modules/Thread/Thread.h
+++ b/Software/Embedded_SW/Embedded/Modules/Thread/Thread.h
@@ -13,6 +13,7 @@
#include "PMR/Printing/JobSpoolType.pb-c.h"
#include "drivers/Motors/Motor.h"
+#include "../control/pidalgo.h"
#include "thread_ex.h"
@@ -26,6 +27,18 @@ typedef struct
double NumberOfRotationPerPassage; // how many rotations per spool passage
double diameter;
}InternalWinderConfigStruc;
+typedef struct
+{
+ bool m_isEnabled;
+ int32_t m_SetParam;
+ float m_mesuredParam;
+ float m_preError;
+ float m_integral;
+ float m_calculatedError;
+ bool m_isReady;
+ uint32_t m_ingnoreValue;
+ PID_Config_Params m_params;
+}MotorControlConfig_t;
#define MAX_THREAD_FEED_MOTORS WINDER_MOTOR+1
@@ -50,6 +63,7 @@ extern int32_t MotorSamples[MAX_THREAD_MOTORS_NUM][MAX_CONTROL_SAMPLES];
extern int MotorSamplePointer[MAX_THREAD_MOTORS_NUM];
extern double NormalizedErrorCoEfficient[MAX_THREAD_MOTORS_NUM];
extern int DancerStopActivityLimit[MAX_THREAD_MOTORS_NUM];
+extern MotorControlConfig_t MotorControlConfig[MAX_THREAD_MOTORS_NUM];
uint32_t InternalWinderConfigMessage(HardwareWinder* request);