VIVITABLOG

VIVITAで活躍するメンバーの情報発信サイト

中国製の激安リフロー炉を改造してみた件

ハードウェアエンジニアの嶋田(@ShozaburoS)です。今回は会社で使っている中国製リフロー炉T-962についてのお話です。

リフロー炉とは電子基板に部品をはんだ付けするときに使う機械で、ハンダごてはひとつひとつ部品の足をハンダづけするのに対して、リフロー炉はオーブンのように基板全体を温めることで一気にハンダづけできます。また、ICの裏にピンがあるような部品(たとえばBGA)ですと当然ハンダごてではつけることができないのでリフロー炉が必要です。

従来リフロー炉というと高価な機械だったので、個人の電子工作界隈ではオーブントースターやホットプレートを流用することが主流でしたが、中国製の安価なリフロー炉が出回り始めておりT-962がまさにそれになります。

f:id:shozaburo:20190725140950j:plain https://www.amazon.co.jp/dp/B074P483DT/ref=cm_sw_r_tw_dp_U_x_xwtoDbSX7K218

激安リフロー炉T-962の実力

購入してから何度か使いましたが決定的に不満な点があります。それはハンダが溶け切らないことがあることです。使い始めの数回は良かったりするのですが、連続で何度か使っているとだんだんとハンダの溶け具合が悪くなっていきました。 調べているとハードウェア的にいくつかの問題があるようです。

  • 温度センサーの精度が悪い

これは複数問題が絡んでいるのですが、ひとつは熱電対をマイコンのADCで直で値を取得しており、その誤差が大きいこと、もうひとつは冷接点温度を測定せずに値を決め打ちして計算をしていることです。どうやらこの温度誤差が高い方にでているようで、機械としては目標温度まで上げているつもりでも実際はその温度に到達していないということが起きています。

  • ヒーターのパワー不足

T-962はAC110Vをベースに設計されているようで、AC100Vの日本ではヒーターがパワー不足になるようです。これによって目標温度に対してヒーターで加熱して温度を上げようと思ってもうまく追従ができず正しい温度プロファイルで焼くことができなくなってしまっています。

Let's 改造

ということでこれらの問題を改善すべく今回はこのT-962を改造していきます。今回は有志がまとめているこちを参考に改造しました。英語が分からない方のための日本語ガイドライン+ちょっとした補足を入れた記事だと思ってください。

(注意:改造は自己責任でお願いします。)

github.com

分解

装置の後ろと引き出しを開けた後に裏にネジがあります。以下の動画を参考にしてください。

このように上蓋だけ外すことができれば今回の改造についてはOKです。 f:id:shozaburo:20190725160016j:plain

テープの巻き直し

紙テープが使われていますが(左下図)、それをカプトンテープ(右下図)に置き換えます。密閉性をあげる目的と、紙テープの場合は熱に弱く焼いたときに異臭がしてしまうのでその対策です。

f:id:shozaburo:20190725155118p:plain

カプトンは幅広が使いやすいため秋月のこちらを使用しました。

akizukidenshi.com

カスタムファームウェア(以後FW)をフラッシュする

これからやる改造は有志が作ったカスタムFWを前提にしていますので、まずはコントロールを担っているマイコンのFWアップデートを行います。(古いFWには戻れなくなってしまうのでご注意ください)

  • PCにツールをインストールする

PCからマイコンにFWをフラッシュするための専用ツールをインストールします。

http://www.flashmagictool.com/

リンク先に飛び、下図の右上のDownloadのところから最新版をダウンロードしてインストールします。私は上にある通常バージョン(Classicバージョンでない)をインストールしました。

f:id:shozaburo:20190725164943p:plain

  • FWをダウンロードする

https://github.com/UnifiedEngineering/T-962-improvements/releases

こちらのリンクから最新のものをダウンロードします。ダウンロードは実行形式であるhexファイル(赤枠で囲っている)だけで十分です。

f:id:shozaburo:20190725161243p:plain

自分でビルドしたい場合は余談を参照。

  • 配線する

基板とPCとを接続します。接続にはUSBシリアル変換が必要です。基板側の電源が3.3Vなので3.3V対応のものを用意してください。私は普段から仕事でも利用しているこちらのものを使いました。ジャンパーピンを5Vから3.3Vへ動かしておいてください。

www.switch-science.com

USBシリアル変換が用意できたら基板と配線します。 まず基板側は下図のISPと書かれた6ピンのピンヘッダから信号を引き出して使いますが、写真の左からISP#, RESET#, TXD, RXD, GNDとなっています。

f:id:shozaburo:20190725171248p:plain

USBシリアルとはブレッドボードを介して接続しますが、接続が必要なのはTX, RX, GNDの3ピンのみです。また、接続時に注意していただきたいのは、基板側のTXとUSBシリアルのRX、基板側のRXとUSBシリアルのTXという組み合わせで接続してください。 ISP#とRESET#は適当なブレッドボードの適当な位置に挿しておきます(次に使います)。

