5import QGroundControl.FactControls
6import QGroundControl.Controls
10 pageComponent: tuningPageComponent
13 id: tuningPageComponent
19 FactPanelController { id: controller; }
21 QGCPalette { id: qgcPal; colorGroupEnabled: true }
23 property real _margins: ScreenTools.defaultFontPixelHeight
29 text: qsTr("Attitude Controller Parameters")
32 onClicked: checked = true
37 text: qsTr("Position Controller Parameters")
39 onClicked: checked = true
44 text: qsTr("Waypoint navigation parameters")
46 onClicked: checked = true
52 visible: atcButton.checked
53 anchors.left: parent.left
54 anchors.right: parent.right
55 height: posColumn.height + _margins*2
56 color: qgcPal.windowShade
61 anchors.margins: _margins
62 anchors.left: parent.left
63 anchors.right: parent.right
64 anchors.top: parent.top
67 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "ATC_ANG_PIT_P") }
68 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "ATC_ANG_RLL_P") }
69 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "ATC_ANG_YAW_P") }
70 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "ATC_RAT_PIT_P") }
71 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "ATC_RAT_PIT_I") }
72 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "ATC_RAT_PIT_IMAX") }
73 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "ATC_RAT_PIT_D") }
74 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "ATC_RAT_RLL_P") }
75 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "ATC_RAT_RLL_I") }
76 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "ATC_RAT_RLL_IMAX") }
77 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "ATC_RAT_RLL_D") }
78 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "ATC_RAT_YAW_P") }
79 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "ATC_RAT_YAW_I") }
80 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "ATC_RAT_YAW_IMAX") }
81 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "ATC_RAT_YAW_D") }
83 } // Column - Position Controller Parameters
84 } // Rectangle - Position Controller Parameters
88 visible: posButton.checked
89 anchors.left: parent.left
90 anchors.right: parent.right
91 height: velColumn.height + _margins*2
92 color: qgcPal.windowShade
97 anchors.margins: _margins
98 anchors.left: parent.left
99 anchors.right: parent.right
100 anchors.top: parent.top
101 spacing: _margins*1.5
103 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_POSXY_P") }
104 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_POSZ_P") }
105 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_VELXY_P") }
106 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_VELXY_I") }
107 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_VELXY_IMAX") }
108 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_VELZ_P") }
109 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_ACCZ_D") }
110 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_ACCZ_FILT") }
111 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_ACCZ_I") }
112 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_ACCZ_IMAX") }
113 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_ACCZ_P") }
115 } // Column - VEL parameters
120 anchors.margins: _margins
121 anchors.left: parent.left
122 anchors.right: parent.right
123 anchors.top: parent.top
124 spacing: _margins*1.5
126 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_POSXY_P") }
127 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_POSZ_P") }
128 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_VELXY_P") }
129 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_VELXY_I") }
130 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_VELXY_IMAX") }
131 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_VELZ_P") }
132 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_ACCZ_D") }
133 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_ACCZ_FLTD") }
134 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_ACCZ_FLTE") }
135 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_ACCZ_FLTT") }
136 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_ACCZ_I") }
137 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_ACCZ_IMAX") }
138 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "r.PSC_ACCZ_P") }
140 } // Column - VEL parameters
144 anchors.left: parent.left
145 anchors.right: parent.right
146 anchors.top: parent.top
148 sourceComponent: globals.activeVehicle.versionCompare(3, 6, 0) <= 0 ? velColumnUpTo36 :velColumn40
150 } // Rectangle - VEL parameters
154 visible: navButton.checked
155 anchors.left: parent.left
156 anchors.right: parent.right
157 height: wpnavColumn.height + _margins*2
158 color: qgcPal.windowShade
160 // WPNAV parameters up to 3.5
164 anchors.margins: _margins
165 anchors.left: parent.left
166 anchors.right: parent.right
167 anchors.top: parent.top
168 spacing: _margins*1.5
171 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "WPNAV_ACCEL") }
172 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "WPNAV_ACCEL_Z") }
173 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "WPNAV_LOIT_JERK") }
174 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "WPNAV_LOIT_MAXA") }
175 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "WPNAV_LOIT_MINA") }
176 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "WPNAV_LOIT_SPEED") }
177 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "WPNAV_RADIUS") }
178 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "WPNAV_SPEED") }
179 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "WPNAV_SPEED_DN") }
180 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "WPNAV_SPEED_UP") }
184 // WPNAV parameters for 3.6 and upwards
188 anchors.margins: _margins
189 anchors.left: parent.left
190 anchors.right: parent.right
191 anchors.top: parent.top
192 spacing: _margins*1.5
194 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "WPNAV_ACCEL") }
195 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "WPNAV_ACCEL_Z") }
196 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "WPNAV_RADIUS") }
197 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "WPNAV_SPEED") }
198 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "WPNAV_SPEED_DN") }
199 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "WPNAV_SPEED_UP") }
200 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "LOIT_SPEED") }
201 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "LOIT_ACC_MAX") }
202 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "LOIT_ANG_MAX") }
203 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "LOIT_BRK_ACCEL") }
204 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "LOIT_BRK_DELAY") }
205 FactTextFieldSlider2 { fact: controller.getParameterFact(-1, "LOIT_BRK_JERK") }
211 anchors.left: parent.left
212 anchors.right: parent.right
213 anchors.top: parent.top
215 sourceComponent: globals.activeVehicle.versionCompare(3, 6, 0) < 0 ? wpnavColumn35 : wpnavColumn36
217 } // Rectangle - WPNAV parameters