Hello all,
TLDR: looking for some advice on what cape/other hardware is best suited for MK + BBB control of a CNC plasma cutter.
Hoping to use MK to deal with THC (torch height control), but depending on how difficult may end up using an external THC box.
Project reqs (I think):
- 3 x stepper control (XX Y, gantry)
- 2 x digital outputs - DC motor up/down for torch height
- 1 x digital input for ohmic sensing of torch height
- 1 x digital output to turn torch on
- 1 x analog input to monitor torch voltage
- 2 x digital inputs for homing switches X Y
Background:
Following a
successful conversion of a 3-axis mill to MK control, using BBB with PBX-BB cape, I am looking to
move attention to a plasma cutter we have in the workshop. It is
new-ish (little used, maybe 5 yrs old) and Quite Chinese. Looks to be
a converted router. The pendant 'DSP' controller, is terrible and we
are looking to replace the lot with MK, probably a BBB and suitable
cape/board.
Does anybody have thoughts or experience on a suitable cape / breakout board, and MK implementation of THC?
It looks like the stepper drivers will be easy enough to interface with for axis movement.
There is some info on EMC controlling plasma cutters, so I'm not asking for specific advice on that for now. I found this link interesting: http://wiki.linuxcnc.org/cgi-bin/wiki.pl?Gmoccapy_Plasma
We think there's a few ways of doing it. The THC looks to be the most challenging part.
THC was taken care of by a 'hyperCNC' ! Box that I can't find any info on anywhere. Looks to be a copy of 'hypertherm' brand.
We have replaced the original cheap plasma torch and power supply with a Hypertherm powermax 45 and had it cutting but the controller is so bad. So bad.
Any suggestions / advice appreciated, I will of course keep you all updated with progress, questions and woe (!) once work commences.
Finally apologies if this may be better suited on another list, will change to EMC devs / users if people think necessary.
Best,
Stuart
I have built a plasma with LinuxCNC and Mesa boards and also did a retrofit of existing machine with 2 separate THC sensors - plasma voltage and capacitative ring.Here are few comments from me:1) you most definitely will need a cape for BBB; I suspect that BeBoPr++ or CRAMPS might be most suitable choices, but I am not sure - see 4th point to see why2) is there any particular reason to use DC motor for Z axis instead of stepper motor? There already is thc component for such a setup.
3) you will need 3 digital inputs for home switches - one for each motor (you did not mention shared home switches)
4) take a look at the Hypertherm plasma source - it should have 0/+10 V analog output for THC (at least Powermax 105 had it). Here comes my doubt about most suitable cape - the one to accept 0/10V analog input wins the deal. If none of them can do it out of box, then I am not able to suggest anything to make it work with existing thermistor inputs. Maybe Bas or Charles can comment on that.
I would get rid of any external THCs as much as possible - either do it all in Machinekit and control all the process there or leave the THC to external controller and switch the DC motor directly from it. Since you want to use 2 separate sensors together, I do not see a way to do it outside Machinekit. Here is how I did it in the retrofit:
--I'd avoid an ohmic sensor solution to detect the plate. That is the cheap way out. Plasma Cam did that for a while and it "sometimes" worked. A better solution is to use a sliding head so you drop the torch, it makes contact and the pushback from the plate engages a microswitch/prox switch. I thought the capacitive ring type sensor was usually used on Oxy-Fuel cutting table setups. There is at least one very well documented THC solution on the LinuxCNC website.
![]() |
This email has been checked for viruses by Avast antivirus software.
|
Hi Viesturs,
I work with Stuart and so I'll try to reply to some of your comments.
On Tuesday, 22 September 2015 19:54:41 UTC+1, Viesturs Lācis wrote:I have built a plasma with LinuxCNC and Mesa boards and also did a retrofit of existing machine with 2 separate THC sensors - plasma voltage and capacitative ring.Here are few comments from me:1) you most definitely will need a cape for BBB; I suspect that BeBoPr++ or CRAMPS might be most suitable choices, but I am not sure - see 4th point to see why2) is there any particular reason to use DC motor for Z axis instead of stepper motor? There already is thc component for such a setup.
It already has a 24V DC motor, complete with gearbox and feed screw etc. fitted and cabled up to the cabinet, which was working with the old THC.
3) you will need 3 digital inputs for home switches - one for each motor (you did not mention shared home switches)
With the existing THC it did not have a home switch for Z and instead it used ah ohmic sensor (detected the torch tip touching the workpiece).
4) take a look at the Hypertherm plasma source - it should have 0/+10 V analog output for THC (at least Powermax 105 had it). Here comes my doubt about most suitable cape - the one to accept 0/10V analog input wins the deal. If none of them can do it out of box, then I am not able to suggest anything to make it work with existing thermistor inputs. Maybe Bas or Charles can comment on that.
Powermax 45 open circuit voltage is 275VDC and THC output is fixed at 50:1 division, giving a max out of 5.5V. This could be divided down further with resistors.
I would get rid of any external THCs as much as possible - either do it all in Machinekit and control all the process there or leave the THC to external controller and switch the DC motor directly from it. Since you want to use 2 separate sensors together, I do not see a way to do it outside Machinekit. Here is how I did it in the retrofit:
2 sensors together? Ohmic just detects when the torch is touching the workpiece, following which you raise Z to a preset "initial height setting" (turn motor on for N milliseconds — some calibration required). At least this is how the old Chinese THC — which took the raw arc voltage in on a 9-pin D-sub! — worked.
On Tuesday, September 22, 2015 at 10:37:16 PM UTC+3, Andrew Back wrote:Hi Viesturs,
I work with Stuart and so I'll try to reply to some of your comments.
On Tuesday, 22 September 2015 19:54:41 UTC+1, Viesturs Lācis wrote:I have built a plasma with LinuxCNC and Mesa boards and also did a retrofit of existing machine with 2 separate THC sensors - plasma voltage and capacitative ring.Here are few comments from me:1) you most definitely will need a cape for BBB; I suspect that BeBoPr++ or CRAMPS might be most suitable choices, but I am not sure - see 4th point to see why2) is there any particular reason to use DC motor for Z axis instead of stepper motor? There already is thc component for such a setup.
It already has a 24V DC motor, complete with gearbox and feed screw etc. fitted and cabled up to the cabinet, which was working with the old THC.Ok, got it. Yes, 3 SSRs would be cheaper than starting to replace mechanics.3) you will need 3 digital inputs for home switches - one for each motor (you did not mention shared home switches)
With the existing THC it did not have a home switch for Z and instead it used ah ohmic sensor (detected the torch tip touching the workpiece).You have gantry, so there are 2 motors for X and 1 motor for Y. At least on this part of world that adds up as 3 motors.4) take a look at the Hypertherm plasma source - it should have 0/+10 V analog output for THC (at least Powermax 105 had it). Here comes my doubt about most suitable cape - the one to accept 0/10V analog input wins the deal. If none of them can do it out of box, then I am not able to suggest anything to make it work with existing thermistor inputs. Maybe Bas or Charles can comment on that.
Powermax 45 open circuit voltage is 275VDC and THC output is fixed at 50:1 division, giving a max out of 5.5V. This could be divided down further with resistors.Hmm, that might make it even easier. I still would like Bas or Charles to comment, how that would work with thermistor inputs.
I would get rid of any external THCs as much as possible - either do it all in Machinekit and control all the process there or leave the THC to external controller and switch the DC motor directly from it. Since you want to use 2 separate sensors together, I do not see a way to do it outside Machinekit. Here is how I did it in the retrofit:
2 sensors together? Ohmic just detects when the torch is touching the workpiece, following which you raise Z to a preset "initial height setting" (turn motor on for N milliseconds — some calibration required). At least this is how the old Chinese THC — which took the raw arc voltage in on a 9-pin D-sub! — worked.Ok, got it, I misunderstood. Well, I tend to agree with Dave - there is large probability that the ring will not make a contact and thus will not trigger - some little piece of debris or rust or whatever. Yes, the traditional way to do it is mount the torch on a small slide, which triggers a switch as soon as the torch is lifted up. And then you could use "oneshot" component to calibrate the length of time period, when motor is turned on after the switch is engaged.
--
website: http://www.machinekit.io blog: http://blog.machinekit.io github: https://github.com/machinekit
---
You received this message because you are subscribed to the Google Groups "Machinekit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to machinekit+...@googlegroups.com.
Visit this group at http://groups.google.com/group/machinekit.
For more options, visit https://groups.google.com/d/optout.
Sorry, I'm mostly a mechanical person who can solder :)Bas
On 10/27/2015 1:07 PM, Stuart Childs wrote:
> Thanks all for the recommendations. Sadly haven't had lots of time to
> attend to this refit yet, but happily so - rather than being in a rush!
>
> Taking capes into consideration, and based on the fact that I have had
> success with the PBX-BB before it was decided to use that cape again. The
> plan is to fly a wire to an unused analog input pin on the BBB header
>
> I am expecting that I can configure this analogue input to MK using the
> config.hal file and the pin reference spreadsheet shared by Charles. Any
> thoughts as to obstacles / something glaringly obvious I might have missed
> that might cause problems with this?
The BBB analog inputs are *VERY* sensitive and will instantly fry the
CPU if you ever get them over 1.8V! You will want some serious signal
conditioning circuitry between your THC input and the BBB if you don't
use some sort of alternative analog input (perhaps something like an I2C
A/D converter as implemented on the BeBoPr++).
On 11/17/2015 8:59 AM, Andrew Back wrote:
>
> Not being a fan of fried electronics and free roaming magic smoke, we — I
> work with Stuart — decided to take on board your advice and use an external
> ADC for measuring the plasma cutter arc voltage, settling on an MCP3204. It
> looks as though you cannot use SPI1 without disabling the HDMI (which we
> need), so we plan to hook it up to SPI0. Once this is done, what additional
> steps will be required in order to access readings from inside Machinekit?
> E.g. Is there some devicetree config required?
The SPI ports are enabled in the universal cape overlay, so you can
use config-pin to put the pins into SPI mode. There's also a Linux
driver for the MCP320x series available, so it should be fairly
straight-forward to get running in user mode. You can write a C or
Python user-mode HAL component to feed the torch height into HAL.
The user-mode component should work fine as long as you have a fairly
low-bandwidth feedback loop for torch height. If you need high speed
control, you'll have to talk to the SPI hardware directly from HAL.
In looking for a more tried and tested configuration that integrates THC and does not simply offload this to an external box, it seems that a few folks use the Mesa THCAD board, which converts voltage to frequency and uses an encoder input, albeit with a Mesa I/O solution. I wondered if this might be a better/easier approach, perhaps using a BeagleBone eQEP encoder input. Or perhaps this just means more hardware, but still the same amount of work :o)
Something else I've not been able to understand just yet is how to handle the DC brushed motor that is used to lift the torch via a ballscrew. There is no encoder feedback and so I'm wondering 1) how the old Chinese THC electronics did initial height setting, 2) how to configure this in Machekit, e.g. can you say that a certain number of milliseconds of motor on equates to 1mm on Z? Clearly scope for error here, but can't see how else you would do IHS, given that this is pre-plasma firing and so you have no arc voltage feedback to use in setting distance from workpiece.
--
website: http://www.machinekit.io blog: http://blog.machinekit.io github: https://github.com/machinekit
---
You received this message because you are subscribed to a topic in the Google Groups "Machinekit" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/machinekit/fAXkekPmHR8/unsubscribe.
To unsubscribe from this group and all its topics, send an email to machinekit+unsubscribe@googlegroups.com.
Visit this group at https://groups.google.com/group/machinekit.
--
website: http://www.machinekit.io blog: http://blog.machinekit.io github: https://github.com/machinekit
---
You received this message because you are subscribed to the Google Groups "Machinekit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to machinekit+...@googlegroups.com.
Hello all,
TLDR: looking for some advice on what cape/other hardware is best suited for MK + BBB control of a CNC plasma cutter.
Hoping to use MK to deal with THC (torch height control), but depending on how difficult may end up using an external THC box.
--
website: http://www.machinekit.io blog: http://blog.machinekit.io github: https://github.com/machinekit
---
You received this message because you are subscribed to a topic in the Google Groups "Machinekit" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/machinekit/fAXkekPmHR8/unsubscribe.
To unsubscribe from this group and all its topics, send an email to machinekit+unsubscribe@googlegroups.com.