tormach 1500mx modifications, 4th axis, fast I/O expansion, auxilary spindle.

More
14 Apr 2025 20:09 #326313 by Rockwood
Hello all! 
I have a project. I need to build a machine to make small wooden parts. They are simple parts, but they have tight tolerances for wood, and I need to be able to dial in changes in dimensions with software. 

I've made two machines in the past that make these parts. The last one used 2 axis coordinated motion with a Yaskawa mp2300 controller (basically a PLC with coordinated motion) and servo motors. The coordinated motion is to cut one simple (but easily changeable)  profile with a custom cutter. It cuts a short profile on the end of a long piece of wood, then I advance the wood forward and cut the part off with a separate spindle that has a cut-off saw on it. Then the cycle repeats. the parts are 15-17mm long, we get 100 or so out of each length of wood. A sensor watches for end of material, stops the cycle, and runs a drop scrap material routine. After tuning everything, I got to 1.8 second cycle times on my last machine. 

I built those machines more than 10 years ago, and they ran production since then until we recently lost both of them in an act of god type scenario. They took me a year each to build since i did it from scratch and we had the time.
Now we'd like to get back into production ASAP, so I'm looking at buying a CNC mill to have a base to start with. Then I build a bunch of tooling/work holding on and above the table.
My worst-case scenario is I buy a mill and strip off its control, put on overpowered Yaskawa servos, and use the same MP2300. I am pretty confident I can make that project work, and the build time will be slightly faster than building from scratch. But it will still be a lot of work and seems pretty wasteful.

I would much prefer to buy a mill with a flexible enough control so that I can modify it for my application. it could be less work, and we get the benefit of an actual CNC mill to help us make our own tooling faster. But I'm unsure if the control will be fast and flexible enough for me. My program will look something like:
  • Check input from the limit switch that the material is clamped, 
  • if so, move about 20mm at max feed rate to cut the profile along X and Y axes. 
  • Once move is complete and I know i am a certain distance away from the profile cutter, send output to unclamp material.
  • about 100 ms later, we get a confirmation from limit switches that the material is unclamped
  • feed part forward about 15mm using a custom-made feeder that is powered by a servomotor (4th axis) 
  • clamp material, wait for confirmation from the limit switch.
  • Move 20-30 mm to cut off station, parts are cut off during the move.
  • Rapid back to the start of the profile cut.
  • Repeat.
I want each iteration to be less than 2.5 seconds. So if there is 50ms or so extra lag in the control for each check, that's fine. If it's more than 100ms each time that could start to stack up and be a problem.

Tormach was helpful enough to run some speed tests for axis motion, but couldn't give any specific info on I/O timing. They said the USB add-on I/O might exceed 100ms of lag between receiving a signal and starting motion. They said the I/O they use through the ethernet axis drives is faster, but there is only 1 output and 1 input left available. Ultimately they said they don't recommend the machine for my application. I doubt any mill manufacturer will though. Haas hasn't been willing to give me any info at all. Titans of CNC hasn't gotten back to me. I'm assuming manufacturers don't want the liability or to have to support some weird project like this.

It looks like the 1500mx uses ethercat drives for spindle and axes. So I think I will see their model and try to buy another matching drive and motor for the 4th axis feed unit . The-cut off spindle could be anything, but I'm considering making it a servo drive also. Maybe those two extra drives on the ethercat network will give me enough fast I/O for my clamps and stuff. 

Resources and limitations:
  • I have 20 years of experience as an industrial technician. Mostly repairing machines, old or weird stuff that my customers can't get support from a manufacturer. Cincinnati milacron, fanuc, custom machines, PLC retrofits, etc. I am very comfortable with ladder logic.
  • My Gcode is weak. I mostly just use MDI to test out equipment and leave the part programing to my customers.
  • I have never used LinuxCNC except a week or two ago when I installed it on an old PC just to poke around. I've installed and used Linux desktops a handful of times over the years, but it never stuck as my primary OS, so I am somewhat literate but mostly a Linux noob. But I am excited to learn LinuxCNC for future projects. I feel like I will be comfortable editing INI and HAL files once I've gotten more familiar with them. I'm fine with writing some simple Python scripts or whatever. Something like writing a custom hardware driver is probably beyond my capabilities. However, subbing out to a better software engineer is an option.
  • For this project, I will have around $50k left to spend on parts after I buy a mill. Im estimating 300-400 hours of labor for me setting this all up. That includes building and testing all the clamps and workholding stuff. I should have plenty of budget for replacing axis servos if they aren't fast enough, building an auxiliary electrical cabinet, installing an auxiliary PLC if necessary, etc., whatever it takes. 

