Escolar Documentos
Profissional Documentos
Cultura Documentos
Arduino Nano R3 × 1
Resistor 1k ohm × 3
Resistor 5.1k × 1
Resistor 10k ohm × 3
Capacitor 100 nF × 5
gx12-5 connector × 1
1
2
3
4
First problem was the connector, built on the soldering iron. It was so rarely
used, i could not find the socket for it, so i used another pair of connectors that
suit the characteristics of the soldering iron. This is aviation plug GX12 -5 with
5 pins.The wires of the iron handle are: black - minus, green - plus (24v), red -
should be ground. Actually, i did not attached anywhere the red wire. The main
two wires are the black one which is connected to the ground of the controller
and the green one which is connected to the plus pin.
1
2
3
Second problem was one that the iron has only two pins to connect to the
controller. The iron has the thermocouple inside that is connected consequently
with the heating element. The thermocouple generates a small amount of
electricity, about 2-9 millivolts depending on the iron temperature. The black
wire is minus, the green wire is plus, do not change them. To register this
electricity accurate operating amplifier IC must be used. But, the iron should be
powered through the same two wires. No one operating amplifier likes 24 volts
on the input pins! Fortunately, some qualified people have solved this problem
already. Here is the soldering iron controller for the hakko t12 iron. The
schematics have brilliant idea to use the zener diode (vd6) to limit voltage on the
input pin of the operating amplifier. As you can see on the picture above, In thi s
controller 3.3 v zener diode is implemented.
The controller has two parameters to check: the iron temperature via first
amplifier on pins 1,2,3 and the current that is going through the soldering iron
via the second amplifier on pins 5,6,7. First amplifier should be tuned by 500k
potentiometer at least for the first time. This variable resistor should be tuned
the following way: when the iron is 450 degree of Celsius, the output voltage
should become near 5 volts (reading of A0 pin in the arduino near 850-900). To
simplify the calibrate procedure the tune mode is implemented inside the
controller. The tune mode can be run from the settings menu. The tune
procedure usually runs only once: it is implemened to help adjusting the
variable register so the controller could correctly check the iron temperature.
The second amplifier is used to check the soldering iron is connected to the
controller. The controller switch on power to the iron and checks the current is
going through it. The 1uF and 100n capacitors increase the readings stability.
The current is checked permanently when the iron is powered on and is checked
every second by the small power every second when the iron is switched off.
1
2
3
To supply the power to the iron, the P-channel mosfet transistor is
implemented. Arduino controler can manage this mosfet throughout the PWM
signal. The arduino software implements the function analogWrite() to manage
PWM pins. Unfortunatelly, the frequency of the standard PWM signal is 490
Hz. If this function would be implemented, the controller would generate the
noise while the power supplied to the iron. But who need such a noise? To
make the controller silent, Timer1 running at 31250 Hz is implemented.
Each mosfet has some capacitance on the gate. This capacitance is really
matters when we need to swich the mosfet quickly. Here you can find the
detailed description of the problem along with the schematics that allows
manage the mosfet at the high frequency. The schematics of the heater is shown
in the picture. To increase the speed of mosfet, the two-transistors driver is
implemented on bipolar transistors. You can use another transistor pair. The
fr304 diode does not allow the backward current when the mosfet is closed.
You can change this diode with another high frequency impulse diode.
The most complicated element of this schematics is inductivity. I believe that
this inductivity can save the power supply capacitors. You an use 220uH
inductivity or just exclude it from the schematics (use wireinstead of
inductivity).
1
2
3
4
5
You can divide the controller into two pieces: hight-voltage heater controller
and low-voltage sensor controller. The high-voltage heater consists of the
mosfet and its driver, fr304 diode and inductivity. The low-voltage part can be
placed on the PCB that plugged directly to the lcd screen (just behind the
screen).
Do not use the DC-DC converter or non-isolated power supply to get 5 volts for
the controller. These devices can have small distortion on the ground and there
can be negative voltage on the input pin of the amplifier. In that case is not
possible to check the iron temperature. You can buy another isolated power
supply or build the one by yourself from old transformer power adapter and
7805 voltage regulator.
Finally, burn the sketch to the controller.
Step 5: The Controller Menu
PREVIOUSNEXT
1
2
3
As i mention before, the controller has several modes:
standby mode
main working mode (keep the temperature)
power mode (manually regulate the power)
setup mode
tip calibration mode
tip selection mode
tune mode (tune the potentiometer)
When the controller is just powered on, the standby mode is activated. In this
mode the soldering iron is powered off and the main display shows the
following information:
The preset temperature in the left side of the upper line (in units selected -
Celsius or Fahrenheit);
The 'OFF' message in the right side of the upper line indicating that the iron is
not powered;
The current temperature of the iron in the left side of the second linee;
When the iron become cold after it was used, the 'cold' message is displayed on
the second line. The preset temperature can be adjusted by rotating the encoder
handle while the iron is powerd off.
Sometimes the active tip name is displayed in the upper-left corner of the
standby screen instead of the preset temperature.
Tip selection mode is activated from standby mode when the iron tip (or iron
handle) disconnected from the controller. When you remove the tip from the
handle, the controller allows you to select new tip from the list menu of
supported tips. This list can be adjusted in the sketch manually by editing the
source code. As you can see, by default the sketch suppports 5 different tips.
You can change this number and you can supply new names of your tips (each
tip name could have up to 4 letter in its name).
Just select new tip name from the menu list before plug the tip in the handle.
To power on the soldering iron, push the encoder handle lightly. The controller
will be switched on and the main working mode activated. Now the controller
keeps the iron temperature near the preset temperature. When the iron is heavily
used, the temperature can deviate from the preset one. In the main mode the
display shows the following information:
The preset temperature in the left side of the upper line (in units selected -
Celsius or Fahrenheit);
The 'ON' message in the right side of the upper line indicating that the iron is
powered on and is heating. When the iron reaches the preset temperature, the
'rdy' (ready) message will be displayed. The 'wrk' message indicates that the
iron is in use;
The current temperature of the iron is displayed in the left side of the second
line;
The power supplied to the iron (in percents) is displayed in the right side of the
screen;
By rotating the encoder it is possible to change the preset temperature. The
message 'ON' will be showed again till the iron reaches the new preset
temperature. To return to the standby mode, press the encoder handle lightly.
In the main working mode, the controller checks for the current through the
iron. If the current would not detected, the controller switches off the power and
the message 'Failed' would displayed on the screen. Light press the encoder
button to return to the standby mode.
The power mode can be switched on by long press the encoder while it is in the
main mode. In the power mode, you can manually adjust the power supplied to
the soldering iron by rotating encoder. In the power mode the screen shows the
power supplied to the iron in the internal units (0-255) and the iron temperature
in human readable units. Light press of the encoder toggles on-off power in the
power mode. Long press of rotary encoder handle will return the contro ller
from power mode to the main mode.
To get to the setup mode, long press the encoder in standby mode. In the setup
mode the configuration parameters can be adjusted. There are 6 menu entries in
this mode:
Automatic switch-off timeout is minites [3-30]. This feature can be disabled. To
work properly you may need to tune the PID algirithm parameters manually;
Temperature units (Celsius or Fahrenheit);
Tip calibration ('tip cfg');
The iron potentiometer calibration ('tune');
Save the changes;
Cancel the changes;
Rotate the handle to select the menu item. To change the selected item, press
lightly the encoder handle. After adjusting the parameter, press the handle again
to return to the setup menu. Long press of the encoder handle can be used to
return back to standby mode and save the parameters in the EEPROM. Or the
parameters can be saved, by selecting the 'save' menu item.
1
2
You need external thermometer to calibrate the tip.
The hakko T12 tips have different parameters and have to be calibrated
separately to keep the temperature more accurately. You can calibrate the
currently selected tip. To change the tip, return to the standby mode, remove the
tip from the handle and select new tip name from menu list rotating the
encoder. Asterisk ('*') in the lower-right corner of the display indicates thet this
tip has not calibtared yet.
Each tip calibrated by three reference temperatures: 200, 300 and 400 degrees
of Celsius. To calibrate the current tip, select 'tip cfg' menu item from the setup
menu. The controller will be switched to the calibration mode. In this mode first
select the desired reference temperature (200, 300 or 400 degrees of Celsius)
then lightly press the encoder. The iron starts to heat and the controller starts to
keep the iron temperature near the selected value. As soon the iron reaches the
selected temperature, the buzzer will beep. This indicates that the controller is
ready to adjust the temperature at his reference point. Use external thermometer
to evaluate actual temperature of the iron, then rotate the encoder to adjust the
reference point to the controller. Then press the encoder lightly. The reference
point will be saved. Select all or some temperature reference points to ad just.
To finish the tip calibration, press the encoder button for about 2 seconds.
As is was mention before, the tip list can be adjusted in the software sketch.
You can add mode tips to the list and select new names of your tips. Tip name
could be up to 4 symbols length.
If the tip is not calibrated, the calibration points are avaluated as the average
value of all another tips that are calibrated. If there is no one tip calibrated in
the controller, the default calibration points are used.
1
2
The automatic switch-off feature has been implemented in the controller. This
was a great challenge because the iron handle has no shock sensor or other way
to verify correctly the iron is in use now or just is laying down on the table. The
main idea was to use the value of supplied power to the iron. In the idle state,
the controller decreased the power to the minimum value to keep the required
temperature. Unfortunately, the math dispersions of the temperature and the
supplied power are not constant in the idle state and can periodically change.
Tuning the PID algorithm parameters, i have stabilized and minimized both
dispersions. The controller in the idle state now keeps the temperature
dispersion as low as possible. The criteria of the iron usage is the power has
been incremented slightly from the smallest value registered. This algorithm
has been tested for a while and i suppose can be used for automatic power -off
feature.
This solution is not very reliable so you can disable this feature if something
will be going wrong. Also, the sketch contains the class for debug and tune the
PID parameters manually.
You can implement another iron handle in your version of the controller, the
handle can have the shock sensor or similar to surely distinguish the idle state.
Arduino Nano R3
× 1
× 1
× 2
× 2
× 2
× 1
Resistor 1k ohm
× 3
Resistor 5.1k × 1
× 4
Multi-Turn Precision Potentiometer- 10k ohms (25 Turn)
× 1
Capacitor 100 nF
× 5
× 1
Buzzer
× 1
gx12-5 connector × 1