Retrofitting - An overview for begginers
My name is Noel. Carpenter by trade, I've been using a Busellato 3006 for 9 months, programming enthusiast. Ruby rocks! FYI I have developped a Sketchup plugin that alows you to define holes and toolpaths and generates gcode ( code.google.com/p/minivistii/ ). When we bought the machine we were (wrongfully) obsessed with changing the computer or at least being ready if something were to happen to it. This worry stems from the fact we knew other people in the trade had been left stranded when their controller died on them and were quoted thousands of euros to get them replaced. I am now starting to understand how CNC's work and that it's not as simple as just plugging in a new PC
CURRENT UNDERSTANDING
It might be a gross over simplification or just plain wrong but I would say that all CNC's work as follows
Computer(of sorts) ---> Driver ---> Stepper motor
You need the right driver for the right stepper motor. That much is clear. Hooking the computer up to the driver depends on the driver. In the best case scenario you can wire it up with your parallel port (If it takes +-10v I believe). In the worst case scenario the driver will be digital, proprietary and its manufacturer will have gone out of business.
BUSINESS OPPORTUNITY
I'm thinking of getting into retrofitting. I'm not asking for business advice so if you think you have something to offer in that direction, go invest in shares or something . There seems to be very little awareness that this can actually be done (at least in my country) so reparing/replacing CNC computers often proves astronomically expensive. I think we can do better.
RETROFITTING APPROACH
The way I understand it there are two different approaches. Either you use the current driver or you don't. If you can then it's just a question setting up the pc to communicate with it ("just" ). If you can't then you would need to purchase a driver (I'm guessing that an analogical one would be easier to setup with linuxcnc) with an appropriate output for the stepper motors.
QUESTIONS
I'm not looking for direct answers to these questions. They are just to give an impression of my state of mind and where I am. Rather I hope the community will respond with a more general "Things you should be aware of...", "Look out for...", "Always try to..." or even "You're out of your depth here boy!"
What percentage of pre 2000 CNC machines have drivers that can be interfaced with linuxCNC (Just your guess)?
Are things like automatic tool changing, spindle speed and vacuum pumps easy to interface with? Is it part of the driver or is it a separate relay of some sort?
Is there money to be made?
How many surprises will I have on my first retrofit?
How many surprises will I have on my second retrofit?
How do I know if I have enough computational/electronic/electrical know-how to get the job done?
At what point will my head explode?
Here's hoping this thread will prove useful for other people interested in the subject.
Please Log in or Create an account to join the conversation.
Please Log in or Create an account to join the conversation.
Your head will explode when enough pressure is applied.At what point will my head explode?
Only if you have a niche market product that you are good at making... most likely you will spend more than you make.Is there money to be made?
The rest are so vague that it is difficult to answer them without sufficient details about the question so yes too broad.
John
Please Log in or Create an account to join the conversation.
John
Please Log in or Create an account to join the conversation.
Just plain wrong, sorry. A good proportion of machines use servo motors rather than steppers. Stepper drivers generally take digital step/dir input, though digital quadrature input is a better when available. Servo motors drives often take +10 to -10V analogue voltage signals, though there are serial protocols, Modbus, and even some "stepper upgrade" drives which take a step-direction input to drive a servo motor. These are not preferred for LinuxCNC as they put a PID loop where it can't be adjusted.It might be a gross over simplification or just plain wrong but I would say that all CNC's work as follows
Computer(of sorts) ---> Driver ---> Stepper motor
A parallel port is 0V for false and 5V for true. Unless it is a newer one which might be 3.3V for true. The parallel port can only be polled in software at a limited rate, so is not the optimal solution. It can generally drive slow stepper machines OK. In theory it can produce PWM to drive a servo drive, and can count encoder pulses for feedback. In practice it copes a lot better with 200 pulses per rev output to a stepper motor than 4000 pulses per rev input from an encoder.In the best case scenario you can wire it up with your parallel port (If it takes +-10v I believe).
There are a number of ways to get analogue output to servo drives, or step/dir pulses out of LinuxCNC to drive conventional stepper and servo drives. There are also tightly-integrated servo and stepper drives from manufacturers such as Mesa Electronics and Pico Systems which retain the data in the digital domain right up to the final motor drives. For example the Mesa 8i20 (20A 400V) servo drive takes digital rotor angle and current demand through a serial protocol from the PCI card.The way I understand it there are two different approaches. Either you use the current driver or you don't. If you can then it's just a question setting up the pc to communicate with it ("just" ). If you can't then you would need to purchase a driver (I'm guessing that an analogical one would be easier to setup with linuxcnc) with an appropriate output for the stepper motors.
About 90% there are some proprietary undocumented protocols, and these are difficult. Any analogue, PWM, quadrature or step-dir drive can with with LinuxCNC. Modbus has also been used with success. Even unsupported protocols have the option of writing a driver to get it to work. This is Open Source, nothing is impossible, even if some things are difficult. Servo motors with Tachometers are not easy to interface with LinuxCNC unless the original velocity-mode amplifiers are used, and resolver-feedback motors are slightly troublesome too. (though Mesa and Pico both make interfaces)What percentage of pre 2000 CNC machines have drivers that can be interfaced with linuxCNC (Just your guess)?
All except the tool changer are easy. Tool changes are all different, and need different approaches, so more work is needed to integrate them than the other things you mention. It can be done, though, and has been on a wide variety of equipment. LinuxCNC has a software PLC called ClassicLadder which is a popular way to do it.Are things like automatic tool changing, spindle speed and vacuum pumps easy to interface with?
Some, yes. There are a couple of people I know of in that line of work.Is there money to be made?
Please Log in or Create an account to join the conversation.
Thanks for taking a moment to answer my open question. I've ordered a cheap stepper motor on ebay and gotten hold of an old PC to start experimenting. We'll see where we go from there.
Here's to an exciting new world.
Please Log in or Create an account to join the conversation.