PDA

View Full Version : Stepper motor control via USB parallel port



rotate
07-14-2008, 03:54 PM
Does CAM software that use parallel port for controlling the stepper motors, work with USB parallel port?

I'm think of something like the following

http://www.tigerdirect.ca/applications/SearchTools/item-details.asp?EdpNo=1219598&CatId=471

I'm guessing that the answer is no, since usb parallel port doesn't map to a phyiscal I/O port.

SGW
07-14-2008, 07:52 PM
The Mach documentation (www.machsupport.com ) says "no" to USB adapters. You need a real parallel port, either built-in or on a PCI card or similar.

macona
07-14-2008, 08:21 PM
Get a smooth stepper. I have one, works pretty darn good.

Does almost everything the Gecko G100 was SUPPOSED to do.

http://www.warp9td.com/index.php

Added:

Guess I should say what it does. It is a FPGA based device that works with Mach3. It replicates two parallel ports using USB. Also has extra inputs for a couple encoders. Up to 4Mhz step frequency vs ~45khz on the parallel port.

Plugin for mach is still in beta. I am waiting for backlash comp to get added before I switch.

Evan
07-14-2008, 09:07 PM
You can get a parallel port to fit the PCMCIA card slot. It is mapped into the address space as a real parallel port. ( I assume you have a laptop)



Description

Quatech’s SPP-100 fully supports the IEEE 1284 EPP standard, and functions exactly like a computer’s native parallel port. Thus, unlike the many USB to parallel converters on the market, Quatech’s SPP-100 will work seamlessly with any hardware or software that requires either an EPP or standard parallel port. It is compatible with both 3.3V and 5V systems.
Features

* Fully supports IEEE 1284 EPP interface
* IBM PC Parallel port compatible
* Speeds to 700 kbps
* Windows 9x/ME/NT/2000/XP/CE/Vista, Linux (standard modes only) and OS/2 (Rev H and prior) support
* 3.3V and 5V compatible
* Driver available for HP Palmtop upon request
* RoHS compliant
* 5 year warranty

http://www.quatech.com/catalog/parallel_pcmcia.php

Note: There are cheaper ones available.

Ryobiguy
07-14-2008, 11:40 PM
I was about to recommend that "Smooth Stepper" that I just saw a day or two ago on Keling's website.

I was thinking of emailing them asking for the SDK they say they're developing, it might be fun to write a Linux driver for them.

-Matt

lazlo
07-15-2008, 12:03 AM
Get a smooth stepper. I have one, works pretty darn good.

Does almost everything the Gecko G100 was SUPPOSED to do.

http://www.warp9td.com/index.php

Agreed -- I recommended the SmoothStepper here a month ago. It controls 6 axis plus a spindle, and has 3 quadrature inputs so you can feedback a spindle pulse count (not clear from the meager documentation whether it creates a PID loop), or you can drive the axis with a Manual Pulse Generator.

It's a total of 24 Outputs and 16 Inputs or vice versa. All for $155 -- seems like a very reasonable price.

rotate
07-15-2008, 07:51 AM
Thanks everyone. I'll take a look at SmoothStepper.

BobWarfield
07-15-2008, 11:33 AM
Get a smooth stepper. I have one, works pretty darn good.

Does almost everything the Gecko G100 was SUPPOSED to do.

http://www.warp9td.com/index.php

Added:

Guess I should say what it does. It is a FPGA based device that works with Mach3. It replicates two parallel ports using USB. Also has extra inputs for a couple encoders. Up to 4Mhz step frequency vs ~45khz on the parallel port.

Plugin for mach is still in beta. I am waiting for backlash comp to get added before I switch.

Macona, what does smoothstepper NOT do that the G100 was SUPPOSD to do?

I have been one seriously disappointed puppy in the G100. I've never been able to use it for my lathe project because it can't take an encoder input and do spindle sync for threading.

After waiting years for it to be finished and hearing all the problems blamed on firmware, I finally asked Mariss to exchange it for a couple drivers and he wouldn't even respond to my mail. The experience has really lowered my opinion dealing with Gecko, so I'm hoping the Uhu bunch and others give me some options.

I still need a solution for my lathe that'll do 2 axes with spindle encoding and as much other I/O for control panel as possible. I've been loath to try SmoothStepper and get another half baked answer. If others are reporting good success, I might just give it a try though. I do worry about whether Artsoft has the resources to support another new device.

Best,

BW

macona
07-15-2008, 02:18 PM
No analog in/out, less IOs, less encoder inputs. Think thats about it.

