DIY Dynamic Wheel Balancer, Mark 2 - Page 1
Forum section: electronics / projects

author: pmbrunelle
author_rank: Regular Contributor
timestamp: November 12, 2015, 01:54:32 am
content: A not so long time ago, in June of 2013, three classmates and I began our senior year mechanical engineering project. We chose to do a wheel balancer, mostly because it involves a fair number of topics, and because it's coolHow it works: The machine rotates a wheel on its shaft. Two force sensors, one per shaft support, measure the vibration forces created by the unbalanced wheel. Knowing the vibration forces at the shaft supports as a function of shaft angle, and knowing the dimensions of the wheel, the correct combination of counterweights can be placed on the wheel, thus giving a smooth ride.Along the way, I asked for help regarding some subsystems, and I didn't even share what it was for! Silly me.https://www.eevblog.com/forum/beginners/mounting-screw-through-inductor/https://www.eevblog.com/forum/beginners/overundervoltage-protection-for-adc/So we presented our incomplete machine to our professors in April 2014, and apparently we did well enough to graduate, woo-hoo!The balancing machine, just days before the presentation:Our gadget was fairly crude, with no microcontroller. We directly read the vibrations from the force sensors with an oscilloscope (BNC sockets on the front panel), and we could manually calculate how much counterweight would need to be added, and where it needed to be added to balance the wheel. In general, it worked quite poorly...So during my free time in my post-school life, I worked on improving the balancer by doing the following things:Replaced the crude 90 VDC thyristor motor drive (with 120 Hz + harmonics galore) with a nice high frequency (claimed 16 kHz) PWM drive, which didn't transmit all this 120 Hz vibration crap to the load cells (which pretty much destroyed the signal-to-noise ratio).Reduced the dynamic braking resistance value, for quicker stops after running.Ordered a new aluminium laser-cut toothed wheel, so that the optical shaft encoder would work as designed.Added an AVR microcontroller with a user interface to facilitate use...So after doing all these things, I had debugged the balancer as much as I could with the current design:A skilled person could balance (quite well actually) one wheel in 30 minutes.Yet after all this work, we still noted 31 deficiencies with the balancer. It would be impossible to fix them all on the current machine.A semi-clean-sheet redesign, with all the lessons learned from the original balancer would be needed to correct the deficiencies.The original machine was dubbed Mark 1, and then the Mark 2 wheel balancer project was kicked off!General Mark 2 goals:Converge faster to a balanced wheel with less iterationsBe less picky about the machine being leveledTo save $$$, reuse components from Mark 1 where the compromise is not too severeReduce the parts count, by a lotUse more generic parts where possible, to avoid problems with spare parts availability in the futureReduce number of manual adjustments/trimming type operations at assemblyProvide a fun and stimulating leisure activity; learn something!So anyway, in this thread I expect to chronicle the development of the Mark 2 wheel balancer as it progressesI got started on the debounce circuit for the future wheel cover switch:https://www.eevblog.com/forum/beginners/transistor-schmitt-trigger/I've attached the a copy of the code that runs the Mark 1 balancer today. Totally not portable, but it's my first embedded programming project. Actually, first programming project on anything...

author: Alexei.Polkhanov
author_rank: Frequent Contributor
timestamp: November 12, 2015, 02:05:39 am
content: "A skilled person could balance (quite well actually) one wheel in 30 minutes."- 30 Minutes???!!! That sounds like way to much time to balance a single wheel. That is 2 hours per car! You'll be out of business in a day if you do it for living.I just checked - commercial shop wheel balancer spec: "Cycle time: 6 - 9 seconds (avg.)".

author: pmbrunelle
author_rank: Regular Contributor
timestamp: November 12, 2015, 02:18:27 am
content: I never was satisfied with the typical $10 flat rate per wheel service...Actually, I would think that proper balancing (competent operator, multiple iterations, not just one cycle and call it close enough) for a car would be worth $200 if done right, but there's really no market for that. Besides, it's much more fun to DIY!Don't worry, I have a day job! This is just hobby stuff.

author: retrolefty
author_rank: Super Contributor
timestamp: November 12, 2015, 03:55:12 am
content: Quote from: pmbrunelle on November 12, 2015, 02:18:27 amWell your welcome here to share and document your passion. We already have volt-nuts, time-nuts, and lots of unattributed nuts, so happy to have a balance-nut added to the mix.

author: rs20
author_rank: Super Contributor
timestamp: November 12, 2015, 05:18:07 am
content: Very cool, I always thought this was an interesting concept, and vaguely thought about implementing it. Cool to see one in action!

author: pmbrunelle
author_rank: Regular Contributor
timestamp: November 18, 2015, 05:34:29 pm
content: So I will be re-using the Mk1 DC motor drive, which works fine. I have the KBWS-25D.http://www.kbelectronics.com/Variable_Speed_DC_Drives/DC_Drives_Chassis.htmlIt can output the same 0-90 VDC to the electric motor, but it can accept 115/230 VAC at 50/60 Hz. Quite versatile, if I wanted to move elsewhere (not that I want to).I need a single 5V DC rail for the Mk2 electronics. Current is still unknown, because I haven't done the power budget of all components, but lets say around 500 mA.Previously, I would have done something traditional like this for a power supply of lets say 500 mA:1. Transformer with dual primaries.2. Bridge rectifier.3. Electrolytic capacitor.4. (sometimes) follow with LC or RC low-pass to reduce the ripple seen at the regulator.5. Linear regulator, such as 7805.6. Probably some 100 uF electrolytic to keep the regulator from oscillating.Then, if I wanted to switch between 115 and 230 V operation, I would have to change the transformer winding configuration from series to parallel or vice versa. If you would forget to put the primaries in series for 230 V, but plugged the thing into 230 V, you could break something.So, in the spirit of learning more (and designing the Mk2 balancer to be more robust that its predecessor), it would be time to graduate to something that changed over seamlessly without user intervention (just like the DC motor drive), such as a switching power supply.However, unlike the traditional sort of cookbook power supply I have posted above, there does not seem to be a similarly standard cookbook recipe for switching power supplies.There seems to be a fairly bewildering choice of switching regulator chips, and it's not all the same format at the three-terminal linear regulators.Where to start

