Advanced Search

Search Results (Searched for: )

  • Daan96
  • Daan96
20 Feb 2025 15:39 - 25 Jun 2025 12:53

Building a 3-axis plasma table with mesa 7i96s, THCad-2 and nema23 steppers

Category: Show Your Stuff

Hello, my name is Daan Bent, 28 years old, and I’m from the Netherlands.
At the moment, I’ve started working on the mechanical design of a DIY plasma cutting table, with an option for a 4th axis to also cut tubes. For now, I want to focus on cutting plates, but I’d like to have the hardware prepared for a 4th axis later on.This brings me to the first problem I’m facing: I’m hesitating between Mach3, myplasmac, and LinuxCNC software/hardware. Given the forum, most of you will probably suggest going for Linux. My programming experience is very minimal, but I’m willing to learn and find it quite interesting. Do you think it’s doable? The advantage of myplasmac and Mach3 is that they seem easier to use in my opinion, but the options with Linux seem endless.Here’s the start of the design for my table, tips are of course very welcome! Over the next period, I’ll be focusing on the design of the mechanical part and diving deeper into the hardware and software.

 
  • Nathan40
  • Nathan40
20 Feb 2025 15:31

Probe getting triggered for non probic moves

Category: G&M Codes

Probe getting triggered in non probic moves. As a result the gcode programs are subsequently failing in linuxcnc 2.9.2 version. This never happened in previous versions. Please help!
  • Aciera
  • Aciera's Avatar
20 Feb 2025 15:21 - 20 Feb 2025 15:23
Replied by Aciera on topic scurve trajectory planner

scurve trajectory planner

Category: General LinuxCNC Questions

This is what I'm working with (compiles and runs without the 'fdf.fvv' function which I don't know anything about while I could probably figure out the fdf.df Jacobian ):

Warning: Spoiler!


Kinda nice to start out with a working example.
  • Aciera
  • Aciera's Avatar
20 Feb 2025 15:17
Replied by Aciera on topic scurve trajectory planner

scurve trajectory planner

Category: General LinuxCNC Questions

Why not try the dogleg solver in the GSL library?
Playing around with one of the examples linked above, it looks like we could possibly run 'levenberg-marquard', 'dogleg' and 'double dogleg' and '2D subspace' methods with our function and the Jacobian:
  /* define function to be minimized */
  fdf.f = func_f;
  fdf.df = func_df;
  //fdf.fvv = func_fvv;
  fdf.n = n;
  fdf.p = p;
  fdf.params = &params;

  /* starting point */
  gsl_vector_set(x, 0, 6.0);
  gsl_vector_set(x, 1, 14.5);

  fprintf(stderr, "%-25s %-6s %-5s %-5s %-13s %-12s %-13s %-15s\n",
          "Method", "NITER", "NFEV", "NJEV", "Initial Cost",
          "Final cost", "Final cond(J)", "Final x");

  fdf_params.trs = gsl_multifit_nlinear_trs_lm;
  solve_system(x, &fdf, &fdf_params);

  //fdf_params.trs = gsl_multifit_nlinear_trs_lmaccel;
  //solve_system(x, &fdf, &fdf_params);

  fdf_params.trs = gsl_multifit_nlinear_trs_dogleg;
  solve_system(x, &fdf, &fdf_params);

  fdf_params.trs = gsl_multifit_nlinear_trs_ddogleg;
  solve_system(x, &fdf, &fdf_params);

  fdf_params.trs = gsl_multifit_nlinear_trs_subspace2D;
  solve_system(x, &fdf, &fdf_params);

  gsl_vector_free(f);
  gsl_vector_free(x);

  return 0;
  • Grotius
  • Grotius's Avatar
20 Feb 2025 15:02
Replied by Grotius on topic scurve trajectory planner

scurve trajectory planner

Category: General LinuxCNC Questions

Hi Arciera,

So in my opinion we are using the wrong solver.
Haha yes indeed we now use : Nelder-Mead simplex method

For now this solver prooved our codebase works ok.
Maybe we can switch solvers with a flag.

Then we can also measure different solvers performance time and choose the best one.

We will add a new dogleg solver soon, as libdogleg was kind of problematic. Github repository
also say's better to use seres solver.

The gauss now works without junction flaws, error solved in eq14_gauss.
It was kind off trickie error. It needed the theta, kappa, sharpness at the given distance.
This in combination with the gauss method, is tricky.
Result:
 

The drift vs gauss function in the example without fit method:
 

github updated
 
  • PCW
  • PCW's Avatar
20 Feb 2025 14:56

Servo Oscillation Issue at ±6.6V 5i25 + 7i77, Analog Control

Category: Basic Configuration

It sure looks like an encoder issue, especially the speed limit
(in one plot the encoder velocity dropped to 0 in basically an instant)

