Mesa 5i20 - 7I52S support
- cmorley
- Offline
- Moderator
-
- Posts: 7884
- Thank you received: 2131
if you just look at the counts display that open loop automatically shows that is not the same
Please Log in or Create an account to join the conversation.
- boyzo
- Offline
- Senior Member
-
- Posts: 76
- Thank you received: 3
Please Log in or Create an account to join the conversation.
- cmorley
- Offline
- Moderator
-
- Posts: 7884
- Thank you received: 2131
I assume at this point that you are getting a analog voltage output?
Iseems to indicate a problem with the firmware and/or daugher board hardware.
I think Peter already said he will check the firmware.
As you said you tried with 7i33 , it seems the 5i20 card is fine.
I will check your HAL file when I'm off work

Please Log in or Create an account to join the conversation.
- PCW
-
- Away
- Moderator
-
- Posts: 18527
- Thank you received: 5076
Please Log in or Create an account to join the conversation.
- boyzo
- Offline
- Senior Member
-
- Posts: 76
- Thank you received: 3
Please Log in or Create an account to join the conversation.
- PCW
-
- Away
- Moderator
-
- Posts: 18527
- Thank you received: 5076
Please Log in or Create an account to join the conversation.
- boyzo
- Offline
- Senior Member
-
- Posts: 76
- Thank you received: 3
Please Log in or Create an account to join the conversation.
- boyzo
- Offline
- Senior Member
-
- Posts: 76
- Thank you received: 3
I find that X-axis is controlled by 7I52S P2 COM3. I connected GND to GND, +5V to +5V, 7i52 Pin 3 to VSD/E Pin 3 (PWM), and 7i52 Pin 4 to VSD/E Pin 9 (enable).
Then I use pncconf open loop test trying to run the motor, but the motor did not turn. I noticed that Enable pin from 7I52 is inverted, in the drawing this pin is not inverted.
Is my connection correct? And inverted Enable? If yes, then I need to check VSD/E Granite devices.
Please Log in or Create an account to join the conversation.
- PCW
-
- Away
- Moderator
-
- Posts: 18527
- Thank you received: 5076
outputs to improve noise immunity (by tying HSIN+ to PWMOUT+ and HSIN- to PWMOUT- or perhaps the reverse to reverse directions)
The Enable signal on the drive is active high so chose the 7I52s enable output thats low at startup (Before even running EMC)
Forgot to say, you also need to enable the outputs (for channel 0 and 3) by setting GPIO 0 and GPIO 23 low
(page 10 in the manual)
Please Log in or Create an account to join the conversation.
- boyzo
- Offline
- Senior Member
-
- Posts: 76
- Thank you received: 3
If the BIAS is added, it should be 234 (so a -234 mm/sec velocity request from the PID output is translated to a 0 PWM value)
In addition the PWM scale should be set to 468 and the PID components MAX_OUTPUT should be set to 234 (that way the PIDs requested -234 velocity generates 0 PWM and +234 velocity generates 468 = full scale PWM)
I'm not sure how they are applied but there are already provisions output offsetting (OUTPUT_OFFSET)
Note that if it works it would have the opposite sign of your (added) BIAS (-234) since it its subtracted
Need help configuring the axis.
This is how drive expect PWM signals:
0% duty = -100% speed or torque
25% duty = -50% speed or torque
50% duty = 0 speed or torque
75% duty = +50% speed or torque
100% duty = +100% speed or torque
I can run y.axis in pncconf, but only in one direction. Assume DAC output scale = 10, then in Open loop test, Fast DAC speed of 5.1 move axis slow to one direction (both + and - button) and 4.9 to opposite direction. Increasing/decreasing this values increase speed.
In EMC, depend of configuration, I always get following error. This is my configuration:
#*******************
# AXIS Y
#*******************
setp pid.y.Pgain [AXIS_1]P
setp pid.y.Igain [AXIS_1]I
setp pid.y.Dgain [AXIS_1]D
setp pid.y.bias [AXIS_1]BIAS
setp pid.y.FF0 [AXIS_1]FF0
setp pid.y.FF1 [AXIS_1]FF1
setp pid.y.FF2 [AXIS_1]FF2
setp pid.y.deadband [AXIS_1]DEADBAND
setp pid.y.maxoutput [AXIS_1]MAX_OUTPUT
net y-index-enable <=> pid.y.index-enable
net y-enable => pid.y.enable
net y-output => pid.y.output
net y-pos-cmd => pid.y.command
net y-pos-fb => pid.y.feedback
# ---PWM Generator signals/setup---
setp hm2_5i20.0.pwmgen.02.output-type 1
I think this should be 4, but changing this does not chane nothing
setp hm2_5i20.0.pwmgen.02.scale [AXIS_1]OUTPUT_SCALE
net y-output => hm2_5i20.0.pwmgen.02.value
net y-pos-cmd axis.1.motor-pos-cmd
net y-enable axis.1.amp-enable-out => hm2_5i20.0.pwmgen.02.enable
#********************
# Axis Y
#********************
[AXIS_1]
TYPE = LINEAR
HOME = 0.0
FERROR = 0.005
MIN_FERROR = 0.0005
MAX_VELOCITY = 46.6666666667
MAX_ACCELERATION = 44.0
P = 500.0
I = 30.0
D = 0.0
FF0 = 0.0
FF1 = 0.0
FF2 = 0.0
BIAS = 234.0
DEADBAND = 0.0
ENCODER_SCALE = 1000.0
OUTPUT_SCALE = 468.0
OUTPUT_OFFSET = -234.0
MAX_OUTPUT = 234.0
MIN_LIMIT = -100.01
MAX_LIMIT = 800.0
HOME_OFFSET = 0.0
Please Log in or Create an account to join the conversation.