author: jeroen74
author_rank: Frequent Contributor
timestamp: November 18, 2015, 11:01:57 pm
content: I'd use something like this:http://www.recom-power.com/pdf/Powerline-AC-DC/RAC01_02-SC.pdf

author: ajb
author_rank: Super Contributor
timestamp: November 19, 2015, 04:23:45 am
content: Yeah, unless you have very unusual needs or specifically want the experience, there's really nothing to be gained by rolling your own line input switcher for a one-off device. The RECOM RAC series is good (note that you'll need to provide external filtering/protection on the input side), and of course there are dozens of options in small enclosed or open frame PSUs that will do the job as well.

author: pmbrunelle
author_rank: Regular Contributor
timestamp: November 19, 2015, 05:17:24 am
content: I came across that exact "power brick" while searching through digikey. A similar pre-packaged solution will be the backup plan if the DIY power supply is a failure.Ultimately, the goal of this is not just to balance tires, but it's to learn about electronics along the way. This is just for fun, so there are no strict project deadlines to respect. Delays due to subsystems holding up the entire project are OK. If I don't roll my own power supply, I won't get that learning experience.On the other hand, a fully discrete switching regulator would be too much for a beginner like myself to handle.So, I want to do a switching regulator based around a "jellybean" IC. In the world of switching regulators, the MC34063 seems to fill the role of the most standard jellybean IC (kind of a 7805 equivalent). So I will see if I can do something with that.Oh cool, Dave has a video on thatI like 8-DIP packages. The 0.1" pin pitch is about as fine as I want to deal with, considering my 40mil trace width/40mil spacing PCB fabrication process, which includes a Sharpie marker...Lets see what the 5 VDC power budget is looking like right now. Some items are taken from part datasheets, others are guesstimated for now. Probably I will update this list as things become more stable.1. 20 mA - microcontroller, 28-DIP AVR, probably ATmega1682. 20 mA - main shaft quadrature encoder: two SOT-23 Hall-effect open-collector sensors, assuming both sensors are sinking a 1k pullup simultaneously3. 5 mA - PWM output to control the speed of the DC motor drive4. 80 mA - DPDT relay coil current, NO contact supplies power to DC motor drive, NC contact connects braking resistance in parallel with DC motor armature.5. 2 mA - wheel cover status switch hardware debouncer6. 50 mA - flat laser, used to paint the inside of the wheel with the "angular origin" of the balancer, indicating where the weight should be placed7. 100 mA - two pre-amplified load cells. I have no idea, this is not specified, I had best order these and measure them.8. 43 mA - OLED character display9. 80 mA - two optical encoders (for coarse/fine) for data entry/menu interface10. 20 mA - two SPDT switch (for Back/Next) debouncers for data entry/menu interfaceTotal: 420 mAMultiply by 1.5 factor because surely I missed something and/or something will go wrong:Power supply minimum target current capacity: 630 mAWell, at least now I have a rough idea of what is needed...

author: CatalinaWOW
author_rank: Super Contributor
timestamp: November 19, 2015, 05:39:08 am
content: I've often wondered why iterations are required. If SNR is sufficient you should be able to compute exact location and best approximations in standard size weights immediately. If SNR is not sufficient, why would the result improve on second iteration. Only explanation that makes any sense to me is nonlinearity in the sensors, which should be possible to eliminate, possibly with software only if the data can be captured before any mixing occurs. Maybe the non-linearity is saturation due to inadequate dynamic range. Back in the day of expensive A/D converters that might have made sense, but now that high resolution A/D is both fast and cheap that should not be an issue.

author: rs20
author_rank: Super Contributor
timestamp: November 19, 2015, 05:54:28 am
content: Quote from: CatalinaWOW on November 19, 2015, 05:39:08 amThere are so many things to take care of: absolute rotational accuracy w.r.t. position of the wheel, any stretching/bending of components causes by wheel shake that throw out measurements; not to mention the human factor involved with fitting the counterweight (how do you specify to a human exactly where to place them?). No, it's far easier to just have an approximate device, and then rely on the power of the Newton-Raphson method to get you to an arbitrary degree of precision.

