Example of HAL configuration for plasma torch height control with THCAD2 7i96s

  • programador
  • programador's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
21 Oct 2024 11:39 #312732 by programador
Good morning, friends

Does anyone have an example of how the Z axis is connected and controlled in the axis movement for controlling the height of a plasma torch using the THCAD2 board on the ENCA+ input of the 7i96s? I am developing it for other purposes, but I think the example can help. It needs to be in LinuxCNC 2.8.4, if anyone has an example, even a simple one, it will help.

 

 
Attachments:

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

  • tommylight
  • tommylight's Avatar
  • Away
  • Moderator
  • Moderator
More
22 Oct 2024 01:06 #312815 by tommylight
After reading this several time i still can not figure out what you are asking! I am sure you are not asking for wiring as you can do that easily, so...
Would be much easier if you would tell us what you are trying to do/achieve/get to.
In short, the encoder velocity from the THCAD is feed to PlasmaC component (not GUI) where it is used to control the Z axis position during cutting, this all goes through a PID loop to keep the set voltage value inside the tolerances (usually +-1V) and the output of that PID loop is sent to external offsets component to do the actual motion of the Z axis.
There is much, much more to it, and for that you would have to go through the PlasmaC component on github, several thousands of lines of code there to explain what you are asking.

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

  • programador
  • programador's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
22 Oct 2024 13:29 - 22 Oct 2024 13:36 #312852 by programador
Good afternoon

I will try to be as precise as possible about what I am looking for, although the language barrier does not help.

1st The 7i96s electronic board was designed with an encoder input ENCA+ ENCA-, ENCB+ and ENCB+. This would be the basics to connect an encoder with output A and B and for everything to work perfectly.

2nd I need to connect only and exclusively to ENCA+ and ENCA- a single frequency signal from the THCAD2 board that resets to 100kHz in the low position and resets to 1Mhz in the high position. This has already been done successfully.

3rd The big problem is that LinuxCNC does not understand that only a frequency signal from 100 to 1000Kz determines the feedback of the Z axis position.

I can't believe you don't understand this, given your extraordinary skill. Some people want to tell me that I ask questions that are too obvious to be answered by the masters. So I challenge the creators of this technology to prove that they can do this simple application by showing me examples.

Unfortunately, I really believed in the technology from the manufacturer MESA, and I received a lot of help from Mr. Peter and this forum. But it seems that now I have reached a limit where no one can help me with this. To make matters worse, I have not yet found anyone willing to provide the service, even if I pay. This is sad, because MESA has everything it needs to be widely used to replace major brands. All that is missing is more examples and support from professionals like me.

Since you asked what I want to achieve, it is simply to control a hydraulic cylinder that repeatedly hits a metal plate, but this hit has to be at the right height down to the millimeter. The actuation output is controlled by the 7i77 electronic board and it plays from 0 to 10 V positive to go up and from 0 to -10 V negative to go down. Next to this cylinder there is a linear inductive sensor that has a 0 to 10 V positive output that at 8 V is with the cylinder high and 0 the cylinder low, this height return with millimeter precision goes to the THCA2 board that sends this information to the 7i96s board, MY GOAL IS that in the G code I can control z000001.000 or z000001.50000 to drill deeper or less deeply. Did I understand the objective? Is there any better idea, or is it very easy and obvious?
Last edit: 22 Oct 2024 13:36 by programador.

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

  • programador
  • programador's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
22 Oct 2024 13:53 - 22 Oct 2024 14:14 #312859 by programador
I just need the examples to move forward
A while ago I was having another difficulty, with the automatic tool change, the LinuxCNC help files are in English and very confusing, only with a video showing step by step I was able to get what I wanted, below is the example video:



Below is the result of this example applied to my machine


www.youtube.com/shorts/OWihZHUuwew
I'm not as lay as you think, but I need a little push from some example code in a video to show the control of the plasma torch?
Last edit: 22 Oct 2024 14:14 by programador.

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

More
22 Oct 2024 14:12 #312862 by PCW
3rd The big problem is that LinuxCNC does not understand that only a frequency signal from 100 to 1000Kz determines the feedback of the Z axis position.

I think this was already discussed  in another thread. I think the best way to do this is
step by step

The first step is to scale the encoder velocity into the desired units (mm?)
This can be done with the encoder scale parameter, but it's likely you will need
an offset, in which case you can feed the encoder velocity through the offset
component. When this is all done you should have a direct scaled position signal.

To calculate the scaling you will need to move the Z axis to 0 position, read the
encoder velocity, then move Z a known distance (preferably near full range of motion)
and then read the encoder velocity again,


The second step is to feed this signal into the feedback input of a PID component.
this PID component will force the Z axis to follow the Z axis position command from
LinuxCNC.

If you setup a normal analog + encoder feedback LinuxCNC configuration
with pncconf for 7I77 hardware, all of setup/connections/components will have been created
for you and the main change that needs to be done is substitution of the scaled/offset
encoder velocity for the encoder position that pncconf setup.

 
The following user(s) said Thank You: programador

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

  • programador
  • programador's Avatar Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
22 Oct 2024 15:08 #312869 by programador
Thank you, I will follow your guidance and post step by step here.

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

Time to create page: 0.119 seconds
Powered by Kunena Forum