X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altoslib%2FAltosConvert.java;h=a1e2cdcab7715293f08707b92cd03548294909db;hp=3527b575178a2291ceb62b5729c3987af756f618;hb=7ec1b97d278c7aec3199fb7270f0dcf9484c879f;hpb=69e6df07976a56b49e07c242cd6e5b2cbd2a578d diff --git a/altoslib/AltosConvert.java b/altoslib/AltosConvert.java index 3527b575..a1e2cdca 100644 --- a/altoslib/AltosConvert.java +++ b/altoslib/AltosConvert.java @@ -18,7 +18,7 @@ /* * Sensor data conversion functions */ -package org.altusmetrum.AltosLib; +package org.altusmetrum.altoslib_1; public class AltosConvert { /* @@ -190,6 +190,12 @@ public class AltosConvert { return ignite / 32767 * 15.0; } + public static double + barometer_to_pressure(double count) + { + return ((count / 16.0) / 2047.0 + 0.095) / 0.009 * 1000.0; + } + public static double radio_to_frequency(int freq, int setting, int cal, int channel) { double f; @@ -242,6 +248,18 @@ public class AltosConvert { return meters * (100 / (2.54 * 12)); } + public static double feet_to_meters(double feet) { + return feet * 12 * 2.54 / 100.0; + } + + public static double meters_to_miles(double meters) { + return meters_to_feet(meters) / 5280; + } + + public static double meters_to_mph(double mps) { + return meters_to_miles(mps) * 3600; + } + public static double meters_to_mach(double meters) { return meters / 343; /* something close to mach at usual rocket sites */ } @@ -250,6 +268,32 @@ public class AltosConvert { return meters / 9.80665; } + public static double c_to_f(double c) { + return c * 9/5 + 32; + } + + public static boolean imperial_units = false; + + public static AltosDistance distance = new AltosDistance(); + + public static AltosHeight height = new AltosHeight(); + + public static AltosSpeed speed = new AltosSpeed(); + + public static AltosAccel accel = new AltosAccel(); + + public static AltosTemperature temperature = new AltosTemperature(); + + public static String show_gs(String format, double a) { + a = meters_to_g(a); + format = format.concat(" g"); + return String.format(format, a); + } + + public static String say_gs(double a) { + return String.format("%6.0 gees", meters_to_g(a)); + } + public static int checksum(int[] data, int start, int length) { int csum = 0x5a; for (int i = 0; i < length; i++)