进行了水面端测试
This commit is contained in:
@@ -1,47 +1,48 @@
|
||||
{
|
||||
"HVABFTDev123Cur_uint16": 0,
|
||||
"HVABactCur_uint16": 0,
|
||||
"HVABbowRudCur_uint16": 0,
|
||||
"HVABbusBCur_uint16": 0,
|
||||
"HVABbusBVol_uint16": 0,
|
||||
"HVABmastSteGeaCur_uint16": 0,
|
||||
"HVABopenWaterCur_uint16": 0,
|
||||
"HVABxczCur_uint16": 0,
|
||||
"HVBBCCUCur_uint16": 0,
|
||||
"HVBBFCSSecurSysCur_uint16": 0,
|
||||
"HVBBbatInsCur_uint16": 0,
|
||||
"HVBBbowLowVolDisBoxCur_uint16": 0,
|
||||
"HVBBdcC1InsCur_uint16": 0,
|
||||
"HVBBemer2BusVol_uint16": 0,
|
||||
"HVBBemerBatCur_uint16": 0,
|
||||
"HVBBinsBusVol_uint16": 0,
|
||||
"HVBBplcCur_uint16": 0,
|
||||
"HVBBreservedCur1_uint16": 0,
|
||||
"HVBBreservedCur2_uint16": 0,
|
||||
"HVBBunit4Cur_uint16": 0,
|
||||
"HVBFTDev45Cur_uint16": 0,
|
||||
"HVBbatGroupCur_uint16": 0,
|
||||
"HVBbowHVolDisBoxCur_uint16": 0,
|
||||
"HVBbusACur_uint16": 0,
|
||||
"HVBbusAVol_uint16": 0,
|
||||
"HVBdcDc5Cur_uint16": 0,
|
||||
"HVBfbCur_uint16": 0,
|
||||
"HVBmotorCur_uint16": 0,
|
||||
"HVBpowerBusCur_uint16": 0,
|
||||
"HVBpowerBusVol_uint16": 0,
|
||||
"HVBreservedCur1_uint16": 0,
|
||||
"HVBreservedCur2_uint16": 0,
|
||||
"HVBreservedCur3_uint16": 0,
|
||||
"HVBsternRud1Cur_uint16": 0,
|
||||
"HVBsternRud2Cur_uint16": 0,
|
||||
"HVBtyzCur_uint16": 0,
|
||||
"LVBBbowPZDevCur_uint16": 0,
|
||||
"LVBBemerBatCur_uint16": 0,
|
||||
"LVBBemerBusVol_uint16": 0,
|
||||
"LVBBinsBusCur_uint16": 0,
|
||||
"LVBBunit1Cur_uint16": 0,
|
||||
"LVBBunit2Cur_uint16": 0,
|
||||
"LVBBunit3Cur_uint16": 0,
|
||||
"LVBBunit5Cur_uint16": 0,
|
||||
"LVBinsBusVol_uint16": 0
|
||||
}
|
||||
{"uPower_currentState_st":{
|
||||
"HVABFTDev123Cur_uint16" : 0,
|
||||
"HVABactCur_uint16" : 0,
|
||||
"HVABbowRudCur_uint16" : 0,
|
||||
"HVABbusBCur_uint16" : 0,
|
||||
"HVABbusBVol_uint16" : 0,
|
||||
"HVABmastSteGeaCur_uint16" : 0,
|
||||
"HVABopenWaterCur_uint16" : 0,
|
||||
"HVABxczCur_uint16" : 0,
|
||||
"HVBBCCUCur_uint16" : 0,
|
||||
"HVBBFCSSecurSysCur_uint16" : 0,
|
||||
"HVBBbatInsCur_uint16" : 0,
|
||||
"HVBBbowLowVolDisBoxCur_uint16" : 0,
|
||||
"HVBBdcC1InsCur_uint16" : 0,
|
||||
"HVBBemer2BusVol_uint16" : 0,
|
||||
"HVBBemerBatCur_uint16" : 0,
|
||||
"HVBBinsBusVol_uint16" : 0,
|
||||
"HVBBplcCur_uint16" : 0,
|
||||
"HVBBreservedCur1_uint16" : 0,
|
||||
"HVBBreservedCur2_uint16" : 0,
|
||||
"HVBBunit4Cur_uint16" : 0,
|
||||
"HVBFTDev45Cur_uint16" : 0,
|
||||
"HVBbatGroupCur_uint16" : 0,
|
||||
"HVBbowHVolDisBoxCur_uint16" : 0,
|
||||
"HVBbusACur_uint16" : 0,
|
||||
"HVBbusAVol_uint16" : 0,
|
||||
"HVBdcDc5Cur_uint16" : 0,
|
||||
"HVBfbCur_uint16" : 0,
|
||||
"HVBmotorCur_uint16" : 0,
|
||||
"HVBpowerBusCur_uint16" : 0,
|
||||
"HVBpowerBusVol_uint16" : 0,
|
||||
"HVBreservedCur1_uint16" : 0,
|
||||
"HVBreservedCur2_uint16" : 0,
|
||||
"HVBreservedCur3_uint16" : 0,
|
||||
"HVBsternRud1Cur_uint16" : 0,
|
||||
"HVBsternRud2Cur_uint16" : 0,
|
||||
"HVBtyzCur_uint16" : 0,
|
||||
"LVBBbowPZDevCur_uint16" : 0,
|
||||
"LVBBemerBatCur_uint16" : 0,
|
||||
"LVBBemerBusVol_uint16" : 0,
|
||||
"LVBBinsBusCur_uint16" : 0,
|
||||
"LVBBunit1Cur_uint16" : 0,
|
||||
"LVBBunit2Cur_uint16" : 0,
|
||||
"LVBBunit3Cur_uint16" : 0,
|
||||
"LVBBunit5Cur_uint16" : 0,
|
||||
"LVBinsBusVol_uint16" : 0
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
{
|
||||
"HVolABusBreaker_unit16": 0,
|
||||
"HVolBBusBreaker_unit16": 0,
|
||||
"HVolBusBreaker_uint16": 0,
|
||||
"LVolBusBreaker_uint16": 0,
|
||||
"faultCode_array":
|
||||
[
|
||||
0
|
||||
]
|
||||
}
|
||||
{"uPower_disSysState_st":{
|
||||
"HVolABusBreaker_unit16" : 0,
|
||||
"HVolBBusBreaker_unit16" : 0,
|
||||
"HVolBusBreaker_uint16" : 0,
|
||||
"LVolBusBreaker_uint16" : 0,
|
||||
"faultCode_array" :
|
||||
[
|
||||
0
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,65 +1,65 @@
|
||||
{"uPower_equState_fb":{
|
||||
"DVL" : 0,
|
||||
"USBL" : 0,
|
||||
"bowCover1" : 0,
|
||||
"bowCover2" : 0,
|
||||
"bowCover3" : 0,
|
||||
"bowCover4" : 0,
|
||||
"bowCover5" : 0,
|
||||
"bowCover6" : 0,
|
||||
"bowRudderDeploy" : 0,
|
||||
"bowRudderServo1" : 0,
|
||||
"bowRudderServo2" : 0,
|
||||
"bowThrow" : 0,
|
||||
"bowWaterlnet1" : 0,
|
||||
"bowWaterlnet2" : 0,
|
||||
"bowWaterlnet3" : 0,
|
||||
"bowWaterlnet4" : 0,
|
||||
"bowWaterlnet5" : 0,
|
||||
"bowWaterlnet6" : 0,
|
||||
"bowWaterlnet7" : 0,
|
||||
"bowWaterlnet8" : 0,
|
||||
"buoyage" : 0,
|
||||
"buoyancyAdjust1" : 0,
|
||||
"buoyancyAdjust2" : 0,
|
||||
"buoyancyAdjust3" : 0,
|
||||
"buoyancyAdjust4" : 0,
|
||||
"buoyancyAdjust5" : 0,
|
||||
"commMast" : 0,
|
||||
"ctd1" : 0,
|
||||
"ctd2" : 0,
|
||||
"depth1" : 0,
|
||||
"depth2" : 0,
|
||||
"depth3" : 0,
|
||||
"electSensor" : 0,
|
||||
"forwardSonar" : 0,
|
||||
"inputWaterSensor1" : 0,
|
||||
"inputWaterSensor2" : 0,
|
||||
"inputWaterSensor3" : 0,
|
||||
"ins" : 0,
|
||||
"launchControler" : 0,
|
||||
"lowFreqSonar" : 0,
|
||||
"mastLiftingServo" : 0,
|
||||
"ntp" : 0,
|
||||
"overDeep1" : 0,
|
||||
"overDeep2" : 0,
|
||||
"photoSensor" : 0,
|
||||
"sideSonar" : 0,
|
||||
"singleBeamSonar1" : 0,
|
||||
"singleBeamSonar2" : 0,
|
||||
"singleBeamSonar3" : 0,
|
||||
"singleBeamSonar4" : 0,
|
||||
"singleBeamSonar5" : 0,
|
||||
"singleBeamSonar6" : 0,
|
||||
"singleBeamSonar7" : 0,
|
||||
"singleBeamSonar8" : 0,
|
||||
"soundVeloc" : 0,
|
||||
"sternRudderServo1" : 0,
|
||||
"sternRudderServo2" : 0,
|
||||
"sternRudderServo3" : 0,
|
||||
"sternRudderServo4" : 0,
|
||||
"sternThrow" : 0,
|
||||
"thruster" : 0,
|
||||
"waterInject" : 0
|
||||
"DVL_uni8" : 0,
|
||||
"USBL_uni8" : 0,
|
||||
"bowCover1_uni8" : 0,
|
||||
"bowCover2_uni8" : 0,
|
||||
"bowCover3_uni8" : 0,
|
||||
"bowCover4_uni8" : 0,
|
||||
"bowCover5_uni8" : 0,
|
||||
"bowCover6_uni8" : 0,
|
||||
"bowRudderDeploy_uni8" : 0,
|
||||
"bowRudderServo1_uni8" : 0,
|
||||
"bowRudderServo2_uni8" : 0,
|
||||
"bowThrow_uni8" : 0,
|
||||
"bowWaterlnet1_uni8" : 0,
|
||||
"bowWaterlnet2_uni8" : 0,
|
||||
"bowWaterlnet3_uni8" : 0,
|
||||
"bowWaterlnet4_uni8" : 0,
|
||||
"bowWaterlnet5_uni8" : 0,
|
||||
"bowWaterlnet6_uni8" : 0,
|
||||
"bowWaterlnet7_uni8" : 0,
|
||||
"bowWaterlnet8_uni8" : 0,
|
||||
"buoyage_uni8" : 0,
|
||||
"buoyancyAdjust1_uni8" : 0,
|
||||
"buoyancyAdjust2_uni8" : 0,
|
||||
"buoyancyAdjust3_uni8" : 0,
|
||||
"buoyancyAdjust4_uni8" : 0,
|
||||
"buoyancyAdjust5_uni8" : 0,
|
||||
"commMast_uni8" : 0,
|
||||
"ctd1_uni8" : 0,
|
||||
"ctd2_uni8" : 0,
|
||||
"depth1_uni8" : 0,
|
||||
"depth2_uni8" : 0,
|
||||
"depth3_uni8" : 0,
|
||||
"electSensor_uni8" : 0,
|
||||
"forwardSonar_uni8" : 0,
|
||||
"inputWaterSensor1_uni8" : 0,
|
||||
"inputWaterSensor2_uni8" : 0,
|
||||
"inputWaterSensor3_uni8" : 0,
|
||||
"ins_uni8" : 0,
|
||||
"launchControler_uni8" : 0,
|
||||
"lowFreqSonar_uni8" : 0,
|
||||
"mastLiftingServo_uni8" : 0,
|
||||
"ntp_uni8" : 0,
|
||||
"overDeep1_uni8" : 0,
|
||||
"overDeep2_uni8" : 0,
|
||||
"photoSensor_uni8" : 0,
|
||||
"sideSonar_uni8" : 0,
|
||||
"singleBeamSonar1_uni8" : 0,
|
||||
"singleBeamSonar2_uni8" : 0,
|
||||
"singleBeamSonar3_uni8" : 0,
|
||||
"singleBeamSonar4_uni8" : 0,
|
||||
"singleBeamSonar5_uni8" : 0,
|
||||
"singleBeamSonar6_uni8" : 0,
|
||||
"singleBeamSonar7_uni8" : 0,
|
||||
"singleBeamSonar8_uni8" : 0,
|
||||
"soundVeloc_uni8" : 0,
|
||||
"sternRudderServo1_uni8" : 0,
|
||||
"sternRudderServo2_uni8" : 0,
|
||||
"sternRudderServo3_uni8" : 0,
|
||||
"sternRudderServo4_uni8" : 0,
|
||||
"sternThrow_uni8" : 0,
|
||||
"thruster_uni8" : 0,
|
||||
"waterInject_uni8" : 0
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,30 +1,31 @@
|
||||
{
|
||||
"backpressure1_fp32": 0.0,
|
||||
"backpressure2_fp32": 0.0,
|
||||
"ch4oConcent1_fp32": 0.0,
|
||||
"ch4oConcent2_fp32": 0.0,
|
||||
"ch4o_fp32": 0.0,
|
||||
"excTemp_fp32": 0.0,
|
||||
"faultCode1_uint16": 0,
|
||||
"faultCode2_uint16": 0,
|
||||
"faultCode3_uint16": 0,
|
||||
"fcuCurIns_fp32": 0.0,
|
||||
"fcuCurPower_fp32": 0.0,
|
||||
"fcuCur_fp32": 0.0,
|
||||
"fcuFaultLeve_uint8": 0,
|
||||
"fcuOutIns_fp32": 0.0,
|
||||
"fcuOutPower_fp32": 0.0,
|
||||
"fcuState_uint8": 0,
|
||||
"fcuVolIns_fp32": 0.0,
|
||||
"fcuVolPower_fp32": 0.0,
|
||||
"fcuVol_fp32": 0.0,
|
||||
"flameDet_uint8": 0,
|
||||
"h2Concent1_fp32": 0.0,
|
||||
"h2Concent2_fp32": 0.0,
|
||||
"o2Concent1_fp32": 0.0,
|
||||
"o2Concent2_fp32": 0.0,
|
||||
"o2Level_fp32": 0.0,
|
||||
"o2_fp32": 0.0,
|
||||
"powLimit_fp32": 0.0,
|
||||
"powerGen_fp32": 0.0
|
||||
}
|
||||
{"uPower_fcsState_st":{
|
||||
"backpressure1_fp32" : 0.0,
|
||||
"backpressure2_fp32" : 0.0,
|
||||
"ch4oConcent1_fp32" : 0.0,
|
||||
"ch4oConcent2_fp32" : 0.0,
|
||||
"ch4o_fp32" : 0.0,
|
||||
"excTemp_fp32" : 0.0,
|
||||
"faultCode1_uint16" : 0,
|
||||
"faultCode2_uint16" : 0,
|
||||
"faultCode3_uint16" : 0,
|
||||
"fcuCurIns_fp32" : 0.0,
|
||||
"fcuCurPower_fp32" : 0.0,
|
||||
"fcuCur_fp32" : 0.0,
|
||||
"fcuFaultLeve_uint8" : 0,
|
||||
"fcuOutIns_fp32" : 0.0,
|
||||
"fcuOutPower_fp32" : 0.0,
|
||||
"fcuState_uint8" : 0,
|
||||
"fcuVolIns_fp32" : 0.0,
|
||||
"fcuVolPower_fp32" : 0.0,
|
||||
"fcuVol_fp32" : 0.0,
|
||||
"flameDet_uint8" : 0,
|
||||
"h2Concent1_fp32" : 0.0,
|
||||
"h2Concent2_fp32" : 0.0,
|
||||
"o2Concent1_fp32" : 0.0,
|
||||
"o2Concent2_fp32" : 0.0,
|
||||
"o2Level_fp32" : 0.0,
|
||||
"o2_fp32" : 0.0,
|
||||
"powLimit_fp32" : 0.0,
|
||||
"powerGen_fp32" : 0.0
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,38 +1,39 @@
|
||||
{
|
||||
"fcuCurToInsLimit1_uint8": 0,
|
||||
"fcuCurToinsLimit2_uint8": 0,
|
||||
"insBatCurElect_uint16": 0,
|
||||
"insBatLimit_uint16": 0,
|
||||
"insBatSoc_uint8": 0,
|
||||
"insBatTotalElect_uint16": 0,
|
||||
"insChargeState_uint8": 0,
|
||||
"insCurSocHold1_uint8": 0,
|
||||
"insCurSocHold2_uint8": 0,
|
||||
"insCurSocHold3_uint8": 0,
|
||||
"insCurrent_uint16": 0,
|
||||
"insLinkVol_uint16": 0,
|
||||
"insNegRelayState_uint8": 0,
|
||||
"insNegRes_uint16": 0,
|
||||
"insPackVol_uint16": 0,
|
||||
"insPosRelayState_uint8": 0,
|
||||
"insPosRes_uint16": 0,
|
||||
"insfaultCode_uint8": 0,
|
||||
"powBatCurElect_uint16": 0,
|
||||
"powBatSoc_uint8": 0,
|
||||
"powBatTotalElect_uint16": 0,
|
||||
"powChargeState_uint8": 0,
|
||||
"powCurSocHold1_uint8": 0,
|
||||
"powCurSocHold2_uint8": 0,
|
||||
"powCurSocHold3_uint8": 0,
|
||||
"powCurToInsLimit1_uint8": 0,
|
||||
"powCurToinsLimit2_uint8": 0,
|
||||
"powCur_uint16": 0,
|
||||
"powLinkVol_uint16": 0,
|
||||
"powNegRelayState_uint8": 0,
|
||||
"powNegRes_uint16": 0,
|
||||
"powPosRelayState_uint8": 0,
|
||||
"powPosRes_uint16": 0,
|
||||
"powerBatLimit_uint16": 0,
|
||||
"powerPackVol_uint16": 0,
|
||||
"powfaultCode_uint8": 0
|
||||
}
|
||||
{"uPower_liBatState_st":{
|
||||
"fcuCurToInsLimit1_uint8" : 0,
|
||||
"fcuCurToinsLimit2_uint8" : 0,
|
||||
"insBatCurElect_uint16" : 0,
|
||||
"insBatLimit_uint16" : 0,
|
||||
"insBatSoc_uint8" : 0,
|
||||
"insBatTotalElect_uint16" : 0,
|
||||
"insChargeState_uint8" : 0,
|
||||
"insCurSocHold1_uint8" : 0,
|
||||
"insCurSocHold2_uint8" : 0,
|
||||
"insCurSocHold3_uint8" : 0,
|
||||
"insCurrent_uint16" : 0,
|
||||
"insLinkVol_uint16" : 0,
|
||||
"insNegRelayState_uint8" : 0,
|
||||
"insNegRes_uint16" : 0,
|
||||
"insPackVol_uint16" : 0,
|
||||
"insPosRelayState_uint8" : 0,
|
||||
"insPosRes_uint16" : 0,
|
||||
"insfaultCode_uint8" : 0,
|
||||
"powBatCurElect_uint16" : 0,
|
||||
"powBatSoc_uint8" : 0,
|
||||
"powBatTotalElect_uint16" : 0,
|
||||
"powChargeState_uint8" : 0,
|
||||
"powCurSocHold1_uint8" : 0,
|
||||
"powCurSocHold2_uint8" : 0,
|
||||
"powCurSocHold3_uint8" : 0,
|
||||
"powCurToInsLimit1_uint8" : 0,
|
||||
"powCurToinsLimit2_uint8" : 0,
|
||||
"powCur_uint16" : 0,
|
||||
"powLinkVol_uint16" : 0,
|
||||
"powNegRelayState_uint8" : 0,
|
||||
"powNegRes_uint16" : 0,
|
||||
"powPosRelayState_uint8" : 0,
|
||||
"powPosRes_uint16" : 0,
|
||||
"powerBatLimit_uint16" : 0,
|
||||
"powerPackVol_uint16" : 0,
|
||||
"powfaultCode_uint8" : 0
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"currentMod_uint8": 0,
|
||||
"currentMod_uint8": 1,
|
||||
"falutLevel_uint8": 0,
|
||||
"faultCode_array":
|
||||
[
|
||||
@@ -8,5 +8,5 @@
|
||||
"powerState_uint8": 0,
|
||||
"soc_uint32": 0,
|
||||
"sustainableTime_uint32": 0,
|
||||
"workCondition_uint8": 1
|
||||
"workCondition_uint8": 5
|
||||
}
|
||||
@@ -1,65 +1,65 @@
|
||||
{"uPower_secdistState_cmd":{
|
||||
"DVL" : 0,
|
||||
"USBL" : 0,
|
||||
"bowCover1" : 0,
|
||||
"bowCover2" : 0,
|
||||
"bowCover3" : 0,
|
||||
"bowCover4" : 0,
|
||||
"bowCover5" : 0,
|
||||
"bowCover6" : 0,
|
||||
"bowRudderDeploy" : 0,
|
||||
"bowRudderServo1" : 0,
|
||||
"bowRudderServo2" : 0,
|
||||
"bowThrow" : 0,
|
||||
"bowWaterlnet1" : 0,
|
||||
"bowWaterlnet2" : 0,
|
||||
"bowWaterlnet3" : 0,
|
||||
"bowWaterlnet4" : 0,
|
||||
"bowWaterlnet5" : 0,
|
||||
"bowWaterlnet6" : 0,
|
||||
"bowWaterlnet7" : 0,
|
||||
"bowWaterlnet8" : 0,
|
||||
"buoyage" : 0,
|
||||
"buoyancyAdjust1" : 0,
|
||||
"buoyancyAdjust2" : 0,
|
||||
"buoyancyAdjust3" : 0,
|
||||
"buoyancyAdjust4" : 0,
|
||||
"buoyancyAdjust5" : 0,
|
||||
"commMast" : 1,
|
||||
"ctd1" : 1,
|
||||
"ctd2" : 1,
|
||||
"depth1" : 1,
|
||||
"depth2" : 1,
|
||||
"depth3" : 1,
|
||||
"electSensor" : 0,
|
||||
"forwardSonar" : 0,
|
||||
"inputWaterSensor1" : 1,
|
||||
"inputWaterSensor2" : 1,
|
||||
"inputWaterSensor3" : 1,
|
||||
"ins" : 1,
|
||||
"launchControler" : 0,
|
||||
"lowFreqSonar" : 0,
|
||||
"mastLiftingServo" : 0,
|
||||
"ntp" : 1,
|
||||
"overDeep1" : 1,
|
||||
"overDeep2" : 1,
|
||||
"photoSensor" : 0,
|
||||
"sideSonar" : 0,
|
||||
"singleBeamSonar1" : 0,
|
||||
"singleBeamSonar2" : 0,
|
||||
"singleBeamSonar3" : 0,
|
||||
"singleBeamSonar4" : 0,
|
||||
"singleBeamSonar5" : 0,
|
||||
"singleBeamSonar6" : 0,
|
||||
"singleBeamSonar7" : 0,
|
||||
"singleBeamSonar8" : 0,
|
||||
"soundVeloc" : 1,
|
||||
"sternRudderServo1" : 0,
|
||||
"sternRudderServo2" : 0,
|
||||
"sternRudderServo3" : 0,
|
||||
"sternRudderServo4" : 0,
|
||||
"sternThrow" : 0,
|
||||
"thruster" : 0,
|
||||
"waterInject" : 0
|
||||
"DVL_uni8" : 0,
|
||||
"USBL_uni8" : 0,
|
||||
"bowCover1_uni8" : 0,
|
||||
"bowCover2_uni8" : 0,
|
||||
"bowCover3_uni8" : 0,
|
||||
"bowCover4_uni8" : 0,
|
||||
"bowCover5_uni8" : 0,
|
||||
"bowCover6_uni8" : 0,
|
||||
"bowRudderDeploy_uni8" : 0,
|
||||
"bowRudderServo1_uni8" : 0,
|
||||
"bowRudderServo2_uni8" : 0,
|
||||
"bowThrow_uni8" : 0,
|
||||
"bowWaterlnet1_uni8" : 0,
|
||||
"bowWaterlnet2_uni8" : 0,
|
||||
"bowWaterlnet3_uni8" : 0,
|
||||
"bowWaterlnet4_uni8" : 0,
|
||||
"bowWaterlnet5_uni8" : 0,
|
||||
"bowWaterlnet6_uni8" : 0,
|
||||
"bowWaterlnet7_uni8" : 0,
|
||||
"bowWaterlnet8_uni8" : 0,
|
||||
"buoyage_uni8" : 0,
|
||||
"buoyancyAdjust1_uni8" : 0,
|
||||
"buoyancyAdjust2_uni8" : 0,
|
||||
"buoyancyAdjust3_uni8" : 0,
|
||||
"buoyancyAdjust4_uni8" : 0,
|
||||
"buoyancyAdjust5_uni8" : 0,
|
||||
"commMast_uni8" : 1,
|
||||
"ctd1_uni8" : 1,
|
||||
"ctd2_uni8" : 1,
|
||||
"depth1_uni8" : 1,
|
||||
"depth2_uni8" : 1,
|
||||
"depth3_uni8" : 1,
|
||||
"electSensor_uni8" : 0,
|
||||
"forwardSonar_uni8" : 0,
|
||||
"inputWaterSensor1_uni8" : 1,
|
||||
"inputWaterSensor2_uni8" : 1,
|
||||
"inputWaterSensor3_uni8" : 1,
|
||||
"ins_uni8" : 1,
|
||||
"launchControler_uni8" : 0,
|
||||
"lowFreqSonar_uni8" : 0,
|
||||
"mastLiftingServo_uni8" : 0,
|
||||
"ntp_uni8" : 1,
|
||||
"overDeep1_uni8" : 1,
|
||||
"overDeep2_uni8" : 1,
|
||||
"photoSensor_uni8" : 0,
|
||||
"sideSonar_uni8" : 0,
|
||||
"singleBeamSonar1_uni8" : 0,
|
||||
"singleBeamSonar2_uni8" : 1,
|
||||
"singleBeamSonar3_uni8" : 0,
|
||||
"singleBeamSonar4_uni8" : 0,
|
||||
"singleBeamSonar5_uni8" : 0,
|
||||
"singleBeamSonar6_uni8" : 0,
|
||||
"singleBeamSonar7_uni8" : 0,
|
||||
"singleBeamSonar8_uni8" : 0,
|
||||
"soundVeloc_uni8" : 1,
|
||||
"sternRudderServo1_uni8" : 0,
|
||||
"sternRudderServo2_uni8" : 0,
|
||||
"sternRudderServo3_uni8" : 0,
|
||||
"sternRudderServo4_uni8" : 0,
|
||||
"sternThrow_uni8" : 0,
|
||||
"thruster_uni8" : 0,
|
||||
"waterInject_uni8" : 0
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"id_uint8" : 1,
|
||||
"cmd_uint8" : 1
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"state_uint8" : 1
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"state_uint8" : 1
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"powerCmd_uint8" :1
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"stamp_fp64" : 0,
|
||||
"op_int32" : 1
|
||||
}
|
||||
@@ -142,6 +142,57 @@ bool PMtest::Iterate()
|
||||
Notify(DB_TO_PM_MSCMD, content);
|
||||
}
|
||||
}
|
||||
else if (c == 'e')
|
||||
{
|
||||
//发送DB_TO_PM_MISSION消息
|
||||
std::cout << "发送uExternComm_setDeviceSwitch_cmd消息" << std::endl;
|
||||
string filename = "/home/zjk/project/H100/H100PowerManger/data/testmsg/uExternComm_setDeviceSwitch_cmd.json";
|
||||
string content;
|
||||
if(readJsonFromFile(filename, content)) {
|
||||
Notify("uExternComm_setDeviceSwitch_cmd", content);
|
||||
}
|
||||
}
|
||||
else if (c == 'q')
|
||||
{
|
||||
//发送DB_TO_PM_MISSION消息
|
||||
std::cout << "发送uExternComm_setOpCondition_cmd消息" << std::endl;
|
||||
string filename = "/home/zjk/project/H100/H100PowerManger/data/testmsg/uExternComm_setOpCondition_cmd.json";
|
||||
string content;
|
||||
if(readJsonFromFile(filename, content)) {
|
||||
Notify("uExternComm_setOpCondition_cmd", content);
|
||||
}
|
||||
}
|
||||
else if (c == 'w')
|
||||
{
|
||||
//发送DB_TO_PM_MISSION消息
|
||||
std::cout << "发送uExternComm_setOpMode_cmd消息" << std::endl;
|
||||
string filename = "/home/zjk/project/H100/H100PowerManger/data/testmsg/uExternComm_setOpMode_cmd.json";
|
||||
string content;
|
||||
if(readJsonFromFile(filename, content)) {
|
||||
Notify("uExternComm_setOpMode_cmd", content);
|
||||
}
|
||||
}
|
||||
else if (c == 'r')
|
||||
{
|
||||
//发送DB_TO_PM_MISSION消息
|
||||
std::cout << "发送uExternComm_setPowerSystem_cmd消息" << std::endl;
|
||||
string filename = "/home/zjk/project/H100/H100PowerManger/data/testmsg/uExternComm_setPowerSystem_cmd.json";
|
||||
string content;
|
||||
if(readJsonFromFile(filename, content)) {
|
||||
Notify("uExternComm_setPowerSystem_cmd", content);
|
||||
}
|
||||
}
|
||||
else if (c == 't')
|
||||
{
|
||||
//发送DB_TO_PM_MISSION消息
|
||||
std::cout << "发送uExternComm_setPowerSystem_cmd消息" << std::endl;
|
||||
string filename = "/home/zjk/project/H100/H100PowerManger/data/testmsg/uPlan_planStop_cmd.json";
|
||||
string content;
|
||||
if(readJsonFromFile(filename, content)) {
|
||||
Notify("uPlan_planStop_cmd", content);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
return(true);
|
||||
}
|
||||
|
||||
@@ -30,6 +30,13 @@ using namespace std;
|
||||
//决策消息
|
||||
#define DB_TO_PM_DEEPTH "uDevice_depth_st"
|
||||
#define DB_TO_PM_MISSION "uPlan_taskStart_cmd"
|
||||
#define DB_TO_PM_TASKSTOP "uPlan_planStop_cmd"
|
||||
|
||||
//外部通信消息
|
||||
#define DB_TO_PM_SETOPCONDITION "uExternComm_setOpCondition_cmd"
|
||||
#define DB_TO_PM_SETOPMODE "uExternComm_setOpMode_cmd"
|
||||
#define DB_TO_PM_SETPMSYS "uExternComm_setPowerSystem_cmd"
|
||||
#define DB_TO_PM_SETDEVSWITCH "uExternComm_setDeviceSwitch_cmd"
|
||||
|
||||
class PMtest : public CMOOSApp
|
||||
{
|
||||
|
||||
@@ -41,6 +41,7 @@ TARGET_LINK_LIBRARIES(pPowerManger
|
||||
pthread
|
||||
jsoncpp
|
||||
${SYSTEM_LIBS}
|
||||
dl
|
||||
# SQLiteDB
|
||||
# sqlite3
|
||||
)
|
||||
|
||||
+1994
-179
File diff suppressed because it is too large
Load Diff
@@ -9,6 +9,7 @@
|
||||
#include <cxxabi.h> // 新增头文件,用于demangle功能
|
||||
#include "pmSysvariable.h"
|
||||
#include "driver.h"
|
||||
#include "PowerManger.h"
|
||||
// 前向声明
|
||||
class PowerManger;
|
||||
|
||||
@@ -21,13 +22,17 @@ enum class PowerSystemState {
|
||||
//==================状态切换事件=============================
|
||||
struct InitEvent : tinyfsm::Event { };
|
||||
struct StandbyEvent : tinyfsm::Event { };
|
||||
struct FaultEvent : tinyfsm::Event {
|
||||
unsigned int faultCode;
|
||||
FaultEvent(unsigned int code) : faultCode(code) {}
|
||||
};
|
||||
struct TaskStopEvent : tinyfsm::Event { };
|
||||
|
||||
//==================状态流程事件============================
|
||||
struct MasterCommandEvent : tinyfsm::Event {};
|
||||
struct TaskStart : tinyfsm::Event { };
|
||||
struct TaskStartEvent : tinyfsm::Event {
|
||||
int type;
|
||||
bool enableBowRudder;
|
||||
bool enableBuoyancyAdjustment;
|
||||
TaskStartEvent() : type(0), enableBowRudder(false), enableBuoyancyAdjustment(false) {};
|
||||
TaskStartEvent(int type, bool bowRudder, bool buoyancyAdjustment) : type(type), enableBowRudder(bowRudder), enableBuoyancyAdjustment(buoyancyAdjustment) {};
|
||||
};
|
||||
struct DeviceCmd : tinyfsm::Event { };
|
||||
struct DevCmdExt : tinyfsm::Event {
|
||||
int id;
|
||||
@@ -35,7 +40,24 @@ struct DevCmdExt : tinyfsm::Event {
|
||||
DevCmdExt() : id(0), cmd(0) {};
|
||||
DevCmdExt(int id, int cmd) : id(id), cmd(cmd) {};
|
||||
};
|
||||
|
||||
struct FaultEvent : tinyfsm::Event {
|
||||
unsigned int subDisSysFaultCode;
|
||||
unsigned int disSysFaultCode;
|
||||
unsigned int powerFaultCode;
|
||||
unsigned int fcsFaultCode;
|
||||
unsigned int ccsFaultCode;
|
||||
FaultEvent() : subDisSysFaultCode(0), disSysFaultCode(0), powerFaultCode(0), fcsFaultCode(0), ccsFaultCode(0) {};
|
||||
FaultEvent(unsigned int subDisSysFaultCode,
|
||||
unsigned int disSysFaultCode,
|
||||
unsigned int powerFaultCode,
|
||||
unsigned int fcsFaultCode,
|
||||
unsigned int ccsFaultCode)
|
||||
: subDisSysFaultCode(subDisSysFaultCode),
|
||||
disSysFaultCode(disSysFaultCode),
|
||||
powerFaultCode(powerFaultCode),
|
||||
fcsFaultCode(fcsFaultCode),
|
||||
ccsFaultCode(ccsFaultCode) {};
|
||||
};
|
||||
|
||||
class PowerManagerFsm : public tinyfsm::Fsm<PowerManagerFsm> {
|
||||
protected:
|
||||
@@ -46,21 +68,31 @@ public:
|
||||
static void init(PowerManger* powerManager) {
|
||||
pm = powerManager;
|
||||
}
|
||||
// 响应事件默认实现
|
||||
|
||||
virtual void react(tinyfsm::Event const &) { std::cout << "[ Reseve Envt ] " << "No Idear" << std::endl; }
|
||||
virtual void react(InitEvent const &) {};
|
||||
virtual void react(StandbyEvent const &) { };
|
||||
virtual void react(FaultEvent const &) { };
|
||||
virtual void react(MasterCommandEvent const &) { LOG_F(INFO, "MasterCommandEvent");};
|
||||
virtual void react(TaskStart const &) { LOG_F(INFO, "TaskStart"); };
|
||||
virtual void react(DeviceCmd const &) { LOG_F(INFO, "DeviceCmd"); };
|
||||
virtual void react(DevCmdExt const &e);
|
||||
virtual void react(TaskStartEvent const &e);
|
||||
virtual void react(FaultEvent const &e);
|
||||
virtual void react(TaskStopEvent const &e);
|
||||
|
||||
//操作函数
|
||||
void handelPowerCmd();
|
||||
void handleModCmd();
|
||||
void handleWorkCmd();
|
||||
void handleDeviceCmd();
|
||||
//故障处理
|
||||
void basicNavigationFault(FaultEvent const &e);
|
||||
void extendedNavigationFault(FaultEvent const &e);
|
||||
void obstacleAvoidanceFault(FaultEvent const &e);
|
||||
void buoyancyControlFault(FaultEvent const &e);
|
||||
void communicationSystemFault(FaultEvent const &e);
|
||||
void payloadSystemFault(FaultEvent const &e);
|
||||
void emergencySystemFault(FaultEvent const &e);
|
||||
void sensorSystemFault(FaultEvent const &e);
|
||||
|
||||
// 状态机生命周期方法
|
||||
virtual void entry() {
|
||||
@@ -110,8 +142,6 @@ public:
|
||||
void entry() override;
|
||||
void react(StandbyEvent const &) override;
|
||||
void react(MasterCommandEvent const &) override;
|
||||
void react(TaskStart const &) override;
|
||||
// void react(DeviceCmd const &) override;
|
||||
private:
|
||||
void handlePowerOn();
|
||||
};
|
||||
@@ -121,8 +151,6 @@ class ShoreBasedReady : public PowerManagerFsm {
|
||||
public:
|
||||
void entry() override;
|
||||
void react(MasterCommandEvent const &) override;
|
||||
void react(TaskStart const &) override;
|
||||
// void react(DeviceCmd const &) override;
|
||||
private:
|
||||
// void handlePowerCommands();
|
||||
// void handlePowerOn();
|
||||
@@ -133,7 +161,7 @@ class WaterBasedReady : public PowerManagerFsm {
|
||||
void entry() override;
|
||||
void react(MasterCommandEvent const &) override;
|
||||
// void react(DeviceCmd const &) override;
|
||||
void react(TaskStart const &) override;
|
||||
// void react(TaskStart const &) override;
|
||||
private:
|
||||
// void handlePowerCommands();
|
||||
// void handlePowerOn();
|
||||
@@ -144,7 +172,7 @@ class CruiseMode : public PowerManagerFsm {
|
||||
void entry() override;
|
||||
void react(MasterCommandEvent const &) override;
|
||||
// void react(DeviceCmd const &) override;
|
||||
void react(TaskStart const &) override;
|
||||
// void react(TaskStart const &) override;
|
||||
private:
|
||||
// void handlePowerCommands();
|
||||
};
|
||||
@@ -155,7 +183,7 @@ class HighSpeedMode : public PowerManagerFsm {
|
||||
void entry() override;
|
||||
void react(MasterCommandEvent const &) override;
|
||||
// void react(DeviceCmd const &) override;
|
||||
void react(TaskStart const &) override;
|
||||
// void react(TaskStart const &) override;
|
||||
private:
|
||||
// void handlePowerCommands();
|
||||
};
|
||||
@@ -165,7 +193,7 @@ class FloatDown : public PowerManagerFsm {
|
||||
void entry() override;
|
||||
void react(MasterCommandEvent const &) override;
|
||||
// void react(DeviceCmd const &) override;
|
||||
void react(TaskStart const &) override;
|
||||
// void react(TaskStart const &) override;
|
||||
private:
|
||||
// void handlePowerCommands();
|
||||
};
|
||||
@@ -175,7 +203,7 @@ class FloatAdjust : public PowerManagerFsm {
|
||||
void entry() override;
|
||||
void react(MasterCommandEvent const &) override;
|
||||
// void react(DeviceCmd const &) override;
|
||||
void react(TaskStart const &) override;
|
||||
// void react(TaskStart const &) override;
|
||||
private:
|
||||
// void handlePowerCommands();
|
||||
};
|
||||
@@ -185,7 +213,7 @@ class UnderwaterSurvey : public PowerManagerFsm {
|
||||
void entry() override;
|
||||
void react(MasterCommandEvent const &) override;
|
||||
// void react(DeviceCmd const &) override;
|
||||
void react(TaskStart const &) override;
|
||||
// void react(TaskStart const &) override;
|
||||
private:
|
||||
// void handlePowerCommands();
|
||||
|
||||
@@ -196,7 +224,7 @@ class SurfaceSurvey : public PowerManagerFsm {
|
||||
void entry() override;
|
||||
void react(MasterCommandEvent const &) override;
|
||||
// void react(DeviceCmd const &) override;
|
||||
void react(TaskStart const &) override;
|
||||
// void react(TaskStart const &) override;
|
||||
private:
|
||||
// void handlePowerCommands();
|
||||
|
||||
@@ -207,7 +235,7 @@ class DJMode : public PowerManagerFsm {
|
||||
void entry() override;
|
||||
void react(MasterCommandEvent const &) override;
|
||||
// void react(DeviceCmd const &) override;
|
||||
void react(TaskStart const &) override;
|
||||
// void react(TaskStart const &) override;
|
||||
private:
|
||||
// void handlePowerCommands();
|
||||
|
||||
@@ -218,7 +246,7 @@ class RemoteControl : public PowerManagerFsm {
|
||||
void entry() override;
|
||||
void react(MasterCommandEvent const &) override;
|
||||
// void react(DeviceCmd const &) override;
|
||||
void react(TaskStart const &) override;
|
||||
// void react(TaskStart const &) override;
|
||||
private:
|
||||
// void handlePowerCommands();
|
||||
};
|
||||
|
||||
@@ -29,7 +29,7 @@ PowerManger::PowerManger()
|
||||
workCondition = 0;
|
||||
currentMod = 0;
|
||||
powerState = 0;
|
||||
falutLevel = 0;
|
||||
faultLevel = 0;
|
||||
soc = 0;
|
||||
sustainableTime = 0;
|
||||
m_faultNum = 0;
|
||||
@@ -125,6 +125,7 @@ bool PowerManger::Iterate()
|
||||
AppCastingMOOSApp::Iterate();
|
||||
// 打印当前状态
|
||||
// cout << " Current State : " << (int)PowerManagerFsm::current_state_ptr->getCurrentState();
|
||||
faultLevel = getFaultLevel();
|
||||
if (m_ticker++ % 5 == 0)
|
||||
{
|
||||
m_CcuColCmd.heartbeat++;
|
||||
@@ -196,6 +197,11 @@ void PowerManger::registerVariables()
|
||||
Register(DB_TO_PM_SUBDISSTATE, 0);
|
||||
Register(DB_TO_PM_MISSION,0);
|
||||
Register(DB_TO_PM_DEEPTH,0);
|
||||
Register(DB_TO_PM_SETOPCONDITION,0);
|
||||
Register(DB_TO_PM_SETOPMODE,0);
|
||||
Register(DB_TO_PM_SETPMSYS,0);
|
||||
Register(DB_TO_PM_SETDEVSWITCH,0);
|
||||
Register(DB_TO_PM_TASKSTOP,0);
|
||||
}
|
||||
|
||||
|
||||
@@ -277,14 +283,6 @@ void PowerManger::printState(const std::string& stateName, const std::string& de
|
||||
}
|
||||
|
||||
|
||||
//==============================系统操作函数====================
|
||||
bool PowerManger::shutdown()
|
||||
{
|
||||
m_CcuColCmd.masterState = 0xFF; //关机
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
void PowerManger::initControlCmd()
|
||||
{
|
||||
//================初始化配电指令=============================
|
||||
@@ -340,4 +338,17 @@ void PowerManger::initControlCmd()
|
||||
m_msCmd.workCMD = 99;
|
||||
//================初始化设备驱动指令========================
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
unsigned char PowerManger::getFaultLevel()
|
||||
{
|
||||
unsigned char maxLevel = 0;
|
||||
for (auto code : faultCode) {
|
||||
// 提取0xabcd中的b位 (右移8位后取低4位)
|
||||
unsigned char level = (code >> 8) & 0xF;
|
||||
if (level > maxLevel) {
|
||||
maxLevel = level;
|
||||
}
|
||||
}
|
||||
return maxLevel;
|
||||
}
|
||||
@@ -62,6 +62,7 @@ class PowerManger : public AppCastingMOOSApp
|
||||
|
||||
public:
|
||||
void updateTime(){m_current_time = MOOSTime();}
|
||||
unsigned char getFaultLevel();
|
||||
//数据库
|
||||
// SQLiteDB* m_db;
|
||||
bool writeDataToDB();
|
||||
@@ -85,14 +86,13 @@ class PowerManger : public AppCastingMOOSApp
|
||||
disSysBreakerList m_currentDisBreakerState; //配电断路器状态
|
||||
DriverTable m_currentDriverState;
|
||||
DriverTable m_subDisSysState;
|
||||
|
||||
int m_depth;
|
||||
MissionState m_missionState;
|
||||
//===========================STATE=========================================
|
||||
unsigned char workCondition;
|
||||
unsigned char currentMod;
|
||||
unsigned char powerState;
|
||||
unsigned char falutLevel;
|
||||
unsigned char faultLevel;
|
||||
vector<unsigned int> faultCode;
|
||||
unsigned int soc;
|
||||
unsigned int sustainableTime;
|
||||
@@ -125,7 +125,6 @@ class PowerManger : public AppCastingMOOSApp
|
||||
|
||||
//==================================================================================
|
||||
int checkError();
|
||||
bool shutdown();
|
||||
|
||||
bool sendNotification(const std::string& key, const std::string& value) {
|
||||
return Notify(key, value);
|
||||
|
||||
@@ -27,7 +27,11 @@ bool UpperCommManager::processUpperMsg(const string& key, const string& strJson)
|
||||
}
|
||||
else if(key == DB_TO_PM_MISSION) {
|
||||
m_pm->m_missionState = getMission(key, strJson);
|
||||
//TODO:转移到对应工况下
|
||||
TaskStartEvent event;
|
||||
event.type = m_pm->m_missionState.type;
|
||||
event.enableBowRudder = m_pm->m_missionState.enableBowRudder;
|
||||
event.enableBuoyancyAdjustment = m_pm->m_missionState.enableBuoyancyAdjustment;
|
||||
PowerManagerFsm::dispatch(event);
|
||||
return true;
|
||||
} else if(key == DB_TO_PM_SETOPCONDITION) {
|
||||
m_pm->m_msCmd.workCMD = getSetOpCondition(key, strJson);
|
||||
@@ -58,6 +62,16 @@ bool UpperCommManager::processUpperMsg(const string& key, const string& strJson)
|
||||
}
|
||||
LOG_F(INFO, "set dev switch success");
|
||||
return true;
|
||||
} else if(key == DB_TO_PM_TASKSTOP) {
|
||||
bool stop = getTaskStop(key, strJson);
|
||||
if (stop) {
|
||||
LOG_F(INFO, "task stop success");
|
||||
return true;
|
||||
}
|
||||
else {
|
||||
LOG_F(WARNING, "task stop error:%s", strJson.c_str());
|
||||
return false;
|
||||
}
|
||||
}
|
||||
LOG_F(WARNING, "Unknown key: %s", key.c_str());
|
||||
return false;
|
||||
@@ -178,8 +192,8 @@ int UpperCommManager::getSetOpCondition(const std::string& key, const std::strin
|
||||
|
||||
// 检查并读取操作条件
|
||||
if (root.isMember("state_uint8") && root["state_uint8"].isUInt()) {
|
||||
return root["opCondition"].asUInt();
|
||||
LOG_F(INFO, "上位机指令:opCondition: %d", root["opCondition"].asUInt());
|
||||
return root["state_uint8"].asUInt();
|
||||
LOG_F(INFO, "上位机指令:opCondition: %d", root["state_uint8"].asUInt());
|
||||
} else {
|
||||
LOG_F(WARNING, "缺少或类型不匹配: opCondition");
|
||||
return -1;
|
||||
@@ -256,9 +270,28 @@ DeviceSwitchCmd UpperCommManager::getSetDevSwitch(const std::string& key, const
|
||||
LOG_F(WARNING, "缺少或类型不匹配: state_bool");
|
||||
}
|
||||
return cmd;
|
||||
}
|
||||
|
||||
const std::string UpperCommManager::getCurrentEquState(DriverTable& driver)
|
||||
}
|
||||
|
||||
bool UpperCommManager::getTaskStop(const std::string& key, const std::string& msg) {
|
||||
Json::Value root;
|
||||
Json::CharReaderBuilder builder;
|
||||
JSONCPP_STRING errs;
|
||||
|
||||
// 解析JSON字符串
|
||||
std::istringstream stream(msg);
|
||||
if (!Json::parseFromStream(builder, stream, &root, &errs)) {
|
||||
LOG_F(WARNING, "JSON解析失败: %s", errs.c_str());
|
||||
return false;
|
||||
}
|
||||
|
||||
// 检查op_int32字段
|
||||
if (root.isMember("op_int32") && root["op_int32"].isInt()) {
|
||||
return root["op_int32"].asInt() == 1;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
const std::string UpperCommManager::getCurrentEquState(DriverTable& driver)
|
||||
{
|
||||
return m_pm->m_driver.saveDriverTableToJson(&driver);
|
||||
}
|
||||
@@ -337,8 +370,8 @@ void UpperCommManager::buildSystemReport() {
|
||||
suffix = getTypeName(typeid(m_pm->powerState).name());
|
||||
pms[VAR_TO_STR(powerState)+suffix] = m_pm->powerState;
|
||||
|
||||
suffix = getTypeName(typeid(m_pm->falutLevel).name());
|
||||
pms[VAR_TO_STR(falutLevel)+suffix] = m_pm->falutLevel;
|
||||
suffix = getTypeName(typeid(m_pm->faultLevel).name());
|
||||
pms[VAR_TO_STR(faultLevel)+suffix] = m_pm->faultLevel;
|
||||
|
||||
Json::Value faultCode_array;
|
||||
for(auto val : m_pm->faultCode)
|
||||
@@ -348,10 +381,10 @@ void UpperCommManager::buildSystemReport() {
|
||||
pms[VAR_TO_STR(faultCode_array)] = faultCode_array;
|
||||
|
||||
suffix = getTypeName(typeid(m_pm->soc).name());
|
||||
pms[VAR_TO_STR(soc)+suffix] = m_pm->soc;
|
||||
pms["soc_uint16"] = m_pm->soc;
|
||||
|
||||
suffix = getTypeName(typeid(m_pm->sustainableTime).name());
|
||||
pms[VAR_TO_STR(sustainableTime)+suffix] = m_pm->sustainableTime;
|
||||
pms["sustainableTime_int64"] = m_pm->sustainableTime;
|
||||
|
||||
//2.构建燃料电池状态报告
|
||||
suffix = getTypeName(typeid(m_pm->m_pmCurrentState.ccustate.fcuState).name());
|
||||
|
||||
@@ -27,7 +27,8 @@ using namespace std;
|
||||
|
||||
//决策消息
|
||||
#define DB_TO_PM_DEEPTH "uDevice_depth_st"
|
||||
#define DB_TO_PM_MISSION "uPlan_taskStart_cmd"
|
||||
#define DB_TO_PM_MISSION "uPlan_taskReport_st"
|
||||
#define DB_TO_PM_TASKSTOP "uPlan_planStop_cmd"
|
||||
|
||||
//外部通信消息
|
||||
#define DB_TO_PM_SETOPCONDITION "uExternComm_setOpCondition_cmd"
|
||||
@@ -57,6 +58,7 @@ public:
|
||||
const DriverTable getSubDisState(const std::string& key, const std::string& msg);
|
||||
const int getDeepth(const std::string& key, const std::string& msg);
|
||||
MissionState getMission(const std::string& key, const std::string& msg);
|
||||
bool getTaskStop(const std::string& key, const std::string& msg);
|
||||
// 处理外部通信消息
|
||||
int getSetOpCondition(const std::string& key, const std::string& msg);
|
||||
int getSetOpMode(const std::string& key, const std::string& msg);
|
||||
|
||||
+236
-238
@@ -93,209 +93,208 @@ void Driver::getSTANDBYTable(DriverTable* driverTable)
|
||||
void Driver::getSHORE_BASED_READYable(DriverTable* driverTable)
|
||||
{
|
||||
// 打开所有传感器
|
||||
driverTable->depth1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->depth2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->depth3 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->overDeep1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->overDeep2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->ctd1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->ctd2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->soundVeloc = DRIVER_FULL_POWER_ON;
|
||||
driverTable->commMast = DRIVER_FULL_POWER_ON;
|
||||
driverTable->ins = DRIVER_FULL_POWER_ON;
|
||||
driverTable->ntp = DRIVER_FULL_POWER_ON;
|
||||
driverTable->inputWaterSensor1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->inputWaterSensor2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->inputWaterSensor3 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->depth1 = 1;
|
||||
driverTable->depth2 = 1;
|
||||
driverTable->depth3 = 1;
|
||||
driverTable->overDeep1 = 1;
|
||||
driverTable->overDeep2 = 1;
|
||||
driverTable->ctd1 = 1;
|
||||
driverTable->ctd2 = 1;
|
||||
driverTable->soundVeloc = 1;
|
||||
driverTable->commMast = 1;
|
||||
driverTable->ins = 1;
|
||||
driverTable->ntp = 1;
|
||||
driverTable->inputWaterSensor1 = 1;
|
||||
driverTable->inputWaterSensor2 = 1;
|
||||
driverTable->inputWaterSensor3 = 1;
|
||||
|
||||
// 允许启动负载
|
||||
// 关闭xcz
|
||||
driverTable->photoSensor = DRIVER_STANDBY;
|
||||
driverTable->electSensor = DRIVER_STANDBY;
|
||||
driverTable->launchControler = DRIVER_STANDBY;
|
||||
driverTable->sideSonar = DRIVER_POWER_OFF;
|
||||
driverTable->buoyage = DRIVER_STANDBY;
|
||||
driverTable->photoSensor = 0;
|
||||
driverTable->electSensor = 0;
|
||||
driverTable->launchControler = 0;
|
||||
driverTable->sideSonar = 0;
|
||||
driverTable->buoyage = 0;
|
||||
|
||||
// 关闭所有水声设备
|
||||
driverTable->singleBeamSonar1 = DRIVER_POWER_OFF;
|
||||
driverTable->singleBeamSonar2 = DRIVER_POWER_OFF;
|
||||
driverTable->singleBeamSonar3 = DRIVER_POWER_OFF;
|
||||
driverTable->singleBeamSonar4 = DRIVER_POWER_OFF;
|
||||
driverTable->singleBeamSonar5 = DRIVER_POWER_OFF;
|
||||
driverTable->singleBeamSonar6 = DRIVER_POWER_OFF;
|
||||
driverTable->singleBeamSonar7 = DRIVER_POWER_OFF;
|
||||
driverTable->singleBeamSonar8 = DRIVER_POWER_OFF;
|
||||
driverTable->DVL = DRIVER_POWER_OFF;
|
||||
driverTable->forwardSonar = DRIVER_POWER_OFF;
|
||||
driverTable->lowFreqSonar = DRIVER_POWER_OFF;
|
||||
driverTable->USBL = DRIVER_POWER_OFF;
|
||||
driverTable->singleBeamSonar1 = 0;
|
||||
driverTable->singleBeamSonar2 = 0;
|
||||
driverTable->singleBeamSonar3 = 0;
|
||||
driverTable->singleBeamSonar4 = 0;
|
||||
driverTable->singleBeamSonar5 = 0;
|
||||
driverTable->singleBeamSonar6 = 0;
|
||||
driverTable->singleBeamSonar7 = 0;
|
||||
driverTable->singleBeamSonar8 = 0;
|
||||
driverTable->DVL = 0;
|
||||
driverTable->forwardSonar = 0;
|
||||
driverTable->lowFreqSonar = 0;
|
||||
driverTable->USBL = 0;
|
||||
|
||||
// 打开必要的执行机构
|
||||
driverTable->bowCover1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowCover2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowCover3 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowCover4 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowCover5 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowCover6 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderDeploy = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowWaterlnet1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowWaterlnet2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowWaterlnet3 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowWaterlnet4 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowWaterlnet5 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowWaterlnet6 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowWaterlnet7 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowWaterlnet8 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->waterInject = DRIVER_FULL_POWER_ON;
|
||||
driverTable->mastLiftingServo = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust3 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust4 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust5 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->sternRudderServo1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->sternRudderServo2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->sternRudderServo3 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->sternRudderServo4 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->thruster = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowThrow = DRIVER_FULL_POWER_ON;
|
||||
driverTable->sternThrow = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowCover1 = 1;
|
||||
driverTable->bowCover2 = 1;
|
||||
driverTable->bowCover3 = 1;
|
||||
driverTable->bowCover4 = 1;
|
||||
driverTable->bowCover5 = 1;
|
||||
driverTable->bowCover6 = 1;
|
||||
driverTable->bowRudderDeploy = 1;
|
||||
driverTable->bowRudderServo1 = 1;
|
||||
driverTable->bowRudderServo2 = 1;
|
||||
driverTable->bowWaterlnet1 = 1;
|
||||
driverTable->bowWaterlnet2 = 1;
|
||||
driverTable->bowWaterlnet3 = 1;
|
||||
driverTable->bowWaterlnet4 = 1;
|
||||
driverTable->bowWaterlnet5 = 1;
|
||||
driverTable->bowWaterlnet6 = 1;
|
||||
driverTable->bowWaterlnet7 = 1;
|
||||
driverTable->bowWaterlnet8 = 1;
|
||||
driverTable->waterInject = 1;
|
||||
driverTable->mastLiftingServo = 1;
|
||||
driverTable->buoyancyAdjust1 = 1;
|
||||
driverTable->buoyancyAdjust2 = 1;
|
||||
driverTable->buoyancyAdjust3 = 1;
|
||||
driverTable->buoyancyAdjust4 = 1;
|
||||
driverTable->buoyancyAdjust5 = 1;
|
||||
driverTable->sternRudderServo1 = 1;
|
||||
driverTable->sternRudderServo2 = 1;
|
||||
driverTable->sternRudderServo3 = 1;
|
||||
driverTable->sternRudderServo4 = 1;
|
||||
driverTable->thruster = 1;
|
||||
driverTable->bowThrow = 1;
|
||||
driverTable->sternThrow = 1;
|
||||
}
|
||||
|
||||
void Driver::getWATER_BASED_READYable(DriverTable* driverTable)
|
||||
{
|
||||
// 打开所有传感器
|
||||
driverTable->depth1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->depth2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->depth3 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->overDeep1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->overDeep2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->ctd1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->ctd2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->soundVeloc = DRIVER_FULL_POWER_ON;
|
||||
driverTable->commMast = DRIVER_FULL_POWER_ON;
|
||||
driverTable->ins = DRIVER_FULL_POWER_ON;
|
||||
driverTable->ntp = DRIVER_FULL_POWER_ON;
|
||||
driverTable->inputWaterSensor1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->inputWaterSensor2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->inputWaterSensor3 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->depth1 = 1;
|
||||
driverTable->depth2 = 1;
|
||||
driverTable->depth3 = 1;
|
||||
driverTable->overDeep1 = 1;
|
||||
driverTable->overDeep2 = 1;
|
||||
driverTable->ctd1 = 1;
|
||||
driverTable->ctd2 = 1;
|
||||
driverTable->soundVeloc = 1;
|
||||
driverTable->commMast = 1;
|
||||
driverTable->ins = 1;
|
||||
driverTable->ntp = 1;
|
||||
driverTable->inputWaterSensor1 = 1;
|
||||
driverTable->inputWaterSensor2 = 1;
|
||||
driverTable->inputWaterSensor3 = 1;
|
||||
|
||||
// 允许启动负载
|
||||
driverTable->photoSensor = DRIVER_STANDBY;
|
||||
driverTable->electSensor = DRIVER_STANDBY;
|
||||
driverTable->launchControler = DRIVER_STANDBY;
|
||||
driverTable->sideSonar = DRIVER_STANDBY;
|
||||
driverTable->buoyage = DRIVER_STANDBY;
|
||||
driverTable->photoSensor = 0;
|
||||
driverTable->electSensor = 0;
|
||||
driverTable->launchControler = 0;
|
||||
driverTable->sideSonar = 0;
|
||||
driverTable->buoyage = 0;
|
||||
|
||||
// 所有水声设备待机
|
||||
// 打开DVL
|
||||
driverTable->singleBeamSonar1 = DRIVER_STANDBY;
|
||||
driverTable->singleBeamSonar2 = DRIVER_STANDBY;
|
||||
driverTable->singleBeamSonar3 = DRIVER_STANDBY;
|
||||
driverTable->singleBeamSonar4 = DRIVER_STANDBY;
|
||||
driverTable->singleBeamSonar5 = DRIVER_STANDBY;
|
||||
driverTable->singleBeamSonar6 = DRIVER_STANDBY;
|
||||
driverTable->singleBeamSonar7 = DRIVER_STANDBY;
|
||||
driverTable->singleBeamSonar8 = DRIVER_STANDBY;
|
||||
driverTable->DVL = DRIVER_FULL_POWER_ON;
|
||||
driverTable->forwardSonar = DRIVER_STANDBY;
|
||||
driverTable->lowFreqSonar = DRIVER_STANDBY;
|
||||
driverTable->USBL = DRIVER_STANDBY;
|
||||
driverTable->singleBeamSonar1 = 0;
|
||||
driverTable->singleBeamSonar2 = 0;
|
||||
driverTable->singleBeamSonar3 = 0;
|
||||
driverTable->singleBeamSonar4 = 0;
|
||||
driverTable->singleBeamSonar5 = 0;
|
||||
driverTable->singleBeamSonar6 = 0;
|
||||
driverTable->singleBeamSonar7 = 0;
|
||||
driverTable->singleBeamSonar8 = 0;
|
||||
driverTable->DVL = 0;
|
||||
driverTable->forwardSonar = 0;
|
||||
driverTable->lowFreqSonar = 0;
|
||||
driverTable->USBL = 0;
|
||||
|
||||
// 打开必要的执行机构
|
||||
driverTable->bowCover1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowCover2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowCover3 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowCover4 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowCover5 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowCover6 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderDeploy = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowWaterlnet1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowWaterlnet2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowWaterlnet3 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowWaterlnet4 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowWaterlnet5 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowWaterlnet6 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowWaterlnet7 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowWaterlnet8 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->waterInject = DRIVER_FULL_POWER_ON;
|
||||
driverTable->mastLiftingServo = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust3 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust4 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust5 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->sternRudderServo1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->sternRudderServo2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->sternRudderServo3 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->sternRudderServo4 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->thruster = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowThrow = DRIVER_FULL_POWER_ON;
|
||||
driverTable->sternThrow = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowCover1 = 1;
|
||||
driverTable->bowCover2 = 1;
|
||||
driverTable->bowCover3 = 1;
|
||||
driverTable->bowCover4 = 1;
|
||||
driverTable->bowCover5 = 1;
|
||||
driverTable->bowCover6 = 1;
|
||||
driverTable->bowRudderDeploy = 1;
|
||||
driverTable->bowRudderServo1 = 1;
|
||||
driverTable->bowRudderServo2 = 1;
|
||||
driverTable->bowWaterlnet1 = 1;
|
||||
driverTable->bowWaterlnet2 = 1;
|
||||
driverTable->bowWaterlnet3 = 1;
|
||||
driverTable->bowWaterlnet4 = 1;
|
||||
driverTable->bowWaterlnet5 = 1;
|
||||
driverTable->bowWaterlnet6 = 1;
|
||||
driverTable->bowWaterlnet7 = 1;
|
||||
driverTable->bowWaterlnet8 = 1;
|
||||
driverTable->waterInject = 1;
|
||||
driverTable->mastLiftingServo = 1;
|
||||
driverTable->buoyancyAdjust1 = 1;
|
||||
driverTable->buoyancyAdjust2 = 1;
|
||||
driverTable->buoyancyAdjust3 = 1;
|
||||
driverTable->buoyancyAdjust4 = 1;
|
||||
driverTable->buoyancyAdjust5 = 1;
|
||||
driverTable->sternRudderServo1 = 1;
|
||||
driverTable->sternRudderServo2 = 1;
|
||||
driverTable->sternRudderServo3 = 1;
|
||||
driverTable->sternRudderServo4 = 1;
|
||||
driverTable->thruster = 1;
|
||||
driverTable->bowThrow = 1;
|
||||
driverTable->sternThrow = 1;
|
||||
}
|
||||
|
||||
void Driver::getCRUISE_MODEable(DriverTable* driverTable)
|
||||
{
|
||||
// 打开所有传感器
|
||||
driverTable->depth1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->depth2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->depth3 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->overDeep1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->overDeep2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->ctd1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->ctd2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->soundVeloc = DRIVER_FULL_POWER_ON;
|
||||
driverTable->commMast = DRIVER_FULL_POWER_ON;
|
||||
driverTable->ins = DRIVER_FULL_POWER_ON;
|
||||
driverTable->ntp = DRIVER_FULL_POWER_ON;
|
||||
driverTable->inputWaterSensor1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->inputWaterSensor2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->inputWaterSensor3 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->depth1 = 1;
|
||||
driverTable->depth2 = 1;
|
||||
driverTable->depth3 = 1;
|
||||
driverTable->overDeep1 = 1;
|
||||
driverTable->overDeep2 = 1;
|
||||
driverTable->ctd1 = 1;
|
||||
driverTable->ctd2 = 1;
|
||||
driverTable->soundVeloc = 1;
|
||||
driverTable->commMast = 1;
|
||||
driverTable->ins = 1;
|
||||
driverTable->ntp = 1;
|
||||
driverTable->inputWaterSensor1 = 1;
|
||||
driverTable->inputWaterSensor2 = 1;
|
||||
driverTable->inputWaterSensor3 = 1;
|
||||
|
||||
// 所有负载设备关机
|
||||
driverTable->photoSensor = DRIVER_POWER_OFF;
|
||||
driverTable->electSensor = DRIVER_POWER_OFF;
|
||||
driverTable->launchControler = DRIVER_POWER_OFF;
|
||||
driverTable->sideSonar = DRIVER_POWER_OFF;
|
||||
driverTable->buoyage = DRIVER_POWER_OFF;
|
||||
driverTable->photoSensor = 0;
|
||||
driverTable->electSensor = 0;
|
||||
driverTable->launchControler = 0;
|
||||
driverTable->sideSonar = 0;
|
||||
driverTable->buoyage = 0;
|
||||
|
||||
// 打开必要的执行机构
|
||||
// 关闭非必要的执行机构
|
||||
driverTable->bowCover1 = DRIVER_POWER_OFF;
|
||||
driverTable->bowCover2 = DRIVER_POWER_OFF;
|
||||
driverTable->bowCover3 = DRIVER_POWER_OFF;
|
||||
driverTable->bowCover4 = DRIVER_POWER_OFF;
|
||||
driverTable->bowCover5 = DRIVER_POWER_OFF;
|
||||
driverTable->bowCover6 = DRIVER_POWER_OFF;
|
||||
driverTable->bowRudderDeploy = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowWaterlnet1 = DRIVER_POWER_OFF;
|
||||
driverTable->bowWaterlnet2 = DRIVER_POWER_OFF;
|
||||
driverTable->bowWaterlnet3 = DRIVER_POWER_OFF;
|
||||
driverTable->bowWaterlnet4 = DRIVER_POWER_OFF;
|
||||
driverTable->bowWaterlnet5 = DRIVER_POWER_OFF;
|
||||
driverTable->bowWaterlnet6 = DRIVER_POWER_OFF;
|
||||
driverTable->bowWaterlnet7 = DRIVER_POWER_OFF;
|
||||
driverTable->bowWaterlnet8 = DRIVER_POWER_OFF;
|
||||
driverTable->waterInject = DRIVER_POWER_OFF;
|
||||
driverTable->mastLiftingServo = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust3 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust4 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust5 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->sternRudderServo1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->sternRudderServo2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->sternRudderServo3 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->sternRudderServo4 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->thruster = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowThrow = DRIVER_FULL_POWER_ON;
|
||||
driverTable->sternThrow = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowCover1 = 0;
|
||||
driverTable->bowCover2 = 0;
|
||||
driverTable->bowCover3 = 0;
|
||||
driverTable->bowCover4 = 0;
|
||||
driverTable->bowCover5 = 0;
|
||||
driverTable->bowCover6 = 0;
|
||||
driverTable->bowRudderDeploy = 1;
|
||||
driverTable->bowRudderServo1 = 1;
|
||||
driverTable->bowRudderServo2 = 1;
|
||||
driverTable->bowWaterlnet1 = 0;
|
||||
driverTable->bowWaterlnet2 = 0;
|
||||
driverTable->bowWaterlnet3 = 0;
|
||||
driverTable->bowWaterlnet4 = 0;
|
||||
driverTable->bowWaterlnet5 = 0;
|
||||
driverTable->bowWaterlnet6 = 0;
|
||||
driverTable->bowWaterlnet7 = 0;
|
||||
driverTable->bowWaterlnet8 = 0;
|
||||
driverTable->waterInject = 0;
|
||||
driverTable->mastLiftingServo = 1;
|
||||
driverTable->buoyancyAdjust1 = 1;
|
||||
driverTable->buoyancyAdjust2 = 1;
|
||||
driverTable->buoyancyAdjust3 = 1;
|
||||
driverTable->buoyancyAdjust4 = 1;
|
||||
driverTable->buoyancyAdjust5 = 1;
|
||||
driverTable->sternRudderServo1 = 1;
|
||||
driverTable->sternRudderServo2 = 1;
|
||||
driverTable->sternRudderServo3 = 1;
|
||||
driverTable->sternRudderServo4 = 1;
|
||||
driverTable->thruster = 1;
|
||||
driverTable->bowThrow = 1;
|
||||
driverTable->sternThrow = 1;
|
||||
}
|
||||
|
||||
|
||||
@@ -668,70 +667,69 @@ std::string Driver::saveDriverTableToJson(const DriverTable* driverTable)
|
||||
Json::Value root;
|
||||
|
||||
// 添加所有成员到json
|
||||
root["depth1"] = driverTable->depth1;
|
||||
root["depth2"] = driverTable->depth2;
|
||||
root["depth3"] = driverTable->depth3;
|
||||
root["overDeep1"] = driverTable->overDeep1;
|
||||
root["overDeep2"] = driverTable->overDeep2;
|
||||
root["ctd1"] = driverTable->ctd1;
|
||||
root["ctd2"] = driverTable->ctd2;
|
||||
root["soundVeloc"] = driverTable->soundVeloc;
|
||||
root["commMast"] = driverTable->commMast;
|
||||
root["ins"] = driverTable->ins;
|
||||
root["ntp"] = driverTable->ntp;
|
||||
root["inputWaterSensor1"] = driverTable->inputWaterSensor1;
|
||||
root["inputWaterSensor2"] = driverTable->inputWaterSensor2;
|
||||
root["inputWaterSensor3"] = driverTable->inputWaterSensor3;
|
||||
|
||||
root["singleBeamSonar1"] = driverTable->singleBeamSonar1;
|
||||
root["singleBeamSonar2"] = driverTable->singleBeamSonar2;
|
||||
root["singleBeamSonar3"] = driverTable->singleBeamSonar3;
|
||||
root["singleBeamSonar4"] = driverTable->singleBeamSonar4;
|
||||
root["singleBeamSonar5"] = driverTable->singleBeamSonar5;
|
||||
root["singleBeamSonar6"] = driverTable->singleBeamSonar6;
|
||||
root["singleBeamSonar7"] = driverTable->singleBeamSonar7;
|
||||
root["singleBeamSonar8"] = driverTable->singleBeamSonar8;
|
||||
root["forwardSonar"] = driverTable->forwardSonar;
|
||||
root["DVL"] = driverTable->DVL;
|
||||
root["lowFreqSonar"] = driverTable->lowFreqSonar;
|
||||
root["USBL"] = driverTable->USBL;
|
||||
root["bowCover1"] = driverTable->bowCover1;
|
||||
root["bowCover2"] = driverTable->bowCover2;
|
||||
root["bowCover3"] = driverTable->bowCover3;
|
||||
root["bowCover4"] = driverTable->bowCover4;
|
||||
root["bowCover5"] = driverTable->bowCover5;
|
||||
root["bowCover6"] = driverTable->bowCover6;
|
||||
root["bowRudderDeploy"] = driverTable->bowRudderDeploy;
|
||||
root["bowRudderServo1"] = driverTable->bowRudderServo1;
|
||||
root["bowRudderServo2"] = driverTable->bowRudderServo2;
|
||||
root["bowWaterlnet1"] = driverTable->bowWaterlnet1;
|
||||
root["bowWaterlnet2"] = driverTable->bowWaterlnet2;
|
||||
root["bowWaterlnet3"] = driverTable->bowWaterlnet3;
|
||||
root["bowWaterlnet4"] = driverTable->bowWaterlnet4;
|
||||
root["bowWaterlnet5"] = driverTable->bowWaterlnet5;
|
||||
root["bowWaterlnet6"] = driverTable->bowWaterlnet6;
|
||||
root["bowWaterlnet7"] = driverTable->bowWaterlnet7;
|
||||
root["bowWaterlnet8"] = driverTable->bowWaterlnet8;
|
||||
root["waterInject"] = driverTable->waterInject;
|
||||
root["mastLiftingServo"] = driverTable->mastLiftingServo;
|
||||
root["buoyancyAdjust1"] = driverTable->buoyancyAdjust1;
|
||||
root["buoyancyAdjust2"] = driverTable->buoyancyAdjust2;
|
||||
root["buoyancyAdjust3"] = driverTable->buoyancyAdjust3;
|
||||
root["buoyancyAdjust4"] = driverTable->buoyancyAdjust4;
|
||||
root["buoyancyAdjust5"] = driverTable->buoyancyAdjust5;
|
||||
root["sternRudderServo1"] = driverTable->sternRudderServo1;
|
||||
root["sternRudderServo2"] = driverTable->sternRudderServo2;
|
||||
root["sternRudderServo3"] = driverTable->sternRudderServo3;
|
||||
root["sternRudderServo4"] = driverTable->sternRudderServo4;
|
||||
root["thruster"] = driverTable->thruster;
|
||||
root["bowThrow"] = driverTable->bowThrow;
|
||||
root["sternThrow"] = driverTable->sternThrow;
|
||||
root["photoSensor"] = driverTable->photoSensor;
|
||||
root["electSensor"] = driverTable->electSensor;
|
||||
root["launchControler"] = driverTable->launchControler;
|
||||
root["sideSonar"] = driverTable->sideSonar;
|
||||
root["buoyage"] = driverTable->buoyage;
|
||||
root["depth1_uni8"] = driverTable->depth1;
|
||||
root["depth2_uni8"] = driverTable->depth2;
|
||||
root["depth3_uni8"] = driverTable->depth3;
|
||||
root["overDeep1_uni8"] = driverTable->overDeep1;
|
||||
root["overDeep2_uni8"] = driverTable->overDeep2;
|
||||
root["ctd1_uni8"] = driverTable->ctd1;
|
||||
root["ctd2_uni8"] = driverTable->ctd2;
|
||||
root["soundVeloc_uni8"] = driverTable->soundVeloc;
|
||||
root["commMast_uni8"] = driverTable->commMast;
|
||||
root["ins_uni8"] = driverTable->ins;
|
||||
root["ntp_uni8"] = driverTable->ntp;
|
||||
root["inputWaterSensor1_uni8"] = driverTable->inputWaterSensor1;
|
||||
root["inputWaterSensor2_uni8"] = driverTable->inputWaterSensor2;
|
||||
root["inputWaterSensor3_uni8"] = driverTable->inputWaterSensor3;
|
||||
|
||||
root["singleBeamSonar1_uni8"] = driverTable->singleBeamSonar1;
|
||||
root["singleBeamSonar2_uni8"] = driverTable->singleBeamSonar2;
|
||||
root["singleBeamSonar3_uni8"] = driverTable->singleBeamSonar3;
|
||||
root["singleBeamSonar4_uni8"] = driverTable->singleBeamSonar4;
|
||||
root["singleBeamSonar5_uni8"] = driverTable->singleBeamSonar5;
|
||||
root["singleBeamSonar6_uni8"] = driverTable->singleBeamSonar6;
|
||||
root["singleBeamSonar7_uni8"] = driverTable->singleBeamSonar7;
|
||||
root["singleBeamSonar8_uni8"] = driverTable->singleBeamSonar8;
|
||||
root["forwardSonar_uni8"] = driverTable->forwardSonar;
|
||||
root["DVL_uni8"] = driverTable->DVL;
|
||||
root["lowFreqSonar_uni8"] = driverTable->lowFreqSonar;
|
||||
root["USBL_uni8"] = driverTable->USBL;
|
||||
root["bowCover1_uni8"] = driverTable->bowCover1;
|
||||
root["bowCover2_uni8"] = driverTable->bowCover2;
|
||||
root["bowCover3_uni8"] = driverTable->bowCover3;
|
||||
root["bowCover4_uni8"] = driverTable->bowCover4;
|
||||
root["bowCover5_uni8"] = driverTable->bowCover5;
|
||||
root["bowCover6_uni8"] = driverTable->bowCover6;
|
||||
root["bowRudderDeploy_uni8"] = driverTable->bowRudderDeploy;
|
||||
root["bowRudderServo1_uni8"] = driverTable->bowRudderServo1;
|
||||
root["bowRudderServo2_uni8"] = driverTable->bowRudderServo2;
|
||||
root["bowWaterlnet1_uni8"] = driverTable->bowWaterlnet1;
|
||||
root["bowWaterlnet2_uni8"] = driverTable->bowWaterlnet2;
|
||||
root["bowWaterlnet3_uni8"] = driverTable->bowWaterlnet3;
|
||||
root["bowWaterlnet4_uni8"] = driverTable->bowWaterlnet4;
|
||||
root["bowWaterlnet5_uni8"] = driverTable->bowWaterlnet5;
|
||||
root["bowWaterlnet6_uni8"] = driverTable->bowWaterlnet6;
|
||||
root["bowWaterlnet7_uni8"] = driverTable->bowWaterlnet7;
|
||||
root["bowWaterlnet8_uni8"] = driverTable->bowWaterlnet8;
|
||||
root["waterInject_uni8"] = driverTable->waterInject;
|
||||
root["mastLiftingServo_uni8"] = driverTable->mastLiftingServo;
|
||||
root["buoyancyAdjust1_uni8"] = driverTable->buoyancyAdjust1;
|
||||
root["buoyancyAdjust2_uni8"] = driverTable->buoyancyAdjust2;
|
||||
root["buoyancyAdjust3_uni8"] = driverTable->buoyancyAdjust3;
|
||||
root["buoyancyAdjust4_uni8"] = driverTable->buoyancyAdjust4;
|
||||
root["buoyancyAdjust5_uni8"] = driverTable->buoyancyAdjust5;
|
||||
root["sternRudderServo1_uni8"] = driverTable->sternRudderServo1;
|
||||
root["sternRudderServo2_uni8"] = driverTable->sternRudderServo2;
|
||||
root["sternRudderServo3_uni8"] = driverTable->sternRudderServo3;
|
||||
root["sternRudderServo4_uni8"] = driverTable->sternRudderServo4;
|
||||
root["thruster_uni8"] = driverTable->thruster;
|
||||
root["bowThrow_uni8"] = driverTable->bowThrow;
|
||||
root["sternThrow_uni8"] = driverTable->sternThrow;
|
||||
root["photoSensor_uni8"] = driverTable->photoSensor;
|
||||
root["electSensor_uni8"] = driverTable->electSensor;
|
||||
root["launchControler_uni8"] = driverTable->launchControler;
|
||||
root["sideSonar_uni8"] = driverTable->sideSonar;
|
||||
root["buoyage_uni8"] = driverTable->buoyage;
|
||||
return root.toStyledString();
|
||||
}
|
||||
std::string Driver::getDriverTableJson()
|
||||
|
||||
@@ -423,6 +423,7 @@ namespace PMMode {
|
||||
//工况定义
|
||||
namespace WorkCondition {
|
||||
enum Type : unsigned char {
|
||||
CHANING = 0, // 工况切换中
|
||||
STANDBY = 1, // 待机工况
|
||||
SHORE_BASED_READY = 2, // 岸基备航
|
||||
WATER_BASED_READY = 3, // 水中备航
|
||||
@@ -509,5 +510,57 @@ struct DeviceSwitchCmd
|
||||
int cmd;
|
||||
};
|
||||
|
||||
namespace FaultEnable {
|
||||
enum Type : bool {
|
||||
BasicNavigationFault_1 = true, // 使能故障
|
||||
BasicNavigationFault_2 = false,
|
||||
BasicNavigationFault_3 = false,
|
||||
BasicNavigationFault_4 = false,
|
||||
BasicNavigationFault_5 = false,
|
||||
BasicNavigationFault_6 = false,
|
||||
BasicNavigationFault_7 = false,
|
||||
BasicNavigationFault_8 = false,
|
||||
BasicNavigationFault_9 = false,
|
||||
BasicNavigationFault_10 = false,
|
||||
|
||||
ExtendedNavigationFault_1 = false, // 使能故障
|
||||
ExtendedNavigationFault_2 = false,
|
||||
ExtendedNavigationFault_3 = false,
|
||||
ExtendedNavigationFault_4 = false,
|
||||
|
||||
ObstacleAvoidanceFault_1 = false, // 使能故障
|
||||
ObstacleAvoidanceFault_2 = false,
|
||||
ObstacleAvoidanceFault_3 = false,
|
||||
|
||||
BuoyancyControlFault_1 = false, // 使能故障
|
||||
BuoyancyControlFault_2 = false,
|
||||
BuoyancyControlFault_3 = false,
|
||||
BuoyancyControlFault_4 = false,
|
||||
|
||||
CommunicationSystemFault_1 = false, // 使能故障
|
||||
CommunicationSystemFault_2 = false,
|
||||
CommunicationSystemFault_3 = false,
|
||||
|
||||
PayloadSystemFault_1 = false, // 使能故障
|
||||
PayloadSystemFault_2 = false,
|
||||
PayloadSystemFault_3 = false,
|
||||
PayloadSystemFault_4 = false,
|
||||
PayloadSystemFault_5 = false,
|
||||
PayloadSystemFault_6 = false,
|
||||
PayloadSystemFault_7 = false,
|
||||
|
||||
EmergencySystemFault_1 = false, // 使能故障
|
||||
EmergencySystemFault_2 = false,
|
||||
EmergencySystemFault_3 = false,
|
||||
EmergencySystemFault_4 = false,
|
||||
EmergencySystemFault_5 = false,
|
||||
EmergencySystemFault_6 = false,
|
||||
|
||||
SensorSystemFault_1 = false, // 使能故障
|
||||
SensorSystemFault_2 = false,
|
||||
SensorSystemFault_3 = false,
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
#endif
|
||||
@@ -13,6 +13,7 @@ from ccuSys import *
|
||||
# 创建UDP通信套接字
|
||||
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
|
||||
# 目标IP地址和端口号
|
||||
# target_ip = 'localhost'
|
||||
target_ip = 'localhost'
|
||||
target_port = 5001
|
||||
server_address = (target_ip, target_port)
|
||||
|
||||
Reference in New Issue
Block a user