author: pmbrunelle
author_rank: Regular Contributor
timestamp: November 19, 2015, 06:59:00 am
content: Quote from: CatalinaWOW on November 19, 2015, 05:39:08 amGood questions.So in general, you want to have the highest possible shaft RPM, because this will generate the strongest vibration forces. However, if the shaft spins too fast, then the springy shaft and wheel assembly's resonant vibration mode can be excited. Therefore, to avoid carnage, we want to stay somewhat below the shaft and wheel assembly's first resonant peak.On the Mk1 balancer, the first whipping resonance is probably a little above 1000 RPM. So I think our 500 RPM DC gearmotor was a good choice. The pros want low RPM, to reduce the acceleration/deceleration times. But the cycle time was a non-consideration for this design.Then, I thought that at maximum RPM, the load cells should be sized so that the typical smallest imbalance we would want to measure would generate a near full-scale output, for the best possible SNR. So we bought 3.4 lbf load cells.Now, to avoid overloading the sensitive 3.4 lbf load cells with heavily imbalanced wheels, then the RPM would have to be reduced.The idea was to slowly turn up the RPM until you reached full-scale on the load cells, then balance what you can. On the second iteration, with the partially balanced wheel, you should need to set the RPM higher than last time to hit full-scale vibration on the load cells. Eventually, you would balance the wheel well enough to reach maximum RPM without a load cell overload.In practice, the sensitive 3.4 lbf load cells that were supposed to have a stellar SNR due to their sensitivity were a complete failure. The bottleneck in the system is not the load cells, not in the instrumentation amplifiers; neither is the 10-bit microcontroller ADC the limiting factor here.The primary issue is the mechanical friction hysteresis in the link system. With about 50 lbs of wheel weight hanging from the end of the shaft, it can take a fraction of a pound to move the shaft supports (in grey) before the load cells will see any of the vibration force.As a side note, because the load cells measure compression only, the load cells need to be DC-biased to 1.7 lbf with adjustable preload springs, because the vibration is an AC signal. This 1.7 lbf DC-biasing thing is finicky and largely swamped by the friction hysteresis, which is really a major PITA.I can't do much about the mechanical friction hysteresis, but I can give the Mk2 balancer 10 lbf load cells. So the idea is that for a given amount of imbalance, the RPM would have to be higher to generate full-scale vibrations on the load cells. So now that the vibration forces will be 3x stronger (except for the very last iterations), the vibrations should dominate over the friction hysteresis, thus improving the overall system SNR... Faster convergence with fewer iterations is the hope here! And less pain with the DC biasing...The Mk1 also has a mechanical resonance issue. Essentially, it has two shaft supports, each support supported by 5 links. The 6th DOF is restrained by the load cell. Each shaft support contains a double-row self-aligning bearing, which must act as a perfect frictionless ball-and-socket joint if the vibration force equilibrium equations are to be solved.What happens during operation above 350 RPM is that the shaft moves around within the play that is present in the bearings. So, we get a resonance at that speed, and we can't even run the machine to its 500 RPM maximum design speed. The cure for looseness in bearings is to preload them. But, in this case, if we preload the double-row self-aligning bearings, they cease to be remotely similar to frictionless ball-and-socket joints, so that's a non-starter.In addition to the 10 lbf load cells, the Mk2 will use a 4-link system which holds an all-moving spring-preloaded assembly. Now, bog-standard 6207-ZZ bearings with a tight spring preload (to take up the slack in the bearings) can be used. With this topology, any binding that happens in the bearings is internal to the all-moving assembly, so the load cells won't care.

author: CatalinaWOW
author_rank: Super Contributor
timestamp: November 19, 2015, 04:39:37 pm
content: Why have linkages at all? Those will always have free play that results in hysteresis. Just use spring supports and measure the strain in the springs. This is the approach used in the balance machines that I have seen (these are intended to balance much smaller objects, think of things like the rotor of an electric motor.)The springs can be high stiffness so that there is little actual motion, and in two parts, one of which supports a small part of the load, but has a much higher strain at a given extension, making measurement of the strain much easier.Balancing automotive wheels is a strange business. I know it helps but in many balance machines, including yours, the wheel is free, with a totally different geometry than when it is carrying the load of the vehicle. It is easy to imagine cases where a tire perfectly balanced on the machine will bounce on the road. Some balance machines may improve on this by applying drive and braking forces with a drive roller on the tire, but I haven't really noticed an on the road better result.

author: pmbrunelle
author_rank: Regular Contributor
timestamp: November 20, 2015, 07:07:53 am
content: See below the pictures of a balancer I found online. Essentially, it's kind of like my Mk2 4-link setup with dual load cells, except that it replaces the 4 links with a flat shear plate as a sort vertical support. Very neat, probably very low hysteresis. Low parts count, less adjustments...If I wanted to go away from a rod-end link setup, that's the way I would go. The nice thing about the rod-ends is that "good-enough" connections to the blue steel tube can be easily made. The whole setup ends up fairly well located in space. I also have a rough idea of how to attach the fixed ends of the links to the plywood box, from experience with the Mk1. At the moment, I don't have an easy solution for how to mate the blue steel tube (without distorting it) to the flat shear plate, especially considering that I am not (yet) a welder. Also I have no idea how I would support the flat shear plate in the air, though this would not be impossible to figure out.Here is our (unproven) hypothesis with a rod-end link setup:Once loaded with the weight of a wheel, for very small movements, the rod-end ball will rock (maybe roll is the right word) within the rod-end housing, rather than rotate and slide, thus acting as a frictionless pivot.In practice, some of our rod ends were pretty terrible; we had to spin them in a drill to get them to "wear-in", but some remained tight even after that. Some rod-ends had no slack, and therefore no possibility for rocking action. So I think that if I go with a 4-link setup with the Mk2, I should be able to cherry-pick the 8 best (most slack) rod ends from the 20 rod-ends that are present in the Mk1.To keep the scope of this project limited, I will only attempt to correct vibration caused by inertia. But in practice, if you have a fairly round quality wheel and tire, and you correct only the inertia, there should be minimal vibration sensed in the car. All four wheels (16x7 aluminium wheel with 205/50R16 tire) on my dad's car where balanced on the Mk1 balancer, and the result seems excellent (there is a large chance of observer bias here, however). Probably if you have an out-of-round wheel, you're better off trying to fix the root cause rather than trying to patch it with inertial correction.I have considered that the machine could have a secondary purpose as a tire lathe, which would be used to make a tire true again for instance after a flat-spotting incident.

author: pmbrunelle
author_rank: Regular Contributor
timestamp: November 24, 2015, 06:24:05 am
content: So I was thinking that I would use a 230 VAC nominal input transformer, with 18 VAC output, and 20 VA. Then, with a bridge-rectifier + capacitor combo, there should be some 8~40 VDC available over lets say a 108 to 264 VAC range.This DC output range would suffice for an LM2675-5.0 buck converter:http://www.ti.com/lit/ds/symlink/lm2675.pdfThe "suggested application" they mention has 20 mV ripple. This is probably too much for the load cells and 10-bit ADC. Even though the load cells and ADC are ratiometric, and will be powered by the same analog voltage, the ratiometric noise rejection probably doesn't work a darn for 260 kHz switching noise...I am not sure of the approach to take regarding the ripple. If I increase the output capacitor, then would it cause stability issues? Effectively, an "ON" pulse where the switch is closed (and an associated amount of charge) will cause less voltage change for a larger output capacitor, and thus less ripple. But then it seems like the control has less authority over the output voltage, so it may begin to chase its tail?I am in over my head when it comes to the math of feedback loopsMaybe I should tack on another low-pass LC, with a cutoff below the switching frequency? Presumably, for effectiveness at the switching frequency and harmonics, the L would need to be a ferrite?Or should I use the buck to bring the voltage to say 9 V and then post-regulate with a 7805. But since the 7805 is probably crap at rejecting the switching noise, then I should just stick with passive filtering and forget about a linear regulator?