Did you set the encoder filter to 0 on all encoder channels?
  • Aciera
  • Aciera's Avatar
20 Feb 2025 14:33
  • tommylight
  • tommylight's Avatar
20 Feb 2025 14:28

(LPT) Debian 12 Latency spikes/unexpected real time delay. Looking for solution.

Category: General LinuxCNC Questions

Try this
forum.linuxcnc.org/9-installing-linuxcnc...-2-9?start=40#308037
And follow from there on.
-
Getting permission denied from apt is strange, especially since you are correctly running as a normal user.
In about 90% of cases, if you get this error, one of the memory modules is on the way out, so it might be time to dust off your PC and check the memory.
If you do have another PC, you can install everything there and move the drive after finishing to this PC, that almost always works properly with Linux. Almost for me is 1 failed boot in about 500.
  • Aciera
  • Aciera's Avatar
20 Feb 2025 14:25
Replied by Aciera on topic scurve trajectory planner

scurve trajectory planner

Category: General LinuxCNC Questions

reading this might explain why it is returning a local minimum:
www.gnu.org/software/gsl/doc/html/multimin.html

 

So in my opinion we are using the wrong solver.
  • Aciera
  • Aciera's Avatar
20 Feb 2025 14:22
Replied by Aciera on topic scurve trajectory planner

scurve trajectory planner

Category: General LinuxCNC Questions

Is there a particular reason for using 'Multidimensional Minimization' instead of 'Nonlinear Least-Squares Fitting' which would contain the dogleg method?

// Set up the Nelder-Mead solver
const gsl_multimin_fminimizer_type *T = gsl_multimin_fminimizer_nmsimplex2;
gsl_multimin_fminimizer *s = gsl_multimin_fminimizer_alloc(T, 3);

  • denhen89
  • denhen89's Avatar
20 Feb 2025 14:12

(LPT) Debian 12 Latency spikes/unexpected real time delay. Looking for solution.

Category: General LinuxCNC Questions

UPDATE:
i did again a fresh install of Debian 12 and did the same as described in my previous post with sudo dpkg -i (package name here without brackets).
I then opened Synaptic pacakge manager and it showed me a broken package, which was linuxcnc. I clicked on it and did complete removal. Then i updated everything that synaptic made available and then again i did sudo dpkg -i linuxcnc_2.9.4_amd64.deb.
When i do Latency-test, the pc freezes.

I dont get it, but this is the best example of why i just hate linux.

If i did something wrong or without a sequence, then i need to remember, that the only information i got from first post of forum.linuxcnc.org/9-installing-linuxcnc...debs-for-2-9?start=0, is that i have to have Debian 12 installed, without Linuxcnc.
Then i download the DEBs of onelaboratories.us/abc/linuxcnc_2.9.4_amd64.deb
and each of the 4 DEBs i need to install by "sudo dpkg -i (deb name)".

This does not work.
On start up of the machine i get for about 2 seconds the information that you can see on the attached picture.
  • JT
  • JT's Avatar
20 Feb 2025 14:08
Replied by JT on topic Mesa Configuration Tool

Mesa Configuration Tool

Category: Configuration Tools

I've added support for the 7i76EU, just need to figure out what features it has over the 7i76E. Good to know the pin names are the same.

JT
  • JT
  • JT's Avatar
20 Feb 2025 14:04
Replied by JT on topic Question about G49

Question about G49

Category: General LinuxCNC Questions

The RS274NGC_STARTUP_CODE IMHO is not really needed for anything because your preamble in the NC file will over write the startup code. If you run the Axis sim which does not have RS274NGC_STARTUP_CODE you can see the default start up codes G80 G17 G40 G20 G90 G94 G54 G49 G99 G64 G97 G91.1 G8 G92.2 M5 M9 M48 M53 M0 F0

JT
  • mc_cubus
  • mc_cubus
20 Feb 2025 13:50
Replied by mc_cubus on topic Issue with LinuxCNC Pins showing zero

Issue with LinuxCNC Pins showing zero

Category: EtherCAT

