Error finishing read! Iter and joint following error in Stepper machine

More
2 years 3 months ago #304342 by sin-do-re
Hello guys
i am getting some errors related to stopping the movement of the axis suddenly with a Error Finishing read and joint following error although I have a 2000000 servo period.

is there anyway can I improve my ini file to get over this?
would it be ok to increase servo period further?

thank you
Code:
.# Generated by PNCconf at Sat Dec 23 11:16:08 2023 # Using LinuxCNC version:  Master (2.9) # If you make changes to this file, they will be # overwritten when you run PNCconf again [EMC] MACHINE = cbv DEBUG = 0 VERSION = 1.1 [DISPLAY] DISPLAY = qtvcp qtplasmac POSITION_OFFSET = RELATIVE POSITION_FEEDBACK = ACTUAL MAX_FEED_OVERRIDE = 2.000000 INTRO_GRAPHIC = linuxcnc.gif INTRO_TIME = 5 PROGRAM_PREFIX = /home/tru/linuxcnc/nc_files INCREMENTS = 10mm 1mm .1mm .01mm .001mm POSITION_FEEDBACK = ACTUAL DEFAULT_LINEAR_VELOCITY = 133.333333 MAX_LINEAR_VELOCITY = 166.666667 MIN_LINEAR_VELOCITY = 0.500000 DEFAULT_ANGULAR_VELOCITY = 12.000000 MAX_ANGULAR_VELOCITY = 180.000000 MIN_ANGULAR_VELOCITY = 1.666667 GEOMETRY = xyz CYCLE_TIME = 100 [FILTER] PROGRAM_EXTENSION = .ngc,.nc,.tap GCode File (*.ngc, *.nc, *.tap) ngc = qtplasmac_gcode nc  = qtplasmac_gcode tap = qtplasmac_gcode [TASK] TASK = milltask CYCLE_TIME = 0.010 [RS274NGC] PARAMETER_FILE = linuxcnc.var RS274NGC_STARTUP_CODE = G21 G40 G49 G80 G90 G92.1 G94 G97 M52P1 SUBROUTINE_PATH = ./:../../nc_files USER_M_PATH = ./:../../nc_files [EMCMOT] EMCMOT = motmod COMM_TIMEOUT = 1.0 SERVO_PERIOD = 2000000 [HMOT] CARD0=hm2_7i96s.0 [HAL] HALUI = halui HALFILE = cbv.hal HALFILE = qtplasmac_comp.hal HALFILE = custom.hal POSTGUI_HALFILE = custom_postgui.hal SHUTDOWN = shutdown.hal [HALUI] [KINS] JOINTS = 3 KINEMATICS = trivkins coordinates=XYZ [TRAJ] SPINDLES = 3 COORDINATES =  XYZ LINEAR_UNITS = mm ANGULAR_UNITS = degree DEFAULT_LINEAR_VELOCITY = 10.00 MAX_LINEAR_VELOCITY = 100.00 POSITION_FILE = position.txt NO_FORCE_HOMING = 1 [EMCIO] EMCIO = io CYCLE_TIME = 0.100 TOOL_TABLE = tool.tbl #****************************************** [AXIS_X] # MAX_VEL & MAX_ACC need to be twice the corresponding joint value MAX_VELOCITY = 100.0 MAX_ACCELERATION = 750.0 OFFSET_AV_RATIO = 0.5 MIN_LIMIT = -0.01 MAX_LIMIT = 2000.0 [JOINT_0] TYPE = LINEAR HOME = 0.0 FERROR = 10.0 MIN_FERROR = 1.0 MAX_VELOCITY = 50.0 MAX_ACCELERATION = 375.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 62.50 STEPGEN_MAXACCEL = 468.75 P = 1250.0 I = 0.0 D = 0.0 FF0 = 0.0 FF1 = 1.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 0.0 # these are in nanoseconds DIRSETUP   = 10000 DIRHOLD    = 10000 STEPLEN    = 5000 STEPSPACE  = 5000 STEP_SCALE = 88.0 MIN_LIMIT = -0.01 MAX_LIMIT = 2000.0 HOME_OFFSET = -5.000000 HOME_SEARCH_VEL = -33.333333 HOME_LATCH_VEL = -0.500000 HOME_FINAL_VEL = 0.000000 HOME_USE_INDEX = NO HOME_IGNORE_LIMITS = YES HOME_SEQUENCE = 1 #****************************************** #****************************************** [AXIS_Y] # MAX_VEL & MAX_ACC need to be twice the corresponding joint value MAX_VELOCITY = 200.0 MAX_ACCELERATION = 1500.0 OFFSET_AV_RATIO = 0.5 MIN_LIMIT = -0.01 MAX_LIMIT = 3000.0 [JOINT_1] TYPE = LINEAR HOME = 0.0 FERROR = 10.0 MIN_FERROR = 1.0 MAX_VELOCITY = 100.0 MAX_ACCELERATION = 750.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 125.00 STEPGEN_MAXACCEL = 937.50 P = 1250.0 I = 0.0 D = 0.0 FF0 = 0.0 FF1 = 1.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 0.0 # these are in nanoseconds DIRSETUP   = 10000 DIRHOLD    = 10000 STEPLEN    = 5000 STEPSPACE  = 5000 STEP_SCALE = -88.0 MIN_LIMIT = -0.01 MAX_LIMIT = 3000.0 HOME_OFFSET = -5.000000 HOME_SEARCH_VEL = -33.333333 HOME_LATCH_VEL = -0.500000 HOME_FINAL_VEL = 0.000000 HOME_USE_INDEX = NO HOME_IGNORE_LIMITS = YES HOME_SEQUENCE = 2 #****************************************** #****************************************** [AXIS_Z] # MAX_VEL & MAX_ACC need to be twice the corresponding joint value MAX_VELOCITY = 200.0 MAX_ACCELERATION = 1300.0 OFFSET_AV_RATIO = 0.5 MIN_LIMIT = -0.0 MAX_LIMIT = 100.01 [JOINT_2] TYPE = LINEAR HOME = 100.0 FERROR = 10.0 MIN_FERROR = 1.0 MAX_VELOCITY = 100.0 MAX_ACCELERATION = 650.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 125.00 STEPGEN_MAXACCEL = 812.50 P = 1250.0 I = 0.0 D = 0.0 FF0 = 0.0 FF1 = 1.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 0.0 # these are in nanoseconds DIRSETUP   = 10000 DIRHOLD    = 10000 STEPLEN    = 5000 STEPSPACE  = 5000 STEP_SCALE = 290.0 MIN_LIMIT = -0.0 MAX_LIMIT = 100.01 HOME_OFFSET = 104.000000 HOME_SEARCH_VEL = 10.000000 HOME_LATCH_VEL = 0.500000 HOME_FINAL_VEL = 0.000000 HOME_USE_INDEX = NO HOME_IGNORE_LIMITS = YES HOME_SEQUENCE = 0 #******************************************