author: tggzzz
author_rank: Super Contributor
timestamp: November 24, 2015, 09:19:37 am
content: Quote from: pmbrunelle on November 12, 2015, 01:54:32 amWell done, and that list will impress potential employers: don't forget to mention it during interviews!

author: pmbrunelle
author_rank: Regular Contributor
timestamp: November 25, 2015, 03:20:16 am
content: Maybe "31" sounds bad, but I'm actually quite happy with how the Mark 1 balancer turned out for a first effort.As for the buck regulator, low ripple is pretty much the highest priority. This is so the load cells and ADC can have clean readings. So, I'm somewhat planning on some 22000 uF / 1 mH style monster combo.With a large output capacitor, maybe the startup will be an issue. The LM2675 datasheet claims current-limiting, so I'll see how it likes to charge a big capacitor on startup... As for the microcontroller, I can set the AVR to wait a certain number of clock cycles while the power supply stabilizes. This doesn't really seem at all sensible, but for a one-off hobby project that is not too cost-optimized, this is OK.I will have to make a preliminary PCB layout of the entire electronic board. Then, when I have a rough idea of what the power supply section will look like, I will prototype the power supply section only. Then, on the power supply section prototype board, I can try different combinations of inductors/capacitors, and see what happens.Once I converge on a design on the prototype board, then I can transfer it as an atomic unit back to the main PCB.So I'll need to make myself some sort of load resistor kit with banana plugs, so I can design the power supply. I will also need some sort of square-wave MOSFET switch apparatus, so I can make a load that repeatedly switches on and off. Then, I can observe the power supply's transient response on my (non-storage) oscilloscope.Or I could look into purchasing a pre-built electronic load. To be evaluated.

author: pmbrunelle
author_rank: Regular Contributor
timestamp: November 25, 2015, 03:37:06 am
content: On a second thought, as per the suggestions on the previous page, I may buy pre-built power supply bricks.However, I would not install them as-is into the Mk2 balancer. Rather, the purpose would be to benchmark these power supplies, and see how the pros do it, because right now I'm a little too clueless

author: tggzzz
author_rank: Super Contributor
timestamp: November 25, 2015, 09:34:25 am
content: Quote from: pmbrunelle on November 25, 2015, 03:37:06 amA big consideration in engineering and business is to understand where you areaddingvalue. Before PSUs became easily purchasable off-the-shelf items, a custom PSU was often designed by the least experienced person on the team more-or-less as a training exercise.Unsurprisingly, PSUs were very unreliable. If that occurred nowadays, it would be a case ofsubtractingvalue.

author: jeroen74
author_rank: Frequent Contributor
timestamp: November 25, 2015, 11:32:31 am
content: Use the off-the-shelf power supply to get 6V, then drop it to 5V with a linear regulator and feed all the analogue stuff with it. You could insert a simple LC filter between the switcher output and the linear regulator. If you use the LM2675, use ceramic caps (on the output) that have very low ESR; that will reduce ripple too.22000uF caps are way, way overkill and are likely not effective LM2675 at all at these frequencies.Also, a simple filter on the ADC input should block that 260KHz.

author: pmbrunelle
author_rank: Regular Contributor
timestamp: December 03, 2015, 12:38:58 pm
content: So what was I thinking, doing a roll-my-own switching regulator (headaches) before doing my own linear regulator? One must learn to walk before learning to run. Furthermore, having a main PCB with more discrete parts just looks cool, kind of like GK's computer(s).It seens that even with my desired 120/240 VAC input voltage range, a linear regulator would be feasible. As long as you can dump enough heat... The goal is 5V @ 630 mA. So with a large enough heatsink (not that expensive actually, less than $5 from digikey without forced air cooling) and a beefy TO-247 pass transistor, it should work. According to the SOA chart of the TIP142 datasheet, there will be no secondary breakdown issues.My main uncertainty with this design is to predict how the transformer output voltage will droop under load at half its design voltage. So I will be having to test this supply with a variac.I am looking for a 240 VAC right-angled PCB-mounted power switch. To my surprise, this seems to be unobtainium. Flying leads from the PCB to a panel-mount power switch are possible, but this kind of defeats the cleanliness/assembly advantages of having the wiring printed on the board...

author: pmbrunelle
author_rank: Regular Contributor
timestamp: December 10, 2015, 04:36:52 am
content: So apparently 250 VAC PCB-mount toggle switches do exist on DK/Mouser. They're just not classified as such... 125 VAC/6 A (resistive) in the search engine, but then only when you dig into the datasheets, you can find an alternate rating of 250 VAC/3 A (resistive)In Mk1, there were 8 custom-made PCBs. This was to permit immediate testing/debugging of individual modules without having to wait for the whole project to be finished. This was to manage the risks better, to increase our chances of presenting the project in time to our professors. However, this scheme resulted in a huge amount of wiring between modules (though neatly tucked away in wire trays).In Mk2, I want to consolidate as much as possible on a single vertically-mounted PCB behind the control panel. So since I want to get the power supply on this vertical PCB, I will have to abandon the idea of the heat-wasting TO-247 monster power supply and its 56 VA transformer. My father has experienced "large" thru-hole transformers tearing off (he learned the hard way) from vertical PCBs during transport/handling.So OK, I will buy a pre-built SMPS power brick from the likes of CUI, TDK-Lambda, etc, for the weight-savings, so I can have something installed on the vertical PCB without having it rip off. To deal with the switching ripple, I will post-filter and then post-linear-regulate. SimpleExcept that these 10 W power bricks have a 20 A inrushI do not find the NTC inrush current limiters to be a robust solution, because if you power cycle the unit rapidly (faster than the thermal time constant of the NTC), then you have no inrush protection.Is a 20 A inrush OK on a 3 A switch? I lack the experience to know these things. I think that the switch would never have to break 20 A; this massive current only happens when the contacts make contact, which is perhaps less critical. I'm also wondering if I should get a double-pole switch and wire the contacts in series, though the toggle switches are not typically characterized for this use, so I don't know if this would help anything...

