7i77 not sending any voltage on TB5 pins 3 and 4
- scubawarm
- Topic Author
- Offline
- Premium Member
Less
More
- Posts: 96
- Thank you received: 2
01 Oct 2018 21:17 #118320
by scubawarm
7i77 not sending any voltage on TB5 pins 3 and 4 was created by scubawarm
I rewired everything and got new DMM drives. They work great with the included utility. And sit very still still with the LinuxCNC GUIs.
BUT when I issue a command to move when I go past the MIN_FERROR value I error out because the card is not sending any command voltage to the drivers.
I did not have this problem when I had the old drives and motors... They just wouldn't sit still... I'm including a little of a set of drives info of the INI and HAL... as I guess it has to be in that somehow.... But is pretty basic stuff generated by PNCConf
[AXIS_Y]
MAX_VELOCITY = 1.0
MAX_ACCELERATION = 30.0
MIN_LIMIT = -1.001
MAX_LIMIT = 144.0
[JOINT_2]
TYPE = LINEAR
HOME = 0.0
FERROR = 10
MIN_FERROR = 1
MAX_VELOCITY = 1.0
MAX_ACCELERATION = 30.0
P = 50.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
ENCODER_SCALE = -34944.0
OUTPUT_SCALE = -10.0
OUTPUT_MIN_LIMIT = -10.0
OUTPUT_MAX_LIMIT = 10.0
MIN_LIMIT = -1.001
MAX_LIMIT = 144.0
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 0
HOME_LATCH_VEL = 0
HOME_USE_INDEX = NO
HOME_SEQUENCE = -1
HOME equals to HOME_OFFSET
#*******************
# AXIS Y JOINT 2
#*******************
setp pid.y.Pgain [JOINT_2]P
setp pid.y.Igain [JOINT_2]I
setp pid.y.Dgain [JOINT_2]D
setp pid.y.bias [JOINT_2]BIAS
setp pid.y.FF0 [JOINT_2]FF0
setp pid.y.FF1 [JOINT_2]FF1
setp pid.y.FF2 [JOINT_2]FF2
setp pid.y.deadband [JOINT_2]DEADBAND
setp pid.y.maxoutput [JOINT_2]MAX_OUTPUT
setp pid.y.error-previous-target true
net y-index-enable <=> pid.y.index-enable
net y-enable => pid.y.enable
net y-pos-cmd => pid.y.command
net y-vel-cmd => pid.y.command-deriv
net y-pos-fb => pid.y.feedback
net y-output <= pid.y.output
# ---PWM Generator signals/setup---
setp hm2_7i92.0.7i77.0.1.analogout2-scalemax [JOINT_2]OUTPUT_SCALE
setp hm2_7i92.0.7i77.0.1.analogout2-minlim [JOINT_2]OUTPUT_MIN_LIMIT
setp hm2_7i92.0.7i77.0.1.analogout2-maxlim [JOINT_2]OUTPUT_MAX_LIMIT
net y-output => hm2_7i92.0.7i77.0.1.analogout2
net y-pos-cmd <= joint.2.motor-pos-cmd
net y-enable <= joint.2.amp-enable-out
# ---Encoder feedback signals/setup---
setp hm2_7i92.0.encoder.02.counter-mode 0
setp hm2_7i92.0.encoder.02.filter 1
setp hm2_7i92.0.encoder.02.index-invert 0
setp hm2_7i92.0.encoder.02.index-mask 0
setp hm2_7i92.0.encoder.02.index-mask-invert 0
setp hm2_7i92.0.encoder.02.scale [JOINT_2]ENCODER_SCALE
net y-pos-fb <= hm2_7i92.0.encoder.02.position
net y-vel-fb <= hm2_7i92.0.encoder.02.velocity
net y-pos-fb => joint.2.motor-pos-fb
net y-index-enable joint.2.index-enable <=> hm2_7i92.0.encoder.02.index-enable
net y-pos-rawcounts <= hm2_7i92.0.encoder.02.rawcounts
# ---setup home / limit switch signals---
net y-home-sw => joint.2.home-sw-in
net y-neg-limit => joint.2.neg-lim-sw-in
net y-pos-limit => joint.2.pos-lim-sw-in
BUT when I issue a command to move when I go past the MIN_FERROR value I error out because the card is not sending any command voltage to the drivers.
I did not have this problem when I had the old drives and motors... They just wouldn't sit still... I'm including a little of a set of drives info of the INI and HAL... as I guess it has to be in that somehow.... But is pretty basic stuff generated by PNCConf
[AXIS_Y]
MAX_VELOCITY = 1.0
MAX_ACCELERATION = 30.0
MIN_LIMIT = -1.001
MAX_LIMIT = 144.0
[JOINT_2]
TYPE = LINEAR
HOME = 0.0
FERROR = 10
MIN_FERROR = 1
MAX_VELOCITY = 1.0
MAX_ACCELERATION = 30.0
P = 50.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
ENCODER_SCALE = -34944.0
OUTPUT_SCALE = -10.0
OUTPUT_MIN_LIMIT = -10.0
OUTPUT_MAX_LIMIT = 10.0
MIN_LIMIT = -1.001
MAX_LIMIT = 144.0
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 0
HOME_LATCH_VEL = 0
HOME_USE_INDEX = NO
HOME_SEQUENCE = -1
HOME equals to HOME_OFFSET
#*******************
# AXIS Y JOINT 2
#*******************
setp pid.y.Pgain [JOINT_2]P
setp pid.y.Igain [JOINT_2]I
setp pid.y.Dgain [JOINT_2]D
setp pid.y.bias [JOINT_2]BIAS
setp pid.y.FF0 [JOINT_2]FF0
setp pid.y.FF1 [JOINT_2]FF1
setp pid.y.FF2 [JOINT_2]FF2
setp pid.y.deadband [JOINT_2]DEADBAND
setp pid.y.maxoutput [JOINT_2]MAX_OUTPUT
setp pid.y.error-previous-target true
net y-index-enable <=> pid.y.index-enable
net y-enable => pid.y.enable
net y-pos-cmd => pid.y.command
net y-vel-cmd => pid.y.command-deriv
net y-pos-fb => pid.y.feedback
net y-output <= pid.y.output
# ---PWM Generator signals/setup---
setp hm2_7i92.0.7i77.0.1.analogout2-scalemax [JOINT_2]OUTPUT_SCALE
setp hm2_7i92.0.7i77.0.1.analogout2-minlim [JOINT_2]OUTPUT_MIN_LIMIT
setp hm2_7i92.0.7i77.0.1.analogout2-maxlim [JOINT_2]OUTPUT_MAX_LIMIT
net y-output => hm2_7i92.0.7i77.0.1.analogout2
net y-pos-cmd <= joint.2.motor-pos-cmd
net y-enable <= joint.2.amp-enable-out
# ---Encoder feedback signals/setup---
setp hm2_7i92.0.encoder.02.counter-mode 0
setp hm2_7i92.0.encoder.02.filter 1
setp hm2_7i92.0.encoder.02.index-invert 0
setp hm2_7i92.0.encoder.02.index-mask 0
setp hm2_7i92.0.encoder.02.index-mask-invert 0
setp hm2_7i92.0.encoder.02.scale [JOINT_2]ENCODER_SCALE
net y-pos-fb <= hm2_7i92.0.encoder.02.position
net y-vel-fb <= hm2_7i92.0.encoder.02.velocity
net y-pos-fb => joint.2.motor-pos-fb
net y-index-enable joint.2.index-enable <=> hm2_7i92.0.encoder.02.index-enable
net y-pos-rawcounts <= hm2_7i92.0.encoder.02.rawcounts
# ---setup home / limit switch signals---
net y-home-sw => joint.2.home-sw-in
net y-neg-limit => joint.2.neg-lim-sw-in
net y-pos-limit => joint.2.pos-lim-sw-in
Please Log in or Create an account to join the conversation.
- PCW
- Away
- Moderator
Less
More
- Posts: 17861
- Thank you received: 4774
01 Oct 2018 21:25 #118321
by PCW
Replied by PCW on topic 7i77 not sending any voltage on TB5 pins 3 and 4
I dont see anything driving hm2_7i92.0.7i77.0.1.analogena
Please Log in or Create an account to join the conversation.
- scubawarm
- Topic Author
- Offline
- Premium Member
Less
More
- Posts: 96
- Thank you received: 2
01 Oct 2018 22:34 #118323
by scubawarm
Replied by scubawarm on topic 7i77 not sending any voltage on TB5 pins 3 and 4
I had this above for joint 0. Which enables it for all correct?
net x-output => hm2_7i92.0.7i77.0.1.analogout0
net x-pos-cmd <= joint.0.motor-pos-cmd
net x-enable <= joint.0.amp-enable-out
# enable _all_ sserial pwmgens
net x-enable => hm2_7i92.0.7i77.0.1.analogena
When I look at Hal Config and move between 0.99 and back to zero
The hm2_7i92.0.7i77.0.1.analogout2 moves between 0 and 49.5
What pin can I watch if there is voltage vs trying to use a physical meter?
net x-output => hm2_7i92.0.7i77.0.1.analogout0
net x-pos-cmd <= joint.0.motor-pos-cmd
net x-enable <= joint.0.amp-enable-out
# enable _all_ sserial pwmgens
net x-enable => hm2_7i92.0.7i77.0.1.analogena
When I look at Hal Config and move between 0.99 and back to zero
The hm2_7i92.0.7i77.0.1.analogout2 moves between 0 and 49.5
What pin can I watch if there is voltage vs trying to use a physical meter?
Please Log in or Create an account to join the conversation.
- PCW
- Away
- Moderator
Less
More
- Posts: 17861
- Thank you received: 4774
01 Oct 2018 23:28 #118325
by PCW
Replied by PCW on topic 7i77 not sending any voltage on TB5 pins 3 and 4
Yes, hm2_7i92.0.7i77.0.1.analogena enables channels 0..4
The hm2_7i92.0.7i77.0.1.analogoutN pins will indicate voltage _if_ the output scale is 10 (and the output is not bounded by the minlim or maxlim values)
I would however disconnect any load and measure at the TB5 output pins with a voltmeter before proceeding
The hm2_7i92.0.7i77.0.1.analogoutN pins will indicate voltage _if_ the output scale is 10 (and the output is not bounded by the minlim or maxlim values)
I would however disconnect any load and measure at the TB5 output pins with a voltmeter before proceeding
Please Log in or Create an account to join the conversation.
- scubawarm
- Topic Author
- Offline
- Premium Member
Less
More
- Posts: 96
- Thank you received: 2
01 Oct 2018 23:51 #118327
by scubawarm
Replied by scubawarm on topic 7i77 not sending any voltage on TB5 pins 3 and 4
I did check with a voltmeter while connected to the drive, but will try with it disconnected.
Why do I get a value of 49.5 at 0.99 inch and 0 at 0 on analogoutN? Seems more like a position than a speed voltage +-10
Why do I get a value of 49.5 at 0.99 inch and 0 at 0 on analogoutN? Seems more like a position than a speed voltage +-10
Please Log in or Create an account to join the conversation.
- PCW
- Away
- Moderator
Less
More
- Posts: 17861
- Thank you received: 4774
02 Oct 2018 00:03 - 02 Oct 2018 00:06 #118329
by PCW
Replied by PCW on topic 7i77 not sending any voltage on TB5 pins 3 and 4
The PID output is scaled in volts if you use the default 10 output scale
it sounds like you have a P value of 50 so a .99 inch error will result in a 49.5 volt correction voltage
(of course this is bounded by the hardware and the min/max limit settings).
If you set the output scale to the axis velocity at 10V (in machine units per second) and adjust the min/max limits
to accomodate the new range, the PID output it will be scaled in velocity. This has the advantage of "normalizing"
the PID numbers so everything is in sensible machine units and FF1 is known (=1.0)
it sounds like you have a P value of 50 so a .99 inch error will result in a 49.5 volt correction voltage
(of course this is bounded by the hardware and the min/max limit settings).
If you set the output scale to the axis velocity at 10V (in machine units per second) and adjust the min/max limits
to accomodate the new range, the PID output it will be scaled in velocity. This has the advantage of "normalizing"
the PID numbers so everything is in sensible machine units and FF1 is known (=1.0)
Last edit: 02 Oct 2018 00:06 by PCW.
The following user(s) said Thank You: scubawarm
Please Log in or Create an account to join the conversation.
- scubawarm
- Topic Author
- Offline
- Premium Member
Less
More
- Posts: 96
- Thank you received: 2
02 Oct 2018 00:33 - 02 Oct 2018 01:40 #118330
by scubawarm
Replied by scubawarm on topic 7i77 not sending any voltage on TB5 pins 3 and 4
Ok... I'm not sure I got all that.. but here goes
MAX_VELOCITY = 1.0
MAX_ACCELERATION = 30.0
(Leave the velocity at 60in per minute for now, but reducing acceleration to 12.0)
P = 50.0
(Changing to 10)
FF1 = 1.0
(Leaving at 1)
DEADBAND = 0.0
(Changing to 0.001)
MAX_OUTPUT = 0
(Is this correct @ zero? I don't think so this should be 10 and is my problem why I'm not getting any voltage to move the motors.)
ENCODER_SCALE = -34944.0
OUTPUT_SCALE = -10.0
OUTPUT_MIN_LIMIT = -10.0
OUTPUT_MAX_LIMIT = 10.0
(Leaving all these as is)
MAX_VELOCITY = 1.0
MAX_ACCELERATION = 30.0
(Leave the velocity at 60in per minute for now, but reducing acceleration to 12.0)
P = 50.0
(Changing to 10)
FF1 = 1.0
(Leaving at 1)
DEADBAND = 0.0
(Changing to 0.001)
MAX_OUTPUT = 0
(Is this correct @ zero? I don't think so this should be 10 and is my problem why I'm not getting any voltage to move the motors.)
ENCODER_SCALE = -34944.0
OUTPUT_SCALE = -10.0
OUTPUT_MIN_LIMIT = -10.0
OUTPUT_MAX_LIMIT = 10.0
(Leaving all these as is)
Last edit: 02 Oct 2018 01:40 by scubawarm.
Please Log in or Create an account to join the conversation.
- scubawarm
- Topic Author
- Offline
- Premium Member
Less
More
- Posts: 96
- Thank you received: 2
02 Oct 2018 19:38 #118374
by scubawarm
Replied by scubawarm on topic 7i77 not sending any voltage on TB5 pins 3 and 4
Yes the MAX_OUTPUT = 10 got me voltage, BUT...
It appears DYN4 drives logic for enabling and disabling the drives is still backwards... I found some old threads on this... crazy for something that should be so simple. They are looking at it, but I am not very optimistic about not having to find a NC relay to get this to work.
Only bright side is my failures with both sets of drives and motors, has me thinking I'm actually starting to understand all this. (not that I really wanted to... LOL)
It appears DYN4 drives logic for enabling and disabling the drives is still backwards... I found some old threads on this... crazy for something that should be so simple. They are looking at it, but I am not very optimistic about not having to find a NC relay to get this to work.
Only bright side is my failures with both sets of drives and motors, has me thinking I'm actually starting to understand all this. (not that I really wanted to... LOL)
Please Log in or Create an account to join the conversation.
- PCW
- Away
- Moderator
Less
More
- Posts: 17861
- Thank you received: 4774
02 Oct 2018 19:59 #118375
by PCW
Replied by PCW on topic 7i77 not sending any voltage on TB5 pins 3 and 4
Yeah, disables (rather then enables) on drives is fairly dumb
I can see why low power step motor drives do this so it can be ignored
and it will work if not connected. but defaulting to being enabled is not a
great thing on a servo drive.
I think a NC relay or form B OPTO is the easiest solution
I can see why low power step motor drives do this so it can be ignored
and it will work if not connected. but defaulting to being enabled is not a
great thing on a servo drive.
I think a NC relay or form B OPTO is the easiest solution
Please Log in or Create an account to join the conversation.
- COlger81
- Offline
- Elite Member
Less
More
- Posts: 187
- Thank you received: 6
15 Nov 2018 13:01 #120749
by COlger81
Replied by COlger81 on topic 7i77 not sending any voltage on TB5 pins 3 and 4
I also have drive inhibit as opposed to drive enable. The way my old control worked was as soon as estop was released, the drives were enabled. So their was no "machine on". Is their a way to enable and disable (turn machine on and off) machine along with estop? And are their issues that could come of this?
Please Log in or Create an account to join the conversation.
Moderators: PCW, jmelson
Time to create page: 0.073 seconds