Duet 3: PWM out 10Hz (for SSR/heatbed) causes strange problems
-
Hello everyone,
i have some really strange problems when i set the PWM frequency for my heatbed SSR to 10 Hz by using the command M950 H0 Q10.
(My hardware is: Ratrig V core 3 printer, Duet 3 Mini 5 Board (RRF 3.2), Keenovo 230V 1000W bed heater, 24 V 250 W power supply)
It started with the fact that, although PID control is enabled and PID tuning done, I noticed very strong temperature fluctuations of my heatbed.
When i set 70 ° the displayed value alternated permanently between 68.5 ° and 71 °, with corresponding effects on the print result (uniform wave formation in Z direction).Then I came to the conclusion that the PWM frequency for the board output that controls the SSR is set to 250 Hz by default on the Duet 3 board and the recommended frequency is only 10 Hz.
So I changed the frequency to 10 Hz (in config.g: M950 H0 C "out0" Q10 T0).
The temperature control now works very well and only fluctuates by 0.2 °.BUT the following strange problems now occured when the bed is heated up (to 70 °) and is in the regulation phase:
-
My desk lamp flickers at 10 Hz (ok, if 1000 W are always switched on and off, this may still be understandable ..)
-
I can no longer upload (G-Code) files to the SD card, three attempts were made and then the error message "Network error" appears. The connection is stable and I can also operate everything by using DWC.
-
When printing a simple test object (rectangular box, two outer walls, no floor / ceiling, 60 mm/s printing speed) the X / Y stepper always stutter every 2-3 layers in the exactly same place (the middle of the longest side of the rectangle). Of course, this then leads to blobs at the points where the print head pauses for a moment.
If I now set the active temperature for the heating bed to 0 ° via the console, so the control of the SSR is switched off, then all problems disappear!!!
Likewise, everything runs smoothly when I set bang-bang instead of PID control.
With the PID control with 250 Hz PWM I don't have any of the problems mentioned above, only then the control doesn't work properly either.I hope somebody can help me..
Many thanks and best regards
TobiasHere is my config.g
; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"V-Core 3" ; set printer name M669 K1 ; CoreXY G29 S1 ; Set Units to Millimeters ; Network M552 S1 ; enable network and acquire dynamic address via DHCP M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet ; Drives M569 P0.0 S1 D3 ; physical drive 0.0 goes forwards M569 P0.1 S1 D3 ; physical drive 0.1 goes forwards M569 P0.2 S1 D3 ; physical drive 0.2 goes forwards M569 P0.3 S1 D3 ; physical drive 0.3 goes forwards M569 P0.4 S1 D3 ; physical drive 0.4 goes forwards M569 P0.5 S1 D3 ; physical drive 0.5 goes forwards M584 X0.4 Y0.3 Z0.0:0.1:0.2 E0.5 ; set drive mapping M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X80.00 Y80.00 Z800.00 ; set steps per mm M906 X1300 Y1300 Z800 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout M566 X600.00 Y600.00 Z120.00 E120.00 P1 ; set maximum instantaneous speed changes (mm/min) M203 X24000.00 Y24000.00 Z1000.00 E3600.00 ; set maximum speeds (mm/min) M201 X3000.00 Y3000.00 Z500.00 E3600.00 ; set accelerations (mm/s^2) ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X410 Y400 Z400 S0 ; set axis maxima ; Endstops M574 X1 S1 P"io1.in" ; configure active high endstops M574 Y2 S1 P"io0.in" ; configure active high endstops M574 Z1 S2 ; configure Z-probe endstop for low end on Z M671 X-4.5:200:404.5 Y-4.52:405:-4.52 S5 ; define positions of Z leadscrews or bed levelling screws M557 X20:380 Y20:380 P4 ; define 4x4 mesh grid ; Heaters M308 S0 P"temp0" Y"thermistor" T100000 B3950 A"Bed" ; configure sensor 0 as thermistor on pin temp0 M950 H0 C"out0" Q10 T0 ; create bed heater output on out5 and map it to sensor 0 M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S110 ; set temperature limit for heater 0 to 110C ; Bed PID Tune M307 H0 R0.676 C400.9 D7.89 S1.00 V24.2 ; Fans M950 F0 C"out3" Q500 ; create fan 0 on pin out3 and set its frequency M106 P0 C"Hotend Fan" S0 H1 T45 L255 ; set fan 0 name and value. Thermostatic control turned on for Hotend M950 F1 C"out4" Q500 ; create fan 1 on pin out4 and set its frequency M106 P1 C"Layer Fan" S0 H-1 L255 ; set fan 1 name and value. Thermostatic control is turned off ; Tools M563 P0 D0 H1 F1 ; 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 M950 H1 C"out1" T1 ; create nozzle heater output on out2 and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H1 S300 ; set the maximum temperature in C for heater ; EVA 2 / BMG / E3D V6 M92 E400 ; set extruder steps per mm, 0.9 angle/step (LDO Pancake) M906 E500 ; set extruder motor current (mA) and idle factor in per cent M308 S1 P"temp1" Y"thermistor" T100000 B4148 A"Hotend" Heater PID Tune M307 H1 R2.704 C199.3 D12.59 S1.00 V24.1 ; Z-Probe ;; Inductive Probe ; M558 P5 C"!io3.in" H5 F400 T5000 ; set Z probe type to unmodulated and the dive height + speeds ; G31 P500 X-30 Y-15 Z0.20 ; set Z probe trigger value, offset and trigger height, more Z means closer to the bed ;; BLTouch M950 S0 C"io2.out" ; Create a servo pin on io2 M558 P9 C"io2.in" H5 F240 T10800 A5 ; set Z probe type to unmodulated and the dive height + speeds G31 P25 X-28.00 Y-13.00 Z2.6 ; set Z probe trigger value, offset and trigger height, more Z means closer to the bed M404 N1.75 D0.8 ; Filament width and nozzle diameter T0 ; Pressure Advance M572 D0 S0.15
-
-
I believe there's a bug regarding that that's been corrected in later versions.
Release notes from RepRapFirmware 3.3beta3:
[Duet 3 Mini] When a low PWM frequency (e.g. 10Hz) was used on a heater, then movement was sometimes disrupted causing sudden jerks. Heaters connected to OUT0 and OUT2 suffered from this but OUT1 did not. Even lower PWM frequencies (e.g. 5Hz) disrupted SD card access too.So maybe upgrade to the stable version 3.3 ?
-
@gixxerfast said in Duet 3: PWM out 10Hz (for SSR/heatbed) causes strange problems:
So maybe upgrade to the stable version 3.3 ?
problem solved after upgrading to 3.3.
Thank you!
-
@to-mac There's a monster thread (280 posts) that lead to tracking this bug down. Link to @dc42's explanation: https://forum.duet3d.com/post/226954
Ian