提交 b006f126 作者: 温凯

feat(无人机控制): 添加一键任务功能并简化流程

上级 d8e69535
...@@ -730,12 +730,12 @@ const actions = { ...@@ -730,12 +730,12 @@ const actions = {
/* const flightSortieId = { /* const flightSortieId = {
data: `tmj-v4-${Date.now()}` data: `tmj-v4-${Date.now()}`
} */ } */
// 上传航线指令 // 一键任务
const waypointList = state.airlineData?.content; const waypointList = state.airlineData?.content;
window.$mmc_stl.$store.dispatch("MMCMQTT/publish", { window.$mmc_stl.$store.dispatch("MMCMQTT/publish", {
topic: "PX4/OBTAIN/" + state.uav.deviceId, topic: "PX4/OBTAIN/" + state.uav.deviceId,
data: { data: {
type: window.$mmc_stl.$store.state.MMCMQTT.orders.航线上传, type: window.$mmc_stl.$store.state.MMCMQTT.orders.一键任务,
data: { data: {
taskId: state.airlineData.id, taskId: state.airlineData.id,
flightSortiesID: flightSortieId.data, flightSortiesID: flightSortieId.data,
...@@ -757,62 +757,62 @@ const actions = { ...@@ -757,62 +757,62 @@ const actions = {
callback() {}, callback() {},
}); });
// 告诉飞控开始任务,并且把架次号和 任务id传过去 // // 告诉飞控开始任务,并且把架次号和 任务id传过去
window.$mmc_stl.$store.dispatch("MMCMQTT/publish", { // window.$mmc_stl.$store.dispatch("MMCMQTT/publish", {
topic: "PX4/OBTAIN/" + state.uav.deviceId, // topic: "PX4/OBTAIN/" + state.uav.deviceId,
data: { // data: {
type: window.$mmc_stl.$store.state.MMCMQTT.orders.绑定任务id, // type: window.$mmc_stl.$store.state.MMCMQTT.orders.绑定任务id,
data: { // data: {
taskId: state.airlineData.id, // taskId: state.airlineData.id,
flightSortiesID: flightSortieId.data, // flightSortiesID: flightSortieId.data,
}, // },
}, // },
callback() {}, // callback() {},
}); // });
// 起飞指令 // 起飞指令
commit("setState", { // commit("setState", {
key: "waitAirlineUpload", // key: "waitAirlineUpload",
value: true, // value: true,
}); // });
let time = setInterval(() => { // let time = setInterval(() => {
if (state.uavRealTimeData.uploadAirline) { // if (state.uavRealTimeData.uploadAirline) {
clearInterval(time); // clearInterval(time);
window.$mmc_stl.$store.dispatch("MMCMQTT/publish", { // window.$mmc_stl.$store.dispatch("MMCMQTT/publish", {
topic: "PX4/OBTAIN/" + state.uav.deviceId, // topic: "PX4/OBTAIN/" + state.uav.deviceId,
data: { // data: {
type: window.$mmc_stl.$store.state.MMCMQTT.orders.航线一键起飞, // type: window.$mmc_stl.$store.state.MMCMQTT.orders.航线一键起飞,
data: { // data: {
taskId: state.airlineData.id, // taskId: state.airlineData.id,
seq: 0, // seq: 0,
}, // },
}, // },
callback() { // callback() {
data?.callback && data.callback(true, flightSortieId.data); // data?.callback && data.callback(true, flightSortieId.data);
}, // },
}); // });
// 清空261数据 // // 清空261数据
let dataSet = window.$mmc_stl.$store.state.MMCMQTT.dataSet; // let dataSet = window.$mmc_stl.$store.state.MMCMQTT.dataSet;
dataSet[state.uav.deviceId][261] = null; // dataSet[state.uav.deviceId][261] = null;
window.$mmc_stl.$store.commit("MMCMQTT/setSate", { // window.$mmc_stl.$store.commit("MMCMQTT/setSate", {
key: "dataSet", // key: "dataSet",
value: dataSet, // value: dataSet,
}); // });
commit("setState", { // commit("setState", {
key: "uavRealTimeData", // key: "uavRealTimeData",
value: { // value: {
...state.uavRealTimeData, // ...state.uavRealTimeData,
uploadAirline: null, // uploadAirline: null,
}, // },
}); // });
} // }
}, 1000); // }, 1000);
// 做个保险, 要是因为各种原因导致没飞起, 超过一分钟删除循环定时器 // // 做个保险, 要是因为各种原因导致没飞起, 超过一分钟删除循环定时器
setTimeout(() => { // setTimeout(() => {
clearInterval(time); // clearInterval(time);
}, 60000); // }, 60000);
} catch (e) { } catch (e) {
console.log("一键起飞失败", e); console.log("一键起飞失败", e);
data?.callback && data.callback(false); data?.callback && data.callback(false);
......
...@@ -8,6 +8,7 @@ export default { ...@@ -8,6 +8,7 @@ export default {
摇杆控制: 519, 摇杆控制: 519,
航线下载: 520, 航线下载: 520,
航线上传: 521, 航线上传: 521,
一键任务: 529,
航线一键起飞: 522, 航线一键起飞: 522,
暂停航线任务: 523, 暂停航线任务: 523,
继续航线任务: 524, 继续航线任务: 524,
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论