2 steppers on one axis 5i25 - 7i76

More
21 Feb 2018 19:09 #106281 by chadrat6458
I still can't get one of the steppers to move. I have attached the hal and ini file.
Attachments:

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

More
21 Feb 2018 20:42 - 21 Feb 2018 20:46 #106287 by DanMN
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.
Attachments:
Last edit: 21 Feb 2018 20:46 by DanMN.

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

More
21 Feb 2018 21:17 - 21 Feb 2018 21:18 #106290 by rodw
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
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.
The following user(s) said Thank You: DanMN, fletch

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

More
21 Feb 2018 21:36 #106291 by DanMN
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.

More
21 Feb 2018 21:38 #106293 by chadrat6458
How do I get 2.8?

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

More
21 Feb 2018 21:46 #106294 by rodw

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.

More
21 Feb 2018 22:12 #106295 by Todd Zuercher

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.

More
21 Feb 2018 22:45 #106296 by DanMN
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

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

More
21 Feb 2018 22:53 #106297 by chadrat6458
any idea what I am doing wrong?
Attachments:

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

More
21 Feb 2018 23:04 #106298 by rodw

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
Powered by Kunena Forum