多航线可以上下传和修改,目前采用每次切换都要下载的方式

This commit is contained in:
hm
2022-04-10 12:04:50 +08:00
parent a96c7d143e
commit 3f84a2441f
11 changed files with 193 additions and 42 deletions
+27 -11
View File
@@ -59,7 +59,7 @@ void MissionProcess::ReadCmd(uint8_t m_sysid, uint8_t m_compid,int m_group)
mission_status.m_Mode = RecieveMode;//接收模式
mission_status.recieve.group = m_group;
qDebug() << "read mission" << sysid << compid;
qDebug() << "read mission" << sysid << compid << m_group;
}
}
@@ -73,7 +73,7 @@ void MissionProcess::WriteCmd(uint8_t m_sysid, uint8_t m_compid ,uint32_t count
mission_status.transmit.group = m_group;
mission_status.m_Mode = TransmitMode;//发送模式
qDebug() << "write mission" << sysid << compid;
qDebug() << "write mission" << m_sysid << m_compid << m_group;
}
}
@@ -125,8 +125,8 @@ void MissionProcess::transmitPoint(float param1,float param2,float param3,float
items.insert(item.seq,item);
/*
/*
foreach (mapcontrol::WayPointItem::_property item, items) {
qDebug() << "Mission Thread: transmit seq"
<< item.seq
@@ -147,8 +147,8 @@ void MissionProcess::transmitPoint(float param1,float param2,float param3,float
<< item.autocontinue
<< item.mission_type;
}
*/
*/
}
@@ -171,7 +171,7 @@ void MissionProcess::Parse(mavlink_message_t msg)
case MAVLINK_MSG_ID_MISSION_REQUEST_INT: {
mavlink_msg_mission_request_int_decode(&msg,&mission_request_int);
qDebug() << "recieve mission_request_int ";
qDebug() << "recieve mission_request_int " << "mision type" << mission_request_int.mission_type;
mission_item_int.seq ++;
emit sendItemOK(mission_item_int.seq,true);
@@ -180,7 +180,7 @@ void MissionProcess::Parse(mavlink_message_t msg)
case MAVLINK_MSG_ID_MISSION_REQUEST: {
mavlink_msg_mission_request_decode(&msg,&mission_request);
qDebug() << "recieve mission_request ";
qDebug() << "recieve mission_request " << "mission type" << mission_request.mission_type;
mission_item_int.seq ++;
@@ -209,6 +209,8 @@ void MissionProcess::Parse(mavlink_message_t msg)
mission_item_int.autocontinue,
mission_item_int.mission_type);
qDebug() << "recieve mission type" << mission_item_int.mission_type;
mission_status.recieve.isWaitingforItem = false;//已经收到航点,不用再等待
}break;
case MAVLINK_MSG_ID_MISSION_ITEM: {
@@ -283,10 +285,23 @@ void MissionProcess::ReadStateMachine(void)
qDebug() << "mission count reccieved";
timeout_count = 0;
request_int(0,mission_status.recieve.group);//读取0点
time = QTime::currentTime().msecsSinceStartOfDay();
mission_status.recieve.isWaitingforItem = true;
step ++;
if(mission_count.count > 0)
{
request_int(0,mission_status.recieve.group);//读取0点
time = QTime::currentTime().msecsSinceStartOfDay();
mission_status.recieve.isWaitingforItem = true;
step ++;
qDebug() << "group" << mission_status.recieve.group;
}
else
{
step = 0;
mission_status.m_Mode = Nop_Mode;//切换到什么都不做
timeout_count = 0;
qDebug() << "no mission to read";
emit showMessage(tr("this mission group is empty"));
}
}
}
@@ -468,7 +483,8 @@ void MissionProcess::WriteStateMachine(void)
<< i.x
<< i.y
<< i.z
<< i.seq;
<< i.seq
<< i.mission_type;