Replies: 3 comments 5 replies
-
I have found several issues with the processing of the TLO variable that need fixed. I also developed some changes to the tool change process for consideration. Both are in a testing mode and have not been pushed yet. In its current state, I would not rely on TLO staying correct, it has a tendency to get set to zero, especially at the end of a run. When using a hobby based machine without an automatic tool changer, the use of TLO and a height sensor may vary with the machine and user. My use pattern would be to establish the datum with the first tool and use TLO to handle different tool lengths on subsequent tool changes. Your use pattern and experience may be different. |
Beta Was this translation helpful? Give feedback.
-
Interesting! |
Beta Was this translation helpful? Give feedback.
-
My sensor is also moveable, it can be stacked on top of a 1 inch precision block or placed on top of the corner of the stock material (it's thickness is 9 mm) hence 34.4 mm sensor thickness for tool changes. In my version, I tried cleaning up a bit and I have removed toolmz, toolheight, the lower case "tlo" variable as they appeared to be redundant and creating confusion (maybe on my part). I think we will need to better define what these variables are, their particular coordinate system and use. For the sensor position, my thought was to use the machine coordinates as these are less likely to be tweaked by other commands. Attached is my list of changes I have found with the handling of TLO and tool fields. My main objective was to be able to shut the bCNC down, restart bCNC and have it return to the same state prior to the shutdown. fix_TLO_and_Tool_handling.txt Also found at "Github.com/rschell/bCNC branch=fix_TLO_and_Tool_handling" |
Beta Was this translation helpful? Give feedback.
-
For a new bCNC user some parts of the interface are far from intuitive #1685 #1647
The box named common does not naturally indicate its function even if certain input fields (Fast Probe Feed and probe Feed)
suggest that they are related to the Probe function. But then what does the TLO field do in this zone?
In reality, the TLO field is used to enter the height of the Z0 measurement sensor.
Renamed as follows this block would be much more explicit.
Functioning
Pressing set stores the content of the "TLO" field in the .bCNC initialization file in the Probe tlo item.
If bCNC is restarted, the stored value is displayed until the end of the homing then reset to zero.
Since the "TLO" field reflects the height of the measurement sensor, why reset it to 0? It's painful to have to
enter each time the height of a sensor which always has the same value.
Pressing set also causes a shift of the Z0 to compensate for the height of the sensor: ProbePage.py
def tloSet(self, event=None):
try:
CNC.vars["TLO"] = float(ProbeCommonFrame.tlo.get())
cmd = "G43.1Z%s"%(ProbeCommonFrame.tlo.get())
self.sendGCode(cmd)
except:
pass
self.app.mcontrol.viewParameters()
And there, there is a big problem the command G43.1 Z... is inappropriate, it is reserved for the TLO offset and the sensor
probe is not a tool. The command must be G10 L20 P1 Z... to offset the machining datum by the height
of the sensor.
Some would argue that G43.1 does cause this offset and it works. Yes, provided you do not make any changes
tool with the TLO method, because in this case the first call to M6 by the machining program will cancel the offset
previous one and cause the machine to run erratically at the end of the tool change #1281 #1347 #1364, #1371
A closer look at the code reveals that the use of the TLO and tlo variables are ambiguous; it is necessary to separate what is
of the tool (TLO) with regard to the measurement accessories (sensors, touchplate, etc.) The name of the variable must be
explicit enough to avoid any confusion.
I think the operation of bCNC can be improved by using the z-Sensor pad only to input parameters
sounding and automating the determination of the Z0.
JP
Beta Was this translation helpful? Give feedback.
All reactions