package com.dev.fbs9100;
|
|
import java.util.Date;
|
|
import com.dev.fbs9100.FBS9100_SysState;
|
|
public class BattStatData
|
{
|
//----------------------------------------------------------
|
final public static byte BATTDATA_NULL = 0;
|
final public static byte BATTDATA_FLOAT = 1;
|
final public static byte BATTDATA_CHARGE = 2;
|
final public static byte BATTDATA_DISCHARGE = 3;
|
final public static byte BATTDATA_JUNCHARGE = 4;
|
final public static byte BATTDATA_RES = 5;
|
final public static byte BATTDATA_SER = 6;
|
final public static byte BATTDATA_TMP = 7;
|
final public static byte BATTDATA_CONNRES = 8;
|
final public static byte BATTDATA_MONITOR = 9;
|
//----------------------------------------------------------
|
final public static byte BATTSTATE_NULL = 0;
|
final public static byte BATTSTATE_FLOAT = 1;
|
final public static byte BATTSTATE_CHARGE = 2;
|
final public static byte BATTSTATE_DISCHARGE = 3;
|
final public static byte BATTSTATE_JUNCHARGE = 4;
|
final public static byte BATTSTATE_RES = 5;
|
final public static byte BATTSTATE_SER = 6;
|
final public static byte BATTSTATE_TMP = 7;
|
final public static byte BATTSTATE_CONNRES = 8;
|
final public static byte BATTSTATE_MONITOR = 9;
|
//----------------------------------------------------------
|
final public static byte TEST_LOADER_REALLOADER = 1;
|
final public static byte TEST_LOADER_FBI_IDCE = 2;
|
final public static byte TEST_LOADER_FBS9100S = 3;
|
//----------------------------------------------------------
|
//---- FBI/IDCE serials device connection state monitor ----
|
private boolean CurrDataIsUseForIdceFbi = false;
|
private boolean CurrDataIsUseForIdceFbi_LaZha = false;
|
private boolean FBI_ConState = false;
|
private int mFBICommTimeout = 0;
|
//----------------------------------------------------------
|
private float mBattFloatCurrLevel = 30;
|
//----------------------------------------------------------
|
//----------------------------------------------------------
|
public int dev_FBS9100S_WorkState = FBS9100_SysState.SYS_STATE_STOPPED;
|
public byte battTestState = BATTSTATE_FLOAT;
|
public int dataCalCount;
|
public int testRecordCount;
|
public byte testLoaderType = 0;
|
public int recordNum;
|
public int recordNum_BPM7100;
|
public Date startTestTime = new Date();
|
public Date recordTime = new Date();
|
public int testTimeLong;
|
public float onlineVol;
|
public float groupVol;
|
public float groupTmp;
|
public byte battState;
|
|
private boolean bpm7100_runState = false;
|
|
public float testCurr = 0;
|
public float testCurrAbsMax = 0;
|
public float TestCurr_RT = 0;
|
public float TestCurr_RT_TMP = 0;
|
public int TestState_RT;
|
|
public float sybase_server_battcurr;
|
public float testCap;
|
public float battRealCap;
|
public float battRestCap;
|
public int battRestTime;
|
//--------------------------------//
|
public BattStatData()
|
{
|
init((byte) BATTSTATE_FLOAT, 0);
|
}
|
|
public void setBattFloatCurrLevel(float curr_level)
|
{
|
mBattFloatCurrLevel = curr_level;
|
}
|
|
public void setBpm7100RunState(boolean stat) {
|
bpm7100_runState = stat;
|
}
|
public boolean getBpm7100RunState() {
|
return bpm7100_runState;
|
}
|
|
public BattStatData clone()
|
{
|
BattStatData bdata = new BattStatData();
|
bdata.battTestState = battTestState;
|
bdata.battState = battState;
|
bdata.dataCalCount = dataCalCount;
|
bdata.testRecordCount = testRecordCount;
|
bdata.recordNum = recordNum;
|
bdata.recordNum_BPM7100 = recordNum_BPM7100;
|
bdata.startTestTime = new Date(startTestTime.getTime());
|
bdata.testLoaderType = testLoaderType;
|
bdata.recordTime = new Date(recordTime.getTime());
|
bdata.testTimeLong = testTimeLong;
|
bdata.groupVol = groupVol;
|
bdata.groupTmp = groupTmp;
|
bdata.testCurr = testCurr;
|
bdata.testCurrAbsMax = testCurrAbsMax;
|
bdata.sybase_server_battcurr = sybase_server_battcurr;
|
bdata.testCap = testCap;
|
bdata.battRealCap = battRealCap;
|
bdata.battRestCap = battRestCap;
|
bdata.battRestTime = battRestTime;
|
|
return bdata;
|
}
|
|
public void init(byte test_type, int count)
|
{
|
battTestState = test_type;
|
if(BattStatData.BATTSTATE_MONITOR == test_type) {
|
TestState_RT = battTestState;
|
} else {
|
battState = test_type;
|
}
|
|
testLoaderType = TEST_LOADER_REALLOADER;
|
|
testRecordCount = count;
|
dataCalCount = 0;
|
recordNum = 0;
|
recordNum_BPM7100 = 0;
|
startTestTime = new Date();
|
recordTime = new Date();
|
testTimeLong = 0;
|
testCap = 0;
|
testCurrAbsMax = 0;
|
}
|
|
public void bpm7100_init(byte batt_state)
|
{
|
battState = batt_state;
|
dataCalCount = 0;
|
recordNum_BPM7100 = 0;
|
testCap = 0;
|
testCurrAbsMax = 0;
|
}
|
|
private void upDateCurrRT(float curr)
|
{
|
TestCurr_RT = curr;
|
//System.out.println("TestCurr_RT: " + TestCurr_RT);
|
if(Math.abs(testCurrAbsMax) < Math.abs(TestCurr_RT))
|
{
|
testCurrAbsMax = TestCurr_RT;
|
}
|
|
if(Math.abs(TestCurr_RT) < mBattFloatCurrLevel)
|
{
|
TestState_RT = BATTSTATE_FLOAT;
|
}
|
|
if(TestCurr_RT >= mBattFloatCurrLevel)
|
TestState_RT = BATTSTATE_CHARGE;
|
else if(TestCurr_RT <= (mBattFloatCurrLevel*(-1)))
|
TestState_RT = BATTSTATE_DISCHARGE;
|
}
|
|
public boolean isCurrDataUseForIdceFbi()
|
{
|
return CurrDataIsUseForIdceFbi;
|
}
|
public void setCurrDataIsUseForIdceFbi(boolean stat)
|
{
|
CurrDataIsUseForIdceFbi = stat;
|
}
|
|
public void setLoaderType(byte ld_t) {
|
testLoaderType = ld_t;
|
}
|
public byte getLoaderType() {
|
return testLoaderType;
|
}
|
|
public void setDevFBS9100S_WorkState(int wks_t) {
|
dev_FBS9100S_WorkState = wks_t;
|
}
|
public int getDevFBS9100S_WorkState() {
|
return dev_FBS9100S_WorkState;
|
}
|
|
public boolean isCurrDataUseForIdceFbi_LaZha()
|
{
|
return CurrDataIsUseForIdceFbi_LaZha;
|
}
|
public void setCurrDataIsUseForIdceFbi_LaZha(boolean stat)
|
{
|
CurrDataIsUseForIdceFbi_LaZha = stat;
|
}
|
|
/**
|
* ¼ì²éFBIÌá½»ÊÇ·ñ³¬Ê±
|
* @return
|
*/
|
public boolean checkIfFBIComMTimeout()
|
{
|
boolean time_ount = false;
|
if(mFBICommTimeout >= 60)
|
{
|
time_ount = true;
|
FBI_ConState = false;
|
setCurrDataIsUseForIdceFbi(false);
|
}
|
if(mFBICommTimeout < 1000)
|
mFBICommTimeout++;
|
|
return time_ount;
|
}
|
|
/*************************************************************************/
|
/*
|
public void updateGroupVolFrom_FBI(float vol)
|
{
|
if(BattData_RT_Array.DATA_SOURCE_SQLSERVER == mSourceBattDataType)
|
{
|
FBI_ConState = true;
|
mFBICommTimeout = 0;
|
groupVol = vol;
|
}
|
}
|
*/
|
|
/**
|
* ´ÓFBSÉ豸¸üÐÂonline vol
|
* @param vol
|
*/
|
public void updateOnlineVolFrom_FBSDev(float vol)
|
{
|
onlineVol = vol;
|
}
|
|
/**
|
* ´ÓFBSÉ豸¸üÐÂ×é¶Ëµçѹ
|
* @param vol
|
*/
|
public void updateGroupVolFrom_FBSDev(float vol)
|
{
|
groupVol = vol;
|
}
|
|
/*************************************************************************/
|
/**
|
* ´ÓFBIÉ豸¸üеçÁ÷
|
* @param curr
|
*/
|
public void updateCurrFromFBI(float curr)
|
{
|
FBI_ConState = true;
|
mFBICommTimeout = 0;
|
setCurrDataIsUseForIdceFbi(true);
|
upDateCurrRT(curr);
|
//System.out.println("updateCurrFromFBI");
|
}
|
/**
|
* ´ÓFBSÉ豸¸üеçÁ÷
|
* @param curr
|
*/
|
public void updateCurrFrom_FBSDev(float curr)
|
{
|
if(false == FBI_ConState)
|
{
|
upDateCurrRT(curr);
|
}
|
}
|
}
|