author: RobertBG
author_rank: Regular Contributor
timestamp: December 10, 2015, 05:59:21 pm
content: Great project,I've learned a bit by going over your work and I like your hands on approach.If you ever decide to head towards a marketable product and dont want to go against the big names like Hunter and Coats etc.You should look towards a portable unit aimed at racers and track use.You could drive it off of a hub adapter and use the car or possibly a DC drive powered by the car or service vehicles electrical system.The commercial market is pretty well saturated with the big names and knockoffs but most home mechanics,hobbyist and even professional race teams still use the venerable old bubble balancer at the track.In all my years I've yet to see a shop style balancer in a race team trailer(Nascar uses dynamic machines but it's handled by Goodyear not the team) and we do quite a bit of work for a few teams.They just draw too much power and take up valuable real estate.Anyway just something to think about,if you ever decide to take this to another level.

author: pmbrunelle
author_rank: Regular Contributor
timestamp: December 11, 2015, 05:58:41 pm
content: I can't compete head-to-head with the big names right away; maybe at the Mk6 iteration I could think about having something worthy of the big leagues... though perhaps I could make for sale a partially complete hobbyist-level kit, which would only include the special more hard-to-manufacture parts, such as the steel shaft. I expect that a revised (not as-constructed) Mk2 could be mature enough for this.However, even for a partial kit it would seem difficult to get the BOM below $1000, which is enough to buy a good used dynamic balancer. So, for someone to buy a kit like this, it would have to be for interest/hobby reasons, and not only economic.There is another challenge with putting a dynamic balancer in a trailer: The balancer should be installed level on a solid concrete floor. Maybe it can work in a trailer, but it's not ideal.For a racer-type dynamic balancing solution, I think the best would be to stick (two) magnetic probes onto the knuckle, jack up the car, and spin the wheel to be balanced with the car's engine. I would go this route if I wanted to sell an affordably-priced kit.Right now I'm just having fun with this, so I'll see as I go...

author: pmbrunelle
author_rank: Regular Contributor
timestamp: December 13, 2015, 08:51:53 pm
content: I think I know how to deal with the SMPS power brick inrush current (probably 22 uF input capacitance or thereabouts for a 10 W supply) and the 250 VAC / 3 A power switch.I will simply put a fixed 82 Ohm resistor in series with the SMPS input. If the SMPS draws ~120 mA @ 120 VAC, there will only be a 10 VAC drop, which isn't too bad, considering the SMPS is supposed to work all the way down to 85 VAC, albeit with a load current derating. I think that this resistance would also charge the input capacitance quickly enough, on the same order of magnitude as a mains AC half-sine, so hopefully I shouldn't have start-up issues with the DC bus ramping up too slowly. To be tested...With the fixed resistor, I won't have to worry about power cycling the machine too fast for the NTC inrush current limiter to cool down after being powered on.My fixed inrush resistor specifications:Axial-leaded format, none of this TO-xxx rubbish where you need to add a heatsink to achieve some semblance of a power rating.400 V dielectric breakdown voltage, because when the machine is turned on, the resistor will see full mains voltage.5W continuous or better power rating; I don't want to burn my fingers if I touch the resistor, nor do I want to scorch the PCB.2~3 Joules pulse handling or better; My rough estimation for the pulse energy is ½CV2, though I'm not too sure how to precisely calculate this, as it may be affected by when the power switch is closed in the AC cycle. I would also need to know the the value of the SMPS' input capacitance, but I am not willing to buy two of them just to cut one open to see what's inside.So I will just get a Vishay 7W 82 Ohm resistor:http://www.vishay.com/docs/28730/acseries.pdfNo dielectric voltage rating, but the body is like 1" long...I should get this inrush-limiting mostly right, because I will be using the power switch as the Emergency-Stop, so I can't afford to have the contacts weld together.Technically it would be more proper to use of of those $$$ mushroom switches that is guaranteed to separate its contacts even after being welded together. But I want to keep everything clean and PCB-though-hole mounted, without having flying leads just for the E-Stop.

author: pmbrunelle
author_rank: Regular Contributor
timestamp: December 22, 2015, 04:16:10 am
content: I found a PCB-mount switch that looks like it would belong on a computer power supply; rated for 100 A inrush (typo?). Perfect. So now I am working on the main shaft quadrature encoder.The Mk1 encoder is optical, based around a toothed disk. 2x (90 deg out-of-phase for quadrature) slot-type photo-interrupters containing an LED on one side and a light detector on the other side turn on or off depending on the presence of a tooth to block the light beam. There is also a third photo-interrupter which reads a single once-per-revolution reference hole. This produces the index pulse. I have come to realize that a wheel balancer encoder does not really require an index pulse...However, in Mk2, the mechanical setup could allow the main shaft to move axially, which would crash the disk into the photo-interrupter. The movement would only happen if you exceeded the ~200 lbf bearing preload in one direction (pulling the shaft out), and the movement would be on the order of 0.1".So, I have been looking at making a magnetic quadrature encoder based on an ABS reluctor (tone?) ring. With this concept, even if the main shaft moves axially, the encoder will probably continue to operate correctly! The basic idea is to have a fixed permanent magnet (perhaps two?) facing the reluctor ring. Then, Hall-effect sensors in the gap measure the magnetic flux density, which depends on the presence of a tooth or gap facing the magnet.From my preliminary study, which included some analysis in FEMM, I think this type of encoder will have some challenges:The presence of a tooth will only increase the flux density by perhaps a factor of two at best.The nominal flux density will vary, and sensitivity or switchpoint tolerances for Hall-effect sensors are not too good.Tolerances in general will be all over the place, so analog-output Hall sensors will be required. Then, their outputs will go to comparators, which will need to have their trigger points trimmed for 50% duty cycle in the output pulse train.Concentricity of the ring with the main shaft could be an issue, because this will cause airgap (significant or not?) changes.Crosstalk between both quadrature channels may be an issue.Encoder must be zero-speed capable without losing counts, so a coil pickup is not possible.Allegro makes a nice gear-tooth Hall-effect sensor with an integrated magnet (with automatic gain control and all sorts of wizardry), but I am not sure if it handles direction changes correctly.If I stay optical, it may be possible to buy photo-interrupters with a greater slot width, so that the disk could move axially 0.1" within the slot and not damage anything. Since I expect to lose the index pulse in Mk2, it should be much easier to shop for photo-interrupters without the constraint of finding one that is index-compatible.

author: pmbrunelle
author_rank: Regular Contributor
timestamp: January 17, 2016, 07:10:31 am
content: So I think I have a reasonable concept for an optical quadrature encoder.It uses a 32-hole disk and two two transmissive IR photo-interrupters. Ideally, I would like to use photo-interrupters with the analog and Schmitt trigger stuff integrated (open-collector output), so I can just wire the photo-interrupters directly to the microcontroller's pins and off I go with bounce-free pin change interrupts. The packaging and assembly order is way better than with the large diameter toothed disk in my previous post:https://www.eevblog.com/forum/projects/diy-dynamic-wheel-balancer-mark-2/msg803372/#msg803372There will only be 128 positions compared to the Mk1's 256 positions, but I feel that 128 will be sufficient for a wheel balancer. Essentially, I've divided the disk diameter and tooth count by two, so the optical window width has not really changed.Mechanically, it's easier to put the photo-interrupters close to each other. However, to prevent optical crosstalk, the photo-interrupters should be widely separated. So there are some contradictory requirements... For now, I drew what I felt "looks about right".Does anyone have experience with photo-interrupters located close to each other? I am concerned that crosstalk may be a problem. Is this a geometric exercise to make sure the detector of one channel can never see the LED of the other channel?In a very worst-case, since the RPM is not too high, I could do a time-division multiplexing scheme:Turn on channel A LEDSample channel A detectorTurn off channel A LEDTurn on channel B LEDSample channel B detectorTurn off channel B LEDRepeatBut I really don't want to go down this road...

author: jeroen74
author_rank: Frequent Contributor
timestamp: January 17, 2016, 10:52:43 am
content: Why are you designing your own optical encoder? You can buy these! You can get them up to thousands of lines per rotation, with single-ended or RS422 outputs, with or without index etc.If a complete off-the-shelf device does not cut it, use something like an Avago HEDS-9740 and a Avago codewheel.http://www.anaheimautomation.com/manuals/forms/encoder-guide.php

author: pmbrunelle
author_rank: Regular Contributor
timestamp: January 17, 2016, 09:06:34 pm
content: I don't want to change the shaft (direct carryover from Mk1), so the encoder disk needs to install on one of these shaft diameters:1.000 in +/- uncontrolled tolerance (was a non-functional surface)1.373 in +/- uncontrolled tolerance (was a non-functional surface)1.632 in +/- uncontrolled tolerance (was a non-functional surface)Shaft (total) endplay: approx. 1.6 mmJust these two parameters (bore size and endplay) restrict the possibilities of off-the-shelf encoders that will "fit". And then there are two kinds of "the part fits":1. The part fits with lots of fiddling around and a wacky assembly order2. The part fits well, the assembly order is easy, no adjusting requiredI can cut my own code wheel for near free from plastic scrap, and I plan to use two photo-interrupters at ~7 USD each:http://optekinc.com/datasheets/opb900-913.pdfSo I expect this solution will be way cheaper... but more importantly, I prefer to DIY. Maybe this is because I am a beginner, but I liked writing a "driver" for the HD44780 display (fine-tuned to the Mk1 balancer's requirements); I don't only want to focus on the "business" front-end application code. I don't think you can become an expert without having been involved in the low-level details. Once you have experience with embedded systems, then there's less value in redoing the same boring display driver stuff over and over again. But I am not at that level of expertise yet.For a quadrature encoder, the sensors need to be separated by an (arbitrary) odd integer number of angular counts; this will give you the 90 deg phase shift between the channels.I want to have the minimum separation between the sensors without having crosstalk. I considered separating the sensors by:7 counts (looks close for crosstalk)9 counts11 counts13 counts (large cutout in the steel tube may reduce stiffness, and the sensors could need to be installed at an angle)Based on the 0.050 in aperture widths on the OPB900 series photointerrupters, and probable worst-case tolerance errors in the sensor mounting and code disk dimensions, I believe that 11 counts separation is the hot ticket.It is the minimum separation for which no light ray from the LED of channel A can reach the detector of channel B (or vice versa) through a hole in the code disk. I just need to bench test this encoder configuration before committing to putting it in the Balancer Mk2.

