carcon999のブログ

12年間Y!ブログの記載を移行しました。電子工作関連の記事が多いです。

WS2812Bのnewタイプがある話

■概要

光り物に欠かせない有名なLEDとなったWS2812Bは、実はチップが2種類あって困ったって話です。
具体的には、WS2812Bという品番なのに、なぜか点灯できない問題が発生するというもの。
そこで、いろいろ試して暫定ですが解決した話になります。

本来なら、WS2812Cとでもして欲しいくらいの修正だと個人的には思います。もし、同等の問題で困っている方の参考になれば幸いです。私た試した解決策は、一番最後にありますので、対策方法だけ知りたい方は、最後をご覧ください。

2018/3/5追加 残念ながらお相手の環境では点灯しなかったとの報告を受けました。もう少し調査が必要そうです。適当な抵抗の決め方が問題かもしれません。ご注意ください。


イメージ 1
写真は、WS2812Bを使ったテープLEDです。良く見かけるタイプですね。

■経緯

何種類かこのNeoPixcel系を制御できるLEDコントローラを作ったことがあり、それをお使いの方から、全然光らないテープLEDがあるんだけど・・・とのことで、調べることになりました。当初は、単なる配線ミスと考えていたのですが、そんな単純なことではありませんでした。

イメージ 2

※今回の主役?(笑)となるWS2812Bが搭載されたテープLEDです。これは防水タイプでシリコンでおおわれているので、写真がぼやけています。

イメージ 3

※購入時のパッケージと思われるもの。ちゃんとWS2812Bと印刷されています。

■見た目の確認

本当に、この制御できないLEDは、WS2812Bなのでしょうか?これだけ有名になるとFake品?も考えられます。

マイクロスコープで、写真撮影し比較してみます。
左から順番に、WS2812B、SK6812、今回のLEDの3種類です。

イメージ 4

違いが分かりますか?
少しマークを付けてみましょう。

イメージ 5

品番内容
WS2812BLEDを制御するICが縦長に見えます。RGBのLED素子は〇の位置
SK6812ICは横長で正方形に近い。少し切り欠きのようなベタ?がある
今回SK6812に似ているが、LED素子が左下に集約されている

こんなLEDチップは、私の手持ちにありません。
軽く、Google先生にたずねてみるも答えは得られず、SNSに頼ることにします。

SNSを活用し情報を集める

ツイッターで情報を募ると、『なんか2種類あるらしい』という話と、『この写真に近いのでは?』という情報が得られました。
あ!まさしく、これじゃねぇ?

イメージ 6
※@La_zlo さんからの情報提供。ありがとうございました!(Twitterからの画面キャプチャー)
https://blog.adafruit.com/2017/05/03/psa-the-ws2812b-rgb-led-has-been-revised-will-require-code-tweak/

■詳細情報を調べる
調べてみると、ワールドセミ(Worldsemi)のレポートを見つけました。
こちらの海外サイトにまとめられています。
Worldsemiのレポート画像も見ることができます。

どうやら、高速化のためにチップを新しくしたとのこと。既存のWS2812Bのデータタイミングと極力互換性を持たせたのだけど、RESETするタイミング(点灯するタイミング)は、いままで、50us以上Loと規定していたのを280us以上にしてくれとのこと。違いはそれぐらいで、そのまま使えるよ的な・・・
※いや、使えてないんですけど・・・

このWS2812B(名前を、"new WS2812B"と勝手に命名します。)のデータシートは、下記からダウンロードできます。
http://www.world-semi.com/DownLoadFile/108

new WS2812Bの通信タイミングを抜粋するとこんな感じです。
イメージ 7

確かに、これを見るとRESETが50usを要求していたのが280us以上になり、通信速度は幅が広くなり、あまり厳密な速度を求められなくなったように見えます。ちなみに下記が、今までのWS2812Bの通信タイミングです。
イメージ 8

■タイミングの差
データシートを見ると、T0HとT1Lが微妙に範囲に収まってないんですよね。

項目WS2812Bnew WS2812B
T0H250ns~550ns220~380ns
T1L300ns~600ns220~420ns

例えば、T0Hであれば、new WS2812Bは、220~380nsを要求していますが、WS2812Bは、400ns±150nsです。
最初、これが原因かとも思ったのですが、結論としてはこれは問題じゃないと思います。

