The (Self Crashing) Balancing Car

Поделиться
HTML-код
  • Опубликовано: 14 июл 2024
  • The rest of the series:
    • Balance Car
    Check out my Patreon Page! / geardownforwhat
    Where you can buy a 3D Printer: goo.gl/gwKB6J
    For Strong Filament! CF Nylon (NylonX) : goo.gl/a6zeQd
    Special Nozzle for NylonX: goo.gl/WTNhxq
    Buy a Gear Down For What T-Shirt: goo.gl/G1iBYC
    Follow me on Twitter: / gdfw17
    I post most of my designs on thingiverse
    www.thingiverse.com/Gear_Down...
    Would you help translate my videos? : ruclips.net/user/timedtext_cs_p...
    Links to products in this description may be affiliate links. These links do not add any additional cost to your purchase, but the channel gets a small kickback, which helps us a bunch! Thank you!
  • РазвлеченияРазвлечения

Комментарии • 69

  • @ProlificInvention
    @ProlificInvention 5 лет назад +7

    Dude, you're a genius, I know I say that every time...but mind blown on your fabrication and creativity.

  • @Spaventacorvi
    @Spaventacorvi 5 лет назад +10

    I think the biggest problem in your project is the position of the MPU5060.
    Usually the sensor should be positioned as close as possible to the wheel axis to avoid to amplifying the "noise" in the gyroscope values.
    You have tried many solutions, at this point try this too! 😁

    • @forbiddenera
      @forbiddenera 5 лет назад

      Interesting tip. I was thinking the opposite so it amplifies the distance of the inputs..

    • @tinymovr
      @tinymovr 5 лет назад +1

      Gyro readings shouldn't be affected by positioning. If you are also using the accel values though, putting the IMU close to the wheels is a disaster. The absolute angle that you get from the IMU will be close to garbage (due to horizontal acceleration) and degrade the quality of the filtered values. It is better to place the IMU higher up the robot as he has done.

  • @cramitdfrog69
    @cramitdfrog69 5 лет назад +8

    C truncates or removes the decimal. No rounding at all; that is to say float 1.9999 ~= int 1

  • @loukask.9111
    @loukask.9111 5 лет назад +13

    join the Odrive discord server, there are many people that would love to help you with your interference issues, in fact the creator of Odrive himself mentioned some improvements on the server some days ago.

  • @Ktulu789
    @Ktulu789 Год назад +1

    Teaching your child to walk, I mean, roll! xD

  • @ahmedal-musharraf9242
    @ahmedal-musharraf9242 5 лет назад +4

    I think the problem with the DMP is the i2c clock speed, I was having similar problems because the FIFO buffer was overflowing because the arduino can't read it fast enough to prevent this, setting the i2c clock speed to 400kHz fixed the problem :)
    edit1: also of the sketch to doing too much stuff and slowing down the arduino, the buffer overflows too fast. i think this is why the nano fixed it :D
    edit2: Keep up the great work :)

    • @GearDownForWhat
      @GearDownForWhat  5 лет назад +1

      The sketch that I used actually set the clock to 400 kHz by default.
      Also, after filming this I noticed that the placement of the Arduino Nano and MPU6050 doesn't even matter anymore, the Odrive doesn't interfere with it.

    • @ahmedal-musharraf9242
      @ahmedal-musharraf9242 5 лет назад

      @@GearDownForWhat weird issue, I was working on the same project few months ago, some problems are sooo frustrating, but its so rewarding when you finally get it to work, looking forward to the next vid :)

    • @fLOL2121
      @fLOL2121 5 лет назад +1

      @@GearDownForWhat You mentioned in the video that the communication broke every time you did a servo write/remote control read operation. This sounds an awful lot like you have a problem with locking up the communication.
      The standart arduino library functions are coded really crappy and they will block the execution of any other code while they are running which is a huge problem for i2c.
      I am not sure how the servo write is implemented, but I know for sure that the pulseIn() function is really bad. You should never use that. It blocks your code for at least 20ms and at most 39ms. It uses blocking loops wich do nothing while it is waiting on a pin change.
      A better option is to use a timer/interrupt based system for that. I don't really know a example offhand, but I could send you the code to do so if you're interested because I have implemented a rc remote control reader wich is non blocking myself recently.

    • @GearDownForWhat
      @GearDownForWhat  5 лет назад

      Dude, if you have something that will work in place of pulse() I would greatly appreciate it! I am currently using that for my R/C Receiver. Email it to me! askgdfw@ Google Mail

    • @fLOL2121
      @fLOL2121 5 лет назад

      @@GearDownForWhat Sure, just to make sure, you are using an Arduino mega 2560 right? Because the code will differ for the different Arduino versions.

  • @jamesclark1528
    @jamesclark1528 5 лет назад

    Jesus, I didn't think it'd work out this well. Awesome.

  • @marcoronzani7197
    @marcoronzani7197 5 лет назад +1

    Just add a spinning mass which is not touching the ground, and can spin as much as want, but slowing it down can apply angular momentum to the robot!

    • @marcoronzani7197
      @marcoronzani7197 5 лет назад

      Oh, and smaller wheels may help as well reducing their spinning mass and angular momentum, which does not help!

  • @shardul9197
    @shardul9197 5 лет назад +1

    Your channel deserves M subs

  • @BrickKong
    @BrickKong 5 лет назад

    Nice work!

  • @shpadoinkle_wombat
    @shpadoinkle_wombat 5 лет назад +3

    Now put inverted pendulum on top of it!

    • @grantcampbell6026
      @grantcampbell6026 5 лет назад

      The whole thing IS an inverted pendulum … I mentioned a couple of videos ago that the design might benefit from having more of the mass at or below the level of the drive shafts, so as to lower the center of gravity. Duct taping the batteries onto the chassis between the "training rails" below axel level would be a quick test of whether or not this might help, which wouldn't require reprinting the whole chassis ….

    • @0calvin
      @0calvin 5 лет назад +1

      I was thinking more of a bobblehead .

  • @mcasualjacques
    @mcasualjacques 5 лет назад +2

    maybe maybe the i/o pin characteristics of the nano are better than those of the mega. or the pull up pull down values, or the i/o mode

    • @BEdmonson85
      @BEdmonson85 5 лет назад

      I'm curious if changing the pull up resistor values on the i2c lines to pull up "harder" could help with the interference.

  • @timmyalexandranova
    @timmyalexandranova 5 лет назад

    “You forgot to plug the board in, see you in 5 minutes” this is the truest sentence I have ever heard.

    • @GearDownForWhat
      @GearDownForWhat  5 лет назад

      haha, it pisses me off. like why can't there be a cancel upload button?

    • @BEdmonson85
      @BEdmonson85 5 лет назад

      @@GearDownForWhat I call it ALT+F4.

  • @KX36
    @KX36 5 лет назад

    Unicyclists and stilt walkers balance in that they never stop moving.

  • @sargetester99
    @sargetester99 5 лет назад +1

    If your tires slip any at all from the surface they are touching you will have serious problems, use rubber to grip better.

    • @GearDownForWhat
      @GearDownForWhat  5 лет назад

      It’s actually really grippy tires on it, they are o-rings!

  • @Ktulu789
    @Ktulu789 Год назад

    16:20 Sh*t! The moment it falls and you see the little piece flying! :-((((

  • @johnnypaintsticks8027
    @johnnypaintsticks8027 5 лет назад

    Good job

  • @RealProjectTube
    @RealProjectTube 5 лет назад +1

    Sweet! It balances! Eventually this thing is going to haul ass. :)

  • @forbiddenera
    @forbiddenera 5 лет назад

    Neat. I am trying to build a single wheel self balancing bot!

  • @RussSirois
    @RussSirois 5 лет назад +1

    What's the name of the song that plays between 3:45-4:30? It's really catchy.

  • @mr.planter494
    @mr.planter494 5 лет назад

    Is there such there a gearbox that converts one turn on one end to a thousand turns on the other? Or something close to that?

  • @pyro1596
    @pyro1596 5 лет назад

    Have you ever thought of using two depth sensors on both sides to help keep it from moving? Not necessarily to keep it level

  • @raygun26
    @raygun26 5 лет назад

    I pissed my pants

  • @adfaklsdjf
    @adfaklsdjf 5 лет назад

    awesome!

  • @PowerScissor
    @PowerScissor 5 лет назад +1

    What software/hardware is being used to monitor that rc transmitter? I have 3 transmitters with issues I need to troubleshoot...but thought I would need an expensive oscilloscope.

    • @GearDownForWhat
      @GearDownForWhat  5 лет назад +1

      It’s an Arduino board with the value being read, converted from PWM to an integer, and they printed in the serial plotter.

    • @PowerScissor
      @PowerScissor 5 лет назад

      @@GearDownForWhat Thanks! So the receiver needs to be PWM output and not something like SBUS?

    • @GearDownForWhat
      @GearDownForWhat  5 лет назад

      If the signal will control a servo, Arduino can read it. But how do you plan of fixing it? If you pass through the Arduino it will probably add it’s own noise and latency

    • @PowerScissor
      @PowerScissor 5 лет назад

      @@GearDownForWhat Not sure I'd be capable of fixing anything...beyond me. They're for my daughter's RC toys...and there's anomalies where the model does unintended things. I figured your setup would show me if those are actually signals coming from the tx...or problems on the model side. Mainly just curiosity, as I don't know enough about electronics beyond "fixing things until they're broken"

  • @Darkassassin09
    @Darkassassin09 5 лет назад

    Instead of relying solely on the gyro+accelerometer when staying still why dont you also remember the spot you came to a stop at and try to maintain that spot based on how far the wheels rotated.

    • @GearDownForWhat
      @GearDownForWhat  5 лет назад

      I could totally do that once I get the Odrive talking to the Arduino over serial. That is a work in progress though :)

  • @treechoper21
    @treechoper21 5 лет назад

    do you just print everything with the same darkish green filament?

  • @StopaskingformynameYouTube
    @StopaskingformynameYouTube 5 лет назад

    This could have been made SO much easier with a flightcontroller and betaflight with autotuning.
    Sure you would miss out on the coding stuff, but if the entire mission is to create a self balancing thing then that would be easier, cheaper, faster and more intuitive.

  • @matmamat9690
    @matmamat9690 5 лет назад

    BRO MAKE A RC CAR ALIKE MINI SCALE WITH BODY CHASIS, ENGINE, GEARBOX OF YOUR OWN PATENT AND YOUR CREATIVITY. THEN YOU ASSEMBLE THEM ALL ONE BY ONE OF EACH VIDEO OF PARTS OF THAT YOU MAKE... SERIOUSLY IT WILL BE GREAT TO SEE..N LOVED IT!! THANKS👍👍👍🤔😀

  • @tibimarin
    @tibimarin 5 лет назад

    Aren't those batteries too heavy to have them on the top like that? I mean I get the idea of using that weight to balance it, but once it tips one way, won't it just start wobbleing itself out of balance again?

    • @GearDownForWhat
      @GearDownForWhat  5 лет назад

      It might be counter intuitive, but the higher the weight, the better

    • @tibimarin
      @tibimarin 5 лет назад

      @@GearDownForWhat I think I understand the idea of it, but that means the machine would have to continuously balance itself so it doesn't topple over, wouldn't it be easier if it would balance itself mechanically by having a low center of gravity instead? I guess that kinda defeats the whole "balancing car" spiel, but I'm thinking of it kinda like a Segway or a hoverboard.

    • @tibimarin
      @tibimarin 5 лет назад

      @@GearDownForWhat or even keeping the idea of it having more mass on top, but having a much wider base, basically having it shaped sort of like a pyramid. (I'm not an engineer, just a dumb kid with a flawed opinion)

  • @normcaissie5598
    @normcaissie5598 5 лет назад

    did you try lowering the sensor to the middle or lower?

    • @GearDownForWhat
      @GearDownForWhat  5 лет назад

      Position shouldn't matter, its only measuring the angle of the car

    • @evertchin
      @evertchin 5 лет назад

      @@GearDownForWhat it should matter, i think less corrections are needed as the gyro/accelerometer will react sooner & wilder the further away from the wheel axial hence the overcorrections you're getting and not able to remain stationary.

  • @spartanboxing1
    @spartanboxing1 5 лет назад

    Just remember me ok, I've made billionaires from consulting them on their design. You need only one wheel and a constant gyrating flywheel in the middle. Start with the two wheel model you have then move on to the one wheel design. Contact me later after your'e a billionaire and thank me ok?

  • @aerotro
    @aerotro 5 лет назад

    Use Mercury Tilt Switches the Gyro will move over time but tilt switches rely on Gravity so will be a constant angular reference point.

  • @kadebrown6162
    @kadebrown6162 5 лет назад +2

    307 views 33 mins

  • @jacekgrzybowski5427
    @jacekgrzybowski5427 5 лет назад

    If you want to steer speed instead of acceleration just calculate the derivative of the rc input.

  • @rednecknation3830
    @rednecknation3830 5 лет назад

    You should build a gearbox strong enough to lift a car

  • @seeker4430
    @seeker4430 5 лет назад

    Wow isn't that awesome! Now let's make a Segway or a hoverboard

  • @maxmoq8423
    @maxmoq8423 5 лет назад

    Just a suggestion, we prefer quality over quantity. If you need to delay an episode to get everything finished, then please do it. It will make for much better content.(Just look at ThisOldTony). Upload schedules are a thing of the past I believe.