Hello Guest it is March 28, 2024, 09:24:44 PM

Author Topic: Is this possible????  (Read 2479 times)

0 Members and 1 Guest are viewing this topic.

Is this possible????
« on: March 14, 2011, 11:11:15 AM »
Im considering making an aditional axis for boring holes.

Basically a CNC controlled boring bar that allows the diameters to be changed fromt he Gcode

The way Im think is having the boring tip on an angled slide so as its moved down the tip moves out (away from the centerline).

The problem will be the z position will also move with the change in diameter.

Is there a way of linking the 2 axis so as the tip moves in/out a formula is applied to the z axis to keep it in the correct position.
 Is this possible with a Brain or is it going to involve some complicated Gcode????

Offline kf2qd

*
  •  148 148
    • View Profile
Re: Is this possible????
« Reply #1 on: March 15, 2011, 12:17:48 PM »
You might look at Formulas under the setup. If you can come up with a formula for both axis that describes what the changes are you might be able to use that.

Offline djc

*
  •  47 47
    • View Profile
Re: Is this possible????
« Reply #2 on: March 15, 2011, 05:00:36 PM »
I don't think a brain is necessary, just a macro tied to an M-code, let us say M684.

Let us also assume from the start that your boring bar axis is 'C' and that you only ever move the C axis on its own.

You would use the M code to move your C axis and reset your Z axis.

This is where I am on thin ice as I do not know if it is possible to pass a parameter to a macro (e.g. by saying M684 C20.040). Also, I'm not sure if I've used the correct DRO numbers.

Pseudo code:

While IsMoving() ' anything in motion?
Sleep (100) ' wait a bit
Wend
tempvariable=GetOEMDRO (805) ' current C axis value
StraightFeed (new_value_of_C) 'parameter passed when macro is called - do not know if this is possible
While IsMoving() ' anything in motion?
Sleep (100) ' wait a bit
Wend
change_in_C=GetOEMDRO (805) - tempvariable
change_in_Z= change_in_C * fiddle_factor
SetOEMDRO(808, change_in_Z)

Hopefully someone more experienced will chime in...