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

    Strange behavior

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    3
    4
    324
    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.
    • jhonf441undefined
      jhonf441
      last edited by jhonf441

      Hello, today I saw something that is not usual and I do not find which can be the source, after doing G28, manually I want to take Z to zero and use the movements in PanelDue, when I am in z=0 and use -0.05 the position of Z varies from Z from zero to -0.05 and vice versa every time I use it.

      this behavior only happens with a movement of z=-0.05 with others nothing happens.

      attached video link.

      https://www.youtube.com/watch?v=jZXcS6Zo08s&feature=youtu.be

      Board: Duet WiFi 1.02 or later
      Firmware: RepRapFirmware for Duet 2 WiFi/Ethernet 2.03 (2019-06-13b2)
      Duet WiFi Server Version: 1.23

      config.g

      ; Configuration file for Duet WiFi (firmware version 1.21)
      ; executed by the firmware on start-up
      ;
      ; generated by RepRapFirmware Configuration Tool v2 on Fri Mar 15 2019 23:53:22 GMT-0500 (hora estándar de Colombia)
      
      ; General preferences
      G90                                    		; Send absolute coordinates...
      M83                                     	; ...but relative extruder moves
      G21						; G21 establece las unidades en mm / G20 establece las unidades en pulgadas 
      ; kinematics type
      M669 K1                                		; Select CoreXY mode
      
      ; Network 
      
      M550 P"Scorexy"                        		; Set machine name
      M551 P"567544"                        	; Set password
      M552 S1                               	 	; Enable network
      M586 P0 S1                               	; Enable HTTP
      M586 P1 S0                              	; Disable FTP
      M586 P2 S0                               	; Disable  Telnet
      
      ; Drives
      M569 P5 S1                           	 	; Drive 5 goes forwards axis  X
      M569 P6 S1                               	; Drive 6 goes forwards axis Y
      M569 P7 S1                               	; Drive 7 goes forwards Extrusor
      M569 P8 S1                               	; Drive 8 goes forwards Axis z
      M569 P9 S1				 	; Drive 9 goes forwards Axis Z
      M569 P10 S1				 	; Drive 10 goes forwards axis z
      M569 P11 S1 				 	; Drive 11 goes forwards axis z
      M584 X5 Y6 Z8:9:10:11  E7    			; Apply custom drive mapping and four Z motors connected to driver outputs 8, 9, 10 and 11 Z
      M350 X16 Y16 Z16:16:16:16 E16 I1                ; Configure microstepping with interpolation
      ;M350 U16 V16 W16  I1
      M92 X80 Y80 Z400:400:400:400 E415        	; Set steps per mm
      ;M92 U400 V400 W400 
      M566 X900 Y900 Z30:30:30:30 E20     	 	; Set maximum instantaneous speed changes (mm/min)
      ;M566 U30 V30 W30 
      M203 X18000 Y18000 Z100:100:100:100 E1500  	; Set maximum speeds (mm/min)
      ;M230 U100 V100 W100 
      M201 X4000 Y4000 Z100:100:100:100 E1000     	; Set accelerations (mm/s^2)
      ;M201 U100 V100 W100 
      M84 S30                                  	; Set idle timeout
      
      ; define posiciones de los tornillos
      M671 X-321:-321:317:317 Y-144:184:184:-144 S4 F1.1	;agregar parametro F2
      
      ; Axis Limits
      M208 X-267 Y-245 Z0 S1                         	; Set axis minima
      M208 X267 Y230 Z406 S0                   	; Set axis maxima
      
      ; Endstops
      M574 X1 Y1 S0                            	; S_ endstop-type: 0 = active low, 1 = active high, 2 = slice-direction-probe, 3 = motor load detection
      
      
      
      ; Z-Probe
      M574 Z1 S2                               	; Set endstops controlled by probe
      M307 H3 A-1 C-1 D-1                             ; Disable heater on PWM channel for BLTouch
      M558 P9 H5 F120 T18000 A10 R0.75 S0.03 B1       ; Set Z probe type to bltouch and the dive height + speeds
      G31 P25 X0 Y-33 Z0.84   			; Set Z probe trigger value, offset and trigger height
      M557 X-245:245 Y-200:182 P2:2;S10:10                 	; Define mesh grid
      
      ; Heaters
      M305 P0 T100000 B4138 R4700              	; Set thermistor + ADC parameters for heater 0
      M143 H0 S120                             	; Set temperature limit for heater 0 to 120C
      M305 P1 T100000 B4725 C7.060000e-8 R4700        ; Set thermistor + ADC parameters for heater 1
      M143 H1 S250                             	; Set temperature limit for heater 1 to 250C
      M912 P0 S-6.5					; ajuste el calentador 1 ajuste electronico del monitor de temperatura en grados centigrados 
      
      ; Fans
      ;M106 P0 I0; invertir PWM del ventilador 1
      M106 P0 S0 F500 H-1                   		; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
      M106 P1 S1 I0 F500 H1 T45                	; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
      M106 P2 S127 I1 F500 H-1                   	; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned off
      
      ; Tools
      M563 P0 D0 H1                            	; Define tool 0
      G10 P0 X0 Y0 Z0                          	; Set tool 0 axis offsets
      G10 P0 R0 S0                             	; Set initial tool 0 active and standby temperatures to 0C
      
      ; Avance de presión unidad extrusora 
      ;M572 D0 S0.06
      
      ; Automatic saving after power loss is not enabled
      M911 S21 R23 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; Set voltage thresholds and actions to run on power loss
      
      ; Custom settings are not configured
      
      
      
      
      ; activar bltouch
      M280 P3 S160 I1 ; Alarm Release and Push-Pin UP
      
      
      
      M929 P"eventlog.txt" S1; iniciar el registro en el archivo eventlog.txt
      
      ;LEDs
      M307 H4 A-1 C-1 D-1  
      M307 H5 A-1 C-1 D-1  
      M307 H6 A-1 C-1 D-1
      M307 H7 A-1 C-1 D-1    
      
      ; GUI config
      ;M404 N1.75	; display for users nominal-filament-diameter/width of setup, in this case 1.75mm
      
      
      ; seleccionar herramienta
      T0
      
      
      
      ; Load any saved values from last use, that were saved with M500 command
      M501	; Ensure that M501 is at the end of config.g in order for the values in config-override.g to be loaded at startup
      ; config done
      ;M291 P"Config done" S2 T3	; send message
      ;M300 S300 P1000	; beep
      ;M292 ; Hide the message
      M80
      

      and the response of M564 and M290

      24/6/2019, 12:02:56 a. m.	M564
      Movement outside the bed is not permitted, movement before homing is not permitted
      
      24/6/2019, 12:03:31 a. m.	M290
      Baby stepping offsets (mm): X:0.000 Y:0.000 Z:0.000
      
      1 Reply Last reply Reply Quote 0
      • dc42undefined
        dc42 administrators
        last edited by

        Yes that does look odd. I've tracked it down and it's to do with allowing for axis rounding error. When distances are converted to motor steps and back again, in general they do not round-trip exactly. So when you convert Z=0 to a motor microstep position and back again, you may get a slightly negative Z. To allow for this, the firmware allows a rounding error of up to 0.05mm. That's why it allows you to step down 0.05mm but not 0.1mm. I think the simplest fix is for me to reduce the allowed rounding error, perhaps to 0.02mm. I can't make it depend on the steps/mm because that gets complicated when using some kinematics types such as CoreXZ and Helios SCARA.

        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
        • Vetiundefined
          Veti
          last edited by

          @dc42 said in Strange behavior:

          I think the simplest fix is for me to reduce the allowed rounding error, perhaps to 0.02mm.

          should that not be based on the steps per mm for the axis?
          i.e with a 2mm lead screw a full step is 0.01mm

          dc42undefined 1 Reply Last reply Reply Quote 0
          • dc42undefined
            dc42 administrators @Veti
            last edited by

            @veti said in Strange behavior:

            @dc42 said in Strange behavior:

            I think the simplest fix is for me to reduce the allowed rounding error, perhaps to 0.02mm.

            should that not be based on the steps per mm for the axis?
            i.e with a 2mm lead screw a full step is 0.01mm

            Like I said in my previous response, this gets complicated when there is more than one motor affecting the movement of an axis. It's even more complicated when using nonlinear kinematics such as delta and Scara.

            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
            • First post
              Last post
            Unless otherwise noted, all forum content is licensed under CC-BY-SA