7i76e with 7i85S to control 9 steppers

More
18 Oct 2018 18:28 #119009 by cogzoid
I edited the .ini to have 5000 nanoseconds for the pulses and still didn't get any action. Attached are some pictures of how it's all wired up. I double checked after the photos and found Dir+ and Dir- wires to have been swapped, but still no signals.

I'm a bit confused about the need for the 5V to P3, but I checked with and without that hooked up. Either way I see no change in any behaviors.

Should I try re-flashing with a firmware version without the 7i85?

I'm open to any other suggestions on things to check.
Attachments:

Please Log in or Create an account to join the conversation.

More
18 Oct 2018 18:47 #119010 by PCW
Another odd thing in the hal/ini files:

[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
COMM_WAIT = 0.010
SERVO_PERIOD = 5000000

Normally you would use a 1 ms servo thread not 5 ms so this becomes a problem with the default watchdog timeout:

setp hm2_7i76e.0.watchdog.timeout_ns 5000000

Please Log in or Create an account to join the conversation.

More
18 Oct 2018 19:26 #119015 by cogzoid
I changed the Servo Period to 1000000, no change.

Is it typical for the default values from PncConf to be non-functional? Because that makes this REALLY tough for me to figure out.

Please Log in or Create an account to join the conversation.

More
18 Oct 2018 19:51 - 18 Oct 2018 19:53 #119017 by cogzoid
Upon your suggestion I ran linuxcnc from the console. Sure enough the watchdog had bit! I changed the watchdog timeout from 5000000 to 10000000 and that got it working!

Thanks again for all of your help!
Last edit: 18 Oct 2018 19:53 by cogzoid.

Please Log in or Create an account to join the conversation.

More
19 Oct 2018 21:09 #119086 by cogzoid
Now I'm in the process of checking the daughter board outputs, so I can get the last 4 steppers working.

I did some copy/paste within .ini and .hal to add more axes: x,y,z,a,b,c. With 5 axes I have no problems and everything seems as expected. When I add the 6th axis(c) the startup procedure fails. There are 5 axes on the 7i76e and the other 4 are on the 7i85s that is hooked up. All 9 step/dir outputs show up in the hmid file, so the firmware seems correct. Perhaps there's a different way to identify the pins of the other step/dir pairs?

The error code is: "./StepperTest.hal:312: parameter or pin 'hm2_7i76e.0.stepgen.05.dirsetup' not found"

The line of code from the .hal file is:
setp   hm2_7i76e.0.stepgen.05.dirsetup        [AXIS_5]DIRSETUP

Any clues what I might be doing wrong?
Attachments:

Please Log in or Create an account to join the conversation.

More
19 Oct 2018 21:56 #119087 by PCW
change

loadrt hm2_eth board_ip="10.10.10.10" config="firmware=hm2/7i80/7i76e_7i76x1_7i85x1D.bit num_encoders=0 num_pwmgens=0 num_stepgens=5 sserial_port_0=00xxxx"

to
loadrt hm2_eth board_ip="10.10.10.10" config="firmware=hm2/7i80/7i76e_7i76x1_7i85x1D.bit num_encoders=0 num_pwmgens=0 num_stepgens=9 sserial_port_0=00xxxx"

Please Log in or Create an account to join the conversation.

More
19 Oct 2018 21:58 #119088 by cogzoid
That was it. Thanks again!

-D

Please Log in or Create an account to join the conversation.

More
05 Nov 2018 23:03 #120054 by cogzoid
I am making some great progress on my system. I've got all 9 steppers configured (mostly) and now I need to start wiring up homing and some external GPIO (controls for pneumatics, etc). But I've hit a snag...

Where can I find the pinouts for this thing?

Here is the relevant snipet from the .hal file:
# external output signals

# --- DOUT-00 ---
setp hm2_7i76e.0.gpio.034.is_output true
net dout-00 hm2_7i76e.0.gpio.034.out

# --- DOUT-01 ---
setp hm2_7i76e.0.gpio.035.is_output true
net dout-01 hm2_7i76e.0.gpio.035.out

# --- DOUT-02 ---
setp hm2_7i76e.0.gpio.036.is_output true
net dout-02 hm2_7i76e.0.gpio.036.out

# --- DOUT-03 ---
setp hm2_7i76e.0.gpio.037.is_output true
net dout-03 hm2_7i76e.0.gpio.037.out


# external input signals

# --- HOME-X ---
net home-x     <=  hm2_7i76e.0.gpio.017.in

# --- HOME-Y ---
net home-y     <=  hm2_7i76e.0.gpio.018.in

# --- HOME-Z ---
net home-z     <=  hm2_7i76e.0.gpio.019.in

# --- HOME-A ---
net home-a     <=  hm2_7i76e.0.gpio.020.in

# --- HOME-B ---
net home-b     <=  hm2_7i76e.0.gpio.021.in

# --- HOME-C ---
net home-c     <=  hm2_7i76e.0.gpio.022.in

# --- HOME-U ---
net home-u     <=  hm2_7i76e.0.gpio.023.in

# --- HOME-V ---
net home-v     <=  hm2_7i76e.0.gpio.024.in

How do I find out which pin is hm2_7i76e.0.gpio.017.in?

Here is the info from the 7i76e firmware:
hm2/hm2_7i76e.0: Smart Serial Firmware Version 43
hm2/hm2_7i76e.0: 51 I/O Pins used:
hm2/hm2_7i76e.0:     IO Pin 000 (P1-01): StepGen #0, pin Direction (Output)
hm2/hm2_7i76e.0:     IO Pin 001 (P1-14): StepGen #0, pin Step (Output)
hm2/hm2_7i76e.0:     IO Pin 002 (P1-02): StepGen #1, pin Direction (Output)
hm2/hm2_7i76e.0:     IO Pin 003 (P1-15): StepGen #1, pin Step (Output)
hm2/hm2_7i76e.0:     IO Pin 004 (P1-03): StepGen #2, pin Direction (Output)
hm2/hm2_7i76e.0:     IO Pin 005 (P1-16): StepGen #2, pin Step (Output)
hm2/hm2_7i76e.0:     IO Pin 006 (P1-04): StepGen #3, pin Direction (Output)
hm2/hm2_7i76e.0:     IO Pin 007 (P1-17): StepGen #3, pin Step (Output)
hm2/hm2_7i76e.0:     IO Pin 008 (P1-05): StepGen #4, pin Direction (Output)
hm2/hm2_7i76e.0:     IO Pin 009 (P1-06): StepGen #4, pin Step (Output)
hm2/hm2_7i76e.0:     IO Pin 010 (P1-07): IOPort
hm2/hm2_7i76e.0:     IO Pin 011 (P1-08): IOPort
hm2/hm2_7i76e.0:     IO Pin 012 (P1-09): IOPort
hm2/hm2_7i76e.0:     IO Pin 013 (P1-10): IOPort
hm2/hm2_7i76e.0:     IO Pin 014 (P1-11): IOPort
hm2/hm2_7i76e.0:     IO Pin 015 (P1-12): IOPort
hm2/hm2_7i76e.0:     IO Pin 016 (P1-13): IOPort
hm2/hm2_7i76e.0:     IO Pin 017 (P2-01): IOPort
hm2/hm2_7i76e.0:     IO Pin 018 (P2-14): IOPort
hm2/hm2_7i76e.0:     IO Pin 019 (P2-02): StepGen #8, pin Step (Output)
hm2/hm2_7i76e.0:     IO Pin 020 (P2-15): StepGen #8, pin Direction (Output)
hm2/hm2_7i76e.0:     IO Pin 021 (P2-03): StepGen #7, pin Step (Output)
hm2/hm2_7i76e.0:     IO Pin 022 (P2-16): StepGen #7, pin Direction (Output)
hm2/hm2_7i76e.0:     IO Pin 023 (P2-04): StepGen #6, pin Step (Output)
hm2/hm2_7i76e.0:     IO Pin 024 (P2-17): StepGen #6, pin Direction (Output)
hm2/hm2_7i76e.0:     IO Pin 025 (P2-05): StepGen #5, pin Step (Output)
hm2/hm2_7i76e.0:     IO Pin 026 (P2-06): StepGen #5, pin Direction (Output)
hm2/hm2_7i76e.0:     IO Pin 027 (P2-07): IOPort
hm2/hm2_7i76e.0:     IO Pin 028 (P2-08): IOPort
hm2/hm2_7i76e.0:     IO Pin 029 (P2-09): IOPort
hm2/hm2_7i76e.0:     IO Pin 030 (P2-10): IOPort
hm2/hm2_7i76e.0:     IO Pin 031 (P2-11): IOPort
hm2/hm2_7i76e.0:     IO Pin 032 (P2-12): IOPort
hm2/hm2_7i76e.0:     IO Pin 033 (P2-13): IOPort
hm2/hm2_7i76e.0:     IO Pin 034 (P3-01): IOPort
hm2/hm2_7i76e.0:     IO Pin 035 (P3-14): IOPort
hm2/hm2_7i76e.0:     IO Pin 036 (P3-02): IOPort
hm2/hm2_7i76e.0:     IO Pin 037 (P3-15): IOPort
hm2/hm2_7i76e.0:     IO Pin 038 (P3-03): IOPort
hm2/hm2_7i76e.0:     IO Pin 039 (P3-16): IOPort
hm2/hm2_7i76e.0:     IO Pin 040 (P3-04): IOPort
hm2/hm2_7i76e.0:     IO Pin 041 (P3-17): IOPort
hm2/hm2_7i76e.0:     IO Pin 042 (P3-05): IOPort
hm2/hm2_7i76e.0:     IO Pin 043 (P3-06): IOPort
hm2/hm2_7i76e.0:     IO Pin 044 (P3-07): IOPort
hm2/hm2_7i76e.0:     IO Pin 045 (P3-08): IOPort
hm2/hm2_7i76e.0:     IO Pin 046 (P3-09): IOPort
hm2/hm2_7i76e.0:     IO Pin 047 (P3-10): IOPort
hm2/hm2_7i76e.0:     IO Pin 048 (P3-11): IOPort
hm2/hm2_7i76e.0:     IO Pin 049 (P3-12): IOPort
hm2/hm2_7i76e.0:     IO Pin 050 (P3-13): IOPort
hm2/hm2_7i76e.0: registered

But for the life of me I can't figure out how to map the pins or the (P3-01) to the actual terminal block. It doesn't help that the 7i76e manual seems to have an entirely separate naming convention.

What am I missing?

Please Log in or Create an account to join the conversation.

More
05 Nov 2018 23:26 #120055 by PCW
For field I/O the names will be like

hm2_7i76e.0.7i76.0.0.input-00

hm2_7i76e.0.7i76.0.0.input-14-not

hm2_7i76e.0.7i76.0.0.output-07

These match the I/O names in the 7I76E manual

It looks like you dont have field power applied so they will not be
present yet

Please Log in or Create an account to join the conversation.

More
05 Nov 2018 23:43 - 05 Nov 2018 23:44 #120056 by cogzoid
I just did another PncConf session with a simple configuration to see what I could learn. I didn't realize that the Mesa board should be plugged in for this...

Anyway, I still get:
# external output signals

# --- DOUT-00 ---
setp hm2_7i76e.0.gpio.047.is_output true
net dout-00 hm2_7i76e.0.gpio.047.out

# --- DOUT-01 ---
setp hm2_7i76e.0.gpio.048.is_output true
net dout-01 hm2_7i76e.0.gpio.048.out

# --- DOUT-02 ---
setp hm2_7i76e.0.gpio.049.is_output true
net dout-02 hm2_7i76e.0.gpio.049.out

# --- DOUT-03 ---
setp hm2_7i76e.0.gpio.050.is_output true
net dout-03 hm2_7i76e.0.gpio.050.out


# external input signals

# --- HOME-X ---
net home-x     <=  hm2_7i76e.0.gpio.017.in

# --- HOME-Y ---
net home-y     <=  hm2_7i76e.0.gpio.018.in

# --- HOME-Z ---
net home-z     <=  hm2_7i76e.0.gpio.019.in

I've got 24V to the pins 5 and 8 on TB1 and 24V to Pin 22 and 23 on TB3. Is there something else I'm missing?

Am I supposed to manually change the pins to hm2_7i76e.0.7i76.0.0.input-00 and such in the .hal file?
Last edit: 05 Nov 2018 23:44 by cogzoid. Reason: [] vs

Please Log in or Create an account to join the conversation.

Moderators: cmorley
Time to create page: 0.109 seconds
Powered by Kunena Forum