そうだ、リフロー炉作ろう③ ~デジタル部の部品選定~
このブログに書いてある内容は主が何となく作ってみたもので動作の保証をするものではないですし、損失が発生しようがこちらは知ったこっちゃないので文句は言わないでね☆
↑前の続き
◎デジタルICの選定
今回はデジタル系のICを選定していこう。
まずCPUになるマイコンについてだ。
今回はプログラムの開発環境や設計が容易であるArduinoの互換機として動作するようにする。というのも、今回の設計思想的にはCPUの動作内容は
・熱電対のAD変換
・トライアックのON/OFF
・上記の制御通信用のUART
程度で、そこまで高速な動作をする必要もないため調節がしやすいようにArduinoを選択した。
(正直、PICとかの方がピン数も面積も抑えられるんだろうけど、PICKit持ってないし(建前)、使ったことないし(本音)...)
かといってDIPタイプは流石に大きいので表面実装タイプのATmega328P-AU(TQFN-32)を使う。
ArduinoUnoに使われているATmega328P-PU(DIP-28)の違いはVcc、GND、ADC6、ADC7が増えていることだけっぽい?(詳細はググって)
内部のアドレスも基本的に同じようなのでADC6、ADC7を使わない場合はArduinoUNOのブートローダでも動作するっぽい。
ADC6、ADC7を使う場合はArduinoProMiniとかArduinoNanoあたりのブートローダを書き込めば動くんじゃない(てきとう)
AD変換は10bitなので0~1023段階で変換ができる。
次にPCとの通信だが、ATmegaにはUSB通信機能は内蔵されていないのでUARTをUSBに変換する必要がある。
有名どころではFTDIのFT232シリーズだろう。やっぱりこれが使いやすい。
注意点としては通信のみならTXDとRXDを接続するだけなんだけど、ArduinoUnoのように同じUSBケーブルでプログラムの書き込みをするためにはATmegaのRESET端子とFT232のDTR端子を0.1uFのコンデンサでカップリングして接続する必要があるらしい。(ArduinoNanoの回路参照 https://store.arduino.cc/usa/arduino-nano)
またブートローダについてはこの方法だけでは書き込めなくてFT232から別の配線をしてを専用のライブラリとか使えばライターにすることも可能だけど、ArduinoUNOはたくさん持ち合わせがあるし配線が面倒なので今回はその方法は使わないことにした。
(FT232単体でのブートローダーの書き込みの詳細はググって)
ブートローダの書き込みはネットでもよく使われている、既に書き込まれたArduinoを使った方法でやるよ。
基本的にはSPI通信用の配線とRESETピンの接続だけしてあれば問題は無い。
本当はダンピング抵抗とかを入れたほうがいいんだろうけど今回は初めの一回しか使う予定はないからコストダウンということでなし。
(ほかの予定でも使う予定はないし。)
次にトースターのトライアックについてだぁ
自分的にはここが厄介ではっきり言ってよくわかっていない。基本的には秋月のSSRキットの回路を丸パクリしただけだ。http://akizukidenshi.com/catalog/g/gK-00203/
SSRのメリットとしては無接点で高速であることで、デメリットは発熱対策が面倒とかかな?
マイコンからの出力でトライアックを直接制御することは出来ない(ぽい)。なんでもトランジスタのベースにあたる部分が交流入力でないといけないらしい。
そこでマイコンと交流電源の間にフォトトライアックカプラというON/OFFを交流に変換してくれるものを挟んでトライアックをドライブする。
また、トライアック自身はかなりの発熱があるので今回は放熱板を改造してファンを取り付けれるようにしてみる。
トライアックについては以前に同じ回路を使ったことがあるから動くのは間違いないと思うけど、以前の倍以上の電力を扱うからパターンとか放熱とかには注意しないと。
デジタルについてはこんな感じかな、アナログに比べて基本的な選定は簡単だけど、あくまでそんなに高速でない簡単な回路での場合での考え方で、デジタルは突き詰めるとアナログになるので少し考え方を変えないとね。
次回は一気に回路図のお披露目が出来たらいいなぁと(現時点でパターンまでは設計済み)
PS
近頃白髪がいきなり増えてきて焦ってる。ハゲるよりはいいかもしれない毛ど、まだ21なんだけどなぁ...
そうだ、リフロー炉作ろう② ~アナログ部の部品選定~
このブログに書いてある内容は主が何となく作ってみたもので動作の保証をするものではないですし、損失が発生しようがこちらは知ったこっちゃないので文句は言わないでね☆
↑前の続き
熱電対のアナログ回路前回の記事にあったシステム構成図の熱電対からマイコンのADポートまでの回路で決めておかないといけない定数を計算して部品を選定していくよー
今回使用する熱電対は秋月電子で売ってるK型熱電対(P-00306)を使おうと思う。
(M-10750でも問題は無いんだけど、おそらく被服の熱耐性が低いのか250℃までしか保証していないっぽいので。まぁ被服が溶けても問題は無いけどね)
K熱電対の出力電圧が約40.7uV/℃らしいので熱電対単体だとリフロー炉で使う最大温度270℃で約10,989uV=10.989mVっていことでマイコンの10bitADコンバータだとまず測定できない。
だから増幅するために非反転増幅回路を入れてもいいんだけど、熱電対で温度を測る場合は基準点の温度を測定して起電力から求めた温度に足して求める必要があるから非常にめんどくさい。(冷接点補修が必要)
だから冷接点補修機能が内蔵されている熱電対アンプを用いる。
今回はAnalogDeviceから選定してみる。
選定内容はこんな感じ
・K型熱電対が使える。
(熱電対の種類によって変わるため)
・単電源Min4.5V動作保証
(USB電源電圧は規格上5V±10%=4.5V~5.5Vだし、
電源フィルタの電圧降下も考えて)
・アナログ出力
(実際検索すれば分かるけどデジタル出力は¥が高い)
これで検索すると4種類出てくる
・AD8495
・AD8497
・LT1025
・LTK001
LT1025とLTK001はCJC only(Cold-Junction Compensator:冷接点補償器)なので除外。AD8495とAD8497の違いは動作保証温度の違いで、
・AD8495 0~50℃
・AD8497 25℃~100℃
となっており、今回は基本的に室内で使用するため25℃以下になるかもしれないことを考慮してAD8495を使用することにした。
これで安定して5mV/℃で出力ができるようになった。
この後はADコンバータの最大入力電圧付近に、リフロー炉で設定する最大温度の電圧になるように非反転増幅回路を入れる。
温度の最大設定は少し高めの300℃に設定すると
(5mv/℃)*300℃=1500mV
ADコンバータの最大入力電圧は5Vなので 5V/1500mV=3.334倍となってゲインは3.33倍程度でいいことが分かった。
しかし、今回設計した回路を他に使う(かもしれない)予定があるのでゲインの間にPGAとしてデジタルポテンショメータを追加する。
普通はいらない(きっぱり)
デジタルポテンショメータは名前の通りデジタル可変抵抗でマイコン等から端子間の抵抗を変更することができる。
今回もAnalogDeviceから選定してみる。
デジタルポテンショメータの選定内容はこんな感じ
・チャンネルは1つ
(2つもいらない)
・256ポジション以上
(別の用途が割と細かく使いたいため、入れるなら32でも問題は無いと思う)
・A-B抵抗10kΩ位
(入力インピーダンスの兼ね合いから高すぎず低すぎずを選定、
問題ないかはシミュレーションで確認してみる)
・通信はI2C
(SPIは信号線が増えるし、UP/DOWNは時間がかかる)
・抵抗サイズ不揮発性
(別の用途で必要だから(てきとう))
これで検索すると3種類出てくる。
・AD5259
・AD5141
・AD5175
AD5141はパッケージ的に半田付けが難しいため除外(リフロー炉ができれば...)
AD5175は焼き切り機能が入っており分解能が1024と多いがAD5259よりは高い。また、抵抗端子のBが無いためポテンショメータの設定値によって出力電圧が0になってしまう場合がある。(扱い方によっては動作バグになる可能性がある)
よって今回はAD5259を使用する。
(普通のリフロー炉を作るならここの回路は無くてもいいぞい!)
話を非反転増幅回路のゲインの話に戻すと、ポテンショメータが前段に入った場合のゲインを考え直す。
ポテンショメータの設定値は中間を基準として調節範囲を上下に同じになるようにすることにしたので、疑似的に熱電対アンプの出力が半分の2.5mV/℃になったようになるため、計算し直すと
(2.5mv/℃)*300℃=750mV 5V/750mV=6.666倍
となってゲインは6.66倍になるように設計すれば良い。
次に6.66倍の非反転増幅回路だけど、使用するオペアンプを選定する。
やっぱりAnalogDeviceから選定
選定内容、どん!
・単電源動作5V
(USBからの単電源、4.5Vでも動くもの)
・入出力レールtoレール
(実際のところ出力だけでもいいんだけど一応単電源動作ということで)
で、本当はSRとかを気にしないといけないんだけど計算してみたら
・4℃/s : リフロー炉で扱う最大の温度変化量(panasonicリフロー条件より。)
→余裕をもって10℃/sとする
・5mV/℃:熱電対アンプの出力
・1倍:PGAの最大ゲイン
・6.6倍:メインゲイン
メインゲインの出力電圧/℃
=5*1*6.6
= 33mV/℃
10℃/sに必要なSR
= 33*10
= 330mV/s
= 0.33V/1,000,000us
= 0.33uV/us
ってことでほとんど気にする必要もない。
GB積についても同様でほとんど気にする必要はないため上の条件二つがクリアできればほとんどのオペアンプが使用可能
他にもノイズ特性だとかオフセット電流だとかを確認する必要もあるんだけど今回はそこまで気にする必要はないと思うので放置(^^
(本当は気にしておかないとDCオフセットは温度との誤差になるんだけど...)
もちろん検索するととてつもない量がヒットするので、パッケージとか金額とかで選ぶといい。今回は部屋に転がっていたAD8541を使用する。
これで基本的な動作をするアナログICについては選定が出来たので一通りの回路でシミュレーションをしてみる。
熱電対の出力は40uV/℃を基準として50℃のときの電圧2mVとしたとき最終出力電圧は
となってシミュレーション結果も大体同じものになった。
実際の回路にはさらにフィルタ等の追加があるものの基本的な動作には問題なさそうなことが分かった。
次回はデジタル部についてのICを選定する予定。
PS
はてなブログでもMathJaxのJavaScriptを組み込めたから数式は画像にしなくてもよさそうだけど、MathMLやLaTeXあまり得意じゃないのがボトルネック(´・ω・`)
そうだ、リフロー炉作ろう① ~1005の手半田はキツイ~
このブログに書いてある内容は主が何となく作ってみたもので動作の保証をするものではないですし、損失が発生しようがこちらは知ったこっちゃないので文句は言わないでね☆
はじめに
今までの趣味で簡単なデジタル回路とかは基板起して手で表面実装をしてたんだけど、近頃はアナログ回路の設計も増えてきて部品点数が非常に増えてきた。
おまけにT社のインダクタに関しては手半田不可って仕様書に書いちゃってるし、無理やり手半田しようにも普通のコンデンサみたいにパターン接地面が決まっちゃってるから難易度も高いという。
ほかにも実装密度を上げて小型化してたりすると1608サイズではなく1005を使いたくなる。
PCBAで発注して実装までやってもらえばいいんだろうけど、PCBの金額からいきなり一桁増えちゃうし...
リフロー炉日本製とか名のある海外製はウン十万するし...
ならリフロー炉作っちゃえば解決じゃね!!??
ってことでつくる。
システム構想
炉の本体としては海外でよくやられてるようにトースターをハックして使う予定。ホットプレートだと両面実装できないしね。
基本的なシステムは高専生時代に設計していた実験装置を改造して作る。
熱電対のゲインは固定ではなくPGA(Programmable Gain Amplifier)としてデジタルポテンショメータを追加して調節が可能になるようにしようかなと。
そのため降段のゲインは高めの固定にしてある。
(50倍ってのは適当な値だから多分後で変わるぞい☆)
PGAのコントロールはマイコンのピンの問題でI2Cがいいけど、もしかしたらSPIやUP/DOWNになるかも~
マイコンはArduinoと同じものを使用、今回の主計算はPCでやるからそこまで高性能である必要もないし~簡単だし~(最悪レジスタを直接いじればいいし~)
トライアックはフォトトライアックでドライブするのは良いんだけどトースターはかなり電流が流れるから放熱についてはしっかり対策しないとね。
(保護回路で動作が止まるだけならいいけど、燃えてほしくないしね。)
今後の流れ
構成図を元に回路の設計を進めていく予定
すでにある程度の部品選定は終わって回路の作りこみを始めてるからある程度出来てきたらアップするかな~
PS
はてなブログの使い方も勉強中だからいろいろやってみてるのだ。
ブログ始めてみた
前々から何となく備忘録としてブログをしてみたいなと思ってはいたので始めてみた。
HatenaBlogの使い勝手とかは全く調べてないし、定期的に描くような内容も大してないんだけど...
めんどくなったら放置で!!
程度の緩めのペースで書けていけたらいいなぁ。
書く内容があるとしたら何でもない趣味の話と会社の愚痴くらいだろうけどwww