System Setup

image.png

Component

  1. Laptop for firmware programing and running python script
  2. Blackpill (STM32 F411CE) choosen for speed and ADC resolution
  3. Mosfet Module
  4. Hakko907 with connector
  5. 3D printed Snapboard framework for fast ptototyping
  6. Switching PSU

image.png

Temperature Sensor

This soldering Iron use RTD ( Resistance temperature detectors) based sensor, basically, it’s resistor that linearly to temperature unlike thermistor which behave nonlinearly. Also it easy to read compare to thermocouple that required amplifier. Thank to this instructable https://www.instructables.com/DIY-Digital-Soldering-Station/

Behavior of HAKKO 907 from https://www.instructables.com/DIY-Digital-Soldering-Station/

Behavior of HAKKO 907 from https://www.instructables.com/DIY-Digital-Soldering-Station/

To read this sensor I use simple voltage divider circuit and pick the 100 ohms resister for highest sensitivity on interesting temperature range (200 degree celcius)

Mosfet PWM driver

Our MOSFET module uses a phototransistor with a pull-down resistor to drive the gate, resulting in a fast turn-on but a slower turn-off. This causes duty cycle distortion, where a 2% input becomes approximately 5% at the output, and a 10% input becomes around 14%.

Despite this distortion, the module is capable of fully turning on at a PWM frequency of 1 kHz with duty cycles as low as 2%. I selected 1 kHz to minimize the time the MOSFET spends in the linear region, while still being fast enough to support a 100 Hz control update rate.

V_GS at 2% duty cycle 1KHz input

V_GS at 2% duty cycle 1KHz input

V_GS at 10% duty cycle 1KHz input

V_GS at 10% duty cycle 1KHz input