Advanced Search

Search Results (Searched for: 7i76e)

21 Mar 2024 09:50

mesa 7i76e + 7i85s homing problem on 4th axis index-enable

Category: Basic Configuration

Hi everyone and thanks in advance for your help...

I have just finished mechanically and electrically installing the fourth axis, moved by an Asda B servo.
The motor moves correctly in jog and the encoder pulses are read by the 7i85s board, A/A B/B Z/Z .
However, I cannot do homing using Z/Z of the encoder.
Index-enable is always at zero, but if I try to force it to 1 with the command sets xxx-index-enable 1 it goes to 1 and returns to zero when the Z/Z pulse passes, so I think there are no electrical problems .
I think the problem is the configuration on ini or hal, I'm attaching my files, they're still in progress, maybe you can tell me where I'm going wrong
20 Mar 2024 16:11

hm2/hm2_7i76e.0: error finishing read! iter=25403

Category: Driver Boards

1. Have you disabled all power saving option in you BIOS (Turbo modes, speed-step,Cstates >C1 EIST etc)
2. What is your host hardware?
3. For difficult cases, see this thread:
forum.linuxcnc.org/38-general-linuxcnc-q...ead-and-irq-affinity
20 Mar 2024 16:02

hm2/hm2_7i76e.0: error finishing read! iter=25403

Category: Driver Boards

latency-histogram --nobase --sbinsize 1000 --show
?
Also, ping times
ping 10.10.10.10
?
20 Mar 2024 15:52

hm2/hm2_7i76e.0: error finishing read! iter=25403

Category: Driver Boards

Hey I'm running into the dreaded error finishing read! iter problems with my CNC

I'm tired of dealing with this and want to get it solved once and for all. I'll post everything about my machine updating this initial first post as I gather up all the details of my PC hardware etc.

Hardware:
Mesa 7i76e
JMC 400w ac servos

My INI file can be found here:
github.com/bhowiebkr/PrintNC_conf/blob/main/PrintNC/PrintNC.ini

Latency test:
github.com/bhowiebkr/PrintNC_conf/blob/m...p/latency%20test.png

ip a out:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether c8:1f:66:4a:c1:2b brd ff:ff:ff:ff:ff:ff
    inet 10.10.10.11/8 brd 10.255.255.255 scope global noprefixroute enp3s0
       valid_lft forever preferred_lft forever
3: wlx6c5ab0d0684d: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 6c:5a:b0:d0:68:4d brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.227/24 brd 192.168.1.255 scope global dynamic noprefixroute wlx6c5ab0d0684d
       valid_lft 55963sec preferred_lft 55963sec
    inet6 fd74:8db0:9331:f2f0:6b99:8289:4e95:de6f/64 scope global dynamic noprefixroute
       valid_lft 1438sec preferred_lft 1438sec
    inet6 fe80::4fa5:3f66:9622:fcb9/64 scope link noprefixroute
       valid_lft forever preferred_lft forever


howard@debian12:~$ halcmd show param *.tmax
Parameters:
Owner   Type  Dir         Value  Name
    63  s32   RW          17700  debounce.0.tmax
    60  s32   RW          26140  estop-latch.0.tmax
    60  s32   RW           1188  estop-latch.1.tmax
    60  s32   RW          17528  estop-latch.2.tmax
    60  s32   RW          17292  estop-latch.3.tmax
    60  s32   RW          17708  estop-latch.4.tmax
    60  s32   RW          18236  estop-latch.5.tmax
     5  s32   RW          80456  fast.tmax
    52  s32   RW              0  hm2_7i76e.0.read-request.tmax
    52  s32   RW        2301968  hm2_7i76e.0.read.tmax
    52  s32   RW          67752  hm2_7i76e.0.write.tmax
    45  s32   RW          17920  motion-command-handler.tmax
    45  s32   RW          55328  motion-controller.tmax
    55  s32   RW          16204  pid.s.do-pid-calcs.tmax
    55  s32   RW          16740  pid.w.do-pid-calcs.tmax
    55  s32   RW          26388  pid.x.do-pid-calcs.tmax
    55  s32   RW          16440  pid.y.do-pid-calcs.tmax
    55  s32   RW          16608  pid.y2.do-pid-calcs.tmax
    55  s32   RW          16708  pid.z.do-pid-calcs.tmax
    46  s32   RW        2337288  servo-thread.tmax
     6  s32   RW          81300  slow.tmax
     9  s32   RW          80456  timedelta.0.tmax
     9  s32   RW          81300  timedelta.1.tmax




 
18 Mar 2024 14:49
Replied by PCW on topic Motor following error 7i76e

Motor following error 7i76e

Category: PnCConf Wizard

You can get following errors if packets are dropped because
they timed out. This is almost always a latency issue.
To check this, see if:

