![]() |
#1
|
|||
|
|||
All motors run fine then start chattering and loosing steps - interrupt in the PC
I'm stumped. I thought I had a grounding problem, but I've rechecked all the grounds and everything looks good. The symptoms are:
1) If I go very slow, there seem to be no problems, although I do notice an occasional "tick" from the motors. 2) Operating at 300 in/min and anywhere from 5-20 in/sec/sec acceleration, all motors will run smooth, with the normal high pitch whine. 3) They do not get hot, nor do the geckos 4) After traveling for anywhere from 20 - 100 inches, the motors will what I would describe as gear grinding sound and quit spinning. If I stop and start again, it runs smooth again. 5) All of the motors seem to be doing this. At first I noticed it on the X-axis only, so thought it might be a binding problem. I have dropped all motors and still get the behavior even under no load. I'm guessing software setting or tuning problem, just not sure what exactly would cause this? Under Mach 3 Config + Motor Tuning, there are two boxes labeled Step Pulse and Dir Pulse with units of micro-seconds? What should these values be? Thanks |
#2
|
|||
|
|||
Kevin, I wonder whether your PC is up to the task, or whether your PC starts/runs some other process in the background. (screensaver, LAN port scan, etc.)
The best help on these sort of problems are the Mach forums. Not near my machines now, but the Pulse length settings have been unchanged from the default installation. |
#3
|
|||
|
|||
I bought the computer at surplus, but it is an IBM 6221 which is dual CPU 2.6 GHZ, so it should be overkill if anything. I don't think any other processes are starting, but I can check for that. Thanks.
|
#4
|
|||
|
|||
Kevin,
That computer should be fine but did you run the Mach test program on it? If not, would you! |
#5
|
|||
|
|||
Here is Mach's guide on optimising XP:
http://machsupport.com/downloads/XP_Optimization.txt 300 ipm is not exactly "slow" for some some motor/drive configurations. You might have run out of torque and the motors do the noisy step slipping. What is your configuration of motors, PS voltage, current limit resistors, pinion size, motor wiring etc.? |
#6
|
|||
|
|||
But, on reading your first post again, you get this even with motors disconnected from the racks. That swings me back to the PC again . . .
|
#7
|
|||
|
|||
Is your Mach kernel speed set high enough?
|
#8
|
|||
|
|||
I have run the Mach test program. I even ran it up to 100,000 pulses, and was still getting excellent response according to the test program. I currently have it set at the recommended 25,000 pulses. I have not run the XP optimization. I can try that. There are apparently different modes that the parallel port may operated. I tried changing that, but it had no effect.
I do have another computer that I can try. It has Vista on it, but it also has a seperate (not on-motherboard) parallel port. I did check the Mach forum. It looks like there are a couple people having the exact same problem I'm describing. http://www.machsupport.com/forum/ind...ic,9943.0.html |
#9
|
|||
|
|||
With your motor/(gearing)/pinion size, does 25 000 pulses per second give you more than 300 inches per minute? If not, then you need to increase that kernel speed setting to go faster.
|
#10
|
|||
|
|||
I have the Oriental PK296A2A-SG7.2 motors and a 25 tooth pinion. Which, if my math is right, should only require about 9200 pulses/second.
The first field in Motor Tuning says "Steps Per" .... that is steps per unit length (inch or mm), right? |
#11
|
|||
|
|||
If your machine is set for inches, then your "steps per" should be 3666.93.
To travel at 300 ipm will need 18300 pulses per second. |
#12
|
|||
|
|||
PS, I have assumed that you have DP pitch 20 rack & pinion. Is that correct?
|
#13
|
|||
|
|||
I'm not in front of the machine right now, but that 3666.93 value seems familiar, so I think that's what I've got keyed in. Yes, the DP is 20, but both the grinding noise and ticking occur even with the motors completely disengages, so it can't be any mechanical aspect of the machine.
On the Mach forum, one of the guys suggested. "one possible cause of a regularly spaced 'tick' might be the system adding or subtracting an extra step to correct for rounding if the drive ratio is something odd that slowly gets off-step". Any idea what this means and what would cause that? I asked for some clarification, but haven't heard back yet. |
#14
|
|||
|
|||
Kevin,
From your statement that the problem occurs after an axis has traveled 20-100 inches. (I'm assuming that that means one continuous move.) That would indicate that some process or program running on the computer is interfering with the Mach 3 pulse step timing interrupts. Wireless network cards caused me great grief on my Shopbot, but any device and any program or process that interferes with the interrupts could be causing the problem. From your description, it appears that at some point, the Mach 3 pulse train is briefly stopped for a period long enough to cause the motor to start to loose inertia. When the pulses finally begin again, the motor needs to ramp back up to speed because it can't move as fast as the pulses would require, and the motor sounds terrible. The cure is to use the optimizing guide that Gerald suggested and remove all unneeded background programs. Contrary to what you might have been told, a large, server-style computer with more than one CPU can actually hinder programs that were designed to run on single-CPU machines, like Mach 3. On multi-CPU machines, programs and processes are often split between the CPUs and one CPU can 'hog' the interrupts at the expense of other programs and processes. As a computer consultant, one of the things that I sometimes have to do is to tell some customers that they have purchased too much computer for the required job. Unless a program has been written to run on multi-CPU machines, it might actually run faster and cleaner on a single-CPU machine. If you have an oscilloscope available, you could look at the step pulse train. After ramping up, the pulse train should have a consistent pulse duration until it enters the ramp down phase. The kind of problem that I've described would show up as severe jitter. A storage-type 'scope would let you see the time duration change between pulses, but even a non-storage 'scope would show the jitter. Seeing the problem on a 'scope would only verify that something has interfered with the timer interrupts. You would still have to run the optimization procedure to remove all unnecessary processes and programs. Those of us who have used a CNC router for a while know that when the router is running, we can't use the computer for anything else. Most of us use a separate computer for designing and other normal computer uses. My CNC computer is actually a low-cost, low-performance machine. It has a $75 motherboard, a $50 AMD CPU, a $15 stick of memory and a $30 hard-disk. It runs at 1.8gHz, so you can see that it will win no speed contests - but it is rock-solid and stable. |
#15
|
|||
|
|||
Thanks for the suggestions Mike. Yes, I am talking one continuous move, and I am controlling the move with the jog or shuttle pop up (Tab in Mach 3). The computer was a $200 surplus piece, so it won't break my heart if it turns out to be the problem. Would I be able to see this process start up in Task manager at about the time the motor either ticked or reasonated?
|
#16
|
|||
|
|||
Kevin, just for the sake of accuracy in the wording, what you appear to be experiencing is motor slippage, or lost steps, which is not the same thing as resonance. Resonance is a fairly subtle rough spot at a very low speed and it goes away at higher speeds.
|
#17
|
|||
|
|||
Kevin, Task Manager might be able to see the problem, but more likely, it would cause a problem. In order for Task Manager to work, it has to take continuous 'snap-shots' of the system. Each time Task Manager looks at the system, the processes that are running will be temporarily suspended - including the timer interrupt process.
Be sure to check your power supply. There is a very remote possibility that a capacitor has failed or is failing, although I really don't think that the power supply is the cause, because you have the problem when the motors are dropped away from the machine, which also means that the motors are hardly drawing any current. To check the power supply, use a digital volt-meter with the probes connected directly to the power-supply's output and set the meter to read AC - not DC. Watch the display while an axis moves a long distance. The reading will be the AC ripple. A ripple up to 10% of the DC voltage would be normal. Less ripple is better. If you're seeing more than 5% ripple (5% of the DC voltage), replace the capacitor or add another capacitor to the power supply. The fact that the problem occurs after an axis has been busy makes me wonder whether the power supply can't supply the necessary current during the entire move. |
#18
|
|||
|
|||
Here is an extract from a post on the geckodrive yahoo forum last night. I am not at all trying to say that this is the problem in Kevin's case . . . . . just illustrating the point that all types of nonsense can be happening in a "sophisticated" PC:
"Laptops, and many desktops also, use various power management facilities to keep heat and power usage down. CPU throttling is one, spinning down hard disks, etc. These power saving features use a system called SMI, the "System Management Interrupt". This is a feature of the CPU, and for some Intel CPUs, is required. (The CPUs that do thermal shutdown need SMI enabled, and technically Intel says you are running the CPU out of spec if you disable SMI for those CPUs). The problem with SMI is that there is little the CNC program can do to prevent the SMI interrupt handlers from being run. What all this boils down to is that outputting steps from the parallel port will stop whenever the SMI system is activated (happens often, about once per minute at minimum), and the CNC controller is powerless to stop it. These delays aren't always short either, they may be 1/2 - 3/4 of a second. When they're long enough, your motors will stall, and your part will likely be ruined." |
#19
|
|||
|
|||
All motors run fine then start slipping
Nice bit of detective work Gerald. I'm not sure if this is the exact problem, but if not, it is something related, I'm sure. Last night I swapped out the (trusty?) IBM computer for my self assembled computer. I also copied the Mach XML file over, so I'd have the exact same settings. I didn't have much time to test by the time I got everything set up and the printer port configured (it's an add on board as the motherboard had no printer port). Anyway, limited testing, but no problems observed, so it is definitely SOMETHING about the IBM. This would probably also explain the ticking at slow speeds, but stalling at high speeds...at slow speeds, the pulse train is slow enough that the motors can recover?
I'd still like to use the IBM to drive the machine and the other computer for the design work, so I'll probably try to disable all the interupts if I can, but at least I'm operational now. Thanks. |
#20
|
|||
|
|||
Hi Kevin,
I'm going to chime in here as I am beginning to see some comon threads about new PCs. If you read my build you will see a description of my problem. I feel the situation you read about will be similar. Initially everything is fine and then the problem begins. At first I pointed my finger at the PMDX-122 BOB but after several E-mails to PMDX and help from others on this forum, I ruled out the PMDX. I did all kinds of tests and guess what the final solution was??? I changed the machine to an old Celeron 1.6 GHz machine with 256 MB of ram and from then on my machine runs smooth as butter without ever a blip of a problem. I troubleshooted this problem for about two months. My kernel speed is set at 45K and am using the same motor and Gecko as you on the old Celeron machine. My settings are as follows: Velocity is 15,000 units per minute (Metric) and acceleration is set at 750 mm/m2 on all axis. From my experience, all my moderen dual core beasts had similar problems (this accounts for 4 different machines with various configurations). I went as far as to try a 6 year old P4 3.06 Hyperthreaded machine with a ASUS P4PE motherboard with 1 gig of ram (Very expensive at the time but still in use today and not slow). Again the old P4 machine had absolutely no problems. I wish I could offer a more technical explanation for this but thus far, I have to say that I'm under qualified to do so. I hope sharing my experience may help you solve your problem. Good luck. Last edited by liaoh75; Tue 10 February 2009 at 22:42.. Reason: Forgot to add information. |
#21
|
|||
|
|||
In windows xp you can disable one of the cores in the processor for an application, has anyone tried that to see if it helps the situation? I have heard of others doing this on other apps that did not run well when the os was utilizing both processors. Open windows task manager and then select the application you want to modify (for example Mach 3), and then right click and go to "set affinity" and then deselect one of the processors. Just a thought
![]() |
#22
|
|||
|
|||
I didn't know that was possible. I knew you could change the priority of a process, but that doesn't stick, you have to remember to do it each time. Or maybe you could write a script. I'll check the CPU thing, but I think most likely the problem is the interrupts that the system sends to check for CPU temp and fan speeds, and I haven't found any way to disable those checks. Nothing in the BIOS, that I've found.
|
#23
|
|||
|
|||
Well I'm in for 2cents...in the spirit of KISS have you checked to make sure there isn't some old errant printer driver or software loaded that may be polling the LPT port? I used to get this same problem with pen plotters.
I think watching the task manager will give you an indication to the culprit. Sure the task manager might cause a problem, but it will be a constant problem...whereas whatever is kicking in seems inconsistent....just set the task manager update speed to high and set the list to sort by CPU usage and see what pops up. (you might want to point a video camera at the screen and record what happens, it gets hard to watch everything all at once) |
#24
|
|||
|
|||
Is the outcome of this (apart from steering clear of dual core processors) that a smoothstepper is needed to manage the pulses from the PC controller to the steppers?
PMDX indicates this might be an issue in the PMDX132 (bottom of the page, in red). http://www.pmdx.com/PMDX-132 Last edited by Red_boards; Wed 14 October 2009 at 19:40.. Reason: change pmdx125 to pmdx132 |
#25
|
|||
|
|||
That red note at the PMDX132 page applies equally to ALL breakout boards from ALL manufacturers that use a parallel port input.
If your PC has a USB output, then a Smoothstepper is a solution. |
![]() |
|
|