5000 円で作るリフロー装置

2022-08-23

\[ \newcommand{dn}[3]{\frac{\mathrm{d}^{#3} #1}{\mathrm{d} #2^{#3}}} \newcommand{\d}[2]{\frac{\mathrm{d} #1}{\mathrm{d} #2}} \newcommand{\dd}[2]{\frac{\mathrm{d}^2 #1}{\mathrm{d} {#2}^2}} \newcommand{\ddd}[2]{\frac{\mathrm{d}^3 #1}{\mathrm{d} {#2}^3}} \newcommand{\pdn}[3]{\frac{\partial^{#3} #1}{\partial {#2}^{#3}}} \newcommand{\pd}[2]{\frac{\partial #1}{\partial #2}} \newcommand{\pdd}[2]{\frac{\partial^2 #1}{\partial {#2}^2}} \newcommand{\pddd}[2]{\frac{\partial^3 #1}{\partial {#2}^3}} \newcommand{\p}{\partial} \newcommand{\D}[2]{\frac{\mathrm{D} #1}{\mathrm{D} #2}} \newcommand{\Re}{\mathrm{Re}} \newcommand{\Im}{\mathrm{Im}} \newcommand{\bra}[1]{\left\langle #1 \right|} \newcommand{\ket}[1]{\left|#1 \right\rangle} \newcommand{\braket}[2]{\left\langle #1 \middle|#2 \right\rangle} \newcommand{\inner}[2]{\left\langle #1 ,#2 \right\rangle} \newcommand{\l}{\left} \newcommand{\m}{\middle} \newcommand{\r}{\right} \newcommand{\f}[2]{\frac{#1}{#2}} \newcommand{\eps}{\varepsilon} \newcommand{\ra}{\rightarrow} \newcommand{\F}{\mathcal{F}} \newcommand{\L}{\mathcal{L}} \newcommand{\t}{\quad} \newcommand{\intinf}{\int_{-\infty}^{+\infty}} \newcommand{\R}{\mathcal{R}} \newcommand{\C}{\mathcal{C}} \newcommand{\Z}{\mathcal{Z}} \newcommand{\bm}[1]{\boldsymbol{#1}} \]

設計

回路

値段 備考
HOT ホットプレート 1518 750W
IC1 フォトトライアック 70
IC2 秋月 Arduino 950
Q1 トライアック 160
Q2 MOSFET 50 Nch
R1 100Ω 1
R2 330Ω 1
R3 100Ω 1 ゲート抵抗
R4 10kΩ 1 ゲートソース抵抗
R5 47Ω 1 サーミスタ分圧
C1 0.1μF セラコン 12 モーターノイズ用
ZNR バリスタ 25
ターミナル 60 3 個
FAN DC ファン 280 DC 5V 0.3A
NTC NT サーミスタ 50
POW 5V 電源 580 5V 2A
POW DC ジャック 30
ヒートシンク(トライアック用) 110
ヒートシンク(FET 用) 35 不要かも
絶縁放熱シート 40 2 枚
M3 プラネジ 4 2 本
合計 3979

カプトンテープ

制御

温度制御

温度計測

\[ R(T) = R_0 \exp \l[ B \l( \f{1}{T} - \f{1}{T_0} \r) \r] \]

\[ V(T) = V_0 \f{R_P}{R(T)+R_P} \]

温度逆算

\[ R(T) = R_P \l(\f{V_0}{V(T)}-1\r) \]

\[ \f{1}{T} = \f{1}{B} \ln\l(\f{R(T)}{R_0}\r) + \f{1}{T_0} \]

\[ T = \l\{\f{1}{B} \ln\l[\f{R_P}{R_0}\l(\f{V_0}{V(T)}-1\r)\r] + \f{1}{T_0}\r\}^{-1} \]

  1. ADC の値\(V_A\)から

\[ X = \f{47}{10000}\f{1024-V_{A}}{V_{A}} \]

  1. 対数を取る

\[ Y = \ln X \]

対数関数は \(X\sim 0.01\) のまわりで近似したものを使う

  1. 温度を得る

\[ \f{1}{T}=\f{Y}{B} + \f{1}{T_0} \]

温度プロファイル

  1. △ 2 ~ 3 °C/sec
  2. 150 ~ 175 °C / 60 ~ 120 sec
  3. △ 4 °C/sec
  4. 250 °C / 60 ~ 90 sec
  5. ファンで急冷

温度プロファイルのフォーマット

0 7~4 ステップ番号(0~15)
0 3~0 内容(0:SLOPE,1:CONST,2:FAN,3:END)
1 7~0 温度(SLOPE,FAN なら到達目標温度、CONST なら維持する温度)
2 7~0 時間(sec)

0000-0000 #0 SLOPE 60 秒で 150°C まで上げる
0d 150 150 °C
0d 60 60 sec
0001-0001 #1 CONST 90 秒間 150°C を維持
0d 150 150 °C
0d 90 90 sec
0010-0000 #2 SLOPE 60 秒で 250°C まで上げる
0d 250 250 °C
0d 30 30 sec
0011-0001 #3 CONST 60 秒間 250°C を維持
0d 250 250 °C
0d 60 60 sec
0100-0010 #4 FAN 30 °C になるまでファンで冷却
0d 30 30 °C
0 - sec
0101-0011 #5 END おわり
0
0

UX

  1. GUI でプロファイル指定
  2. RUN ボタン押す
  3. 温度制御開始
  4. 温度モニタリング

通信方式

実行命令

停止命令