ok I tried setting the SDOs as specified in the manual, i.e.:
<!-- Example initCmds to map 0x1A00 to SM3 (0x1C13) -->
                        <!-- 1) Clear existing SM3 assignments -->
                        <InitCmd>
                          <Transition>PS</Transition>
                          <Comment>clear sm pdos (0x1C13)</Comment>
                          <Timeout>0</Timeout>
                          <Ccs>1</Ccs> <!-- CoE command -->
                          <Index>0x1C13</Index>
                          <SubIndex>0</SubIndex>
                          <Data>00</Data>  <!-- zero => no assigned PDOs -->
                        </InitCmd>
                        <!-- 2) Add 1A00 as the first PDO to SM3 -->
                        <InitCmd>
                          <Transition>PS</Transition>
                          <Comment>add pdo 0x1A00 to sm3</Comment>
                          <Timeout>0</Timeout>
                          <Ccs>1</Ccs>
                          <Index>0x1C13</Index>
                          <SubIndex>1</SubIndex>
                          <Data>1a00</Data>  <!-- This is the hex index of the PDO (0x1A00) -->
                        </InitCmd>

                        <!-- 3) Set the new count of assigned PDOs to 1 -->
                        <InitCmd>
                          <Transition>PS</Transition>
                          <Comment>download pdo 0x1C13:00 index => 1</Comment>
                          <Timeout>0</Timeout>
                          <Ccs>1</Ccs>
                          <Index>0x1C13</Index>
                          <SubIndex>0</SubIndex>
                          <Data>01</Data>  <!-- 1 assigned PDO in SM3 -->
                        </InitCmd>

Now, when running linuxcnc I get:
Waiting for component 'lcec' to become ready..........................Failed to execute SDO download: Input/output error
LCEC: slave 0.IFC2411Sensor: Failed to execute SDO download (0x1c13:0x00, size 1, byte0=0, error -5, abort_code 06010002)
LCEC: failed to configure slave 0.IFC2411Sensor sdo 1c13:00
Failed to execute SDO download: Input/output error
LCEC: slave 0.IFC2411Sensor: Failed to execute SDO download (0x1c13:0x01, size 2, byte0=26, error -5, abort_code 00000000)
LCEC: failed to configure slave 0.IFC2411Sensor sdo 1c13:01
.Failed to execute SDO download: Input/output error
LCEC: slave 0.IFC2411Sensor: Failed to execute SDO download (0x1c13:0x00, size 1, byte0=1, error -5, abort_code 00000000)
LCEC: failed to configure slave 0.IFC2411Sensor sdo 1c13:00

LCEC: slave 0.IFC2411Sensor: Failed to execute SDO download (0x1c13:0x00, size 1, byte0=0, error -5, abort_code 06010002)

LCEC: failed to configure slave 0.IFC2411Sensor sdo 1c13:00

LCEC: slave 0.IFC2411Sensor: Failed to execute SDO download (0x1c13:0x01, size 2, byte0=26, error -5, abort_code 00000000)

LCEC: failed to configure slave 0.IFC2411Sensor sdo 1c13:01

LCEC: slave 0.IFC2411Sensor: Failed to execute SDO download (0x1c13:0x00, size 1, byte0=1, error -5, abort_code 00000000)

LCEC: failed to configure slave 0.IFC2411Sensor sdo 1c13:00


I suspect that the Sensor comes up with a default (locked) PDO assignment, since ethercat pdos -p 4 says:
ethercat pdos -p 4
SM0: PhysAddr 0x1000, DefaultSize 1024, ControlRegister 0x26, Enable 1
SM1: PhysAddr 0x1400, DefaultSize 1024, ControlRegister 0x22, Enable 1
SM2: PhysAddr 0x1800, DefaultSize    0, ControlRegister 0x64, Enable 1
SM3: PhysAddr 0x1818, DefaultSize   24, ControlRegister 0x20, Enable 1
  TxPDO 0x1a00 ""
    PDO entry 0x6000:01, 32 bit, ""
  TxPDO 0x1a30 ""
    PDO entry 0x6010:01, 32 bit, ""
  TxPDO 0x1a80 ""
    PDO entry 0x6030:01, 32 bit, ""
  TxPDO 0x1ae0 ""
    PDO entry 0x7000:01, 32 bit, ""
  TxPDO 0x1ae8 ""
    PDO entry 0x7001:01, 32 bit, ""
  TxPDO 0x1af0 ""
    PDO entry 0x7002:01, 32 bit, ""

And also with $ ethercat upload -p 4 0x1C13 0x00 --type uint8 one can see which PDOs are assigned to the 0x1C13 object and all are already assigned to it.

I am trying to figure out if the problem lies on the Sensor side or I did something wrong with LinuxCNC configuration.
  • Aciera
  • Aciera's Avatar
20 Feb 2025 13:46 - 20 Feb 2025 14:01
Replied by Aciera on topic scurve trajectory planner

scurve trajectory planner

Category: General LinuxCNC Questions

We also might want to call it a fail if max_iterations have been reached:

Solution found after 1000000 iterations: gamma10 = -0.000148, gamma20 = 0.000011, s1 = 66.624893
 


Strange that it thinks it has succeeded when the residual is still way off (looks like its happy to have found a local minimum or something):
 
Displaying 18676 - 18690 out of 19178 results.
Time to create page: 0.765 seconds
Powered by Kunena Forum