[change] 更新清扫车PB以及接口
This commit is contained in:
@@ -49,6 +49,7 @@ import java.util.TimerTask;
|
||||
import java.util.concurrent.atomic.AtomicInteger;
|
||||
|
||||
import chassis.SpecialVehicleTaskCmdOuterClass;
|
||||
import common.HeaderOuterClass;
|
||||
import mogo.telematics.pad.MessagePad;
|
||||
import okio.ByteString;
|
||||
|
||||
@@ -74,6 +75,7 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec
|
||||
private DispatchHandler dispatchHandler;//分发
|
||||
private DispatchHandler dispatchHandlerPointCloud;//原始的点云数据分发
|
||||
private Timer checkCompatibilityTimer;//检查版本兼容性定时器 连接成功后5秒内等待工控机发送配置信息
|
||||
private int seqSpecialVehicle = 0;//特种车辆命令发送次数
|
||||
/**
|
||||
* 与工控机链接状态
|
||||
*/
|
||||
@@ -407,6 +409,7 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec
|
||||
ipcConnectedIp = ipAddress;
|
||||
ipcConnectedPort = port;
|
||||
subscribeInterface = new SubscribeInterface(this);
|
||||
seqSpecialVehicle = 0;
|
||||
updateConnectStatus(Constants.IPC_CONNECTION_STATUS.CONNECTED, "已连接");
|
||||
//根据连接配置 进行接口订阅或取消订阅配置
|
||||
if (adasOptions != null) {
|
||||
@@ -1047,11 +1050,10 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec
|
||||
*/
|
||||
@Override
|
||||
public boolean sendRoboSweeperFuTianTaskCmd(SpecialVehicleTaskCmdOuterClass.RoboSweeperFuTianTaskCmd fuTianTaskCmd) {
|
||||
SpecialVehicleTaskCmdOuterClass.SpecialVehicleTaskCmd cmd = SpecialVehicleTaskCmdOuterClass.SpecialVehicleTaskCmd
|
||||
SpecialVehicleTaskCmdOuterClass.SpecialVehicleTaskCmd.Builder cmdBuild = SpecialVehicleTaskCmdOuterClass.SpecialVehicleTaskCmd
|
||||
.newBuilder()
|
||||
.setRoboSweeperFutianTaskCmd(fuTianTaskCmd)
|
||||
.build();
|
||||
return sendSpecialVehicleTaskCmd(cmd);
|
||||
.setRoboSweeperFutianTaskCmd(fuTianTaskCmd);
|
||||
return sendSpecialVehicleTaskCmd(cmdBuild);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -1062,22 +1064,36 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec
|
||||
*/
|
||||
@Override
|
||||
public boolean sendRoboVanSkywellTaskCmd(SpecialVehicleTaskCmdOuterClass.RoboVanSkywellTaskCmd vanSkywellTaskCmd) {
|
||||
SpecialVehicleTaskCmdOuterClass.SpecialVehicleTaskCmd cmd = SpecialVehicleTaskCmdOuterClass.SpecialVehicleTaskCmd
|
||||
SpecialVehicleTaskCmdOuterClass.SpecialVehicleTaskCmd.Builder cmdBuild = SpecialVehicleTaskCmdOuterClass.SpecialVehicleTaskCmd
|
||||
.newBuilder()
|
||||
.setRoboVanSkywellTaskCmd(vanSkywellTaskCmd)
|
||||
.build();
|
||||
return sendSpecialVehicleTaskCmd(cmd);
|
||||
.setRoboVanSkywellTaskCmd(vanSkywellTaskCmd);
|
||||
return sendSpecialVehicleTaskCmd(cmdBuild);
|
||||
}
|
||||
|
||||
/**
|
||||
* 特种车辆命令下发
|
||||
*
|
||||
* @param cmd 命令
|
||||
* @param cmdBuild 命令
|
||||
* @return boolean
|
||||
*/
|
||||
@Override
|
||||
public boolean sendSpecialVehicleTaskCmd(SpecialVehicleTaskCmdOuterClass.SpecialVehicleTaskCmd cmd) {
|
||||
return sendPBMessage(MessageType.TYPE_SEND_SPECIAL_VEHICLE_TASK_CMD.typeCode, cmd.toByteArray());
|
||||
public boolean sendSpecialVehicleTaskCmd(SpecialVehicleTaskCmdOuterClass.SpecialVehicleTaskCmd.Builder cmdBuild) {
|
||||
long t = System.currentTimeMillis();
|
||||
int sec = (int) (t / 1000);
|
||||
int nsec = (int) (t % 1000 * 1000000);
|
||||
HeaderOuterClass.Time time = HeaderOuterClass.Time
|
||||
.newBuilder()
|
||||
.setSec(sec)
|
||||
.setNsec(nsec)
|
||||
.build();
|
||||
HeaderOuterClass.Header header = HeaderOuterClass.Header.newBuilder()
|
||||
.setSeq(++seqSpecialVehicle)
|
||||
.setStamp(time)
|
||||
.setFrameId("special_vehicle_task_cmd")
|
||||
.setModuleName("EagleEye")
|
||||
.build();
|
||||
cmdBuild.setHeader(header);
|
||||
return sendPBMessage(MessageType.TYPE_SEND_SPECIAL_VEHICLE_TASK_CMD.typeCode, cmdBuild.build().toByteArray());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -572,12 +572,12 @@ public class AdasManager implements IAdasNetCommApi {
|
||||
/**
|
||||
* 特种车辆命令下发
|
||||
*
|
||||
* @param cmd 命令
|
||||
* @param cmdBuild 命令
|
||||
* @return boolean
|
||||
*/
|
||||
@Override
|
||||
public boolean sendSpecialVehicleTaskCmd(SpecialVehicleTaskCmdOuterClass.SpecialVehicleTaskCmd cmd) {
|
||||
return mChannel != null && mChannel.sendSpecialVehicleTaskCmd(cmd);
|
||||
public boolean sendSpecialVehicleTaskCmd(SpecialVehicleTaskCmdOuterClass.SpecialVehicleTaskCmd.Builder cmdBuild) {
|
||||
return mChannel != null && mChannel.sendSpecialVehicleTaskCmd(cmdBuild);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -295,10 +295,10 @@ public interface IAdasNetCommApi {
|
||||
/**
|
||||
* 特种车辆命令下发
|
||||
*
|
||||
* @param cmd 命令
|
||||
* @param cmdBuild 命令
|
||||
* @return boolean
|
||||
*/
|
||||
boolean sendSpecialVehicleTaskCmd(SpecialVehicleTaskCmdOuterClass.SpecialVehicleTaskCmd cmd);
|
||||
boolean sendSpecialVehicleTaskCmd(SpecialVehicleTaskCmdOuterClass.SpecialVehicleTaskCmd.Builder cmdBuild);
|
||||
|
||||
// TODO 需求暂停 待讨论
|
||||
// boolean getRoutes();
|
||||
|
||||
Reference in New Issue
Block a user