Right now the smooth stepper is still in beta. Works pretty well but still no spindle feedback (PID is handled inside of mach), no backlash comp, and no soft limits. When Spindle feedback and backlash comp happens I will switch.

Whats really nice is it totally replicates the parallel port and my existing cables off my breakout board will plug right in to SS (With the DB25 adapters) No massive rewiring like I did with the G100, which in ended up yanking and selling on ebay.

The failure with G100 was not so much the firmware as there is too small of a FPGA in there to do everything they wanted to do. Not mariss's fault, its the programmers fault. He had his own motion control software (Geckomotion) for it and thats how he sold it. Possibly with someone else writing the replacement firmware and FPGA code it might have come out different.

Go with a touch screen and parallel port for your lathe. I have a 15" Elotouch LCD and I almost use no buttons at all. Spindle sync for lathe is on the low priority side so its best to stick with parallel. Peter Homann has a nice pendant that makes life easier as well. For addtional IO you can also use his ModIO board. http://www.homanndesigns.com/

John Stevenson
07-15-2008, 03:38 PM
For more I/O look at Pokeys.

http://po.labs.googlepages.com/pokeys

Very cost effective, initial plug in is written but they are doing a better one that can use the analoge inputs as well so you will be able to have a fully programmable keypad type pendant or professional layout with spindle and feed rate over ride pots on the panel.

There is a discount for Mach uses until August that gives about 15% off, see the post on the mach Yahoo forum.

.

Mariss
07-15-2008, 05:04 PM
Macona, what does smoothstepper NOT do that the G100 was SUPPOSD to do?

I have been one seriously disappointed puppy in the G100. I've never been able to use it for my lathe project because it can't take an encoder input and do spindle sync for threading.

After waiting years for it to be finished and hearing all the problems blamed on firmware, I finally asked Mariss to exchange it for a couple drivers and he wouldn't even respond to my mail. The experience has really lowered my opinion dealing with Gecko, so I'm hoping the Uhu bunch and others give me some options.

I still need a solution for my lathe that'll do 2 axes with spindle encoding and as much other I/O for control panel as possible. I've been loath to try SmoothStepper and get another half baked answer. If others are reporting good success, I might just give it a try though. I do worry about whether Artsoft has the resources to support another new device.

Best,

BW

Bob,

I'm sorry you feel that way. I didn't answer your email because I either missed it or didn't get it. There was always a telephone number available.

I'm not a computer guy. I design hardware. The hardware worked properly but the Mach3 implementation of that hardware evidently left something to be desired. The G100 has both an Ethernet and USB port. The SmoothStepper uses the USB port and is based on the same motion control principles I developed and placed in the public domain. Is it a coincidence it has 6 axis, a 4MHz max step pulse frequency, similar number of I/O and encoder inputs? It is based on the work that went into developing the unique method the G100 uses to generate step pulses and integrating velocity with time to determine position.

I wish SmoothStepper, CNCBrain and others every success. I made the techniques public which means I expected someone would use it. I am proud I was privileged with originating the idea of this method of pulse generation the G100 and these other controllers depend on. I did my best with the G100, the hardware worked like it was supposed to. I wrote GeckoMotion in assembly, made the code open source, all in the hopes it would promote development of the G100. Despite my best efforts it fell short of what it could have been.

Please return the G100 for a refund. It is nothing compared to the bath Geckodrive took in development costs and the years of my time spent on it. I am pleased others have taken this very good idea and are making it what the G100 could have been. They have PC programming talent that I lacked. That is the difference that made success elusive. Win some lose some.

Mariss

lazlo
07-15-2008, 05:23 PM
For more I/O look at Pokeys.

http://po.labs.googlepages.com/pokeys

Pretty neat John, but for the less CNC saavy readers, those are radically different products: Pokeys is an intelligent USB IO hub (essentially an analog IO <-> USB converter), and SmoothStepper is a programmable multi-axis step/direction generator with USB parallel port emulation.

John Stevenson
07-15-2008, 05:29 PM
Yes,
Not saying they are interchangable, use the Smooth Stepper to get from the computer to BOB using USB and then the pokeys to interface to get you a professional control panel with function keys, feed rate and spindle over rides etc.

No keyboard or mouse needed.

.

lazlo
07-15-2008, 05:47 PM
I wish SmoothStepper, CNCBrain and others every success.

Based on the little documentation I can find on the SmoothStepper page, it doesn't look like it does closed-loop control. And considering that it's using an FPGA, it doesn't seem likely that you could implement a 6-axis PID controller.

