2 steppers on one axis 5i25 - 7i76
- chadrat6458
- Topic Author
- Offline
- Senior Member
Less
More
- Posts: 45
- Thank you received: 0
21 Feb 2018 19:09 #106281
by chadrat6458
Replied by chadrat6458 on topic 2 steppers on one axis 5i25 - 7i76
I still can't get one of the steppers to move. I have attached the hal and ini file.
Please Log in or Create an account to join the conversation.
21 Feb 2018 20:42 - 21 Feb 2018 20:46 #106287
by DanMN
Replied by DanMN on topic 2 steppers on one axis 5i25 - 7i76
I went through this learning curve. There are a couple of foundational concepts to wrap your head around first.
Your machine will be a 3 axis machine, composed of FOUR individual "Joints". A joint, in this case is one motor, driving one screw/belt. You will need sections in both your HAL and INI files to configure a 2nd Joint for whichever axis will have two motors on it. In my case it's the Y axis, so my configuration files reference the two joints of the Y axis as :
HAL Config
#*******************
# JOINT Y1
#*******************
Settings, blah, blah
and
#*******************
# JOINT Y2
#*******************
Settings blah, blah
This allows all the signals and pin assignments for each joint to be made identical, so they both behave the same and both receive instructions when Y axis moves are commanded.
In the INI file, you need to start by correctly defining your geometry. Currently yours says:
GEOMETRY = xyz
Mine says:
GEOMETRY = XYYZ
You'll also need these:
KINS]
KINEMATICS = trivkins coordinates=XYYZ kinstype=BOTH
JOINTS = 4
[TRAJ]
COORDINATES = X Y Y Z
Then below, each joint has it's own configuration label, which I added an additional comment to, in order to clarify the usages:
#********************
# 2 Joints in Y Axis
# Joint 1 Y1
[JOINT_1]
#********************
Config settings for Y1 here.....
Then new section
#********************
# Joint 2 Y2
[JOINT_2]
#********************
Config settings for Y2 here...
Immediately after those two sections, a final section ties the tow JOINTS together into the single virtual Y AXIS -- this:
# Axis Y
#********************
[AXIS_Y]
MAX_VELOCITY = 50
MAX_ACCELERATION = 80
MIN_LIMIT = 20
MAX_LIMIT = 390
#********************
At the risk of embarrassment, I'll share my own files below. You can analyze them and see if it helps define the things that are missing from your setup.
Your machine will be a 3 axis machine, composed of FOUR individual "Joints". A joint, in this case is one motor, driving one screw/belt. You will need sections in both your HAL and INI files to configure a 2nd Joint for whichever axis will have two motors on it. In my case it's the Y axis, so my configuration files reference the two joints of the Y axis as :
HAL Config
#*******************
# JOINT Y1
#*******************
Settings, blah, blah
and
#*******************
# JOINT Y2
#*******************
Settings blah, blah
This allows all the signals and pin assignments for each joint to be made identical, so they both behave the same and both receive instructions when Y axis moves are commanded.
In the INI file, you need to start by correctly defining your geometry. Currently yours says:
GEOMETRY = xyz
Mine says:
GEOMETRY = XYYZ
You'll also need these:
KINS]
KINEMATICS = trivkins coordinates=XYYZ kinstype=BOTH
JOINTS = 4
[TRAJ]
COORDINATES = X Y Y Z
Then below, each joint has it's own configuration label, which I added an additional comment to, in order to clarify the usages:
#********************
# 2 Joints in Y Axis
# Joint 1 Y1
[JOINT_1]
#********************
Config settings for Y1 here.....
Then new section
#********************
# Joint 2 Y2
[JOINT_2]
#********************
Config settings for Y2 here...
Immediately after those two sections, a final section ties the tow JOINTS together into the single virtual Y AXIS -- this:
# Axis Y
#********************
[AXIS_Y]
MAX_VELOCITY = 50
MAX_ACCELERATION = 80
MIN_LIMIT = 20
MAX_LIMIT = 390
#********************
At the risk of embarrassment, I'll share my own files below. You can analyze them and see if it helps define the things that are missing from your setup.
Last edit: 21 Feb 2018 20:46 by DanMN.
Please Log in or Create an account to join the conversation.
21 Feb 2018 21:17 - 21 Feb 2018 21:18 #106290
by rodw
Replied by rodw on topic 2 steppers on one axis 5i25 - 7i76
There is the hard way and the easy way to control a joint axis.
The hard way is to use the current production branch V 2.7
The easy way is to use the development branch V2.8
Either way, PNCCONF won't be of much help
I think you are doing it the hard way. 2.7 does not include the simplified joint axis code described by CNCzombie.
Version 2.8 contains the joint axis code that simplifies homing etc. and no longer hard codes the joints 0,1,2 to X,Y,Z. Some people will start with a XYZA machine to generate their config in PNCCONF and then manually edit the A axis to become the second Y (eg XYZY).
Also, the GEOMETRY only controls the axes that are displayed on the DROs so it should remain as XYZ
and this suggested line
should be
kinstype=BOTH allows the machine to be changed into joint mode so each joint is controlled independently of the other (which is a horrible idea for a gantry style joint axis). Joint mode might be used in a hexapod or delta machine. We don't want it for a gantry.
I think the bugs have been fixed now but initially, it was possible to move one side of the gantry independently in joint mode so don't tempt fate and enable it.
The hard way is to use the current production branch V 2.7
The easy way is to use the development branch V2.8
Either way, PNCCONF won't be of much help
I think you are doing it the hard way. 2.7 does not include the simplified joint axis code described by CNCzombie.
Version 2.8 contains the joint axis code that simplifies homing etc. and no longer hard codes the joints 0,1,2 to X,Y,Z. Some people will start with a XYZA machine to generate their config in PNCCONF and then manually edit the A axis to become the second Y (eg XYZY).
Also, the GEOMETRY only controls the axes that are displayed on the DROs so it should remain as XYZ
and this suggested line
KINEMATICS = trivkins coordinates=XYYZ kinstype=BOTH
should be
KINEMATICS = trivkins coordinates=XYYZ
kinstype=BOTH allows the machine to be changed into joint mode so each joint is controlled independently of the other (which is a horrible idea for a gantry style joint axis). Joint mode might be used in a hexapod or delta machine. We don't want it for a gantry.
I think the bugs have been fixed now but initially, it was possible to move one side of the gantry independently in joint mode so don't tempt fate and enable it.
Last edit: 21 Feb 2018 21:18 by rodw.
Please Log in or Create an account to join the conversation.
21 Feb 2018 21:36 #106291
by DanMN
Replied by DanMN on topic 2 steppers on one axis 5i25 - 7i76
There you go! Since most of what I have done was copied (barely-understood) and pasted/modified from rodw's posts, I suggest to ignore most of what I wrote and follow the guru.
Please Log in or Create an account to join the conversation.
- chadrat6458
- Topic Author
- Offline
- Senior Member
Less
More
- Posts: 45
- Thank you received: 0
21 Feb 2018 21:38 #106293
by chadrat6458
Replied by chadrat6458 on topic 2 steppers on one axis 5i25 - 7i76
How do I get 2.8?
Please Log in or Create an account to join the conversation.
21 Feb 2018 21:46 #106294
by rodw
Not sure that I qualify as a guru there are others who I hold in awe. I started with a working config borrowed from another 7i76e and coded everything by hand. This might be your turn to shine CNCZombie
Chadrat, if you have installed from the ISO, it is easy to swap between versions. just by changing some settings in Synaptics.
buildbot.linuxcnc.org/
Other idiots build from source.....
Replied by rodw on topic 2 steppers on one axis 5i25 - 7i76
There you go! Since most of what I have done was copied (barely-understood) and pasted/modified from rodw's posts, I suggest to ignore most of what I wrote and follow the guru.
Not sure that I qualify as a guru there are others who I hold in awe. I started with a working config borrowed from another 7i76e and coded everything by hand. This might be your turn to shine CNCZombie
Chadrat, if you have installed from the ISO, it is easy to swap between versions. just by changing some settings in Synaptics.
buildbot.linuxcnc.org/
Other idiots build from source.....
Please Log in or Create an account to join the conversation.
- Todd Zuercher
- Offline
- Platinum Member
Less
More
- Posts: 5007
- Thank you received: 1441
21 Feb 2018 22:12 #106295
by Todd Zuercher
I don't know if I'd call them idiots, masochists maybe but not idiots.
Replied by Todd Zuercher on topic 2 steppers on one axis 5i25 - 7i76
Other idiots build from source.....
I don't know if I'd call them idiots, masochists maybe but not idiots.
Please Log in or Create an account to join the conversation.
21 Feb 2018 22:45 #106296
by DanMN
Replied by DanMN on topic 2 steppers on one axis 5i25 - 7i76
Rodw -I remember now why I initially had my kinstype set to "both". When I was playing with everything during build/setup and doing a lot of config changes and Axis restarts, I'd sometimes get distracted and start jogging the Y before I had homed. The result of that was exactly the kind of gantry racking you warn about -- since for whatever reason, only the first joint in the Y axis responds before homing. This, of course, twists the gantry in very bad ways. I fiound having the UI start up in Joint Mode, makes it visually distinct to me that I'm not homed. If the buttons say 0, 1, 2, 3 it reminds me to home before mashing any +/- buttons.
Do you have any ideas on making both joints respond to the Y button in unhomed mode, or is that not possible?
Thanks
Do you have any ideas on making both joints respond to the Y button in unhomed mode, or is that not possible?
Thanks
Please Log in or Create an account to join the conversation.
- chadrat6458
- Topic Author
- Offline
- Senior Member
Less
More
- Posts: 45
- Thank you received: 0
21 Feb 2018 22:53 #106297
by chadrat6458
Replied by chadrat6458 on topic 2 steppers on one axis 5i25 - 7i76
Please Log in or Create an account to join the conversation.
21 Feb 2018 23:04 #106298
by rodw
Ahh one of the real gurus reports in....
I only compiled from source because after compiling the linux kernel to get my mesa ethernet hardware working, it was so trivial by comparison. It's been a great learning experience.
I don't remember ever seeing them try to move other than in unison. I mostly use Gmoccappy but I do have some axis configs. I just hit home all as I power up becasue usually an unhomed axis won't jog to where I want it to ss it thinks its in a different place. I just had a play then and Both joints move in unison when jogging Y when unhomed from the Axis GUI and my Mesa MPG.
Replied by rodw on topic 2 steppers on one axis 5i25 - 7i76
Other idiots build from source.....
I don't know if I'd call them idiots, masochists maybe but not idiots.
Ahh one of the real gurus reports in....
I only compiled from source because after compiling the linux kernel to get my mesa ethernet hardware working, it was so trivial by comparison. It's been a great learning experience.
Do you have any ideas on making both joints respond to the Y button in unhomed mode, or is that not possible?
I don't remember ever seeing them try to move other than in unison. I mostly use Gmoccappy but I do have some axis configs. I just hit home all as I power up becasue usually an unhomed axis won't jog to where I want it to ss it thinks its in a different place. I just had a play then and Both joints move in unison when jogging Y when unhomed from the Axis GUI and my Mesa MPG.
Please Log in or Create an account to join the conversation.
Moderators: cmorley
Time to create page: 0.140 seconds