Calibrating tools in XY
-
I have a tool changing 3D printer. I have mounted a camera with cross hair that can look at the tool tip from below. I want to run a macro that places the tool over the camera cross hair. Then, using buttons on the Panel Due, adjust the tool tip in X and Y and note the offset so it can be put in config.g
Using a M291 command only offers 0.1mm smallest step so cannot align tip. Also it appears on Web Browser rather than panel Due.
Is their a way of presenting the adjustment in X and Y on panel Due and with a finer resolution.
Is their a way of taking these offsets and using them more automatically?
Thanks
-
Moved this to the wishlist category for finer step choices in M291.
Off topic but you should check out:
https://hackaday.io/project/26053-tool-switching-multi-extrusionthis project has a very documented use of machine vision to automate what you are doing.
-
Thanks for putting on wishlist caregory. Perhaps Panel Due Move screen could also display XY and Z co-ordinates.
My camera does not achieve the high magnification as in article. I'm using a ESP32-CAM module (about £6.50) and a phone add on macro lens (about £3.30).
Will try creating a bunch of macro's for fine movement.
-
@St-Taw said in Calibrating tools in XY:
Is their a way of presenting the adjustment in X and Y on panel Due and with a finer resolution.
Until you get the firmware change...
-
Using PanelDUE console, enter G91 to get into relative move mode (once only)
-
Enter a move command with any increment you want, such as G1 X-0.001
-
The Up and Down arrows will recall a command, so you don't have to type the long G1 every time.
Just arrow up and hit enter. -
Don't forget to return to G90 (absolute) mode so that other GCode will work properly.
-
-
Note sure if this should remain in Firmware Wish List?
I created a bunch of macros using the likes of G91, G1 X-0.025, G90 in a seperate Macro directory which allows me to do the alignment.
However I now have a new problem. If I recall, this was raised a while ago and I'm not sure of the outcome and cannot find thread. That is, my machine is similar to E3D tool changer. In testing when tool changing the macro to collect the tool works OK. That is no offset is applied. However when freeing the tool the offset remains and therefore misses the docking position (crunch noise).
To prove my supposition I removed the physical tool and put a large X offset of 25 for T1 in config.g using
G10 P1 X-25 Y4.4 Z0.723 ; Set tool 1 axis offsets
After homing no tool is present.
Then in console I type T1. Tool 1 is collected correctly it returns to home position 0X, 0Y with X finally reporting as -25 (as I would expect).
Then in console I type T-1. Tool 1 now trys to return to its park poistion +25 offset in X (so would crash if physically present). On returning to 0X,0Y the head is actually at +25.Clearly the E3D tool changing users must have resolved this. So what am I doing wrong?
Here are my tool changing macros.
; tpost1.g
; called after tool 1 has been selected
; Wait for set temperatures to be reached
M116 P1 ; Enable when hot end working; tpre1.g
; called before tool 1 is selected
; LOAD TOOL 1
M98 PxSt Taw Led Blue.g
G91 ; relative xyz moves
G1 Z5 ; move bed down 5
G90 ; absolute moves
G1 X107 F10000 ; move in line of docking
G1 Y290 F10000 ; move quickly near docking
G1 Y310 F2000 ; move slow to pre dock
M280 P7 S0 ; Move key to unlock position 0
G4 S1 ; Wait 1 second for servo to rotate
G1 Y325 F1000 ; move into doc
M280 P7 S135 ; Move key to lock position 135
G4 S1 ; Wait 1 second for servo to rotate
G1 Y290 F1000 ; move out of docking position slow
G1 x0 Y0 F10000 ; Move out of the way
G91 ; relative xyz moves
G1 Z-5 ; move bed up 5
M98 PxSt Taw Led White.g; tfree1.g
; called when tool 1 is freed
; UNLOAD TOOL 1
M98 PxSt Taw Led Blue.g
G91 ; relative xyz moves
G1 Z5 ; move bed down 5
G90 ; absolute moves
G1 X107 F10000 ; move in line of docking X
G1 Y290 F10000 ; move in line of docking Y
G1 Y310 F2000 ; move slow to pre dock
M280 P7 S0 ; Move to unlock position 0
G4 S1 ; Wait 1 second for servo to rotate
G1 Y325 F1000 ; Push into final docking position
G1 Y290 F1000 ; move out of docking position slow
G1 x0 Y0 F10000 ; Move out of the way
G91 ; relative xyz moves
G1 Z-5 ; move bed up 5
M98 PxSt Taw Led White.gAny help appreciated
-
@St-Taw you need to adjust your TFree and TPost scripts to use G53 G1... then you are working in machine co-ordinate space for those oves. at least thats how the TC config does it.
If that does not solve the issue then split this out into a different post.
I will leave this in the wishlist for finer direct effector position control on the PanelDue
-
That has resolved the issue.
Many thanks.