author: Kilrah
author_rank: Unknown
timestamp: January 17, 2016, 10:34:57 pm
content: Maybe a stupid question, but why not use an accelerometer in place of the problematic load cells? Seems to be the most common method used for these applications, as long as the mechanics are half decent noise should be negligible.Iterative methods are common on processes where material is removed (e.g. model jet engines, even if the balancing machine says "remove 3mg of metal at 270°" it's still a guy grinding into the part with a tool, i.e. he will necessarily remove either too little or too much material requiring multiple passes to refine until it's good enough). But where material is added you should really be able to do it in one go only as you can weigh the precise amount before adding it.

author: pmbrunelle
author_rank: Regular Contributor
timestamp: January 18, 2016, 03:59:31 am
content: I can't say that the load cells have been particularly problematic... if I built an accelerometer-based balancer I would probably just face different kinds of issues.Firstly, the purpose of a balancer is to measure the vibration forces which act on the rotating assembly at a certain RPM. Then, knowing the vibration forces, you can determine suitable counterweights (which will generate centrifugal forces) to counteract the vibration forces.Here is a simplified explanation of how an accelerometer-based balancer works:The shaft's bearings are suspended on flexible supports.Vibration forces act on the shaft+wheel+tire+bearings+accelerometers assembly (moving assembly).The moving assembly accelerates according to F = ma (Newton's Law) and the vibration forces which act on it, where "m" is the mass of the entire moving assembly.The accelerometers measure the accelerations of the moving assembly, from which the correction masses can be determined...The complicated part here is in F = ma. "m" is unknown. "F" is also some combination of vibration forces and forces from the flexible suspension system. The mass of the moving assembly and the stiffness of the supports create a mechanical low-pass filter with an unknown transfer function (with magnitude and phase shift) that describes the correspondence between the vibration forces and measured accelerations.Sometimes, the flexible mounted balancers will have you add a known imbalance mass to the assembly, to figure the transfer function at a particular RPM.Here is how a load-cell-based balancer works:The shaft's bearings are in rigid contact with fixed load cells.Vibration forces act on the shaft+wheel+tire+bearings assembly (floating assembly).The load cells measure the reaction forces required to keep the floating assembly immobilized; the reaction forces have a direct relationship with the vibration forces.So here, with the assumption of infinite stiffness, it's really a lot more direct; there is no variable low-pass filter.On a real load-cell based balancer, there is indeed a variable (depends on the wheel's mass) mechanical low-pass filter. At low frequency, the reaction forces are directly related to the vibration forces. As frequency increases, there is a phase shift. When the frequency of the vibration forces is higher than the corner frequency of the filter, there is attenuation.However, a load-cell based balancer is designed to be as stiff as possible, so that the corner frequency is high enough (even with a heavy wheel) that there is negligible phase shift at the expected balancing RPM. Even if the transfer function is not precisely known, it's close enough to 1:1 at the balancing RPM. Well, that's the design objective anywaySo anyway, I picked a load-cell type because it seems MUCH simpler... The commercial wheel balancers are rigid.However, balancers for electric motors, turbos are more likely to be flexible suspension. Probably with the higher balancing speeds, there may be unavoidable phase shift, so you just give up on the stiff load cell topology.As for single-spin balancing, that is the objective. However, I do not expect to meet this objective... I don't think anyone does single-spin balancing. When the commercial balancers claim single-spin balancing, their displays show "0.00" ounces correction mass required, but when the mass is below some tolerance level, the software rounds it down to zero. So that's pretty much cheating.When I use my balancer (Mk1), I do iterations, but I'm trying to get the imbalance as close to zero as possible (not just "good enough"). In the final iterations, the correction can consist of moving the weight by 2 mm, and then trying again.

