quadrotor pid controller

Thread Starter

jango

Joined Feb 3, 2017
3
to tune the pid controller
i have make a matlab model for the quadrotor
that have 4 inputs (angular velocity of motor)
w1
w2
w3
w4

i have 4 pid :
altitude controller with the output u1
roll controller with the output u2
pitch controller with the output u3
yaw controller with the output u4

we have that

b=trust factor
d=drag factor

w1^2=(1/4*b)*u1 + (1/2*b)*u3 + (1/4*d)*u4
w2^2=(1/4*b)*u1 - (1/2*b)*u3 + (1/4*d)*u4
w3^2=(1/4*b)*u1 + (1/2*b)*u2 - (1/4*d)*u4
w4^2=(1/4*b)*u1 - (1/2*b)*u2 - (1/4*d)*u4

so to get w1 w2 w3 w4 we use sqrt() but the problem the pid output can be negative so when we use sqrt
it will give complexe number.
please help me to solve this problem
thank you
 
Top