2026-06-11 09:57:51 +08:00
|
|
|
#ifndef MAVLINKNODE_H
|
2020-03-07 14:46:50 +08:00
|
|
|
#define MAVLINKNODE_H
|
|
|
|
|
|
|
|
|
|
#include <QObject>
|
|
|
|
|
#include "QThread"
|
2020-08-20 17:48:09 +08:00
|
|
|
#include "QFile"
|
2020-03-07 14:46:50 +08:00
|
|
|
#include "QDebug"
|
|
|
|
|
|
|
|
|
|
#include "mavlink.h"
|
2020-08-20 17:48:09 +08:00
|
|
|
#include "replay.h"
|
2020-03-07 14:46:50 +08:00
|
|
|
#include "missionprocess.h"
|
2020-03-19 23:36:25 +08:00
|
|
|
#include "parameterprocess.h"
|
2020-04-03 09:39:31 +08:00
|
|
|
#include "commandprocess.h"
|
2020-12-10 18:47:49 +08:00
|
|
|
#include "statusprocess.h"
|
2020-12-16 16:49:51 +08:00
|
|
|
#include "Terminal.h"
|
2021-11-13 20:06:59 +08:00
|
|
|
#include "sbusparser.h"
|
|
|
|
|
//#include "QAxObject"
|
2020-12-15 13:47:14 +08:00
|
|
|
|
2021-11-13 20:06:59 +08:00
|
|
|
#include "rcprocess.h"
|
|
|
|
|
#include "rtkprocess.h"
|
2026-05-05 17:08:24 +08:00
|
|
|
#include "DataStream.h"
|
2021-11-13 20:06:59 +08:00
|
|
|
|
|
|
|
|
#include "ThreadTemplet.h"
|
2020-12-15 13:47:14 +08:00
|
|
|
|
2022-05-26 14:03:37 +08:00
|
|
|
#include "ParsePack.h"
|
2022-06-07 17:48:52 +08:00
|
|
|
#include "QTime"
|
2022-07-18 12:35:04 +08:00
|
|
|
#include "QDateTime"
|
2024-09-19 10:12:11 +08:00
|
|
|
#include <QTimer>
|
2022-05-26 14:03:37 +08:00
|
|
|
|
2020-03-07 14:46:50 +08:00
|
|
|
#ifdef QtMavlinkNode
|
|
|
|
|
#include <mavlinknodeglobal.h>
|
2021-11-13 20:06:59 +08:00
|
|
|
class MAVLINKNODESHARED_EXPORT MavLinkNode : public ThreadTemplet {
|
2020-03-07 14:46:50 +08:00
|
|
|
#else
|
2021-11-13 20:06:59 +08:00
|
|
|
class MavLinkNode : public ThreadTemplet
|
2020-03-07 14:46:50 +08:00
|
|
|
{
|
|
|
|
|
#endif
|
|
|
|
|
Q_OBJECT
|
2021-11-13 20:06:59 +08:00
|
|
|
public:
|
2020-03-07 14:46:50 +08:00
|
|
|
|
2022-05-26 18:55:27 +08:00
|
|
|
typedef struct
|
|
|
|
|
{
|
|
|
|
|
quint16 year;
|
|
|
|
|
quint8 mon;
|
|
|
|
|
quint8 day;
|
|
|
|
|
|
|
|
|
|
quint8 hour;
|
|
|
|
|
quint8 min;
|
|
|
|
|
quint8 sec;
|
|
|
|
|
quint16 ms;
|
|
|
|
|
}_gpsTimer;
|
|
|
|
|
|
|
|
|
|
|
2020-03-07 14:46:50 +08:00
|
|
|
typedef struct {
|
2021-11-13 20:06:59 +08:00
|
|
|
int sysid = 0; /* ID of message sender system/aircraft */
|
|
|
|
|
int compid = 0; /* ID of the message sender component */
|
|
|
|
|
|
2023-05-17 16:27:12 +08:00
|
|
|
qint64 timebase;
|
|
|
|
|
|
|
|
|
|
|
2021-11-13 20:06:59 +08:00
|
|
|
mavlink_autopilot_version_t autopilot_version = {0};
|
|
|
|
|
mavlink_sys_status_t sys_status = {0};
|
|
|
|
|
mavlink_heartbeat_t heartbeat = {0};
|
|
|
|
|
mavlink_ping_t ping = {0};
|
|
|
|
|
mavlink_attitude_t attitude = {0};
|
|
|
|
|
mavlink_ins1_t ins1 = {0};
|
|
|
|
|
mavlink_ins2_t ins2 = {0};
|
|
|
|
|
mavlink_gps_raw_int_t gps_raw_int = {0};
|
|
|
|
|
mavlink_global_position_int_t global_position_int = {0};
|
|
|
|
|
mavlink_servo_output_raw_t servo_output_raw = {0};
|
|
|
|
|
mavlink_rc_channels_raw_t rc_channels_raw = {0};
|
|
|
|
|
mavlink_nav_controller_output_t nav_controller_output = {0};
|
|
|
|
|
mavlink_airspeed_autocal_t airspeed_autocal = {0};
|
|
|
|
|
mavlink_rpm_t rpm = {0};
|
|
|
|
|
mavlink_scaled_pressure_t scaled_pressure = {0};
|
|
|
|
|
mavlink_extended_sys_state_t extended_sys_state = {0};
|
|
|
|
|
mavlink_battery_status_t battery_status = {0};
|
|
|
|
|
mavlink_vibration_t vibration = {0};
|
|
|
|
|
mavlink_enginestate_t enginestate = {0};
|
|
|
|
|
mavlink_vfr_hud_t vfr_hud = {0};
|
|
|
|
|
mavlink_aoa_ssa_t aoa_ssa = {0};
|
|
|
|
|
mavlink_emb_atmo_com_t emb_atom_com = {0};
|
|
|
|
|
mavlink_turbinestate_t turbinstate = {0};
|
|
|
|
|
mavlink_bmustate_t bmustate = {0};
|
|
|
|
|
mavlink_ccmstate_t ccmstate = {0};
|
|
|
|
|
mavlink_serial_control_t serial_control = {0};
|
2020-10-07 12:24:23 +08:00
|
|
|
|
2026-05-05 17:08:24 +08:00
|
|
|
mavlink_uvwdstate_t uvwdstate = {0};
|
|
|
|
|
mavlink_rwrstate_t rwrstate = {0};
|
|
|
|
|
mavlink_dlsstate_t dlsstate = {0};
|
|
|
|
|
mavlink_payloadalarmstate_t payloadalarmstate = {0};
|
|
|
|
|
|
|
|
|
|
|
2020-03-07 14:46:50 +08:00
|
|
|
}_vehicle;
|
|
|
|
|
|
2026-06-11 09:57:51 +08:00
|
|
|
// typedef struct
|
|
|
|
|
// {
|
|
|
|
|
// int16_t flag;// 标识
|
|
|
|
|
// int32_t time;//(second+min*60+hour*3600)*1000
|
|
|
|
|
// int16_t num; //飞机数量,默认值为1
|
|
|
|
|
// int16_t id;//飞机编号,默认值为1
|
|
|
|
|
// int16_t t; //
|
|
|
|
|
// int32_t pe; //相对参考点的东向位置,实际值*8,单位为米
|
|
|
|
|
// int32_t pu; //相对参考点的天向位置,实际值*8,单位为米
|
|
|
|
|
// int32_t ps; //相对参考点的南向位置,实际值*8,单位为米
|
|
|
|
|
// int32_t ve; //相对参考点的东向速度,实际值*1024,单位为米/秒
|
|
|
|
|
// int32_t vu; //相对参考点的天向速度,实际值*1024,单位为米/秒
|
|
|
|
|
// int32_t vs; //相对参考点的南向速度,实际值*1024,单位为米/秒
|
|
|
|
|
// int32_t vt; //相对参考点的合速度,实际值*1024,单位为米/秒
|
|
|
|
|
// int32_t rcs; //飞机RCS值,默认值为0
|
|
|
|
|
// int32_t reserve; //预留位,默认值为0
|
|
|
|
|
// }_showinfo;//192.168.5.72:10049
|
|
|
|
|
|
|
|
|
|
|
2023-02-13 21:55:03 +08:00
|
|
|
typedef struct
|
|
|
|
|
{
|
2026-06-11 09:57:51 +08:00
|
|
|
int16_t Flag; // 0x23f3 标识(每个厂家不一样)
|
|
|
|
|
int16_t Src; // 飞机编号
|
|
|
|
|
int32_t GpsTime; // (Second + Minute * 60 + Hour * 3600) * 1000 + msec
|
|
|
|
|
int32_t Lan; // 经度 * 10000000 度
|
|
|
|
|
int32_t Lat; // 纬度 * 10000000 度
|
|
|
|
|
int32_t Alt; // 高度 * 100 m
|
|
|
|
|
int32_t VE; // 东向速度 * 100 m/s
|
|
|
|
|
int32_t VN; // 北向速度 * 100 m/s
|
|
|
|
|
int32_t VU; // 天向速度 * 100 m/s
|
|
|
|
|
int32_t V; // 东北天合速度 * 100 m/s
|
|
|
|
|
int32_t K; // 航向 * 100 度
|
|
|
|
|
int32_t Reserve1; // 保留字节
|
|
|
|
|
int32_t Reserve2; // 保留字节
|
|
|
|
|
}_showinfo;
|
2020-10-15 22:21:38 +08:00
|
|
|
|
2025-02-17 16:04:42 +08:00
|
|
|
typedef struct
|
|
|
|
|
{
|
|
|
|
|
double lon; //参考点经度
|
|
|
|
|
double lat; //参考点纬度
|
|
|
|
|
double hight; //参考点高度
|
|
|
|
|
}ReferencePoint;
|
2021-11-13 20:06:59 +08:00
|
|
|
|
2020-03-07 14:46:50 +08:00
|
|
|
explicit MavLinkNode(QObject *parent = nullptr);
|
|
|
|
|
~MavLinkNode();
|
|
|
|
|
|
2022-05-26 18:55:27 +08:00
|
|
|
_gpsTimer gpsTimer;
|
2021-11-13 20:06:59 +08:00
|
|
|
_vehicle vehicle;//没有初始化,所以会有野值
|
|
|
|
|
QHash<int,_vehicle> vehicleList;
|
2020-03-25 12:11:44 +08:00
|
|
|
|
2020-08-20 17:48:09 +08:00
|
|
|
Replay *replay = nullptr;
|
2020-03-25 12:11:44 +08:00
|
|
|
|
2020-08-20 17:48:09 +08:00
|
|
|
MissionProcess *Mission = nullptr;
|
|
|
|
|
ParameterProcess *Parameter = nullptr;
|
|
|
|
|
commandprocess *Commander = nullptr;
|
2020-12-10 18:47:49 +08:00
|
|
|
statusprocess *Status = nullptr;
|
2020-12-16 16:49:51 +08:00
|
|
|
terminal *Terminal = nullptr;
|
2021-11-13 20:06:59 +08:00
|
|
|
rcprocess *RC = nullptr;
|
|
|
|
|
rtkprocess *rtk = nullptr;
|
2026-05-05 17:08:24 +08:00
|
|
|
DataStream *datstream = nullptr;
|
2020-12-10 18:47:49 +08:00
|
|
|
|
2020-10-12 14:39:16 +08:00
|
|
|
bool isCommunicationLost = false;
|
2020-08-04 23:18:58 +08:00
|
|
|
|
2020-12-13 11:00:31 +08:00
|
|
|
uint64_t rate_in = 0;
|
|
|
|
|
uint64_t count_in = 0;
|
|
|
|
|
|
|
|
|
|
uint64_t rate_out = 0;
|
|
|
|
|
uint64_t count_out = 0;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2020-10-13 18:41:23 +08:00
|
|
|
uint64_t bittotal = 0;
|
|
|
|
|
|
|
|
|
|
uint64_t parserSuccess = 0;
|
|
|
|
|
uint64_t parserFailure = 0;
|
2020-12-11 17:47:29 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
uint64_t TotalFrame_1s = 0;
|
|
|
|
|
uint64_t LossFrame_1s = 0;
|
|
|
|
|
|
2020-10-13 18:41:23 +08:00
|
|
|
float rssi = 100;
|
|
|
|
|
|
2021-11-13 20:06:59 +08:00
|
|
|
|
|
|
|
|
|
2022-06-09 17:50:48 +08:00
|
|
|
QByteArray rtkrawdata;
|
2021-11-13 20:06:59 +08:00
|
|
|
|
|
|
|
|
QFile * autopilot_version_file = nullptr;
|
|
|
|
|
QFile * sys_status_file = nullptr;
|
|
|
|
|
QFile * heartbeat_file = nullptr;
|
|
|
|
|
QFile * ping_file = nullptr;
|
|
|
|
|
QFile * attitude_file = nullptr;
|
|
|
|
|
QFile * ins1_file = nullptr;
|
|
|
|
|
QFile * ins2_file = nullptr;
|
|
|
|
|
QFile * gps_raw_int_file = nullptr;
|
|
|
|
|
QFile * global_position_int_file = nullptr;
|
|
|
|
|
QFile * servo_output_raw_file = nullptr;
|
|
|
|
|
QFile * rc_channels_raw_file = nullptr;
|
|
|
|
|
QFile * nav_controller_output_file = nullptr;
|
|
|
|
|
QFile * airspeed_autocal_file = nullptr;
|
|
|
|
|
QFile * rpm_file = nullptr;
|
|
|
|
|
QFile * scaled_pressure_file = nullptr;
|
|
|
|
|
QFile * extended_sys_state_file = nullptr;
|
|
|
|
|
QFile * battery_status_file = nullptr;
|
|
|
|
|
QFile * vibration_file = nullptr;
|
|
|
|
|
QFile * enginestate_file = nullptr;
|
|
|
|
|
QFile * vfr_hud_file = nullptr;
|
|
|
|
|
QFile * aoa_ssa_file = nullptr;
|
|
|
|
|
QFile * emb_atom_com_file = nullptr;
|
|
|
|
|
QFile * turbinstate_file = nullptr;
|
|
|
|
|
QFile * bmustate_file = nullptr;
|
|
|
|
|
QFile * ccmstate_file = nullptr;
|
|
|
|
|
QFile * serial_control_file = nullptr;
|
|
|
|
|
|
2023-02-13 21:55:03 +08:00
|
|
|
int infoExportID = 1;
|
2020-03-07 14:46:50 +08:00
|
|
|
signals:
|
2020-10-12 21:08:37 +08:00
|
|
|
|
2023-05-17 16:27:12 +08:00
|
|
|
void setMa(qint64 time, QVariant Ma);
|
|
|
|
|
|
2021-11-13 20:06:59 +08:00
|
|
|
void signal_autopilot_version(mavlink_autopilot_version_t);
|
|
|
|
|
void signal_sys_status(mavlink_sys_status_t);
|
|
|
|
|
void signal_heartbeat(mavlink_heartbeat_t);
|
|
|
|
|
void signal_ping(mavlink_ping_t);
|
|
|
|
|
void signal_attitude(mavlink_attitude_t);
|
|
|
|
|
void signal_ins1(mavlink_ins1_t ins);
|
|
|
|
|
void signal_ins2(mavlink_ins2_t ins);
|
|
|
|
|
void signal_gps_raw_int(mavlink_gps_raw_int_t);
|
|
|
|
|
void signal_global_position_int(mavlink_global_position_int_t);
|
|
|
|
|
void signal_servo_output_raw(mavlink_servo_output_raw_t servo);
|
|
|
|
|
void signal_rc_channels_raw(mavlink_rc_channels_raw_t);
|
|
|
|
|
void signal_nav_controller_output(mavlink_nav_controller_output_t);
|
|
|
|
|
void signal_airspeed_autocal(mavlink_airspeed_autocal_t);
|
|
|
|
|
void signal_rpm(mavlink_rpm_t);
|
|
|
|
|
void signal_scaled_pressure(mavlink_scaled_pressure_t);
|
|
|
|
|
void signal_extended_sys_state(mavlink_extended_sys_state_t);
|
|
|
|
|
void signal_battery_status(mavlink_battery_status_t);
|
|
|
|
|
void signal_vibration(mavlink_vibration_t);
|
|
|
|
|
void signal_enginestate(mavlink_enginestate_t);
|
|
|
|
|
void signal_vfr_hud(mavlink_vfr_hud_t);
|
|
|
|
|
void signal_aoa_ssa(mavlink_aoa_ssa_t);
|
|
|
|
|
void signal_emb_atom_com(mavlink_emb_atmo_com_t);
|
|
|
|
|
void signal_turbinstate(mavlink_turbinestate_t);
|
|
|
|
|
void signal_bmustate(mavlink_bmustate_t);
|
|
|
|
|
void signal_ccmstate(mavlink_ccmstate_t);
|
|
|
|
|
void signal_serial_control(mavlink_serial_control_t);
|
|
|
|
|
|
2026-05-05 17:08:24 +08:00
|
|
|
void signal_uvwdstate(mavlink_uvwdstate_t);
|
|
|
|
|
void signal_rwrstate(mavlink_rwrstate_t);
|
|
|
|
|
void signal_dlsstate(mavlink_dlsstate_t);
|
|
|
|
|
void signal_payloadalarmstate(mavlink_payloadalarmstate_t);
|
|
|
|
|
|
2021-11-13 20:06:59 +08:00
|
|
|
void signal_vehicle(MavLinkNode::_vehicle vehicle);
|
|
|
|
|
|
|
|
|
|
void updateDlink(float rssi,uint64_t in,uint64_t out);
|
|
|
|
|
void CommuniationLost(bool);
|
2020-06-05 18:05:16 +08:00
|
|
|
|
2021-11-13 20:06:59 +08:00
|
|
|
void beep(int);
|
2020-08-07 17:15:58 +08:00
|
|
|
|
2020-06-01 18:25:33 +08:00
|
|
|
void addVehicles(int sysid,int compid);
|
|
|
|
|
|
2020-03-17 22:08:29 +08:00
|
|
|
void recievemsg(mavlink_message_t msg);
|
|
|
|
|
|
2020-03-07 14:46:50 +08:00
|
|
|
void state_updated();
|
|
|
|
|
void parameter_updated();
|
2020-03-10 15:30:38 +08:00
|
|
|
//void mission_updated();
|
2020-06-02 18:39:43 +08:00
|
|
|
|
|
|
|
|
void setCurrentID(int sysid,int compid);
|
|
|
|
|
|
2020-06-05 18:05:16 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
void setAltitude(int sysid,int compid,double roll,double pitch,double yaw);
|
|
|
|
|
void setPos(int sysid,int compid,double x,double y,double z);
|
|
|
|
|
void setHeading(int sysid,int compid,double x,double y,double z);
|
|
|
|
|
|
2022-07-18 01:23:55 +08:00
|
|
|
void Recieve(QString msg);
|
|
|
|
|
|
2022-07-18 11:28:14 +08:00
|
|
|
void heartbeatTimeStamp(quint32 time);
|
|
|
|
|
|
2023-02-13 21:55:03 +08:00
|
|
|
|
|
|
|
|
void SendMessageToExport(quint8 ch, quint8 *data,quint16 len);
|
2026-05-05 17:08:24 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void recievePayloadData(QByteArray);
|
|
|
|
|
|
|
|
|
|
void enCapData(uint16_t,QByteArray);
|
|
|
|
|
|
|
|
|
|
|
2020-03-07 14:46:50 +08:00
|
|
|
public slots:
|
2024-09-22 10:53:28 +08:00
|
|
|
/**
|
|
|
|
|
* @brief 设置厂家标识
|
|
|
|
|
*/
|
|
|
|
|
void setManufacturerIdentification(quint16 id);
|
|
|
|
|
|
2020-03-07 14:46:50 +08:00
|
|
|
//线程对外接口
|
2021-11-13 20:06:59 +08:00
|
|
|
void CreateCSV(void);
|
2022-05-26 14:03:37 +08:00
|
|
|
void CloseCSV(void);
|
|
|
|
|
|
|
|
|
|
bool setFileData(QFile *file,const QByteArray &data);
|
|
|
|
|
|
2020-10-12 14:39:16 +08:00
|
|
|
|
2020-03-07 14:46:50 +08:00
|
|
|
//缓存对外接口
|
2020-08-20 17:48:09 +08:00
|
|
|
void readPendingDatagramsReplay(void);
|
2020-03-07 14:46:50 +08:00
|
|
|
|
2020-06-02 18:39:43 +08:00
|
|
|
void setCurrentSelected(int sysid,int compid);
|
|
|
|
|
|
2020-08-20 17:48:09 +08:00
|
|
|
void setLogfile(QString file);
|
2020-03-07 14:46:50 +08:00
|
|
|
|
2020-11-21 18:19:28 +08:00
|
|
|
void setGCSID(int id);
|
2020-10-12 14:39:16 +08:00
|
|
|
|
2022-07-18 01:23:55 +08:00
|
|
|
void setHeartbeat(QVariant state, QVariant frq );
|
|
|
|
|
|
|
|
|
|
void serial_control(void);
|
|
|
|
|
void Transmit(QString msg);
|
2020-10-12 14:39:16 +08:00
|
|
|
|
2023-02-13 21:55:03 +08:00
|
|
|
void infoExport(_showinfo info);
|
|
|
|
|
|
2025-02-17 16:04:42 +08:00
|
|
|
void setReferencePoint(double lon, double lat, double h);
|
|
|
|
|
|
2020-03-07 14:46:50 +08:00
|
|
|
private slots:
|
|
|
|
|
//线程私有接口
|
|
|
|
|
void process();
|
|
|
|
|
|
|
|
|
|
//缓存私有接口
|
2021-11-13 20:06:59 +08:00
|
|
|
|
2020-03-07 14:46:50 +08:00
|
|
|
|
2020-10-12 14:39:16 +08:00
|
|
|
void TimerOut(void);
|
2020-12-06 20:29:25 +08:00
|
|
|
void LogTimerOut(void);
|
2020-12-13 11:00:31 +08:00
|
|
|
void timer_1s_Out(void);
|
2020-03-07 14:46:50 +08:00
|
|
|
//解析
|
|
|
|
|
void Mavlinkparse(quint32 src,QByteArray datagram);
|
|
|
|
|
|
|
|
|
|
void MAVLinkRcv_Handler(mavlink_message_t msg);
|
|
|
|
|
|
|
|
|
|
void StatusParse(mavlink_message_t msg);
|
|
|
|
|
void CommandParse(mavlink_message_t msg);
|
2020-03-10 15:30:38 +08:00
|
|
|
//
|
2020-03-07 14:46:50 +08:00
|
|
|
|
2020-06-01 18:25:33 +08:00
|
|
|
//check for new vehicle
|
|
|
|
|
void CheckVehicle(int sysid, int compid);
|
|
|
|
|
|
2022-05-26 14:03:37 +08:00
|
|
|
bool setLogData(mavlink_message_t msg);
|
2020-06-01 18:25:33 +08:00
|
|
|
|
2022-07-18 01:23:55 +08:00
|
|
|
void heartbeat(uint32_t custom_mode,
|
|
|
|
|
uint8_t type,
|
|
|
|
|
uint8_t autopilot,
|
|
|
|
|
uint8_t base_mode,
|
|
|
|
|
uint8_t system_status,
|
|
|
|
|
uint8_t mavlink_version);
|
|
|
|
|
|
2020-03-07 14:46:50 +08:00
|
|
|
protected:
|
|
|
|
|
|
2020-08-04 23:18:58 +08:00
|
|
|
int Current_sysID = 0xF1;
|
2020-08-05 22:39:33 +08:00
|
|
|
int Current_CompID = MAV_COMP_ID_MISSIONPLANNER;
|
2020-06-02 18:39:43 +08:00
|
|
|
|
2020-03-07 14:46:50 +08:00
|
|
|
enum SourceType{
|
|
|
|
|
c_sock = 0,
|
|
|
|
|
s_port = 1
|
|
|
|
|
};
|
|
|
|
|
|
2020-10-13 18:41:23 +08:00
|
|
|
bool hasConneted = false;
|
2020-10-12 21:08:37 +08:00
|
|
|
int32_t CommucationOverCount = 5;
|
2020-10-12 14:39:16 +08:00
|
|
|
uint64_t CommucationOverTimer = 5000;
|
2020-05-29 19:30:33 +08:00
|
|
|
|
2020-08-04 23:18:58 +08:00
|
|
|
uint8_t GCS_System_ID = 0xFF;
|
2020-05-29 19:30:33 +08:00
|
|
|
|
2020-03-07 14:46:50 +08:00
|
|
|
|
2022-02-10 14:26:23 +08:00
|
|
|
QDateTime startuptime;
|
2020-03-07 14:46:50 +08:00
|
|
|
|
2022-06-07 17:48:52 +08:00
|
|
|
QTime *LocationTime;
|
2022-05-26 18:55:27 +08:00
|
|
|
|
2020-06-01 18:25:33 +08:00
|
|
|
|
2021-11-13 20:06:59 +08:00
|
|
|
QTimer *gdt_timer = nullptr;
|
2020-10-12 14:39:16 +08:00
|
|
|
QTimer *timer = nullptr;
|
2020-06-01 18:25:33 +08:00
|
|
|
|
2020-12-15 13:47:14 +08:00
|
|
|
|
|
|
|
|
QByteArray databuff;
|
|
|
|
|
|
2020-03-07 14:46:50 +08:00
|
|
|
_buffdef serial_buff;
|
|
|
|
|
_buffdef client_buff;
|
2020-08-20 17:48:09 +08:00
|
|
|
|
2020-12-06 20:29:25 +08:00
|
|
|
QString mavlogFileName;
|
2020-08-20 17:48:09 +08:00
|
|
|
QFile *mavLogFile = NULL;
|
|
|
|
|
|
2022-07-18 12:35:04 +08:00
|
|
|
QString HeartBeatTimeName;
|
|
|
|
|
QFile *HeartBeatTimeFile = NULL;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2020-12-06 20:29:25 +08:00
|
|
|
QTimer *logTimer = nullptr;
|
|
|
|
|
|
2020-12-13 11:00:31 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
QTimer *timer_1s = nullptr;
|
|
|
|
|
|
|
|
|
|
|
2022-05-26 14:03:37 +08:00
|
|
|
Parser2_t parser;
|
|
|
|
|
Packer2_t packer;
|
|
|
|
|
|
2021-11-13 20:06:59 +08:00
|
|
|
mutable QReadWriteLock RWlock;
|
2021-11-10 17:20:09 +08:00
|
|
|
|
2022-05-26 18:55:27 +08:00
|
|
|
|
2022-07-18 01:23:55 +08:00
|
|
|
qreal heartbeatFrq = 1;
|
|
|
|
|
bool isSendHeartBeat = false;
|
|
|
|
|
|
|
|
|
|
mavlink_heartbeat_t m_heartbeat;
|
|
|
|
|
|
|
|
|
|
QTimer *heartbeatTimer = nullptr;
|
|
|
|
|
|
2022-05-26 18:55:27 +08:00
|
|
|
|
2022-07-18 01:23:55 +08:00
|
|
|
bool isSendTerminal = false;
|
|
|
|
|
QString SerialData;
|
2022-05-26 18:55:27 +08:00
|
|
|
|
2023-04-17 17:24:51 +08:00
|
|
|
bool use_ins1 = false;
|
|
|
|
|
|
2023-05-17 16:27:12 +08:00
|
|
|
QDateTime *gpstimebase = nullptr;
|
2024-09-12 14:24:53 +08:00
|
|
|
|
|
|
|
|
_showinfo info;
|
|
|
|
|
|
2024-09-19 10:12:11 +08:00
|
|
|
QPointer<QTimer> showInfoTimer = nullptr;
|
2024-09-19 17:28:52 +08:00
|
|
|
QThread showInfoThread;
|
2024-09-19 10:12:11 +08:00
|
|
|
|
2024-09-22 10:53:28 +08:00
|
|
|
quint16 ManufacturerID;
|
|
|
|
|
|
2025-02-17 16:04:42 +08:00
|
|
|
ReferencePoint refPoint;
|
|
|
|
|
|
2024-09-19 10:12:11 +08:00
|
|
|
private slots:
|
|
|
|
|
void showInfoTimerTimeout();
|
2020-03-07 14:46:50 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
#endif // MAVLINKNODE_H
|