using System; //TODO P2 move all these parameters into appropriate classes namespace HWModules { public static class missionConfig { //For String Pot public const double bellowsLowerLimit = 75.0; public const double bellowsUpperLimit = 258.0; //TODO P2 check to see why these aren't used anymore private static double lowerDescendBellowsLimit = bellowsLowerLimit + 3.0; public static double LowerDescendBellowsLimit { get { return lowerDescendBellowsLimit; } } static public readonly double upperDescendBellowsLimit = bellowsUpperLimit - 3.0; public static double UpperDescendBellowsLimit { get { return upperDescendBellowsLimit; } } static public readonly TimeSpan smSleepPeriod = new TimeSpan(0, 0, 0, 0, SBE41SamplePeriod); //msec static public readonly int smSleepPeriodMilliseconds = (int)(smSleepPeriod.Ticks / TimeSpan.TicksPerMillisecond); public const double SOSetBellowsPosition = 183.8; public const int SOSetBellowsJV = 60000; public const double RMSetBellowsPosition = 182.0; public const double ABSetBellowsPosition = 184.0; public const int ABRetractFastJV = 75000; public const int ABRetractSlowJV = ABRetractFastJV / 2; public const double ABPressureThreshold = 0.3; //Buoyancy control stuff public const double surfacePressure = 0.35; //Anchor stuff public const double deanchorVelocityThreshold = 0.007; public const int deanchorJV = 50000; public const double deanchorVelocityLimit = 0.02; public const int anchorPressureCountThreshold = 3; public const double anchorPressureMinimum = 4.0; public const double anchorVelocityLimit = 0.025; public const double exitAnchorPressureThreshold = 5.0; //nudge control public const double approachVel = 0.01; //SBE41 stuff public const int cpPressureCutoff = 1; //CP mode stops below this pressure in deciBars public const int cpRunPumpTime = 2; //run the pump for this many seconds before starting CP mode public static bool CPMode = true; //Puts SBE41 in CP mode during ascend state only public const int SBE41SamplePeriod = 3000; //msec public const int SBE41CPSamplePeriod = 1000; //msec //EngrLogger stuff public static int verbosityLevel = 4; public static readonly TimeSpan PTHSamplePeriod = new TimeSpan(0, 0, 60); public static readonly TimeSpan EMBatteryBusSamplePeriod = new TimeSpan(0, 0, 60); } }