My fear is that I will get too far down the road of modifying the existing control before I find some insurmountable limitations and have to start all over with the custom Yaskawa control option. 

My questions for any pathpilot/linuxCNC experts out there:
  • How doable do you think this would be on the pathpilot control that will come on a 1500mx?
  • Are these controls as open as the linuxCNC that I downloaded (from linuxcnc.org/downloads)? Will I be able to easily get to a console prompt? Root access? is there a desktop environment, or can I install one? I've read some parts of Pathpilot are proprietary or obfuscated. Am I locked out of anything that will hinder me from these kinds of modifications?
  • For this kind of fast, back and forth I/O stuff, would people suggest doing it all in Gcode? Like, just Mcodes assigned to outputs with  inputs as finish signals? or should I try to use classic ladder? or M codes assigned to python scrpts? or an auxilary PLC that just gets a few timing signals from the CNC? any better ideas?

Thanks for reading.
 

Please Log in or Create an account to join the conversation.

More
14 Apr 2025 20:38 #326314 by PCW
No specific recommendations except to say that there are EtherCAT digital I/O interfaces
with fast response, (servo thread rate so ~ 1 ms precision), so you don't need to add more
servo drives to get more digital I/O that's fast.

Please Log in or Create an account to join the conversation.

More
14 Apr 2025 20:52 #326315 by Rockwood
Thanks, I was hoping that would be the case. Do you have any brands/models you would recommend?

Please Log in or Create an account to join the conversation.

More
14 Apr 2025 21:19 #326317 by PCW
Best supported I/O devices are probably Beckhoff
The following user(s) said Thank You: Rockwood

Please Log in or Create an account to join the conversation.

More
15 Apr 2025 01:38 - 15 Apr 2025 01:58 #326330 by spumco

Thanks, I was hoping that would be the case. Do you have any brands/models you would recommend?

 


Quite a few ethercat servo drives have onboard IO available.  Some of the IO are identified in the manuals as limit switches or similar, but there's no reasion you couldn't use the IO for some other purpose.  It'd just get mapped to LCNC as general purpose IO and could be read or set via M-codes.

And some drive have pluggable terminal blocks instead of the fiddly D-sub connectors for the IO pins.  No need to chop up a cable to connect to the field IO.

I don't have a brand recommendation, but it wouldn't hurt to download a few user manuals or spec sheets and see if there are IO speeds provided.

Just an example... the Leadshine EL7 series could be had for around $400-500 and has easily wirable IO.  You could pick one up and cook up a test rig with some sensors and relays and see if it'll work fast enough for your needs.

EDIT
This is, in fact, what I think Tormach is doing on the 1500MX.  From a video I watched, it looks like they are using Inovance SV660N drives, and have bought/fabb'ed a breakout board for the drives' extra IO. Instead of sourcing an ethercat IO module (like PCW mentioned) for user-installed IO, they're using thier existing USB IO module.

Each SV660N has digital 5 inputs and 3 outputs, so looks like they've got 25/15 available.

Pic of the 1500MX panel below.  Note that all the drives have a D-sub ribbon cable to the center IO breakout board.

 
Attachments:
Last edit: 15 Apr 2025 01:58 by spumco.

Please Log in or Create an account to join the conversation.

More
16 Apr 2025 20:02 #326487 by Rockwood
Thanks for that great info on the drives, I hadn't identified the model yet.
I'm diving deeper into the user manual/electrical prints. They are pretty well done. tormach.com/support/mill/1500mx-documents

The prints confirm you are right on all counts. They are getting the I/O from the drives. The I/O board is called "Tormach Servo IO Breakout". and its connected to each drive with a cable.

And the axis drives are listed as:
"Inovance SV660N, AC Servo Drive, Ethercat, 220 Vac, 5.5 A, STO Function"