なぜならば、前回の標準値400nsのままで動作していますし、new WS2812Bも明記はされていませんがある程度の許容幅があると思われます。

オシロを引っ張り出して、いろいろ試したのですが、LEDは点灯することなくお手上げか?
って状態になりました。

が!

あるドキュメントの存在を思い出し、試したところあっさり動き出しました。

■解決策

手持ちのドキュメントから抜粋してます。
※WS2811RGB_WS2812_manual.pdfというもの。

イメージ 9

ここに、300とありますが、100Ω以下で十分かと思い、今回は47Ωを使ってます。
これは、推測なのですが、初回起動するときに通信パルス幅を測定してるのかなぁ?なんて思ってます。
そこに、ノイズが入るとタイミングが合わずに、以降のデータが無視されてしまう?(推測です)

もし、マイコン(コントローラ)と、テープLEDを直結して動かないのであれば、騙されたと思って、少し小さい抵抗を入れると幸せになれるかもしれません。

ちょっと、なぜ?ってところまで追えてませんが、ひとまず動いたご報告まで。
もし、追加情報あればコメントお願いします。

WioLTEのボードで気になる点

■概要
WioLTEを最近利用していますが、気になる点を書きました。
次のVersionで改善されるといいなぁ。自分なりの工夫も書いているのでご参考になれば。
気になる点だけ書いていますが、簡単にクラウドにデータをアップロードできるし便利ですよ。

イメージ 1

■1.ボードをマウントする穴にチップが接触する
写真にあるように、BOOT0ボタンの周辺にチップ部品が実装されているので、ボードを固定する際にフラットでなくなり不安定になります。さらに、マウントする穴が3か所あれば、多少安定するのですが、穴が対角の2か所なので安定しません。スペース的には、3か所開けられそうなんだけどなぁ。

イメージ 2

流石に、もう一つ穴を開ける訳にはいかないので、六角スペーサーを少しだけカットして取り付けしました。それでも強度は落ちてしまいますね。ほとんど基板を触らない場合は良いのですが、書き込むためにDFUモードへ移行しなければならず、裏のBOOTボタンとRESETを同時押しするので、そこそこ触ります。
しかも、ボタンの色が黒いですよね。これそこそこ重い(強い力を要する)ボタンなんですねぇ。

イメージ 3
イメージ 4

■2.外部5V入力がUSBしかない
WioLTEを購入すると、極太で短いmicro-USBケーブルが同封されています。(標準付属品ではなく、初回ロット特典のプレゼント?)私の手持ちでここまで太くて短いものはありませんでした。しかも、固いので取り回しし辛い。悪名高いmicro-USBなのでもげる可能性もゼロじゃないのでドキドキしてます。LTEで通信するために、そこそこの電流(500mA以上)を要求されるので、抵抗値の少ないものをご提供いただいていると思います。プレゼントなので文句は言えません。

イメージ 5
※写真の左側です。約20cmのUSBケーブルです。

回りくどくなりましたが、ケーブルの不満ではなく、5Vを入力するのがmicro-USBポートしかないのです。

外部から、3.7Vを入力するリポ用の端子はあるのですが、5Vを入力できる端子が無く、USB以外の外部電源からボードへ電源供給することができません。もちろん安定化された5Vを入力する必要があるので、適当な電源繋いで壊されても・・・って思いがあったのか分かりませんが、私は3.7Vよりも5Vの外部端子が欲しかった。
イメージ 6

仕方ないので、裏面のパットに出ているのでそこにはんだ付けして外部から5V供給するようにしてます。

イメージ 7
※不安なのでホットボンドで補強してます。

以上の2点がここ2か月間くらい利用したボードの気になる点です。

■WioLTEについて
SeeedさんとSORACOMさんが上手く組んで環境を準備してくださっているので、最初のお試しが手軽にできるのは良いですね。頻繁にハンズオンワークショップ開催しているようなので、気になる方は参加されてみてはどうでしょうか?
https://soracom.connpass.com/

ハンズオンのテキストをこちらで見ることができます。
https://github.com/soracom/handson/wiki/Wio-LTE-%E3%83%8F%E3%83%B3%E3%82%BA%E3%82%AA%E3%83%B3

