Building the 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!
  • РазвлеченияРазвлечения

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

  • @willowotter
    @willowotter 5 лет назад +16

    man this whole project went together so smooth. Its like you planed ahead or something.

  • @mujikag
    @mujikag 5 лет назад +24

    Keysight give this man an oscilloscope!

  • @the42the42
    @the42the42 5 лет назад +5

    Power Isolation, Optical Isolation, Capacitive Decoupling, Pull-Up/Down Resistors, Shorten Wires, Metal Tin Enclosures, lots of old school options.
    I love this project, and your channel! I can't wait to see where they go! =^.^=

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

    Something that I am not sure if is discussed in a future video, or is someone had discussed this, but when I did a balancing robot several years ago, it was crucial for us to bring the center of gravity as low as possible, and to place the accelerometer as high as possible. The lower center of gravity causes a lot lower torque at the wheels, and the higher accelerometer allows the microcontroller to be able to read smaller movements, which in turn allows you to respond a lot quicker.
    Not sure if that helps, but that is what I did before.

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

    You might try twisting the high current wires between the O drive and the motor and between the O drive and the battery. Twisting these wires together causes their net magnetic field to be close to zero. Run each bundle through a ferrite core to get rid of high frequency noise. Also put the gyro lines through a ferrite core. This should reduce your interference issues.

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

    If noisy powerlines are a problem, use an optoisolator (ebay has loads of them for cheap, look for 4-channel opto-isolator TLP281) on the comms like between the Arduino and O-Drive, and use a nice clean power supply for the Arduino. Alternatively, buy or create your own DC to DC converter and use some nice big caps to help with smoothing. But I'd go for the isolated option which will eliminate powerline noise and comms noise (for some value of eliminate).
    Kalman filters are surprisingly easy to implement, and could be better than a simple moving average for when there are genuine spikes in the data. The moving average will tend to blur the signal and reduce its amplitude. TBH, the PID should be able to cope with fairly noisy data anyway.
    Also, it looked like the wheels were spinning at one point, which could be caused by the high torque and the loose-fit tyre. I'd go looking for a smaller ID o ring and make it a snug fit, or take them off entirely and use a rubber mat or similar as my surface. Or even put a bead of hot glue on the rim to increase its diameter, then put the o-ring on that.

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

    for your noise problem, google decoupling capacitors.

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

    This was amazing and i love all the 'bloopers' left in. Very well done!

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

    Small suggestion.. Add traction to your wheels. (rubber, something similar in texture etc). Not even close to your actual problem, but you'll be surprised how much it helps.

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

      The wheels do have rubber. It’s a plastic wheel with a rubber o- ring. Super grippy

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

    If you made something really solid, you could test it with your snake bot to move it, but alway put more weights undet the center of gravity
    This could be really cool

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

    Test your Gyro and Ardunion without Odrive. If this is fine,
    you might have problems with the powersupply. If the powersupply
    for your MEMS Gyros or Adrduino are not stable you cant work.
    Try two different batterys. One for Gyro and Ardunio, one for
    Odrive and Motors. When this runs fine, you can work on PID.
    Increase first P (proportional) until it starts to shake. Then
    make a deadzone for P. (for example ignore values lower 10/-10).
    You will see, you can make P with this much harder. Then add
    I (integral) step by step. Normally you dont need D. For I, you will need
    also an acceleration sensor, to compensate drift. A simple
    comparisions still works fine. To make a good drift compensation,
    you will need time (compensate vehicle accelerations etc).

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

    Hang in there Ross, I wanna see that thing balance :)

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

    Suggestion: add a button and read the pots when the button is pressed.
    Would some decoupling capacitors help with the 12V power to the Arduino?
    The balancing protector bars are inspired.
    Progress is good!

  • @creativephilip4360
    @creativephilip4360 5 лет назад +5

    Hey, I have a very cool spreadsheet that simulates a PID, also the problem that you seem to have isn't the angle but the regulator is not set up properly and those big overshoots are the effect on that. If you want the spreadsheet just shoot me a message, who knows it may be useful for you.

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

    You have to made a Faraday cage with aluminuim and a cable fixed only on one side to evacuate the interférences each éléments separed by aluminium between could work

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

    I like ur projects ..specialy the transmition systel you made..respect from morocco

  • @user-pf9pc6pd1s
    @user-pf9pc6pd1s 5 лет назад +2

    gotta say i love the color branding you got going, its such a nice and pretty green! ᵘʷᵘ

    • @sebassanchezc-1379
      @sebassanchezc-1379 5 лет назад

      Maybe John Deer would like to have a robot rolling around 🤔

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

    The solution is to made two big wheels with the graviti center on the top of the ensemble and a transmission to the motors
    In that case, the weight will be support by the top
    So it will stay straight on is wheels
    I hope you will appreciate this solution ;-)

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

    dang. he must've planned ahead

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

    lol 🤣 "[i've made a bunch of other changes to the program which is] always a really good idea, uh, to make a bunch of changes without having any type of control"

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

      also perhaps you could decouple the common ground and the pwm using transformers of some sort? I'm no EE but I think I recall that being a thing to decouple ham radios from a computer audio interface for doing transmissions using a computer sound card.

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

      @@lollubrick a PC almost always has a grounded chasis (laptops are bit more complicated), so if you were to connect it to a radio which is also grounded, you'd form a ground loop. No need to isolate things so much, you just have to make sure your grounds meet in a single point, no loops.

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

    I'm glad that your first try didn't balance any better than mine did

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

    Boston dynamics. Watch out for this guy. Cool videos. Even if there over my head.

  • @Wombbatts
    @Wombbatts 2 года назад

    faster filter: present value * .98 + new value * .02. adjust ratio based on execution frequency

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

    Nice! Also make shure tge center of gravity is good during testing. Cross off all physical properties and the tuning will be easier

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

    Looks like a ground problem to me. Use additional caps and thicker wires.

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

    Great progress so far. If you want to get rid of the EMV problems use sceened cables and connect the shild to ground. Do you demmand torque (current) from the Odrive or speed?

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

    The issues you are having are a result of the type of system you are trying to control. You have an underactuated system i.e. single input multiple variable you are trying to control (you should do some research online of these kinds of systems) You need to prioritize your angle over the translation and thus allowing your robot to move laterally in order to "catch" the angle. I.e. allow x to be nonzero in order to keep angle to be zero. I actually did a project like this but it been a while since I did it. I used the minseg. You could also look up the minseg and try to use their resources for balancing it.

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

    try gearing down the wheels for better torque

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

    There are versions of the Arduino I2C library with a timeout - so it does not hang - but in your real time situation any delay over a few ms is going to be a disaster. Logic analyser (in another comment), set off on ebay around $5 (Saleae) use with (free) Pulseview. Combing gyro and accelerometer is a field known as sensor fusion. It not working (at the start) looked like a triumph for analogue electronics - all the dark arts of decoupling caps, ferrite beads. 'scope well worth having - there are kits for $15 on ebay, better than nothing - proper one much better. Or online free software use PC sound card.

  • @sebassanchezc-1379
    @sebassanchezc-1379 5 лет назад

    That robot is trying his best to learn. Please, he needs more compliments each time you see progress 🤔

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

    maybe the integrator has an averaging effect that would help, if it's a running sum

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

    Would it be possible to 3D print a starter for a car or truck?

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

    You might check out the Analog Discovery from Digilent - it's a pretty useful/low cost USB o-scope/function gen/logic analyzer - used it a lot when I took electronics

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

    I think a Capacitor is how you remove voltage side noise, and I'd try a diode at the ground side of both the Arduino and the O-Drive. check electronics.stackexchange.com/questions/95140/purpose-of-the-diode-and-capacitor-in-this-motor-circuit (I've fried arduinos with much smaller motors, before I learned about kickback voltages)

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

      Also, this was handy for me to learn PiD tuning. ruclips.net/video/VVOi2dbtxC0/видео.html

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

    10:35 so go to your nearest Hackderspace and use theirs.

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

      Nearest hacker space is probably in Chicago. 12 hour drive away

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

    The "training wheels" are a really good idea! It's also awesome that you're so honest about the things that didn't work out.
    About the PID value ranges: using a logarithmic scale would probably be a good idea so you could experiment with different orders of magnitude on the fly. Also, what if you just mechanically change the angle of the accelerometer. Shouldn't that fix the error in the initial value? Whenever I'm tuning a pid controller manually, I watch this video a couple of times and ponder what would Kevin Lynch do. ruclips.net/video/uXnDwojRb1g/видео.html
    Using shielded cables and decoupling caps as suggested in the other comments is a good way of battling interference. What I've done, since I usually don't have shielded cable laying around, is twisting the current carrying cables (twisted pair), making them as short as possible and routing other cables far away from them.

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

    You need to talk to steviepax about the programming and balance. He will beable to help

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

      Looks like a gaming channel

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

      @@GearDownForWhat sorry i was thinking of the wrong person. I meant to say James Bruton. Iv seen a few of his videos and he seems like he is good a programming . He has a couple of contact links in his About section of youtube. You might also try Michael Reeves. He is a programmer and software designer. Hope this helps

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

      Haha we all know what Michael reeves would make it into.

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

    the problem is you are trying to change too many variables at once.
    my suggestion is, you need to rule out a few variables first. the first variable to rule out is to simply hardcode a balanced position manually first (simply hold it in place and get the readout via serial). it seems like it had trouble determine the "balanced" position in the first place.

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

    Hey Buddy Down For What
    I have a uni project to make a vegetable cutter (a little overpowered) have a better performance. I thought about using the same potentiometers you did on the PID system to be able to control the speed of the motor, the problem is I'm not sure if it's the better thing to go for, or if it'll work at all. I know I'll have to deal with 220V and around 2,5 amps to get the maximum speed from the motor and I'd like to be able to reach close to half this speed. Do you know if that kind of electronics can effectively control universal motors? A tutor of mine advised me to have speed modes (like low/med/high) through buttons, but for high production's matters, I'd preffer to keep a cheaper solution, and avoid electrical boards of any sort.
    Sorry if bad english
    Big hug from Portugal! Love your videos!

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

    GDFW You probably need to make a RFI choke find a small toroid core and wind 2 coils on it and use one for supply voltage and the other for gnd if you use say about 13 turns of thin 32 AWG wire the noise on the power lines / or signal lines should be negated if not try connecting one of the coils the other way around, I made such a choke for getting rid of high voltage noise from my electrostatic filter it does work. Also search online for making an RFI choke. For example here is a simple easy way to eliminate interference ruclips.net/video/LuMlM8zWQFk/видео.html

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

    You're coming to #MRRF2019 right?

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

    You need music to your vids my bro, it'll increase the quality a tonne, even if its just during the lapses

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

      I normally have it, I was too busy to do it on this one

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

      @@GearDownForWhat That sucks, I imagine it's a lot of work that goes into having something to say to the camera on top of everything else!

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

    You can buy oscilloscope multimeter online for around £70 $91.12

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

      Will those work as a logic analyzer also?

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

      @@GearDownForWhat I don't know I am not verry good with electronics I am guessing they would but I have no clue

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

    Keep going dude. You got this bitch!

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

    Leroy jenkins

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

    So I've been watching you for a while... I have no idea what it is your talking about. But that's because I don't know anything about gears ratios are things like that. Anyways I have no idea if this would be helpful to your project but have you ever used a raspberry pi computer? They can be programmed to do all kinds of things. Anyways keep up the good work. I really enjoy watching your videos so yeah.

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

    Is green your favorite color?

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

    Join the Discussion on Reddit www.reddit.com/r/arduino/comments/azjop1/i_cannot_make_this_car_balance_can_you/

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

    Nice fail, keep trying.
    1st put batteries down together with o-drive then put sensor and arduino on top, 2nd use dc-dc converter to power arduino and sensor. Also in your sketch dont balance it on 1 degree give some buffer 2-3 degree, then work from there. Someone also said in comments and I agree with him, on start zero in sensor by taking several readings before you let it go. Maybe even put sensor on 20-30 cm stick on top of robot, you will have much bigger tolerance.
    Arduino use 12 V or ltl more to step down dc voltage if y put 24 V y will kill it or it will shoot down it self, with melt fuse and come back when it cools down.
    Good luck and keep trying, like to see how this gone work in end.
    ps. gyro sensors are bad for this purpose, good only if your robot is gone move on perfect flat

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

    2 dislikes already... why

  • @VLS-Why
    @VLS-Why 5 лет назад +15

    Ugh pounds as both the mass and force. Why not use grams and Newtons, it's much clearer

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

      VLS-why? because pounds of thrust and weight have been in use for centuries, and because we just like to defy!

    • @VLS-Why
      @VLS-Why 5 лет назад

      @@Quickened1 All I'm saying is I design chips in nanometers, not thou

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

      VLS-why? cool...to each his own...