Heatbed with SSR with maximum on time
-
I have a duet 2 wifi and I want to control my heatbed with SSR. I have made the connection and everything works ok, but I want a maximum on time for the SSR during continuous heating at the beginning of the heating procedure when the SSR is always on (for example when going from 25 to 60degrees before the PID procedure turns on). I want that for heat spread across my bed. Is there a way to program duet do that? Thank's in advance!
-
If all you want is a delay to allow the heat to spread across the plate you can insert a G4 command to wait a number of seconds after the heating command has released.
M190 S60 ; set bed temp to 60 and wait for temp
G4 S120 ; wait for 2 minutes before proceeding -
Thank you for your quick reply! I know that function but my problem is that I don't want the heating element to be on for more than a few seconds because it reaches very high temperatures.
-
Where is the thermistor located? The heater shouldn't exceed your set temp if the thermistor is close to the heat source.
Have you done a PID tuning yet?
-
The bed is a 1m^2 aluminum plate with 15mm height and the heating element is oven resistors 18 of them each one around 600w so we have a total of around 10kW. I have 5 thermistors one in the center of the bed and 4 of them around 300mm from each corner of the bed. I haven't yet powered them up I was just asking if I can eliminate the average power of the resistors and give some delay for the heat to spread (with for example half time on half time off during the heat up procedure).
-
Ah I see, in the context of your application it makes more sense on what you're asking for.
You could perhaps reduce the PWM power factor (M307 S0.5). Or reduce the PWM frequency (M950 Q) to something slow like 1 second.
https://duet3d.dozuki.com/Wiki/Gcode#Section_M950_Create_heater_fan_or_GPIO_servo_pin
https://duet3d.dozuki.com/Wiki/Gcode#Section_M307_Set_or_report_heating_process_parameters
Just some ideas until someone with a better grasp comes along.
-
Thank you very much!
-
@Phaedrux said in Heatbed with SSR with maximum on time:
Ah I see, in the context of your application it makes more sense on what you're asking for.
You could perhaps reduce the PWM power factor (M307 S0.5). Or reduce the PWM frequency (M950 Q) to something slow like 1 second.
https://duet3d.dozuki.com/Wiki/Gcode#Section_M950_Create_heater_fan_or_GPIO_servo_pin
https://duet3d.dozuki.com/Wiki/Gcode#Section_M307_Set_or_report_heating_process_parameters
Just some ideas until someone with a better grasp comes along.
Those are a good start! With 10kW of load, switching losses could be quite significant, I would expect the SSR (or maybe SSR's) to need at least a large heatsink. PWM'ing 10kW would be very lossy, probably noisy too!
Or maybe switch to IGBT's, which tend to have much lower thermal losses.10kW is a huge load... I suspect more than enough to melt your aluminium bed. I'm curious why you need so much power?
And RRF isn't really designed to deal with really big delays in the thermal loop. Is there a reason why you can't have a bed heater that is less likely incinerate itself? You could also look at connecting your sensors very close to or even directly to the resistors.
But it sounds like you are trying to power a golf cart with a jet engine... -
You could put another thermistor on one of the resistors, and use M143 to temporarily turn off the bed heater if the resistor gets too hot.
-
@Phaedrux
After connecting everything and trying a PID tune because of the very large heat capacity of the aluminum plates the initial climb of the temp was very slow. The set temperature was 40 degrees. After around 4 minutes the bed reached that temperature and power was turned off. The temperature kept climbing until 113 degrees!
Also because of the large load it's not good to turn it on and off very frequently I tried lowering the power factor and the PWM frequency but its still too fast. So I thought that I will turn to bang bang control.
Apart from the initial peak temperature the control works very fine because it keeps the temperature with around 1 degree accuracy which is quite acceptable for this large format (and it will become more accurate when closing the printer [less loses] ).
For now my heat up procedure goes like:- Set bed temperature to 30 degrees
- Wait when it peaks at around 62 degrees
- Set bed temperature to 60 degrees
- It turns on every around 3 minutes for 15 seconds and then off again and goes from 59.9 to 60.8
Is there a way to set for example a set time for a heater to be on?
Also is there a wait function?
In order to write a heat up g-code.
Thank you in advance!
-
@Argiros-Apostolos said in Heatbed with SSR with maximum on time:
Is there a way to set for example a set time for a heater to be on?
Also is there a wait function?Yes there is.
https://duet3d.dozuki.com/Wiki/Gcode#Section_G4_Dwell