クラウドにアップロードできるIoTが手軽に体験できます。私も参加しましたが、疑問点も解決できて非常に良かったです。

■最後に
参考までですが、LTEのアンテナがぷらぷらして気になるので、プリンタで固定化部品を4つ出力して、こんな感じでスッキリさせています。2本は極力離した方が良いそうですよ。

イメージ 8

イメージ 9

需要あるかわかりませんが、STLファイルをダウンロードできるようにしておきますね。

XperiaZ1の電池交換したが充電できない!

■概要
現役を引退したXperia Z1ですが、作成したAndroidアプリのテストをする際に利用することがたまにあったりするので、休みの期間を利用してバッテリー交換することにしました。交換は情報が沢山あるので問題なくできたのですが、購入したバッテリー自体に問題(充電ができない!)があって少しハマったのでそれをネタにすることにしました。レアケースかもしれませんが、この手の交換品はそんなものが転がっているということでご注意ください。

■引退したXperia Z1
Z1ですが、電池がへたり過ぎて充電ができない状況になっており、電源を入れてもリブートを繰り返すような状況でした。よく見ると、電池が膨れて本体に隙間が空いている状況になっていました。

イメージ 1

■交換バッテリー
純正品は出回ってないようなので、互換品ということになります。Amazonで探しましたがどれも似たり寄ったりのコメントで、結局どれを購入しても一緒のように思えました。まあ、それなら安いので失敗してもまあ、サブ機だしダメもとと冶具付きで1,500円と安いこちら <- (Amazonリンク)を購入しました。付いているコメントも両極端です。

イメージ 2

■交換します。
交換しましたが、交換手順は、ネットに沢山ありましたし、動画もあります。
なので割愛します。感想としては、バッテリーが既に盛り上がっていたので蓋は外しやすかったです。
結局ドライヤーも使わずに開けられました。

イメージ 3

イメージ 4

写真ではチョットわかり難いですが、取り出した電池はやっぱりふっくらとしていますね。

イメージ 5

動かすとなんとか端末が立ち上がってきたので、これでOKとばかりに蓋を閉じてしまいました。

■充電がされないんだが・・・

しかし、USBでケーブル接続しても充電中の表示されることなく、どんどん減っていきます。
あれ?前回のバッテリー値がキャッシュされて表示がおかしいだけか?とそのまま放置すると結局0%となり、ご臨終となりました。

交換する際に、何か壊したかも・・・

ということで、もう一度本体を開けて、古いバッテリーにすると充電の赤LEDが点灯します。
バッテリーに問題がありそうです。
クレームや再注文しても良いですが、結局面倒になるのでその前に少しだけ分解することにしてみます。

分解といっても、あまりハードなことはやりたくないので見れる範囲でやってみることにしました。

イメージ 6

カプトンテープとバッテリーシールとはがして、フレキケーブルの根本の基板が見えるようにします。
※これは、オリジナルのバッテリーを参考までにはがしたものです。

■フレキの根本を見てみると・・・

ん?これ他の3本と比べて、はんだが出てないんだけど・・・

イメージ 7

少し勉強になりました。フレキの余分な半田がここから出るように設計されているんですね。(多分)
イメージ 8

側面から見ると、少し浮いているように見えます。フレキを直付けしたいのに半田が上手く溶けておらず、横に出て来てないみたいです。
イメージ 9

■半田をあててみましょう。

他とショートしないように370℃位で上からはんだごてをあてると・・・半田が横から出てきました!

イメージ 10

ということで、USBケーブル接続すると、ビンゴ!

イメージ 11

上手く充電できているみたいです。

■不安は残る。

半田不良が原因で、そこを修正すれば、上手く充電できるようにはなりましたが、不安は残りますね。
充電のテストをしていれば、簡単に不良を見分けられる問題だったはずです。つまりテストしてない。

リポは過充電で爆発の危険性などもあるので、気を付けましょう。
ちなみに、私の場合はたまたまうまくいきましたが、同様の方法で直る保証はありませんのでご注意ください。もし行うにしても自己責任で。

『きらきら☆いか リモコン』のプライバシーポリシー

'carcon999'は、以下のとおり個人情報保護方針を定め、個人情報保護の仕組みを構築し、個人情報保護の重要性の認識と取組みを徹底することにより、個人情報の保護を推進致します。


