Software guy, hardware questions: How exactly do I control my Hypertherm PM65?

23 Mar 2018 07:50 #107746 by swolebro
So, please bear with me here. I'm a software guy with a welding a hobby - ie. I'm a competent novice, and I've got questions.

I've finally got myself a permanent shop space, so it's time to get my Powermax 65 the gantry table it deserves... at least, a gantry table, period. I figure I'll do this build on-the-cheap (while I work through all my rookie mistakes) and upgrade it in time. Use the plasma to make a plasma, etc.

I'm at the point where I've got Linux CNC installed on an old desktop steppers are spinning happily along, sitting on my coffee table, while the screen traces out the letters "LinuxCNC." If you're curious, the full set up is a Dell Optiplex 980, with a DB25-100 breakout board, four DQM542MA drivers, and four 425oz-in stepper motors. And there's a spare PCIe slot if I do ever decide/need to upgrade to a fancy Mesa controller card. Bonus fun: I installed a VNC server on the desktop (vino, specifically), so now it I can access it via my laptop, and run it without the monitor/keyboard/mouse. All well and good.

The next step for me would be to figure out how to control the machine torch, do a few tests on that, then start building the actual table. Worst case scenario: I've got one of those pendant switches for the torch, and could sit there and punch the button while the motors do the motions, but that's not exactly CNC.

So, firstly... Actually firing the torch. My understanding from the Hypertherm docs is that there are simply two pins on the CPC that you connect (eg. with a mosfet or a relay) and that's the equivalent of your trigger push. Makes sense. And most CNC controllers commandeer the M03/spindle-on opcode for that trigger, since the plasma is your cutting tool. Also makes sense. And in your stepconf, you can set a pin on your BOB to be pulled to 5V when M03 is seen, then dropped back to ground when you get M05.

But what component is responsible for actually connecting the pins? Because I don't see anyone wiring relays between their BOB's and their plasmas.

Is this where the THC's come in? Because I know I've seen several LinuxCNC people say they use the Proma but I'm not seeing anything about how that device does anything more than generating signals for "arc on", "move up", and "move down" (which you'd need to set as inputs on your BOB, and use some HAL file to have EMC convert into signals to resume XY motion, or pulses for the Z stepper driver). I get how THC is supposed to work - I just don't get how you guys trigger the torch in the first place so you can control it.

Next, has anyone here used an Arduino for the trigger switch and THC? Because this seems like the exact kind of job you'd use one of them for, at least if you can step your voltage down to the 0-5V range - so, 50:1, plus an extra resistor. I did see one GitHub project for an Arduino THC, but haven't tried it yet, and seeing no updates in 3yrs doesn't instill confidence. (On the other hand, the GRBL project somehow managed to fit an entire rudimentary 3-axis controller on a $2 embedded chip, which is far more than I need, but also very cool. I did try it out, but I know that'll quickly come up short of what I need, so I'm sticking with LinuxCNC.)

Next up: ohmic sensing for a touch-off... For those of you who have it, what's the hardware involved? I know Hypertherm sells a special retaining ring for ohmic sensing.... which seems to just be the standard ring, plus an Oetiker (pinch-ear) hose clamp that holds a wire to the cap... and costs 50% more. So, is ohmic sensing just a matter of looking for connectivity between the plasma's ground clamp (connected to your work piece) and that endcap wire, then sending a signal to an input on your BOB when it establishes the connection? (With something in your HAL config that processes that input pin.) Again, that sounds Arduino-y to me.

Hypertherm's CPC port - that's also known as a "TE/AMP" connector, right? I'm under the impression "CPC" stands for "circular plastic connector," which is a wholly underwhelming acronym once you find that out. Whatever I get for the trigger/THC control, I'll need a male plug for that port, and the specs on the dimensions seem to match, but if anyone can confirm, I'd appreciate it.

How many input pins do you actually need for a plasma system? When it comes to everything... THC arc OK-up-down, limit X-Y-Z, e-stop button, ohmic sensing... it looks like the 5 pins on a BOB come up short. I'd rather not upgrade to a Mesa card yet - as I would bet good money I will fry at least one electronic thing before cutting my first part, and it just means more advanced stuff to learn. So, is the next-best solution here to consolidate pins (eg. all limits on 1 pin) and/or to get a parallel port PCIe expansion card?

Bonus question: What do you all use for 2D CAM? I've got experience with FreeCAD for designing 3D prints and Cura for the slicing/CAM, but that's a little different. I have already tested the trial of SheetCAM, since that seems popular with the closed-source/proprietary/Mach3 crowd, and I gotta say I was a little bit underwhelmed. The 3D printing tools seem more advanced, though I guess the market for the software drives what the software ends up being. Anyway, I've seen a collection of Python-based gocde generators, which would probably be at least a starting point for me (in manufacturing basic brackets, etc.), but that wouldn't be ideal long-term.

Bonus #2: Anyone ever hooked an engraver/marker up to theirs? Just planning ahead. I figure that corresponds to commandeering something like the coolant off/on code, and using that output pin to trigger a solenoid for the air supply. Sound about right? But now your CAM has to understand which paths to cut vs. engrave, and know that "engrave == apply coolant," which really seems like the trickier part.

