aboutsummaryrefslogtreecommitdiff
path: root/src/modules/commander
diff options
context:
space:
mode:
authorLorenz Meier <lm@inf.ethz.ch>2014-08-24 13:32:46 +0200
committerLorenz Meier <lm@inf.ethz.ch>2014-08-24 13:32:46 +0200
commit64d3c48770860586d4755b1d2e865e607af4b25e (patch)
treef3f32319068cd7d7bec8ea8367439fbdb2b1a2f3 /src/modules/commander
parentbf8956d2e87b29af25392b74a24ea0da8d422d4b (diff)
downloadpx4-firmware-64d3c48770860586d4755b1d2e865e607af4b25e.tar.gz
px4-firmware-64d3c48770860586d4755b1d2e865e607af4b25e.tar.bz2
px4-firmware-64d3c48770860586d4755b1d2e865e607af4b25e.zip
Add warning for non-standard avionics rail voltages
Diffstat (limited to 'src/modules/commander')
-rw-r--r--src/modules/commander/state_machine_helper.cpp19
1 files changed, 13 insertions, 6 deletions
diff --git a/src/modules/commander/state_machine_helper.cpp b/src/modules/commander/state_machine_helper.cpp
index c9fc9218c..684c61a17 100644
--- a/src/modules/commander/state_machine_helper.cpp
+++ b/src/modules/commander/state_machine_helper.cpp
@@ -182,12 +182,19 @@ arming_state_transition(struct vehicle_status_s *status, ///< current vehicle s
// Fail transition if power levels on the avionics rail
// are measured but are insufficient
- if (status->condition_power_input_valid && ((status->avionics_power_rail_voltage > 0.0f) &&
- (status->avionics_power_rail_voltage < 4.75f))) {
-
- mavlink_log_critical(mavlink_fd, "NOT ARMING: Avionics power low: %6.2f Volt", (double)status->avionics_power_rail_voltage);
- feedback_provided = true;
- valid_transition = false;
+ if (status->condition_power_input_valid && (status->avionics_power_rail_voltage > 0.0f)) {
+ // Check avionics rail voltages
+ if (status->avionics_power_rail_voltage < 4.75f) {
+ mavlink_log_critical(mavlink_fd, "NOT ARMING: Avionics power low: %6.2f Volt", (double)status->avionics_power_rail_voltage);
+ feedback_provided = true;
+ valid_transition = false;
+ } else if (status->avionics_power_rail_voltage < 4.9f) {
+ mavlink_log_critical(mavlink_fd, "CAUTION: Avionics power low: %6.2f Volt", (double)status->avionics_power_rail_voltage);
+ feedback_provided = true;
+ } else if (status->avionics_power_rail_voltage > 5.4f) {
+ mavlink_log_critical(mavlink_fd, "CAUTION: Avionics power high: %6.2f Volt", (double)status->avionics_power_rail_voltage);
+ feedback_provided = true;
+ }
}
}