• Tags
  • Documentation
  • Order
  • Register
  • Login
Duet3D Logo Duet3D
  • Tags
  • Documentation
  • Order
  • Register
  • Login

Secondary Tool move breaks Z homing

Scheduled Pinned Locked Moved Unsolved
Duet Hardware and wiring
3
62
2.6k
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • undefined
    optical
    last edited by Phaedrux 14 Oct 2020, 09:16

    I have a PNP machine with dual head.
    Board: Duet 3 MB6HC (MB6HC)
    Firmware: RepRapFirmware for Duet 3 MB6HC 3.1.1 (2020-05-19b2

    Axes description.
    X,Y - Standard axes.
    Z - Shared axis for both tools(head).
    E1,E2 - Axes configured to absolute positioning. Thes axes handles rotation of each head.

    Rotation axes has to be set to absolute position, because the openpnp is sending absolute rotation for the tools.

    All axes are using trinamic sensorless feature for operation. Due to some manufacturing inprecissions on the Z axis it uses Induction probe for homing operation with offset to zero. For normal operation it switches back to sensorless. Hoever it should never get to maximum positions. Due to the software.

    Issue:
    G28
    T0
    G0 180 ; Tool 0 moves to 180
    T1
    G0 180; Tool 1 moves to 180
    T0
    G0 180 ; Tool 0 moves to 180
    G28 Z ; Z starts to move in the other direction then it should. Away from the probe
    The problem does not occure when using only tool 0.

    I have zero explenation why this happends. The first long move is executed in oposite direction which causes to hit the axis end without limit switch.
    Could somebody help me resolve this issue ?

    Homing procedure of Z Axis:
    ; homez.g
    ; called to home the Z axis

    G91 ; relative positioning

    M913 Z25

    M574 Z2 P"!io0.in" S1 ; Induction sensor
    M915 Z F0 S3 R1

    G1 H1 Z+40 F500
    G1 H2 Z-2 F500
    G1 H1 Z+5 F500
    M913 Z100
    G90 ; absolute positioning

    G92 Z12 ; Set possition due to probe offset

    G1 Z0 F500; Park

    Whole configuration:
    config.g

    ; Configuration file for Duet WiFi (firmware version 3)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.3 on Tue Jun 16 2020 20:02:20 GMT+0200 (Central European Summer Time)
    ; General preferences
    G90 ; send absolute coordinates...
    M82 ; ...but relative extruder moves
    M550 P"Opto Pnp" ; set printer name
    ; Network
    M552 S1 ; enable network
    M586 P0 S1 ; enable HTTP
    M586 P1 S0 ; disable FTP
    M586 P2 S1 ; disable Telnet
    ; Drivesh
    M569 P0 S0 ; physical drive 0 goes forwards
    M569 P1 S0 ; physical drive 1 goes forwards
    M569 P2 S1 ; physical drive 2 goes forwards
    M569 P3 S1 ; physical drive 3 goes forwards
    M569 P4 S1 ; physical drive 4 goes forwards
    ;M569 P5 S1 ; physical drive 5 goes forwards
    M584 X0 Y1 Z2 E3:4 ; set drive mapping
    M350 X64 Y64 Z4 E32:32 I1 ; configure microstepping with interpolation
    M92 X213.507 Y213.70972 Z20.21 E17.777:17.777 ; set steps per mm
    M566 X900.00 Y900.00 Z900.00 E900.00:900.00 ; set maximum instantaneous speed changes (mm/min)
    M203 X70000.00 Y22500 Z5000.00 E5000:5000 ; set maximum speeds (mm/min)
    M201 X6800.00 Y2000.00 Z2000.00 E2000:2000 ; set accelerations (mm/s^2)
    M906 X3000 Y2800 ; set motor currents (mA) and motor idle factor in per cent
    M906 Z2300 ; set motor currents (mA) and motor idle factor in per cent
    M906 E600:600 I15 ; set motor currents (mA) and motor idle factor in per cent
    M84 S300 ; Set idle timeout for all axis
    M917 X15 Y15 Z100 E100:100
    ; Axis Limits
    M208 X-7.7 Y-39.2 Z-22.5 S1 ; set axis minima
    M208 X650 Y400 Z22.5 S0 ; set axis maxima
    M208 E-18000 S1 ; set axis maxima
    M208 E18000 S0 ; set axis maxima
    ; Endstops
    M574 X1 S3 ; configure sensorless endstop for low end on X
    M574 Y1 S3 ; configure sensorless endstop for low end on Y
    M574 Z1 S3
    M574 E1 S3 ; configure sensorless endstop for low end on Z
    ; Define Tool 0
    M563 P0 D0
    ; Define Tool 1
    M563 P1 D1
    ;M564 H0 ; Allow move with unhomed asix
    ; GPIO
    M950 P0 C"out1" ; Air Pump
    M950 P1 C"out7" ; Air Valve1
    M950 P2 C"out8" ; Air Valve2
    ; Fans
    ; Tools
    ; Custom settings are not defined
    1 Reply Last reply Reply Quote 0
    • undefined
      Phaedrux Moderator
      last edited by 14 Oct 2020, 17:26

      Can you also post your tool change files?

      Z-Bot CoreXY Build | Thingiverse Profile

      1 Reply Last reply Reply Quote 0
      • undefined
        optical
        last edited by 14 Oct 2020, 21:31

        I do not have any tool change scripts inside my configuration.

        My only tool change commands are T0 and T1.

        undefined 1 Reply Last reply 15 Oct 2020, 09:29 Reply Quote 0
        • undefined
          Phaedrux Moderator
          last edited by 14 Oct 2020, 21:56

          @optical said in Secondary Tool move breaks Z homing:

          ; Define Tool 0 M563 P0 D0 ; Define Tool 1 M563 P1 D1

          I notice no tool offsets here, but I assume that's also because this is a unique machine?

          Can you post your homing files?

          Is this perhaps related to your other thread on this machine?

          Z-Bot CoreXY Build | Thingiverse Profile

          1 Reply Last reply Reply Quote 0
          • undefined
            optical
            last edited by 15 Oct 2020, 09:14

            These are all of the homing scripts.

            homeall.g homez.g homey.g homex.g

            The maniche is Pick and Place software. The offsets are handled inside openpnp.
            However this issue can be replicated without the openpnp. Just by gcode above.

            In the other thread i'm dealing with issue how to configure absolute independent rotation axis.

            Honestly i do not know what causes the issue. I have spend a lot of time debuging this issue because is seemed to be a random, unitl i found out it stop happedning when i disabled the other pnp head. After that i was able to replicate it by the gcode above.

            1 Reply Last reply Reply Quote 0
            • undefined
              dc42 administrators @optical
              last edited by dc42 15 Oct 2020, 09:29

              @optical said in Secondary Tool move breaks Z homing:

              I do not have any tool change scripts inside my configuration.

              What we are asking is whether you have files tfree0.g, tpre0.g and tpost0.g in /sys on the SD card, and similar files for tool 1; and if so, what is in them.

              Duet WiFi hardware designer and firmware engineer
              Please do not ask me for Duet support via PM or email, use the forum
              http://www.escher3d.com, https://miscsolutions.wordpress.com

              1 Reply Last reply Reply Quote 0
              • undefined
                optical
                last edited by optical 15 Oct 2020, 09:35

                I do not have any tool change files tfree0.g, tpre0.g and tpost0.g in /sys on the SD card
                Untitled.png

                undefined 1 Reply Last reply 14 Nov 2020, 18:18 Reply Quote 0
                • undefined
                  dc42 administrators
                  last edited by dc42 15 Oct 2020, 09:41

                  Thank you.

                  @optical said in Secondary Tool move breaks Z homing:

                  G0 180 ; Tool 0 moves to 180

                  I presume that is a mis-print, because G0 180 doesn't make sense (there is no parameter letter before the 180). What should it be? Does the problem still occur with these three G0 commands removed, i.e. just the T commands between G28 and G28 Z?

                  Duet WiFi hardware designer and firmware engineer
                  Please do not ask me for Duet support via PM or email, use the forum
                  http://www.escher3d.com, https://miscsolutions.wordpress.com

                  1 Reply Last reply Reply Quote 0
                  • undefined
                    dc42 administrators
                    last edited by 15 Oct 2020, 09:45

                    PS:

                    @optical said in Secondary Tool move breaks Z homing:

                    M208 E-18000 S1 ; set axis maxima M208 E18000 S0 ; set axis maxima

                    Extruder are not axes, so those commands won't do anything; but I wouldn't expect them to mess anything up.

                    Duet WiFi hardware designer and firmware engineer
                    Please do not ask me for Duet support via PM or email, use the forum
                    http://www.escher3d.com, https://miscsolutions.wordpress.com

                    1 Reply Last reply Reply Quote 0
                    • undefined
                      optical
                      last edited by 15 Oct 2020, 19:24

                      So i tested again the minimal sample and discovered following:

                      G28
                      T0
                      T1
                      G28 Z; Works fine
                      G28
                      T0
                      G0 Z10
                      T1
                      G0 Z0
                      T0
                      G0 Z10
                      G28 Z ; works fine
                      G28
                      T0
                      T1
                      G0 E10
                      G28 Z; failed

                      This makes me think that maybe the issue is related to the other thread regarding this machine.
                      Sorry for the previous gcode example. That has not been accurate enough.

                      1 Reply Last reply Reply Quote 0
                      • undefined
                        optical
                        last edited by 15 Oct 2020, 20:19

                        I have testing different driver mapping to ensure that the issue is not connected to board it self.

                        After that i confirmed that the Induction sensor(it has led on the back) is still working after the failed homing, to ensure that somehow the input has not been disabled.

                        1 Reply Last reply Reply Quote 0
                        • undefined
                          dc42 administrators
                          last edited by dc42 16 Oct 2020, 20:44

                          Thanks. Please can you upgrade the firmware to 3.2beta1 and see if the issue is still present.

                          Duet WiFi hardware designer and firmware engineer
                          Please do not ask me for Duet support via PM or email, use the forum
                          http://www.escher3d.com, https://miscsolutions.wordpress.com

                          1 Reply Last reply Reply Quote 0
                          • undefined
                            optical
                            last edited by 16 Oct 2020, 21:29

                            Hi.
                            I have tried 3.2beta2 and 3.2beta1 issue present in both of the versions.

                            1 Reply Last reply Reply Quote 0
                            • undefined
                              dc42 administrators
                              last edited by 17 Oct 2020, 08:32

                              Thank you. I will try your config file on my bench setup and try to reproduce the problem.

                              Duet WiFi hardware designer and firmware engineer
                              Please do not ask me for Duet support via PM or email, use the forum
                              http://www.escher3d.com, https://miscsolutions.wordpress.com

                              1 Reply Last reply Reply Quote 0
                              • undefined
                                optical
                                last edited by optical 20 Oct 2020, 10:05

                                Hi,
                                today i have been able to produce behavior to use the tools with axis mapping to remember their position.
                                I have changed the rotation to be represented by axis X(One nozzle). The other i have mapped to axis V to be able to use M563 to change driver mapping for Axis X.

                                However, the issue with inverting axis is still present. This time right after homing.

                                G28
                                G28 Z

                                Note: I think it would be nice to allow using M563 to remap any axis. Due to this limitation i had to move my X axis to be labeled as U. Which makes things rather messy.

                                G28 Z
                                G28 V
                                G28 Z ; Failes

                                This is the minimal usecase when the Z homing failes.
                                It is propable related to the way i'm homing the axis which does not have endstops and are infite(free-rotation).

                                Could you help me maybe change the way i'm homing the rotation axis ? Is there Gcode which would just declare the axis as homed ?
                                Currently i set the stall detection to lowest value and move.
                                These axis can be homed in any position.

                                The other possibility is that the Z axis breaks whenever the second tool/driver moves.

                                Configuration:
                                homeall.g config.g homez.g homey.g homex.g homev.g homeu.g

                                undefined 1 Reply Last reply 20 Oct 2020, 16:26 Reply Quote 0
                                • undefined
                                  Phaedrux Moderator @optical
                                  last edited by 20 Oct 2020, 16:26

                                  @optical said in Secondary Tool move breaks Z homing:

                                  Is there Gcode which would just declare the axis as homed ?

                                  G92 will let you set the position of an axis.

                                  https://duet3d.dozuki.com/Wiki/Gcode#Section_G92_Set_Position

                                  Z-Bot CoreXY Build | Thingiverse Profile

                                  1 Reply Last reply Reply Quote 0
                                  • undefined
                                    optical
                                    last edited by 20 Oct 2020, 22:49

                                    I tested new homing scripts using G92 for the infinite axis. And i have come to conclusion that whenever the other drive(Currently V axis) moves. The Z axis homing becomes inverted.

                                    1 Reply Last reply Reply Quote 0
                                    • undefined
                                      optical
                                      last edited by optical 20 Oct 2020, 22:58

                                      After further testing it seems that somehow the input is inverted.

                                      M574 Z2 P"!io0.in" S1
                                      

                                      Because the problem of the movement is "solved" not present when i remove the induction probe connector from the board.
                                      Is it possible that switching from the probe endstop to sensorless endstop breaks the input ?

                                      After messing with the endstop settings. I think that really something is wrong with the input it self.

                                      G28
                                      T1
                                      G1 X10
                                      G28 Z ; Broken home
                                      M574 Z2 P"!io0.in" S1
                                      G1 H1 Z+40 F500 ; stops immidiently even when sensor is not triggered
                                      M574 Z0 P"nil"
                                      G1 H1 Z+40 F500; Continues fine
                                      M574 Z2 P"!io0.in" S1
                                      G1 H1 Z+40 F500 ; stops immidiently even when sensor is not triggered

                                      I have tried to change io0 for io1. The issue is still present.
                                      I have checked that the sensor is indeed working even when the problem with the io is present.

                                      1 Reply Last reply Reply Quote 0
                                      • undefined
                                        Phaedrux Moderator
                                        last edited by 20 Oct 2020, 23:54

                                        Well the ! inverts the signal.

                                        Z-Bot CoreXY Build | Thingiverse Profile

                                        undefined 1 Reply Last reply 21 Oct 2020, 01:32 Reply Quote 0
                                        • undefined
                                          optical @Phaedrux
                                          last edited by optical 21 Oct 2020, 01:32

                                          @Phaedrux Ofcourse it does the inversion is correct. The input works for the homing until the Tool 1 is moved then it stops working(propably gets inverted (uninverted)).
                                          I'm suggesting that it is propably a bug inside the firmware.

                                          1 Reply Last reply Reply Quote 0
                                          4 out of 62
                                          • First post
                                            4/62
                                            Last post
                                          Unless otherwise noted, all forum content is licensed under CC-BY-SA