hm2_7i76e.0.packet-error-total is >0

What happens if a RX packet times out is that stale stepgen
feedback data is used (from the previous servo thread) this causes
a following error of current_velocity*servo_thread_period

Fixes:

1. Improve the PCs latency
This includes disabling all power management in the BIOS,
including Cstates >C1 EIST, turbo modes Cool&Quiet etc etc,
Also disable hyperthreading and on corporate PCs, disable AMT
Additional options are using isolcpus and pinning the Ethernet
interrupt to the isolated real time CPU. There's a script to do this here:

forum.linuxcnc.org/38-general-linuxcnc-q...ead-and-irq-affinity

If improving the latency with the above methods does not help, there are some
other work-arounds:

2. Increase the DPLL pre-sampling time

setp hm2_7I76e.0.dpll.01.timer-us -200
setp hm2_7i76e.0.stepgen.timer-number 1



3. Raise the servo thread period. (to say 1500000 ns) The main side effect of raising
the servo thread period is that there will be fewer velocity steps during acceleration,
leading to rough motion on high acceleration machines

4. Increase the joint following error limits to > max_velocity*servo_thread_period

5. Add some hal plumbing so that when there is a lost packet, the (stale) feedback
position data is ignored and the commanded data is used instead. This also has
the advantage of smoother motion since the bogus correction (in the PID loop)
from the stale data is not performed.

Here is an example hal file that does this:


 

File Attachment:

File Name: hm2-pidste...emux.hal
File Size:11 KB
18 Mar 2024 13:38

Masact File genrated file run in Linuxcnc not Work Linuxcnc Error

Category: General LinuxCNC Questions

cannot gain I/O privileges - forgot 'sudo make setuid' or using secure boot? -parallel port access is not allowed

 


And also it looks like you have not set the networking to use the Mesa card.
forum.linuxcnc.org/27-driver-boards/3559...ethernet-mesa-boards
18 Mar 2024 12:33

Mesa 7i76E HY Spindle Coolant Best Practices

Category: General LinuxCNC Questions

Here's what I'm using.

You can trigger the time-delay signal from whatever you'd like.  Signal SPINDLE-ENABLE is used to trigger both the time-delay as well as 7i76.0.0.spinena (physical spindle output pin).

In my case signal SPINDLE-ENABLE is triggered from an or2 component (due to a spindle orient setup), but spindle.0.on would be the logical pin to trigger the fan and actual spindle output.

As stated in the manual, on-delay is the time the timedelay.N.in signal must be on before the output goes high.  If the spindle is only on for 20 seconds, the time-delay won't turn on in the below example.  When the time delay input turns off, the off-delay setting keeps the output high until the off-delay time runs down.

#SPINDLE FAN
setp    timedelay.1.on-delay    30
setp    timedelay.1.off-delay   120
net  SPINDLE-ENABLE             =>  [HMOT](CARD0).7i76.0.0.spinena
net SPINDLE-ENABLE              =>  timedelay.1.in
net SPINDLE-FAN                      <=  timedelay.1.out
net SPINDLE-FAN                      =>  [HMOT](CARD0).7i76.0.0.output-05

If you are using spindle.N.fwd and/or spindle.N.rev instead of spindleN.on to command the spindle, then an or2 component can be used to trigger the time-delay input.  Would look something like this:

#SPINDLE FAN
setp    timedelay.1.on-delay    30
setp    timedelay.1.off-delay   120
net  SPINDLE-FWD                    <=  spindle.0.forward
net  SPINDLE-FWD                     =>  or2.N.in0
net  SPINDLE-REV                     <=  spindle.0.reverse
net  SPINDLE-REV                      =>  or2.N.in1
net  SPINDLE-ON                        <=  or2.N.out
net SPINDLE-ON                         =>  timedelay.1.in
net SPINDLE-FAN                      <=  timedelay.1.out
net SPINDLE-FAN                      =>  [HMOT](CARD0).7i76.0.0.output-05

18 Mar 2024 08:59

Motor following error 7i76e

Category: PnCConf Wizard

Thanks.

But I get the same error when I copy the machine-configuration to a pc and run it from the pc. Its an older pc though (~20 years old).
18 Mar 2024 08:05

Motor following error 7i76e

Category: PnCConf Wizard

Laptops aren't usually recommended, this is pretty much stated in the docs.
18 Mar 2024 07:41

Motor following error 7i76e

Category: PnCConf Wizard

Hi,

I'm using PlasmaC with an old i3-Laptop and an Mesa 7i76e-Card on my cnc-plasma-cutter.
I use 2 Motors on the Y-Axis. Sometimes I get an Motor following error.

The Jitter-values are not very good >200 000. But LinuxCNC only sends the position to the Mesa-Card and the mesa-Card takes care of the realtime-stuff with the fpga-chip. Did I understand that correcty ? So jitter isn't really important for the 7i76e-card ?