author: rs20
author_rank: Super Contributor
timestamp: January 25, 2016, 07:13:11 am
content: Quote from: Kilrah on January 17, 2016, 10:34:57 pmIn practice, having accurate, calibrated scales, accurate measurement and placement tools and having a precisely defined reference place on the wheel is faaar more expensive, difficult and time-consuming that just doing it iteratively. Newton-Raphson iteration converges extremely quickly on linear situations like wheel-balancing -- in fact, it converges immediately theoretically, and just very very quickly in the real world.

author: pmbrunelle
author_rank: Regular Contributor
timestamp: January 25, 2016, 11:18:37 pm
content: During the balancing process, I fix the weights to the wheel with masking tape. The masking tape allows the weights to be easily moved around. Once I am satisfied with the balance, then I carefully peel back the anti-stick strip from the weights, and then I stick it onto the wheel.One (easily preventable) trap is that as the correction mass becomes high, the strip of weight required becomes longer. So rather than being a point mass, you now have a circular arc segment, and so the center of mass of the circular arc segment has moved towards the shaft axis. So you need more mass than expected for the same mass*radius product.I imagine that with hammered-on clip weights that iterations would be a real pain, and the rim of the wheel would end up quite scratched up...

author: CaveMannDave
author_rank: Regular Contributor
timestamp: January 28, 2016, 03:46:57 pm
content: Howdy:WOW, reviewing your posts, so far, it is my humble opinion that you are diving head-first towards a DEEP rabbit-hole, if not yet within it's Schwarzschild Radius.Meaning: I believe you are falling into the "Trap For Young Players" of over-thinking the specifications and minutia for a project that doesn't warrant the Hyper-Precision you seem to be chasing.We had a damn-good balancer at one Automotive shop I worked at, that used two standard issue Pillow-Block bearings, an (approx.) 30-slot optical encoder w/index, a 1 D.O.F. (horizontal) slide on the distal support, a pair of heavy, calibratable springs, a pair of dual-winding coils w/moving iron cores (arranged as an L.V.D.T, w/oscillator excitation), several potentiometers and a measuring gauge to set ID, OD, and Width (calibrated dials), a pair of analogue meter movements, to indicate required weight and null position (where to index weight on wheel, rotate by hand to "zero", add weight at index mark.)The circuit board was single side, hand-taped, and 'sparsely' populated with, perhaps, two-dozen 14, 16, and 18-pin DIP ICs, lots of passives and 25T precision trimmers:Most of the ICs were OpAmps and comparators w/some 7400 series for position tracking and memory latching.A couple of iterations and balance was close to nominal, considering that NO tire is round, and there was no "Road Load" applied to compensate for differences in circumferential resilience.Do what you want, but you may be dealing w/ a Money Pit.I admire your diligence, and devotion to your Ideals, but be aware that SOMETIMES accuracy and precision may only rise as the square, cube, or some higher ROOT of complexity and cost.And, remember, tires wear unevenly, operating temperature changes things, and, on MOST road surfaces, no one will notice the difference.Good luck, Senoir Quixote: Strive for Perfect, but know that it is the Enemy of Good Enough.Cheers,DaveEdit: Spelling; L.V.D.T. (in paragraph 3) was typed as D.V.D.T., which means something else.

