![]() |
Engineering Failure Analysis
A significant part of engineering is learning from failures. Many engineering standards exist as a response to a failure of some type. I would like to start a thread where teams share present specific robot failures (failure to control mentors and bad dancing by the drive team would not qualify). I would also like for those teams to share their solution or ask the community for help. If, for example your bot took a strong hit and something unexpectedly bent or broke, show some pictures, tell us about it but be specific. The legitimacy of the hit does not matter (in this thread), but the response of the system does. I believe that we could all learn a lot from the "good work" of others. Remember: if it never breaks, it must not be close enough to the edge.
I know that much of CD kind of get's to this, so what I'm asking if for a more structured "failure analysis" of the problem, and ultimately a "root cause analysis" I think this would be great all around, as not only do we all get to learn from them, but we get to teach a real world process at the same time. So here’s some simple rules to follow:
I think as a community we could all benefit from this type of discussion. Mike Leslie, Lead Build Mentor 1189 |
Re: Engineering Failure Analysis
3 Attachment(s)
Here's one to get things started:
Brief description of the situation:During our semi-final match at BMR, we lost power to 2 of the 3 wheels on 1 side of the robot. (6 wheel tank drive) Upon further investigation, it was determined that the drive sprockets which transmit power from the trans to the middle wheel and the middle wheel to the front wheel no longer functioned. A replacement was attempted but could not be completed in time. Components Involved: Andy Mark 2 speed GEN 2 servo shift trans IFI 24t aluminum sprockets IGUS .625 aluminum shaft #35 chain custom turned 6061 aluminum hubs with 1.2 OD, .625 ID and .125 keyway (welded to the sprockets) .125 tool steel keys Failed Components It was determined that the custom hub on the sprocket which transmits power from the trans to the middle axle failed (see photo) , allowing the sprocket to rotate on the shaft. Failure analysis There are 2 sprockets mig welded to 2 hubs on the center axle. Sprocket 1 transmits power to the axle via a .125 key. Sprocket 2, which drives the front wheel is powered by the same key. The total length of the key is 1.0, with the hub on sprocket 1 having a depth of .6, and #2 being .4. The design did not specify 1 or 2 hubs. It was built with 2, as #1 is the same sprocket used throughout the robot. The key specified was designed to handle only the load of 1 wheel, not 2. This extra load caused the keyway to get “sloppy”. This slop increased the load on sprocket 1, (interestingly enough this sloppiness was detected before the semi-finals began, but we had no replacement parts readily available). The hub failed. Root Cause The root cause was that hub 2 was too small to handle the load. Remediation
This new design was used at WMR without issue. There was no increase in key “slop” during the regional. |
Re: Engineering Failure Analysis
This is more general, but it is something we dealt with several times during the season.
Do not side load motor output shafts. If you are going to run a drive directly from a motor shaft, support the outside end of the shaft. We nearly failed 1 window motor (keyang) by sideloading it running our arm. The second one held together throughout the remainder of our matches, but the output shaft on it is bent as well. Likewise, we tried running a high-speed ballscrew directly off the Mabuchi (spelling?) motor, and that motor's shaft was forced into the motor by 1/4", rendering it inoperable. Pay very close attention to the direction of load on the motors. Side load is rarely good, axial load is never good. It is a tempting shortcut that isn't worth it. |
Re: Engineering Failure Analysis
Quote:
My team ran into a similar situation several years ago. We had a steel sprocket attached to an aluminum hub via bolts and lock-nuts. These were then put on a 5/8"(?) steel shaft. These components were being driven by a Fisher-Price motor. All of the design and machining of the key and depths of keyways had been done using The Machinery's Handbook as a resource. During the course of the competition, the key was literally tearing the aluminum away until there was a catastrophic failure in which the keyway on the shaft also gave out. Our solution was to never use an aluminum hub where there's going to be a large amount of stress on the area of a key/keyway. The coach of the team and I were so serious about this solution that the following year, a college student was saying, "Let's use aluminum for the hub, it weighs less." We told him several times to use steel. We finally said that it was a lesson learned from last year. Then he gave in to using steel. indieFan |
Re: Engineering Failure Analysis
Quote:
per www.matweb.com... Code:
Yield Density |
Re: Engineering Failure Analysis
Quote:
|
Re: Engineering Failure Analysis
Quote:
|
Re: Engineering Failure Analysis
1726 used dewalt transmissions last year, and had some failures where the pinion gear is attatched to the motor shaft. The pinion gear is a sintered gear, and is bored out to fit on the shaft. There just is not enough material left in the gear to be reliable.
solution: AM shifters this year, no problems at all. Sorry to sound like a broken record, but I see no reason to use aluminum hubs and shafts in the drive system....weight down there keeps the robot from falling over, and steel is more appropriate for any keyed shafts and hubs. Aluminum would probably be acceptable if it is a hex shaft. |
Re: Engineering Failure Analysis
Squirrel:
Was this on the input side of the Delwalt? If so our solution was to make a adapter plate on the delwalt side, it has 4 small holes which match the 1st reduction planet gears, eliminating the need to bore out the gear. On the motor side, it's drilled to accept the motor output shaft. we than have a setscrew. It adds about .5 to the overall length of the system, but no mods to the gear were required. |
Re: Engineering Failure Analysis
Why Aluminum? For this drivetrain, is saved over 7 pounds, and if carefully designed, it can work. Perhaps the question should be what alloys will work for us (most drivetrains undergo similar loadings) and under what conditions.
|
Re: Engineering Failure Analysis
2 Attachment(s)
Quote:
|
Re: Engineering Failure Analysis
1 Attachment(s)
I think that this has more to do with software issues, but no one on the team is really sure what exactly is going on here. (We managed to fix this, but we don't know why what we did worked.)
The mechanism for releasing our ramps works by pulling a pin out of two holes in two pieces of metal spaced about 1.5 cm apart. This pin holds in place two pieces of string that are attached to our ramps, which are spring loaded. Thus, pin comes out - ramps fall down. The pin is pulled out by means of a servo mounted above the pin. (See the attached image for a better description. Blue is the servo, green is the link from the servo arm to the pin, Black is the pin, red represents the loops of string attached to our ramps) On practice day, the ramps on our robot started deploying right after the field switched into teleoperated mode. At first, we thought that we didn't properly set the mechanism and that something shifted out of place when we started driving. However, the ramps did the same thing in our next match. We double checked to make sure that none of the buttons on the joysticks were linked to the ramp controls. I had also switched out a joystick for a button box so we switched back to the joystick in case there was a wiring problem with the button box. Same problem. We thought that maybe our driver was hitting the ramp release button thinking it was something else so we talked to him and confirmed that he wasn't hitting the wrong switch. We took our robot to the practice field and had the driver start shaking it like crazy, the ramps didn't deploy. We couldn't recreate the problem outside of the competition field. We had absolutely no idea why our ramps were deploying. I thought that it might have something to do with switching from autonomous mode to disabled mode to teleoperated mode, I don't know why this would have anything to do with our ramp mechanism though because we do nothing in autonomous mode and disabled mode disables your robot. We didn't have a dongle (we did have one, but it broke before competition. I guess really small wires weren't made to support a lot of strain, whoops) so we couldn't test this theory. We looked through the code and saw that we initialized the servo to 255 (which is the position which keeps the pin in, 0 pulls it out) and not 127, like the motors. We searched the code for every alias for that servo output and nowhere is it modified (except for the function that is supposed to release the ramps). We never programmed the servo to actively drive to 255 after initialization though, so we decided to add code to do that, both in teleoperated mode and in autonomous mode. Somehow, this works. We don't know why, but it works. The pin stayed in during the match until we flipped the switch that releases the ramps. Does anyone have any idea as to why this would happen? |
Re: Engineering Failure Analysis
Our really only failure through the course of the season was when another robot would get up, over our bumpers and knock off our front steering chain in our swerve drive assembly.
To fix this we added a protective brace above the bumper, on the frame. We never had another problem with it after our first match on Curie. |
Re: Engineering Failure Analysis
Quote:
It can be the 127 that pwms are set to by default in the User_Initialization routine, or if uninitialized altogether then it will be some random value. When you don't explicitly give it a value it will retain whatever random value happens to already be in it's allocated memory location. Most often this random value is zero. |
Re: Engineering Failure Analysis
We made sure to initilize it to 255 in the User_Initialization routine.
|
| All times are GMT -5. The time now is 06:40. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi