@droftarts said in Homeall.g fails when homing all axes:
I'm not sure how this would interact with OpenPNP, though.
this is where i am also having doubts how that would work with OpenPNP
@droftarts said in Homeall.g fails when homing all axes:
I'm not sure how this would interact with OpenPNP, though.
this is where i am also having doubts how that would work with OpenPNP
@fcwilt said in Homeall.g fails when homing all axes:
How do you convert stepper position to nozzle position?
its just Z-axis as any other , no difference .The CAM on the motor just moves or rotates clockwise or counterclockwise to move the nozzles on the Z-based axes up or down
@fcwilt said in Homeall.g fails when homing all axes:
Are these nozzles simply up or down OR do they move over a range of vertical travel?
They move over a vertical range of travel actually from 0 to -/+ 70 before they trigger the endstop . all have a range of -90:90 but technically
so
(1) On Z-Axis Motor , Z1 has a move range from 0 to -90 and Z2 has a move range from 0 to +90. When one is down , then other is always at zero
(2) On U-Axis Motor , Z3 has a move range from 0 to -90 and Z4 has a move range from 0 to +90. When one is down , then other is always at zero
(3) On V-Axis Motor , Z5 has a move range from 0 to -90 and Z6 has a move range from 0 to +90. When one is down , then other is always at zero
@fcwilt said in Homeall.g fails when homing all axes:
Does each nozzle have it's own endstop sensor?
Yes, Each Nozzle has its own endstop . With CAM kind of shared axis when it moves down 1 nozzle the other stays at zero or is lifted back to zero point by the spring to where there is a stopper to prevent it from flying over.
@fcwilt
That worked for X &Y and Z , i am going through all the axes one-by-one following your insights .
How do you configure the endstops of a shared z-axis cam based
i have to configure endstops for 6-Nozzles ( 2 Nozzles share a single Z-axis based Stepper motor ) so that they trigger correctly
i.e 3 Stepper Motors for Z, U, V axis but each axis shared with 2 nozzles each with a Z-axis type.
@fcwilt said in Homeall.g fails when homing all axes:
Now if you have specified your X axis with M208 -170:170, meaning X=0 is at the center of the axis you could add the following:
i have M208 X0:340 Y0:447
@fcwilt said in Homeall.g fails when homing all axes:
At what position does the X endstop trigger? Are you treating that as X=0?
Yes at X=0. Do i need to test this on the command console or just put them in a homing file and test on DWC ?
something like this on homex.g ?
G91
G1 H1 X-345 F5000 ; use a value large enough to move the entire length of the X axis
G1 X10
G1 H1 X-15 F500
G1 X0
G92 X0
G90
@fcwilt
X-axis = 340 mm and Y-axis = 447mm.
I think i only have extra additional of -2.0516mm on X-axis on the low end and -4.0244mm on Y-axis
@developeralgo222
i went back to try and individually home all Axes that have their end stops corrected i.e
X-Axis ---- End stop works fine now and triggers correctly
Y-Axis ---- End stop works fine now and triggers correctly
W, A, B, C, D, k ---- End stop works fine now and triggers correctly
Homing fails on all of them. e.g. homing X-axis, this is what i have in the file ( very simple, nothing complicated ). It completes the movements in homing X-axis fine with no issues but DWC reports that Homing X failed e.g
; Home X-Axis
G91 ; relative positioning
G1 H2 X0 ; set axes position explicitly to Zero i.e move X and Y-axis Minimum Homing endstop and stop there
G1 H2 X40 F10000 ; move quickly to X and Y axis endstops and stop there (first pass)
G1 H2 X-40 F10000 ; go back a few mm
G1 H2 X0 ; move X and Y-axis Minimum Homing endstop and stop there (first pass)
G90 ; absolute positioning
It affects me in that i can't use Input Shaping with Accelerometer from the DWC to help tune and optimize my PNP machine Speed and acceleration . Input Shaping from DWC is using HomeAll button . Not sure if its failing bacause of Z, U, V that have endstop issues
Ok i have made the modifications on Endstops
X-Axis ---- Endstop works fine now and triggers correctly
Y-Axis ---- Endstop works fine now and triggers correctly
W, A, B, C, D, k ---- Endstop works fine now and triggers correctly
Test:
Working on Z, U , V Axes:
Not sure how this need to be configured ( This are shared Z-CAM based axis ) for 6 Nozzles
Z , U , V ( Z-Axis = (Z1, Z2), U-Axis = (Z3, Z4), V-Axis= (Z5, Z6) ) only Z2 , Z4, Z6 triggers Z , U , V respectively but not Z1, Z3, Z5
; Endstops
; For X and Y Axis
M574 X1 S1 P"0.io1.in" ; configure active high endstop switch for low end on X via pin io1.in
M574 Y1 S1 P"0.io2.in" ; configure active high endstop switch for low end on Y via pin io2.in
; For Z-Axis (Shared Z,U,V) - Up/down) -- CAM Driven Dual Nozzles ( 1 Motor rotates up/down to drive 2 Nozzles )
M574 Z1 S1 P"1.io0.in" ; configure active high endstop switch for low end on Z via pin 1.io0.in
M574 Z2 S1 P"1.io1.in" ; configure active high endstop switch for High end on Z via pin 1.io1.in
M574 U1 S1 P"1.io2.in" ; configure active high endstop switch for low end on U via pin 1.io2.in
M574 U2 S1 P"1.io3.in" ; configure active high endstop switch for High end on U via pin 1.io3.in
M574 V1 S1 P"1.io4.in" ; configure active high endstop switch for low end on V via pin 1.io4.in
M574 V2 S1 P"1.io5.in" ; configure active high endstop switch for High end on V via pin 1.io5.in
; For Rotational Axes only (W, A, B, C, D, 'k(k))
M574 W1 S1 P"2.io3.in" ; configure active high endstop switch for low end on W via pin 2.io3.in
M574 A1 S1 P"2.io4.in" ; configure active high endstop switch for low end on A via pin 2.io4.in
M574 B1 S1 P"2.io5.in" ; configure active high endstop switch for low end on B via pin 2.io5.in
M574 C1 S1 P"3.io3.in" ; configure active high endstop switch for low end on C via pin 3.io3.in
M574 D1 S1 P"3.io4.in" ; configure active high endstop switch for low end on D via pin 3.io4.in
M574 'k1 S1 P"3.io5.in" ; configure active high endstop switch for low end on 'k via pin 3.io5.in
Here is a photo of the 6-Nozzles with a little grainy photo to show some of the 6 endstops under each Z-based axis ( Z, U, V )
So for connection of all other Endstops ( X, Z, U, V, W, A,B,C,D,k ) except Y-axis i should use
Black Wire ==> IOx.in
Blue Wire ==> GND
Brown Wire ==> 5V_EXT
and for Y-axis ( 2 physical endstops connected as 1 endstop ) i should use
White Wire ==> IOx.in
Blue Wire ==> GND
Brown Wire ==> 5V_EXT
@fcwilt said in Homeall.g fails when homing all axes:
What is your thinking on having those two endstops?
You are aware that endstops serve no purpose except during G1 H1 or G1 H3 or G1 H4 moves?
Just having a single endstop at the min Y-axis. Since only 1 Single Endstop is allowed , by connecting the 2 physical endstops (at minimum) together to act as only a single endpoint at minimum
@fcwilt
wasn't aware of that . So really, what's the value-added in having endstops anyway in duet ? since they seem to be integral part in some Duet's movement process. I am confused about your statement
@infiniteloop said in Homeall.g fails when homing all axes:
(2) For Y-axis, only have 2 physical endstops (connected in parallel) each per Y-axis rail both at min or max
Why? For each axis, you want to have one known position from where you then establish a coordinate system.
I have 2 linear rails on Y-axis ( it moves on Dual Rail ) but only 1 Stepper Motor for controlling the Y-axis . So to comply with 1 Endstop/Motor/Axis on Duet and to remedy the Y-axis i am removing 2 endstops at the Max of the Y-axis. Just leaving 2 endstops at the Min of each rail . The 2 endstops are connected as a 1 single Endstop at the Min only. Will this work for Y-axis?
according to Duet3 Documentation :
RepRapFirmware only supports one endstop per motor per axis. If your axis only has one motor, you can only have one endstop . is this still the case ?
On X-axis & Y-axis
To try and remedy this: i am thinking of doing this
(1) For X-axis , only have 1 physical endstop at min or max
(2) For Y-axis, only have 2 physical endstops (connected in parallel) each per Y-axis rail both at min or max
NOTE: i have the 4-wire Panasonic Optical Endstops PM-U25-N ( NPN type) (Black, Blue, Brown, white ) connected to Duet3D 6XD & 3HC board IO ports as follows:
Panasonic pm-254565_e_cata.pdf
Black Wire ==> IOx.in
Blue Wire ==> GND
Brown Wire ==> 5V_EXT
Quick Question: Normally what is the best location for an endstop for Duet3D 6XD boards is at Min or Max locations of the Axis ?
My triggers seem to be acting in reverse.
Trigger OFF means ON (Green on Dashboard) and Trigger ON means OFF for all axes
@developeralgo222
NOTE: all endstop triggers seem to be acting in the Opposite way
i.e if triggered it shows OFF on Dashboard and if not triggered it shows ON (Green) on the Dashboard
According the documentation :
In DWC v3.5 and later, the endstop status is indicated in the Status panel. If the endstop is triggered, a green square will highlight the axis that is triggered. If there is no green square, it is not triggered.
in my case its exactly opposite
@T3P3Tony
Got major issues with endstop triggers and need your help guys
i was just going through the endstops again . Here is what i have noticed.
Explanation:
(1) For X-axis i have 2 endstops (1 NEMA34 Stepper motor on the X-axis , one at 0(min) and other at 340 (max) ) but both are connected together to act as 1 single endstop. So that if the machine touches any of them it will trigger for X-axis ( 2 physical endstops acting as 1 endstop )
(2) For Y-Axis i have 4 endstops ( 1 NEMA34 Stepper motor on the Y-axis with 2 Linear rails , each Linear rail has one at 0(min) and other at 447 (max) but all 4 endstops are connected together to act as 1 single endstop. So that if the machine touches any of them it will trigger for Y-axis ( 4 physical endstops acting as 1 endstop)
(3) For Z, U, V because they are shared Z-based CAM axes .i.e Z = ( Z1, Z2 ) , U = (Z3, Z4), V = ( Z5 , Z6 ) . Each of them has its own single endstop ( 6 endstops in total)
(4) For Rotational axes W, A, B, C, D, k -- all have their own single endstop ( 6 endstops in total )
Observed trigger testing Results when covering the endstop optical lights to trigger the endstops:
NOTE: For all axes , i observed that if i moved the machine to where it should trigger the axis endstop. it shows that its triggered on the dashboard. but when i move the machine away from the endstop it does not show that its not triggered. is this normal ?
(1) For X , it only actually triggers when both 2 physical endstops are touched at the same time. This actions really opposite of what i would like , which if any of the 2 physical ends is touched it triggers
(2) For Y , it only actually triggers when all 4 physical endstops are touched at the same time. This actions really opposite of what i would like , which if any of the 4 physical ends is touched it triggers
(3) Z , U , V ( Z1, Z2, Z3, Z4, Z5, Z6 ) only Z2 , Z3, Z6 triggers Z , U , V respectively but not Z1, Z3, Z5
(4) W,A,B,C,D,k all trigger
@developeralgo222
i can confirm that the issue seems to be either DWC or Duet3D Firmware because it seems to home the individual axes but you still get an error " Failed to home axes ". As i said above homeall behaves differently it only home all other axes but not X & Y
This needs to be fixed. i need to configure the Accelerometer to collect Acceleration Data on X & Y for input shaping and fine tuning but i can't do that in input shaping plugin if it can't see status of the X & Y & Z as being homed.
They are not perfectly aligned at Zero. Even if i try align them to let's Z1. i am no sure if that would help .
This are NEMA 11 & NEMA 17 Stepper motors , 1.8 Degrees Angle, 200 KHz . All i want is to make sure they are aligned correctly at Zero