9 _deviceIds = QStringList({QStringLiteral(
"CAL_GYRO0_ID"), QStringLiteral(
"CAL_ACC0_ID") });
12 _airspeedCalTriggerParams <<
"SENS_DPRES_OFF";
14 _airspeedCalTriggerParams <<
"SYS_HAS_NUM_ASPD";
16 _airspeedCalTriggerParams <<
"FW_ARSP_MODE" <<
"CBRK_AIRSPD_CHK";
28 return tr(
"Configure and calibrate gyroscope, accelerometer, magnetometer, and airspeed sensors.");
33 return "/qmlimages/SensorsComponentIcon.png";
43 for (
const QString &triggerParam : std::as_const(_deviceIds)) {
48 bool magEnabled =
true;
79 triggers << _deviceIds << _magCalParam << _magEnabledParam;
81 triggers << _airspeedCalTriggerParams;
89 return QUrl::fromUserInput(
"qrc:/qml/QGroundControl/AutoPilotPlugins/PX4/SensorsComponent.qml");
94 QStringList sectionList;
97 bool allMagsDisabled =
false;
101 if (!allMagsDisabled) {
102 sectionList << QStringLiteral(
"Compass");
105 sectionList << QStringLiteral(
"Gyroscope");
106 sectionList << QStringLiteral(
"Accelerometer");
107 sectionList << QStringLiteral(
"Level Horizon");
109 if (_airspeedCalSupported()) {
110 sectionList << QStringLiteral(
"Airspeed");
113 sectionList << QStringLiteral(
"Orientations");
120 if (sectionId == QStringLiteral(
"Compass")) {
121 return tr(
"Compass");
123 if (sectionId == QStringLiteral(
"Gyroscope")) {
124 return tr(
"Gyroscope");
126 if (sectionId == QStringLiteral(
"Accelerometer")) {
127 return tr(
"Accelerometer");
129 if (sectionId == QStringLiteral(
"Level Horizon")) {
130 return tr(
"Level Horizon");
132 if (sectionId == QStringLiteral(
"Airspeed")) {
133 return tr(
"Airspeed");
135 if (sectionId == QStringLiteral(
"Orientations")) {
136 return tr(
"Orientations");
146 summaryQml =
"qrc:/qml/QGroundControl/AutoPilotPlugins/PX4/SensorsComponentSummaryFixedWing.qml";
148 summaryQml =
"qrc:/qml/QGroundControl/AutoPilotPlugins/PX4/SensorsComponentSummary.qml";
151 return QUrl::fromUserInput(summaryQml);
154 bool SensorsComponent::_airspeedCalSupported(
void)
const
172 bool SensorsComponent::_airspeedCalRequired(
void)
const
181 if (sectionId == QStringLiteral(
"Compass")) {
182 bool magEnabled =
true;
186 if (!magEnabled)
return true;
189 if (sectionId == QStringLiteral(
"Gyroscope")) {
192 if (sectionId == QStringLiteral(
"Accelerometer")) {
195 if (sectionId == QStringLiteral(
"Level Horizon")) {
200 if (sectionId == QStringLiteral(
"Airspeed")) {
201 return !_airspeedCalRequired();
The AutoPilotPlugin class is an abstract base class which represents the methods and objects which ar...
QVariant rawValue() const
bool parameterExists(int componentId, const QString ¶mName) const
Fact * getParameter(int componentId, const QString ¶mName)
static constexpr int defaultComponentId
virtual bool requiresSetup(void) const override
bool sectionSetupComplete(const QString §ionId) const override
Returns setup-complete status for a section ID. Default returns true (no per-section tracking).
virtual QUrl setupSource(void) const override
virtual QString iconResource(void) const override
QStringList sectionIds() const override
QStringList setupCompleteChangedTriggerList(void) const override
virtual bool setupComplete(void) const override
virtual QString name(void) const override
virtual QUrl summaryQmlSource(void) const override
QString sectionDisplayName(const QString §ionId) const override
SensorsComponent(Vehicle *vehicle, AutoPilotPlugin *autopilot, QObject *parent=nullptr)
virtual QString description(void) const override
A vehicle component is an object which abstracts the physical portion of a vehicle into a set of conf...
int firmwareMinorVersion() const
ParameterManager * parameterManager()
int firmwareMajorVersion() const