Anyway. That's all I got. Mucho gracias for any help you guys can give. I gotta say I'm very impressed by the distro and can tell it's only a matter of time before everything in my shop/house is CNC... just because.

And of course, the YouTube channel with the build progress will be forthcoming, as will GitHub repos for designs and configurations. Try to make it easier for the next guy.

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

23 Mar 2018 09:21 #107747 by rodw
Welcome to the forum. Wow what a log of questions!

First off, there seems to be 2 camps with Plasma. The Proma setup that Tommylight has a lot of experience with and the Mesa route. I use a Mesa 7i76e with their THCAD board for voltage sensing.I use an ethernet 7i76e and THCAD and have a very slow build thread here
Somewhere in there is a hand drawn sketch of a suggested Ohmic sensor circuit but in the end, I decided it was not safe as my torch did not have a shielded tip. I think the 32 inputs on that card is ideal for plasma and I've used almost all of them. I think on a large machine seperate home and limit switches are best so thats 12 inputs before you start. (I used 11 with 1 shared home/limit switch on the Z due to space considerations. That leads me to the next point because master branch (V2.8) has some useful enhancements for homing and squaring each side of the gantry. I ended up compiling from source becasue the MESA ethernet hardware requires the PREEMPT RT kernel which when I built my machine needed to be compiled from source so it was not much more work to compile Linuxcnc.

I use a relay to fire the torch but recently I saw PCW from Mesa state on one thread that you could use an output on the 7i76e spindle interface to turn the torch on without a relay.. found I had to add a pull down resistor on the ArcOK input because the load on the internal arcOK relay in my plasma was oxidising becasue the signal current was less than the minimum spec of the relay in the plasma cutter. This resulted in intermittent faults.

You really need to use M3/M5 to control the torch becasue if you don't, hitting estop won't turn off the torch which can be a bit of an issue if you have a crash, the torch falls of the break away still spewing out fire and the only way to kill it is the plasm amain switch on the other side of the table! Once you get your head around hal you will find there are pins and signals (or wires in a hardware environment) so there are many internal pins that you can connect with a signal to an external pin something like this on my 7i76e:
net spindle-on motion.spindle-on => hm2_7i76e.0.7i76.0.0.output-04
So now output 4 on my 7i76e will go high when the spindle turns on with M3 which in turn closes my torch on relay..

If I had a Hypertherm 65, I'd just buy their interface cable. I have seen the connector part number published on a forum somewhere but the trick is they sell the pins separately so make sure you know what you are doing if you buy one this way.

As fars as using an Arduino, there is not much point in my view becasue the Mesa THCAD board is only $69 and once you have the voltage inside LinuxCNC, you have much more capability and CPU power than the poor Arduino so you can build a much more integrated tool.

There are a couple of components available that do THC within LinuxCNC and a couple of us are playing with an experimental branch which when/if we eventually nail it, should be the ducks nuts. But lets wait until you get a bit further before you worry about that one!

I would not write Sheetcam off just yet. It is very capable for plasma once you get your head around it and its post processor files. Many of us use it including some commercial plasma THC manufacturers. You could also try Autocad360. I use CAD software to create my files but a lot of guys use inkscape and there is a free tool called gcodetools to convert it to gcode but I've never played with either.

Linuxcnc has a bit more sophistication than Mach3 so there is no need to resort to using pins for purposes other than what they were designed for like using coolant signals for an engraver. To turn a digital output on and off you can use M64/M65 and to send analog values back into Linuxcnc from Gcode, you can use M67/M68. So with a well crafted Sheetcam Post file, you should be able to set up your materials and set the LinuxCNC environment up fully automatically.

Anyway, I've had a fair bash at answering most of your questions, good luck!

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

23 Mar 2018 09:46 #107748 by rodw
Ooops one I missed. For your engraver, you should be able to set tool offsets so it lines up with the torch position and put your text on a different layer in sheetcam, select the tool and run that layer first. I have not seen anybody using an engraver here but I have one here that I'll play with one day.

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

24 Mar 2018 01:03 #107774 by tommylight
Everything that Rodw said, so just an addendum :
Inkscape comes with gcodetools already installed and it works flawlessly, all of my clients use it for plasma. The only thing missing or that i could not figure out is setting an order of cutting, so sometimes we have to do some cut/paste action on gcode with a text editor.
You also need one more input for the floating head, that is used for sensing the material. I never used ohmic sensing, read way to much about problems with dirty metal sheets. Floating head does a perfect job always, when set up correctly.
As for Proma THC, it does work and i do have 5 of them set up and working every day on production machines, just do not ask to much from it. It does easily 2 inch slope over a foot of length, and i did push it even further but i would not suggest it.
I also have a Mesa THCAD wired and ready, connected to a full setup with 7i77, 7i74, and 2 7i84 on my bedroom table waiting for some TLC, but no time..........yet.

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

24 Mar 2018 02:54 #107775 by swolebro
Rod, thank you for your response, and for pretty much every post you've made on this forum, since they've all been very high quality and very educational for someone like me.

