添加舵机校准
This commit is contained in:
@@ -247,7 +247,7 @@ void StatusUI::setState(uint32_t pos, QVariant value1, QVariant value2)
|
||||
case 7:
|
||||
ui->label_1_cas->setText(value1.toString());
|
||||
|
||||
if(value1.toFloat() <= 90)
|
||||
if(value1.toFloat() <= 22)
|
||||
{
|
||||
setColor(ui->label_1_cas,state::failure);
|
||||
}
|
||||
@@ -260,7 +260,7 @@ void StatusUI::setState(uint32_t pos, QVariant value1, QVariant value2)
|
||||
ui->label_1_tas->setText(value1.toString());
|
||||
//ui->label_2_tas->setText(value2.toString());
|
||||
|
||||
if(value1.toFloat() <= 100)
|
||||
if(value1.toFloat() <= 22)
|
||||
{
|
||||
setColor(ui->label_1_tas,state::failure);
|
||||
}
|
||||
@@ -273,7 +273,7 @@ void StatusUI::setState(uint32_t pos, QVariant value1, QVariant value2)
|
||||
case 9:
|
||||
ui->label_1_gs->setText(value1.toString());
|
||||
|
||||
if(value1.toFloat() <= 100)
|
||||
if(value1.toFloat() <= 22)
|
||||
{
|
||||
setColor(ui->label_1_gs,state::failure);
|
||||
}
|
||||
@@ -290,7 +290,7 @@ void StatusUI::setState(uint32_t pos, QVariant value1, QVariant value2)
|
||||
case 11:
|
||||
ui->label_1_rate->setText(value1.toString());
|
||||
|
||||
if(value1.toFloat() <= -50)
|
||||
if(value1.toFloat() <= -10)
|
||||
{
|
||||
setColor(ui->label_1_rate,state::failure);
|
||||
}
|
||||
@@ -436,11 +436,11 @@ void StatusUI::setBattery(uint32_t pos,QVariant value1,QVariant value2)
|
||||
case 1:
|
||||
ui->label_28_V->setText(value1.toString());
|
||||
|
||||
if(qAbs(value1.toFloat()) <= 23)
|
||||
if(qAbs(value1.toFloat()) <= 10.5)
|
||||
{
|
||||
setColor(ui->label_28_V,state::failure);
|
||||
}
|
||||
else if(qAbs(value1.toFloat()) <= 25)
|
||||
else if(qAbs(value1.toFloat()) <= 11.4)
|
||||
{
|
||||
setColor(ui->label_28_V,state::warning);
|
||||
}
|
||||
@@ -462,11 +462,11 @@ void StatusUI::setBattery(uint32_t pos,QVariant value1,QVariant value2)
|
||||
case 2:
|
||||
ui->label_56_V->setText(value1.toString());
|
||||
|
||||
if(qAbs(value1.toFloat()) <= 46)
|
||||
if(qAbs(value1.toFloat()) <= 10.5)
|
||||
{
|
||||
setColor(ui->label_56_V,state::failure);
|
||||
}
|
||||
else if(qAbs(value1.toFloat()) <= 50)
|
||||
else if(qAbs(value1.toFloat()) <= 11.4)
|
||||
{
|
||||
setColor(ui->label_56_V,state::warning);
|
||||
}
|
||||
@@ -511,7 +511,7 @@ void StatusUI::setDlink(uint32_t pos,QVariant value1,QVariant value2)
|
||||
|
||||
ui->label_ssr->setText(value2.toString());
|
||||
|
||||
if(qAbs(value2.toFloat()) <= 500)
|
||||
if(qAbs(value2.toFloat()) <= 200)
|
||||
{
|
||||
setColor(ui->label_ssr,state::failure);
|
||||
}
|
||||
|
||||
@@ -23,6 +23,10 @@ Tools_Index2::Tools_Index2(QWidget *parent) :
|
||||
ui->pushButton_Play->setFixedSize(150,50);
|
||||
ui->pushButton_LastFrame->setFixedSize(150,50);
|
||||
ui->pushButton_NextFrame->setFixedSize(150,50);
|
||||
ui->pushButton_setPercent->setFixedSize(150,50);
|
||||
ui->doubleSpinBox_setPercent->setFixedSize(150,50);
|
||||
ui->comboBox_MultiSpeed->setFixedSize(150,50);
|
||||
ui->label_percent->setFixedSize(150,50);
|
||||
|
||||
|
||||
ui->comboBox_MultiSpeed->addItem("X1",1000);
|
||||
|
||||
+24
-36
@@ -58,6 +58,16 @@ double findAngle(int pwm,QMap<double,double> table)
|
||||
}
|
||||
|
||||
|
||||
double pwm2angle(uint16_t pwm,uint16_t pwm_min,uint16_t pwm_max,double angle_min,double angle_max)
|
||||
{
|
||||
double angle = 0;
|
||||
|
||||
angle = ((double)(pwm - pwm_min))/(pwm_max - pwm_min) * (angle_max - angle_min) + angle_min;
|
||||
|
||||
return angle;
|
||||
}
|
||||
|
||||
|
||||
MainWindow::MainWindow(QWidget *parent)
|
||||
: QMainWindow(parent)
|
||||
{
|
||||
@@ -967,17 +977,17 @@ void MainWindow::update_servo_output_raw(mavlink_servo_output_raw_t servo)
|
||||
|
||||
if(servo.port == 0)
|
||||
{
|
||||
statusui->setServo(1,QString::number((((float)servo.servo12_raw - 2032.0)/(1216.0 - 2032.0) * ( 0.351700000 + 0.523560209) - 0.523560209) * 57.3,'f',2),0);//左副
|
||||
statusui->setServo(2,QString::number((((float)servo.servo7_raw - 1145.0)/(1764.0 - 1145.0) * ( 0.349040140 + 0.523560209) - 0.523560209) * 57.3,'f',2),0);//右副
|
||||
statusui->setServo(3,QString::number((((float)servo.servo13_raw - 1925.0)/(1154.0 - 1925.0) * ( 0.436300175 + 0.523560209) - 0.523560209) * 57.3,'f',2),0);//升降
|
||||
statusui->setServo(4,QString::number((((float)servo.servo9_raw - 1048.0)/(2000.0 - 1048.0) * ( 0.034904014 + 0.253054101) - 0.253054101) * 57.3,'f',2),0);//平尾
|
||||
statusui->setServo(5,QString::number((((float)servo.servo1_raw - 1828.0)/(1179.0 - 1828.0) * ( 0.610820244 + 0.610820244) - 0.610820244) * 57.3,'f',2),0);//方向
|
||||
statusui->setServo(1,QString::number(pwm2angle(servo.servo12_raw,1000,2000,30,-30),'f',2),0);//左副
|
||||
statusui->setServo(2,QString::number(pwm2angle(servo.servo7_raw,1000,2000,30,-30),'f',2),0);//右副
|
||||
statusui->setServo(3,QString::number(pwm2angle(servo.servo13_raw ,1000,2000,30,-30),'f',2),0);//升降
|
||||
statusui->setServo(4,QString::number(pwm2angle(servo.servo9_raw,1000,2000,30,-30),'f',2),0);//平尾
|
||||
statusui->setServo(5,QString::number(pwm2angle(servo.servo1_raw,1000,2000,30,-30),'f',2),0);//方向
|
||||
|
||||
toolsui->diagram->setServo(1,QString::number((((float)servo.servo12_raw - 2032.0)/(1216.0 - 2032.0) * ( 0.351700000 + 0.523560209) - 0.523560209) * 57.3,'f',2),0);//左副
|
||||
toolsui->diagram->setServo(2,QString::number((((float)servo.servo7_raw - 1145.0)/(1764.0 - 1145.0) * ( 0.349040140 + 0.523560209) - 0.523560209) * 57.3,'f',2),0);//右副
|
||||
toolsui->diagram->setServo(3,QString::number((((float)servo.servo13_raw - 1925.0)/(1154.0 - 1925.0) * ( 0.436300175 + 0.523560209) - 0.523560209) * 57.3,'f',2),0);//升降
|
||||
toolsui->diagram->setServo(4,QString::number((((float)servo.servo9_raw - 1048.0)/(2000.0 - 1048.0) * ( 0.034904014 + 0.253054101) - 0.253054101) * 57.3,'f',2),0);//平尾
|
||||
toolsui->diagram->setServo(5,QString::number((((float)servo.servo1_raw - 1828.0)/(1179.0 - 1828.0) * ( 0.610820244 + 0.610820244) - 0.610820244) * 57.3,'f',2),0);//方向
|
||||
toolsui->diagram->setServo(1,QString::number(pwm2angle(servo.servo12_raw,1000,2000,30,-30),'f',2),0);//左副
|
||||
toolsui->diagram->setServo(2,QString::number(pwm2angle(servo.servo7_raw,1000,2000,30,-30),'f',2),0);//右副
|
||||
toolsui->diagram->setServo(3,QString::number(pwm2angle(servo.servo13_raw,1000,2000,30,-30),'f',2),0);//升降
|
||||
toolsui->diagram->setServo(4,QString::number(pwm2angle(servo.servo9_raw,1000,2000,30,-30),'f',2),0);//平尾
|
||||
toolsui->diagram->setServo(5,QString::number(pwm2angle(servo.servo1_raw,1000,2000,30,-30),'f',2),0);//方向
|
||||
|
||||
}
|
||||
|
||||
@@ -1077,28 +1087,6 @@ void MainWindow::updateUI()//事件驱动式更新数据
|
||||
QString gps_str;
|
||||
gps_str.clear();
|
||||
|
||||
switch (dlink->mavlinknode->vehicle.gps_raw_int.fix_type) {
|
||||
case 1:
|
||||
gps_str.append(tr("未定位"));
|
||||
break;
|
||||
case 2:
|
||||
case 3:
|
||||
gps_str.append(tr("%1D[%2颗]").arg(dlink->mavlinknode->vehicle.gps_raw_int.fix_type).arg(dlink->mavlinknode->vehicle.gps_raw_int.satellites_visible));
|
||||
break;
|
||||
case 4:
|
||||
gps_str.append(tr("fix[%1颗]").arg(dlink->mavlinknode->vehicle.gps_raw_int.satellites_visible));
|
||||
break;
|
||||
case 5:
|
||||
gps_str.append(tr("float[%1颗]").arg(dlink->mavlinknode->vehicle.gps_raw_int.satellites_visible));
|
||||
break;
|
||||
case 6:
|
||||
gps_str.append(tr("float[%1颗]").arg(dlink->mavlinknode->vehicle.gps_raw_int.satellites_visible));
|
||||
break;
|
||||
default:
|
||||
gps_str.append(tr("%1[%2颗]").arg(dlink->mavlinknode->vehicle.gps_raw_int.fix_type).arg(dlink->mavlinknode->vehicle.gps_raw_int.satellites_visible));
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
switch (dlink->mavlinknode->vehicle.gps_raw_int.fix_type) {
|
||||
case 0:
|
||||
@@ -1109,16 +1097,16 @@ void MainWindow::updateUI()//事件驱动式更新数据
|
||||
break;
|
||||
case 2:
|
||||
case 3:
|
||||
gps_str.append(tr("%1D[%2颗]").arg(dlink->mavlinknode->vehicle.gps_raw_int.fix_type).arg(dlink->mavlinknode->vehicle.gps_raw_int.satellites_visible));
|
||||
gps_str.append(tr("%1D[%2]").arg(dlink->mavlinknode->vehicle.gps_raw_int.fix_type).arg(dlink->mavlinknode->vehicle.gps_raw_int.satellites_visible));
|
||||
break;
|
||||
case 4:
|
||||
gps_str.append(tr("DGPS"));
|
||||
gps_str.append(tr("DGPS[%1]").arg(dlink->mavlinknode->vehicle.gps_raw_int.satellites_visible));
|
||||
break;
|
||||
case 5:
|
||||
gps_str.append(tr("FLOAT"));
|
||||
gps_str.append(tr("FLOAT[%1]").arg(dlink->mavlinknode->vehicle.gps_raw_int.satellites_visible));
|
||||
break;
|
||||
case 6:
|
||||
gps_str.append(tr("INT"));
|
||||
gps_str.append(tr("INT[%1]").arg(dlink->mavlinknode->vehicle.gps_raw_int.satellites_visible));
|
||||
break;
|
||||
default:
|
||||
gps_str.append(tr("%1").arg(dlink->mavlinknode->vehicle.gps_raw_int.fix_type));
|
||||
|
||||
Reference in New Issue
Block a user