From a1ab4e897f71fb3c8c2c57e4bd047b6cc74282b3 Mon Sep 17 00:00:00 2001 From: DonLakeFlyer Date: Fri, 6 Apr 2018 09:52:27 -0700 Subject: [PATCH] PID tuning fixes --- src/AutoPilotPlugins/PX4/PX4TuningComponentCopter.qml | 10 +++++++--- src/Vehicle/Vehicle.cc | 6 +++--- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/AutoPilotPlugins/PX4/PX4TuningComponentCopter.qml b/src/AutoPilotPlugins/PX4/PX4TuningComponentCopter.qml index 695abb303..d3d878228 100644 --- a/src/AutoPilotPlugins/PX4/PX4TuningComponentCopter.qml +++ b/src/AutoPilotPlugins/PX4/PX4TuningComponentCopter.qml @@ -123,6 +123,7 @@ SetupPage { property real _valueRateSetpoint readonly property int _tickSeparation: 5 + readonly property int _maxTickSections: 10 readonly property int _tuneListRollIndex: 0 readonly property int _tuneListPitchIndex: 1 readonly property int _tuneListYawIndex: 2 @@ -267,7 +268,7 @@ SetupPage { min: 0 max: 10 titleText: "deg" - tickCount: ((max - min) / _tickSeparation) + 1 + tickCount: Math.min(((max - min) / _tickSeparation), _maxTickSections) + 1 } ValueAxis { @@ -275,12 +276,12 @@ SetupPage { min: 0 max: 10 titleText: "deg/s" - tickCount: ((max - min) / _tickSeparation) + 1 + tickCount: Math.min(((max - min) / _tickSeparation), _maxTickSections) + 1 } Timer { id: dataTimer - interval: 50 + interval: 10 running: false repeat: true @@ -308,6 +309,8 @@ SetupPage { adjustYAxisMax(_valueRateYAxis, _valueRateSetpoint) _msecs += interval + /* + Testing with just start/stop for now. No time limit. if (valueSeries.count > _maxPointCount) { valueSeries.remove(0) valueSetpointSeries.remove(0) @@ -316,6 +319,7 @@ SetupPage { valueXAxis.min = valueSeries.at(0).x valueRateXAxis.min = valueSeries.at(0).x } + */ } property var _activeVehicle: QGroundControl.multiVehicleManager.activeVehicle diff --git a/src/Vehicle/Vehicle.cc b/src/Vehicle/Vehicle.cc index fbbb2890a..0b0ac8eec 100644 --- a/src/Vehicle/Vehicle.cc +++ b/src/Vehicle/Vehicle.cc @@ -788,9 +788,9 @@ void Vehicle::_handleAttitudeTarget(mavlink_message_t& message) float roll, pitch, yaw; mavlink_quaternion_to_euler(attitudeTarget.q, &roll, &pitch, &yaw); - _setpointFactGroup.roll()->setRawValue(roll); - _setpointFactGroup.pitch()->setRawValue(pitch); - _setpointFactGroup.yaw()->setRawValue(yaw); + _setpointFactGroup.roll()->setRawValue(qRadiansToDegrees(roll)); + _setpointFactGroup.pitch()->setRawValue(qRadiansToDegrees(pitch)); + _setpointFactGroup.yaw()->setRawValue(qRadiansToDegrees(yaw)); _setpointFactGroup.rollRate()->setRawValue(qRadiansToDegrees(attitudeTarget.body_roll_rate)); _setpointFactGroup.pitchRate()->setRawValue(qRadiansToDegrees(attitudeTarget.body_pitch_rate)); -- 2.22.0