4-axis CNC running Machinekit won't fully home.

61 views
Skip to first unread message

Nathaniel

unread,
Feb 28, 2020, 2:34:39 AM2/28/20
to Machinekit
Hi,

I am new to Machinekit and Linux. I am working on an academic project; a 4-axis CNC to mill joints out of bamboo. I think it has a lot of potential when completed, and I am pretty exited.

The Problem:
We have the machine built and are in the testing phase. Motors and limit switches work as expected, except when we home the machine. It starts to home all three axis (the 4th rotary thus infinite) simultaneously, once it homes an axis it stops and won't continue homing the others. Regardless of which axis homes first (we have tested this with all of the axis by jogging it close to each) it is always stops after the first one. We thought that we could solve the problem by homing each axis individually. This seemed like a solution, but then we tried to run a program and it threw and error saying that the machine wasn't homed.

I believe the problem is code related since the machine moves and behaves fine.

Attached are the  .ini and .hal files.
We are using a BeagleBone Black with a Cramps v.2.2 board
The Motor setup is: 1 for X, 2 for Y (right and left to carry the x-axis carriage), 1 for Z, 2 for A.
The Limit switch setup is: X - max, min; Y - 2 min (right and left) with a max wired in parallel to the right switch (it homes to the min); Z - max only; A - has no switches as it is infinite.

I know that was probably more information than needed, but I thought I would explain before I get asked.

Thanks a lot,
Nathaniel 
BCNC.hal
BCNC.ini

justin White

unread,
Feb 28, 2020, 9:57:10 AM2/28/20
to Nathaniel, Machinekit
Give all of your axis a home offset of 10mm and a home of 25mm to get started. Some of them are at 0.0 and probably getting stuck on the switches while homing.

--
website: http://www.machinekit.io blog: http://blog.machinekit.io github: https://github.com/machinekit
---
You received this message because you are subscribed to the Google Groups "Machinekit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to machinekit+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/machinekit/1fee9c4d-529b-4ff3-bcb9-88a21d72af48%40googlegroups.com.

Nathaniel

unread,
Feb 29, 2020, 9:15:08 PM2/29/20
to Machinekit
Thanks Justin,

I took your advice and played with the home and home offsets. It now fully disengages from the switch while homing, but this hasn't solved the problem. It will home whichever axis is crossest to its switch and then stop. Any suggestions?

Thanks,
Nathaniel 

Charles Steinkuehler

unread,
Feb 29, 2020, 11:16:21 PM2/29/20
to machi...@googlegroups.com
1) Setup homing so each axis homes sequentially. Then if you have
errors, you'll know exactly which axis you need to fix.

2) You're using a gantry component, but it's unclear exactly how it's
setup. You appear to be using the Y-min and Y-max switches as the two
homing switches for the gantry axis? Some sort of machine or wiring
diagram would help to diagnose any potential problems with your config.

3) Provide a dump of the HAL state when the system has homed one of the
axis and stopped (eg: the output of "halcmd show").
--
Charles Steinkuehler
cha...@steinkuehler.net

justin White

unread,
Mar 1, 2020, 1:29:27 PM3/1/20
to Machinekit
You are going to have to do a bit of digging there, nothing really popping out at me in your ini/hal files and with a home sequence of 0 for all nothing other than a stop request should stop the other axis from homing. Like Charles says, home the Axis' individually to see where your problem is. IIRC Axis Gui allows you to home each axis individually, or you can set the HOME_SEQUENCE, sequentially (do not use 0 for any axis) in the ini. I would set Y and A last since these are the dual motor setups likely giving you trouble. Check halCMD or halshow for the axis.N.homed pin to return true after that axis has finished homing. I like to open Halshow and select the pins for each axis in the watch tab and save it as a watch list. You can see exactly where homing is breaking. Once you figure out which axis is causing the problems you can figure out what the problem is.
Reply all
Reply to author
Forward
0 new messages