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! - Развлечения
man this whole project went together so smooth. Its like you planed ahead or something.
Keysight give this man an oscilloscope!
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! =^.^=
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.
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.
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.
for your noise problem, google decoupling capacitors.
This was amazing and i love all the 'bloopers' left in. Very well done!
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.
The wheels do have rubber. It’s a plastic wheel with a rubber o- ring. Super grippy
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
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).
Hang in there Ross, I wanna see that thing balance :)
I do too. It’s a hard think to do
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!
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.
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
I like ur projects ..specialy the transmition systel you made..respect from morocco
gotta say i love the color branding you got going, its such a nice and pretty green! ᵘʷᵘ
Maybe John Deer would like to have a robot rolling around 🤔
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 ;-)
dang. he must've planned ahead
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"
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.
@@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.
I'm glad that your first try didn't balance any better than mine did
Boston dynamics. Watch out for this guy. Cool videos. Even if there over my head.
faster filter: present value * .98 + new value * .02. adjust ratio based on execution frequency
Nice! Also make shure tge center of gravity is good during testing. Cross off all physical properties and the tuning will be easier
Looks like a ground problem to me. Use additional caps and thicker wires.
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?
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.
try gearing down the wheels for better torque
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.
That robot is trying his best to learn. Please, he needs more compliments each time you see progress 🤔
maybe the integrator has an averaging effect that would help, if it's a running sum
Would it be possible to 3D print a starter for a car or truck?
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
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)
Also, this was handy for me to learn PiD tuning. ruclips.net/video/VVOi2dbtxC0/видео.html
10:35 so go to your nearest Hackderspace and use theirs.
Nearest hacker space is probably in Chicago. 12 hour drive away
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.
You need to talk to steviepax about the programming and balance. He will beable to help
Looks like a gaming channel
@@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
Haha we all know what Michael reeves would make it into.
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.
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!
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
You're coming to #MRRF2019 right?
You need music to your vids my bro, it'll increase the quality a tonne, even if its just during the lapses
I normally have it, I was too busy to do it on this one
@@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!
You can buy oscilloscope multimeter online for around £70 $91.12
Will those work as a logic analyzer also?
@@GearDownForWhat I don't know I am not verry good with electronics I am guessing they would but I have no clue
Keep going dude. You got this bitch!
Leroy jenkins
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.
Is green your favorite color?
Join the Discussion on Reddit www.reddit.com/r/arduino/comments/azjop1/i_cannot_make_this_car_balance_can_you/
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
2 dislikes already... why
Ugh pounds as both the mass and force. Why not use grams and Newtons, it's much clearer
VLS-why? because pounds of thrust and weight have been in use for centuries, and because we just like to defy!
@@Quickened1 All I'm saying is I design chips in nanometers, not thou
VLS-why? cool...to each his own...