I actually really like how you explained the PID loop! I've been flying FPV drones for years and I genuinely didn't know what each of them technically did on a mathematical level; all I knew was that P makes it react faster, I makes it hold the position harder, and D dampens it.
Your recap of the recap actually helped ME. :D been flying fpv for ages and I never quite got the pid stuff, not even after James' explanation - maths just doesn't make it through my skull. Just one thing - what do you mean with "dampens it"? Of all the values D has always been the most imperscrutabile to me.
@@fallingwater from wikipedia " It aims at flattening the error trajectory into a horizontal line, damping the force applied, and so reduces overshoot (error on the other side because of too great applied force)." It basically is a term that lessens the impact of I so that it does just a little bit less. Which as you get closer to the target has a bigger effect.
@@fallingwater Think of Proportion as what controls and counteracts positional and instantaneous changes. Integral as what counteracts and controls constant force such as an imbalance or wind. Derivative as what counteracts, manages, and controls acceleration and deceleration. Limits max acceleration, and begins decelerating at the correct time and force to allow the system to stop or balance right on the money. This needs to be tuned based on how much mass there is in relation to the amount of force you can apply along with your P and I limits to keep the system from going too fast and/or too short of a distance in that it can't stop in time and overshoot or so that it doesn't undershoot.
In a PID control loop, the Proportional factor looks at the present feedback value and sets a base output based on that. The Differential factor looks at the current trend (differential) and predicts the future and thus corrects for the future error. The Integral factor looks at the past and the accumulated error and corrects for that.
The beautiful thing about PID controllers is that they're so easy to work with. In my Feedback Control Systems class our professor explained PID controllers, then after that test he told us "now, everything else we're going to talk about from here is nice and interesting, but in every practical system you'll ever work with you're just going to set up a PID controller and tweak it until it works".
@@ltjgambrose Did your professor talk about automated tweaking? I was surprised to hear James Burton say that he tweaks the weights by hand. It seems like the perfect thing for a neural net to train on.
the guy basically run a 3D printing shop 24/7! i was wondering about the life-span or a 3D printer before, i think he is constantly proving they are almost invincible. if James see this, what nozzle size are you normally using on your projects?
The disadvantage of reaction wheels is that you need to change stored energy rapidly (at the control signal rate). Gyros have stored energy, which stays constant. So you need a power source with the ability to output high powers at the control signal rate. Your "centering" loop & the integral part of the PID loop are the same thing. You should be able to do everything with the I term for centering, & not need the separate centering code.
@@profBricks Gyros are much simpler from a control aspect. In the short term, you need to do NOTHING to keep the craft upright. The control algorithm needs only respond to "slow signal" to keep gyros from running out of range.
Watching you makes me depressed. You achieve so much! Your Incredibly smart. I've achieved nothing. Lol. Awesome content an builds! I look forward to your future builds
Another great project James. When you turn the power off and it rests diagonally on it's side it would be amazing if it could get from this position to balancing under it's own steam (i.e. without you standing it up). In one of your earliest tests it goes from that position to tipping over in the opposite direction so it at least has enough acceleration to get it up to the balance point but whether it can then catch itself would perhaps need some adjustment to the PID controller but would be pretty cool to see. 👍
I feel just the opposite, it's amazing how much stuff here _doesn't_ need to be 3D printed, and could be made more quickly with conventional sawing and milling techniques! But, those machines are larger, and need more attention while they're running, whereas a 3D printer is relatively fire-and-forget. As long as things are being 3D printed, it's almost a waste not to take advantage of FDM's ability to tune the interior and exterior structure, not just with infill and shells, but outright FEA and topology optimization. They'd print faster and be stronger, but it'd require a lot more CAD at the outset so it's understandable that nobody bothers. Still feels goofy to make a solid rectangular slab on a 3D printer, though.
@@myself248 I mean, when you roll into mass production with somewhat of an end product in most cases you wouldn't want to use 3d printers. But when you are in the process of engineering a piece, the 3d printers are great to make your prototype into reality fast and cheaply, which helps to harness creativity. In this video he makes a proof of concept rather than a full robot or selling product. And what he's doing would've been harder without a 3d printer. Edit: My point isn't a contradiction to your comment, rather I tried to show why 3d p. might be better in his case
I feel like James has way too many projects going on simultaneously. I miss the days where James had one project that was updated a week. Like hulkbuster, ultron, etc.
Could you do a video explaining the observation controller more? A quick google search doesn't seem to yield much of anything relevant to control theory, and it's the first I've heard of this controller type at least under this name. I saw another comment you replied to mentioning a balancing robot that could adjust to an offset payload that it picks up or has placed on it, maybe along the lines of Boston Dynamic's Handle robot. I haven't really seen many or any (other than BD on Handle) videos on this sort of thing, let alone any that explain or document it in the way you would. I would love to see a video on the topic.
Excellent video. You can try larger mass in a-symmetrical distribution, then the wheel only needs to turn slightly to balance and you won't have the gyro effects.
I don't love the PID explanation as it's a little misleading. Although it's possible to stabilise an inverted pendulum with a PI controller, it's not typical like you say. You'll have much better results with a PD controller, with optional I term if it's not going to be ridden by a person. P term: Bias system towards setpoint D term: Bias system to stay where it is, resist movement I term: Correct for persistent disturbances over time e.g. wind, added weights On a self-balancing electric rideable, you actually cannot use the I term, as the human rider will subconsciously perform the I term correction and the human and controller end up fighting each other and tipping over. For a clearer explanation of PID controller and tuning see this video: "Electronoobs: PID Balance+Ball | full explanation & tuning"
Nice video as usual, I have a suggestion for the one wheel balancing robot why not use a ball that has rubber rollers to drive the X and Y axis separately imagine an old school ball mouse but instead of the user/ ball driving the rollers the rollers would drive the ball. The ball could sit on top of ball bearing balls
@@ModerateDev I'm like 99% sure there was at least one version where he had an empty foam ball and the head did a balancing act on top using rollers. In fact I remember he added ball bearings to the middle to try to make it balance better. Unless I'm thinking of Matt Denton, I can't remember if he did BB8 things as well...
@@clonkex The head balances on top with a strong magnet mounted to the frame on the inside though no? like yeah there's rollers but they're no driven, could be wrong haven't seen his BB8 video but that's generally how its done. But like I said I know he's done similar things before but I haven't see him do what I suggested then again I have not seen all of his content xD
Pretty clever, I thought. Knew about the widgets that correct for wave action on boats. If not for these last ideas, most would be seasick on vacation boats.
the idea of not using the motor itself instead of the motor driving a flywheel add weight to outer rim of the motor I'm sure you wont need as much weight but a lot less then a flywheel driven by a belt thus the motor itself would be able to respond more faster and more accurately......
Hey bud just to let you know a gyro on a ship is not use to balance a boat but used for navigation. The position and orientation of a ship relative to a known starting point, orientation and velocity we call it a gyro compass. It's more reliable then a magnetic compass because marantic north moves.
Hey bud just to let you know: when he talks about stabilizing gyros on a boat he his talking about stabilizing gyros. He is not talking about gyro compasses.
those reaction wheel balancers that stand up on a stick look like they should be able to move by hopping. Wind up, tilt, launch, rotate, land and reblance
Way off topic. I've always wanted to see a modular robot. Imagine a small drone that you could controll that could in turn controll other robots it lands on. You could build it a few types of bodies to play wilt like a car body and a hexapod body and a balanced humanoid bodie. Idk no real hopes of making this myself but if anyone could it would be you. Even if the controll bot didn't fly and was just a head you could snap onto different bots manually it could be cool to have and see.
Hi there, I'm a hobby machinist with a neuromuscular movement disorder characterized by constant muscle contractions. I've been tracking the evolution of exoskeletons as I believe this would be an ideal treatment for me. I don't have any weakness, just a great deal of unintended motion. No company will work with me on prototyping due to liability concerns. I'm stumbling my way through learning this stuff, I'm not very tech savvy, and hope to one day make an exoskeleton or at least a few portions. I believe that the spinning Mass principle displayed in your last half dozen videos will necessarily be the heart of this device. I was wondering if you could recommend other resources for beginning learners and I don't know if it exists, but software that would allow me to test designs without building one first. Secondly, I wonder if you can point me in the direction of any relatively affordable existing products that utilize this principle, that I might be able to source parts from. I'm not new to prototyping nor product development, but I'm a complete novice with all things computer. Lastly, I don't particularly think a 3D printer is a good match for my needs, but if the software I referenced does not exist, do you think a 3D printer would give you useful results using it to trial and error various designs? Are the properties of the filament print analogous to wood or some particular alloy? I realized that I'm asking a ton, I certainly don't expect you to provide all of this. I figured if I throw all of my questions out there it might give you a better idea of what level of understanding I have and the best place to point me to. The other reason is in hopes that other viewers happen to read this comment and opt to offer a suggestion. It is a bit cheeky, but I figured it's definitely not going to happen if I don't ask. Thanks very much whether I hear from you or not. Your videos have been enormously helpful, you explain things in a way that is very effective for me, thank you. I don't think I would even consider taking on a project like this if I had not seen a handful of your videos. You explain concepts and programming in a way that us old guys who are mechanical can really grok
The notion of "the reaction wheel has to go faster until it can't anymore" sounds like something I heard of in terms of spacecrafts with reation wheels, basically from what I understood they had to shut them down and realign the satelite via thrusters before they reangaged the reaction wheels.
Shouldn't the pid be better to tune to make the output not the motor speed but the motor acceleration? S Think about it this what if the whole thing is tilted 5° you would expect a proportional controll to apply 5units of force for restoring the position. In this case tho the thing starts to spinn at a certain rate giving you a restoring force proportional to the rate of changes (like a differential normally does). Meanwhile the integrator creates a accelerated proportional to the tilt and thus a restoring moment proportional to the position of the system.(like the proportinal part normally would) and the derivative reacts to the rate of change by giving out a constant rotational speed so you apply a force portional to the rate of change of the rate of change(kinda weird). So basically you have only a pd controller. My suggestion would be to let the controller controll the acceleration of the motor by integrating the output of the controller and thus controlling the output force directly. Ps: the problem with the system trying to always spin up is because the pd controller you use doesn't integrate error and never is able to return to a set point.
Let's say you had two reaction wheels with offset mass that rotate in opposite directions. In one half of the rotation you accelerate the mass, the other half you decelerate. Could you get a reaction force pulsing continually in one direction?
No. You could get the reaction to be linear, and depending on the difference in acceleration/deceleration you could have the force applied in one direction harder and shorter or weaker for longer than the other, but the reaction would still be in alternating directions and the total work done in each direction would cancel out. For an intuitive understanding, that layout is how dualshock game controllers generate vibration.
@@idahocartwrights what if you limited it to a single axis, like with a car? Then you could dump the energy into “another dimension” where it wouldn’t matter.
@@float32 I'm not entirely sure what you mean, but it is possible to turn vibration into forward movement against a surface once you include friction and gravity. If the linear back-and-forth movement is diagonal, and you can push off the ground without slipping, then you can jump forwards, rinse repeat.
@@idahocartwrights This is kinda of interesting then because you could control the direction of the impulses, creating a haptic sense of direction in the controller, rather than buzz BUZZ buzz.
Phenomenal job James! You in fact helped me with a project I'm working on! Particularly the reaction wheel becoming saturated over time. Your solution is elegant and I love it! Is there a specific reason you chose to use the HTD belt reduction over direct coupling of the reaction wheel to the motor? I would imagine to make the strain on the motor considerably less as that's quite a bit of mass being handled. Also, is there any chance you could provide some insight on your configuration of the ODrive? That has got to be one of the most tedious parts for me.
Can you try putting some extra weight on one side of it to see if it handles that well too? It seems like the automatically moving set-point should be able to compensate for that as well.
Hey James.. you might say youve already done this.. can you calculate the idle balance/drop point, with the pid code...to determine how the actual mass deviates from the center of gravity..
Would you consider doing a video where you talk about the techniques you use to 3-d print mechanically strong parts? Thank you for another great video!
I've watched so many of your videos. Always such amazing engineering and creativity in every project. I have a question, what do you do with all your old parts? Does anywhere in your city accept them for recycling?
I wonder, if you were to mount two or three reaction wheels on a rotating frame, parallel to the reaction wheels, could you use the reaction wheels to add energy to one side of the frame's rotation and remove it from the other, providing a net force in one direction...?
Force control is actually what would be desirable for applications like that. However for that to work properly you need to create a decent mathematical model of the system dynamics, which is not as simple as using just a pid controller. Also pid controller often do a reasonnably good job.
@@fabianaufdermaur6051 since controlling the acceleration rather than velocity is 1 step closer to force control and thr odrive supports acceleration control. Would it not be free stability to use the simplicity of a pid to control the acceleration rather than velocity? Or does it not work like that? Why not just set accel = x rather than set vel = x?
Well you first have to calculate what acceleration you actually want. Which you do with a dynamic model of the system. After that you are correct you can use the acceleratio.
I realize this question would require a great deal more data to answer precisely, but I'm wondering if there is a quick rule of thumb on the subject. Some of these that you have shown are constantly spinning and change their speed or orientation. Others REACT to external stimuli and attempt to correct with the least motion possible. Of these two designs, forces in the human weight range, which one would likely be more energy efficient?
Great video, I always love anything with PID control. But just a thought here. Since it's not the speed of the wheel but the acceleration that provides the righting force, would you get more torque and righting force by reversing the gears? A large gear on the motor and small one on the wheel (or at least 1:1), the motor 'sees' a much larger moment of inertia and could then generate a lot more righting torque? Or at the very least, a more equal gear ratio would allow you to use less mass on the wheel if you want to get the overall size down. Of course the wheel's top speed would be higher and you might have the same gyroscopic precession problems, but it seems like it would be fun to try.
Fascinating channel that TH-cam threw my way. Good content. I have a question regarding the tuning of the PID controller; could you, in principle, create an evaluation function that tunes the PID automatically? I've never worked with robotics, so just looked it up on Wikipedia just to have some idea of what might exist, and it lists a couple of methods that look like they could be used in this way. If so, you could then use the same code to control any arbitrary robot, provided the control system is sufficient.
Could you make a "box" robot that uses the reaction wheels to balance on the corner, but also to make it flip on it's sides to allow it to move? i know, completely useless, but still would be interesting to see.
What about using a smaller wheel but with Brass nuts and bolts cause they can be heavier, since you said you where concerned about the size of the wheel. Anyway love your channel, thanks for posting.
@@jamesbruton no I understand how that can be, but I was thinking about in one of your smaller Omni wheels for space. Either I'm locked in to watch, I really enjoy your videos. Thank you
at 10:52 you say the reaction wheel "can only exert force when it is accelerating or decelerating". Is that really true? I understand the force is greatest when accelerating, but doesn't it always exert some counter torque when spinning? I am trying to build a simple three wheel cart that steers with a reaction wheel, using only an RC speed controller instead of real motor drive and was counting on that effect.
Yes it's always true. If you hold a fan while it's running it doesn't try to spin out of your hand. But if it's accelerating it does try to twist. This is most easily felt with a high power computer fan.
This would have been the perfect opportunity to do some proper PID tuning based on a mathematical model. Your projects are great, but as a robotics engineer, my heart is hurt when you do this kind of trial and error stuff... :)
Hey i was just looking through some designs on the internet and i came across a what was basically a treadmill with smaller belts that went across horizontally to make it omni directional allowing the user to run 360 degrees now i dont know how well it could move on the ground and it sounds hard to make but it was just a thought. Somehow make a omni directional tank? Lol
HI, James. I love your channel! Say, what about a tuned mass damper working either independently or, in concert with the control system? Would this not be more energy efficient?
I actually really like how you explained the PID loop! I've been flying FPV drones for years and I genuinely didn't know what each of them technically did on a mathematical level; all I knew was that P makes it react faster, I makes it hold the position harder, and D dampens it.
Your recap of the recap actually helped ME. :D been flying fpv for ages and I never quite got the pid stuff, not even after James' explanation - maths just doesn't make it through my skull.
Just one thing - what do you mean with "dampens it"? Of all the values D has always been the most imperscrutabile to me.
@@fallingwater from wikipedia " It aims at flattening the error trajectory into a horizontal line, damping the force applied, and so reduces overshoot (error on the other side because of too great applied force)."
It basically is a term that lessens the impact of I so that it does just a little bit less. Which as you get closer to the target has a bigger effect.
@@fallingwater Think of Proportion as what controls and counteracts positional and instantaneous changes.
Integral as what counteracts and controls constant force such as an imbalance or wind.
Derivative as what counteracts, manages, and controls acceleration and deceleration. Limits max acceleration, and begins decelerating at the correct time and force to allow the system to stop or balance right on the money. This needs to be tuned based on how much mass there is in relation to the amount of force you can apply along with your P and I limits to keep the system from going too fast and/or too short of a distance in that it can't stop in time and overshoot or so that it doesn't undershoot.
Real useful info on the pid stuff there. Im a game designer and well... its something i needed to learn without a lot of helps hehe
@@nyscersul42 Try it out with a physics simulator or in gmod.
In a PID control loop, the Proportional factor looks at the present feedback value and sets a base output based on that. The Differential factor looks at the current trend (differential) and predicts the future and thus corrects for the future error. The Integral factor looks at the past and the accumulated error and corrects for that.
The beautiful thing about PID controllers is that they're so easy to work with.
In my Feedback Control Systems class our professor explained PID controllers, then after that test he told us "now, everything else we're going to talk about from here is nice and interesting, but in every practical system you'll ever work with you're just going to set up a PID controller and tweak it until it works".
@@ltjgambrose Did your professor talk about automated tweaking? I was surprised to hear James Burton say that he tweaks the weights by hand. It seems like the perfect thing for a neural net to train on.
Can't believe James is pulling out a new project each week. Awesome guy and awesome projects
the guy basically run a 3D printing shop 24/7! i was wondering about the life-span or a 3D printer before, i think he is constantly proving they are almost invincible.
if James see this, what nozzle size are you normally using on your projects?
Didn't notice that no I'm really surprized.
The disadvantage of reaction wheels is that you need to change stored energy rapidly (at the control signal rate). Gyros have stored energy, which stays constant. So you need a power source with the ability to output high powers at the control signal rate.
Your "centering" loop & the integral part of the PID loop are the same thing. You should be able to do everything with the I term for centering, & not need the separate centering code.
@@profBricks Gyros are much simpler from a control aspect. In the short term, you need to do NOTHING to keep the craft upright. The control algorithm needs only respond to "slow signal" to keep gyros from running out of range.
Glad to see it works so well, I'd love to see a balancing cube with the ability to jump onto each side causing it to "walk"
What is the difference? Reaction wheels only move when an adjustment is necessary; gyroscopes move constantly.
Love the addition of the tuning info
Thanks a lot I was going to do a video about it, Do Cubli next video
Watching you makes me depressed. You achieve so much! Your Incredibly smart. I've achieved nothing. Lol. Awesome content an builds! I look forward to your future builds
Another great project James. When you turn the power off and it rests diagonally on it's side it would be amazing if it could get from this position to balancing under it's own steam (i.e. without you standing it up). In one of your earliest tests it goes from that position to tipping over in the opposite direction so it at least has enough acceleration to get it up to the balance point but whether it can then catch itself would perhaps need some adjustment to the PID controller but would be pretty cool to see. 👍
Thanks for the tutorial on PID👍
Best explanation of pid control, thanks very much
I actually suggested you on the first omni-wheel video to do Reaction Wheel! :)
new music for the printing montage!!! Finally :"D
Stoked for more reaction wheels
Great PID info and demonstration!
It never ceases to amaze me how much you can do with a 3d printer and a bug of ingenuity.
...and in just one week, week after week!
I feel just the opposite, it's amazing how much stuff here _doesn't_ need to be 3D printed, and could be made more quickly with conventional sawing and milling techniques! But, those machines are larger, and need more attention while they're running, whereas a 3D printer is relatively fire-and-forget.
As long as things are being 3D printed, it's almost a waste not to take advantage of FDM's ability to tune the interior and exterior structure, not just with infill and shells, but outright FEA and topology optimization. They'd print faster and be stronger, but it'd require a lot more CAD at the outset so it's understandable that nobody bothers.
Still feels goofy to make a solid rectangular slab on a 3D printer, though.
@@myself248 I mean, when you roll into mass production with somewhat of an end product in most cases you wouldn't want to use 3d printers. But when you are in the process of engineering a piece, the 3d printers are great to make your prototype into reality fast and cheaply, which helps to harness creativity. In this video he makes a proof of concept rather than a full robot or selling product. And what he's doing would've been harder without a 3d printer.
Edit: My point isn't a contradiction to your comment, rather I tried to show why 3d p. might be better in his case
Thank you for the stellar content as always!
I feel like James has way too many projects going on simultaneously. I miss the days where James had one project that was updated a week. Like hulkbuster, ultron, etc.
It's impressive how simple the compensation for the saturation of the wheel is
Ay finally some new music
What you manage to achieve each week blows my mind, this was a really interesting video
Could you do a video explaining the observation controller more? A quick google search doesn't seem to yield much of anything relevant to control theory, and it's the first I've heard of this controller type at least under this name.
I saw another comment you replied to mentioning a balancing robot that could adjust to an offset payload that it picks up or has placed on it, maybe along the lines of Boston Dynamic's Handle robot. I haven't really seen many or any (other than BD on Handle) videos on this sort of thing, let alone any that explain or document it in the way you would. I would love to see a video on the topic.
You do amazing things with science. Thanks for the videos.
Where did your normal "I am printing music go'? Please go back to it ... love that tune
Excellent video. You can try larger mass in a-symmetrical distribution, then the wheel only needs to turn slightly to balance and you won't have the gyro effects.
I don't love the PID explanation as it's a little misleading. Although it's possible to stabilise an inverted pendulum with a PI controller, it's not typical like you say. You'll have much better results with a PD controller, with optional I term if it's not going to be ridden by a person.
P term: Bias system towards setpoint
D term: Bias system to stay where it is, resist movement
I term: Correct for persistent disturbances over time e.g. wind, added weights
On a self-balancing electric rideable, you actually cannot use the I term, as the human rider will subconsciously perform the I term correction and the human and controller end up fighting each other and tipping over.
For a clearer explanation of PID controller and tuning see this video: "Electronoobs: PID Balance+Ball | full explanation & tuning"
Nice video as usual, I have a suggestion for the one wheel balancing robot why not use a ball that has rubber rollers to drive the X and Y axis separately imagine an old school ball mouse but instead of the user/ ball driving the rollers the rollers would drive the ball. The ball could sit on top of ball bearing balls
That's basically how some of his bb8 droids work in his older videos
@@clonkex They're driven from the inside no? I get it's very similar but having the components on the outside is far more practical.
@@ModerateDev I'm like 99% sure there was at least one version where he had an empty foam ball and the head did a balancing act on top using rollers. In fact I remember he added ball bearings to the middle to try to make it balance better. Unless I'm thinking of Matt Denton, I can't remember if he did BB8 things as well...
@@clonkex The head balances on top with a strong magnet mounted to the frame on the inside though no? like yeah there's rollers but they're no driven, could be wrong haven't seen his BB8 video but that's generally how its done. But like I said I know he's done similar things before but I haven't see him do what I suggested then again I have not seen all of his content xD
@@ModerateDev Found it! Knew I wasn't imagining things. th-cam.com/video/dlwcXgZYImU/w-d-xo.html
Pretty clever, I thought. Knew about the widgets that correct for wave action on boats. If not for these last ideas, most would be seasick on vacation boats.
great domenistration ,thank you
cant wait to see what you buildout of this
I want to see several, corner balancing cubes, stacked. Battery powered with no comms.
I can't see why that wouldn't work.
I want a more in depth video of the pros and cons of both
could you make a video about you 3D printing setup explaining problems you had or the way your setup works to print so many parts all the time?
This video was super informative, and made the whole reaction control system make a lot more sense. Thanks James!
I need to see a build of that reaction wheel cube 🥺
the idea of not using the motor itself instead of the motor driving a flywheel
add weight to outer rim of the motor
I'm sure you wont need as much weight but a lot less then a flywheel driven by a belt
thus the motor itself would be able to respond more faster and more accurately......
Hey bud just to let you know a gyro on a ship is not use to balance a boat but used for navigation. The position and orientation of a ship relative to a known starting point, orientation and velocity we call it a gyro compass. It's more reliable then a magnetic compass because marantic north moves.
Hey bud just to let you know: when he talks about stabilizing gyros on a boat he his talking about stabilizing gyros.
He is not talking about gyro compasses.
those reaction wheel balancers that stand up on a stick look like they should be able to move by hopping. Wind up, tilt, launch, rotate, land and reblance
Amazing video! Thanks for going more in depth about PID tuning! Love your videos!
this video is a gold mine
bonjour superbe les réalisations j adore les creation
That LiPo is look puffy man! haha love your projects!
Way off topic. I've always wanted to see a modular robot. Imagine a small drone that you could controll that could in turn controll other robots it lands on.
You could build it a few types of bodies to play wilt like a car body and a hexapod body and a balanced humanoid bodie.
Idk no real hopes of making this myself but if anyone could it would be you.
Even if the controll bot didn't fly and was just a head you could snap onto different bots manually it could be cool to have and see.
Eric Laithwaite is smiling down on you when you speak of gyroscopic precession in an English accent.
Hi there, I'm a hobby machinist with a neuromuscular movement disorder characterized by constant muscle contractions. I've been tracking the evolution of exoskeletons as I believe this would be an ideal treatment for me. I don't have any weakness, just a great deal of unintended motion. No company will work with me on prototyping due to liability concerns. I'm stumbling my way through learning this stuff, I'm not very tech savvy, and hope to one day make an exoskeleton or at least a few portions. I believe that the spinning Mass principle displayed in your last half dozen videos will necessarily be the heart of this device. I was wondering if you could recommend other resources for beginning learners and I don't know if it exists, but software that would allow me to test designs without building one first. Secondly, I wonder if you can point me in the direction of any relatively affordable existing products that utilize this principle, that I might be able to source parts from. I'm not new to prototyping nor product development, but I'm a complete novice with all things computer. Lastly, I don't particularly think a 3D printer is a good match for my needs, but if the software I referenced does not exist, do you think a 3D printer would give you useful results using it to trial and error various designs? Are the properties of the filament print analogous to wood or some particular alloy? I realized that I'm asking a ton, I certainly don't expect you to provide all of this. I figured if I throw all of my questions out there it might give you a better idea of what level of understanding I have and the best place to point me to. The other reason is in hopes that other viewers happen to read this comment and opt to offer a suggestion. It is a bit cheeky, but I figured it's definitely not going to happen if I don't ask. Thanks very much whether I hear from you or not. Your videos have been enormously helpful, you explain things in a way that is very effective for me, thank you. I don't think I would even consider taking on a project like this if I had not seen a handful of your videos. You explain concepts and programming in a way that us old guys who are mechanical can really grok
Cool one. I made a reaction wheel bicycle in coppeliasim using lqr controller.
I'd love to see your take on one of those balancing cubes.
The notion of "the reaction wheel has to go faster until it can't anymore" sounds like something I heard of in terms of spacecrafts with reation wheels, basically from what I understood they had to shut them down and realign the satelite via thrusters before they reangaged the reaction wheels.
Shouldn't the pid be better to tune to make the output not the motor speed but the motor acceleration? S Think about it this what if the whole thing is tilted 5° you would expect a proportional controll to apply 5units of force for restoring the position.
In this case tho the thing starts to spinn at a certain rate giving you a restoring force proportional to the rate of changes (like a differential normally does). Meanwhile the integrator creates a accelerated proportional to the tilt and thus a restoring moment proportional to the position of the system.(like the proportinal part normally would)
and the derivative reacts to the rate of change by giving out a constant rotational speed so you apply a force portional to the rate of change of the rate of change(kinda weird).
So basically you have only a pd controller.
My suggestion would be to let the controller controll the acceleration of the motor by integrating the output of the controller and thus controlling the output force directly.
Ps: the problem with the system trying to always spin up is because the pd controller you use doesn't integrate error and never is able to return to a set point.
Let's say you had two reaction wheels with offset mass that rotate in opposite directions. In one half of the rotation you accelerate the mass, the other half you decelerate. Could you get a reaction force pulsing continually in one direction?
No. You could get the reaction to be linear, and depending on the difference in acceleration/deceleration you could have the force applied in one direction harder and shorter or weaker for longer than the other, but the reaction would still be in alternating directions and the total work done in each direction would cancel out.
For an intuitive understanding, that layout is how dualshock game controllers generate vibration.
@@idahocartwrights what if you limited it to a single axis, like with a car? Then you could dump the energy into “another dimension” where it wouldn’t matter.
@@float32 I'm not entirely sure what you mean, but it is possible to turn vibration into forward movement against a surface once you include friction and gravity. If the linear back-and-forth movement is diagonal, and you can push off the ground without slipping, then you can jump forwards, rinse repeat.
@@idahocartwrights This is kinda of interesting then because you could control the direction of the impulses, creating a haptic sense of direction in the controller, rather than buzz BUZZ buzz.
Phenomenal job James! You in fact helped me with a project I'm working on! Particularly the reaction wheel becoming saturated over time. Your solution is elegant and I love it!
Is there a specific reason you chose to use the HTD belt reduction over direct coupling of the reaction wheel to the motor? I would imagine to make the strain on the motor considerably less as that's quite a bit of mass being handled.
Also, is there any chance you could provide some insight on your configuration of the ODrive? That has got to be one of the most tedious parts for me.
Can you try putting some extra weight on one side of it to see if it handles that well too? It seems like the automatically moving set-point should be able to compensate for that as well.
Hey James.. you might say youve already done this.. can you calculate the idle balance/drop point, with the pid code...to determine how the actual mass deviates from the center of gravity..
You could have another branch on the controller to dynamically alter the balancing point so it will deal with offset loads.
Links for the PID and reaction wheel cube videos in this video description, please.
Would you consider doing a video where you talk about the techniques you use to 3-d print mechanically strong parts? Thank you for another great video!
Have you looked into control moment gyroscopes?
#MassChallenge - How small can a reaction wheel be and still be effective? Try making one that you can print and run on a 100x100 print bed.
What're the pros and cons of using a balancing robot anyways, if there is any?
Heyy may i know which software do you use for the 3D printing and CAED work??
The thumbnail kinda looks like a torture device ngl
That was really good I like it thank you for sharing
I've noticed the drones from the game "rainbow six siege" seem to use omni wheels.
Maybe building one of them could be an interesting project?
I've watched so many of your videos. Always such amazing engineering and creativity in every project.
I have a question, what do you do with all your old parts? Does anywhere in your city accept them for recycling?
I wonder, if you were to mount two or three reaction wheels on a rotating frame, parallel to the reaction wheels, could you use the reaction wheels to add energy to one side of the frame's rotation and remove it from the other, providing a net force in one direction...?
Kinda like a ferris wheel, only different.
By the way, this isn't exactly the thing I've been wanting to explain to you. But, it's a step in that direction.
Pogo robot idea because of the challenge.
Комментарий в поддержку канала и ролика, а также труда мастера.
Very impressive
Very cool robot !
Would it not work better to control acceleration with the PID rather than velocity as the thing you are trying to control is the force?
That's what the Integral term does.
@@jamesbruton is there no second order intergral that can be used from the I term of a accel PID rather than the I term of a vel PID?
Force control is actually what would be desirable for applications like that. However for that to work properly you need to create a decent mathematical model of the system dynamics, which is not as simple as using just a pid controller. Also pid controller often do a reasonnably good job.
@@fabianaufdermaur6051 since controlling the acceleration rather than velocity is 1 step closer to force control and thr odrive supports acceleration control.
Would it not be free stability to use the simplicity of a pid to control the acceleration rather than velocity?
Or does it not work like that? Why not just set accel = x rather than set vel = x?
Well you first have to calculate what acceleration you actually want. Which you do with a dynamic model of the system. After that you are correct you can use the acceleratio.
I realize this question would require a great deal more data to answer precisely, but I'm wondering if there is a quick rule of thumb on the subject. Some of these that you have shown are constantly spinning and change their speed or orientation. Others REACT to external stimuli and attempt to correct with the least motion possible. Of these two designs, forces in the human weight range, which one would likely be more energy efficient?
Could a reaction wheel be used to limit the roll of a race car? Probably need to be too heavy, right?
thank you
Great video, I always love anything with PID control. But just a thought here. Since it's not the speed of the wheel but the acceleration that provides the righting force, would you get more torque and righting force by reversing the gears? A large gear on the motor and small one on the wheel (or at least 1:1), the motor 'sees' a much larger moment of inertia and could then generate a lot more righting torque?
Or at the very least, a more equal gear ratio would allow you to use less mass on the wheel if you want to get the overall size down. Of course the wheel's top speed would be higher and you might have the same gyroscopic precession problems, but it seems like it would be fun to try.
Can you show how a 1 wheel machine could stop quickly from a forward motion wile staying vertical not lunging forward please
The top will have inertia though, so that will be hard unless it has a long time to decelerate
Thank you for inspiration
I will share to my friends 😉
Lost it while the wheel was flying everywhere and he was just calmly explaining what's going on
It's pretty stable so I was confident it wouldn't do anything weird
5:09... That battery sure looks puffed... ;-)
Fascinating channel that TH-cam threw my way. Good content.
I have a question regarding the tuning of the PID controller; could you, in principle, create an evaluation function that tunes the PID automatically?
I've never worked with robotics, so just looked it up on Wikipedia just to have some idea of what might exist, and it lists a couple of methods that look like they could be used in this way. If so, you could then use the same code to control any arbitrary robot, provided the control system is sufficient.
Yes there are PID Autotune algorithms.
@@jamesbruton Why don't people use them? Is it that tuning by hand is so easy or that using autotune is so hard?
Brilliant James congratulation! Cant wait to see it in a working rolling bot xd. Keep on going ya getting there it seams.
As always you're awesome 👏
Could you make a "box" robot that uses the reaction wheels to balance on the corner, but also to make it flip on it's sides to allow it to move? i know, completely useless, but still would be interesting to see.
That would be the final boss of Grimrock 1. I’d certainly like too see James build one!
So when are you going to make a ridable Horse-sized robot? with balancing wheels and such?
Thanks!
I want a more in depth video of the pros and cons of both.
It's worth checking out the 3-4 gyroscope videos I did for more info on that side.
I wonder if it would be possible to have a reaction wheel that also acts as a gyro
Me too...it does not have to be either-or
Maybe build a hopping one legged robot dog.
What about using a smaller wheel but with Brass nuts and bolts cause they can be heavier, since you said you where concerned about the size of the wheel. Anyway love your channel, thanks for posting.
The diameter of the wheel will have the largest impact.
@@jamesbruton no I understand how that can be, but I was thinking about in one of your smaller Omni wheels for space. Either I'm locked in to watch, I really enjoy your videos. Thank you
Am I the only one who has noticed the 3d print music change?
thats really cool
at 10:52 you say the reaction wheel "can only exert force when it is accelerating or decelerating". Is that really true? I understand the force is greatest when accelerating, but doesn't it always exert some counter torque when spinning? I am trying to build a simple three wheel cart that steers with a reaction wheel, using only an RC speed controller instead of real motor drive and was counting on that effect.
Yes it's always true. If you hold a fan while it's running it doesn't try to spin out of your hand. But if it's accelerating it does try to twist. This is most easily felt with a high power computer fan.
This would have been the perfect opportunity to do some proper PID tuning based on a mathematical model. Your projects are great, but as a robotics engineer, my heart is hurt when you do this kind of trial and error stuff... :)
damn that motor starts and stops quickly, it’s like instant oO
Just imagine the mess of melted plastic firefighters would find if ever James' house caught fire 🔥 lol
First time I've actually seen calculus used in the real world that isn't purely hypothetical.
Hey i was just looking through some designs on the internet and i came across a what was basically a treadmill with smaller belts that went across horizontally to make it omni directional allowing the user to run 360 degrees now i dont know how well it could move on the ground and it sounds hard to make but it was just a thought. Somehow make a omni directional tank? Lol
Maybe an auto PID tuner would make an interesting video?
HI, James. I love your channel! Say, what about a tuned mass damper working either independently or, in concert with the control system? Would this not be more energy efficient?
Great video!
Please: a robot that balance a broom upside down on its head while moving around