個人情報の管理
'carcon999'は、お客さまの個人情報を正確かつ最新の状態に保ち、個人情報への不正アクセス・紛失・破損・改ざん・漏洩などを防止するため、セキュリティシステムの維持・管理体制の整備徹底等の必要な措置を講じ、安全対策を実施し個人情報の厳重な管理を行ないます。


個人情報の利用目的
お客さまからお預かりした個人情報は、各アプリ内で『音声→文字変換処理』にのみに利用します。
Android音声認識Android Speech Recognizer)をオフラインで認識処理利用します。
本アプリで、音声データや入力した情報を保存することは行っておりません。


個人情報の安全対策
'carcon999'は、個人情報の正確性及び安全性確保のために、セキュリティに万全の対策を講じています。

法令、規範の遵守と見直し
'carcon999'は、保有する個人情報に関して適用される日本の法令、その他規範を遵守するとともに、本ポリシーの内容を適宜見直し、その改善に努めます。


お問い合せ
'carcon999'の個人情報の取扱に関するお問い合せは下記までご連絡ください。
carcon999 アットマーク gmail.com (<- @に変更してください。)

AFINIA H400を購入しました

■概要
人生で2台目となる3DプリンタAFINIA H400Amazonリンクで購入しました。

いままで、2年以上ボンサイラボさんのBS01+を利用していましたが、流石に2年以上前の製品なので限界も見えてきて新しいのが欲しくなってしまいました。
そこで、ファーストインプレッションを紹介したいと思います。あくまで個人的な見解です。

イメージ 1


開封とセットアップ

クイックガイドなる簡易マニュアルが同封されていますので、簡単にセットアップすることができます。

イメージ 2

少し困ったのは、輸送用のクッション材を取り出す指示があるのですが、簡単に取り出せません。
昇降するステージをゆっくりと手で持ち上げて隙間を作ってから引き出さないと取り出せなかったので、一番最初にハマるかもしれません。(②と③がステージの下で完全に挟まれています)

イメージ 3

他の水平調整や、Wi-Fiの設定も特に問題なく設定できました。最初から本体の設定は日本語にセットアップされていました。

ノズルとステージの距離の自動キャリブレーションは非常に便利ですね。これ失敗するとステージの食いつきが悪くて、もじゃもじゃになるプリンタあるあるになりますからね。あと本体のタッチパネル液晶も良いです。反応も悪くないし、結構作り込んでいる気がします。

■プリントアプリ
3Dモデル(STL)をプリントするためのスライサーアプリ Afinia Studioが用意されています。
ネットからダウンロードして利用します。最初にメールアドレスを要求されますが、特にメールに連絡が来る訳でもなく、単にいたずら防止のためかもしれません。

MAC版とWin版(32bit/64bit)が用意されていました。
MACとWin両方とりあえずInstallしてみましたが同じように利用できますが、Win版の方が少しだけ新しい気がします。

ただ、このスライサーアプリは機能がかなり少ないです。ほとんどお任せ状態です。逆に言えば細かい設定をせずとも綺麗に出力できる自信があるからかもしれません。ただ、少し残念なのはサポート材の出力プレビューが表示できないことです。ラフトの表示はされるのですが、サポートは表示されないみたいです。サポートのプレビューを見て、付ける/付けないを判断する場合も多いので、プレビューは欲しいんだけどなぁ。
イメージ 4

私の場合、Fusion360モデリングして、それをプリントすることが多いので、出力時にAfinia Studio指定しておけば、ダイレクトにSTLを橋渡ししてくれるので少し便利になりました。今までは、USBにSTLを保存して・・・他のPCに入れて・・・みたいな不便なことやってました。

イメージ 5

■出力品質
3Dプリンタで良くみかけるルークを最初に出力してみました。本来サポート無しで出力すべきところを有りで出力していたので、チョット変なサポートが残ってしまいました。サポートは割と綺麗に剥がれるので良さそうです。

イメージ 6

あと、エッジが立つというか、角がしっかりと出力されて垂れが少ないので仕上がりが綺麗ですね。

一応動画も。


■総括
前のBS01+と同等の金額でこの品質であれば、コストパフォーマンスとしてなかなか良いのではないでしょうか?初めて使う方でも、多分トラブル無く使えると思います。ここ2,3年間で3Dプリンタは値段も手ごろになって品質も良くなりました。

