aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Modules
diff options
context:
space:
mode:
authorRonen Sberlo <ronen.s@twine-s.com>2020-10-27 14:38:35 +0200
committerRonen Sberlo <ronen.s@twine-s.com>2020-10-27 14:38:35 +0200
commitd2308f122017b8efd08d4a08863826dc28dbb985 (patch)
treeb89f7a6a0f815d6aeb89e85816c41e1d649f5351 /Software/Embedded_SW/Embedded/Modules
parentfba4984f4d08397f7f1b897953d5d8cb068ee2bc (diff)
parent2d36ca07a6b43cf997aea3a987ed97cd3afcb655 (diff)
downloadTango-d2308f122017b8efd08d4a08863826dc28dbb985.tar.gz
Tango-d2308f122017b8efd08d4a08863826dc28dbb985.zip
Merge branch 'master' of https://twinetfs.visualstudio.com/Tango/_git/Tango
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules')
-rw-r--r--Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c10
-rw-r--r--Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.h2
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c16
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Control/control.c2
-rw-r--r--Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c1
-rw-r--r--Software/Embedded_SW/Embedded/Modules/IDS/IDS_maint.c9
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c4
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Waste/Waste_maint.c2
8 files changed, 30 insertions, 16 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c b/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c
index 42f60a151..6df2c27c6 100644
--- a/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c
+++ b/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.c
@@ -73,6 +73,7 @@ bool AlarmHandlingActive = false;
uint32_t AlarmHandlingControlId = 0xFF;
uint32_t AlarmHandlingTick = 0;
+int MotorConfiguredTimeout = 100;
double CurrentAlarmHighLimit ,CurrentAlarmLowLimit;
bool CheckHardLimitAlarms = false,CheckCurrentAlarms = false,CheckTamperAlarms = false,CheckMotorAlarms = false;
uint8_t alarm_response_buffer[500];
@@ -504,7 +505,7 @@ uint32_t AlarmHandlingLoadFile(void)
if (F_count == 4)
{
- ReportWithPackageFilter(AlarmFilter,"Writing four alarms", __FILE__,AlarmPtr,F_count, RpMessage, p_size, 0);
+ //ReportWithPackageFilter(AlarmFilter,"Writing four alarms", __FILE__,AlarmPtr,F_count, RpMessage, p_size, 0);
F_count = 0;
ReadAppAndProgram(AlarmPtr, p_size,FileAlarmItem);
AlarmPtr+=p_size;
@@ -976,7 +977,7 @@ JobEndReasonEnum AlarmHandlingPrepareJob(void *CurrentJob)
if ((IFS_Availability[1] == IFS_RECOGNIZED_INIT_PASSED)&&(IFS_Availability[2] == IFS_RECOGNIZED_INIT_PASSED)) //ifs installed -check cartridges
{
- tempFoundReason = Waste_Prepare();
+ tempFoundReason = Waste_CheckState();
if (tempFoundReason!=JOB_OK)
{
FoundReason = tempFoundReason;
@@ -1192,6 +1193,9 @@ uint32_t AlarmHandlingLoop(uint32_t tick)
if (AlarmItem == NULL)
return ERROR;
int AlarmCounter=0;
+ if (MotorConfiguredTimeout)
+ MotorConfiguredTimeout--;
+
for (Alarm_i = 0;Alarm_i < NumOfSystemAlarms;Alarm_i++)
{
Status = false;
@@ -1368,7 +1372,7 @@ uint32_t AlarmHandlingLoop(uint32_t tick)
case ALARM_SOURCE_TYPE__MotorAlarm:
if (CheckMotorAlarms)
{
- if ((FPGA_WD_Occurred == true)||(MachineReadyForHeating == false))
+ if ((FPGA_WD_Occurred == true)||(MotorConfiguredTimeout > 0))
{
Status = false;
}
diff --git a/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.h b/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.h
index 3b39370bf..0ce6d4816 100644
--- a/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.h
+++ b/Software/Embedded_SW/Embedded/Modules/AlarmHandling/AlarmHandling.h
@@ -10,6 +10,8 @@
#include "StateMachines/Printing/PrintingSTM.h"
#include <PMR/Diagnostics/EventType.pb-c.h>
+extern int MotorConfiguredTimeout;
+
uint32_t AlarmHandlingFlashLoad(void);
uint32_t AlarmHandlingLoadFile(void);
diff --git a/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c b/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c
index 8a14a1d67..689219583 100644
--- a/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c
+++ b/Software/Embedded_SW/Embedded/Modules/Control/MillisecTask.c
@@ -822,14 +822,6 @@ uint32_t MillisecLowLoop(uint32_t tick)
}
if (Tensecond_Tick)
{
- #ifndef RUN_AS_MAIN_JIG
- //Trigger_MidTank_Pressure_Read();
- for (Disp_i = 0;Disp_i < MAX_SYSTEM_DISPENSERS;Disp_i++)
- {
- Read_MidTank_Pressure_Sensor(Disp_i);
- }
- #endif
-
}
if (OneMinute_Tick)
{
@@ -864,6 +856,14 @@ uint32_t MillisecLowLoop(uint32_t tick)
{
Shinko_Cycle_Comm();
}
+#ifndef RUN_AS_MAIN_JIG
+ //Trigger_MidTank_Pressure_Read();
+ for (Disp_i = 0;Disp_i < MAX_SYSTEM_DISPENSERS;Disp_i++)
+ {
+ Read_MidTank_Pressure_Sensor(Disp_i);
+ }
+#endif
+
}
if (OneHourTick)
{
diff --git a/Software/Embedded_SW/Embedded/Modules/Control/control.c b/Software/Embedded_SW/Embedded/Modules/Control/control.c
index 14275533e..2047e9910 100644
--- a/Software/Embedded_SW/Embedded/Modules/Control/control.c
+++ b/Software/Embedded_SW/Embedded/Modules/Control/control.c
@@ -198,6 +198,8 @@ uint32_t ControlActivityLed( uint32_t Parameter1)
ReportWithPackageFilter(FPGAFilter, "FPGA Watchdog Error",__FILE__,__LINE__,0,RpError, 0,0);
ACTIVITY_GREEN_LED_ON;
+ MotorConfiguredTimeout = 100;
+
FPGA_SetMotorsInit();
Motor_ReconfigAllMotors();
}
diff --git a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
index 2f9088cf1..90c18caa0 100644
--- a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
+++ b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
@@ -467,6 +467,7 @@ uint32_t HWConfiguration(UploadHardwareConfigurationRequest* UploadRequest)
//if (request->n_winders == 1)
// status += InternalWinderConfigMessage(request->winders);
+ MotorConfiguredTimeout = 100;
status += MotorsInit();
diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_maint.c b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_maint.c
index 4fe32e7cd..2c2ebfd07 100644
--- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_maint.c
+++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_maint.c
@@ -84,7 +84,7 @@ uint32_t InitialDispenserSpeed = INITIAL_DISPENSER_SPEED;
uint32_t ControlIdtoInactiveDispenserId [MAX_SYSTEM_DISPENSERS] = {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF};
-uint32_t IDS_StopHomeDispenserBuildPressure (uint32_t deviceID);
+//uint32_t IDS_StopHomeDispenserBuildPressure (uint32_t deviceID);
AutoHoming_Config_enum AutoHoming_Config = AutoHoming_off;
void IDS_Dispenser_SetAutoHoming_Config(AutoHoming_Config_enum Config)
@@ -350,6 +350,7 @@ uint32_t IDS_StopHomeDispenser (uint32_t DispenserId)
CurrentDispenserSpeed[DispenserId] = 0;
return OK;
}
+/*
uint32_t IDS_StopHomeDispenserBuildPressure (uint32_t DispenserId)
{
assert(DispenserId < MAX_SYSTEM_DISPENSERS);
@@ -380,7 +381,7 @@ uint32_t IDS_StopHomeDispenserBuildPressure (uint32_t DispenserId)
}
// HomingActive[DispenserId]= false;
ReportWithPackageFilter(IDSFilter,"End homing for job start",__FILE__,millisecondCounter,(int)DispenserId,RpWarning,(int)DispenserHomingTime[DispenserId],0);
- /* else
+ /`* else
{
ReportWithPackageFilter(IDSFilter,"homing aborted,start backlash",__FILE__,millisecondCounter,(int)DispenserId,RpWarning,(int)DispenserHomingTime[DispenserId],0);
DispenserHomingControlId[DispenserId] = AddControlCallback( IDS_HomeDispenserBackMoveCallback, InitialDispenserTimeLag, GetDispenserPressure,motorId, motorId, 0 );
@@ -389,12 +390,12 @@ uint32_t IDS_StopHomeDispenserBuildPressure (uint32_t DispenserId)
Task_sleep(10);
MotorSetSpeed(motorId, 1000);
CurrentDispenserSpeed[DispenserId] = 1000;
- }*/
+ }*`/
//IDS_Dispenser_RefillEnded ( DispenserId, MotorsCfg[motorId].microstep);
return OK;
}
-
+*/
uint32_t IDS_CheckDispenserLimitSwitch (LimitSwitchAlarms LS_Id)
{
int DispenserId;
diff --git a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c
index fb8e97898..0d5d60af0 100644
--- a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c
+++ b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Progress.c
@@ -948,7 +948,11 @@ void Stub_ProgressRequest(MessageContainer* requestContainer)
if((request->amount == 0x0CD) && (request->delay == 0x0CD)) //Get Gas Sensor
{
LOG_ERROR(request->delay,"Load embedded parameters from file and restart");
+ base_flashErased = false;
LoadConfigurationParamsFromFile(true);
+ LOG_ERROR(255,"Update successful, Rebooting in 5 seconds");
+ Task_sleep (eOneSecond*5);
+ Power_Reset();
response.progress = (double)OK;
response.has_progress = true;
diff --git a/Software/Embedded_SW/Embedded/Modules/Waste/Waste_maint.c b/Software/Embedded_SW/Embedded/Modules/Waste/Waste_maint.c
index d552c444e..bbd67e82b 100644
--- a/Software/Embedded_SW/Embedded/Modules/Waste/Waste_maint.c
+++ b/Software/Embedded_SW/Embedded/Modules/Waste/Waste_maint.c
@@ -37,7 +37,7 @@ bool DoorState = OPEN;
uint32_t timeout_counter = 0;
int wasteLevel = 0;
WasteCartridgeEnum SelectedCard = MaxWasteCartridges;
-CartridgeStateEnum CartState[MaxWasteCartridges];
+CartridgeStateEnum CartState[MaxWasteCartridges];// = {CartridgeStateOUT,CartridgeStateOUT,CartridgeStateOUT};
uint32_t Cartridge_Cover_Control;
button *CartLed[MaxWasteCartridges] = {0, &cart2, &cart3};
WasteTankStateEnum WasteTankState = WasteTankStateIdle;