aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded/Modules/General
diff options
context:
space:
mode:
authorShlomo Hecht <shlomo@twine-s.com>2019-11-03 11:05:41 +0200
committerShlomo Hecht <shlomo@twine-s.com>2019-11-03 11:05:41 +0200
commit732d7aaededc72fd28eca57e5a5ffb89ab29a9ef (patch)
tree13db6b044ccdae6a93d79d9ce59cee7f3f405928 /Software/Embedded_SW/Embedded/Modules/General
parentef601f78d1e17cefc5bb4df82b4108d93cdea9dc (diff)
downloadTango-732d7aaededc72fd28eca57e5a5ffb89ab29a9ef.tar.gz
Tango-732d7aaededc72fd28eca57e5a5ffb89ab29a9ef.zip
add job end error codes. turn off safety alarms when cleared.improve idle/power on/off sequences
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules/General')
-rw-r--r--Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c26
-rw-r--r--Software/Embedded_SW/Embedded/Modules/General/MachineStatus.c2
-rw-r--r--Software/Embedded_SW/Embedded/Modules/General/Safety.c24
-rw-r--r--Software/Embedded_SW/Embedded/Modules/General/buttons.c5
4 files changed, 31 insertions, 26 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
index dcbd6b9b0..c833c8fe8 100644
--- a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
+++ b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c
@@ -169,11 +169,11 @@ void LoadConfigurationParameters(ConfigurationParameters *Params)
EmbeddedParameters->has_underheatcountlimit = true;
EmbeddedParameters->underheatcountlimit = 3;
EmbeddedParameters->has_closevalvetimeout = true;
- EmbeddedParameters->closevalvetimeout = 50;
+ EmbeddedParameters->closevalvetimeout = 52;
EmbeddedParameters->has_openvalvetimeout = true;
- EmbeddedParameters->openvalvetimeout = 50;
+ EmbeddedParameters->openvalvetimeout = 52;
EmbeddedParameters->has_initialdispenserpressure = true;
- EmbeddedParameters->initialdispenserpressure = 1.08;
+ EmbeddedParameters->initialdispenserpressure = 0.25;
EmbeddedParameters->has_initialdispensertimeout = true;
EmbeddedParameters->initialdispensertimeout = 60000;
EmbeddedParameters->has_initialdispensertimelag = true;
@@ -181,7 +181,7 @@ void LoadConfigurationParameters(ConfigurationParameters *Params)
EmbeddedParameters->has_dispenserbuildpressurespeed = true;
EmbeddedParameters->dispenserbuildpressurespeed=500;
EmbeddedParameters->has_dispenserbuildpressurelimit = true;
- EmbeddedParameters->dispenserbuildpressurelimit=0.8 ;
+ EmbeddedParameters->dispenserbuildpressurelimit=1.0 ;
EmbeddedParameters->has_dispenserbuildpressuretimeout = true;
EmbeddedParameters->dispenserbuildpressuretimeout=60000;
EmbeddedParameters->has_dispenserbuildpressurelag = true;
@@ -210,11 +210,11 @@ void LoadConfigurationParameters(ConfigurationParameters *Params)
EmbeddedParameters->generalparameters[3] = 0.0; //CheckMotorAlarms
EmbeddedParameters->generalparameters[4] = 800.0; //Winder homing time at end of job
EmbeddedParameters->generalparameters[5] = 1000.0; //Dispenser initial pressure speed
- EmbeddedParameters->generalparameters[6] = Diagnostic_Normal_Mode; //Diagnostic Mode SetDiagnosticMode
- EmbeddedParameters->generalparameters[7] = AutoHoming_JobEnd_PowerOn_off; //
+ EmbeddedParameters->generalparameters[6] = Diagnostic_Extended_Mode; //Diagnostic Mode SetDiagnosticMode
+ EmbeddedParameters->generalparameters[7] = AutoHoming_PowerOn_off; //
}
EmbeddedParameters->has_currentalarmlowlimit = true;
- EmbeddedParameters->currentalarmlowlimit = 0.77;
+ EmbeddedParameters->currentalarmlowlimit = 0.78;
EmbeddedParameters->has_currentalarmhighlimit = true;
EmbeddedParameters->currentalarmhighlimit= 1.07;
EmbeddedParameters->has_ids_segmentrefilltimeout = true;
@@ -222,15 +222,15 @@ void LoadConfigurationParameters(ConfigurationParameters *Params)
EmbeddedParameters->has_ids_presegmentbuilduptime = true;
EmbeddedParameters->ids_presegmentbuilduptime = 5000;
EmbeddedParameters->has_ids_cleaningspeed = true;
- EmbeddedParameters->ids_cleaningspeed = 50;
+ EmbeddedParameters->ids_cleaningspeed = 800;
EmbeddedParameters->has_ids_cleaningstopbeforesegmenttime = true;
- EmbeddedParameters->ids_cleaningstopbeforesegmenttime = 3000;
+ EmbeddedParameters->ids_cleaningstopbeforesegmenttime = 10000;
EmbeddedParameters->has_ids_cleaningstartspraypresegmenttime = true;
- EmbeddedParameters->ids_cleaningstartspraypresegmenttime = 1000;
+ EmbeddedParameters->ids_cleaningstartspraypresegmenttime = 2000;
EmbeddedParameters->has_ids_leftcleaningmotorspeed = true;
- EmbeddedParameters->ids_leftcleaningmotorspeed = 30;
+ EmbeddedParameters->ids_leftcleaningmotorspeed = 52;
EmbeddedParameters->has_ids_rightcleaningmotorspeed = true;
- EmbeddedParameters->ids_rightcleaningmotorspeed = 23;
+ EmbeddedParameters->ids_rightcleaningmotorspeed = 52;
EmbeddedParameters->has_switchtoidletimeinseconds = true;
EmbeddedParameters->switchtoidletimeinseconds = 3600;
EmbeddedParameters->has_idledriertemperature = true;
@@ -242,7 +242,7 @@ void LoadConfigurationParameters(ConfigurationParameters *Params)
EmbeddedParameters->has_powerofftemperaturelimit = true;
EmbeddedParameters->powerofftemperaturelimit = 50;
EmbeddedParameters->has_ids_presegment_wfcf_timebeforesegment = true;
- EmbeddedParameters->ids_presegment_wfcf_timebeforesegment = 1500;
+ EmbeddedParameters->ids_presegment_wfcf_timebeforesegment = 20000;
uint8_t* response_buffer = my_malloc(configuration_parameters__get_packed_size(EmbeddedParameters));
size_t response_size = 0;
if (response_buffer)
diff --git a/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.c b/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.c
index 4958139e6..2a4800b77 100644
--- a/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.c
+++ b/Software/Embedded_SW/Embedded/Modules/General/MachineStatus.c
@@ -30,6 +30,8 @@ MachineState StoredMachineStatus = MACHINE_STATE__Ready;
void SetMachineStatus (MachineState State)
{
+ ReportWithPackageFilter(GeneralFilter,"SetMachineStatus",__FILE__,__LINE__,State,RpWarning,StoredMachineStatus, 0);
+
StoredMachineStatus = State;
}
char MachineUpdateToken[36+1] = {0};
diff --git a/Software/Embedded_SW/Embedded/Modules/General/Safety.c b/Software/Embedded_SW/Embedded/Modules/General/Safety.c
index 6a0b9a67b..ea2cc2e6b 100644
--- a/Software/Embedded_SW/Embedded/Modules/General/Safety.c
+++ b/Software/Embedded_SW/Embedded/Modules/General/Safety.c
@@ -42,10 +42,10 @@ uint32_t Safety_Main_State(uint32_t IfIndex, uint32_t BusyFlag)
bool AllDispensersInSafety = true;
bool AnyDispensersInSafety = false;
bool DispenserBypass = false;
- /*bool mDrierDoorAlarmState = false;
+ bool mDrierDoorAlarmState = false;
bool mAirFlowAlarmState = false;
bool mAirFilterAlarmState = false;
- bool mWasteOverflowAlarmState = false;*/
+ bool mWasteOverflowAlarmState = false;
for (Disp_i = 0;Disp_i < MAX_SYSTEM_DISPENSERS;Disp_i++)
{
if (isMotorConfigured(Disp_i + HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_1)==true)
@@ -61,8 +61,8 @@ uint32_t Safety_Main_State(uint32_t IfIndex, uint32_t BusyFlag)
{
//report and handle dryer door open
AlarmHandlingSetAlarm(EVENT_TYPE__DRYER_DOOR_OPEN, true);
- // mDrierDoorAlarmState = true;
- // DrierDoorAlarmState = true;
+ mDrierDoorAlarmState = true;
+ DrierDoorAlarmState = true;
}
else
{
@@ -71,8 +71,8 @@ uint32_t Safety_Main_State(uint32_t IfIndex, uint32_t BusyFlag)
//report and handle air flow failure
//if blower if off handling is different
AlarmHandlingSetAlarm(EVENT_TYPE__NO_AIR_PRESSURE, true);
- // mAirFlowAlarmState = true;
- // AirFlowAlarmState = true;
+ mAirFlowAlarmState = true;
+ AirFlowAlarmState = true;
}
else
{
@@ -80,8 +80,8 @@ uint32_t Safety_Main_State(uint32_t IfIndex, uint32_t BusyFlag)
{
//report and handle filter missing
AlarmHandlingSetAlarm(EVENT_TYPE__AIR_FILTER_NOT_INSTALLED, true);
- // mAirFilterAlarmState = true;
- // AirFilterAlarmState = true;
+ mAirFilterAlarmState = true;
+ AirFilterAlarmState = true;
}
else
{
@@ -89,8 +89,8 @@ uint32_t Safety_Main_State(uint32_t IfIndex, uint32_t BusyFlag)
{
//report and handle waste overflow
AlarmHandlingSetAlarm(EVENT_TYPE__WASTE_CONTAINER_OVERFLOW, true);
- // mWasteOverflowAlarmState = true;
- // WasteOverflowAlarmState = true;
+ mWasteOverflowAlarmState = true;
+ WasteOverflowAlarmState = true;
}
}
}
@@ -167,7 +167,7 @@ uint32_t Safety_Main_State(uint32_t IfIndex, uint32_t BusyFlag)
}
}
}
-/* if ((mDrierDoorAlarmState != DrierDoorAlarmState)|| (mDrierDoorAlarmState == false))
+ if ((mDrierDoorAlarmState != DrierDoorAlarmState)|| (mDrierDoorAlarmState == false))
{
//alarm went off
AlarmHandlingSetAlarm(EVENT_TYPE__DRYER_DOOR_OPEN, false);
@@ -191,7 +191,7 @@ uint32_t Safety_Main_State(uint32_t IfIndex, uint32_t BusyFlag)
AlarmHandlingSetAlarm(EVENT_TYPE__WASTE_CONTAINER_OVERFLOW, false);
WasteOverflowAlarmState = mWasteOverflowAlarmState;
}
-*/
+
return OK;
}
diff --git a/Software/Embedded_SW/Embedded/Modules/General/buttons.c b/Software/Embedded_SW/Embedded/Modules/General/buttons.c
index 0a5cfc2f3..1b3f16044 100644
--- a/Software/Embedded_SW/Embedded/Modules/General/buttons.c
+++ b/Software/Embedded_SW/Embedded/Modules/General/buttons.c
@@ -40,6 +40,7 @@ int PowerUp();
int thredJog();
#define BUTTONS_SAMPLE_TIME (eHundredMillisecond)
+#define SECOND1 (1000/BUTTONS_SAMPLE_TIME)
#define SECOND2 (2000/BUTTONS_SAMPLE_TIME)
#define SECOND5 (5000/BUTTONS_SAMPLE_TIME)
@@ -89,6 +90,8 @@ int PowerUp()
{
bool ret = OK;
+ PowerIdleOutOfIdleState();
+
return ret;
}
@@ -308,7 +311,7 @@ uint32_t ShortLongOffPB(uint8_t OnOffPB, button *pBtn)
case COUNTPB: // last OnOffPBstate was COUNTPB
if (OnOffPB)
{
- if( pBtn->count > SECOND2 )
+ if( pBtn->count > SECOND1 )
{
pBtn->Action = SHORTPB ;
ReportWithPackageFilter(GeneralFilter,"------------ 2 seconds count PB Power -----------------", __FILE__,__LINE__,0, RpMessage, 0, 0);