mirror of
https://bitbucket.org/librepilot/librepilot.git
synced 2025-03-01 18:29:16 +01:00
Refactor name of legacy servos, remove PID hard coding from the config
helper
This commit is contained in:
parent
00ed28c983
commit
137a6e4308
@ -47,7 +47,7 @@ bool OutputPageFixedwing::validatePage()
|
|||||||
if (ui->ServoTypeButton->isChecked()) {
|
if (ui->ServoTypeButton->isChecked()) {
|
||||||
getWizard()->setActuatorType(SetupWizard::SERVO_DIGITAL);
|
getWizard()->setActuatorType(SetupWizard::SERVO_DIGITAL);
|
||||||
} else {
|
} else {
|
||||||
getWizard()->setActuatorType(SetupWizard::SERVO_LEGACY);
|
getWizard()->setActuatorType(SetupWizard::SERVO_ANALOG);
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
@ -314,7 +314,7 @@ QString SetupWizard::getSummaryText()
|
|||||||
case ESC_RAPID:
|
case ESC_RAPID:
|
||||||
summary.append(tr("Rapid ESC (400 Hz)"));
|
summary.append(tr("Rapid ESC (400 Hz)"));
|
||||||
break;
|
break;
|
||||||
case SERVO_LEGACY:
|
case SERVO_ANALOG:
|
||||||
summary.append(tr("Analog Servos (50 Hz)"));
|
summary.append(tr("Analog Servos (50 Hz)"));
|
||||||
break;
|
break;
|
||||||
case SERVO_DIGITAL:
|
case SERVO_DIGITAL:
|
||||||
|
@ -42,7 +42,7 @@
|
|||||||
|
|
||||||
const qint16 VehicleConfigurationHelper::LEGACY_ESC_FREQUENCE = 50;
|
const qint16 VehicleConfigurationHelper::LEGACY_ESC_FREQUENCE = 50;
|
||||||
const qint16 VehicleConfigurationHelper::RAPID_ESC_FREQUENCE = 400;
|
const qint16 VehicleConfigurationHelper::RAPID_ESC_FREQUENCE = 400;
|
||||||
const qint16 VehicleConfigurationHelper::LEGACY_SERVO_FREQUENCE = 50;
|
const qint16 VehicleConfigurationHelper::ANALOG_SERVO_FREQUENCE = 50;
|
||||||
const qint16 VehicleConfigurationHelper::DIGITAL_SERVO_FREQUENCE = 333;
|
const qint16 VehicleConfigurationHelper::DIGITAL_SERVO_FREQUENCE = 333;
|
||||||
|
|
||||||
VehicleConfigurationHelper::VehicleConfigurationHelper(VehicleConfigurationSource *configSource)
|
VehicleConfigurationHelper::VehicleConfigurationHelper(VehicleConfigurationSource *configSource)
|
||||||
@ -336,13 +336,13 @@ void VehicleConfigurationHelper::applyActuatorConfiguration()
|
|||||||
}
|
}
|
||||||
|
|
||||||
for (quint16 i = 0; i < ActuatorSettings::CHANNELUPDATEFREQ_NUMELEM; i++) {
|
for (quint16 i = 0; i < ActuatorSettings::CHANNELUPDATEFREQ_NUMELEM; i++) {
|
||||||
data.ChannelUpdateFreq[i] = LEGACY_SERVO_FREQUENCE;
|
data.ChannelUpdateFreq[i] = ANALOG_SERVO_FREQUENCE;
|
||||||
}
|
}
|
||||||
|
|
||||||
qint16 updateFrequence = LEGACY_SERVO_FREQUENCE;
|
qint16 updateFrequence = ANALOG_SERVO_FREQUENCE;
|
||||||
switch (m_configSource->getActuatorType()) {
|
switch (m_configSource->getActuatorType()) {
|
||||||
case VehicleConfigurationSource::SERVO_LEGACY:
|
case VehicleConfigurationSource::SERVO_ANALOG:
|
||||||
updateFrequence = LEGACY_SERVO_FREQUENCE;
|
updateFrequence = ANALOG_SERVO_FREQUENCE;
|
||||||
break;
|
break;
|
||||||
case VehicleConfigurationSource::SERVO_DIGITAL:
|
case VehicleConfigurationSource::SERVO_DIGITAL:
|
||||||
updateFrequence = DIGITAL_SERVO_FREQUENCE;
|
updateFrequence = DIGITAL_SERVO_FREQUENCE;
|
||||||
@ -354,50 +354,6 @@ void VehicleConfigurationHelper::applyActuatorConfiguration()
|
|||||||
actSettings->setData(data);
|
actSettings->setData(data);
|
||||||
addModifiedObject(actSettings, tr("Writing actuator settings"));
|
addModifiedObject(actSettings, tr("Writing actuator settings"));
|
||||||
|
|
||||||
// I think I need to add a saved stabilizationsettings object also.
|
|
||||||
// unfortunately not sure this is the right way to do it!
|
|
||||||
|
|
||||||
qDebug() << "Saving Fixed Wing Default PID Data\n";
|
|
||||||
|
|
||||||
/*
|
|
||||||
qDebug() << "Save Fixed Wing StabilizationBank object\n";
|
|
||||||
StabilizationBank *stabilizationBank = StabilizationBank::GetInstance(m_uavoManager);
|
|
||||||
StabilizationBank::DataFields stabBank = stabilizationBank->getData();
|
|
||||||
Values pulled from ./build/uavobject-synthetics/gcs/stabilizationbank.h
|
|
||||||
stabBank.PitchPI[StabilizationBank::PITCHPI_ILIMIT] = 1.123;
|
|
||||||
stabilizationBank->setData(stabBank);
|
|
||||||
addModifiedObject(stabilizationBank, tr("Writing stabilization bank"));
|
|
||||||
*/
|
|
||||||
|
|
||||||
qDebug() << "Save Fixed Wing StabilizationSettingsBank1 object\n";
|
|
||||||
|
|
||||||
// Values pulled from ./build/uavobject-synthetics/gcs/stabilizationsettingsbank1.h
|
|
||||||
StabilizationSettingsBank1 *stabilizationSettingsBank = StabilizationSettingsBank1::GetInstance(m_uavoManager);
|
|
||||||
StabilizationSettingsBank1::DataFields stabSettingsBank = stabilizationSettingsBank->getData();
|
|
||||||
stabSettingsBank.RollRatePID[StabilizationSettingsBank1::ROLLRATEPID_KP] = 2.420;
|
|
||||||
stabSettingsBank.RollRatePID[StabilizationSettingsBank1::ROLLRATEPID_KI] = 2.420;
|
|
||||||
stabSettingsBank.RollPI[StabilizationSettingsBank1::ROLLPI_KP] = 2.420;
|
|
||||||
stabSettingsBank.RollPI[StabilizationSettingsBank1::ROLLPI_KI] = 2.420;
|
|
||||||
|
|
||||||
stabSettingsBank.PitchRatePID[StabilizationSettingsBank1::PITCHRATEPID_KP] = 2.420;
|
|
||||||
stabSettingsBank.PitchRatePID[StabilizationSettingsBank1::PITCHRATEPID_KI] = 2.420;
|
|
||||||
stabSettingsBank.PitchPI[StabilizationSettingsBank1::PITCHPI_KP] = 2.420;
|
|
||||||
stabSettingsBank.PitchPI[StabilizationSettingsBank1::PITCHPI_KI] = 2.420;
|
|
||||||
|
|
||||||
stabSettingsBank.YawRatePID[StabilizationSettingsBank1::YAWRATEPID_KP] = 2.420;
|
|
||||||
stabSettingsBank.YawRatePID[StabilizationSettingsBank1::YAWRATEPID_KI] = 2.420;
|
|
||||||
stabSettingsBank.YawPI[StabilizationSettingsBank1::YAWPI_KP] = 2.420;
|
|
||||||
stabSettingsBank.YawPI[StabilizationSettingsBank1::YAWPI_KI] = 2.420;
|
|
||||||
|
|
||||||
|
|
||||||
// need to set max servo throw via iLimit here per my notes in http://forums.openpilot.org/topic/32356-gonna-give-revo-a-run-on-my-bixler-v1-any-suggestions/#entry252556
|
|
||||||
stabSettingsBank.PitchPI[StabilizationSettingsBank1::PITCHPI_ILIMIT] = 1.420;
|
|
||||||
stabSettingsBank.RollPI[StabilizationSettingsBank1::ROLLPI_ILIMIT] = 1.420;
|
|
||||||
stabSettingsBank.YawPI[StabilizationSettingsBank1::YAWPI_ILIMIT] = 1.420;
|
|
||||||
|
|
||||||
stabilizationSettingsBank->setData(stabSettingsBank);
|
|
||||||
addModifiedObject(stabilizationSettingsBank, tr("Writing stabilization bank 1 settings"));
|
|
||||||
|
|
||||||
// Set up model view image here?
|
// Set up model view image here?
|
||||||
// loop through all the window instances and check which are of the type ModelViewGadget.
|
// loop through all the window instances and check which are of the type ModelViewGadget.
|
||||||
// per m_thread on each instance setAcFileName(QString model_file_name) and then call reloadScene() on the same object.
|
// per m_thread on each instance setAcFileName(QString model_file_name) and then call reloadScene() on the same object.
|
||||||
|
@ -59,7 +59,7 @@ public:
|
|||||||
bool setupHardwareSettings(bool save = true);
|
bool setupHardwareSettings(bool save = true);
|
||||||
static const qint16 LEGACY_ESC_FREQUENCE;
|
static const qint16 LEGACY_ESC_FREQUENCE;
|
||||||
static const qint16 RAPID_ESC_FREQUENCE;
|
static const qint16 RAPID_ESC_FREQUENCE;
|
||||||
static const qint16 LEGACY_SERVO_FREQUENCE;
|
static const qint16 ANALOG_SERVO_FREQUENCE;
|
||||||
static const qint16 DIGITAL_SERVO_FREQUENCE;
|
static const qint16 DIGITAL_SERVO_FREQUENCE;
|
||||||
|
|
||||||
|
|
||||||
|
@ -61,7 +61,7 @@ public:
|
|||||||
MULTI_ROTOR_HEXA, MULTI_ROTOR_HEXA_H, MULTI_ROTOR_HEXA_X, MULTI_ROTOR_HEXA_COAX_Y, MULTI_ROTOR_OCTO,
|
MULTI_ROTOR_HEXA, MULTI_ROTOR_HEXA_H, MULTI_ROTOR_HEXA_X, MULTI_ROTOR_HEXA_COAX_Y, MULTI_ROTOR_OCTO,
|
||||||
MULTI_ROTOR_OCTO_X, MULTI_ROTOR_OCTO_V, MULTI_ROTOR_OCTO_COAX_X, MULTI_ROTOR_OCTO_COAX_PLUS,
|
MULTI_ROTOR_OCTO_X, MULTI_ROTOR_OCTO_V, MULTI_ROTOR_OCTO_COAX_X, MULTI_ROTOR_OCTO_COAX_PLUS,
|
||||||
FIXED_WING_AILERON, FIXED_WING_VTAIL, FIXED_WING_ELEVON, HELI_CCPM };
|
FIXED_WING_AILERON, FIXED_WING_VTAIL, FIXED_WING_ELEVON, HELI_CCPM };
|
||||||
enum ACTUATOR_TYPE { ESC_RAPID, ESC_LEGACY, SERVO_LEGACY, SERVO_DIGITAL, ESC_UNKNOWN };
|
enum ACTUATOR_TYPE { ESC_RAPID, ESC_LEGACY, SERVO_ANALOG, SERVO_DIGITAL, ESC_UNKNOWN };
|
||||||
enum INPUT_TYPE { INPUT_PWM, INPUT_PPM, INPUT_SBUS, INPUT_DSMX10, INPUT_DSMX11, INPUT_DSM2, INPUT_UNKNOWN };
|
enum INPUT_TYPE { INPUT_PWM, INPUT_PPM, INPUT_SBUS, INPUT_DSMX10, INPUT_DSMX11, INPUT_DSM2, INPUT_UNKNOWN };
|
||||||
|
|
||||||
enum GPS_SETTING { GPS_UBX, GPS_NMEA, GPS_DISABLED };
|
enum GPS_SETTING { GPS_UBX, GPS_NMEA, GPS_DISABLED };
|
||||||
|
Loading…
x
Reference in New Issue
Block a user