1
0
Fork 0
mirror of https://github.com/iNavFlight/inav-configurator.git synced 2025-07-23 16:25:19 +03:00

Merge pull request #166 from iNavFlight/pid-names

some rationalization in PID table generation and PID names no longer …
This commit is contained in:
Paweł Spychalski 2017-03-15 18:28:56 +01:00 committed by GitHub
commit 5e214f6fab
4 changed files with 88 additions and 104 deletions

View file

@ -11539,6 +11539,25 @@ var FC = {
"Attitude",
"Cruise"
]
},
getPidNames: function () {
if (semver.lt(CONFIG.flightControllerVersion, "1.6.0")) {
return PID_names;
} else {
return [
'Roll',
'Pitch',
'Yaw',
'Position Z',
'Position XY',
'Velocity XY',
'Surface',
'Level',
'Heading',
'Velocity Z'
];
}
}
};
@ -20133,38 +20152,21 @@ TABS.pid_tuning.initialize = function (callback) {
$('#content').load("./tabs/pid_tuning.html", process_html);
}
var sectionClasses = [
'ROLL', // 0
'PITCH', // 1
'YAW', // 2
'ALT', // 3
'Pos', // 4
'PosR', // 5
'NavR', // 6
'LEVEL', // 7
'MAG', // 8
'Vario' // 9
];
function pid_and_rc_to_form() {
// Fill in the data from PIDs array
var i;
/*
* Iterate over registered sections/PID controllers
*/
for (var sectionId = 0; sectionId < sectionClasses.length; sectionId++) {
var pidNames = FC.getPidNames();
i = 0;
/*
* Now, iterate over inputs inside PID constroller section
*/
$('.pid_tuning .' + sectionClasses[sectionId] + ' input').each(function () {
$(this).val(PIDs[sectionId][i]);
i++;
$('[data-pid-bank-position]').each(function () {
var $this = $(this),
bankPosition = $this.data('pid-bank-position');
$this.find('td:first').text(pidNames[bankPosition]);
$this.find('input').each(function (index) {
$(this).val(PIDs[bankPosition][index]);
});
}
});
// Fill in data from RC_tuning object
$('.rate-tpa input[name="roll-pitch"]').val(RC_tuning.roll_pitch_rate.toFixed(2));
@ -20185,14 +20187,14 @@ TABS.pid_tuning.initialize = function (callback) {
function form_to_pid_and_rc() {
var i;
for (var sectionId = 0; sectionId < sectionClasses.length; sectionId++) {
i = 0;
$('table.pid_tuning tr.' + sectionClasses[sectionId] + ' input').each(function () {
PIDs[sectionId][i] = parseFloat($(this).val());
i++;
});
}
$('[data-pid-bank-position]').each(function () {
var $this = $(this),
bankPosition = $this.data('pid-bank-position');
$this.find('input').each(function (index) {
PIDs[bankPosition][index] = parseFloat($(this).val());
})
});
// catch RC_tuning changes
RC_tuning.roll_pitch_rate = parseFloat($('.rate-tpa input[name="roll-pitch"]').val());
@ -20243,16 +20245,6 @@ TABS.pid_tuning.initialize = function (callback) {
updateActivatedTab();
});
var i;
$('.pid_tuning tr').each(function(){
for(i = 0; i < PID_names.length; i++) {
if($(this).hasClass(PID_names[i])) {
$(this).find('td:first').text(PID_names[i]);
}
}
});
pid_and_rc_to_form();
if (FC.isRatesInDps()) {
@ -20281,11 +20273,11 @@ TABS.pid_tuning.initialize = function (callback) {
$gyroSoftLpfHz.val(FILTER_CONFIG.gyroSoftLpfHz);
$accSoftLpfHz.val(INAV_PID_CONFIG.accSoftLpfHz);
$dtermLpfHz.val(FILTER_CONFIG.dtermLpfHz);
$yawLpfHz.val(FILTER_CONFIG.yawLpfHz),
$yawLpfHz.val(FILTER_CONFIG.yawLpfHz);
$rollPitchItermIgnoreRate.val(PID_ADVANCED.rollPitchItermIgnoreRate);
$yawItermIgnoreRate.val(PID_ADVANCED.yawItermIgnoreRate);
$axisAccelerationLimitRollPitch.val(PID_ADVANCED.axisAccelerationLimitRollPitch * 10);
$axisAccelerationLimitYaw.val(PID_ADVANCED.axisAccelerationLimitYaw * 10)
$axisAccelerationLimitYaw.val(PID_ADVANCED.axisAccelerationLimitYaw * 10);
$magHoldYawRate.change(function () {
INAV_PID_CONFIG.magHoldRateLimit = parseInt($magHoldYawRate.val(), 10);