summer internship research project

Click here to load reader

Upload: deanna-johnston

Post on 30-Dec-2015

62 views

Category:

Documents


12 download

DESCRIPTION

Summer Internship Research Project. Objective : To develop a fully-autonomous control system for the Q-ball based on onboard IMU/Magnetometer/Ultrasound sensory information. Dhruv Soni 3 rd year , BTech Electrical Engineering, IIT Bombay. Localization. Pitch/Roll command. Position command. - PowerPoint PPT Presentation

TRANSCRIPT

ObjectiveTo develop a fully-autonomous control system for the Q-ball based on onboard IMU/Magnetometer/Ultrasound sensory information

Objective: To develop a fully-autonomous control system for the Q-ball based on onboard IMU/Magnetometer/Ultrasound sensory informationSummer Internship Research ProjectDhruv Soni3rd year , BTechElectrical Engineering, IIT BombayMoving quad rotor helicopter in 3 different sinusoidal motionsExperimental Results:

Opti-track positional data of the x, y, z position of the helicopterx, y, z gyro datax, y, z accelerometer data which is very noisy due to propeller motion

X Control:Left-right periodic motion at a fixed height

Y-axis CommandZ-axis Command

This command signals are used to derive the Roll and Pitch Commands Roll and Pitch are back calculated using IMU Sensors and sent as a feedback signals

X-Commanda. Roll signal

Roll derived from command SignalRoll signal Calculated from Accelerometer outputImplementation of Complementary Filter available in QuarC for Roll Command

Complementary Filter OutputRoll signal Calculated from Accelerometer outputb. Pitch signalPitch derived from command SignalPitch signal Calculated from Accelerometer output

Implementation of Complementary Filter for Pitch CommandComplementary Filter OutputPitch signal Calculated from Accelerometer output

LocalizationPosition command LQRPIDQ-ball.IMUFilterPitch/RollcommandPitch/RollobservedOpti-trackPosition observedLocalizationPosition command LQRPIDQ-ball.IMUFilterPitch/RollcommandPitch/RollobservedOpti-trackPosition observedReplace this with IMU-in the loop control block

Derivation of the kinematic equations for calculating the position of the Q-ball Navigation with respect to the inertial frame:

The accelerometers usually provide a measurement of specific force in a body fixed axis set, denoted by . In order to navigate, it is necessary to resolve the components of the specific force in the chosen reference frame. In the event that the inertial frame is selected, this may be achieved by pre-multiplying the vector quantity by the direction cosine matrix using:

Where represents the turn rate of the body with respect to the i-frame as measured by the Gyroscopes.

Algorithm for Localization

Calculation of Rotational Matrix C

To solve : f (t)= C(t) * f b(t)

Note: the solution will depend on initial attitude of the Q-ballOn solving this differential equation we get

Rotational matrix C (t) is calculated by solving this differential equationSimplifying Rotational Matrix C

On applying Taylors expansion :Here B = t * [ 0-w_zw_y w_z 0-w_x w_y w_x 0 ] And = | t * sqrt{(w_x)2 + (w_y)2 + (w_z)2}|;

15Deriving Position of Q-ballf (t)= C(t) * f b(t)Note that here t is very small (order of m.sec) hence integration can be simplified to the following linear equations:V (t + t) = V(t) + t * {f(t + t) + g} here g= [0 0 9.8]

S (t + t) = S(t) + t * V(t + t)

Experiment with Motors on (no propellers)(only noise signals)

X optitrackX calculatedExperiment with Motors off (only noise signals)y optitracky calculated

Experiment with Motors off (only noise signals)z optitrackz calculated

Sources of Error It was assumed that Initial attitude angles are zeroi.e. C(0) = [ 1 0 0 0 1 0 0 0 1 ]which may not be the case because even a slight tilt in initial orientation of q-ball, gives components of gravitational force which gets integrated over time in the algorithm can give us the exponential growth (as observed)

Experiment with initial tilt

Accelerometer reading :

Accel_x = 8.9478 Accel_y = 0.4572Accel_z = -3.7881Gyroscope reading :

Gyro_x = 0 Gyro_y = 2.1817e-004 Gyro_z = 0Modification in algorithm1.> Velocity reset : Velocity of Q-ball is reset to zero at each sampling time

2.> Initial orientation of Q-ball is calculated to derive exact elements of C(0) matrix

3.> Constant gravitational acceleration vector is back transformed to body frame and subtracted from the Accelerometer readingResults after Modifications(Motors on propellers off)

X (Modified Algo)

X (Previous Algo)Results after Modifications

Y (Modified Algo)Y (Previous Algo)Results after Modifications

Z (Previous Algo)Z (Modified Algo)Next Steps Test the algorithm for linear motion of Q-ball (smooth noise free motion , motors off) Implement an Attitude determination algorithm for exact calculation of Rotational matrix in the localization algorithm