G33.1 - no position reset when index detects

More
6 years 9 months ago #153990 by Cynas
Hi, I'm trying to run rigid tapping g33.1 but I've found a problem.

All readings in Hal Meter and Hal Scope are only correct when starting the G33.1 cycle the position counter does not reset.

After starting G33.1, it waits for the index signal and receives it, and then quickly moves down the distance (position * thread pitch).
Code:
motion.spindle-revs increases by 1 for one spindle revolution

the index signal receives from the hall sensor

my hal:
Code:
#******************* # SPINDLE S #******************* setp pid.s.Pgain [SPINDLE_9]P setp pid.s.Igain [SPINDLE_9]I setp pid.s.Dgain [SPINDLE_9]D setp pid.s.bias [SPINDLE_9]BIAS setp pid.s.FF0 [SPINDLE_9]FF0 setp pid.s.FF1 [SPINDLE_9]FF1 setp pid.s.FF2 [SPINDLE_9]FF2 setp pid.s.deadband [SPINDLE_9]DEADBAND setp pid.s.maxoutput [SPINDLE_9]MAX_OUTPUT setp pid.s.error-previous-target true net spindle-index-enable <=> pid.s.index-enable net spindle-enable => pid.s.enable net spindle-vel-cmd-rpm-abs => pid.s.command net spindle-vel-fb-rpm-abs => pid.s.feedback net spindle-output <= pid.s.output # ---digital potentionmeter output signals/setup--- setp hm2_7i76e.0.7i76.0.0.spinout-minlim [SPINDLE_9]OUTPUT_MIN_LIMIT setp hm2_7i76e.0.7i76.0.0.spinout-maxlim [SPINDLE_9]OUTPUT_MAX_LIMIT setp hm2_7i76e.0.7i76.0.0.spinout-scalemax [SPINDLE_9]OUTPUT_SCALE net spindle-output => hm2_7i76e.0.7i76.0.0.spinout #net spindle-enable => hm2_7i76e.0.7i76.0.0.spinena net spindle-enable => or2.0.in0 net spindle-enable-oriented => or2.0.in1 net spindle-enable-or2.0 or2.0.out => timedelay.1.in net opoznienie-spindle-enable timedelay.1.out => hm2_7i76e.0.7i76.0.0.spinena net spindle-ccw => hm2_7i76e.0.7i76.0.0.spindir # ---Encoder feedback signals/setup--- #setp hm2_7i76e.0.encoder.00.counter-mode 0 setp hm2_7i76e.0.encoder.00.counter-mode 1 setp hm2_7i76e.0.encoder.00.filter 1 setp hm2_7i76e.0.encoder.00.index-invert 1 setp hm2_7i76e.0.encoder.00.index-mask 0 setp hm2_7i76e.0.encoder.00.index-mask-invert 0 setp hm2_7i76e.0.encoder.00.scale [SPINDLE_9]ENCODER_SCALE net spindle-revs <= hm2_7i76e.0.encoder.00.position net spindle-vel-fb-rps <= hm2_7i76e.0.encoder.00.velocity #net spindle-index-enable <=> hm2_7i76e.0.encoder.00.index-enable # ---setup spindle control signals--- net spindle-speed-cmd-rps <= motion.spindle-speed-cmd-rps net spindle-vel-cmd-rps <= motion.spindle-speed-out-rps net spindle-vel-cmd-rps-abs <= motion.spindle-speed-out-rps-abs net spindle-vel-cmd-rpm <= motion.spindle-speed-out net spindle-vel-cmd-rpm-abs <= motion.spindle-speed-out-abs net spindle-enable <= motion.spindle-on net spindle-cw <= motion.spindle-forward net spindle-ccw <= motion.spindle-reverse net spindle-brake <= motion.spindle-brake net spindle-revs => motion.spindle-revs net spindle-at-speed => motion.spindle-at-speed net spindle-vel-fb-rps => motion.spindle-speed-in #net spindle-index-enable <=> motion.spindle-index-enable net spindle-index-enable encoder.0.index-enable <=> motion.spindle-index-enable net spindle-index encoder.0.phase-Z net spindle-index hm2_7i76e.0.7i76.0.0.input-12-not net spindle-orient <= motion.spindle-orient net spindle-is-oriented => motion.spindle-is-oriented net spindle-locked <= motion.spindle-locked # ---Setup spindle at speed signals--- sets spindle-at-speed true

my ini:
Code:
ENCODER_SCALE = -1000

The same problem occurs when using g76

It looks like the Z movement is trying to catch up with the position of the spindle, which is being added all the time. After starting g33.1 it can still have a very high value.

Did I miss something in the configuration or maybe my thinking is wrong?

Please Log in to join the conversation.

More
6 years 9 months ago #153993 by PCW
For the hardware index to work, the index signal must connect to the encoder input on the 7I76E.

Please Log in to join the conversation.

More
6 years 9 months ago #153995 by Cynas
How can I make such a connection in the hal ?

Please Log in to join the conversation.

More
6 years 9 months ago #153996 by PCW
It has to be done in hardware, not hal, that is, you must connect the index signal to the 7I76E's index input

This can be done in hal with a software encoder counter but a software encoder will not work well with a 1000 count/turn encoder

Please Log in to join the conversation.

More
6 years 9 months ago #153997 by Cynas
If I use a 5V encoder for A, B signals. Can I connect a 24 V sensor output in place of the Index?

Do I have to use a transition system that converts 24V to 5V?

I don't see this information anywhere in manual 7i76E

Please Log in to join the conversation.

More
6 years 9 months ago #153998 by PCW
You would need to translate the voltage from the sensor to 5V
(voltages in excess of 12V will damage the 7I76E encoder inputs)

This translation could be done with an opto-coupler or similar device

Please Log in to join the conversation.

More
6 years 9 months ago #153999 by Cynas
I will try to build such a system

Thank you

Please Log in to join the conversation.

More
6 years 9 months ago #154018 by Cynas
I made a simple circuit with an optocoupler.
On the table works, when there will be a moment of free time, check it on the machine.

Attachment not found


Attachment not found




Thank you again

Please Log in to join the conversation.

More
6 years 9 months ago #154312 by Cynas
One picture expresses more than 1000 words :)

Please Log in to join the conversation.

More
6 years 9 months ago #154326 by Clive S
Very nice.
Would you mind posting your config files.

Please Log in to join the conversation.

Time to create page: 0.118 seconds
Powered by Kunena Forum