But I'd never heard of CNCBrain before -- that's a neat product!

http://www.safeguardrobotics.com/default.aspx?tab=cncbrain&subtab=overview

CNCBrain definitely does closed-loop feedback on all six axis'. Based on the "Massively Parallel Processing Framework" (aren't marketing weasels great! :) ), it sounds like they have a dedicated PID processor per axis.

CNCBrain is in a whole different price point too: $499 -- about 3 1/2 times the cost of the Smoothstepper.

Mariss
07-15-2008, 06:07 PM
Based on the little documentation I can find on the SmoothStepper page, it doesn't look like it does closed-loop control. And considering that it's using an FPGA, it doesn't seem likely that you could implement a 6-axis PID controller.

But I'd never heard of CNCBrain before -- that's a neat product!

http://www.safeguardrobotics.com/default.aspx?tab=cncbrain&subtab=overview

CNCBrain definitely does closed-loop feedback on all six axis'. Based on the "Massively Parallel Processing Framework" (aren't marketing weasels great! :) ), it sounds like they have a dedicated PID processor per axis.

CNCBrain is in a whole different price point too: $499 -- about 3 1/2 times the cost of the Smoothstepper.

The G100 was never purported to be a PID controller. It's 1 millisecond I/O latency would make the Nyquist limit 500Hz or a practical bandwidth of 100 to 200Hz. This is woefully short of the 3 to 5kHz bandwidth needed for a usable PID servomotor controller.

Look at the CNCBrain. The guy doing it is very smart and just may pull off a very ambitious project successfully.

Mariss

lazlo
07-15-2008, 06:38 PM
Look at the CNCBrain. The guy doing it is very smart and just may pull off a very ambitious project successfully.

He mentions that they built the CNCBrain as part of their DARPA Grand Challenge (autonomous robotic vehicle) entry -- he must be pretty damn smart :)

macona
07-15-2008, 08:51 PM
There is no closed loop for mach3 at all. Emc does support closed loop though. If you want to deal with linux. The guy (Greg, I think) that is behind the Smoothstepper is hoping to eventually incorporate some sort of closed loop. I use servos instead of steppers so I am not worried. I have gotten very good support from him. Talked with him a couple times on the phone trying to track down a couple bugs.

The G100 was good for a first version pulse generator external of the computer. I think a lot of things were learned developing for it and the other who have succeeded will benefit from Mariss's trailblazing.

If nothing else you can set up the G100 in Mach as a IO device only and run all your IO through that while using a SS or Parallel port as a

The key emulators work ok for control panels but you dont want to use them for any critical inputs as there can be some lag.

Just looked at the CNC brain. I want one!

My machine has scales on all three axis's that are not longer being used after the retrofit. Well, two scales now after I overran the X axis. This would be great!

lazlo
07-15-2008, 11:01 PM
There is no closed loop for mach3 at all.

You don't want/need Mach to know about the closed loop control. Mach sends step/direction pulses, and it's up to the PID controller to make sure it goes where Mach thinks.

So on the Gecko 320 closed-loop servo controller, for example, you feed the quadrature output from the servo shaft encoder back to the Gecko 320, and it does the closed-loop control without Mach ever knowing about it, you just never lose steps :)

So the CNC brain advertises that it can do 6 axis PID (closed-loop) control, which is pretty amazing. It's basically a consumer-grade Fanuc controller, at a consumer price-point (well, maybe a wealthy consumer ;) ).

BobWarfield
07-16-2008, 12:50 AM
Thank you Mariss. I appreciate it.

Macona, I think you're right about the standard parallel board for the lathe. If I hook up the control panel I will likely use the Hohman ModIO. It seems tried and true.

I'll miss the G100. It was a good idea and a slick package.

Best Regards,

Bob W.

macona
07-16-2008, 03:38 AM
For those who use steppers the control software can close the loop like in EMC2. In all the larger machines I have worked on the control itself handles closing of the loop with encoder feedback directly into the control. Not sure how much of the CNCBrain is controlled in software and how much in the hardware.

Problem with the gecko servo drives is they cant run many of the larger servos like what is on my machine. Too high of voltage and too much current. Thats why I used the Pixies when they were still available. Not sure what I will do if one of my pixies dies goes down. I have been gathering brushless servo drives and motors just in case.

There is another control in beta that will do closed loop with analog drives. A bit more expensive than the cncbrain: http://www.vitalsystem.com/ Works with Mach3