f:id:shozaburo:20190725171359j:plain

  • フラッシュ

いよいよマイコンにFWをフラッシュします。まずPC上で先ほどインストールしたソフトを立ち上げます。 いくつか設定します。


Device: LPC2134
Serial Port: (右下図のデバイスマネージャーから確認。USB Serial Portと書いてあるもの。)
Baudrate: 57600(default)
File: (ダウンロードしたhexファイルを選択)
Verify after Programming: チェックをいれる

f:id:shozaburo:20190726102834p:plain

次にマイコンをブートモードに入れます。このブートモードに入れなければFWをフラッシュできません。

手順は、

  1. ISP#をGNDに接続
  2. RESET#をGNDに接続し、そのあとGNDから外す
  3. ISP#をGNDから外す

実際にやっている動画があるので参考にしてください。

この手順の後に、PCのツールでStartボタンを押すとフラッシュが始まります。フラッシュが終わったらRESET#を再度GNDに落として外すか、後ろの電源から再起動するかしてください。表示画面が変わっていたら成功です。

外付けのアナログフロントエンドICを取り付ける

従来は熱電対の出力を非反転増幅器で増幅した後にマイコンのADCでその大きさを読んでいました。この回路だと精度がでないため、熱電対専用のアナログフロントエンドICであるMAX31850を取り付けマイコンとはデジタル信号でやり取りします。このone-wireで使うポートは基板のR2の部分に出ているのでそこに接続します(後で詳細がでます)。

f:id:shozaburo:20190726110457p:plain

MAX18350についてはスイッチサイエンスさんから配線が引き出せる基板付きが出ているのでこちらを利用しました。今回は2つ使います。

www.switch-science.com

まず、2つのうちひとつだけ基板裏を加工してIDを変更します。AD0という部分のLOW側をパターンカットして、HIGH側をショートします。

f:id:shozaburo:20190726112502p:plain

次に表側です。こちらの基板は5V電源用に(今回に関しては無意味に)回路が作られるために余分な回路を削除します。赤丸で囲まれた抵抗2つと、ICを1つです。また、赤い長方形の部分からそれぞれ3.3V, GND, DQの3本の線を引き出します。これは2枚とも加工してください。

f:id:shozaburo:20190726111726p:plain

2枚の基板の、3.3V, GND, DQはひとつにまとめるためにユニバーサル基板にこのように配置しました。

f:id:shozaburo:20190726112750j:plain

まとめた3本の線をリフロー炉の基板とハンダづけします。C20と書いてあるパッドから右に3つです。また写真では見にくいのですが、C20とR2の間に4.7Kのプルアップを追加します。

f:id:shozaburo:20190726113640p:plain

最後に熱電対を緑のコネクタ部分から取り外して、新しい基板側に再接続します。コネクタ部分にはドライバー穴やコネクタの口に白いボンドが流し込まれているのでピンセットなどで取り除いてから熱電対を外してください。

f:id:shozaburo:20190726113934p:plain

これでリフロー炉に電源をいれマニュアル設定画面からR、L、Cold Junctionの温度がきちんと表示されていればOKです。

f:id:shozaburo:20190726114649j:plain

ACトランスを取り付ける

トランスはこちらを購入しました。

https://www.amazon.co.jp/dp/B00C15M6OA/ref=cm_sw_r_tw_dp_U_x_nKMoDb89ZK7EA

測定

実際にこちらが別途用意した温度センサーでどのくらいの温度がでているか調べました。 まずAC100Vの場合は温度上昇の勾配が緩やかなのに対してAC120Vに変更することで正しい勾配がでています。そしてさらにMAX31850を取り付けることで、きちんとプロファイル通りに250℃という温度に到達できるようになりました。

f:id:shozaburo:20190726123241p:plain

余談:デバッグしたいとき

今回の改造は途中いろいろなトラブルがありました。その時にマイコンからデバッグ出力をモニタできるようにすることで非常に助けられましたので、その方法の紹介です。

まずマイコンからのデバッグ出力をPCで見る方法ですが、配線はFWをフラッシュした際の配線と同じです。PC側ではTeraterm等のシリアルモニタを起動し、COMポートを指定することでモニタできます。ただし、Baudrateはフラッシュ時とは異なり115200ですのでご注意ください。

もし、デバッグ出力を追加したい場合、自分でソースコードをビルドする必要があります。その場合は、コンパイラをインストールしてmakeを叩くだけです。こちらのページを参考にしてください。

https://github.com/UnifiedEngineering/T-962-improvements/blob/master/COMPILING.md

WindowsだとCygwinを入れるか、私は仮想マシンでUbuntuを起動してビルドしました。

おしまい

ACトランスやICの追加などざっくり1万円程度の改造費がかかりましたが、動作は劇的に改善しました。ぜひ同じ悩みをお持ちの方は試してみてください(再注意:改造は自己責任でお願いします)。