My own garden to plow. - Page 1
Forum section: electronics / projects

author: Paul Price
author_rank: Super Contributor
timestamp: May 22, 2013, 05:55:50 pm
content: My question was about getting a Universal Motor, but I now realize this is not the best venue for this coding topic.Thanks to all and I am no longer interested in any further comment.

author: qno
author_rank: Frequent Contributor
timestamp: May 22, 2013, 08:53:49 pm
content: What brand of washing machine is it?Do you have a picture of the motor?

author: C
author_rank: Super Contributor
timestamp: May 22, 2013, 09:30:28 pm
content: For what your talking about I would think that speed changes would be good.for the baby rock1. wait motor time off, this is to allow the drum to stop.2, slow acceleration with out tach.3. sense good tach.4. run at slow tach speed for X time.5. turn off and coast.6 set direction change7. go back to 1for same direction ramp up to good tach and then coast for X time and repeat.The non steady speeds will cause the clothes to be rearranged.For safety, if you do not see a good tach after Y time the stop so you do not hurt the motor.C

author: C
author_rank: Super Contributor
timestamp: May 22, 2013, 11:06:21 pm
content: A long time ago I worked with a big commercial horizontal drum type washer.It did a wonderful job and was very easy on what was washed.The motor was belt drive connected to the big drum and had no tack.It's wash cycle was what what you called the baby rock. It was all done with relays and timers nothing fancy. The motor setup had off, slow reverse, slow forward, medium forward and high forward. You could hear the relays click as it washed.It did pull one thing that you might not think of, It only went to off from slow. If you are spinning fast in high and drop back to medium on the relays, the motor will brake fast until it is at the medium speed.I would suggest that you modify your circuit or software just a bit such that you have a tach good signal.You do not want to cause a fire or damage the motor, so your software should prevent this from happening. Worse case here is that the drum will not spin. So for safety while you are in open loop control only allow a motor movement command to last Y time with out a tach good signal.I would think that motor will not like you and heat up if you try to run it too slow. When you were looking at the motor did it have a separate fan to cool the motor or only the motor's built in fan? When they built the washer, they should have thought of this and that may be the reason that the motor's tach does not function at what you call slow speeds.So while you may want supper slow speeds, that motor may not like it at all.And as time progresses the min speed of that motor will change. Today it might be 50 rpm with X power settings and in a year it could be 75-100 rpm with 2X the power settings and in a year at X power it is stopped and just heating up.So I would guess that the time spent while the tach is inaccurate should be limited as the motor is not getting proper cooling. For what you are doing it would be good to have a temp sensor on the motor or not go slow that the motor cooks it's self. I think that too slow start up will cause a lot more heat build up also.This is a washing machine so speed is not that critical. Use a long time average of the tach for your speed control. If your not doing a fancy control like PID then add a time delay before allowing a new change to the commanded speed.C

author: C
author_rank: Super Contributor
timestamp: May 23, 2013, 02:04:01 am
content: You should keep in mind that using a trac to control the speed of a motor is not the same as if you just lowered the ac voltage to get the same speed. With ac the voltage increases and the current increases with the current is held back by counter emf. Looking at the worse case to make it easer to see with Trac speed control is when you turn on the trac with the voltage at max. For instant you have Max voltage, 0 current, 0 cemf. This causes the magnetic field to increase far faster then pure ac would and you would be doing this 100 times a second. That fast change equals heat and stress to the motor.Power companies do not like things that create poor power factors on their power lines and trac motor speed control has very poor power factor when part of a half cycle. The original circuit may have had an power filter to improve the power factor or The original circuit may have been doing cycle skipping where the trac was on for a full cycle and off for a number of cycles..The original circuit may not have tried to get frequency from the tach. It may have just read the AC voltage from the tach.C

