MPU-6050 6dof IMU tutorial for auto-leveling quadcopters with Arduino source code

แชร์
ฝัง
  • เผยแพร่เมื่อ 26 พ.ย. 2024

ความคิดเห็น • 532

  • @maxff123
    @maxff123 8 ปีที่แล้ว +12

    This video was so well researched, I found it very useful. I had already integrated the rate angle readings to get an angle, but I had not considered the problem shown at 10:00. Thanks.

  • @thierhappy
    @thierhappy 8 ปีที่แล้ว +2

    Such a fabulous engineer! I am in france am studying engineering. And this year I wanted to build my own quadcopter. Thanks for your videos

  • @ljhalawani7082
    @ljhalawani7082 3 ปีที่แล้ว +1

    Superb, I've checked out a lot of tutorials for MPU-6050 and your video is the best tutorial on the internet on this module. Thank you so much!

  • @ODDBUG
    @ODDBUG 8 ปีที่แล้ว +3

    Great job! I think MPU6050 is one of the most extended IMU in market as you said. This explanations will help us a lot for understanding the basics about auto-leveling. Waiting for code!

  • @freddiesnijman
    @freddiesnijman 8 ปีที่แล้ว +24

    Yes, it's indeed becoming fun now. Good fun! And this all while we are getting uducated by Joop. I really enjoyed the maths during the video. Thank you Joop.

    • @Joop_Brokking
      @Joop_Brokking  8 ปีที่แล้ว +3

      Graag gedaan ;-)

    • @a..d2062
      @a..d2062 5 ปีที่แล้ว +1

      @@Joop_Brokking QUESTION here for everyone and also JOOP : if 1 degree per second = 65.5 and then in 1 min it should be 60 * 65.5= 3930, then how can you say in one min it is 6 *65= 393. how can there be 6 seconds in 1 min. please tell me. is this a mistake. 3:30

    • @ImbaFreeMaster
      @ImbaFreeMaster 4 ปีที่แล้ว +2

      @@a..d2062 Full turn (360°) in 1 minute (60s) means that angular velocity is 360° / 60s = 6°/s

  • @williamna5800
    @williamna5800 8 ปีที่แล้ว +2

    Great videos, I stopped by after finding your arduino/PID video. Here I set hours later still watching your channel. I wanted some basic PID understanding for a small rc car control demo, now I just want to scrap the car and go straight to quad. Way to promote your sport and hobby. Well done!

    • @Joop_Brokking
      @Joop_Brokking  8 ปีที่แล้ว +1

      Great to hear and have fun building. Don't forget to check my channel for additional information about the YMFC-3D version 2 quad: www.brokking.net/ymfc-3d_v2_qanda.html

  • @ABlueElephant
    @ABlueElephant 4 ปีที่แล้ว +1

    The best tutorial about MPU-6050 / MPU-9250

  • @pirotkillergaming5179
    @pirotkillergaming5179 6 หลายเดือนก่อน

    Hi I'm in 12th grade and I am really happy to see what I studied last couple of years is very useful in technology after 7 years 😊

  • @unglaubichuberlieber8048
    @unglaubichuberlieber8048 7 ปีที่แล้ว +1

    to describe your explanation as good will be insulting, because it is very good , danke !!!

  • @vishuviswanathan2940
    @vishuviswanathan2940 5 ปีที่แล้ว +1

    Very educational video (for me). I was trying a two wheel self-balancing model using only the Acceleration data (with lot of mess on accel valued during wheel action). Learned a lot from the video. Thanks

  • @weiye701
    @weiye701 ปีที่แล้ว

    Your video is absolutely the best on MPU-6050 tutorial! Crystal clear and inspiring! Thanks so much!

  • @rholt2
    @rholt2 8 ปีที่แล้ว +4

    GREAT VIDEO - i'm hooked! i've seen these calculations when I was working on a 2wheeled robot (inverted pendulum) and now I understand the principal a lot better.
    Russ from Coral Springs, Fl usa

  • @ZeedijkMike
    @ZeedijkMike 7 ปีที่แล้ว +1

    You explanations and illustrations are very good. As are your videos ☺
    I have had a gyro lying around for quite some time, but never really got to use it. Now it's time to get started.
    Thanks for the inspiration.

  • @eyal4
    @eyal4 5 ปีที่แล้ว +9

    You are an amazing teacher, thank you for all the time and effort you are putting in these videos! wow

    • @griffinpatrick8286
      @griffinpatrick8286 3 ปีที่แล้ว

      I guess im asking the wrong place but does any of you know a trick to get back into an instagram account??
      I somehow forgot my account password. I appreciate any help you can give me

    • @fletcherelisha2556
      @fletcherelisha2556 3 ปีที่แล้ว

      @Griffin Patrick instablaster :)

    • @griffinpatrick8286
      @griffinpatrick8286 3 ปีที่แล้ว

      @Fletcher Elisha thanks for your reply. I found the site through google and I'm trying it out atm.
      Takes a while so I will reply here later when my account password hopefully is recovered.

    • @griffinpatrick8286
      @griffinpatrick8286 3 ปีที่แล้ว

      @Fletcher Elisha It did the trick and I actually got access to my account again. Im so happy:D
      Thank you so much, you really help me out !

    • @fletcherelisha2556
      @fletcherelisha2556 3 ปีที่แล้ว

      @Griffin Patrick no problem :)

  • @DarrenGoodman
    @DarrenGoodman 3 ปีที่แล้ว

    Still teaching us dummies. You are a legend!!

  • @dipanjanmaity6614
    @dipanjanmaity6614 5 ปีที่แล้ว +1

    The best part of this video is angle shifting . It's really very tricky

  • @sdfpv2658
    @sdfpv2658 10 หลายเดือนก่อน

    Thank you so much for this tutorial! It has helped me tremendously, and has also taught me how to communicate using the I2C protocol without a library!

  • @dragos4352
    @dragos4352 4 ปีที่แล้ว +1

    unrated channel , you deserve more

  • @MishoIV
    @MishoIV 8 ปีที่แล้ว +3

    Perfect explanation even for laymen. You could maybe add links to further study materials for those, that want to know more about this topic.

  • @daudhtm5203
    @daudhtm5203 3 ปีที่แล้ว +1

    thanks you for this tutorial it worked but i made some slight modifications to make it much simplier, if you use the mpu 6050 light library it calculates the angles for you and then you can just apply the filter from this tutorial

  • @WinstonSmith1984
    @WinstonSmith1984 8 ปีที่แล้ว

    Nice video.
    One safety feature that is missing in all hobby autopilots, is the ability to guess-navigate without GPS, using gyro, accelerometer, and barometer only and by adding a pitch angle to airspeed function to the code. Current autopilots either autoland or return to China when they lose GPS input which isn't ideal. If the drift isn't too much, then it'll be possible to have the autopilot perform a RTH roughly to where it started, without GPS. Such code can be improved by making it learn it's own pitch vs airspeed in flight and calculate wind while it has a GPS signal.

    • @CineSoar
      @CineSoar 8 ปีที่แล้ว

      Unfortunately, the drift is far far too much with these inexpensive (as in, less than $250,000.00) MEMS-based devices. First, you double integrate noise (tens of centimeters of drift per second). Then, with as little as one degree of error in your gravity estimate, the error in double integrations grows to tens of meters each second.
      This is an interesting talk, by an expert at Invensense (a leading manufacturer of these devices). He gets into the double integration problem, around the 24 minute mark.

    • @davidperna
      @davidperna 8 ปีที่แล้ว

      +stephmon This sounds very interesting, could you link to the talk?

  • @xishootstuffx
    @xishootstuffx 5 ปีที่แล้ว +1

    Thanks for the code! I plan to use this to check the leveling of my RV and maybe auto level in the future.

  • @ecbmanikandan
    @ecbmanikandan 5 ปีที่แล้ว

    I clicked the DONATE Button to support you., But THE JESUS WORDS You written SHOWS YOU ARE @ Different LEVEL., Love you brooooo., and your VIDEOS Are Awesome and VERY VERY Informative...!

  • @miriamramstudio3982
    @miriamramstudio3982 4 ปีที่แล้ว +1

    Best video I watched about this topic. Thx

  • @bogus.c
    @bogus.c 7 ปีที่แล้ว +1

    I'm very impressed with your channel. Thanks, for such a detailed description. Your projects are great

  • @kevinchahine7553
    @kevinchahine7553 7 ปีที่แล้ว

    please keep making these videos. thay are so awsome. you must be a professor

  • @marcowagner8318
    @marcowagner8318 8 ปีที่แล้ว

    Very good and easy to understand explanation! I'm already looking forward to seeing part 2 :)

  • @EdwinFairchild
    @EdwinFairchild 3 ปีที่แล้ว +2

    @7:51 how does "Z-axis/250/65.5 translate to Z-axis * 0.0000611" .... that answer is possible if you divide z-axis / 0.004 / 65.5..... so which is the right and which is wrong? did you mean to write 0.004 instead of 250 , or is the 250 correct and the real answer is not 0.0000611?

  • @tetradb_
    @tetradb_ 8 ปีที่แล้ว +1

    Awesome video! This something i've always wanted to understand in that kind of detail, thanks!

  • @TheSateef
    @TheSateef 5 ปีที่แล้ว +1

    wow, thank you so much for this, you have saved me days of work figuring it out

  • @elmaghrabimansour8916
    @elmaghrabimansour8916 3 ปีที่แล้ว

    Great work out of remarkable Knowledge. I started to build my own version with the help of your illustrations. On the other hand I think at min 4:14 it should be angular velocity , not angle_in_degrees

  • @BernhardHofmann
    @BernhardHofmann 2 ปีที่แล้ว

    Man I love Joop's videos.

  • @chirots
    @chirots 2 ปีที่แล้ว

    After 5 years, I am still not able to build my own drone. I am serious this time. Thank you

  • @charlesklein7232
    @charlesklein7232 5 ปีที่แล้ว +1

    you have a good voice i was able to concentrate on what you were saying.

  • @khaledrayan2664
    @khaledrayan2664 3 ปีที่แล้ว

    the best channel i have seen ever

  • @abhijithalder4567
    @abhijithalder4567 6 ปีที่แล้ว

    U mentioned that u personally dont use mpu 6050..then what u actually use and if u mention those particular problem u faced with mpu6050 ....will be the last nail from this video. ....anyway. .great job.....😍

  • @tiguy6758
    @tiguy6758 4 ปีที่แล้ว +1

    Thank you very much for these very well made video.
    Keep up the good work

  • @DSIVXX
    @DSIVXX 2 ปีที่แล้ว

    You make me laugh and understand at the same time👍

  • @coryarnett362
    @coryarnett362 8 ปีที่แล้ว

    GREAT VIDEO! Concise and a lot of fun to watch.

  • @ericgroen253
    @ericgroen253 5 ปีที่แล้ว

    Very interresting and inspiring! Even though it is sometimes hard to get it all in my head.
    Ziet er iig goed uit. Erg leerzaam! Dank je!!

  • @pjwlk
    @pjwlk 4 ปีที่แล้ว

    Awesome video, very easy to follow your teaching. Thanks for your efforts!

  • @kumarjha1729
    @kumarjha1729 5 ปีที่แล้ว

    Fantastic video. Never seen such kind of explanation.

  • @Bob_Burton
    @Bob_Burton 8 ปีที่แล้ว

    Great stuff.
    Looking forward to part 2.

  • @IgorChudakov
    @IgorChudakov 8 ปีที่แล้ว +1

    I did not follow the whole math, but from [rogramming perspective seems like there is an error in here
    //Gyro angle calculations
    //0.0000611 = 1 / (250Hz / 65.5)
    angle_pitch += gyro_pitch * 0.0000611; //Calculate the traveled pitch angle and add this to the angle_pitch variable.
    angle_roll += gyro_roll * 0.0000611; //Calculate the traveled roll angle and add this to the angle_roll variable.
    //0.000001066 = 0.0000611 * (3.142(PI) / 180degr) The Arduino sin function is in radians
    angle_pitch -= angle_roll * sin(gyro_yaw * 0.000001066); //If the IMU has yawed transfer the roll angle to the pitch angel.
    angle_roll += angle_pitch * sin(gyro_yaw * 0.000001066); //If the IMU has yawed transfer the pitch angle to the roll angel.
    I guess, it should be like the following
    temp_pitch = angle_pitch;
    angle_pitch -= angle_roll * sin(gyro_yaw * 0.000001066);
    angle_roll += temp_pitch * sin(gyro_yaw * 0.000001066);
    Am I right?

  • @pfever
    @pfever 8 ปีที่แล้ว +1

    very nice video! Im alreay waiting for the next one!

  • @richardbranch5239
    @richardbranch5239 3 ปีที่แล้ว +1

    is there a way to tweak the code to control 4 BRUSHED motors? i have been studying the code and have some ideas

  • @casualcommentator735
    @casualcommentator735 8 ปีที่แล้ว +2

    Great video and a great starting point for beginners, really love it. I downloaded your sample code and I am wondering how you simulate the 250 Hz sampling rate. On the line 89 you are using delay(3) but I think it should be 4 as in 4 milliseconds. Then 1/4ms = 250 Hz. The comment on the line 172 also has 4 microseconds whereas it should be either 4 milliseconds or 4000 microseconds. Thought to let you know if you want to update your sample code. Anyway, great videos and tutorials, will definitely follow you. Thanks!

  • @UdayTade-s3p
    @UdayTade-s3p 2 หลายเดือนก่อน

    Very nice detailed explanation. Thanks for sharing.

  • @tangducbao7309
    @tangducbao7309 6 ปีที่แล้ว +1

    Omg. I love your explanation

  • @milanb3754
    @milanb3754 5 ปีที่แล้ว +1

    117: angle_pitch += gyro_x * 0.0000611;
    118: angle_roll += gyro_y * 0.0000611;
    121: angle_pitch += angle_roll * sin(gyro_z * 0.000001066);
    122: angle_roll -= angle_pitch * sin(gyro_z * 0.000001066);
    there is one problem in the code, in 122 lines, the value of angle_pitch should be a value from 117 lines. The arduino code has a value of 121 lines. This is where the error accumulates.
    Thank you for code :)

    • @a..d2062
      @a..d2062 5 ปีที่แล้ว

      QUESTION here for everyone and also JOOP : if 1 degree per second = 65.5 and then in 1 min it should be 60 * 65.5= 3930, then how can you say in one min it is 6 *65= 393. how can there be 6 seconds in 1 min. please tell me. is this a mistake. 3:30

  • @wonkastudio-johnny
    @wonkastudio-johnny 4 ปีที่แล้ว +2

    hey Joop, is it possible to use the Serial monitor instead of the LCD display ?

  • @asyraf_ismail
    @asyraf_ismail 7 ปีที่แล้ว +2

    Hi, Joop! Love your videos so much. Learn a lot from you. In this series, you mention that there are reasons why you would not use mpu6050. Can you explain some of the reason why?

  • @uhtijmai
    @uhtijmai 8 ปีที่แล้ว +1

    as always you are awesome !!!!!!!!! waiting for the part 2 and arduino code and its application in ymfc version 2 quadcopter........lots of love and respect...

    • @Joop_Brokking
      @Joop_Brokking  8 ปีที่แล้ว +1

      I'm afraid that I have to disappoint you. This series is only about making an IMU, not how to implement it :-( Maybe I should start working on the video YMFC-stable........

    • @jonathanblack4779
      @jonathanblack4779 8 ปีที่แล้ว

      I was hoping you would do that as well, I'm interested in the PID implementation. I've read up on using complementary filtering to use both the gyro and accelerometer data, but it would be awesome to see how you do it. I had kind of figured that you wanted to keep it under wraps.

  • @yamageki4152
    @yamageki4152 3 ปีที่แล้ว +1

    angle roll -= angle pitch *sin (yaw angle)
    can someone tell me if this is theoretically near correct? will studying euler angle solve my question?

  • @allawhussein
    @allawhussein 5 ปีที่แล้ว +1

    thank you for all videos, would you please share with us the reason for not using the mpu 6050 in your flight controller, thanks in advance

    • @sqwert654
      @sqwert654 5 ปีที่แล้ว +1

      6050 in flight controllers acted up and seemed worse than the 6000, so the 6000 is always preferred

  • @milthon57
    @milthon57 6 ปีที่แล้ว +1

    Good job.could just give us some tips to get yaw readings please?

    • @Joop_Brokking
      @Joop_Brokking  6 ปีที่แล้ว +1

      Please check this video for more information about the yaw implementation: th-cam.com/video/vPGChdmfKl0/w-d-xo.html

  • @cagneymoreau4216
    @cagneymoreau4216 6 ปีที่แล้ว

    At 12.28 It appears you have reversed the number where 0.0000166 should be 0.0000611 which is a reference to the timing calculation from a few minutes earlier. It is noted correctly in sample code though. Great video! Thanks so much!

    • @a..d2062
      @a..d2062 5 ปีที่แล้ว

      QUESTION here for everyone and also JOOP : if 1 degree per second = 65.5 and then in 1 min it should be 60 * 65.5= 3930, then how can you say in one min it is 6 *65= 393. how can there be 6 seconds in 1 min. please tell me. is this a mistake. 3:30

  • @quinjet1346
    @quinjet1346 4 ปีที่แล้ว +1

    Excelente video. Tengo un proyecto y me gustaría que te unieras a mi para llevarlo a cabo. No es con hélices y mucho menos con motores, se eleva aparentemente solo.

  • @embeddeddevzone5605
    @embeddeddevzone5605 4 ปีที่แล้ว +1

    Hi. Can you tell me how to calculate the yaw angle

  • @EulerAlvarenga1
    @EulerAlvarenga1 7 ปีที่แล้ว +2

    Hi Sir, Excellent video!!! You're saving my final project haha. I'd like to know, what software are you using to plot the sensor noisy data?
    Thanks from Brazil!!

  • @jimbobillybob1959
    @jimbobillybob1959 8 ปีที่แล้ว +1

    This is awesome!! Thank you for sharing your knowledge!!

  • @aquated-p
    @aquated-p 4 ปีที่แล้ว +1

    thanks alot i understand why my drone isn't very stable. so i must always use manual drone. thanks alot

  • @sumbelahmad4978
    @sumbelahmad4978 3 ปีที่แล้ว +1

    hey my question is how can we select 259Hz frequency why we don't select an other

  • @uwehafner4228
    @uwehafner4228 7 ปีที่แล้ว

    Wonderfull videos. Including the second part.
    A question: You mentioned that you don't use the MPU-6050 yourself "for various reasons" in your copter project. So my question would be:
    What do you use instead? Or what would be your recommendation/what are the reasons?
    And do you have info on where to find more in the interent on improving the code concerning the limitations mentioned in the second video: tilt of the copter leading to an acceleration in an angle?
    I also saw you recommend SPI ahead of I2C. too bad I currently got an MPU6050.
    Keep up the great tutorials. They are very interesting and helpful.

  • @prathamsoni579
    @prathamsoni579 5 ปีที่แล้ว +2

    Hey! Another Great Video, Joop Brokking! I Just wanted to point out the formula you gave in 4:14 (angle_in_degrees = raw_gyro_output / 65.5). Shouldn't it be Angular_rate_in_degrees_per_second = raw_gyro_output / 65.5 ?

    • @a..d2062
      @a..d2062 5 ปีที่แล้ว +1

      QUESTION here for everyone and also JOOP : if 1 degree per second = 65.5 and then in 1 min it should be 60 * 65.5= 3930, then how can you say in one min it is 6 *65= 393. how can there be 6 seconds in 1 min. please tell me. is this a mistake. 3:30

    • @Yigit-uz4ni
      @Yigit-uz4ni 4 ปีที่แล้ว +1

      @@a..d2062 1 deg/sec gives a reading of 65.5. A full rotation(revolution) is 360 degrees. 1 minute is 60 seconds. Therefore, 1 deg/sec = 1/6 revolutions/minute (rpm). So, if 1/6 rpm gives a reading of 65.5 then 1 rpm should give a reading of 65.5*6 = 393.

  • @suhardihablee
    @suhardihablee 7 ปีที่แล้ว +1

    Do you have any opinion on using 9DOF IMU for the AL quadcopter??

  • @natanaelrabello
    @natanaelrabello 8 ปีที่แล้ว +1

    Amazing video! thanks for the explanations

  • @doublerave6536
    @doublerave6536 8 ปีที่แล้ว +1

    hi really nice project.
    I have uploaded the same code on my arduino but I have problem with the experiment on 10:10 when I'm turning the mpu6050 both pitch and roll changing please help me
    thanks

  • @XG4bro17TM
    @XG4bro17TM 3 ปีที่แล้ว +2

    AMAZING

  • @jimbrownza
    @jimbrownza 5 ปีที่แล้ว +1

    Very good videos Joop, thanks.

  • @joshuawallace1065
    @joshuawallace1065 5 ปีที่แล้ว +1

    I figured out the board. I am now wondering how you do the wiring here?

  • @chrisB_OG
    @chrisB_OG 2 ปีที่แล้ว

    WOW!!! Such great explanations.

  •  8 ปีที่แล้ว

    I think found the answer on your code. Is it correct?
    //Connections
    Power (5V) is provided to the Arduino pro mini by the FTDI programmer
    Gyro - Arduino pro mini
    VCC - 5V
    GND - GND
    SDA - A4
    SCL - A5
    LCD - Arduino pro mini
    VCC - 5V
    GND - GND
    SDA - A4
    SCL - A5

  • @edilsonfernandes4703
    @edilsonfernandes4703 7 ปีที่แล้ว +1

    Hi Joop, first of all, thanks for the amazing tutorials and also for the so well commented code! Well, i just read your code for this IMU and did not understood the complementary filter that you used. Two variables you've declared seems not have been initialized on any part of the code but you still used them as follows. Could you please clear that for me? And very sorry for the bothering.
    *angle_pitch_output* = angle_pitch_output * 0.9 + angle_pitch * 0.1;
    *angle_roll_output* = angle_roll_output * 0.9 + angle_roll * 0.1;

  • @yxhankun
    @yxhankun 5 ปีที่แล้ว

    Please turn on the "CC" in the right bottom corner in all your clips.

  • @phuocnguyenbui71
    @phuocnguyenbui71 5 ปีที่แล้ว +1

    Thanks for your code.
    It's brilliant!!!

  • @onixteam8900
    @onixteam8900 6 ปีที่แล้ว +1

    Sir, This is an awesome implementation. What is the method that you used to real-time graphing at 6.14?

  • @randysonnicksen9475
    @randysonnicksen9475 6 ปีที่แล้ว

    Joop. Very much like your videos. They were very helpful in getting me started. I have a question.
    In your leveling algorithm, is looks like you use the gyro for quick adjustments to pitch/roll, and the accelerometer for a slower adjustment since the gyro, being an integral function can accumulate error. If I'm understanding it correctly, you sum the x,y,z accel values using pythagorean root-sum-squares method, and assume this largest hypotenus vector is gravity (down direction).
    But what if I've got my quad in a steady holding pattern doing circles at a 30 degree banked turn. If it was a properly coordinated turn, there would be no x or y accel, and z would be approx 1.15g's.
    Is there an algorithm that can handle this and still keep track of where true up and down is? Thanks

  • @aminyta
    @aminyta 8 ปีที่แล้ว

    Many thanks Joop for such a comprehensive and helpful tutorial. Two questions, if you don't mind answering them:
    1- Could you please explain what are the reasons you don't use MPU-6050 for your projects?
    2- I got a Pololu AltIMU-10 v5 at about $23 US. After setting it up, the gyro is set to rest. Without accel-correcting term, the angles drift at a rate of about 0.16 deg/sec. i.e. about 1 deg of drift within each 6 sec. Do you think it is normal?

  • @gerokatseros
    @gerokatseros 8 ปีที่แล้ว +1

    wonderful explanation

  • @laxmru
    @laxmru 7 ปีที่แล้ว +1

    If I attach a ruler scale with MPU6050, will it give me 100% accurate angle while installing LCD TV panel on wall in house?

  • @edward6027
    @edward6027 2 ปีที่แล้ว

    Great video, explanations and code. I've been trying to get things working with an ESP32-wroom. Getting there. It's somewhat working. Thank you again. I see you've not made too many videos recently. Are you taking a break?

  • @zacharycchen
    @zacharycchen 8 ปีที่แล้ว +1

    Thank you so much for this tutorial!

  • @midhunmohan0m0pillai
    @midhunmohan0m0pillai 8 หลายเดือนก่อน

    Good day Mr.Brokking , instead of using Gyro angle as it is, for auto leveling if the problem with drifting can be solved. eg : The setpoint says 0 , if you allow the gyro for a long time in the same position it will drift to another value, but if check the rate of change of the gyro in level should be '0' even though it drifts( according to my understanding the drift is uniform). do my understanding is correct ?

  • @camilolopezcalvache7260
    @camilolopezcalvache7260 3 ปีที่แล้ว

    good video, it helped me a lot. would it be the same with the mpu9250 sensor?

  • @costynvd
    @costynvd 7 ปีที่แล้ว +1

    Great video! I learned a lot!

  • @Mithilesh165
    @Mithilesh165 7 ปีที่แล้ว +1

    best video ever.....thanks !!!!!!!!

  • @smitra855
    @smitra855 5 ปีที่แล้ว

    very effective tutorial. it would be very helpful for me if any one clear my following queries:
    1. is it possible to represent gyro sensor output in quaternion form?if yes, please suggest. I have gone through lot of materials and research papers, but hardly find the way to do the same. All are telling about quaternion arithmetic but not the steps of converting gyro output to quaternion form.

  • @MrNothier
    @MrNothier 7 ปีที่แล้ว +1

    Hello dear sir. first i want to thank you a loooooooooooooooooooooot for these tutorials. im trying to implement your YMFC project but i do have problemes during the setup.
    Indeed, the program stops in the gyro calibration. Do you have any kind of help about that?

  • @firejeep2009
    @firejeep2009 7 ปีที่แล้ว +1

    Joop i recently seen your YMFC-AL series and have built my own and love it have been working out some kinks with drift and what not all minor things and am working on some other things, i am new to quads and arduino at that. with all that being said i want to add GPS and more importantly alt hold. for now i want to start with sonar and then will be using another form or alt detection but i am at a loss of how to implement it into the ymfc code. if you would/ could help with this i would be greatly appreciated and i am sure that other noobs would love this as well.

  • @taihengwei1415
    @taihengwei1415 5 ปีที่แล้ว +1

    Hi Joop, Thanks for your awesome video! I found a problem when i run this code. I found this code to have a long response time. For example, when i change the pitch angle to 45 degree in a second, the output_angle increased very slowly, almost cost 1 minutes. So how did you solve this question?

  • @CarlosDelgado-jy7yv
    @CarlosDelgado-jy7yv 8 ปีที่แล้ว

    Hi sir excellent job Did you use a level shifter with the MPU6050? Do you recommend us to connect it directly to a 5v logic? or should we use a level shifter

  • @govorilegko
    @govorilegko 8 ปีที่แล้ว +11

    Please make it possible to turn on closed subtitles

  • @nitishchennoju5427
    @nitishchennoju5427 3 ปีที่แล้ว

    You mentioned that you don't use the 6050 on your flight computer. What were you using and was it due to the inaccuracies/noise of the 6050's accel? Trying to build an IMU project using 6050s to implement some form of IMU position tracking. Unfortunately, this is appearing to be really hard.

  • @donkelly36
    @donkelly36 7 ปีที่แล้ว

    Joop Brokking, I believe I found a small error in the MPU-6050 code. It's a very subtle error. The line in the void loop() that reads
    angle_roll += angle_pitch * sin(gyro_z * 0.000001066)
    will read the angle_pitch value from the line immediately before it (the yaw transferred roll angle to the pitch value) whereas I believe you meant it to get the angle_pitch value from several lines prior, the line that reads
    angle_pitch += gyro_x * 0.0000611
    Let me know if you see what I mean. Thanks, Don

    • @drscience3353
      @drscience3353 6 ปีที่แล้ว

      Don Are you still communicating here? I think the answer to your question is that the change that is being added (or subtracted) is so small, it doesn't matter whether you add it to the corrected pitch (roll) or to the slightly uncorrected value just before that. The order of these two correction lines doesn't matter either. If you are still interested, get back to me at drscience2 AT yahoo DOT com. I have other questions as well. Richard

  • @redsnow123456
    @redsnow123456 6 ปีที่แล้ว +1

    from where did you get the formula and relation between the roll and the pitch

  • @cristian-scd
    @cristian-scd 4 ปีที่แล้ว +1

    Very good post! I appreciate your work. I tried to download the code from the 1st link but I get download failed. Is the link still available?

  • @number8158
    @number8158 8 ปีที่แล้ว +1

    @Joop Brokking, thanks for your all videos! in this video on copter you use "cheep" motors2212 1000kv , is that good motors,have a problem , is it stable ? thanks

    • @Joop_Brokking
      @Joop_Brokking  8 ปีที่แล้ว +1

      The motors are from DJI and perform very well. Especially the new version.

  • @xandervandenberg881
    @xandervandenberg881 2 ปีที่แล้ว

    Hi Joop, I have watched part 1 and part 2 several times but there is something that I can't understand. How did you solve the Gimbal lock problem. I know that hierarchy of the Gimbal is important. If the parenting combination is YZX or YXZ the gimbal lock can be avoided with maximum rating, but therefore you have to first rotate your yaw and afterwards you roll / pitch. If the parenting combination is ZYX, ZXY, XYZ or XZY there is a case of gimbal lock. This has to be solved with quaternion. Could you explain me how you solved this problem?

  • @electronicbob6237
    @electronicbob6237 7 ปีที่แล้ว +1

    Very well explained....thank you..!!!