Friday, January 10, 2020
Building Quadcopter Software from Scratch – Theory
Microelectronic (either some Ordains compatible board, Teensy, or any us that will suit your needs) TX system (more on the cheap side, you could use Turning xx or Turning car with a achiever that supports PUMP output) ââ¬â more on that later Step 2. Sensors Its time for you to learn what accelerometer and gyroscope actually do. (yes really) accelerometer ââ¬â measures g-force, its great to determinate pitch and roll angles, however accelerometers are acceptable to vibrations and shock Graph displaying accelerometer angle (shaking in hand) gyroscope ââ¬â gyroscope measures acceleration rate (which is perfect for quadruplets), gyroscopes aren't affected by vibrations however gyroscopes tend to drift over time (more on this later) Graph displaying gyroscope angle drifting over timeFrom the block diagram on top, you could probably have guessed that getting reliable data from those 2 sensors won't be so easy, but worry not. Step 3. : Kinematics Part where all the sensor ââ¬Å "magicâ⬠happen, I will only cover complementary filter here (as it is the one that I am using and its the most simple one to implement in code / also rather simple to explain). Right now we have raw gyroscope data and raw accelerometer data on our hand, but neither one of these sensor outputs give us ââ¬Å"accurate enoughâ⬠estimate to be used in our stabilization algorithm.What we will do, is combine cell and gyro outputs via complementary filter. Output from our kinematics will feature a strongly suppressed noise from accelerometer and also gyro step 4. : First PIED First PIED controller, from the diagram on top you can see that our first PIED controller will take output from our pilot as ââ¬Å"settingâ⬠and kinematics (containing current estimation of yaw, pitch and roll angles) as input. Output from our first PIED controller will contain = angle desired by pilot +- current kinematics angle, this acts like an ââ¬Å"accelerateâ⬠for second PIED.In this case ââ¬Å"accelerateâ⬠meaner, that value from our first PIED controller will determinate how ââ¬Å"fastâ⬠do we want to correct for the current stabilization error. Step 5. : second PIED Second PIED controller takes the ââ¬Å"accelerateâ⬠from first PIED as ââ¬Å"settingâ⬠and current gyroscope output (gyro Rate) as input. Resulting output from second PIED controller is the decimal value representing force that has to be applied to each of the axis to correct for the stabilization error. In our case this force is generated by spinning propellers, which size we can control by adjusting speed of the rotating props.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.