Tools: FilterTools: add niquist limit warning and constrain

This commit is contained in:
Iampete1 2022-07-31 17:59:43 +01:00 committed by Andrew Tridgell
parent 987ffbb00f
commit e5de08b123
2 changed files with 17 additions and 1 deletions

View File

@ -983,4 +983,19 @@ function update_hidden_mode()
}
}
function check_nyquist()
{
var checks = [["GyroSampleRate", "MaxFreq", "MaxFreq_warning"],
["SCHED_LOOP_RATE", "PID_MaxFreq", "PID_MaxFreq_warning"]];
for (var i = 0; i < checks.length; i++) {
var freq_limit = get_form(checks[i][0]) * 0.5;
var sample_rate = document.getElementById(checks[i][1]);
if (parseFloat(sample_rate.value) > freq_limit) {
sample_rate.value = freq_limit;
document.getElementById(checks[i][2]).innerHTML = "Nyquist limit of half sample rate";
} else {
document.getElementById(checks[i][2]).innerHTML = "";
}
}
}

View File

@ -61,7 +61,8 @@ ArduPilot 4.2 filter setup.
</table>
<p>
<label for="MaxFreq">Maximum Displayed Frequency</label>
<input id="MaxFreq" name="MaxFreq" type="number" step="1" value="150"/>
<input id="MaxFreq" name="MaxFreq" type="number" step="1" value="150" onchange="check_nyquist();"/>
<label id="MaxFreq_warning"></label>
</p>
<p>
<label for="MaxPhaseLag">Maximum Displayed Phase Lag</label>