今後気になるのは、専用のフィラメントは少し高いんです。専用フィラメント以外を利用した場合保障対象外になるような文言も気になります。しばらくは、最初に付いていたフィラメントを使いながら、在庫で抱えているフィラメントも使っていきたいと思います。

■最後に
自分の作りたいものに近づけるためのツールを購入した訳ですが、その作りたいものを展示するイベントであるMaker Faire Tokyoに今年も出展できることになりました。

このツールも活用した作品の展示を考えておりますので、ご興味のある方はご来場いただければと思います。ブース名など詳細については、また追ってブログでご紹介させていただきます。

Maker Faire Tokyo 2017は、2017年8月5日、6日の2日間で開催されます。

イメージ 7

ESP8266とMilkcocoaでException (28)

■概要

ESP-WROOM-02(ESP8266)Milkcocoaと連携しログを出力しているとたまに、ESPがへそを曲げて例外出力する場合があり、ここ数日解析して対処法が見えてきたので書きとめておくことにしました。もし同様の現象で悩んでいる方の参考になれば幸いです。私の解決方法は、一番下に書いてあります。
探した限り情報が無かったので、あまり困っている人いないかもしれない。

※ちなみに、ESP-WROOM-02Arduino化してMilkcocoaのSDKライブラリを利用している環境になります。

イメージ 1

★例外の出力画面:そうあれです。

ESPで例外が出力されると、

『どうせ電源でしょ?』とあまり例外のスタックトレースダンプをスルーすることが多かったのですが、ダンプの確認方法も紹介します。(ご存じの方も多いと思います。)

■システム構成
今回作っていたのは、ESP-WROOM-02(ESP8266)でMilkcocoaにデータに一定時間毎にpushし、onでデータも監視しているようなシステム構成です。そして、親機と子機の関係も存在し、子機はonだけでデータの変化を監視しているような構成になってます。

イメージ 2

■現象
ログに'Exception (28)'を出力しESP-WROOM-02がリブートしてしまうというものですが、少し面白い?現象が発生しておりました。それは、親機と子機の両方がほぼ同時にリブートするのです。考えられるのは
・USBの電源ノイズ?
・USBのリセット?
・強力な2.4Gが飛んで来てリセット?
なんだろう

傾向として、電源投入直後というよりも少ししばらくしてから発生する頻度が多いような気がしました。

■ヒントは受信データ量にあり!
実は、pushするデータには連番のシーケンス番号(リセットで1~になる)を振っているので、milkcocoa側のデータを確認すると、直前にpushされたデータを確認することができます。

なんとなく、データ量が増えたときに発生するような気がしてきました。

イメージ 3

赤枠で囲った場所が、リセットの直前データ。それ以前のデータよりデータ長が増えている様子が分かると思います。このキャプチャーはその前より2Byte増えている。

イメージ 4

■Exception Decoderを使う
同様な事例を探してみると、あまり見つからないのですが、Exception Decoderなるものがあることを見つけました。例外発生時のスタックトレースをコピペすると、コールスタックを出力してくれる素晴らしいツールです。

ESP-WROOM-02(ESP8266)使う方は、解析用に
絶対に入れておくべき
ツールです。

インストール方法は、他にお任せするのですが、私がインストールする際にはまったのは、Exception Decoderを起動した際に、ELFファイルを要求する選択ダイアログが表示されて困りました。結論としては、IDEを再起動して、ビルドし直せば要求されることなく上手く利用できるようになりました。

シリアル出力されたあの例外をコピペして貼り付けると、なんか出ます。

イメージ 5

一部加工していますが、以下のような出力です。
許可されない領域の不正なアクセスというところでしょうか・・・
※結果としては、後で出てきますが0ポインタのアクセスでした。
Exception 28: LoadProhibited: A load referenced a page mapped with an attribute that does not permit loads

Decoding 8 results
0x40209f22: aJsonClass::getObjectItem(aJsonObject*, char const*) at C:\xxxxxxx\aJSON.cpp line 973
0x40209084: DataElement::DataElement(char*) at C:\xxxxxxx\Milkcocoa.cpp line 159
0x40209309: Milkcocoa::loop(unsigned short) at C:\xxxxxxx\Milkcocoa.cpp line 172
0x402088a4: milkcocoa_main() at xxxxx
0x40208968: loop at xxxxxx
0x40212134: loop_wrapper at xxxxx
0x40100718: cont_norm at xxxxxxx

