增加了配电控制器操作代码
This commit is contained in:
@@ -2,10 +2,720 @@
|
||||
|
||||
Driver::Driver()
|
||||
{
|
||||
currentDriverTable = new DriverTable();
|
||||
nextDriverTable = new DriverTable();
|
||||
debug = false;
|
||||
|
||||
}
|
||||
|
||||
Driver::~Driver()
|
||||
{
|
||||
delete currentDriverTable;
|
||||
delete nextDriverTable;
|
||||
}
|
||||
|
||||
void Driver::setDebug(bool debug)
|
||||
{
|
||||
this->debug = debug;
|
||||
}
|
||||
int Driver::getDriverTable(workCondition condition, DriverTable* driverTable)
|
||||
{
|
||||
switch (condition)
|
||||
{
|
||||
case STANDBY:
|
||||
|
||||
|
||||
break;
|
||||
|
||||
case SHORE_BASED_READY:
|
||||
/* code */
|
||||
break;
|
||||
|
||||
case WATER_BASED_READY:
|
||||
/* code */
|
||||
break;
|
||||
|
||||
case CRUISE_MODE:
|
||||
/* code */
|
||||
break;
|
||||
|
||||
case HIGH_SPEED_MODE:
|
||||
/* code */
|
||||
break;
|
||||
|
||||
case ASCEND_DESCEND:
|
||||
/* code */
|
||||
break;
|
||||
|
||||
case BUOYANCY_ADJUST:
|
||||
/* code */
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void Driver::getSTANDBYTable(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->photoSensor = DRIVER_STANDBY;
|
||||
driverTable->electSensor = DRIVER_STANDBY;
|
||||
driverTable->zhfk = DRIVER_STANDBY;
|
||||
driverTable->sideSonar = DRIVER_POWER_OFF;
|
||||
driverTable->buoyage = DRIVER_POWER_OFF;
|
||||
//关闭所有水声设备
|
||||
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->zdp = DRIVER_POWER_OFF;
|
||||
driverTable->usbl = DRIVER_POWER_OFF;
|
||||
//关闭所有执行机构
|
||||
driverTable->bowOpen1 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen2 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen3 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen4 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen5 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen6 = DRIVER_POWER_OFF;
|
||||
driverTable->bowRudderDeploy = DRIVER_POWER_OFF;
|
||||
driverTable->bowRudderServo1 = DRIVER_POWER_OFF;
|
||||
driverTable->bowRudderServo2 = DRIVER_POWER_OFF;
|
||||
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->bowCover7 = DRIVER_POWER_OFF;
|
||||
driverTable->bowCover8 = DRIVER_POWER_OFF;
|
||||
driverTable->waterInject = DRIVER_POWER_OFF;
|
||||
driverTable->wgDJ = DRIVER_POWER_OFF;
|
||||
driverTable->buoyancyAdjust1 = DRIVER_POWER_OFF;
|
||||
driverTable->buoyancyAdjust2 = DRIVER_POWER_OFF;
|
||||
driverTable->buoyancyAdjust3 = DRIVER_POWER_OFF;
|
||||
driverTable->sternRudderServo1 = DRIVER_POWER_OFF;
|
||||
driverTable->sternRudderServo2 = DRIVER_POWER_OFF;
|
||||
driverTable->sternRudderServo3 = DRIVER_POWER_OFF;
|
||||
driverTable->sternRudderServo4 = DRIVER_POWER_OFF;
|
||||
driverTable->thruster = DRIVER_POWER_OFF;
|
||||
driverTable->bowThrow = DRIVER_POWER_OFF;
|
||||
driverTable->sternThrow = DRIVER_POWER_OFF;
|
||||
}
|
||||
|
||||
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;
|
||||
|
||||
// 允许启动负载
|
||||
// 关闭xcz
|
||||
driverTable->photoSensor = DRIVER_STANDBY;
|
||||
driverTable->electSensor = DRIVER_STANDBY;
|
||||
driverTable->zhfk = DRIVER_STANDBY;
|
||||
driverTable->sideSonar = DRIVER_POWER_OFF;
|
||||
driverTable->buoyage = DRIVER_STANDBY;
|
||||
|
||||
// 关闭所有水声设备
|
||||
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->zdp = DRIVER_POWER_OFF;
|
||||
driverTable->usbl = DRIVER_POWER_OFF;
|
||||
|
||||
// 打开必要的执行机构
|
||||
driverTable->bowOpen1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowOpen2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowOpen3 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowOpen4 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowOpen5 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowOpen6 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderDeploy = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo2 = DRIVER_FULL_POWER_ON;
|
||||
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->bowCover7 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowCover8 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->waterInject = DRIVER_FULL_POWER_ON;
|
||||
driverTable->wgDJ = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust3 = 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;
|
||||
}
|
||||
|
||||
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->photoSensor = DRIVER_STANDBY;
|
||||
driverTable->electSensor = DRIVER_STANDBY;
|
||||
driverTable->zhfk = DRIVER_STANDBY;
|
||||
driverTable->sideSonar = DRIVER_STANDBY;
|
||||
driverTable->buoyage = DRIVER_STANDBY;
|
||||
|
||||
// 所有水声设备待机
|
||||
// 打开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->zdp = DRIVER_STANDBY;
|
||||
driverTable->usbl = DRIVER_STANDBY;
|
||||
|
||||
// 打开必要的执行机构
|
||||
driverTable->bowOpen1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowOpen2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowOpen3 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowOpen4 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowOpen5 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowOpen6 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderDeploy = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo2 = DRIVER_FULL_POWER_ON;
|
||||
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->bowCover7 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowCover8 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->waterInject = DRIVER_FULL_POWER_ON;
|
||||
driverTable->wgDJ = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust3 = 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;
|
||||
}
|
||||
|
||||
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->photoSensor = DRIVER_POWER_OFF;
|
||||
driverTable->electSensor = DRIVER_POWER_OFF;
|
||||
driverTable->zhfk = DRIVER_POWER_OFF;
|
||||
driverTable->sideSonar = DRIVER_POWER_OFF;
|
||||
driverTable->buoyage = DRIVER_POWER_OFF;
|
||||
|
||||
// 打开必要的执行机构
|
||||
// 关闭非必要的执行机构
|
||||
driverTable->bowOpen1 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen2 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen3 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen4 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen5 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen6 = DRIVER_POWER_OFF;
|
||||
driverTable->bowRudderDeploy = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo2 = DRIVER_FULL_POWER_ON;
|
||||
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->bowCover7 = DRIVER_POWER_OFF;
|
||||
driverTable->bowCover8 = DRIVER_POWER_OFF;
|
||||
driverTable->waterInject = DRIVER_POWER_OFF;
|
||||
driverTable->wgDJ = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust3 = 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;
|
||||
}
|
||||
|
||||
|
||||
void Driver::getHIGH_SPEED_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->photoSensor = DRIVER_POWER_OFF;
|
||||
driverTable->electSensor = DRIVER_POWER_OFF;
|
||||
driverTable->zhfk = DRIVER_POWER_OFF;
|
||||
driverTable->sideSonar = DRIVER_POWER_OFF;
|
||||
driverTable->buoyage = DRIVER_POWER_OFF;
|
||||
|
||||
// 打开必要的执行机构,只打开操纵机构
|
||||
// 关闭非必要的执行机构
|
||||
driverTable->bowOpen1 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen2 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen3 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen4 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen5 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen6 = DRIVER_POWER_OFF;
|
||||
driverTable->bowRudderDeploy = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo2 = DRIVER_FULL_POWER_ON;
|
||||
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->bowCover7 = DRIVER_POWER_OFF;
|
||||
driverTable->bowCover8 = DRIVER_POWER_OFF;
|
||||
driverTable->waterInject = DRIVER_POWER_OFF;
|
||||
driverTable->wgDJ = DRIVER_POWER_OFF;
|
||||
driverTable->buoyancyAdjust1 = DRIVER_POWER_OFF;
|
||||
driverTable->buoyancyAdjust2 = DRIVER_POWER_OFF;
|
||||
driverTable->buoyancyAdjust3 = DRIVER_POWER_OFF;
|
||||
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;
|
||||
}
|
||||
|
||||
// 上浮下潜与巡航模式一致
|
||||
void Driver::getASCEND_DESCENDable(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->photoSensor = DRIVER_POWER_OFF;
|
||||
driverTable->electSensor = DRIVER_POWER_OFF;
|
||||
driverTable->zhfk = DRIVER_POWER_OFF;
|
||||
driverTable->sideSonar = DRIVER_POWER_OFF;
|
||||
driverTable->buoyage = DRIVER_POWER_OFF;
|
||||
|
||||
// 打开必要的执行机构
|
||||
// 关闭非必要的执行机构
|
||||
driverTable->bowOpen1 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen2 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen3 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen4 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen5 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen6 = DRIVER_POWER_OFF;
|
||||
driverTable->bowRudderDeploy = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo2 = DRIVER_FULL_POWER_ON;
|
||||
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->bowCover7 = DRIVER_POWER_OFF;
|
||||
driverTable->bowCover8 = DRIVER_POWER_OFF;
|
||||
driverTable->waterInject = DRIVER_POWER_OFF;
|
||||
driverTable->wgDJ = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust3 = 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;
|
||||
}
|
||||
|
||||
// 浮标调整与巡航模式一致
|
||||
void Driver::getBUOYANCY_ADJUSTable(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->photoSensor = DRIVER_POWER_OFF;
|
||||
driverTable->electSensor = DRIVER_POWER_OFF;
|
||||
driverTable->zhfk = DRIVER_POWER_OFF;
|
||||
driverTable->sideSonar = DRIVER_POWER_OFF;
|
||||
driverTable->buoyage = DRIVER_POWER_OFF;
|
||||
|
||||
// 打开必要的执行机构
|
||||
// 关闭非必要的执行机构
|
||||
driverTable->bowOpen1 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen2 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen3 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen4 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen5 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen6 = DRIVER_POWER_OFF;
|
||||
driverTable->bowRudderDeploy = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo2 = DRIVER_FULL_POWER_ON;
|
||||
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->bowCover7 = DRIVER_POWER_OFF;
|
||||
driverTable->bowCover8 = DRIVER_POWER_OFF;
|
||||
driverTable->waterInject = DRIVER_POWER_OFF;
|
||||
driverTable->wgDJ = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust3 = 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;
|
||||
}
|
||||
|
||||
// 水下侦查
|
||||
void Driver::getUNDERWATER_RECONable(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->photoSensor = DRIVER_POWER_OFF;
|
||||
driverTable->electSensor = DRIVER_POWER_OFF;
|
||||
driverTable->zhfk = DRIVER_POWER_OFF;
|
||||
driverTable->sideSonar = DRIVER_STANDBY;
|
||||
driverTable->buoyage = DRIVER_POWER_OFF;
|
||||
|
||||
// 打开必要的执行机构
|
||||
// 关闭非必要的执行机构
|
||||
driverTable->bowOpen1 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen2 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen3 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen4 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen5 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen6 = DRIVER_POWER_OFF;
|
||||
driverTable->bowRudderDeploy = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo2 = DRIVER_FULL_POWER_ON;
|
||||
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->bowCover7 = DRIVER_POWER_OFF;
|
||||
driverTable->bowCover8 = DRIVER_POWER_OFF;
|
||||
driverTable->waterInject = DRIVER_POWER_OFF;
|
||||
driverTable->wgDJ = DRIVER_POWER_OFF;
|
||||
driverTable->buoyancyAdjust1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust3 = 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;
|
||||
}
|
||||
|
||||
// 水面探测
|
||||
void Driver::getSURFACE_RECONable(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->photoSensor = DRIVER_STANDBY;
|
||||
driverTable->electSensor = DRIVER_STANDBY;
|
||||
driverTable->zhfk = DRIVER_POWER_OFF;
|
||||
driverTable->sideSonar = DRIVER_POWER_OFF;
|
||||
driverTable->buoyage = DRIVER_POWER_OFF;
|
||||
|
||||
// 打开必要的执行机构
|
||||
// 关闭非必要的执行机构
|
||||
driverTable->bowOpen1 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen2 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen3 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen4 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen5 = DRIVER_POWER_OFF;
|
||||
driverTable->bowOpen6 = DRIVER_POWER_OFF;
|
||||
driverTable->bowRudderDeploy = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo2 = DRIVER_FULL_POWER_ON;
|
||||
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->bowCover7 = DRIVER_POWER_OFF;
|
||||
driverTable->bowCover8 = DRIVER_POWER_OFF;
|
||||
driverTable->waterInject = DRIVER_POWER_OFF;
|
||||
driverTable->wgDJ = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust3 = 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;
|
||||
}
|
||||
|
||||
void Driver::getDJ_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->photoSensor = DRIVER_POWER_OFF;
|
||||
driverTable->electSensor = DRIVER_POWER_OFF;
|
||||
driverTable->zhfk = DRIVER_FULL_POWER_ON;
|
||||
driverTable->sideSonar = DRIVER_POWER_OFF;
|
||||
driverTable->buoyage = DRIVER_STANDBY;
|
||||
|
||||
// 打开必要的执行机构
|
||||
// 关闭非必要的执行机构
|
||||
driverTable->bowOpen1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowOpen2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowOpen3 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowOpen4 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowOpen5 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowOpen6 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderDeploy = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowRudderServo2 = DRIVER_FULL_POWER_ON;
|
||||
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->bowCover7 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->bowCover8 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->waterInject = DRIVER_POWER_OFF;
|
||||
driverTable->wgDJ = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust1 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust2 = DRIVER_FULL_POWER_ON;
|
||||
driverTable->buoyancyAdjust3 = 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;
|
||||
}
|
||||
|
||||
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["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["zdp"] = driverTable->zdp;
|
||||
root["usbl"] = driverTable->usbl;
|
||||
root["bowOpen1"] = driverTable->bowOpen1;
|
||||
root["bowOpen2"] = driverTable->bowOpen2;
|
||||
root["bowOpen3"] = driverTable->bowOpen3;
|
||||
root["bowOpen4"] = driverTable->bowOpen4;
|
||||
root["bowOpen5"] = driverTable->bowOpen5;
|
||||
root["bowOpen6"] = driverTable->bowOpen6;
|
||||
root["bowRudderDeploy"] = driverTable->bowRudderDeploy;
|
||||
root["bowRudderServo1"] = driverTable->bowRudderServo1;
|
||||
root["bowRudderServo2"] = driverTable->bowRudderServo2;
|
||||
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["bowCover7"] = driverTable->bowCover7;
|
||||
root["bowCover8"] = driverTable->bowCover8;
|
||||
root["waterInject"] = driverTable->waterInject;
|
||||
root["wgDJ"] = driverTable->wgDJ;
|
||||
root["buoyancyAdjust1"] = driverTable->buoyancyAdjust1;
|
||||
root["buoyancyAdjust2"] = driverTable->buoyancyAdjust2;
|
||||
root["buoyancyAdjust3"] = driverTable->buoyancyAdjust3;
|
||||
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["zhfk"] = driverTable->zhfk;
|
||||
root["sideSonar"] = driverTable->sideSonar;
|
||||
root["buoyage"] = driverTable->buoyage;
|
||||
|
||||
return root.toStyledString();
|
||||
}
|
||||
std::string Driver::getDriverTableJson()
|
||||
{
|
||||
return saveDriverTableToJson(currentDriverTable);
|
||||
}
|
||||
Reference in New Issue
Block a user