To clarify the P-factor thing: Technically it's an aerodynamic effect from asymmetric thrust off a propeller resulting from angle of attack, but a fast *rate* of pitch will also cause a gyroscopic torque about the yaw axis absent any aerodynamic effects.
Make a Securitron (Fallout New Vegas Game). I am sure you get a video with over 2M views. Securitron is a robot that has a mono wheel to mover around, two arms and TV screen in the center.
Please for the love of all that is holy @HyperspacePirate search for "gravity assist engine" its a paper in Acta Astronautica that I need someone like you to read. Been trying for years to get some one besides me honed on it because I think it's got something
Do you think it's possible to create a piezoelectric battery with Quartz that's suspended in a pressurized tank and a sodium hydroxide solution with a sort of insulation for the interior of the tank? The mechanical pressure from the tank should in theory induce the piezoelectric effect and the liquid solution would conduct the discharge to a pair of terminals. Or would it be better to wrap the quartz in copper and then run wires directly to the for mentioned terminals for an output?
@@GimmeOo-mox I think so.. perhaps under pressure literal some kind of audio could be applied to the external side of the tank and create the impulse.. probably more complicated electronics are required
This is by far my fav maker/diy/engineering channel on youtube. packed full of knowledge and concepts, a great way to revise/learn about the basics of a specific application. Great job m8, you're one of my biggest inspirations.
I think the issue you had with the metal flywheels was that your 6050 was not isolated physically. Had the same issue with a commercial drone I had to work on that had the Gyro board bolted to the airframe and the motor vibration overloaded the accelerometers and gyros with high-speed noise, rendering the sensors useless. The way round this is to isolate the gyro board with soft rubber bushings, they act as physical low pass filters.
Yeah this is spot on. Didn't show it in the video, but the sensor readings were going apesh*t from the vibrations, which made things a lot more difficult.
@@adelzaher1565arduino should be easily fast enough, the bandwidth of this control system is probably a few 10s of Hz. Don't need a 100Mhz micro here!
I was thinking at least he was on the right track with the rebar, but just a small bit of weight that can slide laterally, side to side to counteract the forces. It doesn't need to hang way over the side of the train. Maybe even a pendulum weight swinging would work and it would not have to be electronically actuated.
Yup. Perfection was achieved already in this department. The guy had it laid down to a T. It was just too far ahead of its time and the prehensile paw monkeys around him couldn't understand the absolute madness of a thing that had been achieved.
i skipped through it thinking this was going to be the design he was recreating. personally I want to see a monowheel design with this sort of engine/gyro stabilisation, i think it would be neat.
Monorail powered by stirling engine with temperature differential provided by a liquid nitrogen tank it's hauling... OR BUST! Teddy bear train conductor for bonus points. All jokes aside, good luck on the project. It seems you have the sensors available for making a much better controller routine. I have faith.
Other than the fact that most of the money goes to the foundation, bridges, and tunnels instead of the tracks which are just steel, you got the spirit.
As a control’s engineer, get rid of the derivative from your PID. derivatives tend to be extremely unstable. just use proportional and integral. I would also only use one motor for tilt for both gyros. You can couple the angles together mechanically. The problem with the derivative lies and the fact that a derivative is instantaneous reaction . an integral takes time to build up and gives you a smoother output. a derivative will go positive and negative and then react to itself in the next program cycle just leading to unstable oscillations. I recommend starting with an integral to proportional ratio of 10 to 1, then adjusting from there. I don’t know why, but this typically works
This is an inverted pendulum controller with more steps, PID is known to work. He could try Ziegler-Nichols or another proven empirical technique to smooth out control response. Edit: but yes I agree in general the derivative term is risky, could also be a result of noisy or delayed processing from the raw MPU data too.
@@kentaltobelli1840 PID isn't guaranteed to work. It's usually a pretty safe bet but depending on update rate, sensor noise, latency, design, indirect actuation (like these gyros), bad luck, or whatever else, PID could be wobbly or unstable. I don't doubt that it could work here, especially combining the accelerometer and gyroscope.
Brushless DC but rewind the coils, having re-stacked the laminations so the poles 'twist' or overlap multiple magnets to reduce cogging. Makes them much better for this kind of application (also jobs like stabilising an inverted pendulum) because the torque available has less position-dependance. In addition you can change the wiring to trade speed vs voltage for better torque at the expense of maximum speed, which may also help.
You need to use Madgwick or Kalman sensor fusion filter , the lateral acceleration of the mpu when the vehicle rotates faults the angle reading when deriving the angle heavily from accelerometers .
For context this is the machine reference from WiKi " Gyro Monorail " Louis Brennan (Irish inventor); 'Brennan Monorail' ; He did much work on a monorail locomotive which was kept upright by a gyrostat. In 1903 he patented a gyroscopically-balanced monorail system that he designed for military use; he successfully demonstrated the full sized system on 10 November 1909, at Gillingham, England. At the Japan-British Exhibition of 1910 at White City, London, he built a mile long monorail track and gave rides for around 40 people at a time on his gyro stabilised 22-ton prototype. Winston Churchill (then Home Secretary) was one of the passengers and then drove the vehicle himself for one circuit. He was so impressed that he brought along the Prime Minister and other cabinet members and family to see it the following week. The exhibit was awarded the Grand Prize for the exhibition. Although the ability of the vehicle to balance itself on a single rail was amazing, especially when stationary, it was not to prove a commercial success, partly due to fears that the gyroscopes might fail, and partly because any wagons or coaches towed by the locomotive would also need powered gyroscopic stabilisation.[2] The transmission was electric, with the petrol engine driving a generator, and electric motors located on both bogies. This generator also supplied power to the gyro motors and the air compressor. The balancing system used a pneumatic servo, rather than the friction wheels used in the earlier model.
Great video, love your content. You missed one thing at 5:49. P-factor is the propeller generating uneven lift on the plane of rotation due to one side taking a bigger "bite" out of the air (not quite how that works but an intuitive way to understand it). In aviation what you are referring to is just known as gyroscopic precession and effects turns as well as pitch movement. I am a flight instructor and I hear my student mess them up all the time. Thanks for the great video!
Make the servo-rods "springs" and you'd get the servo to be force control rather than position control. Adjusting the spring-rate will change sensitivity. A few loops on piano wire is likely gonna do the trick.
From what I remember seeing the gyro train has two virtical gyros that are geared to each other by the pivot point. And ten are controld by a hydrolic system so that the tilt can be controlled
To get more resolution out of your servos you can rotate the servo horn so it is 90deg from its normal position while the reaction wheel rotation point is still in the same position. This would make it so the first few degrees of rotation on the servo would be less than a degree on the reaction wheel, and this would be non-linear, so you get better fine control and better coarse control if a big change is needed. I have a pretty good paper about hand-tuning PID parameters. If you want, I can email that to you on Monday. Edit: you would actually want to offset the reaction wheels pivot by 45deg if you rotated the servo to 90deg.
Additionally, since he mentioned he only has 1 deg of servo resolution, I believe he's using the arduino servo library. It has another function writeMicroseconds() which will directly set the pwm signal to the servo, letting you have way higher resolution.
I have chronic pain that leads to extreme sleep problems. Your videos are some of my favorites for 2 reasons. 1st, I love your projects, and you explain the science in a way my uneducated ape brain 🧠 can understand, 2nd something about either your voice and/or cadences knocks me out. The other youtuber who does the same for me is a Machining channel play the name joe Pysinski (probably wrong spelling. I dropped out of school in 9th grade @ age 13) he is a wizard on the mill and lathe. Without him and Abomb79, I would still be using mine as expensive drill press and never would have gotten comfortable enough to get a cnc (other ppl showed me how to cnc) All of you smart people who like to share your knowledge, have my respect and admiration. I want to make the cryocoolers you make, but i'm definitely not smart/skill/talented enough to do that. Maybe 1 day I will try anyway. I have fixed a windows ac and heat pump following videos on the UA-cam
Hello my man, thanks for creating this awsome content. Getting rid of a thread cutter in a throughhole is easy, you can just punch it through. their hardness also means they are brittle so the stuck part will just shatter into pieces and eventually driven out the back. it'd be very unlikely tho to have a working thread of the same dimension after that approach. Also a P controller is not enough for your approach. Problem being, that yout angular error causes a sudden answer from the control loop giving an intense feedback in the opposite direction of your previous angular error. then on that it answers by a counter reaction the other way and so on. thats a Control loop oscillation and can never be fully eliminated. But if you used the integral part, yoi can limit the amount of answer inertia per error and time and dampen the control loop oscillation that way.
The breadth of topics you cover is amazing. I love this kind of engineering. Also; you’re the only person I’ve seen make a watchable sponsor read. I’m sure it’s a lot more work, but they’re always funny as hell. I’m glad squarespace is cool with your artistic liberties.
Thanks, for mechanical stuff like this attention to detail is important regarding success factors is a higher level learning. Also using models is another for feeling the understanding, completely different to reading it on a screen or the page.
6:35 A more commonly used unit is Nms for angular momentum (e.g. in Reaction wheel specs). It is then easy to figure out how much the momentum would go up by applying a certain torque for a certain amount of time.
There was a gyro stabalized car that drove on 2 wheels. The car still exists but it doesn't really work for highway speed hence why it never got past the prototype stage.
@@bobbob9211 If it is what I am thinking of, it was essentially a self-balancing enclosed motorcycle, but the seating position was more like a 1-seat racecar. Not comfortable, wasted energy, and increased wheel loading (and therefore increased maintenence costs and road wear) , making it worse than most existing motorcycles and cars. Not to mention the lack of room for safety systems, fuel or batteries, and cargo, which would have made it difficult to sell even if it got out of the prototype stage.
@@piisfunSounds like it is only useful for parades and science demonstrations. It has the unique feature of being able to stabilize at a complete stop with an uncooperative load. The driver is the primary stabilization system of traditional motorcycles at extremely slow speeds. The front fork angle does most of the stabilization once the vehicle reaches bicycle speeds.
@@bobbob9211legally in the US any vehicle with 3 or less wheels touching the ground are motorcycles. In terms of driver experience, It drives closer to a car. In testing it drove just fine at low speeds but had issues at higher speeds and there were questions about winter conditions. Funding dried up and development ended. It was found and restored and sits in a museum.
@@piisfun gyro car, built by wolsely, 1914... with three bench seats, possibly up to nine passengers, three side by side? brennan, he of the monorail, did a car in 1927... ford had a go...
You could also increase granularity by putting the servo on a like a 3:1 or even 4:1 gear ratio. The servo probably far exceeds the the actual angular limits of the gimbal so putting it on a ratio would let you use more of the servo and increase the granularity. Wouldn't even really need to change the code much as it would be a simple case of multiplying the desired angle.
I think if you were to couple the gyros to the servos with springs rather than rigid links this might make the control system design a bit easier. This would allow the servos to apply a torque rather than a position, and in the short run servo position would just directly translate to righting torque on the vehicle. Of course due to precession the gyro position would be the integral of the total torque applied to the vehicle over time: so the gyros would tend to drift towards lock and there would need to be another control loop on commanded servo position that biased the vehicle position command towards the opposite side of vertical to "unwind" the gyro position... honestly, how did you get this thing to balance with only a proportional control from vehicle position to servo position? That's impressive, it doesn't even feel like it should work! Always fun seeing what you're up to!
What you want is a nested PID loop the outer loop uses angle position error to produce an angular velocity setpoint the inner loop uses angular velocity error to produce a torque setpoint (which maps directly to a CMG output) and also, you really to need PD control for something like this because P-only is doomed to oscillate. TBH integral term would be useful too. PID exists for a reason.
This was fun, but ohhmahgosh a proper PID would help with the jitter problems. Its also very easy to implement on arduino, like, here's all of the logic you'd need: #define P_coefficient 123.45 // coefficient for proportional component (Angular speed) #define I_coefficient 12.345 // coefficient for integral component (Cumulative angle error) #define D_coefficient 1.2345 // coefficient for derivative component (Angular acceleration) float outputAngle, angleError; long integralTime; ----------------------------------------------------------------------- void PID() { angleError += [MPU_GET_ANGULAR_SPEED] * (millis() - integralTime) / 1000; //multiplies time since the last measurement by current angular speed to get the angle, and adds it to the cumulative error integralTime = millis(); //starts counting time from the last measurement from 0 again outputAngle = ( [MPU_GET_ANGULAR_SPEED] * P_coefficient ) + ( angleError * I_coefficient ) + ( [MPU_GET_ANGULAR_ACCELERATION] * D_coefficient ) + 90; //multiplies P, I, and D by their respective coefficients and adds them together to get output angle for servo if (outputAngle > 120) outputAngle = 120; //limits servo travel if (outputAngle < 60 ) outputAngle = 60; servo.write(outputAngle); } Just put the definitions and variables where they belong (before void setup), the whole 'void PID()' block of code after everything (not in the void loop(), after it, like in the end), and have the line "PID();" somewhere in the main loop (void loop() i guess). Then replace all of the square brackets with the actual mpu readings for angular speed and acceleration, and adjust the coefficients (D, the derivative component is the one that helps with jitter the most), and you're good to go. This is literally everything you'd need. I enjoyed this video but PLEASe do this omg its so easy and would improve everything so much
You should check out Aaed Musa's video "High precision speed reducer using rope". A capstan drive and small field-controlled brushless motor would be a perfect replacement for the servos in this project.
You might also consider allowing the gyros themselves to be able to rotate more, or adding another two gyros. It’ll take up more space but it’ll give you more reaction. Consider making the extra gyros with different density material to eliminate resonance throughout the entire system.
Have you ever delved into 'ring laser gyros'? Not really applicable to this project but seriously brilliant design. They were so good, I have never seen/heard of one needing replacing during my military career vs the older traditional gyros which constantly failed. For those not familiar, a laser is used to detect to earths rotational direction on powerup, precisely setting East and West in mere microseconds vs the traditional 45 minute 'precision align' needed for a traditional gyro. I'm told newer ones don't even have moving parts anymore which is curious.
Your videos are always so sick and entertaining, and I love the variety of content you make, but it's always so enjoyable and educational to watch. keep bringing the amazing videos! 😁
If you use a more beefy microcontroller (with an FPU) you can use .e.g. madgwick sensor fusion for the MPU6050. This results in a much cleaner orientation tracking.
For the servo issue you could use a longer arm on the flywheel assembly to reduce the amount of movement the servo is providing. The other option would be hydraulics as they are fairly simple (LEGO) to implement and have high torque and extreme precision
The MPU6050 is a very old and very noisy accelerometer. Newer sensors like a icm-42688 (or even a BNO055) are an order of magnitude or two less noisy. I bet you'd get significantly better control with this one change.
Very very cool reaction wheel work! I don't think removing a rail will reduce the cost by 50%. I think it would be closer to 10% since everything involved with the job will need to be provided and installed. Labor is by far the biggest cost, and the main labor is laying gravel, cross ties, bridges, rail signals, etc. All you'd be saving is the cost of rail which is likely $1.00 per pound and a little bit of labor.
14:35 The servos may be working against each other. Tolerances and slight deformations could cause the servo on one side to push the servo on the other side out of the position it has reached, which then adjusts and affects the other side. As the complete control range is apparently not required, the lever on the servo could be shortened. This would give you more torque and a higher resolution. Thanks for the interesting video! 👍
I can say with reasonable confidence that part of the jittering was the fact that it was just P controlled, add a few extra letters and you’d probably be fine
you need to change your ratio of the servo so put the link on the closest point the the pivot point on the servo horn and increase the point on the gyro. that will increase your resolution of the servo control. servos also have back lash and this will also decrease the backlash seen by the gyro
If you added an integral gain you could band-aid the problem of servos having a poor repeatability, since that error over time would integrate back into the cv
You said so earlier in the video, the precessing rate of change is proportional to the torque. To balance things, the torque usually needs to be proportional to the angle error and the change (derivative) of the angle error - PD control. But your servos try to enforce a position which is the integral of precession rate. So, hand wavingly... integrating once makes P and D into I and P. You need a PI controller. Or if you extend it, I think you'll need a second integral, something like P-I-I2. Also, another youtuber James Bruton made like a dozen videos with various gyro balancing robots, you could check those out, or contact him and he might give you his secrets :)
0:25 the International Space Station caries 4 + spare of these. Length: 109 m (358 ft) (overall), 94 m (310 ft) (truss) Width: 73 m (239 ft). 4.5 million lines of code to make it work. I kinda figured this when i was fixing my bike as 10/11 year old kid, i was spinning the front wheel of my BMX with my fingers while holding the wheel or shaft. the wheel resisted my force when i tried to move it.
I tried to build a phone gimbal using servos, faced the same jitter issue whenever i attached a phone(without the phone, it would work fine). It existed even after i added a complimentary filter in the control loop and/or adjusted the gains
One word: granularity. And you'd think it applies to the sensor, but no. It's a triumvirate. Sensor, software, AND hardware. If the three don't match, aren't enough or are too much, you end up having issues. You need to fully understand what you're making to make something like this work properly IF you're not using someone else's recipe (of which there are many online).
I watched the you tube video for the 1909 brennen monorail and seemed to have the rotating reaction wheel mass axis pointing at each other and cross-coupled rather than servo'd.
So, just to be recap, this man has dabbled into: - Thermodynamics - Chemistry - Electronics engineering - Electrical engineering - Control engineering - Mechanical engineering and I'm probably missing some. What did you even study at school?
If you're looking for a higher resolution solution to RC servos, use RC servos, but remove the electronics inside them, internally they are a gearbox, dc motor, potentiometer and control electronics, use a small H-bridge to drive the motor directly and an ADC to read the position. This solution is quite cheap, but requires you to tune the PID for the servo (or use a fuzzy controller)
May be a good idea to use a reduction system with those servos to gain motion resolution, plus can use a smaller servo for the same task since reducing the mobility of the servo with a reduction sistem, you gain strenght .. may be a gear reduction..can be 3d printed, but i may preffer a string reduction system, lookd better and works smoother with less backlash.
If you switch to microsecond control of the servo pulse commands you might get better resolution. Typically servos will have a range from 1000 us to 2000 us pulse length.
have you seen Prof. Laithwaite from the Royal Institute, his video on Gyroscopic effect and possible implications to counter or cancel gravity. The videos are really old, but hes a great host and makes the content Anti-Boring just like my mans HSP here! Cheers from Texas!
Your controller should take into account bank angle and roll rate. Meaning that bank angle error will drive towards zero and roll rate will damp that signal based on the rate you approach it. Would probably be good to write out some equations approximating the moment due to gravity and bank angle and the moment due to your control effector. Do a Laplace transform on the second order ODE governing the system and you should be able to model a reasonable PI controller (derivative is probably too noisy unless you lowpass it) using Ziegler-Nichols and a little bit of simulation
1) Couldnt you just decrease the speed of the steel disks until you hit an optimum between strength and precision? 2) I think using a mechanical joint that fixes the position of both wheels would be better than using active control.
Here to say : Please if you do PSA system , please go heavy with EXTRA security and safety ! It would be a shame to loose you for a oxygene burst (remind me of your last lucky pipe rupture ) Anyway Sweet video as always
you could just 3d print a longer arm for the thing you connect the servo to? you lose ability for full circles, but a longer lever at the flywheels end(the green part) for the connecting point would mean it moves less angles when the servo moves say 90%. like if you don't need linearity but just want finer granularity at that end then that hack works out. (and is a simpler change than some reduction gears, it's more like a reduction lever then)
P factor is not a gyroscopic effect, it’s an aerodynamic effect of non-axial airflow into the prop. This is constant for a constant angle of attack, airspeed, rpm, and air density.
I think you're trying to create a rocket engine or a jet engine with the gyroscope ang the cryogenic liquids. I like your videos because I'm a nerd at science.
To clarify the P-factor thing: Technically it's an aerodynamic effect from asymmetric thrust off a propeller resulting from angle of attack, but a fast *rate* of pitch will also cause a gyroscopic torque about the yaw axis absent any aerodynamic effects.
Make a Securitron (Fallout New Vegas Game). I am sure you get a video with over 2M views.
Securitron is a robot that has a mono wheel to mover around, two arms and TV screen in the center.
Please for the love of all that is holy @HyperspacePirate search for "gravity assist engine" its a paper in Acta Astronautica that I need someone like you to read. Been trying for years to get some one besides me honed on it because I think it's got something
You know what that whole thing across the axis x I guess and then y/z traveling servos adjusting the x axis the distribution weight pole thing
Do you think it's possible to create a piezoelectric battery with Quartz that's suspended in a pressurized tank and a sodium hydroxide solution with a sort of insulation for the interior of the tank? The mechanical pressure from the tank should in theory induce the piezoelectric effect and the liquid solution would conduct the discharge to a pair of terminals. Or would it be better to wrap the quartz in copper and then run wires directly to the for mentioned terminals for an output?
@@GimmeOo-mox I think so.. perhaps under pressure literal some kind of audio could be applied to the external side of the tank and create the impulse.. probably more complicated electronics are required
No one eats better than Hyperspace Pirate fans
So true. Every video just slaps so hard. I love you fridge guy
I had chipotle today
Inheritance machining and Clickspring fans tho😂
FOR REAL
@@braiansingh9730 Clickspring fans eat the best when we eat but then we get soooooo hungry between uploads. Intermittent content fasting
This was solved fully mechanically by Louis Brennan in 1910. Brennan Monorail. Fantastic machine.
This is by far my fav maker/diy/engineering channel on youtube. packed full of knowledge and concepts, a great way to revise/learn about the basics of a specific application. Great job m8, you're one of my biggest inspirations.
3:15 Ah, so instead of spinning a wheel, we spin a *spinning wheel*
I think the issue you had with the metal flywheels was that your 6050 was not isolated physically. Had the same issue with a commercial drone I had to work on that had the Gyro board bolted to the airframe and the motor vibration overloaded the accelerometers and gyros with high-speed noise, rendering the sensors useless. The way round this is to isolate the gyro board with soft rubber bushings, they act as physical low pass filters.
Yeah this is spot on. Didn't show it in the video, but the sensor readings were going apesh*t from the vibrations, which made things a lot more difficult.
@@HyperspacePirate try using a faster controller like stm32 arduino is just suck 😁
@@adelzaher1565 That won't fix sensor noise
@@zyeborm I know but in this project you need to have a faster response to balance it self
@@adelzaher1565arduino should be easily fast enough, the bandwidth of this control system is probably a few 10s of Hz. Don't need a 100Mhz micro here!
Interesting. Surprised you didn't go for the Brennan Monorail design, which solved this problem, in analog, 121 years ago :D
Yeah I was thinking doing this mechanical would be better
I was thinking at least he was on the right track with the rebar, but just a small bit of weight that can slide laterally, side to side to counteract the forces. It doesn't need to hang way over the side of the train. Maybe even a pendulum weight swinging would work and it would not have to be electronically actuated.
@@ewmegoolies was that a pun?
Yup. Perfection was achieved already in this department. The guy had it laid down to a T. It was just too far ahead of its time and the prehensile paw monkeys around him couldn't understand the absolute madness of a thing that had been achieved.
i skipped through it thinking this was going to be the design he was recreating.
personally I want to see a monowheel design with this sort of engine/gyro stabilisation, i think it would be neat.
You could change the linkage with the servos to effectively "gear down" their effect.
If you buy standard servo horns, all the holes in them at different radii are just to do that
I've been on UA-cam for some time now and I have to say this : this is my favourite chanel, ever.
Monorail powered by stirling engine with temperature differential provided by a liquid nitrogen tank it's hauling... OR BUST!
Teddy bear train conductor for bonus points.
All jokes aside, good luck on the project. It seems you have the sensors available for making a much better controller routine. I have faith.
Other than the fact that most of the money goes to the foundation, bridges, and tunnels instead of the tracks which are just steel, you got the spirit.
gotta love Gyro-rails. one made in the early 1900's and one made 2024. gotta love it
As a control’s engineer, get rid of the derivative from your PID. derivatives tend to be extremely unstable. just use proportional and integral. I would also only use one motor for tilt for both gyros. You can couple the angles together mechanically.
The problem with the derivative lies and the fact that a derivative is instantaneous reaction . an integral takes time to build up and gives you a smoother output. a derivative will go positive and negative and then react to itself in the next program cycle just leading to unstable oscillations.
I recommend starting with an integral to proportional ratio of 10 to 1, then adjusting from there. I don’t know why, but this typically works
He has no D term, not even an I term, only a P term so no wonder it's oscillating.
I agree. Yes
This is an inverted pendulum controller with more steps, PID is known to work. He could try Ziegler-Nichols or another proven empirical technique to smooth out control response. Edit: but yes I agree in general the derivative term is risky, could also be a result of noisy or delayed processing from the raw MPU data too.
If you could only pick one I'd pick I over P over D. An I only control is often surprisingly decent if sometimes a little slow.
@@kentaltobelli1840 PID isn't guaranteed to work. It's usually a pretty safe bet but depending on update rate, sensor noise, latency, design, indirect actuation (like these gyros), bad luck, or whatever else, PID could be wobbly or unstable. I don't doubt that it could work here, especially combining the accelerometer and gyroscope.
Brushless DC but rewind the coils, having re-stacked the laminations so the poles 'twist' or overlap multiple magnets to reduce cogging. Makes them much better for this kind of application (also jobs like stabilising an inverted pendulum) because the torque available has less position-dependance. In addition you can change the wiring to trade speed vs voltage for better torque at the expense of maximum speed, which may also help.
You need to use Madgwick or Kalman sensor fusion filter , the lateral acceleration of the mpu when the vehicle rotates faults the angle reading when deriving the angle heavily from accelerometers .
Amazes me how clever people like yourself and Tom Stanton do this stuff
HONEY HYPERSPACE DROPPED A NEW VIDEO 🗣🗣🗣🗣
For context this is the machine reference from WiKi " Gyro Monorail " Louis Brennan (Irish inventor); 'Brennan Monorail' ;
He did much work on a monorail locomotive which was kept upright by a gyrostat. In 1903 he patented a gyroscopically-balanced monorail system that he designed for military use; he successfully demonstrated the full sized system on 10 November 1909, at Gillingham, England. At the Japan-British Exhibition of 1910 at White City, London, he built a mile long monorail track and gave rides for around 40 people at a time on his gyro stabilised 22-ton prototype. Winston Churchill (then Home Secretary) was one of the passengers and then drove the vehicle himself for one circuit. He was so impressed that he brought along the Prime Minister and other cabinet members and family to see it the following week. The exhibit was awarded the Grand Prize for the exhibition. Although the ability of the vehicle to balance itself on a single rail was amazing, especially when stationary, it was not to prove a commercial success, partly due to fears that the gyroscopes might fail, and partly because any wagons or coaches towed by the locomotive would also need powered gyroscopic stabilisation.[2]
The transmission was electric, with the petrol engine driving a generator, and electric motors located on both bogies. This generator also supplied power to the gyro motors and the air compressor. The balancing system used a pneumatic servo, rather than the friction wheels used in the earlier model.
Cool, I don't have to make this post. You beat me to it.
buddy, next time you need a machined part, please hit me up. No cost for badass channels like yours
On the next episode we’ll be making a monorail with a fridge carriage
A maglev monrail with integrated cryocoolers for the superconductors.
@@teresashinkansen9402 omg I wouldnt be surprised at this point
@@DgtalBreakz Well is kind of a joke but I wouldn't be surprised if he involves in some way his cryocooler.
Great video, love your content. You missed one thing at 5:49. P-factor is the propeller generating uneven lift on the plane of rotation due to one side taking a bigger "bite" out of the air (not quite how that works but an intuitive way to understand it). In aviation what you are referring to is just known as gyroscopic precession and effects turns as well as pitch movement. I am a flight instructor and I hear my student mess them up all the time. Thanks for the great video!
Was definitely not expecting that infamous picture from Abu Ghraib when clicking this video. Very cool.
'It has to go down a little, in order to go around.' ~Feynman. Wonderful video!
Fridge Guy!!!
I actually really appreciate the old Geocities aesthetic. They were perfectly utile websites.
The reference to Iraq war is spot on. Nice to see you are a human before being a brilliant engineer.
Very nice, I like the extensive elaboration on the flywheel theory
@1:02 You were this close to getting my "go disrupt something you know about, techbro" slap in your face 🤏
Switching between DIY cryogenics, chemistry and mechanical design, my man ! I pressed F for the drill bits.
I've mulled over making one of these (not really) after seeing a video on them, glad to see someone actually do it.
It's really fun to see this guy's old-school design implimented so much nowadays, its really cool!
5:35 huh, I didn't know that. This is why I love these videos, there's so much "random" interesting stuff sprinkled in.
Make the servo-rods "springs" and you'd get the servo to be force control rather than position control. Adjusting the spring-rate will change sensitivity. A few loops on piano wire is likely gonna do the trick.
From what I remember seeing the gyro train has two virtical gyros that are geared to each other by the pivot point. And ten are controld by a hydrolic system so that the tilt can be controlled
To get more resolution out of your servos you can rotate the servo horn so it is 90deg from its normal position while the reaction wheel rotation point is still in the same position. This would make it so the first few degrees of rotation on the servo would be less than a degree on the reaction wheel, and this would be non-linear, so you get better fine control and better coarse control if a big change is needed.
I have a pretty good paper about hand-tuning PID parameters. If you want, I can email that to you on Monday.
Edit: you would actually want to offset the reaction wheels pivot by 45deg if you rotated the servo to 90deg.
Additionally, since he mentioned he only has 1 deg of servo resolution, I believe he's using the arduino servo library. It has another function writeMicroseconds() which will directly set the pwm signal to the servo, letting you have way higher resolution.
I have chronic pain that leads to extreme sleep problems. Your videos are some of my favorites for 2 reasons. 1st, I love your projects, and you explain the science in a way my uneducated ape brain 🧠 can understand, 2nd something about either your voice and/or cadences knocks me out. The other youtuber who does the same for me is a Machining channel play the name joe Pysinski (probably wrong spelling. I dropped out of school in 9th grade @ age 13) he is a wizard on the mill and lathe. Without him and Abomb79, I would still be using mine as expensive drill press and never would have gotten comfortable enough to get a cnc (other ppl showed me how to cnc) All of you smart people who like to share your knowledge, have my respect and admiration. I want to make the cryocoolers you make, but i'm definitely not smart/skill/talented enough to do that. Maybe 1 day I will try anyway. I have fixed a windows ac and heat pump following videos on the UA-cam
Hello my man, thanks for creating this awsome content. Getting rid of a thread cutter in a throughhole is easy, you can just punch it through. their hardness also means they are brittle so the stuck part will just shatter into pieces and eventually driven out the back. it'd be very unlikely tho to have a working thread of the same dimension after that approach. Also a P controller is not enough for your approach. Problem being, that yout angular error causes a sudden answer from the control loop giving an intense feedback in the opposite direction of your previous angular error. then on that it answers by a counter reaction the other way and so on. thats a Control loop oscillation and can never be fully eliminated. But if you used the integral part, yoi can limit the amount of answer inertia per error and time and dampen the control loop oscillation that way.
The breadth of topics you cover is amazing. I love this kind of engineering. Also; you’re the only person I’ve seen make a watchable sponsor read. I’m sure it’s a lot more work, but they’re always funny as hell. I’m glad squarespace is cool with your artistic liberties.
Monorail. Monorail. Monorail.
Monoraaaaail! MONORAAAAAIL!
Solorail
I hear those things are awfully loud
Boooooooo
MONo.... DOH!!!
Thanks, for mechanical stuff like this attention to detail is important regarding success factors is a higher level learning. Also using models is another for feeling the understanding, completely different to reading it on a screen or the page.
Hey that's the ksp 1.25 m gyro that's a pretty cool Easter egg
6:35 A more commonly used unit is Nms for angular momentum (e.g. in Reaction wheel specs). It is then easy to figure out how much the momentum would go up by applying a certain torque for a certain amount of time.
There was a gyro stabalized car that drove on 2 wheels. The car still exists but it doesn't really work for highway speed hence why it never got past the prototype stage.
Isn't that just a motorcycle
@@bobbob9211 If it is what I am thinking of, it was essentially a self-balancing enclosed motorcycle, but the seating position was more like a 1-seat racecar.
Not comfortable, wasted energy, and increased wheel loading (and therefore increased maintenence costs and road wear) , making it worse than most existing motorcycles and cars.
Not to mention the lack of room for safety systems, fuel or batteries, and cargo, which would have made it difficult to sell even if it got out of the prototype stage.
@@piisfunSounds like it is only useful for parades and science demonstrations. It has the unique feature of being able to stabilize at a complete stop with an uncooperative load.
The driver is the primary stabilization system of traditional motorcycles at extremely slow speeds. The front fork angle does most of the stabilization once the vehicle reaches bicycle speeds.
@@bobbob9211legally in the US any vehicle with 3 or less wheels touching the ground are motorcycles. In terms of driver experience, It drives closer to a car. In testing it drove just fine at low speeds but had issues at higher speeds and there were questions about winter conditions.
Funding dried up and development ended. It was found and restored and sits in a museum.
@@piisfun gyro car, built by wolsely, 1914...
with three bench seats, possibly up to nine passengers, three side by side?
brennan, he of the monorail, did a car in 1927...
ford had a go...
Not sure where the heaven’s gate shade came from, but I love it. 👟
You could also increase granularity by putting the servo on a like a 3:1 or even 4:1 gear ratio. The servo probably far exceeds the the actual angular limits of the gimbal so putting it on a ratio would let you use more of the servo and increase the granularity. Wouldn't even really need to change the code much as it would be a simple case of multiplying the desired angle.
I think if you were to couple the gyros to the servos with springs rather than rigid links this might make the control system design a bit easier. This would allow the servos to apply a torque rather than a position, and in the short run servo position would just directly translate to righting torque on the vehicle. Of course due to precession the gyro position would be the integral of the total torque applied to the vehicle over time: so the gyros would tend to drift towards lock and there would need to be another control loop on commanded servo position that biased the vehicle position command towards the opposite side of vertical to "unwind" the gyro position... honestly, how did you get this thing to balance with only a proportional control from vehicle position to servo position? That's impressive, it doesn't even feel like it should work! Always fun seeing what you're up to!
Don't use junky servos! Get some MKS servos. They have microsecond resolution and hella amounts of torque. You can run them on 2s (8.4v).
What you want is a nested PID loop
the outer loop uses angle position error to produce an angular velocity setpoint
the inner loop uses angular velocity error to produce a torque setpoint (which maps directly to a CMG output)
and also, you really to need PD control for something like this because P-only is doomed to oscillate. TBH integral term would be useful too. PID exists for a reason.
fuzzy is better.
This was fun, but ohhmahgosh a proper PID would help with the jitter problems. Its also very easy to implement on arduino, like, here's all of the logic you'd need:
#define P_coefficient 123.45 // coefficient for proportional component (Angular speed)
#define I_coefficient 12.345 // coefficient for integral component (Cumulative angle error)
#define D_coefficient 1.2345 // coefficient for derivative component (Angular acceleration)
float outputAngle, angleError;
long integralTime;
-----------------------------------------------------------------------
void PID() {
angleError += [MPU_GET_ANGULAR_SPEED] * (millis() - integralTime) / 1000; //multiplies time since the last measurement by current angular speed to get the angle, and adds it to the cumulative error
integralTime = millis(); //starts counting time from the last measurement from 0 again
outputAngle = ( [MPU_GET_ANGULAR_SPEED] * P_coefficient ) + ( angleError * I_coefficient ) + ( [MPU_GET_ANGULAR_ACCELERATION] * D_coefficient ) + 90; //multiplies P, I, and D by their respective coefficients and adds them together to get output angle for servo
if (outputAngle > 120) outputAngle = 120; //limits servo travel
if (outputAngle < 60 ) outputAngle = 60;
servo.write(outputAngle); }
Just put the definitions and variables where they belong (before void setup), the whole 'void PID()' block of code after everything (not in the void loop(), after it, like in the end), and have the line "PID();" somewhere in the main loop (void loop() i guess).
Then replace all of the square brackets with the actual mpu readings for angular speed and acceleration, and adjust the coefficients (D, the derivative component is the one that helps with jitter the most), and you're good to go. This is literally everything you'd need. I enjoyed this video but PLEASe do this omg its so easy and would improve everything so much
You should check out Aaed Musa's video "High precision speed reducer using rope". A capstan drive and small field-controlled brushless motor would be a perfect replacement for the servos in this project.
That is a very good video
You might also consider allowing the gyros themselves to be able to rotate more, or adding another two gyros. It’ll take up more space but it’ll give you more reaction. Consider making the extra gyros with different density material to eliminate resonance throughout the entire system.
So how cold does it get?
Have you ever delved into 'ring laser gyros'? Not really applicable to this project but seriously brilliant design. They were so good, I have never seen/heard of one needing replacing during my military career vs the older traditional gyros which constantly failed. For those not familiar, a laser is used to detect to earths rotational direction on powerup, precisely setting East and West in mere microseconds vs the traditional 45 minute 'precision align' needed for a traditional gyro. I'm told newer ones don't even have moving parts anymore which is curious.
Your videos are always so sick and entertaining, and I love the variety of content you make, but it's always so enjoyable and educational to watch. keep bringing the amazing videos! 😁
If you use a more beefy microcontroller (with an FPU) you can use .e.g. madgwick sensor fusion for the MPU6050. This results in a much cleaner orientation tracking.
Like what ?
@@andymouse A safe choice for raw power is a Teensy. Otherwise anything with an Cortex-M4F or better. ESP32 is also plenty powerful.
For the servo issue you could use a longer arm on the flywheel assembly to reduce the amount of movement the servo is providing.
The other option would be hydraulics as they are fairly simple (LEGO) to implement and have high torque and extreme precision
The MPU6050 is a very old and very noisy accelerometer. Newer sensors like a icm-42688 (or even a BNO055) are an order of magnitude or two less noisy. I bet you'd get significantly better control with this one change.
Very very cool reaction wheel work! I don't think removing a rail will reduce the cost by 50%. I think it would be closer to 10% since everything involved with the job will need to be provided and installed. Labor is by far the biggest cost, and the main labor is laying gravel, cross ties, bridges, rail signals, etc. All you'd be saving is the cost of rail which is likely $1.00 per pound and a little bit of labor.
I believe the land acquisition is the largest cost on many rail projects but yeah saving a little on steel wouldn't change much
Anybody else think the highlight of his videos are when he shows the mascot?
0:57 that right there got me hocked up to your channel.
14:35 The servos may be working against each other. Tolerances and slight deformations could cause the servo on one side to push the servo on the other side out of the position it has reached, which then adjusts and affects the other side.
As the complete control range is apparently not required, the lever on the servo could be shortened. This would give you more torque and a higher resolution.
Thanks for the interesting video! 👍
Would be super cool to see you expand on the gyro design, so many other Chanel’s only work on reaction weals
Super genius you are with hell off sense. 😍 love your effort.
This is an ingenious way to simplify monorail's. You should try and patent this
Lol, it's far from a new idea
This video had proper ending! ❤
I can say with reasonable confidence that part of the jittering was the fact that it was just P controlled, add a few extra letters and you’d probably be fine
bro please keep it up with this incredible content!! all love from Brazil
you need to change your ratio of the servo so put the link on the closest point the the pivot point on the servo horn and increase the point on the gyro. that will increase your resolution of the servo control. servos also have back lash and this will also decrease the backlash seen by the gyro
If you added an integral gain you could band-aid the problem of servos having a poor repeatability, since that error over time would integrate back into the cv
You said so earlier in the video, the precessing rate of change is proportional to the torque. To balance things, the torque usually needs to be proportional to the angle error and the change (derivative) of the angle error - PD control. But your servos try to enforce a position which is the integral of precession rate. So, hand wavingly... integrating once makes P and D into I and P.
You need a PI controller.
Or if you extend it, I think you'll need a second integral, something like P-I-I2.
Also, another youtuber James Bruton made like a dozen videos with various gyro balancing robots, you could check those out, or contact him and he might give you his secrets :)
You’re a talented guy
0:25 the International Space Station caries 4 + spare of these.
Length: 109 m (358 ft) (overall), 94 m (310 ft) (truss) Width: 73 m (239 ft).
4.5 million lines of code to make it work.
I kinda figured this when i was fixing my bike as 10/11 year old kid, i was spinning the front wheel of my BMX with my fingers while holding the wheel or shaft.
the wheel resisted my force when i tried to move it.
11:34 Depression is actually good for something for once
un bel progetto. complimenti mi piace molto. sai fare un po di tutto non solo i frigoriferi
God! I love your sense of humour! 🤣 I'd like to see more of this kind of thing
I tried to build a phone gimbal using servos, faced the same jitter issue whenever i attached a phone(without the phone, it would work fine). It existed even after i added a complimentary filter in the control loop and/or adjusted the gains
oh, you too! I'm reading all the comments, seeing what I can learn and will put it on the list of projects to try again...
One word: granularity. And you'd think it applies to the sensor, but no. It's a triumvirate. Sensor, software, AND hardware. If the three don't match, aren't enough or are too much, you end up having issues.
You need to fully understand what you're making to make something like this work properly IF you're not using someone else's recipe (of which there are many online).
I watched the you tube video for the 1909 brennen monorail and seemed to have the rotating reaction wheel mass axis pointing at each other and cross-coupled rather than servo'd.
So, just to be recap, this man has dabbled into:
- Thermodynamics
- Chemistry
- Electronics engineering
- Electrical engineering
- Control engineering
- Mechanical engineering
and I'm probably missing some.
What did you even study at school?
probably didnt. just liked reading, and learning, and trying, and found the indoctrination system to be rather lacking.
"What did you even study at school?"
Hyperspace Pirate School, silly.
Hell yeah!
Thank you !
If you're looking for a higher resolution solution to RC servos, use RC servos, but remove the electronics inside them, internally they are a gearbox, dc motor, potentiometer and control electronics, use a small H-bridge to drive the motor directly and an ADC to read the position. This solution is quite cheap, but requires you to tune the PID for the servo (or use a fuzzy controller)
There are a number of videos about balancing.Tesla turbines on youtube. These could be a big help to balance those steel reaction wheels.
Love your projects
Rhere's nothing on Earth like a genuine, bona-fide, electrified, six-car monorail.
Albuquerque?
May be a good idea to use a reduction system with those servos to gain motion resolution, plus can use a smaller servo for the same task since reducing the mobility of the servo with a reduction sistem, you gain strenght .. may be a gear reduction..can be 3d printed, but i may preffer a string reduction system, lookd better and works smoother with less backlash.
Short arm on the servo and a long arm on the reaction wheel now you have more resolution without changing the servos
If you switch to microsecond control of the servo pulse commands you might get better resolution. Typically servos will have a range from 1000 us to 2000 us pulse length.
brilliant should be your sponsor
have you seen Prof. Laithwaite from the Royal Institute, his video on Gyroscopic effect and possible implications to counter or cancel gravity. The videos are really old, but hes a great host and makes the content Anti-Boring just like my mans HSP here! Cheers from Texas!
Your controller should take into account bank angle and roll rate. Meaning that bank angle error will drive towards zero and roll rate will damp that signal based on the rate you approach it. Would probably be good to write out some equations approximating the moment due to gravity and bank angle and the moment due to your control effector. Do a Laplace transform on the second order ODE governing the system and you should be able to model a reasonable PI controller (derivative is probably too noisy unless you lowpass it) using Ziegler-Nichols and a little bit of simulation
1) Couldnt you just decrease the speed of the steel disks until you hit an optimum between strength and precision?
2) I think using a mechanical joint that fixes the position of both wheels would be better than using active control.
Great video. Went way over my head, but great video...😊
Here to say : Please if you do PSA system , please go heavy with EXTRA security and safety !
It would be a shame to loose you for a oxygene burst (remind me of your last lucky pipe rupture )
Anyway Sweet video as always
Nifty AF
you could just 3d print a longer arm for the thing you connect the servo to? you lose ability for full circles, but a longer lever at the flywheels end(the green part) for the connecting point would mean it moves less angles when the servo moves say 90%. like if you don't need linearity but just want finer granularity at that end then that hack works out. (and is a simpler change than some reduction gears, it's more like a reduction lever then)
StuffMadeHere might just have the miniature bike for you.
P factor is not a gyroscopic effect, it’s an aerodynamic effect of non-axial airflow into the prop. This is constant for a constant angle of attack, airspeed, rpm, and air density.
I think you're trying to create a rocket engine or a jet engine with the gyroscope ang the cryogenic liquids.
I like your videos because I'm a nerd at science.
Thank you for repping the chemEs on youtube
Well theres nothin on earth like a genuine bonafide gyrotabalized monorail