More reworking, and trouble with thermocouples

A project log for RT Soldering Station

A basic soldering station for Weller RT tips

David H. BronkeDavid H. Bronke 03/01/2019 at 05:160 Comments

So, since the last project log, (actually, since Monday) I've actually switched microcontrollers twice: first, from the Nano to the Pro Mini, and then to the Pro Micro. (the Pro Mini doesn't have enough code space to fit the library for the OLED screen I'm using and still have room for anything else) Oh yeah... I also added an OLED screen!

I've gotten it up and running, and I'm able to heat the tip up pretty quickly, even at 5V. I also switched from manually-implemented PWM to the built-in PWM in the ATmega32u4, and just turned the PWM frequency way down to not incur too much heat due to switching the MOSFET on and off.

Now, the problem is the thermocouple in the soldering tip. I had started this project out by substituting an OPA4228 in place of the OPA344 used by Hans Peter Haastrup's Soldering Pen project. (which itself was replacing the OPA2336 used by Martin Kumm's SMD Soldering Station) Apparently I didn't set it up correctly, though, since the analog read I'm doing always bounces between 8 and 16, regardless of the actual temperature of the tip. (measured with the thermocouple that came with my multimeter) You'd think I'd be able to get a different reading from a 74°F tip than from a 240°F tip... but then I went back to Martin Kumm's project, and realized that the thermocouple in the tip is rated at about 16 μV/K. So apparently I need much higher gain... which might also mean I'll need a  lower noise op-amp.

Update: So, I tried swapping the OPA4228 out for a TL074CN and got excited because it suddenly started reading inputs in the high 800's instead of around 12! But then I realized that apparently this is just a DC offset of some sort; it still doesn't seem to change at all in relation to the temperature of the tip, and messing with the feedback resistors around the op-amp hasn't helped yet. I'm hoping someone else sees what I'm doing wrong, because I'm pretty stumped.

One more thing I've noticed is that the rotary encoder is... finicky. It seems I'll either have to reimplement the encoder logic using interrupts, or get a different encoder that doesn't have 4 separate transitions per detent.

In the meantime, I've been pushing updates to the GitLab project, including updated Fritzing files. Feel free to check them out and let me know if I messed something up!