8

The function $f$ comes from the equation of motion for the inverted pendulum problem (inverted pendulum alone, not including the motion of the wheeled platform). If you consider your figure but ignore the side-to-side motion of the cart, then the equilibrium of moments about the hinge is: $\sum M = m g l \sin \theta - b\frac{d \theta}{dt} $ Where $m$ is ...


6

You are most likely running into problems with the maximum time step in your simulation. This phenomenon is known as stiffness, where your equations of motion are highly sensitive to the size of the time step in a discrete solution. Consider a simple mass-spring system with mass $m$, spring stiffness $k$, displacement $x$ and velocity $\dot{x}$ for states $...


6

Something you can do WRONG to very easily unstabilize a quadcopter is to put the wrong propeller on the wrong motor. There are both pushers and pullers, and depending on the configuration you choose, you need the right type. Its possible you had two of them swapped. When they broke, you got the new ones on properly. This page really helped me. This one has ...


6

It looks like your proportional gain is too high. You seem to be constantly increasing RPM on one motor while locking in the other one to make the system rotate. This isn't a good control strategy as eventually those are going to both saturate and you will lose control. Also as time increases your ability to command the system decreases. So you need a ...


6

A quadcopter contains (among other things) two separate and independent algorithms: an attitude estimation algorithm, and a control algorithm. The attitude estimation algorithm computes information about the orientation of the quadcopter: the roll, pitch and yaw angles. The control algorithm is responsible for driving the motors so that the orientation of ...


5

I'm not sure I agree that bipedal walking is so much harder that airplane control. It depends on how you look at it. Many robots can walk (bipedal walking) and many airplanes are difficult to control because of their flight characteristics or the flight conditions. It is easier for robots to walk in nice conditions. There are many weather conditions too ...


5

The stability is a property of the linear systems themselves, hence there is no meaning in considering stability as regarded with the input disturbance $T_d$. To verify if the closed-loop system $C/T_d$ is stable/unstable, you ought to compute the roots of the characteristic polynomial. Given that $$ \frac{C}{T_d} = - \frac{s^2+As}{s^2+As+K}, $$ the roots ...


4

Regarding point 1, yes you are understanding the problem correctly. Regarding points 1 and 2, I believe what you are looking for is the Nyquist-Shannon sampling theory. This theory says that your sampling frequency should be greater than 2x your "highest frequency of interest". This is to prevent aliasing, where you can incorrectly measure a high-...


4

I don't think this is related to integral windup at all. I noticed that the I-error does not converge to zero That's a good thing, because it means your integral term is not useless. The integral term is there to compensate for steady-state errors. If you set the integral gain to 0, you should see that your system never reaches the setpoint. The I-...


4

Not all fixed wing aircraft are inherently instable. That feature greatly depends on the center pressure and gravity center designed position. Passenger aircrafts are quite stable, and fight planes are just the opposite in order to achieve fast maneouvres, among other reasons. Read this aviation thread where this question was replied.


4

Without going into the details of the underlying equations of motion, I could argue that the D part is needed to damp out the oscillations of the pole while reaching for the (unstable) equilibrium point with no overshoots and guaranteeing at the same time sufficient dynamics. Now, if we consider the context where the equilibrium point is reached but the cart ...


3

Stabilization of a helicopter and a quadrotor are similar tasks - have a reference signal, compare that to feedback, then act on the difference. A quad rotor has four motors, and the helicopter arguably does as well: main rotor, tail rotor, swash plate fore/aft servo, swash plate port/stbd servo. I would bet you can find a helicopter community that could ...


3

Keep in mind that the ZMP is a simplification. In practice with walking robots the support polygon is constantly changing so it can be tough to keep the ZMP inside. Pregenerated (offline) trajectories will only work in very specific conditions (flat ground, no disturbances), and only if you can model your support polygon well. That said, everything you ...


3

For the most part, it will increase the gain of the controller. doesn't affect lift capabilities. Adding weight to something that flies always decreases lift capabilities. However, this influence is likely very small. So here's your quadrocopter with 1 DOF rotating around an axis: $$a\ddot r + b\dot r + c r$$ The general differential equation1 for a ...


3