Maybe the configuration isn't correct ?
The ini-file is attached.

Thanks for your help...
17 Mar 2024 20:31

Help With Z-Axis Config

Category: Basic Configuration

What did I do wrong on this Z -Axis configuration?

180mm travel distance. Single limit/home switch at the top.  Positive travels towards switch at the top and negative travels towards the bottom.

[AXIS_Z]
 MAX_VELOCITY = 12.0
 MAX_ACCELERATION = 120.0
 MIN_LIMIT = -180.0
 MAX_LIMIT = 0 
 
 [JOINT_3]
 TYPE = LINEAR
 HOME = 8.0
 FERROR = 10.0
 MIN_FERROR = 1.0
 MAX_VELOCITY = 20.0
 MAX_ACCELERATION = 120.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 = 25
 STEPGEN_MAXACCEL = 150.00
 P = 1000.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 = -320.0
 MIN_LIMIT = -180.0
 MAX_LIMIT = 0 
 HOME_OFFSET = -3.200000
 HOME_SEARCH_VEL = 2.400000
 HOME_LATCH_VEL = -0.020000
 HOME_FINAL_VEL = 2.800000
 HOME_USE_INDEX = NO
 HOME_IGNORE_LIMITS = YES
HOME_SEQUENCE = 0

*******************
 #  AXIS Z JOINT 3
 #*******************
 
 setp   pid.z.Pgain     [JOINT_3]P
 setp   pid.z.Igain     [JOINT_3]I
 setp   pid.z.Dgain     [JOINT_3]D
 setp   pid.z.bias      [JOINT_3]BIAS
 setp   pid.z.FF0       [JOINT_3]FF0
setp   pid.z.FF1       [JOINT_3]FF1
 setp   pid.z.FF2       [JOINT_3]FF2
 setp   pid.z.deadband  [JOINT_3]DEADBAND
 setp   pid.z.maxoutput [JOINT_3]MAX_OUTPUT
 setp   pid.z.error-previous-target true
 # This setting is to limit bogus stepgen
 # velocity corrections caused by position
 # feedback sample time jitter.
 setp   pid.z.maxerror 0.012700
 
 net z-index-enable  =>  pid.z.index-enable
 net z-enable        =>  pid.z.enable
 net z-pos-cmd       =>  pid.z.command
 net z-pos-fb        =>  pid.z.feedback
 net z-output        <=  pid.z.output
 
 # Step Gen signals/setup
 setp   hm2_7i76e.0.stepgen.03.dirsetup        [JOINT_3]DIRSETUP
 setp   hm2_7i76e.0.stepgen.03.dirhold         [JOINT_3]DIRHOLD
 setp   hm2_7i76e.0.stepgen.03.steplen         [JOINT_3]STEPLEN
 setp   hm2_7i76e.0.stepgen.03.stepspace       [JOINT_3]STEPSPACE
 setp   hm2_7i76e.0.stepgen.03.position-scale  [JOINT_3]STEP_SCALE
 setp   hm2_7i76e.0.stepgen.03.step_type        0   
 setp   hm2_7i76e.0.stepgen.03.control-type     1   
 setp   hm2_7i76e.0.stepgen.03.maxaccel         [JOINT_3]STEPGEN_MAXACCEL
 setp   hm2_7i76e.0.stepgen.03.maxvel           [JOINT_3]STEPGEN_MAXVEL
 
 # ---closedloop stepper signals---
 net z-pos-cmd    <= joint.3.motor-pos-cmd
 net z-vel-cmd    <= joint.3.vel-cmd
 net z-output     => hm2_7i76e.0.stepgen.03.velocity-cmd
 net z-pos-fb     <= hm2_7i76e.0.stepgen.03.position-fb
 net z-pos-fb     => joint.3.motor-pos-fb
 net z-enable     <= joint.3.amp-enable-out
 net z-enable     => hm2_7i76e.0.stepgen.03.enable
 
 # ---setup home / limit switch signals---
 net max-home-z  => joint.3.home-sw-in
 net max-home-z  => joint.3.pos-lim-sw-in
 net z-neg-limit => joint.3.neg-lim-sw-in
 
16 Mar 2024 16:44

Mesa 7i76E HY Spindle Coolant Best Practices

Category: General LinuxCNC Questions

spumco could you share some code on this idea of using timedelay based on the spindle on?

I can't quite wrap my head on it all. I seem to be missing something.
15 Mar 2024 15:56
Replied by PCW on topic Spindle Drive 7i76e

Spindle Drive 7i76e

Category: Driver Boards

How is the 7I76E wired to the VFD?
 
Displaying 346 - 360 out of 568 results.
Time to create page: 0.618 seconds
Powered by Kunena Forum