using System; using Microsoft.SPOT; using Microsoft.VisualStudio.TestTools.UnitTesting; using CPF; using System.Text; using System.Threading; using HWModules; using SWModules; namespace CPFUnitTests { class ElmoTwitterUnitTest { [TestMethod] public void TestSRCommand() { HWModules.MotherBoard motherboard = HWModules.MotherBoard.Instance; motherboard.Enable12V(); motherboard.Enable5V(); motherboard.EnableChannelPower(MotherBoard.ChannelNames.PumpMotorControllerElexChannel); motherboard.EnableChannelPower(MotherBoard.ChannelNames.PositionSensorChannel); //Brent's version 0 digital IO board J4: position sensor motherboard.EnablePump(); MessageQueue messageQ = MessageQueue.Instance; BuoyancyEngine buoyancyEngine = BuoyancyEngine.Instance; buoyancyEngine.init(); double innerBellowsPosition = double.NaN; EnergyMonitorPump emPump = EnergyMonitorPump.Instance; EnergyMonitorLTC2946.EM_VandI emData; StringBuilder loggerComment = new StringBuilder("\\tElmo SR test"); StringBuilder tab = new StringBuilder("\t"); int loopCounter = 0; EngrLogger.writeToColumns("Staring increase buoyancy"); buoyancyEngine.increaseBuoyancy(10000); bool run = true; while (run) { buoyancyEngine.getMotorStatus(); innerBellowsPosition = buoyancyEngine.getBellowsPositionStringPot(); emData = emPump.getVoltsAndMilliAmps(); Thread.Sleep(3000); messageQ.processQ(); EngrLogger.writeToColumns(EngrLogger.ColumnNums.comment, loggerComment, EngrLogger.ColumnNums.bellowsPosition, innerBellowsPosition, EngrLogger.ColumnNums.batteryBusVolts, emData.voltage, EngrLogger.ColumnNums.batteryBusAmps, emData.current); loopCounter++; } buoyancyEngine.stopMotor(); } } }