aJSON.cppのgetObjectItemで、不正アクセスが行われたことが分かりました。
そして、ライブラリの利用側からするとMilkcocoaのloopを呼び出している最中であることも。

■例外をcatchできないか?
私の中の悪魔がささやきました。
『解析するのも面倒だなぁ。データが少しぐらい欠けても問題ないので、リブートさせずにtry-catchでスルーさせるのも良いのでは?』と・・・・

いろいろ調べてみたのですが、Arduino IDEではできないそうですね。
コンパイルオプションの変更を許可してないらしい。残念でした。

■よし!解析するかぁ
シリアルデバッグで気にあるところを出力していきます。今回幸運だったのは、
再現性が高いこと
リブート直前のデータをpushすると、即座に同様の現象が再現できます。

そこで見つけたのは、データ量が増えるとJSONのカッコが消えること。

結果JSON(一部省略)
{xxx,"params":{"seq":99,"dist":12354,"vc":132,"irc":999}}95
×{xxx,"params":{"seq":100,"dist":12355,"vc":133,"irc":100095

×の方は、}}が2つ消えちゃってます。parse処理で失敗するのねぇ。
なんとなく、このバッファサイズが匂います。

■調べるとここで問題発生
カッコが抜けていると判断されて、DataElementのparse処理で失敗して、paJsonObjがNULLで返却されて、getObjectItemにNULLが渡されてしまうことが問題でした。

イメージ 7

■対策方法
結局のところ、バッファサイズが足りないので、MAXサイズを変更することにしました。

Milkcocoa ESP8266 SDKが利用しているAdafruitのMQTTライブラリのヘッダファイルAdafruit_MQTT.h
のMAXBUFFERSIZEを以下のように修正します。
値は、自分の最大データが収まるサイズにすれば256である必要はありません。

イメージ 6

■まとめ
少し長めのデータを受信した場合に、Exception 28が発生する場合は、上記のバッファサイズを変更すると幸せになれるかもしれません。

Milkcocoaも初めて利用させていただきましたが、ありがたいですね。他の会社様に譲渡?されたり今後がきになりますが、無料で継続利用できることを望みます。

対策したことで、非常に安定して連続稼働することができています。
ESPの例外確認は、ひと手間かかりますがException Decoderおすすめです。

トースターリフローを両面対応にする

■概要

今回は、2年前に作成したトースターリフローを改良して両面実装できるようにしました。
結論から言うと、下記の方法でトースターを更に改造するよりも、プロファイル(温度の特性制御)をしっかり測定して調整すれば両面実装できると思います。
★改造はリスクを伴いますので自己責任ですよ。まあ、こんな面倒な移設はやらないと思いますけど。

■はじめに

丁度、2年前にソースターを改造してリフロー炉を作成しました。
https://blogs.yahoo.co.jp/carcon999/38720513.html

リフローで両面基板を実装しようとしたときに、部品が落下し痛い思いをしたことがあり、それ以来基本的に両面実装を敬遠していました。
※どうしても必要な場合は、カプトンテープで裏面部品を固定するなどして対応してました。

今回、本気で両面実装を確実に成功させたいのでトースターの改造を思いつきました。
利用しているトースターは、上下に電熱線が2本づつ入っているタイプのモノで、上下からむらなく温めるタイプです。

イメージ 1
写真ではわかり難いですが、上下に2本ずつ入っています。

機種によっては、上面/下面/両面の切り替えスイッチが付いているタイプもあると思います。残念ながら私のは付いていません。両面実装するならば、『下面からの熱を止めれば良いだろう』ということで、改造することにしました。単に、下面を切ってしまうと出力が弱くなってしまうので、下面の一本を上面へ移設して、上面3本+下1本構成にします。

イメージ 2

■一本を移設する

下面の一本を抜き出して、上面に移行します。ただし、上面に取り付け穴がある訳じゃないので、2本の中間位置に穴を開けます。ドリルで加工穴をあけてから、ハンディニブラでバキバキっと穴を加工します。

