Mesa 7i95T PID tuning for velocity mode
according to JT the correct way to configure Mesa 7i95t (step/dir) is using velocity mode with feedback from servos. This involves tuning PID loop for velocity mode. I am using Delta B3L 400W servos with step/dir interface.
I succeeded in tuning PID to sufficient error with peaks at ~0.005mm at 12000mm/min and 1000mm/s^2 accels. This was done at 1000steps/mm stepping rate and the encoder scaled to same 1000pulses/rev. I decided to increase the stepping rate and encoder to 10000steps(pulses)/mm.
This is where I get issues: At maximum velocity 3000mm/min everyhing looks fine:
however if I increased jog velocity to 3300mm/min this happened:
I am suspicious, that this has to do with encoder read rate of Mesa 7i95t.
in manual they state:
MAXIMUM ENCODER COUNT RATE
The 7I95 uses multiplexed encoder signals to save FPGA pins. The multiplexing
rate will determine the maximum encoder count rate. Default multiplexing rate with
HostMot2 firmware is ClockLow /16,or approximately 6 MHz giving a resolvable count rate
of 3 MHz.
But according to my calculations I should be fine with speeds up to 300mm/s (10000*300=3 000 000).
I also noticed, that at rate 3300mm/min the 10mm jog resulted into ~17mm jog on the machine.
at 3000mm/min the 10mm jog was perfectly accurate.
Thanks
Attachments:
Please Log in or Create an account to join the conversation.
Please Log in or Create an account to join the conversation.
I have learned from manual, that encoder filter = 1 requires 15 encoders counts to start counting. 0 makes it 3 encoder counts. But I don’t see how that impacts my issue.
Please Log in or Create an account to join the conversation.
on the A,B,IDX pins. If the time (15*sample_clock_period if filter is true and 3*sample_clock_period
if filter is false) is greater than the width of the A or B signals, the inputs will not be recognized
Please Log in or Create an account to join the conversation.
But the homing does not work properly.
Homing starts fine, all axes move towards home/limit switch and back off to index, but after that all axes quickly moves back to initial position, but now machine is homed. The initial position is servo feedback postion 0 (as where the servo driver was booted)
Did anyone come across similar behavior?
is there anything misconfigured? It looks like all axis get command to go to 0 position after homing, which is derived from servo drive encoder position..
I can record a video for reference.
Please Log in or Create an account to join the conversation.
files would help diagnose homing issues.
Please Log in or Create an account to join the conversation.
Hardware is
Delta B3-0421-L servos with step/dir control
LJ12A3-4-Z/AY proximity switch (PNP NC 4mm 6-36VDC)
and you can find the hal and ini files in attachment
Full config: github.com/zmrdko/mesa_7i95t_config_PID
Please Log in or Create an account to join the conversation.
share.icloud.com/photos/019SgQBlQaHNoyiwONE8rdMlA
Secod video with X axis moved to the center initially:
share.icloud.com/photos/0c7qN8_TmozwL2xqIR1bKT8MA
Please Log in or Create an account to join the conversation.
(and use stepgen index enable if you use stepgen feedback)
Please Log in or Create an account to join the conversation.
Please Log in or Create an account to join the conversation.