Please Log in to join the conversation.

More
2 years 3 months ago #304343 by tommylight
Trying to fix hardware issues with software is never a good idea, so ini file settings can not help much as you already have the servo period set to 2 million, but why oh why did you set the P value for all axis/joints at 1250???
Set those at 500, they are servo period dependent and must be 1/servo period, in your case 1/2000000ns=500 or 1/0.002sec=500

What PC? did you disable power saving options in BIOS? did you disable hyperthreading, TMP, C states, etc?
Also, open a terminal and type
sensors
see what the CPU temperature is while running LinuxCNC, anything above 60 degree should be checked and mitigated by repasting the cooler or better cooling.

Please Log in to join the conversation.

More
2 years 3 months ago #304349 by PCW
Other things to check:

1. Do you have an Intel or Realtek Ethernet chip?
( there are chip specific things you can do to improve latency)

lshw -class network

Will list your Ethernet (and wireless) network hardware if you are not sure

2. Have you run a simple ping test like:

ping -i .2 -c 4 10.10.10.10
sudo chrt 99 ping -i .001 -q 10.10.10.10

The first command populates the ARP cache so the ARP lookup doesn't add time to the first ping
The second command should be run for a few minutes (and then stopped with a control C)
and the results posted here.
 

Please Log in to join the conversation.

More
2 years 3 months ago #304448 by sin-do-re
Hello.
to update:
this error happens specifically when torch is about to fire, it even fires for a millisecond before error occurs.

im using output2 on 7i96s to drive a relay. The relay closes circuit of torch on terminals on the generator.

attached is the output of those commands

Please Log in to join the conversation.

More
2 years 3 months ago #304473 by PCW
The ping times are pretty bad.

If you have an intel Ethernet chip have you disabled IRQ coalescing?
This is described in the hm2_eth manual page:

man hm2_eth

gnipsel.com/linuxcnc/debian-12-eth.html

