diff --git a/src/comm/UDPLink.cc b/src/comm/UDPLink.cc index d0f6d16..0574c1e 100644 --- a/src/comm/UDPLink.cc +++ b/src/comm/UDPLink.cc @@ -36,7 +36,7 @@ This file is part of the QGROUNDCONTROL project #include "UDPLink.h" #include "LinkManager.h" #include "MG.h" -#include +//#include UDPLink::UDPLink(QHostAddress host, quint16 port) { diff --git a/src/uas/SlugsMAV.cc b/src/uas/SlugsMAV.cc index 5fcbc0f..56ed826 100644 --- a/src/uas/SlugsMAV.cc +++ b/src/uas/SlugsMAV.cc @@ -1,26 +1,3 @@ -/*===================================================================== - -QGroundControl Open Source Ground Control Station - -(c) 2009, 2010 QGROUNDCONTROL PROJECT - -This file is part of the QGROUNDCONTROL project - - QGROUNDCONTROL is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - QGROUNDCONTROL is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with QGROUNDCONTROL. If not, see . - -======================================================================*/ - #include "SlugsMAV.h" #include @@ -29,8 +6,6 @@ SlugsMAV::SlugsMAV(MAVLinkProtocol* mavlink, int id) : UAS(mavlink, id)//, // Place other initializers here { - - } /** @@ -55,7 +30,7 @@ void SlugsMAV::receiveMessage(LinkInterface* link, mavlink_message_t message) break; } -#ifdef MAVLINK_ENABLED_SLUGS +#ifdef MAVLINK_ENABLED_SLUGS_MESSAGES_QGC case MAVLINK_MSG_ID_CPU_LOAD: { @@ -67,7 +42,11 @@ void SlugsMAV::receiveMessage(LinkInterface* link, mavlink_message_t message) emit valueChanged(uasId, tr("ControlDSC Load"), cpu_load.ctrlLoad, time); emit valueChanged(uasId, tr("Battery Volt"), cpu_load.batVolt, time); - emit newCpuLoad (uasId, &cpu_load); + emit slugsCPULoad(uasId, + cpu_load.sensLoad, + cpu_load.ctrlLoad, + cpu_load.batVolt, + time); break; } @@ -80,6 +59,12 @@ void SlugsMAV::receiveMessage(LinkInterface* link, mavlink_message_t message) emit valueChanged(uasId, tr("Static Pressure"),air_data.staticPressure, time); emit valueChanged(uasId, tr("Temp"),air_data.temperature,time); + emit slugsAirData(uasId, + air_data.dynamicPressure, + air_data.staticPressure, + air_data.temperature, + time); + break; } case MAVLINK_MSG_ID_SENSOR_BIAS: @@ -94,6 +79,16 @@ void SlugsMAV::receiveMessage(LinkInterface* link, mavlink_message_t message) emit valueChanged(uasId,tr("Gy Bias"),sensor_bias.gyBias,time); emit valueChanged(uasId,tr("Gz Bias"),sensor_bias.gzBias,time); + emit slugsSensorBias(uasId, + sensor_bias.axBias, + sensor_bias.ayBias, + sensor_bias.azBias, + sensor_bias.gxBias, + sensor_bias.gyBias, + sensor_bias.gzBias, + time); + + break; } case MAVLINK_MSG_ID_DIAGNOSTIC: @@ -108,6 +103,14 @@ void SlugsMAV::receiveMessage(LinkInterface* link, mavlink_message_t message) emit valueChanged(uasId,tr("Diag S2"),diagnostic.diagSh2,time); emit valueChanged(uasId,tr("Diag S3"),diagnostic.diagSh3,time); + emit slugsDiagnostic(uasId, + diagnostic.diagFl1, + diagnostic.diagFl2, + diagnostic.diagFl3, + diagnostic.diagSh1, + diagnostic.diagSh2, + diagnostic.diagSh3); + break; } case MAVLINK_MSG_ID_PILOT_CONSOLE: @@ -121,6 +124,15 @@ void SlugsMAV::receiveMessage(LinkInterface* link, mavlink_message_t message) emit valueChanged(uasId,"dr",pilot.dr,time); emit valueChanged(uasId,"de",pilot.de,time); + emit slugsPilotConsolePWM(uasId, + pilot.dt, + pilot.dla, + pilot.dra, + pilot.dr, + pilot.de, + time); + + break; } case MAVLINK_MSG_ID_PWM_COMMANDS: @@ -139,6 +151,19 @@ void SlugsMAV::receiveMessage(LinkInterface* link, mavlink_message_t message) emit valueChanged(uasId,"da1_c",pwm.aux1,time); emit valueChanged(uasId,"da2_c",pwm.aux2,time); + emit slugsPWM(uasId, + pwm.dt_c, + pwm.dla_c, + pwm.dra_c, + pwm.dr_c, + pwm.dle_c, + pwm.dre_c, + pwm.dlf_c, + pwm.drf_c, + pwm.aux1, + pwm.aux2, + time); + break; } diff --git a/src/uas/UASInterface.h b/src/uas/UASInterface.h index d112989..135cd28 100644 --- a/src/uas/UASInterface.h +++ b/src/uas/UASInterface.h @@ -383,6 +383,62 @@ signals: * @param fix 0: No IR/Ultrasound sensor, N > 0: Found N active sensors */ void irUltraSoundLocalizationChanged(UASInterface* uas, int fix); + + + // ESPECIAL SLUGS MESSAGE + void slugsCPULoad(UASInterface* uas, + uint8_t sensLoad, + uint8_t ctrlLoad, + uint8_t batVolt, + quint64 time); + + void slugsAirData(UASInterface* uas, + float dinamicPressure, + float staticPresure, + uint16_t temperature, + quint64 time); + + void slugsSensorBias(UASInterface* uas, + double axBias, + double ayBias, + double azBias, + double gxBias, + double gyBias, + double gzBias, + quint64 time); + + void slugsDiagnostic(UASInterface* uas, + double diagFl1, + double diagFl2, + double diagFl3, + int16_t diagSh1, + int16_t diagSh2, + int16_t diagSh3, + quint64 time); + + void slugsPilotConsolePWM(UASInterface* uas, + uint16_t dt, + uint16_t dla, + uint16_t dra, + uint16_t dr, + uint16_t de, + quint64 time); + + void slugsPWM(UASInterface* uas, + uint16_t dt_c, + uint16_t dla_c, + uint16_t dra_c, + uint16_t dr_c, + uint16_t dle_c, + uint16_t dre_c, + uint16_t dlf_c, + uint16_t drf_c, + uint16_t da1_c, + uint16_t da2_c, + quint64 time); + + + }; Q_DECLARE_INTERFACE(UASInterface, "org.qgroundcontrol/1.0"); diff --git a/src/ui/MainWindow.cc b/src/ui/MainWindow.cc index 2703aa3..1c725ea 100644 --- a/src/ui/MainWindow.cc +++ b/src/ui/MainWindow.cc @@ -181,6 +181,7 @@ void MainWindow::buildWidgets() slugsDataWidget = new QDockWidget(tr("Slugs Data"), this); slugsDataWidget->setWidget( new SlugsDataSensorView(this)); + } /** @@ -540,7 +541,17 @@ void MainWindow::UASCreated(UASInterface* uas) PxQuadMAV* mav = dynamic_cast(uas); if (mav) loadPixhawkView(); SlugsMAV* mav2 = dynamic_cast(uas); - if (mav2) loadSlugsView(); + if (mav2) + { + SlugsDataSensorView* slugDataView = dynamic_cast(slugsDataWidget->widget()); + if(slugDataView) + { + slugDataView->addUAS(uas); + } + loadSlugsView(); + } + + } } diff --git a/src/ui/SlugsDataSensorView.cc b/src/ui/SlugsDataSensorView.cc index a83c229..b70a853 100644 --- a/src/ui/SlugsDataSensorView.cc +++ b/src/ui/SlugsDataSensorView.cc @@ -47,12 +47,11 @@ void SlugsDataSensorView::loadParameters() Axb = 0; Ayb = 0; Azb = 0; - TimeActualAcel = 0; //Gyro Gxb = 0; Gyb = 0; Gzb = 0; - TimeActualGyro = 0; + TimeActualBias = 0; } @@ -68,7 +67,7 @@ void SlugsDataSensorView::addUAS(UASInterface* uas) connect(uas, SIGNAL(localPositionChanged(UASInterface*,double,double,double,quint64)), this, SLOT(slugLocalPositionChange(UASInterface*,double,double,double,quint64))); connect(uas, SIGNAL(speedChanged(UASInterface*,double,double,double,quint64)), this, SLOT(slugSpeedLocalPositionChanged(UASInterface*,double,double,double,quint64))); connect(uas, SIGNAL(attitudeChanged(UASInterface*,double,double,double,quint64)), this, SLOT(slugAttitudeChanged(UASInterface*,double,double,double,quint64))); - connect(uas, SIGNAL(sensorBiasAcelerometerChanged(UASInterface*,double,double,double,quint64)), this, SLOT(slugsSensorBiasAcelerometerChanged(UASInterface*,double,double,double,quint64))); + connect(uas, SIGNAL(slugsSensorBias(UASInterface*,double,double,double,double,double,double,quint64)), this, SLOT(slugsSensorBiasAcelerometerChanged(UASInterface*,double,double,double,quint64))); // Set this UAS as active if it is the first one if(activeUAS == 0) @@ -81,35 +80,48 @@ void SlugsDataSensorView::addUAS(UASInterface* uas) void SlugsDataSensorView::setActiveUAS(UASInterface* uas) { activeUAS = uas; + + } void SlugsDataSensorView::refresh() { + if(activeUAS) + { - //refresh UI position data - ui->ed_x->setPlainText(QString::number(Xpos, 'f', 4)); - ui->ed_y->setPlainText(QString::number(Ypos, 'f', 4)); - ui->ed_z->setPlainText(QString::number(Zpos, 'f', 4)); - - //refresh UI speed position data - ui->ed_vx->setPlainText(QString::number(VXpos,'f',4)); - ui->ed_vy->setPlainText(QString::number(VYpos,'f',4)); - ui->ed_vz->setPlainText(QString::number(VZpos,'f',4)); - - //refresh UI attitude data - ui->m_SlugAttitudeRoll_plainTextEdit->setPlainText(QString::number(roll,'f',4)); - ui->m_SlugAttitudePitch_plainTextEdit->setPlainText(QString::number(pitch,'f',4)); - ui->m_SlugAttitudeYaw_plainTextEdit->setPlainText(QString::number(yaw,'f',4)); + //refresh UI position data + ui->ed_x->setPlainText(QString::number(Xpos, 'f', 4)); + ui->ed_y->setPlainText(QString::number(Ypos, 'f', 4)); + ui->ed_z->setPlainText(QString::number(Zpos, 'f', 4)); + + //refresh UI speed position data + ui->ed_vx->setPlainText(QString::number(VXpos,'f',4)); + ui->ed_vy->setPlainText(QString::number(VYpos,'f',4)); + ui->ed_vz->setPlainText(QString::number(VZpos,'f',4)); + + //refresh UI attitude data + ui->m_SlugAttitudeRoll_plainTextEdit->setPlainText(QString::number(roll,'f',4)); + ui->m_SlugAttitudePitch_plainTextEdit->setPlainText(QString::number(pitch,'f',4)); + ui->m_SlugAttitudeYaw_plainTextEdit->setPlainText(QString::number(yaw,'f',4)); + + //refresh UI sensor bias acelerometer data + ui->m_SlugsAxBiases_textEdit->setText(QString::number(Axb, 'f', 4)); + ui->m_SlugsAyBiases_textEdit->setText(QString::number(Ayb, 'f', 4)); + ui->m_SlugsAzBiases_textEdit->setText(QString::number(Azb, 'f', 4)); + ui->m_SlugsGxBiases_textEdit->setText(QString::number(Gxb, 'f', 4)); + ui->m_SlugsGyBiases_textEdit->setText(QString::number(Gyb, 'f', 4)); + ui->m_SlugsGzBiases_textEdit->setText(QString::number(Gzb, 'f', 4)); - //refresh UI sensor bias acelerometer data - ui->m_SlugsAxBiases_textEdit->setText(QString::number(Axb, 'f', 4)); - ui->m_SlugsAyBiases_textEdit->setText(QString::number(Ayb, 'f', 4)); - ui->m_SlugsAzBiases_textEdit->setText(QString::number(Azb, 'f', 4)); + } } -void SlugsDataSensorView::slugLocalPositionChanged(UASInterface * uasTemp, double x, double y, double z, quint64 time) +void SlugsDataSensorView::slugLocalPositionChanged(UASInterface * uasTemp, + double x, + double y, + double z, + quint64 time) { Q_UNUSED( uasTemp); @@ -120,7 +132,11 @@ void SlugsDataSensorView::slugLocalPositionChanged(UASInterface * uasTemp, doubl } -void SlugsDataSensorView::slugSpeedLocalPositionChanged(UASInterface *uasTemp, double vx, double vy, double vz, quint64 time) +void SlugsDataSensorView::slugSpeedLocalPositionChanged(UASInterface *uasTemp, + double vx, + double vy, + double vz, + quint64 time) { Q_UNUSED( uasTemp); @@ -130,7 +146,11 @@ void SlugsDataSensorView::slugSpeedLocalPositionChanged(UASInterface *uasTemp, d TimeActualSpeed = time; } -void SlugsDataSensorView::slugAttitudeChanged(UASInterface *uasTemp, double slugroll, double slugpitch, double slugyaw, quint64 time) +void SlugsDataSensorView::slugAttitudeChanged(UASInterface *uasTemp, + double slugroll, + double slugpitch, + double slugyaw, + quint64 time) { Q_UNUSED( uasTemp); @@ -140,14 +160,24 @@ void SlugsDataSensorView::slugAttitudeChanged(UASInterface *uasTemp, double slug TimeActualAttitude = time; } -void SlugsDataSensorView::slugsSensorBiasAcelerometerChanged(UASInterface *uasTemp, double axb, double ayb, double azb, quint64 time) +void SlugsDataSensorView::slugsSensorBiasChanged(UASInterface *uasTemp, + double axb, + double ayb, + double azb, + double gxb, + double gyb, + double gzb, + quint64 time) { Q_UNUSED( uasTemp); Axb = axb; Ayb = ayb; Azb = azb; - TimeActualAcel = time; + Gxb = gxb; + Gyb = gyb; + Gzb = gzb; + TimeActualBias = time; } diff --git a/src/ui/SlugsDataSensorView.h b/src/ui/SlugsDataSensorView.h index df0347c..9b51b95 100644 --- a/src/ui/SlugsDataSensorView.h +++ b/src/ui/SlugsDataSensorView.h @@ -75,10 +75,35 @@ public slots: void refresh(); - void slugLocalPositionChanged(UASInterface* uasTemp,double x,double y,double z,quint64 time); - void slugSpeedLocalPositionChanged(UASInterface* uasTemp,double vx,double vy,double vz,quint64 time); - void slugAttitudeChanged(UASInterface* uasTemp,double slugroll,double slugpitch,double slugyaw, quint64 time); - void slugsSensorBiasAcelerometerChanged(UASInterface* uasTemp, double axb, double ayb, double azb, quint64 time); + + + + void slugLocalPositionChanged(UASInterface* uasTemp, + double x, + double y, + double z, + quint64 time); + + void slugSpeedLocalPositionChanged(UASInterface* uasTemp, + double vx, + double vy, + double vz, + quint64 time); + + void slugAttitudeChanged(UASInterface* uasTemp, + double slugroll, + double slugpitch, + double slugyaw, + quint64 time); + + void slugsSensorBiasChanged(UASInterface* uasTemp, + double axb, + double ayb, + double azb, + double gxb, + double gyb, + double gzb, + quint64 time); protected: QTimer* updateTimer; @@ -106,12 +131,14 @@ protected: double Axb; double Ayb; double Azb; - quint64 TimeActualAcel; + //Gyro double Gxb; double Gyb; double Gzb; - quint64 TimeActualGyro; + quint64 TimeActualBias; + + // diff --git a/src/ui/SlugsDataSensorView.ui b/src/ui/SlugsDataSensorView.ui index 7a22e95..9ecc9a5 100644 --- a/src/ui/SlugsDataSensorView.ui +++ b/src/ui/SlugsDataSensorView.ui @@ -6,8 +6,8 @@ 0 0 - 323 - 610 + 335 + 646 @@ -31,15 +31,471 @@ Form - - - 0 + + + + 0 + 10 + 317 + 628 + - - 0 + + 3 - + + + Position + + + + + 9 + 9 + 293 + 108 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + 10 + 75 + true + + + + Position + + + + + 10 + 26 + 16 + 16 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + 10 + 75 + true + + + + QFrame::NoFrame + + + X + + + + + + 32 + 26 + 65 + 18 + + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + QFrame::WinPanel + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + true + + + + + + 103 + 26 + 16 + 16 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + 10 + 75 + true + + + + Y + + + + + + 126 + 26 + 65 + 18 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + QFrame::WinPanel + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + true + + + + + + 197 + 26 + 16 + 16 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + 10 + 75 + true + + + + QFrame::NoFrame + + + Z + + + + + + 219 + 26 + 64 + 18 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + QFrame::WinPanel + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + true + + + + + + 10 + 65 + 16 + 16 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + 10 + 75 + true + + + + Vx + + + + + + 103 + 65 + 17 + 16 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + 10 + 75 + true + + + + Vy + + + + + + 126 + 65 + 65 + 18 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + QFrame::WinPanel + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + true + + + + + + 197 + 65 + 16 + 16 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + 10 + 75 + true + + + + Vz + + + + + + 219 + 65 + 64 + 18 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + QFrame::WinPanel + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + true + + + + + + 32 + 65 + 65 + 18 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + QFrame::WinPanel + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + true + + + + + + 9 + 123 + 293 + 107 + + 0 @@ -48,15 +504,15 @@ - 311 - 61 + 16777215 + 16777215 10 - 50 - false + 75 + true @@ -225,56 +681,40 @@ - - - + + + + 9 + 236 + 293 + 108 + + - 311 - 171 + 0 + 0 - 311 - 171 + 16777215 + 16777215 + + + 10 + 75 + true + + - PWM Commands + Navigation - - - 6 - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - - 10 - 75 - true - - - - Thro - - - - - + + + 0 @@ -301,8 +741,8 @@ - - + + 0 @@ -315,22 +755,20 @@ 16777215 - - QFrame::WinPanel - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff + + + 10 + 75 + true + - - true + + Pitch C - - + + 0 @@ -357,8 +795,8 @@ - - + + 0 @@ -371,22 +809,20 @@ 16777215 - - QFrame::WinPanel - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff + + + 10 + 75 + true + - - true + + Psi_d C - - + + 0 @@ -413,8 +849,8 @@ - - + + 0 @@ -435,12 +871,12 @@ - Aile + Phi C - - + + 0 @@ -453,20 +889,22 @@ 16777215 - - - 10 - 75 - true - + + QFrame::WinPanel - - Elev + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + true - - + + 0 @@ -487,12 +925,12 @@ - Rudd + Ay body - - + + 0 @@ -505,20 +943,22 @@ 16777215 - - - 10 - 75 - true - + + QFrame::WinPanel - - FailSafe + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + true - + 0 @@ -539,12 +979,12 @@ - Thro Trim + From WP - + 0 @@ -572,7 +1012,7 @@ - + 0 @@ -593,12 +1033,12 @@ - Aile Trim + To WP - + 0 @@ -625,8 +1065,8 @@ - - + + 0 @@ -647,12 +1087,12 @@ - Elev Trim + Tot Run - - + + 0 @@ -679,8 +1119,8 @@ - - + + 0 @@ -701,12 +1141,12 @@ - Rudd Trim + Dist to G - - + + 0 @@ -733,543 +1173,8 @@ - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - - 10 - 75 - true - - - - Available - - - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - QFrame::WinPanel - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - true - - - - - - - - - - - 311 - 171 - - - - - 311 - 171 - - - - Navigation - - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - QFrame::WinPanel - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - true - - - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - - 10 - 75 - true - - - - Pitch C - - - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - QFrame::WinPanel - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - true - - - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - - 10 - 75 - true - - - - Psi_d C - - - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - QFrame::WinPanel - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - true - - - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - - 10 - 75 - true - - - - Phi C - - - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - QFrame::WinPanel - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - true - - - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - - 10 - 75 - true - - - - Ay body - - - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - QFrame::WinPanel - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - true - - - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - - 10 - 75 - true - - - - From WP - - - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - QFrame::WinPanel - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - true - - - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - - 10 - 75 - true - - - - To WP - - - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - QFrame::WinPanel - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - true - - - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - - 10 - 75 - true - - - - Tot Run - - - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - QFrame::WinPanel - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - true - - - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - - 10 - 75 - true - - - - Dist to G - - - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - QFrame::WinPanel - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - true - - - - - + + 0 @@ -1296,378 +1201,476 @@ - - - - - - 311 - 111 - + + + + 9 + 350 + 293 + 107 + - - - 311 - 111 - + + + 10 + 75 + true + - Sensor Biases + Diagnostic Messages - + - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - - 10 - 75 - true - - + - Axb + Fl1 - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - QFrame::WinPanel - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff + + + + Fl2 - - true + + + + + + Fl3 - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - - 10 - 75 - true - - + - Gxb + Sh1 - - - - - 0 - 0 - - - - - 16777215 - 16777215 - + + + + Sh2 - - QFrame::WinPanel + + + + + + Sh3 + + + + Qt::ScrollBarAlwaysOff Qt::ScrollBarAlwaysOff - - true - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - - 10 - 75 - true - + + + + Qt::ScrollBarAlwaysOff - - Ayb + + Qt::ScrollBarAlwaysOff - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - QFrame::WinPanel - + + Qt::ScrollBarAlwaysOff Qt::ScrollBarAlwaysOff - - true - - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - - 10 - 75 - true - + + + + Qt::ScrollBarAlwaysOff - - Gyb + + Qt::ScrollBarAlwaysOff - - - - 0 - 0 - - - - - 16777215 - 16777215 - + + + Qt::ScrollBarAlwaysOff - - QFrame::WinPanel + + Qt::ScrollBarAlwaysOff + + + + Qt::ScrollBarAlwaysOff Qt::ScrollBarAlwaysOff - - true + + + + + + + + 9 + 463 + 293 + 107 + + + + + 10 + 75 + true + + + + Log Messages + + + + + + Fl1 - - - - - 0 - 0 - + + + + Fl2 - - - 16777215 - 16777215 - + + + + + + Fl3 - - - 10 - 75 - true - + + + + + + Fl4 + + + + - Azb + Fl5 - - - - - 0 - 0 - + + + + Fl6 - - - 16777215 - 16777215 - + + + + + + Qt::ScrollBarAlwaysOff - - QFrame::WinPanel + + Qt::ScrollBarAlwaysOff + + + + Qt::ScrollBarAlwaysOff Qt::ScrollBarAlwaysOff - - true - - - - - - 0 - 0 - + + + + Qt::ScrollBarAlwaysOff - - - 16777215 - 16777215 - + + Qt::ScrollBarAlwaysOff - - - 10 - 75 - true - + + + + + + Qt::ScrollBarAlwaysOff - - Gzb + + Qt::ScrollBarAlwaysOff - - - - - 0 - 0 - - - - - 16777215 - 16777215 - + + + + Qt::ScrollBarAlwaysOff - - QFrame::WinPanel + + Qt::ScrollBarAlwaysOff + + + + Qt::ScrollBarAlwaysOff Qt::ScrollBarAlwaysOff - - true + + + + + + + + Navigation + + + + + 0 + 40 + 301 + 121 + + + + GPS Data + + + + + + Time + + + + + + + Date + + + + + + + Longitude + + + + + + + Latitude + + + - - - + + + + Page + + + + + 62 + 99 + 133 + 20 + + + + + + + 201 + 99 + 46 + 16 + + + + TextLabel + + + + + + 253 + 99 + 133 + 20 + + + + + + + 10 + 99 + 46 + 16 + + + + TextLabel + + + + + + 13 + 12 + 46 + 16 + + - 0 + 46 + 0 + + + + TextLabel + + + + + + 65 + 12 + 80 + 19 + + + + + 0 + 0 + + + + + 80 0 + 100 + 19 + + + + + + + 150 + 10 + 46 + 16 + + + + + 46 + 0 + + + + TextLabel + + + + + + 200 + 10 + 133 + 20 + + + + + 0 + 0 + + + + + 133 + 0 + + + + + + + Sensor Biases + + + + + 9 + 237 + 311 + 111 + + + + 311 - 91 + 111 - - - 50 - false - + + + 311 + 111 + - Position + Sensor Biases - + - + 0 @@ -1687,16 +1690,13 @@ true - - QFrame::NoFrame - - X + Axb - + 0 @@ -1724,7 +1724,7 @@ - + 0 @@ -1745,12 +1745,12 @@ - Y + Gxb - + 0 @@ -1777,8 +1777,8 @@ - - + + 0 @@ -1798,16 +1798,13 @@ true - - QFrame::NoFrame - - Z + Ayb - - + + 0 @@ -1834,33 +1831,8 @@ - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - - 75 - true - - - - Vx - - - - + 0 @@ -1875,17 +1847,18 @@ + 10 75 true - Vy + Gyb - + 0 @@ -1912,8 +1885,8 @@ - - + + 0 @@ -1928,17 +1901,18 @@ + 10 75 true - Vz + Azb - - + + 0 @@ -1965,8 +1939,34 @@ - - + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + 10 + 75 + true + + + + Gzb + + + + + 0 @@ -1995,8 +1995,591 @@ - - + sensorBiases_groupBox + lineEdit + label_51 + lineEdit + lineEdit_2 + lineEdit_3 + lineEdit_4 + label_51 + label_52 + label_53 + label_54 + lineEdit + + + + PWM Command + + + + + + + 311 + 171 + + + + + 311 + 171 + + + + PWM Commands + + + + 6 + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + 10 + 75 + true + + + + Thro + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + QFrame::WinPanel + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + true + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + QFrame::WinPanel + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + true + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + QFrame::WinPanel + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + true + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + QFrame::WinPanel + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + true + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + QFrame::WinPanel + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + true + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + 10 + 75 + true + + + + Aile + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + 10 + 75 + true + + + + Elev + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + 10 + 75 + true + + + + Rudd + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + 10 + 75 + true + + + + FailSafe + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + 10 + 75 + true + + + + Thro Trim + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + QFrame::WinPanel + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + true + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + 10 + 75 + true + + + + Aile Trim + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + QFrame::WinPanel + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + true + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + 10 + 75 + true + + + + Elev Trim + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + QFrame::WinPanel + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + true + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + 10 + 75 + true + + + + Rudd Trim + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + QFrame::WinPanel + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + true + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + 10 + 75 + true + + + + Available + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + QFrame::WinPanel + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + true + + + + + + + + +