Click here to load reader
Upload
deanna-johnston
View
66
Download
12
Embed Size (px)
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
Citation preview
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