diff options
| author | Shlomo Hecht <shlomo@twine-s.com> | 2020-06-07 16:29:13 +0300 |
|---|---|---|
| committer | Shlomo Hecht <shlomo@twine-s.com> | 2020-06-07 16:29:13 +0300 |
| commit | 7ae59a2ae6cf8c4de8b420ea83c6282b8685fed5 (patch) | |
| tree | 79db897a2f49eb966bd4746e89ffe9c7e44dc103 /Software/Embedded_SW/Embedded/Modules | |
| parent | 22eaa079a4bd20c81d221b2fa623756fc338e168 (diff) | |
| parent | 2137dbeeb984f4abcb2c7b7af83a396dd5d40879 (diff) | |
| download | Tango-7ae59a2ae6cf8c4de8b420ea83c6282b8685fed5.tar.gz Tango-7ae59a2ae6cf8c4de8b420ea83c6282b8685fed5.zip | |
Merge branch 'master' of https://twinetfs.visualstudio.com/Tango/_git/Tango
Diffstat (limited to 'Software/Embedded_SW/Embedded/Modules')
3 files changed, 4 insertions, 53 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c index 035a3b3b3..2cf368ebd 100644 --- a/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c +++ b/Software/Embedded_SW/Embedded/Modules/General/GeneralHardware.c @@ -483,7 +483,11 @@ uint32_t HWConfiguration(UploadHardwareConfigurationRequest* UploadRequest) LOG_ERROR (Dispenser_i, "Dispenser identification failed"); //return ERROR; } + + status |= I2C_EEprom_Set_for_Read_Ch(Dispenser_i, 0xA0); + status |= I2C_EEprom_Read_Ch(Dispenser_i, 0xA0); } + Calculateinit(); } else { diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_ex.h b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_ex.h index ad1d5b5c4..b3f21e187 100644 --- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_ex.h +++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_ex.h @@ -12,7 +12,6 @@ #include "PMR/EmbeddedParameters/DispenserRunningData.pb-c.h" #include "PMR/EmbeddedParameters/DispenserData.pb-c.h" -#define MAX_SYSTEM_DISPENSERS 8 typedef enum { LimitSwitchAlarmEmpty_1, //MOTO_DISPENSER_1 = 6, LimitSwitchAlarmEmpty_2, //MOTO_DISPENSER_2 = 7, diff --git a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_init.c b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_init.c index 4a4e42b41..470bf974e 100644 --- a/Software/Embedded_SW/Embedded/Modules/IDS/IDS_init.c +++ b/Software/Embedded_SW/Embedded/Modules/IDS/IDS_init.c @@ -21,8 +21,6 @@ HardwareDispenser DispensersCfg[ MAX_SYSTEM_DISPENSERS]; TimerMotors_t DispenserIdToMotorId[MAX_SYSTEM_DISPENSERS] = {HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_1,HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_2,HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_3,HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_4,HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_5,HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_6,HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_7,HARDWARE_MOTOR_TYPE__MOTO_DISPENSER_8}; -float DispenserPressure[MAX_SYSTEM_DISPENSERS] = {0}; - float GetDispenserPressure(int DispenserId) { return DispenserPressure[DispenserId]; @@ -37,56 +35,6 @@ bool isDispenserInConfig(int DispenserId) return true; } -float Vlow,VHigh,Bits_0Pascal,Bits_1MPascal,a,b; -void Calculateinit (void) -{ - Vlow = 0.004 * 130; // 4mA*130ohm = 0.52 V(0 Pascal) - VHigh = 0.020 *130; // 20mA*130ohm = 2.6V (1M Pascal) - - Bits_0Pascal = Vlow * 4096 / 3; // Vlow * 4096bit / 3Vref = 709.973328 bits - Bits_1MPascal = VHigh * 4096 / 3; // VHigh * 4096bit / 3Vref = 3549.86646 bits - - a = (1 - 0) / (Bits_1MPascal - Bits_0Pascal);// Mpascal/Bits = 0.000352125 - - b = 0 - (a * Bits_0Pascal ); // y = ax + b (x= Bits_0Pascal, y = 0) - -} -float CalculateDispenserPressure (int DispenserId) -{ - unsigned short data = 0; - float temp = 0.0; - -/* - data = ADC_GetReading(DispenserIdToPressureSensorId[DispenserId]); - temp = 4096 - data; - temp *= 3; - temp *= 1000; //move to mv - temp /= 4096; - DispenserPressure[DispenserId] = 3000 - temp; - */ - data = ADC_GetReading(DispenserIdToPressureSensorId[DispenserId]); - - if(data<Bits_0Pascal) - data = Bits_0Pascal;//40mA 0Bar - - temp = a * data + b; - - DispenserPressure[DispenserId] = temp; // [Mpascal] ( 1 Mpascal = 10 Bar ) - - //unmark one of them to convert from Mpascal to : - //----------------------------------- - //DispenserPressure[DispenserId] /= 1000000; //Pascal - //DispenserPressure[DispenserId] *=10; //Bar; - //DispenserPressure[DispenserId] *=10000000; //uBar; - //DispenserPressure[DispenserId] *=145.0377; //PSI; - - DispenserPressure[DispenserId] *= 10; //MPascal -> Bar - - //if(DispenserPressure[DispenserId] < 0 ) //why???? - // DispenserPressure[DispenserId] = 0; - - return(DispenserPressure[DispenserId]); -} uint32_t DispenserConfigMessage(HardwareDispenser * request) |