This paper, Full Quaternion Based Attitude Control for a Quadrotor by Emil Fresk and George Nikolakopoulos, demonstrates what you are trying to achieve. Abstract— The aim of this article is to present a novel quaternion based control scheme for the attitude control problem of a quadrotor. A quaternion is a hyper complex number of rank 4 that can be ...


3

First, I think you need to go back and look at your code. Gimbal lock is only a problem when you get very near (within a couple degrees) of 90. If you are seeing strange behavior at 45 degrees something else is the cause. As for your question, quaternions are usually not used directly in basic PID control since they have complicated behavior resulting in ...


3

I'd start by reading over this question: What are good strategies for tuning PID loops? If I had to guess, I'd say you have a problem in the way your complimentary filter is constructed. With the quadcopter motors off, you should tilt the frame back and forth and see if the roll / pitch values that are reported are actually accurate. To me, it looks ...


3

Sounds like ground effects. When a plane or helicopter is close to the surface, the aerodynamics change. This distance is usually considered to be the same as wingspan, or rotor diameter for a helicopter. The lift/drag ratios change, the thrust efficiency changes, and the balance can be affected because you are moving on or off a bubble of pressurized air. ...


2

Vince has it right, it is a designers choice. Depends on the application. Moving the mass away from the center point of rotation will increases the moment of inertia. Which means it will resist influences from external forces more. This includes both environmental disturbances and self generated motion command updates. One of these is not wanted, and the ...


2

This MOOC free-of-charge course, Welcome to TUMx's AUTONAVx! Autonomous Navigation for Flying Robots, may help. It covers: Learning theory Exercise Quadcoptor programming that run on both stimulator and actual hardware


2

I would suggest that you build a rig that constricts the quadcopter to rotating along just one axis. Either roll or pitch. Then you need to tune the roll/pitch controller independently. I would suggest using zeigler nichols to tune the PIDs. Once you tune roll/pitch you can move onto yaw


2

Linearize the system around the operating point you're interested in. Look at the eigenvalues of the A and B matrices that represents the linearized system. Then compare the eigenvalues using from systems with different wheel sizes.


2

A PID can provide great control, but it's a very unsophisticated technique -- it only understands error and correction. The longer you wait between measurements, the larger your error will be each time. (No surprises here, right? It's the difference between moving 60 miles every hour and moving 1 mile every minute.) The best performance that you can get ...


2

All PID controllers act on an error signal, so you definitely should stick with your first implementation. The derivative term in the PID controller wants to "see" how the error is changing - if the error is getting bigger, then the derivative term gets larger and "kicks in" a higher contribution. If the error is getting smaller, then the derivative term ...


2

It is possible to stabilize a quadcopter using only angle measurements in a single loop pid. However it is easier to stabilize a quadcopter using a cascaded PID controller. Yes you are tuning more parameters. Firstly you tune first the inner loop rate PID controller using the gyroscope's (the fast sensor, but drifts) angular rate readings then tune the outer ...


2

You are using one PID controller to try to drive a quaternion? A quaternion by definition represents three degrees of freedom, roll pitch yaw, and a PID controller is Single Input, Single Output (SISO) controller. You're trying to mask a Multiple Input, Multiple Output (MIMO) system by hiding your three variables in a quaternion. I would suggest maybe ...


2

I feel like I make the same comments every time you ask a question about your controller: How are you tuning the gains? I think your slack line is interfering with your results. Your quadcopter is not pulling on the slack line, it's sitting on it. This is introducing a floating inverted (unstable!) pendulum on system to your quadcopter. The motors aren't ...


2

Currently I am performing my research on that, and in my case I decided to tune all the PIDs. Angles of the quadrotor tend to zero, while altitude controller tend to the objective height. That's habitual in bibliography. In my particular simulations on the computer, PD parameters were enough and all the controllers adapted the same Proportional and ...


2

I'm going to ignore your section on aircraft and attempt to answer the (vague) question, Do inherently unstable systems desire to be stable for all cases when a closed loop control is implemented on them? First, I'll say that system response, stability, etc., are all based on mathematics, and math does not have feelings. That is, a system doesn't "...


Only top voted, non community-wiki answers of a minimum length are eligible