Pages

Thursday, May 9, 2013

New Heater for summer!

The MM2.0 uses a nifty heater cartridge instead of the old standard resistor to provide heat to the hot end. We really liked the ease of connection of the cartridge, not to mention that it's been designed to heat things up, while a resistor is really designed to provide resistance and heat generation is a byproduct of it's primary function.

We did some hunting around and found a supplier of heater cartridges that work with a 12V supply. The cartridge is about 3.5 ohms, which means it eats 41W... this is more than the old resistor heater (6 ohms) and so it heats up much faster.

The heater element is connected the part with the red wires attached...

With the previous firmware settings we were having a problem with the heater overshooting the target temperature by quite a lot (>40c) which could be a real problem if we want to use it to print Nylon or ABS. We could easily exceed the maximum hotend temperature.

We tried to use the auto-tune settings built into Marlin by sending a M303 S200. This tells the printer to measure the PID performance as it get to 200c. However, because of the overshooting temperature the auto-tune would fail as the temperature got too high compared to the target.

A little digging in the temperature.cpp file found the following lines:

There is a line that used to say if (input>(temp+20))... so in our case, once we went above 220, the auto-tune would fail. I ended up modifying this to +40 and then set the target temperature to 150, with: M303 S150.

This worked, and auto-tune was able to complete and I then used the outputed numbers in the firmware. I then re-ran the auto-tune, this time with the target temperature set for 180. Took the new PID values and plugged those into the firmware.

We're still not happy with the results, but it's better than it was, but still overshoots the target temperature when the hotend starts up, just not as much as before.