Thank you so much for joining me as we work through the design challenges of something like this. We are already making changes and improvements! Please check out bill's article as he talks through the whole electrical design, discusses the different position-sensing options, and changes we plan to make there as well! dronebotworkshop.com/custom-servo-motor
I can't wait until we get better analog computers, can you imagine the AGI that will come from that? I'm curious if an analog computer would be better?
great video. quick question... the force needed to turn steering wheel will be quite heavily dependant on the TYPE of surface the vehicle drives on and grip of the tyres no?
I’ve seen a few of your videos and they were super helpful. I’ve followed Jeremy for a long time, it’s cool to see you guys working together. I got to go through a few of your other videos when I get the chance.
Looks like a very fun project. Cool stuff. You should be able to avoid bending the steering column by adding some support adjacent to the large sprocket. With the current design the drive shaft is a long unsupported span which is very weak in bending (the chain applies a torque to the drive shaft AND pulls on it very hard - like hanging a weight from the sprocket). Putting a bushing next to it that is directly mounted to the frame should make it an order of magnitude stronger.
agreed. Reducing the length of the moment arm would certainly make it more resistant to bending. Adding a bushing is a good idea. Though I think the ultimate key is some kind of mechanical fuse or limit switches.
@@Jeremy_Fielding Why do you think that the ultimate solution is fuses or limit switches? If you could make some simple changes like the bushing to just not break if overloaded, isn't that better than adding more complexity? Something to consider for the limit switch idea is that you can still overload the mechanism without hitting the limits. For example if one of the wheels gets trapped in a rut you could find yourself applying max motor torque. To deal with that issue you might then add a shear pin in addition to the limit switches, but that has the downside of disabling the cart, potentially in a dangerous way while moving. The next step would be adding a sensor to detect if the shear pin has failed.... you can see where this leads :) If you do conclude that it isn't feasible to just make it stronger, I'd recommend looking into the vast supply of off the shelf torque limiters. I'd recommend a self resetting kind which will not disable the drive if you trip them. If you overload them they will slip, but as soon as the overload is removed the drive re-engages. Basically an oversized version of what you see in lego / k'nex motors that allow them to slip without damaging the gearbox.
Sorry about the confusion there. I am suggesting that both are needed. something like a torque limiter would protect the motor from overloading. Adding the bushing/stiffener would protect the steering column. The torque limiter could also be electrical. I am hesitant to put my weight on any one solution, as we both know it takes a while to think through all the possible consequences and how to resolve them.
I am not an engineer and I have ZERO experience doing anything close to what you do, but your videos are so engaging. That 25 minutes zoomed by and left me wanting to see another 3 or 4 hours worth of video. Please adopt me! (I'm 50, but housebroken)
I appreciate the "pain and suffering" you go through for us. I am especially impressed that you include so much detail on your problems and how you solve them. There are a lot of videos out there that go through build projects step by step so that almost anyone can complete a build by following instructions. You videos are much more valuable than those. You help others solve problems that aren't part of the build, by teaching about how to solve all problems. As a teacher, I can prescribe these videos to my students who are interested in such things knowing that they will not be wasting their time. Many thanks for your work.
Great project! The motor does seem to continue spinning even after breaking the steering column. In addition to the software PID control, I think adding mechanical limit switches to stop further rotation at both extremes could be a good fail safe mechanism.
There is a really cheap alternative to traditional potentiometers called a magnetic absolute encoder. The typical one I have found that is cheap is called a AS5600 magnetic encoder. It can be had for about 2 bucks, and has a little breakout board where you either can get the same sort of signal you get from a potentiometer or receive data from I2C. It has sub degree accuracy, and won't fade and become less accurate over time like the wipes of a potentiometer.
Came here to say this. A magnetic or even optical incremental encoders would work far better than a potentiometer. Pot values drift with changes in temperature by as much as 25% and this would affect the end steering unless it is corrected in software.
I definitely agree with the other commenters. The AS5600 will give you even better resolution/accuracy in a much smaller package. Only concern would be magnetic interference from that large motor, but that's easy enough to deal with.
Yeah i would also absolutely recommend this option. I used a 10 turn pot when i fitted RC to my van some years ago, and it's a failure waiting to happen. It drifts and generally is unreliable.
my professor played your video on moters in class lastnight. He really love how professinal it was and he was "extra" proud that a black man had made it.
this project has come in at the perfect time. I'm an ME, have 4 kids, and have been looking for a hobby to combine my ME skills and learn how the electronics and programming side of things work. Thank you for your videos. They are very informative and fun to watch.
Looks like a fun project. I joined a group at the University of Alaska Geophysical Institute trying to design a vehicle for the DARPA Grand Challenge. It had to follow waypoints while avoiding obstacles. One of the guys from the Mechanical Shop did most of the genius physical modifications. I was on the software team. It had lidar and radar and an old computer running Linux. Unfortunately we found out about the challenge too late. We got as far as testing in front of the admitting judges but a couple technical issues had us just miss out. But I was impressed at how far it made it along the course, just short of the end, before it got a bit lost. There were some clever bits. Once you ran the AI program it started the gas powered car then ran through calibration steps to verify the steering and brake limits. We had kill switches on all sides (just in case) and an old Apple joystick that allowed us to drive it manually if necessary since there was no steering wheel and the driver’s seat held the steering and braking hardware. Since it was designed to run a course autonomously we couldn’t run out on the track and restart it if the vehicle or the program died. If the vehicle stalled the computer knew how to restart it. And if the software died I wrote a program to spawn several redundant processes that simply monitored each other; if the primary script died the next in line took over and spawned a replacement so the max (3) was always running. All three programs would have to die at once for it to stop. It was a lot of fun and I learned a lot. I need to find out what ever happened to it. I’d love to keep tinkering at it.
I really appreciate all of the footage of what goes well and what doesn't. So many videos only show what works and don't show all of the issues and solutions you run into. That is part of making and is so often glossed over. Thank you for including that in your videos. It adds so much to the reality of what a project is going to take. My son and I were just talking about this on a project he was working on. He is trying to remove the transmission from one of his trucks and it won't come off. He has tried all of the tricks he knows about and the videos he finds, the transmission just comes off. Or if they have an issue, it is a before and after and they really don't go into how they got the two pieces to come apart. Thank you so much for putting the time into recording your videos and in the editing part, keeping the experience in there.
Love how this guy shows his errors and growth. This is real engineering. Make all mistakes in shop, and then be expert on the streets. Keep going bro…. Looking forward to next videos on this.
Your videos are entertaining, informative, and easy to understand and so enjoyable. Thank you. I'm in a very difficult place in life right now, and have struggled for a long time with thinking I will never have a job that's satisfying and keeps me engaged. Your videos have reminded me of some of the dreams I had in my younger years, and sparked a hope again. I just need to find a way to put myself in the position to find an opportunity/mentor like you did to get you into Engineering. I think I'll go to the community college and see what books and resources there might be there for me.
My friend I know exactly how you feel. I too struggle with depression from not knowing what my career path is supposed to be. "Do what you love to do and you will never work a day in your life." I long to learn what that "love" is, what a fulfilling career path is
Limit switches and current over load detection (amp meter and software limits , or an actual system stopping overload with signal outputs) would allow you too retain control while also stopping excessive torque scenarios
I am a first time watcher of your channel. I love you passion to teach the next generation. Keep it up. In this video the motor was to strong and broke the steering column. To use the same motor and protect your work I recommend using a current limiter on your speed controller. With a current limiter you can adjust the maximum torque the motor puts out. This will protect the mechanics. Start with a small torque. When you are satisfied that the steering is doing what you want, increase the torque a little at a time until it works. An added advantage to this method is safety. A person can overpower the steering if something goes wrong. A double bonus.
OK on the steering column failure: trying to decide which you want to fail first the motor or the column, is the wrong question (at first). Your first question ought to be "What are the forces involved that I should engineer for?" and design both a column and a motor that can withstand those forces plus a good margin of error. That way you can be confident that the whole assembly should be able to withstand whatever happens during normal operation. Then you can decide which one you want to fail first. My recommendation: Fail the motor first. It's a more expensive part, but it would still allow for manual steering. But I think a better option is to have a clutch. Instead of chains, have at least one belt-driven component that is *designed* to slip when the load goes too high. Slippage is also dangerous - you can't get around the fact that a failure is going to be dangerous. But you can code the controller to detect a slipping belt and stop the motor and a slipping belt allows the entire system to recover on its own once the load goes back down. And if the belt needs replaced that's a *really* cheap part.
Also, if the slippage is between the motor and the shaft, but the encoder is still a no-slip connection to the steering column, the controller will be able to continue controlling it until it gets severe enough to require a shutdown.
My suggestions would be to use a magnetic encoder for the the steering position, no temperature or moisture drift, no fading, with the right enclosing weather resistant (not proof). The magnet could just be glued to the end of the steering column/pipe. Also for the safety, you probably want the motor torque lower than what you can do with human input so that you can override the computer, if it does ssomething stupid. Trust my, it will do this. Maybe a combination of V-belt drive (the slipable kind) or a torque limiting clutch, so the motor can run crazy and the steering survives. Also have a big emergency-stop kill-switch reachable at at any time and something like a wire based plug things like the waterjets use.
thank you for doing showing your mistakes! a lot of times people skip over the most important parts (troubleshooting and thinking through problems) and you embrace them, thank you!
THIS IS A PROJECT FOR GPA. HE CAN SPOIL THE PERFECT ONES, AND DO SOMETHING THE PARENTS WOULD NOT APPROVE OF. WHAT IS SO FORTUNATE IS THE ATTENTION, AND LOVE YOU TWO SHOW YOUR KIDS.
As always, great video. You could use a two piece steering shaft and a love joy coupling. That way the love joy coupling would fail before breaking anything.
A length of 1” go kart axle with a key way would solve a lot of steering issues. There’s all kinds of hubs, sprockets, bushings and bearings that would immediately bolt on without modifications. Some welding, turning and thread cutting would be required to install a steering wheel and use the same steering rack. The effort would be worth it for the amount of bulletproof safety you would be gaining for the most precious of cargo. Also, you need to support the steering shaft as close as possible to the torque input. The same thing would happen by hand if the steering wheel wasn’t so closely supported by the bushing.
Ah yes, the classic inverted feedback loop.. oops! Something I always do when working with feedback loops is clamp the maximum output speed at a very, very low value (or current-limit similarly) so there's at least some hope to catch issues like this before disaster strikes. Works a good 50/50. :) This is going to be an exellent series, I'm looking forward to the next video. It was great watching your keynote at Remoticon on the weekend btw!
Bill's channel is awesome. Please don't forget about the safety aspect of the steering column. If it is too strong it is a potential hazard to the driver.
Prehaps size a shear pin that fails before the steering column. That way if it fails you'd hopefully still have manual control over the vehicle, but the motor would be mechanically disconnected?
Not an engineer but the first thought I had about the steering column was that you DO NOT want to break the steering column. If the motor goes, yes you can't control it electrically, but if the shaft goes you can't control it electrically OR manually. If the cost of the motor is the concern maybe change something else to break first (the chain?) or add some other protective measures (electrical or mechanical). Just a thought. I suppose you would just stop the car if something like that happens so maybe the steering column isn't that critical. Great video, as always.
Haven't watched in full yet so forgive me if you already address it, but I had some thoughts on your safety comments regarding electrical / mechanical components being the weak link. If you allow the mechanical side to be weaker: - You can't manually steer the car in the event of a failure. - The torque may be high enough to cause injuries (say, if a kid puts their arm through the wheel and gets it pinned somehow). - The autonomous system loses steering control. If the electrical side is the weak link: - It can be expensive. - The autonomous system loses steering control. I would suggest you build in a self-resetting 'fuse', either mechanical or electrical to limit the torque. You could design the driving gear to slip mechnically at a specific torque (could be an interesting mechanical problem to solve), or install a current sensor / limiter on the electrical side.
This is a problem is a real thing in tractors Yea agriculture is way ahead anyone else in self driving machines Back in the 90s we had auto steer was simply a motor that had a rubber wheel that rode on the steering wheel When you want to disengage the auto steer you simply reef on the wheel When the autosteer motor senses the over torque it would shut off and let you drive again I figure its a setting in the computer that knows the current the motor requires is unusually high and shuts it down And yea the problem of it dropping out was/is a thing if you hit a big bump or something the jerks the wheel it would cut out and you'd have to grab the wheel quick and re-engage it These days it's all built in and it can electriconicaly activate the steering valves its self
This is a problem is a real thing in tractors Yea agriculture is way ahead anyone else in self driving machines Back in the 90s we had auto steer was simply a motor that had a rubber wheel that rode on the steering wheel When you want to disengage the auto steer you simply reef on the wheel When the autosteer motor senses the over torque it would shut off and let you drive again I figure its a setting in the computer that knows the current the motor requires is unusually high and shuts it down And yea the problem of it dropping out was/is a thing if you hit a big bump or something the jerks the wheel it would cut out and you'd have to grab the wheel quick and re-engage it These days it's all built in and it can electriconicaly activate the steering valves its self
I agree while it may be more complex, you would save both the motor and the steering column by having a clutch system in place and you don't have a catastrophic failure that would injure a driver. They would also be able to take control manually as well.
Add limit switches to the column. They should cut power to the motor when the wheel in turned passed its limit. Alternatively place the motor on springs and the limit switch against the motor housing. If the motor "torques" the switches will be triggered. Alternatively add current sensors on the power lines to the motor and disable the motor when max current is exceeded.
Great video! So realistic showing the trial and error for a robotic project. Everything goes wrong but sometimes you make brilliant discoveries that brings it all back on track. I look forward to following this journey. Thanks for not giving up!
Nice moves. In the past I have found that a cam attached to shaft and an analog output inductive proximity sensor like Automation Direct DW-AS-509-M12 mounted perpendicular to cam is a slightly less cost effective but infinitely more suitable solution for resolving angular shaft position < 360 degrees (no gearing, no chain, no sprockets, no wiper wear). You can cut cam to create desired shaft angle vs output voltage profile. I Have used this method to replace problematic pot failures on dancer arm for dereeling 2000lb spools of 10 ga copper wire. Great work!
A support bracket from the motor to the steering column would prevent bending and give somewhere to mount a guard. It could have a bearing or a brass/Teflon bushing on the column.
Possible idea for steering input in the event of system failure. (This would probably work best with a belt drive) Make the steering column very strong IMO I wouldn't ever want a failure of my steering input. For the self driving steering input that is driven by a belt drive. Use a tensioner that is pinned at the proper tension so the self driving motor can act on the steering column. In the event of a failure either having an e stop style switch in the cockpit and or self diagnostics so that the pin would be pulled using an air piston or linear actuator releaseing belt tension and allowing mechanical steering input. Very cool project looking forward to more videos!!!
On the steering failure. I think the very obvious answer is to sacrifice the motor; (use a smaller motor). That way when it fails, at least you can still grab the wheel and steer manually; You gotta have that manual backup. You actually got lucky that your chain popped off, or you could have lost the column AND the motor (maybe. lol)...
How about a slipping clutch between the motor and steering column? Enough torque to turn the wheel, but any more and it just gives. Also makes it safer in case of trapped limbs. Then just have the feedback potentiometer placed after that clutch, so it still registers the correct steering position. It's great to see Bill working with you on this, your both amazing engineers 😍😍
Just make, or have made a solid steering shaft. It doesn’t need to be an exotic metal, regular carbon steel should suffice, but being solid instead of hollow should keep it from bending. Also, like stuff made here mentioned, some support near the sprocket would also help.
Making the shaft solid would fix the "excess torque on the shaft" problem, but would probably just break something else. The right approach would be to check each part of the system during a commissioning process and make sure the motor is actually wired around the correct way, something that can be done on the bench before installation.
You should have a shear pin in one of the gears controlling the steering wheel shaft. If an over-torque condition occurs (like hitting a curb or the motor over-steering), the shear pin will break but the driver will still be able to control the steering.
"Thank you for joining me through all this pain and suffering" I think that's my new favourite sign off for engineering videos! 😁 I couldn't agree more with wanting to me able to hit undo irl as well. An idea for the coupling problem might be to add a spring loaded connection, where both shafts a coupled such that they are under tension to align. And to combine this with a ball bearing detent style mechanical lock in the connection up to a certain force application. This allows for a solid connection untill a maximum load, and then can reset when it's possible to allow for control to be maintained over the output. I hope this conveys the idea, I'm sure this can be done using two disks with slots, but there are many implementations. I look forward to seeing what you come up with!
Very cool project and excited to see the joy it brings the family. Your reversed motor direction reminded me of a design issue we had on one of our robotic arm prototypes at my old job. It was a position controlled hydraulic robotic arm and we had to rework our first prototype manifold due to some miscommunications with the mechanical engineers designing it. Namely, swapping the A and B sides of the circuit. Unfortunately, no one on either team thought to update the engraved labels on the outside casing. Flash forward to six months and we are performing a manufacturing dry run with the prototype manifold. As soon as we powered the controller on, the position control system took over and the arm slammed itself into a completely flexed position. These were some beefy arms too so I’m very glad no one got hurt. We had a strong safety culture there and had done a a thorough safety analysis for exactly something like this happening. After some head scratching and investigation, we realized the manifold had been installed per the original engraved labeling! Since the polarity was reversed between the hydraulic command and the feedback, we had a perfect positive feedback loop just like your steering wheel deformation event. Very frustrating to encounter these in a project, very cool when you realize exactly all the mechanics and science that forced it to happen!
That is very cool. Reducing torque is an option but first you should definitely go with a beefy solid shaft to avoid future problems. Tubes are weak when they have holes in them.
What I've learned from working on similar project... you need enough torque so it can turn in a lot of situations. You should introduce some sort of a clutch that can decouple motor from the steering. You need some sort of torque measuring device on the steering shaft that can measure torque from the wheel to the shaft. This is safety for example if someone grabs the wheel it should disarm/decouple the system. Of course for simplicity you can put some metal mesh on the wheel connected to a transistor with small resistance so it could be like touch sensor, if someone touches the steering wheel it automatically disarms the system, but this could be only for testing. I can clear if needed. Good work!
Cool project. with the torque your pulling, high enough to bend the steering column, would limit switches just before maxing out the steering help save the motor and the steering shaft? Cut the motor power if you pass point X on the steering arm. I've seen this used in two industries I've worked in with auto tracking of steered directional antennas, where the device was to constantly hunting for a stronger signal. moving or initially placing the box too far off access, and the control arms could buckle or snap a mount. so limit switches just before that point. Inline resistors to protect the controller from accidentally driving a 5V or 3V output line directly to ground. Not a frequent problem in finished electronic boards, but can happen at the prototyping stage. You'd have to check with Bill on how it would change the circuit. Also consider resettable fuses for the motor against short circuit and over current incase the control arm jams.
Nice! I like the beefy steering motor -- smaller steppers might have trouble turning the wheels on tougher ground. Experience says wheel slip and tire deflection will be a bigger source of error than your feedback potentiometer. Also, simple obstacle avoidance and checkpoint following AI is quite doable, but un-surveyed SLAM and safe navigation where people or pets will be, is a whole other kettle of fish...
@Jeremy. This is going to be 100 time harder to do than you think, I fear for your sanity but I cant wait to see the journey. I thoroughly enjoy the way you take us along for the ride in the design process, through the good and the bad.
LOL Have you seen any of my videos... Hard projects is what I look for :) I understand the pain and fully expect it to be harder than expected... if one can expect that and still be surprised... because that literally happens with every project :)
You're inspiring. Something tells me that stiffening that shaft is a shorter path to defeating the torque. Agree with comment about better shaft support if room. Even a solid shaft may bend if not supported.
22:21 Maybe a custom steering angle sensor would solve this problem. You could come up with a shaft smooth steering wheel, and a clutch motor to engage and disengage the steering wheel for the failsafe operation. Great work!
I always love your videos and the simple way things are explained. I'm an EE, fabricator, welder, machinist and programmer, so I love this stuff. But, your kids would get way more out of a go-cart that they can drive. No one wants to be a passenger when they can drive.
An idea could be to develop a kid friendly software for the self driving go cart, that way the kids can learn how to program with it to do cool things. It would be difficult, and Jeremy may need to hire a few hands to help out, but it could definitely be fun.
As others have noted, encoders are far better than pots. One reason not noted is noise: the encoder A and B lines are digital and so are very resistant to electrical noise. This will be important when you get a drive motor with speed control hooked up to make your cart go - some of those controllers put out a bunch of noise.
In addition to a bushing right next to the sprocket, I'd put a friction overload clutch between the motor and steering column. This will let you set the maximum mechanical torque in the system so you can start testing at low torque. Also since the position feedback is after the friction torque limiter, you won't loose position after an overload. Fyi, Amazon has cheap worm gear boxes with through bores for shafts. Find one with a 20-25mm ID to use instead of the power wheel chair motor? (or 3/4-1")
Hey! Thanks for sharing this one! I recommend you to find inspiration in the automotive electric power steering. Few things must be (re)considered in your design: - Motor with worm gearbox it's simply a wrong choice. Yes, it has great amout of torque, Use a gear train or even a compound gearbox instead of that contraption you've made. Or...just give a try to a hoverboard motor and use a chain to drive the steering wheel. That 500W baby will turn whatever you want and you can also play with FOC to precisely control the motion! O-drive + hoverboard motor = interesting combination - Use two Arduinos instead of one and start figuring out how to make them work as a redundant of each other. Better be safe than sorry! Automotive power steering uses two separate MCUs that work in parallel and if one fails, the other takes the control in order to maintain a safe usage of the whole system. - Use some end of travel limit switches on the steering bar between the wheels. Anything that has an IP rating compared with automotive sensors should be a great choice! - Use 2 different angle sensors (AS5600 hall sensor as a fellow suggested in the comments section) and make the comparison between their values before deciding when to make the motor turn. These are some of my thoughts that came after watching your video. I hope you will give a try to some of them :)
You could also use a high resolution absolute rotary encoder. They're used in higher-end amateur telescope mounts. Repeatable precision is often less than one arc-second so that would be plenty accurate enough for your steering solution. Also, mechanical limit switches will be helpful. Just like you have on the 3D printers, auto-homing is very useful. Will be fascinating to watch your build!
Jeremy. Couple of suggestions: look at wiper motor sized motors for go cart steering. That wheelchair drive motor is capable of moving your whole vehicle.
Tough break with the control system Jeremy. I think we all know though, that if anyone can sort it, it’s you. Wishing you good luck with this groundbreaking project. Very interesting video, thanks.
Super cool project. If I were choosing between the motor failing or the steering column failing, I would always lean towards breaking the motor because it leaves the human/driver in the equation. If the steering column breaks you remove the ability for you or your kid to steer the kart in a safe direction. Humans are squishy and motors are easy to replace.
As always - great video and awesome project! Looking forward to next parts :) I would add two things to improve safety: 1: Physical limit switches for the steering. They could be actuated by steering column or the rod pushing wheels. Magnetic switches should work fine. 2. Since you have a potentiometer as a feedback, you could implement simple safety routine in your code : when microcontroller is instructing the motor to run I any direction, but it doesn't see the potentiometer values change ( after some short delay ) it should stop the motor. This could prevent few bad things from happening.
This looks to be shaping up to be another awesome build. If it was me I think I would upgrade the steering shaft with a solid alloy, it would also be easier to get the proper hardware to mate with it as well. Like anything you build there will always be a failure point in the construction. The key is to design it so that the components fail somewhere beyond the point they need to safely work at in the most extreme situation. If your past videos have shown me anything is that I'm sure you will figure it out.
I didn't read all the comments, but I think what you need are an end stop type solution so the motor won't melt and the shaft for the steering won't get bent. It could be implemented in software (pot readings: if it gets too high or low, cut off the motor power) or with hardware (actual switches that cut off the motor power that direction when the column gets turned too far one way or the other). That way the components are only subjected to their intended design stresses. No redesigning a system to fail intentionally.
Pots are a great inexpensive and simple solution for tracking steering wheel position, but you can try using an absolute encoder instead. Using one you will not depend on the precision of the ADC of the microcontroller which can be a bit noisy at times, higher sensing speeds, due to its high resolution you will not need a gearbox and you will always know precisely the direction of the steering wheel with the option of program the motor rotation limits
Jeremy, in a recent video I complemented you on your ability to smile in the face of adversity, so well done for continuing in that vein with this video. However, in this video I noticed another one of your "super hero dad" skills. Specifically keeping clean. I only need to think about going into the garage wearing light coloured clothing, and I'm filthy from head to toe. Can you share any tips with us, or are they trade secrets ... ;-) Good luck with the build, I'm looking forward to following along ... :-)
Hopefully your theory about it turning the wrong way is correct and it certainly makes sense. However, I would still say set the limits on the potentiometer to not actually hit the extremes on the steering so it never needs to apply that kind of torque. Obviously if the wheels ever get stuck it might still try and apply that much torque but at least it won't be fighting the limits of the steering all the time. Great video as always!
If that steering column is a hollow tube I’d want to replace it with a solid metal bar. That way if you have to attach something to it by clamping or drilling you don’t deform the metal and weaken it. That motor is strong and fast enough to do damage to you or the machine so perhaps do initial testing without the chain on. Then when it’s attached you can s-l-o-w-l-y calibrate it to find your left/right extremes and make sure it never hits those, either programmatically or with feedback switches, (or both). Oh, and when you tested how much force you’d need to steer you pulled at the rim of the steering wheel giving the best mechanical advantage. But if the chain is closer to the center of the steering column it will take more force to turn it.
Can you make a video on where and how you bought your equipment from (CNC, Lathe, workstation )etc. Fellow Mechanical Engineer looking to build my own workshop in my garage.
I was thinking about some sort of torque sensing, or a clutch mechanism on the steering shaft similar to what one would find in a tractor PTO shaft. So if the steering shaft hits its end stop the motor can continue spinning. Depending on the type of clutch, this would also facilitate the ability to take manual control by the operator in the event of a system failure. Something similar to what automotive manufacturers use for the electric steering assist. Definitely something fun to noodle on. Thanks for inspiring me to start building something similar with my kids! Love the videos and thanks for making engineering accessible to all.
The more I think about it, the more I think load sensing would be the way to go. If you're only watching the steering shaft position then the controller will just keep trying to turn the motor until the position is achieved. If you also monitored the motor current you could spot the spike in motor current as the steering rack hit the end stop. This would also allow for calibration of the position sensor. But some sort of clutch would still be needed so the operator could take manual control.
Thank you so much for joining me as we work through the design challenges of something like this. We are already making changes and improvements! Please check out bill's article as he talks through the whole electrical design, discusses the different position-sensing options, and changes we plan to make there as well! dronebotworkshop.com/custom-servo-motor
Hey just saw something you might have a need for especially in this time of year. Repurpose a old dryer into a garage heater
I can't wait until we get better analog computers, can you imagine the AGI that will come from that? I'm curious if an analog computer would be better?
great video. quick question... the force needed to turn steering wheel will be quite heavily dependant on the TYPE of surface the vehicle drives on and grip of the tyres no?
It's been a genuine pleasure working with you, Jeremy! Looking forward to continuing with this project.
Am really glad to see how this project will turn out, I will learn a lot from it
I’ve seen a few of your videos and they were super helpful. I’ve followed Jeremy for a long time, it’s cool to see you guys working together. I got to go through a few of your other videos when I get the chance.
The most unexpected collaboration.
Unexpected colab but I’m glad it happened.
Subscribed to your channel. I cant wait to watch and learn from you. Thanks
Looks like a very fun project. Cool stuff. You should be able to avoid bending the steering column by adding some support adjacent to the large sprocket. With the current design the drive shaft is a long unsupported span which is very weak in bending (the chain applies a torque to the drive shaft AND pulls on it very hard - like hanging a weight from the sprocket). Putting a bushing next to it that is directly mounted to the frame should make it an order of magnitude stronger.
agreed. Reducing the length of the moment arm would certainly make it more resistant to bending. Adding a bushing is a good idea. Though I think the ultimate key is some kind of mechanical fuse or limit switches.
@@Jeremy_Fielding Why do you think that the ultimate solution is fuses or limit switches? If you could make some simple changes like the bushing to just not break if overloaded, isn't that better than adding more complexity?
Something to consider for the limit switch idea is that you can still overload the mechanism without hitting the limits. For example if one of the wheels gets trapped in a rut you could find yourself applying max motor torque. To deal with that issue you might then add a shear pin in addition to the limit switches, but that has the downside of disabling the cart, potentially in a dangerous way while moving. The next step would be adding a sensor to detect if the shear pin has failed.... you can see where this leads :)
If you do conclude that it isn't feasible to just make it stronger, I'd recommend looking into the vast supply of off the shelf torque limiters. I'd recommend a self resetting kind which will not disable the drive if you trip them. If you overload them they will slip, but as soon as the overload is removed the drive re-engages. Basically an oversized version of what you see in lego / k'nex motors that allow them to slip without damaging the gearbox.
Sorry about the confusion there. I am suggesting that both are needed. something like a torque limiter would protect the motor from overloading. Adding the bushing/stiffener would protect the steering column. The torque limiter could also be electrical. I am hesitant to put my weight on any one solution, as we both know it takes a while to think through all the possible consequences and how to resolve them.
It is feasible and smart to make it stronger... I agree there.
Hmm yes, I also agree
I am not an engineer and I have ZERO experience doing anything close to what you do, but your videos are so engaging. That 25 minutes zoomed by and left me wanting to see another 3 or 4 hours worth of video. Please adopt me! (I'm 50, but housebroken)
"housebroken" hahaha you're also hilarious
22:20 - I sense the frustration, but I had to laugh out loud when the chain went "DING!" like you just won a prize.
Nice to see you here!
I appreciate the "pain and suffering" you go through for us. I am especially impressed that you include so much detail on your problems and how you solve them. There are a lot of videos out there that go through build projects step by step so that almost anyone can complete a build by following instructions. You videos are much more valuable than those. You help others solve problems that aren't part of the build, by teaching about how to solve all problems. As a teacher, I can prescribe these videos to my students who are interested in such things knowing that they will not be wasting their time. Many thanks for your work.
Great project! The motor does seem to continue spinning even after breaking the steering column. In addition to the software PID control, I think adding mechanical limit switches to stop further rotation at both extremes could be a good fail safe mechanism.
There is a really cheap alternative to traditional potentiometers called a magnetic absolute encoder. The typical one I have found that is cheap is called a AS5600 magnetic encoder. It can be had for about 2 bucks, and has a little breakout board where you either can get the same sort of signal you get from a potentiometer or receive data from I2C. It has sub degree accuracy, and won't fade and become less accurate over time like the wipes of a potentiometer.
Came here to say this. A magnetic or even optical incremental encoders would work far better than a potentiometer. Pot values drift with changes in temperature by as much as 25% and this would affect the end steering unless it is corrected in software.
i was thinking about the same thing! AS5600 would be a good choice! :) The accuracy is 0.08... degree!!!
I definitely agree with the other commenters. The AS5600 will give you even better resolution/accuracy in a much smaller package. Only concern would be magnetic interference from that large motor, but that's easy enough to deal with.
Yeah i would also absolutely recommend this option. I used a 10 turn pot when i fitted RC to my van some years ago, and it's a failure waiting to happen. It drifts and generally is unreliable.
I kept thinking that some alternate positioning sensor would be a better way to go, too. Who sells these things?
my professor played your video on moters in class lastnight. He really love how professinal it was and he was "extra" proud that a black man had made it.
this project has come in at the perfect time. I'm an ME, have 4 kids, and have been looking for a hobby to combine my ME skills and learn how the electronics and programming side of things work. Thank you for your videos. They are very informative and fun to watch.
Looks like a fun project. I joined a group at the University of Alaska Geophysical Institute trying to design a vehicle for the DARPA Grand Challenge. It had to follow waypoints while avoiding obstacles. One of the guys from the Mechanical Shop did most of the genius physical modifications. I was on the software team. It had lidar and radar and an old computer running Linux. Unfortunately we found out about the challenge too late. We got as far as testing in front of the admitting judges but a couple technical issues had us just miss out. But I was impressed at how far it made it along the course, just short of the end, before it got a bit lost.
There were some clever bits. Once you ran the AI program it started the gas powered car then ran through calibration steps to verify the steering and brake limits. We had kill switches on all sides (just in case) and an old Apple joystick that allowed us to drive it manually if necessary since there was no steering wheel and the driver’s seat held the steering and braking hardware. Since it was designed to run a course autonomously we couldn’t run out on the track and restart it if the vehicle or the program died. If the vehicle stalled the computer knew how to restart it. And if the software died I wrote a program to spawn several redundant processes that simply monitored each other; if the primary script died the next in line took over and spawned a replacement so the max (3) was always running. All three programs would have to die at once for it to stop. It was a lot of fun and I learned a lot. I need to find out what ever happened to it. I’d love to keep tinkering at it.
I really appreciate all of the footage of what goes well and what doesn't. So many videos only show what works and don't show all of the issues and solutions you run into. That is part of making and is so often glossed over. Thank you for including that in your videos. It adds so much to the reality of what a project is going to take. My son and I were just talking about this on a project he was working on. He is trying to remove the transmission from one of his trucks and it won't come off. He has tried all of the tricks he knows about and the videos he finds, the transmission just comes off. Or if they have an issue, it is a before and after and they really don't go into how they got the two pieces to come apart. Thank you so much for putting the time into recording your videos and in the editing part, keeping the experience in there.
As a retired ME I enjoy the enthusiasm at which attack things. Been watching for years. Keep up the great work!
Thank you!
"I need to take some careful measurements..." then break out the angle grinder. Yup, definitely an engineer. 🤣
LOL!
Watching your thought process while designing building and troubleshooting is priceless! My favorite practical engineering channel! ❤
Love how this guy shows his errors and growth. This is real engineering. Make all mistakes in shop, and then be expert on the streets. Keep going bro…. Looking forward to next videos on this.
This man is a amazing electrical, and mechanical engineer. He also has awesome tools and machinery , make his designs to become
reality.
Yes, two of my favorite RUclipsrs working on a project together. You both are amazing!
Your videos are entertaining, informative, and easy to understand and so enjoyable. Thank you. I'm in a very difficult place in life right now, and have struggled for a long time with thinking I will never have a job that's satisfying and keeps me engaged. Your videos have reminded me of some of the dreams I had in my younger years, and sparked a hope again. I just need to find a way to put myself in the position to find an opportunity/mentor like you did to get you into Engineering. I think I'll go to the community college and see what books and resources there might be there for me.
My friend I know exactly how you feel. I too struggle with depression from not knowing what my career path is supposed to be. "Do what you love to do and you will never work a day in your life." I long to learn what that "love" is, what a fulfilling career path is
Thank you so mmuch 30 minutes that felt like nothing, I love the passion that you put in every project. Awesome job
This is an exciting project. I am looking forward to watching it, thanks.
Limit switches and current over load detection (amp meter and software limits , or an actual system stopping overload with signal outputs) would allow you too retain control while also stopping excessive torque scenarios
I am a first time watcher of your channel. I love you passion to teach the next generation. Keep it up. In this video the motor was to strong and broke the steering column. To use the same motor and protect your work I recommend using a current limiter on your speed controller. With a current limiter you can adjust the maximum torque the motor puts out. This will protect the mechanics. Start with a small torque. When you are satisfied that the steering is doing what you want, increase the torque a little at a time until it works. An added advantage to this method is safety. A person can overpower the steering if something goes wrong. A double bonus.
OK on the steering column failure: trying to decide which you want to fail first the motor or the column, is the wrong question (at first). Your first question ought to be "What are the forces involved that I should engineer for?" and design both a column and a motor that can withstand those forces plus a good margin of error. That way you can be confident that the whole assembly should be able to withstand whatever happens during normal operation.
Then you can decide which one you want to fail first. My recommendation: Fail the motor first. It's a more expensive part, but it would still allow for manual steering.
But I think a better option is to have a clutch. Instead of chains, have at least one belt-driven component that is *designed* to slip when the load goes too high. Slippage is also dangerous - you can't get around the fact that a failure is going to be dangerous. But you can code the controller to detect a slipping belt and stop the motor and a slipping belt allows the entire system to recover on its own once the load goes back down. And if the belt needs replaced that's a *really* cheap part.
Also, if the slippage is between the motor and the shaft, but the encoder is still a no-slip connection to the steering column, the controller will be able to continue controlling it until it gets severe enough to require a shutdown.
My suggestions would be to use a magnetic encoder for the the steering position, no temperature or moisture drift, no fading, with the right enclosing weather resistant (not proof). The magnet could just be glued to the end of the steering column/pipe. Also for the safety, you probably want the motor torque lower than what you can do with human input so that you can override the computer, if it does ssomething stupid. Trust my, it will do this. Maybe a combination of V-belt drive (the slipable kind) or a torque limiting clutch, so the motor can run crazy and the steering survives. Also have a big emergency-stop kill-switch reachable at at any time and something like a wire based plug things like the waterjets use.
thank you for doing showing your mistakes! a lot of times people skip over the most important parts (troubleshooting and thinking through problems) and you embrace them, thank you!
8:48. The words of a true craftsman & of course duct tape (in the old days it was haywire). Love your vids. now a days they are way over my head.
THIS IS A PROJECT FOR GPA. HE CAN SPOIL THE PERFECT ONES, AND DO SOMETHING THE PARENTS WOULD NOT APPROVE OF. WHAT IS SO FORTUNATE IS THE ATTENTION, AND LOVE YOU TWO SHOW YOUR KIDS.
Brilliant Mate, as always. So looking forward to the rest of this build. Good luck Buddy
As always, great video.
You could use a two piece steering shaft and a love joy coupling. That way the love joy coupling would fail before breaking anything.
A length of 1” go kart axle with a key way would solve a lot of steering issues. There’s all kinds of hubs, sprockets, bushings and bearings that would immediately bolt on without modifications. Some welding, turning and thread cutting would be required to install a steering wheel and use the same steering rack. The effort would be worth it for the amount of bulletproof safety you would be gaining for the most precious of cargo.
Also, you need to support the steering shaft as close as possible to the torque input. The same thing would happen by hand if the steering wheel wasn’t so closely supported by the bushing.
Thank you for sharing the failures as well as the successes. We learn more from our failures, so kudos to you good sir. God Bless.
You are so unbelievably underrated man.
Wish I had found you sooner. I’ve been viewing bills channel for a while. Together we can build whatever we want. Thanks
Ah yes, the classic inverted feedback loop.. oops! Something I always do when working with feedback loops is clamp the maximum output speed at a very, very low value (or current-limit similarly) so there's at least some hope to catch issues like this before disaster strikes. Works a good 50/50. :) This is going to be an exellent series, I'm looking forward to the next video.
It was great watching your keynote at Remoticon on the weekend btw!
Mom! Dad is doing my school project again! Good video!
Bill's channel is awesome. Please don't forget about the safety aspect of the steering column. If it is too strong it is a potential hazard to the driver.
I love that you include all the pain and failures! Truly inspiring!
Prehaps size a shear pin that fails before the steering column. That way if it fails you'd hopefully still have manual control over the vehicle, but the motor would be mechanically disconnected?
I like the idea of a mechanical fuse.
Brilliant. Thank you for sharing your creative process and incredible intelligence.
Not an engineer but the first thought I had about the steering column was that you DO NOT want to break the steering column. If the motor goes, yes you can't control it electrically, but if the shaft goes you can't control it electrically OR manually.
If the cost of the motor is the concern maybe change something else to break first (the chain?) or add some other protective measures (electrical or mechanical). Just a thought.
I suppose you would just stop the car if something like that happens so maybe the steering column isn't that critical.
Great video, as always.
Haven't watched in full yet so forgive me if you already address it, but I had some thoughts on your safety comments regarding electrical / mechanical components being the weak link.
If you allow the mechanical side to be weaker:
- You can't manually steer the car in the event of a failure.
- The torque may be high enough to cause injuries (say, if a kid puts their arm through the wheel and gets it pinned somehow).
- The autonomous system loses steering control.
If the electrical side is the weak link:
- It can be expensive.
- The autonomous system loses steering control.
I would suggest you build in a self-resetting 'fuse', either mechanical or electrical to limit the torque. You could design the driving gear to slip mechnically at a specific torque (could be an interesting mechanical problem to solve), or install a current sensor / limiter on the electrical side.
This is a problem is a real thing in tractors
Yea agriculture is way ahead anyone else in self driving machines
Back in the 90s we had auto steer was simply a motor that had a rubber wheel that rode on the steering wheel
When you want to disengage the auto steer you simply reef on the wheel
When the autosteer motor senses the over torque it would shut off and let you drive again
I figure its a setting in the computer that knows the current the motor requires is unusually high and shuts it down
And yea the problem of it dropping out was/is a thing if you hit a big bump or something the jerks the wheel it would cut out and you'd have to grab the wheel quick and re-engage it
These days it's all built in and it can electriconicaly activate the steering valves its self
This is a problem is a real thing in tractors
Yea agriculture is way ahead anyone else in self driving machines
Back in the 90s we had auto steer was simply a motor that had a rubber wheel that rode on the steering wheel
When you want to disengage the auto steer you simply reef on the wheel
When the autosteer motor senses the over torque it would shut off and let you drive again
I figure its a setting in the computer that knows the current the motor requires is unusually high and shuts it down
And yea the problem of it dropping out was/is a thing if you hit a big bump or something the jerks the wheel it would cut out and you'd have to grab the wheel quick and re-engage it
These days it's all built in and it can electriconicaly activate the steering valves its self
I agree while it may be more complex, you would save both the motor and the steering column by having a clutch system in place and you don't have a catastrophic failure that would injure a driver. They would also be able to take control manually as well.
You’re such an inspiration man. Thanks for everything you do!
Add limit switches to the column. They should cut power to the motor when the wheel in turned passed its limit.
Alternatively place the motor on springs and the limit switch against the motor housing. If the motor "torques" the switches will be triggered.
Alternatively add current sensors on the power lines to the motor and disable the motor when max current is exceeded.
Great video! So realistic showing the trial and error for a robotic project. Everything goes wrong but sometimes you make brilliant discoveries that brings it all back on track. I look forward to following this journey. Thanks for not giving up!
You might add limit switches as a last ditch panic stop to prevent over stressing the motor or steering.
Nice moves. In the past I have found that a cam attached to shaft and an analog output inductive proximity sensor like Automation Direct DW-AS-509-M12 mounted perpendicular to cam is a slightly less cost effective but infinitely more suitable solution for resolving angular shaft position < 360 degrees (no gearing, no chain, no sprockets, no wiper wear). You can cut cam to create desired shaft angle vs output voltage profile. I Have used this method to replace problematic pot failures on dancer arm for dereeling 2000lb spools of 10 ga copper wire. Great work!
Dude...you are a freaking inspiration....the ambition behind your projects is just awesome!
Watching you in turbo mode on CAD was mY favorite part of all your videos!
A support bracket from the motor to the steering column would prevent bending and give somewhere to mount a guard. It could have a bearing or a brass/Teflon bushing on the column.
Possible idea for steering input in the event of system failure. (This would probably work best with a belt drive) Make the steering column very strong IMO I wouldn't ever want a failure of my steering input. For the self driving steering input that is driven by a belt drive.
Use a tensioner that is pinned at the proper tension so the self driving motor can act on the steering column.
In the event of a failure either having an e stop style switch in the cockpit and or self diagnostics so that the pin would be pulled using an air piston or linear actuator releaseing belt tension and allowing mechanical steering input.
Very cool project looking forward to more videos!!!
Instead of either the motor or the steering column being the failure point, the belt should be the point of failure.
On the steering failure. I think the very obvious answer is to sacrifice the motor; (use a smaller motor). That way when it fails, at least you can still grab the wheel and steer manually; You gotta have that manual backup. You actually got lucky that your chain popped off, or you could have lost the column AND the motor (maybe. lol)...
How about a slipping clutch between the motor and steering column? Enough torque to turn the wheel, but any more and it just gives. Also makes it safer in case of trapped limbs. Then just have the feedback potentiometer placed after that clutch, so it still registers the correct steering position.
It's great to see Bill working with you on this, your both amazing engineers 😍😍
Just make, or have made a solid steering shaft. It doesn’t need to be an exotic metal, regular carbon steel should suffice, but being solid instead of hollow should keep it from bending. Also, like stuff made here mentioned, some support near the sprocket would also help.
Making the shaft solid would fix the "excess torque on the shaft" problem, but would probably just break something else. The right approach would be to check each part of the system during a commissioning process and make sure the motor is actually wired around the correct way, something that can be done on the bench before installation.
You should have a shear pin in one of the gears controlling the steering wheel shaft. If an over-torque condition occurs (like hitting a curb or the motor over-steering), the shear pin will break but the driver will still be able to control the steering.
"Thank you for joining me through all this pain and suffering" I think that's my new favourite sign off for engineering videos! 😁
I couldn't agree more with wanting to me able to hit undo irl as well.
An idea for the coupling problem might be to add a spring loaded connection, where both shafts a coupled such that they are under tension to align. And to combine this with a ball bearing detent style mechanical lock in the connection up to a certain force application.
This allows for a solid connection untill a maximum load, and then can reset when it's possible to allow for control to be maintained over the output.
I hope this conveys the idea, I'm sure this can be done using two disks with slots, but there are many implementations.
I look forward to seeing what you come up with!
Very cool project and excited to see the joy it brings the family. Your reversed motor direction reminded me of a design issue we had on one of our robotic arm prototypes at my old job. It was a position controlled hydraulic robotic arm and we had to rework our first prototype manifold due to some miscommunications with the mechanical engineers designing it. Namely, swapping the A and B sides of the circuit. Unfortunately, no one on either team thought to update the engraved labels on the outside casing.
Flash forward to six months and we are performing a manufacturing dry run with the prototype manifold. As soon as we powered the controller on, the position control system took over and the arm slammed itself into a completely flexed position. These were some beefy arms too so I’m very glad no one got hurt. We had a strong safety culture there and had done a a thorough safety analysis for exactly something like this happening.
After some head scratching and investigation, we realized the manifold had been installed per the original engraved labeling! Since the polarity was reversed between the hydraulic command and the feedback, we had a perfect positive feedback loop just like your steering wheel deformation event. Very frustrating to encounter these in a project, very cool when you realize exactly all the mechanics and science that forced it to happen!
That is very cool. Reducing torque is an option but first you should definitely go with a beefy solid shaft to avoid future problems. Tubes are weak when they have holes in them.
What I've learned from working on similar project... you need enough torque so it can turn in a lot of situations. You should introduce some sort of a clutch that can decouple motor from the steering. You need some sort of torque measuring device on the steering shaft that can measure torque from the wheel to the shaft. This is safety for example if someone grabs the wheel it should disarm/decouple the system. Of course for simplicity you can put some metal mesh on the wheel connected to a transistor with small resistance so it could be like touch sensor, if someone touches the steering wheel it automatically disarms the system, but this could be only for testing. I can clear if needed.
Good work!
In the CNC world we MUST bench test everything. Loving this series!
That CAD/build montage was on another level. Nice work.
Cool project.
with the torque your pulling, high enough to bend the steering column, would limit switches just before maxing out the steering help save the motor and the steering shaft? Cut the motor power if you pass point X on the steering arm.
I've seen this used in two industries I've worked in with auto tracking of steered directional antennas, where the device was to constantly hunting for a stronger signal. moving or initially placing the box too far off access, and the control arms could buckle or snap a mount. so limit switches just before that point.
Inline resistors to protect the controller from accidentally driving a 5V or 3V output line directly to ground. Not a frequent problem in finished electronic boards, but can happen at the prototyping stage. You'd have to check with Bill on how it would change the circuit.
Also consider resettable fuses for the motor against short circuit and over current incase the control arm jams.
Nice! I like the beefy steering motor -- smaller steppers might have trouble turning the wheels on tougher ground.
Experience says wheel slip and tire deflection will be a bigger source of error than your feedback potentiometer.
Also, simple obstacle avoidance and checkpoint following AI is quite doable, but un-surveyed SLAM and safe navigation where people or pets will be, is a whole other kettle of fish...
@Jeremy. This is going to be 100 time harder to do than you think, I fear for your sanity but I cant wait to see the journey. I thoroughly enjoy the way you take us along for the ride in the design process, through the good and the bad.
LOL Have you seen any of my videos... Hard projects is what I look for :) I understand the pain and fully expect it to be harder than expected... if one can expect that and still be surprised... because that literally happens with every project :)
You're inspiring. Something tells me that stiffening that shaft is a shorter path to defeating the torque. Agree with comment about better shaft support if room. Even a solid shaft may bend if not supported.
there is certainly room, and it is part of the plan.
22:21 Maybe a custom steering angle sensor would solve this problem. You could come up with a shaft smooth steering wheel, and a clutch motor to engage and disengage the steering wheel for the failsafe operation. Great work!
Did you continue this project? I just can't find any more videos on this self driving car.
Rate limiter on the output and calculate torque and program torque limiter. Awesome project
I always love your videos and the simple way things are explained. I'm an EE, fabricator, welder, machinist and programmer, so I love this stuff.
But, your kids would get way more out of a go-cart that they can drive. No one wants to be a passenger when they can drive.
An idea could be to develop a kid friendly software for the self driving go cart, that way the kids can learn how to program with it to do cool things. It would be difficult, and Jeremy may need to hire a few hands to help out, but it could definitely be fun.
@@howardbaxter2514 No amount of programming is going to slide a go-cart sideways around corners. But each to his own.
@@freeidaho-videos kids programming it to automatically drift. Shoot, I’ll try to add a programming function/block that the kids can add to do it.
As others have noted, encoders are far better than pots. One reason not noted is noise: the encoder A and B lines are digital and so are very resistant to electrical noise. This will be important when you get a drive motor with speed control hooked up to make your cart go - some of those controllers put out a bunch of noise.
Please Check the description
In addition to a bushing right next to the sprocket, I'd put a friction overload clutch between the motor and steering column. This will let you set the maximum mechanical torque in the system so you can start testing at low torque. Also since the position feedback is after the friction torque limiter, you won't loose position after an overload. Fyi, Amazon has cheap worm gear boxes with through bores for shafts. Find one with a 20-25mm ID to use instead of the power wheel chair motor? (or 3/4-1")
Hey! Thanks for sharing this one! I recommend you to find inspiration in the automotive electric power steering.
Few things must be (re)considered in your design:
- Motor with worm gearbox it's simply a wrong choice. Yes, it has great amout of torque, Use a gear train or even a compound gearbox instead of that contraption you've made. Or...just give a try to a hoverboard motor and use a chain to drive the steering wheel. That 500W baby will turn whatever you want and you can also play with FOC to precisely control the motion! O-drive + hoverboard motor = interesting combination
- Use two Arduinos instead of one and start figuring out how to make them work as a redundant of each other. Better be safe than sorry! Automotive power steering uses two separate MCUs that work in parallel and if one fails, the other takes the control in order to maintain a safe usage of the whole system.
- Use some end of travel limit switches on the steering bar between the wheels. Anything that has an IP rating compared with automotive sensors should be a great choice!
- Use 2 different angle sensors (AS5600 hall sensor as a fellow suggested in the comments section) and make the comparison between their values before deciding when to make the motor turn.
These are some of my thoughts that came after watching your video. I hope you will give a try to some of them :)
👍🏼 Jeremy, I feel your pain because as I age I have developed a tendency to overtighten fasteners of all kinds! 😎✌🏼
You could also use a high resolution absolute rotary encoder. They're used in higher-end amateur telescope mounts. Repeatable precision is often less than one arc-second so that would be plenty accurate enough for your steering solution. Also, mechanical limit switches will be helpful. Just like you have on the 3D printers, auto-homing is very useful. Will be fascinating to watch your build!
Love seeing you show failures. That help as much as success
Jeremy. Couple of suggestions: look at wiper motor sized motors for go cart steering. That wheelchair drive motor is capable of moving your whole vehicle.
Tough break with the control system Jeremy. I think we all know though, that if anyone can sort it, it’s you. Wishing you good luck with this groundbreaking project. Very interesting video, thanks.
Super cool project. If I were choosing between the motor failing or the steering column failing, I would always lean towards breaking the motor because it leaves the human/driver in the equation. If the steering column breaks you remove the ability for you or your kid to steer the kart in a safe direction. Humans are squishy and motors are easy to replace.
As always - great video and awesome project! Looking forward to next parts :)
I would add two things to improve safety:
1: Physical limit switches for the steering. They could be actuated by steering column or the rod pushing wheels. Magnetic switches should work fine.
2. Since you have a potentiometer as a feedback, you could implement simple safety routine in your code : when microcontroller is instructing the motor to run I any direction, but it doesn't see the potentiometer values change ( after some short delay ) it should stop the motor. This could prevent few bad things from happening.
Agreed that adding both is justified in a case such as this. Heterogeneous redundant systems in safety critical applications make a lot of sense.
This looks to be shaping up to be another awesome build. If it was me I think I would upgrade the steering shaft with a solid alloy, it would also be easier to get the proper hardware to mate with it as well.
Like anything you build there will always be a failure point in the construction. The key is to design it so that the components fail somewhere beyond the point they need to safely work at in the most extreme situation. If your past videos have shown me anything is that I'm sure you will figure it out.
You need limit switches on the mechanism that cut power to the motor before it starts to cause damage.
Jeremy Fielding and the DroneBot Workshop have joined forces??? Epic!
I didn't read all the comments, but I think what you need are an end stop type solution so the motor won't melt and the shaft for the steering won't get bent. It could be implemented in software (pot readings: if it gets too high or low, cut off the motor power) or with hardware (actual switches that cut off the motor power that direction when the column gets turned too far one way or the other). That way the components are only subjected to their intended design stresses. No redesigning a system to fail intentionally.
Pots are a great inexpensive and simple solution for tracking steering wheel position, but you can try using an absolute encoder instead. Using one you will not depend on the precision of the ADC of the microcontroller which can be a bit noisy at times, higher sensing speeds, due to its high resolution you will not need a gearbox and you will always know precisely the direction of the steering wheel with the option of program the motor rotation limits
That WHOLE video was just dope. Loved it!
I loved the way ypu laughed after saying everything could be fixed with an anglegrinder :) great project- thanks for sharing the buil!
Jeremy, in a recent video I complemented you on your ability to smile in the face of adversity, so well done for continuing in that vein with this video.
However, in this video I noticed another one of your "super hero dad" skills. Specifically keeping clean.
I only need to think about going into the garage wearing light coloured clothing, and I'm filthy from head to toe. Can you share any tips with us, or are they trade secrets ... ;-)
Good luck with the build, I'm looking forward to following along ... :-)
You, Sir, are a genius.
I think the electric power steering box from a Toyota Prius might have been a good starting point.
Hopefully your theory about it turning the wrong way is correct and it certainly makes sense. However, I would still say set the limits on the potentiometer to not actually hit the extremes on the steering so it never needs to apply that kind of torque. Obviously if the wheels ever get stuck it might still try and apply that much torque but at least it won't be fighting the limits of the steering all the time. Great video as always!
Greetings form Australia.
Great video Install A slipping clutch on the motor alone not the potentiometer. That way the position loop is intact.
Looking forward to the next installment.
Always inspiring Jeremy. Thank you
If that steering column is a hollow tube I’d want to replace it with a solid metal bar. That way if you have to attach something to it by clamping or drilling you don’t deform the metal and weaken it. That motor is strong and fast enough to do damage to you or the machine so perhaps do initial testing without the chain on. Then when it’s attached you can s-l-o-w-l-y calibrate it to find your left/right extremes and make sure it never hits those, either programmatically or with feedback switches, (or both).
Oh, and when you tested how much force you’d need to steer you pulled at the rim of the steering wheel giving the best mechanical advantage. But if the chain is closer to the center of the steering column it will take more force to turn it.
Dad GOAT material right here
This guy is on another level of smart.
I bet he works for MIT on his off days.
Can you make a video on where and how you bought your equipment from (CNC, Lathe, workstation )etc. Fellow Mechanical Engineer looking to build my own workshop in my garage.
What a great collaboration!
I was thinking about some sort of torque sensing, or a clutch mechanism on the steering shaft similar to what one would find in a tractor PTO shaft. So if the steering shaft hits its end stop the motor can continue spinning. Depending on the type of clutch, this would also facilitate the ability to take manual control by the operator in the event of a system failure. Something similar to what automotive manufacturers use for the electric steering assist. Definitely something fun to noodle on. Thanks for inspiring me to start building something similar with my kids! Love the videos and thanks for making engineering accessible to all.
The more I think about it, the more I think load sensing would be the way to go. If you're only watching the steering shaft position then the controller will just keep trying to turn the motor until the position is achieved. If you also monitored the motor current you could spot the spike in motor current as the steering rack hit the end stop. This would also allow for calibration of the position sensor. But some sort of clutch would still be needed so the operator could take manual control.
Awesome work man, looking forward for the rest
Love that your grinder wheel is about gone.