NEWS
LinuxCNC 2.5.2 Release
LinuxCNC 2.5.2 Update Released (changelog).
 
LinuxCNC 2.5.1 Release

LinuxCNC 2.5.1 Update Released (changelog). If the Package Manager does not prompt you to upgrade see this page.

 
LinuxCNC 2.5.0 Release
New major release (changelog). See the instructions to update your system from EMC 2.4 to LinuxCNC 2.5.
 

Welcome, Guest
Username: Password: Remember me

TOPIC: Custom Kinematics

Re:Custom Kinematics 20 Jun 2012 13:32 #21159

  • tmade
  • tmade's Avatar
  • OFFLINE
  • Fresh Boarder
  • Posts: 6
  • Karma: 0
And that is getting me better results. Thanks for taking a peek at that for me.

Nick
The administrator has disabled public write access.

Re:Custom Kinematics 26 Jun 2012 08:36 #21366

  • tmade
  • tmade's Avatar
  • OFFLINE
  • Fresh Boarder
  • Posts: 6
  • Karma: 0
I am getting better results now, and am hopefully working on the last set of errors on this machine.

1) When I am in world mode, X, Y, and Z are always zero, even though the virtual machine head moves around. If I use HAL meter and select Signal -> X-pos-cmd, I will see a non-zero value that changes with my commands in world mode. Is this expected behavior?

2) When homing the joints in joint mode, only joints 0,1, and 2 will show the Crosshair home symbol. 3 and 4 will update and then change to zero on "Home Axis", but will not show the symbol. A second click will prompt saying the joint is already homed though.

3) Building off (2), If I move the joints, home, and try to enter world mode I get the error in the bottom right saying "all joints must be homed before going into teleop mode". If I then close out Axis and reopen it and home (without moving the joints), it will enter world mode without an error.

Thanks again for the help


Edit: I have made it slightly more complex by converting the bipod to a quadpod. It is a rectangle with a stepper in each corner. The new files and definitions are attached. (1) (2) and (3) above happened with the bipod configuration from my earlier posts too.

j1 = bottom left
j2 = bottom right
j3 = top left
j4 = top right

x = 0, y = 0 at bottom left
j2 is at (jx,0)
j3 is at (0,jy)
j4 is at (jx,jy)

dx and dy are slight offsets to help calculate the real joint wire length because the center piece is not a true point. This attachment is hidden for guests. Please log in or register to see it.
Attachments:
  • Attachment This attachment is hidden for guests. Please log in or register to see it.
Last Edit: 26 Jun 2012 08:42 by tmade. Reason: Adding files
The administrator has disabled public write access.

Re:Custom Kinematics 30 Jun 2012 08:51 #21468

  • dab77
  • dab77's Avatar
  • OFFLINE
  • Gold Boarder
  • Posts: 199
  • Karma: 6
Hi, i've read only now about this thread.
I've done an inverted tetrapod, which lies on a plane. I assume your is built vertically (like something to write on a wall?).
I definitely suggest you to download JointAxes3 branch of LinuxCNC, because with this branch you are free to have x number of joints and y number of axis. (you will work, i think, with 4 joints (motors) and 3 axis (X,Y and Z))... thinking more, maybe you don't need one axis, because you're moving on a plane, is it?
But, anyway, to use custom kinematics, JA3 branch is the way.

If i can help you, just ask.
Ciao Davide.
The administrator has disabled public write access.

Re:Custom Kinematics 27 May 2013 19:27 #34783

  • PKM
  • PKM's Avatar
  • OFFLINE
  • Senior Boarder
  • Posts: 54
  • Thank you received: 1
  • Karma: 4
andypugh wrote:
Dave3891 wrote:
Is there any way to auto switch to world mode after the home sequence?

I think it is possible, but a bit fiddly. There has been a suggestion that it could be an INI file option.

If you have halui loaded (which requires HALUI = halui in the [HAL] part of the INI file) then you have the pins halui.mode.joint and halui.mode.teleop to set the joint/world mode and the pins halui.mode.auto and halui.mode.manual too.
There is some interaction between the 4 pins that I have not quite figured out. You can experiment by typing (for example) "step halui.mode.teleop" in the machine->show HAL config window. (You might have to expand the window to see the command entry box)

Those pins, twiddled in the right order, allow you to change between world and joint modes. You could, in HAL, net the axis.0.homed , axis.1.homed etc pins into a "logic" component (which is a fairly easy way to get a 4-way AND and XOR pin output) and net those to the halui.mode pins.
It ends up looking like this.
loadrt logic personality=0x704
addf logic.0 servo-thread
net X-homed axis.0.homed logic.0.in-00
net Y1-homed axis.1.homed logic.0.in-01
net Z-homed axis.2.homed logic.0.in-02
net Y2-homed axis.3.homed logic.0.in-03
net all-homed logic.0.and halui.mode.manual halui.mode.teleop
net some-unhomed logic.0.xor halui.mode.joint
That works!
But after the machine is homed I run the program and after that it's joint mode again. Or I switch to MDI and then to Manual and it's joint mode again. I use joints_axes3.
How do I make it "forget" about joint mode?
The perfect behavior would be automatic going to joint mode only when HOME_ALL button pushed (even in world mode) and return to world mode forever after homing.
The administrator has disabled public write access.

Re:Custom Kinematics 27 May 2013 21:45 #34794

  • andypugh
  • andypugh's Avatar
  • OFFLINE
  • Moderator
  • Posts: 4245
  • Thank you received: 152
  • Karma: 130
It's been a while since I looked at this.

When did you last pull and recompile ja3? There was quite a big merge into a month or so ago.

If you are using the Axis gui then you might find it easier to add a set-world-mode pin to that (triggering the $ behaviour).
I did it once, but I can't seem to find out where (could be here, could be mailing list, could be IRC)

The random switching out of world mode is a problem and I have not managed to find out where it happens.

I guess you are using a hexapod from the avatar picture?
The administrator has disabled public write access.
The following user(s) said Thank You: PKM

Re:Custom Kinematics 27 May 2013 22:04 #34797

  • PKM
  • PKM's Avatar
  • OFFLINE
  • Senior Boarder
  • Posts: 54
  • Thank you received: 1
  • Karma: 4
I use a delta robot now.

IIRC my ja3 was compiled on April 22 or so (I asked a few questions on the mail list recently). Where can I see the merge log?

You probably mean permalink.gmane.org/gmane.linux.distributions.emc.user/40244
Great, I'll try that tomorrow!
The administrator has disabled public write access.
Time to create page: 2.019 seconds
Powered by Kunena Forum
© 2013 LinuxCNC.org
Joomla! is Free Software released under the GNU General Public License.