author: IanB
author_rank: Super Contributor
timestamp: May 23, 2013, 05:18:20 am
content: It seems you are trying to discriminate between a true speed signal from the tach and the effect of juddering and vibration superimposed at low speeds.My take on this that to remove the effects of noise you need to average your speed signal over a period longer than the noise frequency. How do you do speed measurement from the tach? Are you trying to measure the interval between pulses, or are you doing pulse counting over a fixed interval? I would suggest you need to be doing the latter. Pick a longish interval like half or quarter of a second (or whatever seems reasonable) and count tach pulses over that interval. If you want to be clever you could have several counters running in overlapping windows so you get a speed measurement more frequently than the counting interval. Or you could use a running average technique.One way or another I think you need to filter out the noise that is upsetting your speed measurement and time averaging would be the most effective way to do that.

author: C
author_rank: Super Contributor
timestamp: May 23, 2013, 08:32:26 am
content: QuoteThis is wrong, a TRIAC or SCR once on will stay on until the current drops below the TRIAC's or SCR's holding current. As motor current lags voltage, the TRIAC or SCR will not turn off until after zero crossing when the current is close to 0.http://en.wikipedia.org/wiki/Power_factorQuoteQuoteA lot of things are controlled with a TRIAC turned on for a full or half cycle. By using a full cycle you also keep a better power factor. A cheap electric heat device like electric heat, a stove or frier will use a relay or thermal switch, the better quality ones will use a TRIAC, while the best will use a solid state switch based on fets.It is also rare to find brushes in quality equipment even with speed control. My washing machine, dishwasher, drier and most any other appliance use a multi-speed induction motor and have no brushes. A vacuum, blender, mixer or. portable drill will most likely stil times use a brushed universal shunt motor. But note the last three also do speed control most likely using phase control TRIAC's and do the speed via a pot in the case of a drill and voltage dividers for the others. So all three are using voltage, be it from back emf, tach voltage or freq to voltage converter.TachIf you were to check, you will probably find that what you are calling a tach has a field winding with a permanent for the armature. Such a tach when driven will create an ac signal and the voltage of the ac signal will increase with speed. The supplier of the tach will normally supply a speed vs voltage curve in the data sheet for this part. If you were cheap in the past, you would use a cheap dc permanent motor as a generator for a tach. as the brushes were a big failure point, the better manufactures shifted to using a AC permanent motor and did the rectified it themself or paid more for a DC tach that was a rectified AC permanent motor.This analog ac tach voltage is rectified to create a dc voltage that changes with speed and is very often used to control the speed of a motor. In fact if you took the time to look you should be able to find many circuits where this tach voltage used to control when a scr or trac turns on to control motor speed. You would also find many circuits where this voltage is used to control the speed of a DC motor by controlling the DC voltage directly or via PWM.By using a tach to create the control voltage you get better speed regulation then if you just used back emf like your variable speed drill.If you bothered to check, back emf increases with motor speed and is often used for many motor speed controlers The problem with back emf is it is also effected by motor load as well. So by using a tach voltage this removes the load change from the speed loop.If you bothered to look you will find that an AC incandescent light dimmer uses a TRIAC to control the light's brightness using phase control. That same circuit with no or minor changes is often used to control the speed of a universal shunt motor and both use voltage not frequency to do so.An no you do not need to know the rpm's of a motor to control it's speed. `You just need something that changes based of the motor's speed. If you want cheap then you use back emf.C

author: C
author_rank: Super Contributor
timestamp: May 23, 2013, 02:12:43 pm
content: Time to go back to school or do a lot more studyQuotejust one of many exampleshttp://www.electroschematics.com/444/motor-speed-regulator-with-triac/I strongly suggest you do a lot more research, A simple google of"triac motor speed control circuit diagram" only gets 228,000 results.OnSemi's TDA1085C clearly states it uses freq to voltage conversion of it's speed sensor.You have to remember that over time what was once cost effective changes.The DC voltage tach got replaced by the AC voltage tach which has no brushes so has a longer life. Like wise the AC voltage tach got replaced by a pulse or freq source and a freq to voltage converter because the later could be made cheaper and more accurate.With just a little looking you could find out that the multi-speed induction motor's power factor is not great, but it is a whole lot better then a triac speed control's power factor of any type of motor.It also not hard to find that motors with brushes on a commutator have a higher failure rate then motors with brushes on slip-rings, and any with brushes have a higher failure rate then those that do not.So if you look at it, your brush based motor has a shorter life with a cheaper speed control and poorer Power Factor compared to a multi-speed induction motor which has no brushes and fixed speed steps. The high end washers are currently using a three phase brush-less direct drive motor. This motor costs a little more while they save some due to direct drive. This part could have a longer life then even my thirty year old washer. The Motor control for a three phase motor costs a whole lot more and has a poor power factor due to the diode bridge until you add a cheap active power factor correction circuit which makes it have a better power factor then even an induction motor. Like wise if you search on google you will find that some manufacturers do not build a motor controller that lasts in their washers or driers. So while a good direct drive three phase motor in a washer/drier that should last a very long time the electronics also hast to be up to the task.Do the research if you do not want to take my word for it.C