If you get the error right when the torch starts, that suggest a EMI 
or grounding issue . Do you have a flyback diode across the relay coil?

Please Log in to join the conversation.

More
2 years 3 months ago #304742 by sin-do-re
i have made the changes to the static IP and now i have a much smaller latency (about 0.100, 0.150)

i can "torch pulse" how many times i want and it will never have problems with the plasma ON.
i even have done "torch pulse" piercing the material, moving left, piercing again with torch pulse, etc.
i can run the G-Code how many times i want, without any problems, with "torch OFF".
i can run the G-Code how many times i want, without any problems, with "IGNORE OK", and "TORCH ON", and the plasma source itslef OFF, so the relay fires but there's no arc.

if i have "torch ON", and the plasma source ON, when i run a g-code, it will pierce the first time, and at the second time to pierce, it will give me a joint following error and "Error finishing read! Iter (...) "

my next attempt is to replace the mesa board and the relay..
 

Please Log in to join the conversation.

More
2 years 3 months ago #304750 by tommylight
Not a Mesa issue.
Wiring/shielding/grounding issue.

Please Log in to join the conversation.

More
2 years 3 months ago #304751 by PCW
Is there a flyback diode across the relay coil?

Please Log in to join the conversation.

More
2 years 2 months ago #308089 by Lcvette

Other things to check:

1. Do you have an Intel or Realtek Ethernet chip?
( there are chip specific things you can do to improve latency)

lshw -class network

Will list your Ethernet (and wireless) network hardware if you are not sure

2. Have you run a simple ping test like:

ping -i .2 -c 4 10.10.10.10
sudo chrt 99 ping -i .001 -q 10.10.10.10

The first command populates the ARP cache so the ARP lookup doesn't add time to the first ping
The second command should be run for a few minutes (and then stopped with a control C)
and the results posted here.

 
ran this test, how does this look?
Code:
xk7130@xk7130:~$ sudo lshw -class netork [sudo] password for xk7130:  xk7130@xk7130:~$ lshw -class network WARNING: you should run this program as super-user.   *-network                         description: Ethernet interface        product: Ethernet Connection (2) I218-V        vendor: Intel Corporation        physical id: 19        bus info: pci@0000:00:19.0        logical name: enp0s25        version: 00        serial: d0:50:99:5c:61:57        size: 100Mbit/s        capacity: 1Gbit/s        width: 32 bits        clock: 33MHz        capabilities: bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation        configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=6.1.0-13-rt-amd64 duplex=full firmware=0.1-4 ip=10.10.10.11 latency=0 link=yes multicast=yes port=twisted pair speed=100Mbit/s        resources: irq:26 memory:efc00000-efc1ffff memory:efc34000-efc34fff ioport:f080(size=32)   *-network        description: Wireless interface        physical id: 11        bus info: usb@2:11        logical name: wlx5ca6e641710d        serial: 5c:a6:e6:41:71:0d        capabilities: ethernet physical wireless        configuration: broadcast=yes driver=r8188eu driverversion=6.1.0-13-rt-amd64 ip=192.168.1.197 multicast=yes wireless=IEEE 802.11bgn WARNING: output may be incomplete or inaccurate, you should run this program as super-user. xk7130@xk7130:~$ ping -i .2 -c 4 10.10.10.10 PING 10.10.10.10 (10.10.10.10) 56(84) bytes of data. 64 bytes from 10.10.10.10: icmp_seq=1 ttl=64 time=0.226 ms 64 bytes from 10.10.10.10: icmp_seq=2 ttl=64 time=0.150 ms 64 bytes from 10.10.10.10: icmp_seq=3 ttl=64 time=0.149 ms 64 bytes from 10.10.10.10: icmp_seq=4 ttl=64 time=0.150 ms --- 10.10.10.10 ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 609ms rtt min/avg/max/mdev = 0.149/0.168/0.226/0.033 ms xk7130@xk7130:~$ sudo chrt 99 ping -i .001 -q 10.10.10.10 PING 10.10.10.10 (10.10.10.10) 56(84) bytes of data. ^C --- 10.10.10.10 ping statistics --- 355710 packets transmitted, 355710 received, 0% packet loss, time 355709ms rtt min/avg/max/mdev = 0.077/0.122/0.330/0.009 ms xk7130@xk7130:~$ 

 

Please Log in to join the conversation.

More
2 years 2 months ago #308096 by PCW
Looks decent (no huge ping times)

Please Log in to join the conversation.

Time to create page: 0.095 seconds
Powered by Kunena Forum