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! - Развлечения
Dude, you're a genius, I know I say that every time...but mind blown on your fabrication and creativity.
awe! thanks! 😁
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! 😁
Interesting tip. I was thinking the opposite so it amplifies the distance of the inputs..
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.
C truncates or removes the decimal. No rounding at all; that is to say float 1.9999 ~= int 1
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.
Teaching your child to walk, I mean, roll! xD
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 :)
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.
@@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 :)
@@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.
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
@@GearDownForWhat Sure, just to make sure, you are using an Arduino mega 2560 right? Because the code will differ for the different Arduino versions.
Jesus, I didn't think it'd work out this well. Awesome.
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!
Oh, and smaller wheels may help as well reducing their spinning mass and angular momentum, which does not help!
Your channel deserves M subs
Nice work!
Now put inverted pendulum on top of it!
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 ….
I was thinking more of a bobblehead .
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
I'm curious if changing the pull up resistor values on the i2c lines to pull up "harder" could help with the interference.
“You forgot to plug the board in, see you in 5 minutes” this is the truest sentence I have ever heard.
haha, it pisses me off. like why can't there be a cancel upload button?
@@GearDownForWhat I call it ALT+F4.
Unicyclists and stilt walkers balance in that they never stop moving.
If your tires slip any at all from the surface they are touching you will have serious problems, use rubber to grip better.
It’s actually really grippy tires on it, they are o-rings!
16:20 Sh*t! The moment it falls and you see the little piece flying! :-((((
Good job
Sweet! It balances! Eventually this thing is going to haul ass. :)
Haha I sure hope so!
Neat. I am trying to build a single wheel self balancing bot!
What's the name of the song that plays between 3:45-4:30? It's really catchy.
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?
Have you ever thought of using two depth sensors on both sides to help keep it from moving? Not necessarily to keep it level
on a flat surface they wouldn't change
I pissed my pants
awesome!
hey thanks adfaklsdjf 👍
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.
It’s an Arduino board with the value being read, converted from PWM to an integer, and they printed in the serial plotter.
@@GearDownForWhat Thanks! So the receiver needs to be PWM output and not something like SBUS?
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
@@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"
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.
I could totally do that once I get the Odrive talking to the Arduino over serial. That is a work in progress though :)
do you just print everything with the same darkish green filament?
yes
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.
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👍👍👍🤔😀
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?
It might be counter intuitive, but the higher the weight, the better
@@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.
@@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)
did you try lowering the sensor to the middle or lower?
Position shouldn't matter, its only measuring the angle of the car
@@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.
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?
Use Mercury Tilt Switches the Gyro will move over time but tilt switches rely on Gravity so will be a constant angular reference point.
307 views 33 mins
If you want to steer speed instead of acceleration just calculate the derivative of the rc input.
You should build a gearbox strong enough to lift a car
Wow isn't that awesome! Now let's make a Segway or a hoverboard
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.