public SimGPS(string name, SimConnector.simConnector connector) : base(name, "") { this.connector = connector; if (!values.ContainsKey("lbRMCPosition")) values.Add(new UAVParameter("lbRMCPosition",0, null, null)); if (!values.ContainsKey("lbRMCPositionLongitude")) values.Add(new UAVParameter("lbRMCPositionLongitude", 0, null, null)); if (!values.ContainsKey("lbRMCPositionLatitude")) values.Add(new UAVParameter("lbRMCPositionLatitude", 0, null, null)); if (!values.ContainsKey("lbRMCPositionUTM")) values.Add(new UAVParameter("lbRMCPositionUTM", 0, null, null)); if (!values.ContainsKey("lbRMCCourse")) values.Add(new UAVParameter("lbRMCCourse", 0, null, null)); if (!values.ContainsKey("lbRMCSpeed")) values.Add(new UAVParameter("lbRMCSpeed", 0, null, null)); if (!values.ContainsKey("lbRMCTimeOfFix")) values.Add(new UAVParameter("lbRMCTimeOfFix", 0, null, null)); if (!values.ContainsKey("lbRMCMagneticVariation")) values.Add(new UAVParameter("lbRMCMagneticVariation", 0, null, null)); if (!values.ContainsKey("lbGGAPosition")) values.Add(new UAVParameter("lbGGAPosition", 0, null, null)); if (!values.ContainsKey("lbGGATimeOfFix")) values.Add(new UAVParameter("lbGGATimeOfFix", 0, null, null)); if (!values.ContainsKey("lbGGAFixQuality")) values.Add(new UAVParameter("lbGGAFixQuality", 0, null, null)); if (!values.ContainsKey("lbGGANoOfSats")) values.Add(new UAVParameter("lbGGANoOfSats", 0, null, null)); if (!values.ContainsKey("lbGGAAltitude")) values.Add(new UAVParameter("lbGGAAltitude", 0, null, null)); if (!values.ContainsKey("lbGGAAltitudeUnit")) values.Add(new UAVParameter("lbGGAAltitudeUnit", 0, null, null)); if (!values.ContainsKey("lbGGAHDOP")) values.Add(new UAVParameter("lbGGAHDOP", 0, null, null)); if (!values.ContainsKey("lbGGAGeoidHeight")) values.Add(new UAVParameter("lbGGAGeoidHeight", 0, null, null)); if (!values.ContainsKey("lbGGADGPSupdate")) values.Add(new UAVParameter("lbGGADGPSupdate", 0, null, null)); if (!values.ContainsKey("lbGGADGPSID")) values.Add(new UAVParameter("lbGGADGPSID", 0, null, null)); if (!values.ContainsKey("lbGLLPosition")) values.Add(new UAVParameter("lbGLLPosition", 0, null, null)); if (!values.ContainsKey("lbGLLTimeOfSolution")) values.Add(new UAVParameter("lbGLLTimeOfSolution", 0, null, null)); if (!values.ContainsKey("lbGLLDataValid")) values.Add(new UAVParameter("lbGLLDataValid", 0, null, null)); if (!values.ContainsKey("lbGSAMode")) values.Add(new UAVParameter("lbGSAMode", 0, null, null)); if (!values.ContainsKey("lbGLLPosition")) values.Add(new UAVParameter("lbGLLPosition", 0, null, null)); if (!values.ContainsKey("lbGSAFixMode")) values.Add(new UAVParameter("lbGSAFixMode", 0, null, null)); if (!values.ContainsKey("lbGSAPRNs")) values.Add(new UAVParameter("lbGSAPRNs", 0, null, null)); if (!values.ContainsKey("lbGSAPDOP")) values.Add(new UAVParameter("lbGSAPDOP", 0, null, null)); if (!values.ContainsKey("lbGSAHDOP")) values.Add(new UAVParameter("lbGSAHDOP", 0, null, null)); if (!values.ContainsKey("lbGSAVDOP")) values.Add(new UAVParameter("lbGSAVDOP", 0, null, null)); if (!values.ContainsKey("lbRMEHorError")) values.Add(new UAVParameter("lbRMEHorError", 0, null, null)); if (!values.ContainsKey("lbRMEVerError")) values.Add(new UAVParameter("lbRMEVerError", 0, null, null)); if (!values.ContainsKey("lbRMESphericalError")) values.Add(new UAVParameter("lbRMESphericalError", 0, null, null)); if (!values.ContainsKey("lbRMEVerError")) values.Add(new UAVParameter("lbRMEVerError", 0, null, null)); if (!values.ContainsKey("lbRMEVerError")) values.Add(new UAVParameter("lbRMEVerError", 0, null, null)); connector.NewValues += new SimConnector.simConnector.NewValuesHandler(connector_NewValues); /* uavData.Add("course",new UAVParameter("course",0)); */ }
/// <summary> /// Builds a new PWM Object /// </summary> /// <param name="servoname">Name of the Object to use with uavdata["Name of Object"]</param> /// <param name="servovalue">the Value to set on Initialisation</param> /// <param name="device">The Hardware Device to use</param> /// <param name="Channelnr">The Channel Number from 0 to x</param> public SimPWM(string servoname, int servovalue, string device, Byte Channelnr, SimConnector.simConnector connector) : base(servoname, "") { this.connector = connector; values.Add(new UAVParameter("LowLimit", 1000, 1000, 2000)); values.Add(new UAVParameter("HighLimit", 2000, 1000, 2000)); values.Add(new UAVParameter("Neutral", 1500, 1000, 2000)); values.Add(new UAVParameter("Invert", 0, 0, 1)); values.Add(new UAVParameter("Value", 1000, 1000, 2000)); values["LowLimit"].ValueChanged += new UAVSingleParameter.ValueChangedHandler(PWM_ValueChanged); values["HighLimit"].ValueChanged += new UAVSingleParameter.ValueChangedHandler(PWM_ValueChanged); values["Neutral"].ValueChanged += new UAVSingleParameter.ValueChangedHandler(PWM_ValueChanged); values["Invert"].ValueChanged += new UAVSingleParameter.ValueChangedHandler(PWM_ValueChanged); //this.Value = servovalue; channel = Channelnr; this.device = device; this.Min = 1000; this.Max = 2000; }
/// <summary> /// Builds a new PWM Object /// </summary> /// <param name="servoname">Name of the Object to use with uavdata["Name of Object"]</param> /// <param name="servovalue">the Value to set on Initialisation</param> /// <param name="device">The Hardware Device to use</param> /// <param name="Channelnr">The Channel Number from 0 to x</param> public SimPWM(string servoname, int servovalue, string device, Byte Channelnr,SimConnector.simConnector connector) : base(servoname, "") { this.connector = connector; values.Add(new UAVParameter("LowLimit", 1000, 1000, 2000)); values.Add(new UAVParameter("HighLimit", 2000, 1000, 2000)); values.Add(new UAVParameter("Neutral", 1500, 1000, 2000)); values.Add(new UAVParameter("Invert", 0, 0, 1)); values.Add(new UAVParameter("Value", 1000, 1000, 2000)); values["LowLimit"].ValueChanged += new UAVSingleParameter.ValueChangedHandler(PWM_ValueChanged); values["HighLimit"].ValueChanged += new UAVSingleParameter.ValueChangedHandler(PWM_ValueChanged); values["Neutral"].ValueChanged += new UAVSingleParameter.ValueChangedHandler(PWM_ValueChanged); values["Invert"].ValueChanged += new UAVSingleParameter.ValueChangedHandler(PWM_ValueChanged); //this.Value = servovalue; channel = Channelnr; this.device = device; this.Min = 1000; this.Max = 2000; }
public SimAHRS(string name,SimConnector.simConnector connector) : base(name, "") { this.connector = connector; values.Add(new UAVParameter("phi", 0,-180,180, 0)); values.Add(new UAVParameter("theta", 0180, 0, -180)); values.Add(new UAVParameter("psi", 0180, 0, -180)); values.Add(new UAVParameter("accx", 0, -1000, 1000, 0)); values.Add(new UAVParameter("accy", 0, -1000, 1000, 0)); values.Add(new UAVParameter("accz", 0, -1000, 1000, 0)); values.Add(new UAVParameter("magx", 0, -1000, 1000, 0)); values.Add(new UAVParameter("magy", 0, -1000, 1000, 0)); values.Add(new UAVParameter("magz", 0, -1000, 1000, 0)); values.Add(new UAVParameter("gyrogammastrich", 0, -1000, 1000, 0)); values.Add(new UAVParameter("gyrbetastrich", 0, -1000, 1000, 0)); values.Add(new UAVParameter("gyralphastrich", 0, -1000, 1000, 0)); connector.NewValues += new SimConnector.simConnector.NewValuesHandler(connector_NewValues); }
public SimAHRS(string name, SimConnector.simConnector connector) : base(name, "") { this.connector = connector; values.Add(new UAVParameter("phi", 0, -180, 180, 0)); values.Add(new UAVParameter("theta", 0180, 0, -180)); values.Add(new UAVParameter("psi", 0180, 0, -180)); values.Add(new UAVParameter("accx", 0, -1000, 1000, 0)); values.Add(new UAVParameter("accy", 0, -1000, 1000, 0)); values.Add(new UAVParameter("accz", 0, -1000, 1000, 0)); values.Add(new UAVParameter("magx", 0, -1000, 1000, 0)); values.Add(new UAVParameter("magy", 0, -1000, 1000, 0)); values.Add(new UAVParameter("magz", 0, -1000, 1000, 0)); values.Add(new UAVParameter("gyrogammastrich", 0, -1000, 1000, 0)); values.Add(new UAVParameter("gyrbetastrich", 0, -1000, 1000, 0)); values.Add(new UAVParameter("gyralphastrich", 0, -1000, 1000, 0)); connector.NewValues += new SimConnector.simConnector.NewValuesHandler(connector_NewValues); }
public SimGPS(string name, SimConnector.simConnector connector) : base(name, "") { this.connector = connector; if (!values.ContainsKey("lbRMCPosition")) { values.Add(new UAVParameter("lbRMCPosition", 0, null, null)); } if (!values.ContainsKey("lbRMCPositionLongitude")) { values.Add(new UAVParameter("lbRMCPositionLongitude", 0, null, null)); } if (!values.ContainsKey("lbRMCPositionLatitude")) { values.Add(new UAVParameter("lbRMCPositionLatitude", 0, null, null)); } if (!values.ContainsKey("lbRMCPositionUTM")) { values.Add(new UAVParameter("lbRMCPositionUTM", 0, null, null)); } if (!values.ContainsKey("lbRMCCourse")) { values.Add(new UAVParameter("lbRMCCourse", 0, null, null)); } if (!values.ContainsKey("lbRMCSpeed")) { values.Add(new UAVParameter("lbRMCSpeed", 0, null, null)); } if (!values.ContainsKey("lbRMCTimeOfFix")) { values.Add(new UAVParameter("lbRMCTimeOfFix", 0, null, null)); } if (!values.ContainsKey("lbRMCMagneticVariation")) { values.Add(new UAVParameter("lbRMCMagneticVariation", 0, null, null)); } if (!values.ContainsKey("lbGGAPosition")) { values.Add(new UAVParameter("lbGGAPosition", 0, null, null)); } if (!values.ContainsKey("lbGGATimeOfFix")) { values.Add(new UAVParameter("lbGGATimeOfFix", 0, null, null)); } if (!values.ContainsKey("lbGGAFixQuality")) { values.Add(new UAVParameter("lbGGAFixQuality", 0, null, null)); } if (!values.ContainsKey("lbGGANoOfSats")) { values.Add(new UAVParameter("lbGGANoOfSats", 0, null, null)); } if (!values.ContainsKey("lbGGAAltitude")) { values.Add(new UAVParameter("lbGGAAltitude", 0, null, null)); } if (!values.ContainsKey("lbGGAAltitudeUnit")) { values.Add(new UAVParameter("lbGGAAltitudeUnit", 0, null, null)); } if (!values.ContainsKey("lbGGAHDOP")) { values.Add(new UAVParameter("lbGGAHDOP", 0, null, null)); } if (!values.ContainsKey("lbGGAGeoidHeight")) { values.Add(new UAVParameter("lbGGAGeoidHeight", 0, null, null)); } if (!values.ContainsKey("lbGGADGPSupdate")) { values.Add(new UAVParameter("lbGGADGPSupdate", 0, null, null)); } if (!values.ContainsKey("lbGGADGPSID")) { values.Add(new UAVParameter("lbGGADGPSID", 0, null, null)); } if (!values.ContainsKey("lbGLLPosition")) { values.Add(new UAVParameter("lbGLLPosition", 0, null, null)); } if (!values.ContainsKey("lbGLLTimeOfSolution")) { values.Add(new UAVParameter("lbGLLTimeOfSolution", 0, null, null)); } if (!values.ContainsKey("lbGLLDataValid")) { values.Add(new UAVParameter("lbGLLDataValid", 0, null, null)); } if (!values.ContainsKey("lbGSAMode")) { values.Add(new UAVParameter("lbGSAMode", 0, null, null)); } if (!values.ContainsKey("lbGLLPosition")) { values.Add(new UAVParameter("lbGLLPosition", 0, null, null)); } if (!values.ContainsKey("lbGSAFixMode")) { values.Add(new UAVParameter("lbGSAFixMode", 0, null, null)); } if (!values.ContainsKey("lbGSAPRNs")) { values.Add(new UAVParameter("lbGSAPRNs", 0, null, null)); } if (!values.ContainsKey("lbGSAPDOP")) { values.Add(new UAVParameter("lbGSAPDOP", 0, null, null)); } if (!values.ContainsKey("lbGSAHDOP")) { values.Add(new UAVParameter("lbGSAHDOP", 0, null, null)); } if (!values.ContainsKey("lbGSAVDOP")) { values.Add(new UAVParameter("lbGSAVDOP", 0, null, null)); } if (!values.ContainsKey("lbRMEHorError")) { values.Add(new UAVParameter("lbRMEHorError", 0, null, null)); } if (!values.ContainsKey("lbRMEVerError")) { values.Add(new UAVParameter("lbRMEVerError", 0, null, null)); } if (!values.ContainsKey("lbRMESphericalError")) { values.Add(new UAVParameter("lbRMESphericalError", 0, null, null)); } if (!values.ContainsKey("lbRMEVerError")) { values.Add(new UAVParameter("lbRMEVerError", 0, null, null)); } if (!values.ContainsKey("lbRMEVerError")) { values.Add(new UAVParameter("lbRMEVerError", 0, null, null)); } connector.NewValues += new SimConnector.simConnector.NewValuesHandler(connector_NewValues); /* * uavData.Add("course",new UAVParameter("course",0)); */ }
public virtual void ConnectPeripherals() { if (Convert.ToBoolean(ConfigurationSettings.AppSettings["UseSimulator"])) { /// In Case ConfigValue UseSimulator is True ///Connects to Xplane as a Simulator /// Forwards all Output to the Simulator and Fetches Sensor Inputs from the Sim SimConnector.simConnector connector = new SimConnector.simConnector(SimConnector.SimulatorType.Xplane, ConfigurationSettings.AppSettings["SimulatorIP"]); connector.Start(); uavData.Add(new SimGPS("GPS", connector)); uavData.Add(new SimAHRS("AHRS", connector)); uavData.Add(new SimPWM("Motor", 1000, null, 3, connector)); uavData.Add(new SimPWM("Höhenruder", 1000, null, 2, connector)); uavData.Add(new SimPWM("Querruder", 1000, null, 1, connector)); uavData.Add(new SimPWM("Seitenruder", 1000, null, 4, connector)); } else { /// In Case use Simulator is False Connect to the Hardware Console.WriteLine("AHRS Device:" + FlightControlCommons.UsbHelper.GetDevicPathebyClass("AHRS")); Console.WriteLine("GPS Device:" + FlightControlCommons.UsbHelper.GetDevicPathebyClass("GPS")); // Verbinde mit Sensoren try { uavData.Add(new GPS("GPS", UsbHelper.GetDevicPathebyClass("GPS"), 38400)); // Console.WriteLine("Verbindung mit GPS Reciever erfolgreich"); } catch (Exception ex) { Console.WriteLine("Fehler beim Verbinden mit dem GPS"); Console.WriteLine(ex.Message + "\n" + ex.StackTrace.ToString()); } try { // Console.WriteLine("Versuche AHRS unter " + USBHelper.GetDevices()[ConfigurationSettings.AppSettings["AHRSDeviceID"]] + "zu finden..."); uavData.Add(new AHRS("AHRS", UsbHelper.GetDevicPathebyClass("AHRS"))); //USBHelper.GetDevices()["0403:6001"] /dev/ttyUSB0 // Console.WriteLine("Verbindung mit AHRS Sensor erfolgreich"); } catch (Exception ex) { Console.WriteLine("exception:" + ex.ToString()); Console.WriteLine("Fehler beim Verbinden mit dem AHRS"); } try { // Verbinde mit Servos uavData.Add(new PWM("Motor", 0, null, 4)); uavData.Add(new PWM("Höhenruder", 0, null, 2)); uavData.Add(new PWM("Querruder", 0, null, 1)); uavData.Add(new PWM("Seitenruder", 0, null, 3)); // Console.WriteLine("Verbindung mit dem Mini Maestro erfolgreich"); } catch (Exception ex) { Console.WriteLine("Fehler beim Verbinden mit dem Mini Maestro"); Console.WriteLine(ex.Message + "\n" + ex.StackTrace.ToString()); } } uavData.Add(new UAVStructure("Joystick", "")); }