优化高程跟踪算法
This commit is contained in:
parent
3f4745030a
commit
cf86c1392c
@ -104,7 +104,6 @@ public class AbnormalDeviceProcessor{
|
|||||||
}
|
}
|
||||||
|
|
||||||
void insertData(String noDataDeviceId,double refGnssData1[],double refGnssData2[]){
|
void insertData(String noDataDeviceId,double refGnssData1[],double refGnssData2[]){
|
||||||
logger.debug("{} abnormal process");
|
|
||||||
if(refGnssData1!=null && refGnssData2!=null){
|
if(refGnssData1!=null && refGnssData2!=null){
|
||||||
logger.debug("{} delta: {},{},{}",noDataDeviceId,
|
logger.debug("{} delta: {},{},{}",noDataDeviceId,
|
||||||
(refGnssData1[0]+refGnssData2[0])/2,
|
(refGnssData1[0]+refGnssData2[0])/2,
|
||||||
@ -150,7 +149,7 @@ public class AbnormalDeviceProcessor{
|
|||||||
queryWrapper.eq("deviceid",deviceId);
|
queryWrapper.eq("deviceid",deviceId);
|
||||||
queryWrapper.eq("enabled",true);
|
queryWrapper.eq("enabled",true);
|
||||||
queryWrapper.isNotNull("rpose");
|
queryWrapper.isNotNull("rpose");
|
||||||
queryWrapper.ge("createtime",now.minusHours(24));
|
queryWrapper.ge("createtime",now.minusHours(2));
|
||||||
queryWrapper.orderByDesc("createtime");
|
queryWrapper.orderByDesc("createtime");
|
||||||
queryWrapper.last("limit 2");
|
queryWrapper.last("limit 2");
|
||||||
|
|
||||||
@ -158,9 +157,17 @@ public class AbnormalDeviceProcessor{
|
|||||||
}
|
}
|
||||||
|
|
||||||
void checkNotGoodDevice(String deviceId, String refDeviceId1){
|
void checkNotGoodDevice(String deviceId, String refDeviceId1){
|
||||||
|
LocalDateTime validTime = LocalDateTime.now().minusMinutes(10);
|
||||||
|
// 待修改的点
|
||||||
List<GnssCalcData> calcDataList = getLastTwo(deviceId);
|
List<GnssCalcData> calcDataList = getLastTwo(deviceId);
|
||||||
|
if(calcDataList.size() == 2){
|
||||||
|
if(calcDataList.get(0).getCreatetime().isBefore(validTime)) return;
|
||||||
|
}
|
||||||
|
else return;
|
||||||
|
// 参考点
|
||||||
List<GnssCalcData> calcDataList1 = getLastTwo(refDeviceId1);
|
List<GnssCalcData> calcDataList1 = getLastTwo(refDeviceId1);
|
||||||
if(calcDataList.size() == 2 && calcDataList1.size()==2){
|
if(calcDataList1.size()==2){
|
||||||
|
if(calcDataList1.get(0).getCreatetime().isBefore(validTime)) return;
|
||||||
double deltaU = calcDataList1.get(0).getRposd() - calcDataList1.get(1).getRposd();
|
double deltaU = calcDataList1.get(0).getRposd() - calcDataList1.get(1).getRposd();
|
||||||
GnssCalcData calcData = calcDataList.get(0);
|
GnssCalcData calcData = calcDataList.get(0);
|
||||||
calcData.setRposd(calcDataList.get(1).getRposd()+deltaU);
|
calcData.setRposd(calcDataList.get(1).getRposd()+deltaU);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user