Saturday, November 23, 2013

Toast-R-Reflow theory of operation

If anyone cares to know how the Toast-R-Reflow actually works, it goes something like this:

The power board consists of a pair of MOC3020 photo-triac drivers, each triggering the gate of a BTA20 high current triac. The MOC3020s are directly connected to a set of screw terminals intended to be run to the logic board, which will be expected to provide the correct driver voltage and current for the LEDs.

The actual triac circuit is straight out of the datasheet. I confess I am not 100% sure of the purpose of each of the parts beyond the optoisolators, but each of the triac drivers is rated for 8 amps of current (this rating is due mainly to the width of the traces on the board running to the triac pins and the heatsinks' ability to get the heat out of the triacs when they're installed next to a box being heated to 225 °C). This means that if you can drive the two elements separately, you can handle up to 1920 watts of power, which should be plenty for a consumer grade toaster oven or hotplate.

The controller board has an AD8495 thermocouple amplifier on it. This amplifier outputs a voltage of 5 mV per °C detected on the thermocouple. This voltage is fed into analog pin 3 on the ATTiny controller. Two of the pins of the ATTiny are used as the i2c bus to drive the external 2 line RGB display, which also as a side effect handles the start button. Two of the other pins of the ATTiny are power and one is RESET, which leaves us with two digital out pins that we can send off to the power board (going through 150 ohm resistors first in order to produce the correct LED driver current).

The software uses the Arduino PID library to turn the elements on and off with a sort of exaggerated PWM method. The PID will output a floating point number between 0 and 1000, and that's the number of milliseconds out of each second that the elements will be powered (this is similar to how microwave ovens deliver fractional power). The sketch will attempt to turn the elements on separately, so that if the duty cycle is 50% or less, they won't be on at the same time, which will reduce the instantaneous power draw somewhat.

One point of note is that the one of the pins of the controller used for programming is also one of the element control lines. This means that that line will have a great deal of random activity during programming. Because of this, it's important to make sure the oven is unplugged during programming, otherwise you'll be pulsing the elements randomly and they could conceivably overheat.

No comments: