Hello Guest it is December 04, 2021, 01:21:11 PM

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - imsolidstate

Pages: 1
General Mach Discussion / Mach2 inconsistent motor drive pulses
« on: October 14, 2008, 10:09:24 PM »
Hey, this is a technical question, sorry to post in "General Mach Discussion" but I didn't see a technical section.

I am having problems getting clean pulses at higher step rates out of the demo version of Mach2. I've attached the scope trace at the bottom of the post. It's the green trace.

I originally tried Mach on a laptop. I could spin the motors, but it didn't really work, and after some digging I found the "OCXDriverTest" and the screen that shows your time delays looked like a square pulse with a bunch of HF noise on it. Not good, I assumed. So I put Mach on a desktop machine with a fresh XP install. OCXDriverTest looked great. In my reading I found that parallel port voltage levels aren't that great, so I bought a simple opto isolator board. I hooked it up and my motor drives, and started to test but got some strange results. The motor was only turning one way, and actuating the Y axis made the Z axis move. Finally figured out that the isolator board I bought had too small value of resistors driving the coupling chips, and it trashed the parallel port driver IC on that PC. The pins were all mixed up and not smooth.

So. Back to the drawing board. I made my own opto-isolator board, with SAFE current levels and added some circuitry for charge pump, interlocks, etc. I hooked it up to the motor drives (and a different PC) and tried running Mach2. Everything looks pretty good. The motors turn slow, have good torque, the inputs work. Steps are a little rough and the motor has a few nasty resonant peaks, but it works. However, the motors have no torque if they are spinning any more than one RPS. I can stop the bare shaft with my fingers. They stall almost immediately. So I hook up the diagnostic equipment (scope, DVM, current clamp) and watch the signals. The motors look great down low, but when things speed up the current flat lines. They simply have too much reactance to accept current.

If you're still reading, here are some background details, since at this point everyone is questioning my home-built stuff: The motor drives I built. They are PIC controlled, 8 step microstep, based on the LMD18245 full-bridge chopper motor driver from National. They work. I've tested them as far as I can, and they perform great. I've verified the waveforms for the DAC, the motor output, the step input, etc.
The optocoupler is my design based on 74LS244 buffer ICs and TLP2631 Optocoupler ICs. I've bench tested it and tested it with Mach. It works.
I had been powering the motors with a 24V power supply, and after some more digging I found that I could potentially (no pun intended) get more current into the motors by raising the voltage. So I tried a 48V power supply. Since the absolute maximum voltage of the driver IC is 60V and the back-EMF of my old setup at worst was about 5V, I also built a voltage regulator to keep that expensive driver alive. It's a zener diode/ FET design that clamps the voltage at 56V. I put in a big capacitor for good measure to try and prevent the current surges from upsetting the voltage.

So i tried that. The voltage is now rock-steady at 48V. Doesn't matter where I try and run it. However the motor doesn't care. At this point I've about proven the motors junk. I bought them new from an internet surplus seller. NEMA 23, 2.3A, pretty decent specs. But they won't run. They are 6 wire, and I've tried running them with one half of each coil connected and bipolar series connected.

So I tried actual bipolar motors from AutomationDirect. They came today, and I hooked them up and started up Mach2. Finally! A motor that will actually take current. Still nice flat line 48V, and the current clamp shows sinusoidal current flow. great. I started at a few RPM and worked up, but even though I have current at higher speeds, the motors are still stalling at a couple RPS, or about 60% of Mach's rated maximum pulse rate. It's going to take an awful long time to move my machine with a 10TPI Acme screw at that rate.

I have messed with the motor tuning screen quite a bit, bit still no success. I have found little gain from adjusting pulse duration, so I leave it at 5us.

Again I break out the scope. I had noticed before that I couldn't trigger off of the step input pulses very well, but it wasn't the worst of my worries so I let it go. Today I figured it out. The step pulses at lower speeds (<50% of Mach max pulse rate) are clean and uniform. The motor likes that. But when I run higher than 50%, the pulses start to lose their timing. I'm getting pulses bunched up together, and sometimes gaps. I assume that this is causing my motors to stall at higher speeds. I'm not sure what to do about it either. I've run the OCXDriverTest again, and the screen is nice and smooth. This is the third machine I've tried, and the fastest computer I have. (Athlon 64 3200+ 2GB RAM) My next step is to program my ATMega128 development board with a PWM routine and test it that way. But before I go to that trouble and continue to beat my head against this brick wall, can anyone make any suggestions?

Thanks if you read all this. Here's the trace.


Pages: 1