author: Kleinstein
author_rank: Super Contributor
timestamp: January 28, 2016, 04:52:40 pm
content: The encoder for the weel does need to have higher resolution, just a single pulse per revolution is enough. Something like 4 pulse might make analog hardware simpler a little, but for a µC this does not really matter and a single puls can act as an absolute reference for the angle. Usually it a rather good assumption that the RPMs are not changing very much during a single turn - so interpoation can be done in time.Usually the final calibration on how much unbalance causes how much signal at the vibration or force transducer has to be done by experiment anyway. Depending on the accuracy of calibration the iterative process can be faster of slower - ideally the calculated position and mass could give a perfect balance in one step. If not perfect it takes a few steps, maybe 2 or 3.The limiting part could be the accuray of mounting the weel anyway.

author: pmbrunelle
author_rank: Regular Contributor
timestamp: January 28, 2016, 06:00:58 pm
content: Dave, I expect this project to be done within 2 years, and after $2000 of expenditures. There's no point in trying to go fast though, because then you'll just need another project to do...So the first attempt to calibrate the force sensors was with dead weights. The dead weights pulled on a string, which pulled on the Mk1's bearing supports. This was a complete failure.Then, we made a calibration disk, this made things better. So by installing known masses into the holes, we can get 2, 10, 20, or 40 oz-in of imbalance. Mk2 will have an automatic calibration by calibration disk.The centering of the wheel is a huge issue. The rotation axis on the balancer and on the car must be as close as possible. To get things as concentric as possible, the shaft was turned between centers, and the OD on which the centering cones slide on was machined to fit - not meant to be interchangeable with other centering cones.The constant speed assumption is not a bad one for a high-inertia load, such as a wheel.However, with the calibration disk on the 40 oz-in setting, the speed is far from constant. The motor slows down to lift the weight, then it accelerates on the way down.As for the countdown timer approach, it could be possible as long as you always have a high-inertia load; no calibration disk.However, the encoder facilitates a high force sampling frequency. This is important to avoid aliasing. The force signals do have a bunch of high frequency garbage. Otherwise, in theory, the force signal is a perfect sine with a frequency of once per shaft revolution.Also, the encoder is useful for weight placement. Otherwise, it is difficult to manually rotate the wheel to the correct angle for counterweight placement.

author: CaveMannDave
author_rank: Regular Contributor
timestamp: January 28, 2016, 06:22:04 pm
content: Hi:QUOTE: "The limiting part could be the accuray of mounting the weel anyway."Thank You!I accidentally left that point out, and depending upon concentricity (absolute STRAIGHTNESS) of the balancing machine's shaft (and the balance of ALL rotating components), to say nothing of the axle/spindle/hub/bearing/lug tolerance, of which I DARE anyone to demonstrate is PERFECT, or even capable of perfection, on ANY rolling 1000 KG+ rolling vehicle!I can't EVEN enumerate ALL the potential sources of error in any attempt to balance any rotating parts, much less components subjected to the abuse that wheels are expected to tolerate, on a daily basis.Ask a Turbine Technician how hard it is to balance one of his "clients".Cheers,Dave

author: CaveMannDave
author_rank: Regular Contributor
timestamp: January 28, 2016, 07:11:56 pm
content: pmbrunelle:Believe me, I DO fully understand your motivation, desires, and logic. And there is nothing that I would like more than to encourage you in your pursuit, as it is an Honourable one. I simply believe you are embarking on a path that will have you banging your head on a concrete wall, and I want to help you avoid the frustration.I was a Young Engineer, 40 years ago, and I believed that if only I put enough thought into it, that I could overcome the Laws of Physics, to read nano Hertz on a 10 GHz counter, but it was not to be.I suggest you search out the writings of the likes of Bob Widlar, Bob Pease, and Jim Williams, (all of whom have, sadly, 'Shuffled off this Mortal Coil'), but who were Legendary GrayBeards before most of us were out of three-cornered pants.These were the dudes that made the Analogue and Signal Processing world easy for the rest of us.Pease was known for "Solder is my favourite Programming Language" and "In theory, it will work, but in practice it won't". His Passion, as was Williams', was finding the bleeding-edge of what CAN be measured, and then pushing that limit as far as possible, and beyond.Look up their books and Wisdom, and PAY ATTENTION !They forgot more than most of us will EVER learn !The circuits may be from the '60s, but the information is timeless !I wish you well, and perhaps you can get your project up to spec, but failure is not always a bad thing: It will teach you more than any textbook, if you allow it.Cheers,Dave

author: pmbrunelle
author_rank: Regular Contributor
timestamp: February 29, 2016, 02:34:28 am
content: I just finished tuning (by experimentation) the constant current braking load so that it works correctly. Right now it's a bit messy with paralleled resistors and flux drippings everywhere, so I will clean it up some.After a balance cycle is complete, this "constant current" load is connected in parallel with the 90 VDC motor. Braking is much better than with a resistor (which is much further from constant current). It's a 2.6 A rated motor, so the goal was to decelerate the wheel at the motor's nameplate current.The choice of R2 seems to affect the circuit's stability, but the required bandwidth for this application is slow (human-measureable time-frame). Previously, it appeared to oscillate with a smaller value of R2, and this oscillation could be heard (audio frequency) from the motor. A voltmeter connected across the current sense resistor indicates that the circuit now works as intended. The motor is quiet during braking as well.It took a bit of searching to find a MOSFET with a SOA that could handle 2.6 A at 90 V. A bipolar transistor seemed to be out of the question for this type of duty.Obviously, the Mk2 balancer does not yet exist, so I used the Mk1 balancer as the test bed for the constant current braking load.

author: pmbrunelle
author_rank: Regular Contributor
timestamp: August 01, 2016, 10:44:55 pm
content: I picked up some bearings to support the main shaft.Even though the RPM is low, I prefer shielded to sealed bearings. The more torque the motor has to provide to keep the wheel spinning, the more potential there is for any torque ripple in the motor output to be reflected in the load cell signals. Besides, the inside of a wheel balancer is a clean and dry environment.Regarding the power supply, I got an ST VIPER27 flyback converter chip (60 kHz), and the flyback transformer suggested (by digikey) for that chipset. So the next step will be to make a proto-board to test the power supply alone.The proto-board layout will have to be somewhat similar to the layout as I would expect it in the final design; otherwise, the value of the proto-board is pretty much nil.