イメージ 3

配線は、間違えないように注意します。といっても、一本の位置を移動するだけなので間違える可能性は少ないですが、私の場合は、ケーブルが短いので継ぎ足しを行いました。熱を発する装置に使うケーブルなので耐熱ケーブルを利用する必要があります。間違っても普通のケーブルを使わないようにしましょう。また、結線するのも単により合わせるだけでなく、しっかりと圧着できるように圧着端子と工具も準備します。

イメージ 4

無事に移設が完了しました。下のオリジナルが入っていた穴は耐熱アルミテープで塞いでおきます。

イメージ 5

■電源を入れてみる

配線を確認したら、電源を入れてみます。
あれ?『移設した、1本の明るさが違う!』

イメージ 6
追加した中央の電熱線が少し左右の2本と比べ暗いのが分かります。

確認してみると、上の2本と、下の2本で電熱線の抵抗値が異なりました。上2本は、1.5Ω程度、下2本は、9Ω程度です。
多分、利用している電熱線が違うんですね。なので、完全に同じ明るさとはならないようです。
※もう一台購入して、部品取りすれば・・・というのもありますが・・・

ここは、あまり頑張らないことにします。

■プロファイルを確認

出力のバランスが変わったので、温度プロファイルを確認します。
ここは、いろいろゴニョゴニョして、それなりの目標に近い値に調整します。
私は、3回微調整して写真の系列3にあるようなプロファイルにしました。

イメージ 7
最初150℃までの立ち上がりを少し滑らかにした。

■重要なのは裏面の温度

プロファイルの設定を確認しながら、部品が落下するのは基板裏面の温度が重要なんだよなぁ・・・
と、考えていました。でも、熱電対をもう一本用意しなきゃならないし・・・
そんな簡単に・・・

あ!

普段使いじゃないテスターに熱電対が付いていたのを思い出します。

イメージ 8

秋月の[MS8221C]で温度が測定できます。これだ!

■両面の温度を測定してみる

表面は、いつもの温度制御用の熱電対を取り付け、裏面はテスターの熱電対を取り付けます。残念ながらテスターは、手動で読み取らないといけないので5秒毎に読み取るようにします。

イメージ 9

さらに、トースターの中で基板を網の上で焼いた場合と、アルミトレイの上で焼いた場合を測定してみることにしました。

イメージ 10

実際の測定結果は以下です。

イメージ 11

左側が網、右側がアルミプレートです。
オレンジ色(系列2)のドットで見える線が下面の温度です。
分かり易いように、融点をグレー(系列3)で表示させまてみました。
これで、見てみると網でも、アルミプレートでも融点を超えないので大丈夫のようです。
さらに、アルミプレートの方が余裕がありそうなので、そちらを採用することにします。

※電熱線を移設する前に測定すべきだったことをこの時思いました。涙

■まずは表面リフローします。

まず、表面は普通にリフローします。

イメージ 14

イメージ 12

イメージ 13

■次は裏面の実装

ただ、ここで一つ問題があります。
はんだペーストを塗る際に、実装済みの部品があるとボコボコしてそのままでは綺麗にできません。
そこで、100均で売っているようなカラーボードを使います。厚みが10mm程度あり、加工も簡単なのでカッターで穴をあけます。

イメージ 18

こんな感じで、掘りごたつの要領で部品があたらないようにくり抜きます。

イメージ 15

あとは、表面と同じようにできます。

■裏面焼きます。

焼くときに、少し下駄をはかせて浮かせる必要があります。
この写真のように、左右にアルミレールをカプトンテープで固定し裏面を浮かせるようにしました。

イメージ 16

あとは、焼いてしまえば完成!

イメージ 17

部品が落ちることもなく、両面でも不良もなくいい感じに仕上がりました。

■最後に

多少準備は必要になりますが、両面でも上手く作れることが分かりました。
ただし、手間は増えるので、片面で仕上げることができるのであれば、片面の方が楽ですね。
最初にも書きましたけど、電熱線を移動せずとも、プロファイルをうまく最初に調整していれば上手くできた可能性が高いです。なので、もしトースターで両面やる場合は、裏面の温度特性を測定してみることをお勧めします。

あとは、お金が許せば中華の実装サービスを利用するのが良さそうですね。
いつか試したいと思っています。