I'm likely going to add a 4th axis anyway. So either 5in 3out more will be enough for me, or I'll just buy a Beckhof module like PCW mentioned.

I'm sure I could repurpose some of those existing 25/15 I/O, I'm not going to have flood coolant, for example. But it would be nice to leave the factory stuff alone as much as I can, just for simplicity.

I also noticed the ATC option, which I was going to get, looks like it gives 2 more In and 1 more out unused. It looks like I've got plenty of I/O options.

Thanks for your response!

Please Log in or Create an account to join the conversation.

More
16 Apr 2025 22:12 #326491 by spumco
Unless I'm misreading your response, you might want to buy a single drive and test the IO response speed with the actual hardware you intend to use before committing to buying a complete machine.

The other thing to consider is that nobody outside Tormach knows exactly how they're doing stuff behind the scenes with PathPilot.  They've not released the ethercat version of PP to the opensource community (yet?), and what little I've dug in to the non-ethercat version of PP indicates it's really, really different from standard LCNC.  Lots of python-based stuff, not as much HAL/INI.

I'm pointing this out because you're not as likely to get much help from this forum if you're trying to modify a 1500MX, whereas if you stick with a standard LCNC installation and some ethercat drives you'd likely find some assistance here when things inevitably go sideways.

Please Log in or Create an account to join the conversation.

More
18 Apr 2025 02:47 #326557 by Rockwood
Thanks for the response. That's what I'm worried about, that they would do things in some weird way that will make it harder to modify. Disappointing if that's the way it is.

The thing is that I don't have time to build the hardware from scratch(base/frame/ ball screws, linear rails electrical cabinet, enclosure, door, etc.) but I do have a good budget, so I'm looking to buy a mill so I can just modify it to make my parts and get started ASAP.

I started looking at Haas, SYIL, etc. but got worried that I might be too locked out of the control to make it work the way I want. That's when I found Tormach and thought since it's based on LCNC I would have the best chance of being able to tweak anything I might need to.

So, I guess a standard LCNC install could work, but I'd still want to buy a mill of some kind. I suppose I could still buy a 1500mx or any mill really, and then install vanilla LCNC. Is that what you were suggesting?
I might keep that as a back up plan, but try to roll with pathpilot first.

Thanks for any thoughts!

Please Log in or Create an account to join the conversation.

More
18 Apr 2025 04:27 #326563 by spumco
Any control you choose will need to be tested, along with the IO hardware you need to use.

HAAS has user-controlled M-codes, but I've no clue about add-on IO and how they manage/control them.

Any CNC control which uses USB for IO is suspect... you need direct IO, either through a main board (of some sort) or via an ethercat drive.  Most of the hobby-type controllers I'm familiar with have the ability to control IO via M-codes, but I think this scenario is likely best suited for 'vanilla' LCNC and a Mesa board.

Researching and proving out custom IO on a commercial mill control will, I suspect, take longer than just retrofitting an existing, working machine.

Another possiblity would be to use a PLC.  I've used an Automation Direct ClickPlus PLC for a two-axis custom drilling machine and that works like a champ.  The PLC has step-dir outputs for the servos, and plenty of IO for part-present sensors and limit switches.  Programming the motion part wasn't difficult, and ladder logic is pretty easy to set up conditionals and timers for your automation sequence.

As far as suggestions for what machine to start with, I'm at a loss as I can't really picture what you're trying to accomplish.  Part size, cutting tools, tool pressure (rigidity), stock feeding and part collection... And why a mill would be preferred to a lathe.  I'm kinda picturing a lathe with an air collet closer and two live tools mounted on a gang plate (no turret).

Do you have pictures of the previous machines and what a finished part looks like?

Please Log in or Create an account to join the conversation.

More
18 Apr 2025 04:41 #326565 by spumco
OP-
I just re-read your first post and see that you want to be able to dial in tolerances, possibly for tool wear or stock variations.  This is possible with a motion-capable PLC, but is significantly more complicated than would be the case with LCNC and G-code.  I think you'd need an input - encoder or potentiometer - driving an input that is in turn driving/adjusting the motion positions.

So at this point my vote is for an LCNC retrofit.

Please Log in or Create an account to join the conversation.

Time to create page: 0.125 seconds
Powered by Kunena Forum