diff --git a/App/GCS_zh_CN.qm b/App/GCS_zh_CN.qm index fc2dd57..f9eeffb 100644 Binary files a/App/GCS_zh_CN.qm and b/App/GCS_zh_CN.qm differ diff --git a/App/GCS_zh_CN.ts b/App/GCS_zh_CN.ts index 202c9bb..fbe0b9c 100644 --- a/App/GCS_zh_CN.ts +++ b/App/GCS_zh_CN.ts @@ -4484,7 +4484,7 @@ setPercent - + 设置百分比 @@ -4504,7 +4504,7 @@ Create CSV - + 生成CSV记录 diff --git a/App/Setting/Index1/ParameterInspector/ParameterInspector.cpp b/App/Setting/Index1/ParameterInspector/ParameterInspector.cpp index 999e7c8..f21a846 100644 --- a/App/Setting/Index1/ParameterInspector/ParameterInspector.cpp +++ b/App/Setting/Index1/ParameterInspector/ParameterInspector.cpp @@ -197,6 +197,31 @@ void ParameterInspector::appendParameter(mavlink_message_t msg) //如果收到特定的参数,就发出去。比如版本,HIL + if(param_id(param_value.param_id) == "ap_ver") + { + emit APversion(param_Value(param_value).toString()); + } + else if(param_id(param_value.param_id) == "HIL_enabled") + { + emit HILMode(param_Value(param_value).toString()); + } + + + //找到所有舵机参数,并发送出去 + { + /* + * del0 der0 dr0 dal0 dar0 + * k_dal k_dar k_del k_der k_dr + * + * + * + */ + } + + + + + isReflush = true; @@ -232,7 +257,7 @@ void ParameterInspector::refreshView()//来一个参数更新一次 //这个设备已经存在 paramFound = true; //更新该参数 - Item->setData(1,Qt::DisplayRole,param_value(param)); + Item->setData(1,Qt::DisplayRole,param_Value(param)); widgetitems.insert(param.param_index,Item); } } @@ -242,7 +267,7 @@ void ParameterInspector::refreshView()//来一个参数更新一次 //没有找到,新建一个组 QTreeWidgetItem* paraItem = new QTreeWidgetItem(); paraItem->setData(0,Qt::DisplayRole,param_id(param.param_id)); - paraItem->setData(1,Qt::DisplayRole,param_value(param)); + paraItem->setData(1,Qt::DisplayRole,param_Value(param)); paraItem->setData(2,Qt::DisplayRole,param_type(param)); widgetitems.insert(param.param_index,paraItem); } @@ -329,7 +354,7 @@ void ParameterInspector::clearview(void) } -QVariant ParameterInspector::param_value(mavlink_param_value_t param) +QVariant ParameterInspector::param_Value(mavlink_param_value_t param) { QVariant value; diff --git a/App/Setting/Index1/ParameterInspector/ParameterInspector.h b/App/Setting/Index1/ParameterInspector/ParameterInspector.h index 7eab5fb..93e9a16 100644 --- a/App/Setting/Index1/ParameterInspector/ParameterInspector.h +++ b/App/Setting/Index1/ParameterInspector/ParameterInspector.h @@ -124,6 +124,14 @@ signals: void showMessage(const QString &message,int TimeOut = 0); + + void APversion(QString); + void HILMode(QString); + + void ServoParameter(int type,int index, QVariant data);// + + + public slots: void addVehicles(int sysid, int compid); @@ -154,7 +162,7 @@ private slots: void on_clearButton_clicked(); - QVariant param_value(mavlink_param_value_t param); + QVariant param_Value(mavlink_param_value_t param); float param_getvalue(QVariant param,uint8_t type); diff --git a/App/ToolsUI/Senser/Senser.cpp b/App/ToolsUI/Senser/Senser.cpp index 2ff6928..5d8cbc9 100644 --- a/App/ToolsUI/Senser/Senser.cpp +++ b/App/ToolsUI/Senser/Senser.cpp @@ -17,12 +17,12 @@ Senser::Senser(QWidget *parent) : this->setWindowTitle(tr("sensor")); - ui->frame_Attitude->resize(490,235); - ui->frame_Gyro->resize(490,235); - ui->frame_Accelerate->resize(490,235); - ui->frame_Servo->resize(490,235); - ui->frame_Altitude->resize(490,235); - ui->frame_Speed->resize(490,235); + ui->frame_Attitude->resize(384,234); + ui->frame_Gyro->resize(384,234); + ui->frame_Accelerate->resize(384,234); + ui->frame_Servo->resize(384,234); + ui->frame_Altitude->resize(384,234); + ui->frame_Speed->resize(384,234); @@ -106,6 +106,23 @@ Senser::Senser(QWidget *parent) : this,&Senser::chartSelect); + //StringModel = new QStringListModel(ui->listView_Data); + + ItemModel = new QStandardItemModel(ui->listView_Data); + + ui->listView_Data->setModel(ItemModel); + + ui->listView_Data->scrollToBottom(); + + + QStandardItem *item = new QStandardItem("item1"); + ItemModel->appendRow(item); + item = new QStandardItem("item2"); + ItemModel->appendRow(item); + ui->listView_Data->setModel(ItemModel); + + + } Senser::~Senser() @@ -273,10 +290,6 @@ void Senser::setValue(QLabel *w,QString s) void Senser::resizeEvent(QResizeEvent *event) { - qDebug() << "sensor resize"; - - qDebug() << ui->frame_Altitude->size(); - attChart->setGeometry(0,0,ui->frame_Attitude->width(),ui->frame_Attitude->height()); gyroChart->setGeometry(0,0,ui->frame_Gyro->width(),ui->frame_Gyro->height()); accChart->setGeometry(0,0,ui->frame_Accelerate->width(),ui->frame_Accelerate->height()); diff --git a/App/ToolsUI/Senser/Senser.h b/App/ToolsUI/Senser/Senser.h index 923a9b8..7b959f6 100644 --- a/App/ToolsUI/Senser/Senser.h +++ b/App/ToolsUI/Senser/Senser.h @@ -15,7 +15,9 @@ #include "QScreen" #include - +#include +#include +#include #include "Chart.h" #include "QCheckBox" @@ -77,6 +79,10 @@ protected: private: Ui::Senser *ui; QWidget *m_parent; + + + QStringListModel *StringModel; + QStandardItemModel *ItemModel; }; #endif // SENSER_H diff --git a/App/ToolsUI/Senser/Senser.ui b/App/ToolsUI/Senser/Senser.ui index 18d513b..ea83f65 100644 --- a/App/ToolsUI/Senser/Senser.ui +++ b/App/ToolsUI/Senser/Senser.ui @@ -26,10 +26,13 @@ 2 - + + 5 + + 0 - + QFrame::StyledPanel @@ -68,7 +71,7 @@ 0 - + QFrame::StyledPanel @@ -78,17 +81,7 @@ - - - - QFrame::StyledPanel - - - QFrame::Raised - - - - + QFrame::StyledPanel @@ -98,7 +91,18 @@ - + + + + QFrame::StyledPanel + + + QFrame::Raised + + + + + @@ -114,7 +118,7 @@ - + QFrame::StyledPanel @@ -124,18 +128,39 @@ - - - - background-color: rgb(0, 255, 0); - + + QFrame::StyledPanel QFrame::Raised - + + + + + + + 200 + 16777215 + + + + QAbstractItemView::NoEditTriggers + + + false + + + Qt::IgnoreAction + + + true + + + QAbstractItemView::SelectRows + diff --git a/App/ToolsUI/ServoSystem/ServoSystem.cpp b/App/ToolsUI/ServoSystem/ServoSystem.cpp index cce5696..bba3b60 100644 --- a/App/ToolsUI/ServoSystem/ServoSystem.cpp +++ b/App/ToolsUI/ServoSystem/ServoSystem.cpp @@ -338,6 +338,19 @@ void ServoSystem::setServoState(mavlink_servo_output_raw_t *t) } + +void ServoSystem::setAPversion(QString ver) +{ + ui->label_APVer->setText(ver); +} + +void ServoSystem::setHILMode(QString mode) +{ + ui->label_HILMode->setText(mode); +} + + + float ServoSystem::param_getvalue(QVariant param,uint8_t type) { float value; diff --git a/App/ToolsUI/ServoSystem/ServoSystem.h b/App/ToolsUI/ServoSystem/ServoSystem.h index 3eefdfb..914dbe7 100644 --- a/App/ToolsUI/ServoSystem/ServoSystem.h +++ b/App/ToolsUI/ServoSystem/ServoSystem.h @@ -153,6 +153,8 @@ public slots: void addVehicles(int sysid, int compid); + void setAPversion(QString ver); + void setHILMode(QString mode); private: QWidget *m_parent; diff --git a/App/ToolsUI/ServoSystem/ServoSystem.ui b/App/ToolsUI/ServoSystem/ServoSystem.ui index 1d8a60c..2cad640 100644 --- a/App/ToolsUI/ServoSystem/ServoSystem.ui +++ b/App/ToolsUI/ServoSystem/ServoSystem.ui @@ -762,7 +762,7 @@ - + 0 @@ -797,7 +797,7 @@ - + 0 diff --git a/App/mainwindow.cpp b/App/mainwindow.cpp index 5bf5308..d2bdbab 100644 --- a/App/mainwindow.cpp +++ b/App/mainwindow.cpp @@ -417,6 +417,12 @@ MainWindow::MainWindow(QWidget *parent) toolsui->diagram,SLOT(setTargetPoint(int))); */ + + //=======setting=====tools==== + connect(setting->index1->paramInspect,SIGNAL(APversion(QString)), + toolsui->servosystem,SLOT(setAPversion(QString))); + + //==== showmessage===== connect(toolsui->servosystem,SIGNAL(showMessage(QString,int)),this,SLOT(showMessage(QString,int))); connect(commandUI,SIGNAL(showMessage(QString,int)),this,SLOT(showMessage(QString,int))); diff --git a/opmap/mapwidget/opmapwidget.cpp b/opmap/mapwidget/opmapwidget.cpp index 270c02f..e60a9d3 100644 --- a/opmap/mapwidget/opmapwidget.cpp +++ b/opmap/mapwidget/opmapwidget.cpp @@ -1492,6 +1492,70 @@ void OPMapWidget::WPSave(QString path)//带文件目录参数 QJsonArray plannedHomePosition; + QMap wlist; + + foreach(QGraphicsItem * i, map->childItems()) { + WayPointItem *w = qgraphicsitem_cast(i); + if (w) {//逐渐往下增加 + wlist.insert(w->Number(),w); + } + } + + for (QMap::iterator i = wlist.begin(); i != wlist.end(); ++i) { + + WayPointItem *w = i.value(); + + qDebug() << w->Number(); + + + if (w) {//逐渐往下增加 + if(w->Number()>0) + { + + //存到items + QJsonArray params; + params.append(w->Param1()); + params.append(w->Param2()); + params.append(w->Param3()); + params.append(w->Param4()); + params.append(w->Coord().Lat()); + params.append(w->Coord().Lng()); + params.append(w->Alt()); + + //可能有点问题 + QJsonObject item; + + //如果这个点是指令,那么不会有高度信息 + + if(w->Command() < MAV_CMD::MAV_CMD_NAV_LAST) { + + item.insert("AMSLAltAboveTerrain",w->Alt()); + item.insert("Altitude",w->Alt()); + item.insert("AltitudeMode",2); + } + + item.insert("autoContinue",w->AutoContinue()?true:false); + item.insert("command",w->Command()); + item.insert("doJumpId",w->Number()); + item.insert("frame",w->Frame()); + item.insert("params",params); + item.insert("type","SimpleItem"); + + //这里有问题 + items.append(item); + } + + if(w->Number() == 1) + { + plannedHomePosition.append(w->Coord().Lat()); + plannedHomePosition.append(w->Coord().Lng()); + plannedHomePosition.append(w->Alt()); + } + } + } + + + /* foreach(QGraphicsItem * i, map->childItems()) { WayPointItem *w = qgraphicsitem_cast(i); if (w) {//逐渐往下增加 @@ -1511,9 +1575,16 @@ void OPMapWidget::WPSave(QString path)//带文件目录参数 //可能有点问题 QJsonObject item; - item.insert("AMSLAltAboveTerrain",0); - item.insert("Altitude",w->Alt()); - item.insert("AltitudeMode",1); + + //如果这个点是指令,那么不会有高度信息 + + if(w->Command() < MAV_CMD::MAV_CMD_NAV_LAST) { + + item.insert("AMSLAltAboveTerrain",w->Alt()); + item.insert("Altitude",w->Alt()); + item.insert("AltitudeMode",2); + } + item.insert("autoContinue",w->AutoContinue()?true:false); item.insert("command",w->Command()); item.insert("doJumpId",w->Number()); @@ -1534,17 +1605,17 @@ void OPMapWidget::WPSave(QString path)//带文件目录参数 } } - + */ mission.insert("cruiseSpeed",2); - mission.insert("firmwareType",2); + mission.insert("firmwareType",0); mission.insert("hoverSpeed",2); mission.insert("items",items); mission.insert("plannedHomePosition",plannedHomePosition); - mission.insert("vehicleType",20); + mission.insert("vehicleType",1); mission.insert("version",2); }