Hello All - I have a small form factor CNC Router and don't have limit switches installed. I move each axis to a designated spot, (its home position) before shutting down power to the BlackBox. This position is in it's 'Fake Home' position. Now here's my question: By using the G28 (home command) will it go back to the 'Fake Home' position? Also, how can I 'home' each axis individually...Is there a GCode command for that? There's been quite a few times where I would like to move just a single axis home. Thanks! Tony.
You need to be careful with G28. It defaults to Machine 0 ("home") but you can override that to anywhere on the machine. If you're using OpenBuilds Control, the better thing to do is create macros. Send home: G53 G0 Z0 G53 X0 Y0 Send a specific axis home: G53 G0 z0 G53 X0 Or G53 G0 z0 G53 Y0 Notice in all of them it raises Z up first.
G28 and G30 are 'predefined positions', which in GRBL default to 0,0,0 (the same as home unless you change it). I use G28 for tool changes, I jogged to where I want it for convenient tool changing then gave G28.1 which stores the current position as offsets from home. Now when I want to change the tool I hit my G28 macro button and it goes there without disturbing any other settings. This does rely on a consistent home since it is an offset, if home is not correct your G28 moves will probably crash into something.
Thanks abunch for the info. I'll be playing with the above shortly. One more question on G0 command. In the above examples could you, for instance, use the G1 command (Feedrate) rather than G0 (rapid) when creating Homing macros? Im curious if its possible.
Yes you can use G1 but that means you also need to supply the feedrate. Send home Code: G21 G17 G90 ; note all bits of code must set the modes they need, never expect the modes to be correct G53 G1 Z0 F1000 G53 G1 X0 Y0 but why? G0 is the correct command for rapid moves for simple positioning. If you reduce the feedrate it will just take longer, no real benefit unless you always have 'something in the way' in which case 2 macros, one each for X and Y might be a better solution. ie move Z up, then move the other axis in each macro. for X Code: G21 G17 G90 G53 G0 Z0 G53 G0 X0 for Y Code: G21 G17 G90 G53 G0 Z0 G53 G0 Y0