aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Modules
diff options
context:
space:
mode:
authorShlomo Hecht <shlomo@twine-s.com>2020-11-18 16:43:49 +0200
committerShlomo Hecht <shlomo@twine-s.com>2020-11-18 16:43:49 +0200
commit8906274180ae356fcf08893b313f852546181514 (patch)
treebb870377521946e9e1bec623bc175f85468e3e1a /Software/Embedded_SW/Embedded/Modules
parenta9d18c495bfb4232b61bf4b45f1ba3c626cdb61b (diff)
downloadTango-8906274180ae356fcf08893b313f852546181514.tar.gz
Tango-8906274180ae356fcf08893b313f852546181514.zip
preparation for light colors
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules')
-rw-r--r--Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c5
-rw-r--r--Software/Embedded_SW/Embedded/Modules/IDS/IDS.h3
-rw-r--r--Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c11
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Calculate.c42
4 files changed, 45 insertions, 16 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
index cc2c508c0..6abf05539 100644
--- a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
+++ b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
@@ -628,7 +628,6 @@ uint32_t HWConfiguration(UploadHardwareConfigurationRequest* UploadRequest)
return OK;
}
char Serial[21];
-MidTankData MidTankInfo[MAX_SYSTEM_DISPENSERS];
uint32_t MachineCalibrationDataRequestFunc(MessageContainer* requestContainer)
{
@@ -636,6 +635,7 @@ uint32_t MachineCalibrationDataRequestFunc(MessageContainer* requestContainer)
MachineCalibrationDataRequest *request = machine_calibration_data_request__unpack(NULL, requestContainer->data.len, requestContainer->data.data);
uint32_t *DancersData = my_malloc(MAX_SYSTEM_DANCERS*sizeof(uint32_t));
MidTankData ** MidTankDataCollect = my_malloc(sizeof(MidTankData *)*MAX_SYSTEM_DISPENSERS);
+ MidTankData MidTankInfo[MAX_SYSTEM_DISPENSERS];
int i;
for (i = 0;i<MAX_SYSTEM_DANCERS;i++)
@@ -655,7 +655,8 @@ uint32_t MachineCalibrationDataRequestFunc(MessageContainer* requestContainer)
//MCU_E2PromSerialNumRead(&Serial);
MachineCalibrationDataResponse response = MACHINE_CALIBRATION_DATA_RESPONSE__INIT;
- machine_calibration_data__init(&response.machinecalibrationdata);
+ response.machinecalibrationdata = my_malloc(sizeof(MachineCalibrationData));
+ machine_calibration_data__init(response.machinecalibrationdata);
response.machinecalibrationdata->n_dancermiddlepoint = MAX_SYSTEM_DANCERS;
response.machinecalibrationdata->dancermiddlepoint = DancersData;
response.machinecalibrationdata->machineserialnumber = Serial;
diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS.h b/Software/Embedded_SW/Embedded/Modules/IDS/IDS.h
index d86d7ab2d..0f8108dad 100644
--- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS.h
+++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS.h
@@ -5,9 +5,6 @@
#include "drivers/motors/motor.h"
#include "ids_ex.h"
-#define LUBRICANT_DISPENSER 7
-#define CLEANER_DISPENSER 6
-
extern uint32_t DispenserPrepareSpeed ;
extern double DispenserPreparePressure ;
extern uint32_t DispenserPrepareTimeout ;
diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c
index b1b81b3f1..367b36e38 100644
--- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c
+++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_print.c
@@ -43,7 +43,6 @@ typedef struct
}DispenserControlConfig_t;
HardwarePidControl *DispensersControl;
HardwarePidControl DispensersCtrl[MAX_SYSTEM_DISPENSERS];
-#define MAX_DYE_DISPENSERS 6
#define IDS_PRESEGMENT_TIME_STEP 50
#define INITIAL_CLEANER_SPEED 300
@@ -565,7 +564,7 @@ bool AdjustDispenserSpeedToPressure(int DispenserId, double RefMaxPressure,doubl
double segmentfirst_speed;
double pressure;
ModuleStateEnum result = ModuleDone;
- bool DispenserReady[MAX_DYE_DISPENSERS] = {false,false,false,false,false,false};
+ bool DispenserReady[MAX_SYSTEM_DISPENSERS] = {false,false,false,false,false,false,false,false};
//REPORT_MSG((int)DispenserPrepareControlId, "Prepare Callback");
@@ -1946,20 +1945,26 @@ uint32_t IDSSegmentState(void *SegmentDetails, int SegmentId)
}
uint32_t IDS_StartLubrication(void)
{
+#ifdef LIGHT_COLORS
+#else
IDS_Dispenser_Start_Motor_and_Open_Valve(LUBRICANT_DISPENSER,lubricant_speed,NULL);
CurrentDispenserSpeed[LUBRICANT_DISPENSER] = lubricant_speed;
- REPORT_MSG (lubricant_speed, "IDS_StartLubrication");
Lubricant_2Way_Valve (START);
+#endif
+ REPORT_MSG (lubricant_speed, "IDS_StartLubrication");
return OK;
}
uint32_t IDS_StopLubrication(void)
{
REPORT_MSG (lubricant_speed, "IDS_StopLubrication and home dispenser");
+#ifdef LIGHT_COLORS
+#else
Lubricant_2Way_Valve (STOP);
//IDS_Dispenser_Close_Valve_And_Stop_Motor(LUBRICANT_DISPENSER,IDS_Valve_EndValveReady);
TimerMotors_t HW_Motor_Id = DispenserIdToMotorId[LUBRICANT_DISPENSER];
MotorStop(HW_Motor_Id,Hard_Hiz);
CurrentDispenserSpeed[LUBRICANT_DISPENSER] = 0;
//IDS_HomeDispenser (LUBRICANT_DISPENSER, 1000 , NULL); do not fill lubricant between jobs
+#endif
return OK;
}
diff --git a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Calculate.c b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Calculate.c
index e386df88c..d26b3d814 100644
--- a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Calculate.c
+++ b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Calculate.c
@@ -5,22 +5,32 @@
#include <PMR/Stubs/CalculateResponse.pb-c.h>
#include "include.h"
#include "driverlib/gpio.h"
+#include "modules/control/control.h"
#include "Drivers/USB_Communication/USBCDCD.h"
-
-void Stub_CalculateRequest(MessageContainer* requestContainer)
+char CalculateToken[36+1] = {0};
+//char init_string[100];
+int aaa = 0;
+uint32_t CalculateControlId = 0xFF;
+uint32_t CalculateRpeat(uint32_t IfIndex, uint32_t BusyFlag)
{
MessageContainer responseContainer;
-
- CalculateRequest* request = calculate_request__unpack(NULL, requestContainer->data.len, requestContainer->data.data);
-
-
CalculateResponse response = CALCULATE_RESPONSE__INIT;
- response.sum = request->a + request->b;
+ bool last = false;
+ response.sum = aaa++;
response.has_sum = true;
+ if (aaa >=20)
+ {
+ RemoveControlCallback(CalculateControlId, CalculateRpeat);
+ last = true;
+ aaa=0;
+ }
+ Report("CalculateRpeat",__FILE__,__LINE__,(int)aaa,RpWarning,(int)0,0);
- responseContainer = createContainer(MESSAGE_TYPE__CalculateResponse, requestContainer->token, true, &response, &calculate_response__pack, &calculate_response__get_packed_size);
+ responseContainer = createContainer(MESSAGE_TYPE__CalculateResponse, CalculateToken, last, &response, &calculate_response__pack, &calculate_response__get_packed_size);
+ responseContainer.has_continuous = true;
+ responseContainer.continuous = true;
// free(request);
@@ -30,5 +40,21 @@ void Stub_CalculateRequest(MessageContainer* requestContainer)
SendChars((char*)container_buffer, container_size);
//free(container_buffer);
//free(requestContainer);
+
+ return OK;
+}
+
+
+void Stub_CalculateRequest(MessageContainer* requestContainer)
+{
+ MessageContainer responseContainer;
+
+ CalculateRequest* request = calculate_request__unpack(NULL, requestContainer->data.len, requestContainer->data.data);
+ ustrncpy (CalculateToken, requestContainer->token,36);
+
+
+ Report("Stub_CalculateRequest",__FILE__,__LINE__,(int)aaa,RpWarning,(int)0,0);
+ CalculateControlId = AddControlCallback("PowerUpLoad", CalculateRpeat, eOneSecond, TemplateDataReadCBFunction,0,0, 0 );
+
calculate_request__free_unpacked(request,NULL);
}