author: IanB
author_rank: Super Contributor
timestamp: May 24, 2013, 07:29:25 am
content: Hi Paul:You mention that "the tach reading may not be a tach reading so much as a percussive microphonic pickup of motor noise", but I have trouble following this. If the motor is turning there should be rising and falling edges on the pulse detector, so do you think the noise and vibration is producing spurious edges? Or is it that when the motor is turning too slowly the AC amplitude is too low to produce clean edges? Have you put a scope on the tach output to see what is happening?Another question I would have is about the parameters of the system. How many turns does the motor spindle make for one turn of the drum, and how many pulses does the tach produce for one turn of the motor spindle?Let's suppose the drum should be rotated at 15 rpm (4 seconds per turn), and we would like to slowly turn the drum and reverse it after a quarter turn. How many tach pulses should we count to measure a quarter turn?At low speeds it is possible perhaps to control rotation angle rather than rotational speed. There is an input signal to the motor drive representing the trigger angle on the TRIAC that varies between 0 and 100%. It should be possible to slowly ramp up this signal under open loop control while counting tach pulses. When a quarter turn worth of pulses have been counted, reverse the motor direction and slowly ramp up the power from zero again. Rinse and repeat (pun intended)Since we expect a quarter turn to take approximately 1 second, and since a single TRIAC pulse cannot last more than 1/100 second (half an AC cycle), I find it hard to believe that a few fractional TRIAC pulses can produce a runaway on the motor speed before some tach pulses have been counted.Related to the ramp idea, you may consider, perhaps, a rate-of-change limit on the speed control signal to the motor drive? This could prevent sudden jumps up and down in the power applied to the motor leading to smoother control with less judder.FYI, you can see in test #2 of the following post how a ramp up from zero is used to good effect by the power supply I was examining to control overshoot on the controlled variable when the set point is reached:https://www.eevblog.com/forum/testgear/el302p-output-regulation-speed-test/

author: Kremmen
author_rank: Super Contributor
timestamp: May 24, 2013, 10:40:33 am
content: Quote from: Paul Price on May 23, 2013, 10:53:42 pmAssuming you have made sure that the noise really is microphonic in nature, that would indicate there is some mechanical problem (looseness) with the tach. If so, it won't be much use until fixed because there will be no way to compensate for this kind of noiseQuoteRecalling basic theory of DC (universal as well) machines the torque is proportional to armature current and speed to armature voltage. So roughly, the speed should follow the RMS value of the voltage and that in turn should follow the firing angle - although not linearly. So, you should be able to get the motor turning without feedback, by using a small(ish) firing angle. Of course a motor this small will be far from ideal so the armature resistance probably limits the torque causing some load sensitivity. But at least it should not run away.QuoteSure but that is the norm. Seldom is it useful to spin a motor unconnected to any load. You just need to account for the inertia and the time constants in the controller tuning.QuoteNot quite so. Triggering a pulse will obviously feed the firing angle specific voltage pulse to the armature. The resulting armature current depends on the armature winding resistance and its back EMF, and that in turn depends on the rotation speed. With an ideal DC motor under no load and steady state, no armature current flows and the voltage determines the rotation speed only. Loading the shaft will create torque and that in turn will create armature current (torque is proportional to current only). In a practical machine part of the current (Ia) creates dissipation in the armature winding resistance (Ra) creating a speed difference from the ideal motor (RMS supply voltage = effective back EMF + RaIa). So, at a particular supply voltage the motor accelerates only until the sum of back EMF and armature voltage loss equals the supply voltage. Low supply voltage = low speed.So, if you have problems controlling the acceleration i suggest your controller time constants are not well matched to "the plant" i.e. the motor time constants. Commanding more abrupt changes than the plant can follow, especially with an I-term in the controller will cause integrator windup and controller oscillation is a probable outcome. Conversely, too slow a controller is prone to similar behavior due to excessive phase shift between command and actual signals.A washer drum is not the simplest of control targets due to the large variation in operating points and unpredictable torque noise due to shifting laundry. The controller should probably include a D-term to compensate the torque variations, yet at the same time the basic tuning is somewhat sensitive to the total amount of load (steady state torque). I understand that late model washers incorporate fuzzy controllers to compensate for this by autotuning to the observed load and its variations. Thus not a trivial system to duplicate.

