Esempio n. 1
0
        public ModellingEnvironment()
        {
            RotorGroup = new RotorGroup(0.04, 0.12, 0.254);
            Frame = new Frame(RotorGroup);
            Controller = new Controller(Frame, RotorGroup);

            SimulationTime = 10;
            SamplingPeriod = 0.01;
        }
Esempio n. 2
0
        public Controller(Frame frame, RotorGroup rotorGroup)
        {
            _frame = frame;
            _rotorGroup = rotorGroup;

            IsControllerEnabled = false;

            RPM = new int[4];

            RollDesired = 0; PitchDesired = 0; YawDesired = 0;
            RollSpeedDesired = 0; PitchSpeedDesired = 0; YawSpeedDesired = 0;
            YDesired = 10; YSpeedDesired = 0;

            ThrustPropCoef = 1; ThrustDifCoef = 1; ThrustIntCoef = 0;
            RollPropCoef = 1; RollDifCoef = 1; RollIntCoef = 0;
            PitchPropCoef = 1; PitchDifCoef = 1; PitchIntCoef = 0;
            YawPropCoef = 1; YawDifCoef = 1; YawIntCoef = 0;
        }
Esempio n. 3
0
        public Frame(RotorGroup rotorGroup)
        {
            _rotorGroup = rotorGroup;

            Ixx = 0.02;
            Iyy = 0.04;
            Izz = 0.02;
            Mass = 1.5;
            ArmLength = 0.25;

            XInitial = 0;
            YInitial = 0;
            ZInitial = 0;
            RollInitial = new Angle(0);
            PitchInitial = new Angle(0);
            YawInitial = new Angle(0);

            X = 0;
            Y = 0;
            Z = 0;

            XSpeed = 0;
            YSpeed = 0;
            ZSpeed = 0;

            Roll = new Angle(0);
            Pitch = new Angle(0);
            Yaw = new Angle(0);

            RollSpeed = 0;
            PitchSpeed = 0;
            YawSpeed = 0;

            XAngSpeed = 0;
            YAngSpeed = 0;
            ZAngSpeed = 0;
        }
Esempio n. 4
0
 public RotorGroupViewModel(RotorGroup rotorGroup)
 {
     RotorGroup = rotorGroup;
 }