You've got a very valid point about the 7I76E and THCAD-10 being great values and I definitely agree. Under $300 for the pair provides you with all the I/O you could need, and that's a drop in the bucket when the plasma source itself cost over $3k (and I managed to pay that a few years ago, when I was fresh out of undergrad). Really, the cost of Mesa hardware makes me wonder why anyone would buy a Proma. I've got little doubt that I will eventually end up running the Mesa cards, but if I can get started with some combination of Chinesium and elbow grease, I'd rather start there. Here's why:

1. I'm not an EE. There's a non-negligible chance I'm going to accidentally let the smoke out of my drivers or BOB (fingers crossed, not my torch, hahah), and I simply would feel dumb if I did that with real hardware.
2. Black boxes bug me.. Even if I eventually cave and buy the black box, at least trying my hand at it turns into more of a gray box.
3. My bar for "success" on this initial build is very, very low. My current state-of-the-art is 3d printing stencils. (They last a surprisingly long time before melting!)
4. If I can figure this out in the most basic way possible, perhaps it could be useful to someone who has actual constraints in terms of finances or access to equipment.

The input pin shortage is a little disheartening, but consolidating limits and homes would get me closer. Worst case, the Optiplex 980 DT I'm using has several expansion slots, so pitch some pocket change, and I've got another parallel port and opto-isolated breakout board, which can later be cannibalized for another machine.

I haven't used Inkscape yet, but if there's a Python-based extension for generating CAM, then I will have to give that a shot. Because at least if it's Python, when I hit the inevitable bugs, I can debug them. (Though I did take a look at that codebase. 8000 lines of procedural code for the main file. Whooh.)

I'd be OK with buying Hypertherms CNC connector cable directly, but it does annoy me when companies try to dress up very basic things as proprietary secret sauce (eg. their Oetiker clamp ohmic ring). The beautiful thing about physical things is that when there's an API (aka. a spec or a part number), anything that matches actually matches. Compare that to software, where, eg., every SQL database has their own SQL dialect, incompatible with all the others.

More importantly, if this connector is standard, I might be able to get it from an auto parts or electronics store tomorrow, and keep working this weekend!

So, the current to-do list.
* Start documenting this build. (I'm thinking Python-style Sphinx docs in a git repo... This will not become the build thread.)
* Pick out and order the axes, limits, cabling, etc.
* Read up on the HAL docs.
* Source that CPC plug (locally if possible).
* Check out the internals of the pendant switch. (Just curious.)
* Mock up a relay for the trigger.
* See how much a plasma's going to mess with my VNC/wifi connection. (Worst case, I use a crossover ethernet cable to solve this this.)
* All while maintaining social obligations and getting my sleep/exercise.

If I can check three things of any to-do list done in a given weekend, I'm pretty happy. ;)

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

24 Mar 2018 05:23 #107778 by rodw
Here are the part numbers for the Hypertherm connector
I actually found a listing on a local welding supply shop so you never know your luck!

You also need one more input for the floating head, that is used for sensing the material. I never used ohmic sensing, read way to much about problems with dirty metal sheets. Floating head does a perfect job always, when set up correctly.

Funny that you say that Tommy. I've just had a session with a multimeter continuity beeper attached to my plasma tip. I actually found that the floating head was far more accurate and I could see the 8mm metal plate (with some surface rust) move before the multimeter beeped.. I probe down with G38.2 and then probe away slowly from the surface using G38.5 for better accuracy. There is still a bit of hysteresis in the mechanism that I adjust for so maybe the 2 step probe is just wasting time...

Support for a plasma machine with LinuxCNC is still fairly immature in my view but I think there have been some great advances over the last 12 months.
The following user(s) said Thank You: PCW, tommylight

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

25 Mar 2018 22:01 #107853 by andypugh
If you use one of these breakouts there is a relay mounted on the board that could be used to operate the torch:

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

26 Mar 2018 04:15 #107887 by swolebro

I actually found a listing on a local welding supply shop so you never know your luck!

Hah, to be honest, I hadn't even considered a LWS! It's been at least three years since I've been to one of those - largely because I had been without a workshop for the past three years, but even before that, the hours they kept didn't really jive for hobbyists with office jobs. I'd only make that trip out of the way when I had to, normally to swap tanks.

I know that people like the idea of supporting local business, but when they make it hard for you to give them your money, and online retailers make it easy... The obvious happens. People are also terrified of robots taking over all of jobs, and meanwhile, we're building CNC machines.

I've got a stash of relays already, just leftovers from past Arduino projects. So, one of those, a breadboard, and a few more wires to the DB25 BOB, and now I can trigger that relay with M03 and turn it off with M05. Powered it straight off the BOB, easy as pie. It's not firing the torch, but that's only because I lack the plug. Couldn't find it an an auto or electronics store (and the LWS is closed for the weekend), so online it is for me.

I did take a look at the Hypertherm pendant this weekend too, and I can confirm it's just a dumb switch. No brainbox or anything, which is both reassuring and refreshing. Let's hope they never go the way of Keurig coffee.

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

Moderators: snowgoer540
Time to create page: 0.141 seconds
Powered by Kunena Forum