author: IanB
author_rank: Super Contributor
timestamp: May 24, 2013, 05:24:49 pm
content: Based on your first post and your other messages to me, it seems you only have a good speed signal from the tach when the drum speed is greater than 0.5 revs per second.This means you can only apply closed loop drum speed control when the speed is greater than this.You would need to implement a "good speed measure" signal and you would need to suppress the closed loop speed control when this signal is not good.When you do not have a good speed signal you need to apply open loop control without feedback to "launch" the drum into the controllable speed range.You have a power signal fed from the micro to the motor drive: 0% means no power, 100% means maximum power. For open loop control you can ramp up this signal slowly from zero until you detect a good speed signal from the tach, then you can switch over to closed loop control.In my other message I mentioned a rate of change limit on the motor control signal, but I fear you misunderstood. I did not intend you to attempt to control the rate of change of the motor speed, I intended you to put a rate of change limit on the power signal going to the motor, so that the motor does not experience sudden changes in input power.Imagine you are driving your car and you need to slow down. Suppose you apply unsteady and jerky motions on the brake pedal. Your passengers will get jolted around and feel uncomfortable. Obviously you apply very smoothly modulated control to the brake pedal for a pleasant ride. Do the same with your motor.

author: IanB
author_rank: Super Contributor
timestamp: May 24, 2013, 06:27:20 pm
content: It is rare to need a "D" term in a PID controller. A typical approach to tuning would be to adjust the P term alone to achieve a reasonable and stable transient response, then increase the I term to remove offset (backing off on the P term if necessary to maintain stability). Only then, if it is impossible to achieve reasonable control responses with P and I, would you consider introducing a D term.Modifying P and I dynamically is adaptive control. This is another thing you would leave out unless you cannot operate without it. Most controllers have constant P and I terms.By rate limiting on the output I do not mean doing anything with P or I. I mean limiting the amount the controller output is allowed to move in one step. For instance the output should not be allowed to move from 0% to 100% in one control cycle, regardless of what the PI algorithm wants to do.

author: Paul Price
author_rank: Super Contributor
timestamp: May 25, 2013, 12:27:17 pm
content: Thanks again IanB, you are truly a muse and a help to the many on this board!I am very grateful for all your comments, but I don't want to further discuss this problem.

author: JVR
author_rank: Regular Contributor
timestamp: May 27, 2013, 02:15:34 pm
content: Not quite in the spirit of things is it? Leave the info here, someone might need it one day.

author: Jon Chandler
author_rank: Frequent Contributor
timestamp: May 27, 2013, 02:57:00 pm
content: Quote from: Paul Price on May 22, 2013, 05:55:50 pmGeez oh grief. You don't get the answers you like or expected, so you go back and change the original post? All the efforts anyone made to answer are thrown out the window when you delete the original information and it's impossible to follow the remaining thread at all!If you don't like the answers you're getting, shut-the-fuck-up, ignore the thread and move on! Don't act like a two-year-old and knock over the game just because you're not winning! You may not find anything useful in the replies but others may gain some useful information if the thread is left intact.