X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=ao-tools%2Faltosui%2FAltosRecord.java;h=1160a2736299743e81ae484d878570dadc79aa5a;hb=74cab8503b51ba6fb05a4d12a031c749e870b0ef;hp=c3e9d2110d52c9f013a8da6d342acce47878ae8f;hpb=d8bf05f7ad55964c9bce0551e58f4ef6c9f721ad;p=fw%2Faltos diff --git a/ao-tools/altosui/AltosRecord.java b/ao-tools/altosui/AltosRecord.java index c3e9d211..1160a273 100644 --- a/ao-tools/altosui/AltosRecord.java +++ b/ao-tools/altosui/AltosRecord.java @@ -21,8 +21,6 @@ import java.lang.*; import java.text.*; import java.util.HashMap; import java.io.*; -import altosui.AltosConvert; -import altosui.AltosGPS; public class AltosRecord { int version; @@ -31,7 +29,7 @@ public class AltosRecord { int flight; int rssi; int status; - String state; + int state; int tick; int accel; int pres; @@ -48,6 +46,8 @@ public class AltosRecord { int accel_minus_g; AltosGPS gps; + double time; /* seconds since boost */ + /* * Values for our MP3H6115A pressure sensor * @@ -71,24 +71,36 @@ public class AltosRecord { return ((count / 16.0) / 2047.0 + 0.095) / 0.009 * 1000.0; } - public double pressure() { + public double raw_pressure() { return barometer_to_pressure(pres); } + public double filtered_pressure() { + return barometer_to_pressure(flight_pres); + } + public double ground_pressure() { return barometer_to_pressure(ground_pres); } - public double altitude() { - return AltosConvert.pressure_to_altitude(pressure()); + public double filtered_altitude() { + return AltosConvert.pressure_to_altitude(filtered_pressure()); + } + + public double raw_altitude() { + return AltosConvert.pressure_to_altitude(raw_pressure()); } public double ground_altitude() { return AltosConvert.pressure_to_altitude(ground_pressure()); } - public double height() { - return altitude() - ground_altitude(); + public double filtered_height() { + return filtered_altitude() - ground_altitude(); + } + + public double raw_height() { + return raw_altitude() - ground_altitude(); } public double battery_voltage() { @@ -128,7 +140,7 @@ public class AltosRecord { return counts_per_g / 9.80665; } public double acceleration() { - return (accel_plus_g - accel) / accel_counts_per_mss(); + return (ground_accel - accel) / accel_counts_per_mss(); } public double accel_speed() { @@ -136,9 +148,8 @@ public class AltosRecord { return speed; } - public int state() { - System.out.printf("state: %s -> %d\n", state, Altos.state(state)); - return Altos.state(state); + public String state() { + return Altos.state_name(state); } public static String gets(FileInputStream s) throws IOException { @@ -188,7 +199,7 @@ public class AltosRecord { flight = 0; rssi = 0; status = 0; - state = "startup"; + state = Altos.ao_flight_startup; tick = 0; accel = 0; pres = 0;