なんでも作っちゃう、かも。

Arduino/Make/フィジカルコンピューティング/電子工作あたりで活動しています。スタバの空きカップを使ったスタバカップアンプなど製作。最近はもっぱらArduinoと3Dプリンタの自作に興味があります。

Wifi温度湿度計の製作(3)

Posted by arms22 on 2016年07月27日 0  0

Wifi温度湿度計ベース基板

電池の持ちが良くなるように部品を見直しました。電源ICをTOREXの「XC6222」からTIの降圧型DCDCコンバータ「LM3671」に、充電ICをTIのパワー・パス管理付き充電IC「BQ24070」に変更します。敬遠していたQFNパッケージも使ってみることにしました。はんだづけがうまくできるかどうか心配。。

あー、、早く設計終わらせて実装したい(ぇ

3Dプリンタでおもちゃの鍵

Posted by arms22 on 2016年06月26日 0  0

House key - Fusion 360

子供と一緒にお出かけする時、玄関前で家の鍵を欲しがるのでFusion 360を使っておもちゃの鍵を作ってあげた。凸凹と溝をつけたら鍵っぽくなった。

IMGP1251

すぐになくしちゃうので予備も作っておいた。thingiverseにSTLデータをアップしたので使ってください。プリント条件は0.2mmレイヤー、50% infill、30mm/sぐらいでOKです。

House key by arms22
http://www.thingiverse.com/thing:1645191

Wifi温度湿度計の製作(2) - デザインルール設定とガーバーファイル出力

Posted by arms22 on 2016年06月15日 1  0

ガーバービューワーの表示例

設計中の基板をFusionPCBに発注すべくkicadでガーバーファイルの出力作業を行いました。kicadでガーバーファイルを出力する際の手順は下記ブログでまとめられていて、とても参考になります。本記事は下記ブログの内容をもとに行った作業の記録として残しておきます。最近いろいろモノ忘れが激しいので。。

Ki-CADで基板設計(デザインルールを設定) @ ともの技術メモ
http://tomono.eleho.net/2015/10/14/5983/

Ki-CADで基板設計(ガーバーファイル生成) @ ともの技術メモ
http://tomono.eleho.net/2015/10/18/5996/


デザインルールの設定



デザインルール-グローバルデザイン

Pcbnewのメニューからデザインルール->デザインルールを選択し、グローバルデザインルールタブを選んで以下の内容を入力する。FusionPCBのデザインルールに合わせてインチ単位で入力する(一部除く)。

  • 「マイクロビアを禁止」にチェック
  • 最小配線幅 0.008インチ
  • 最小ビア径 0.030インチ
  • 最小ビアドリル径 0.0157インチ(0.4ミリ)
    ドリル径をインチ単位で入力するのは気持ち悪いのでミリ単位で0.4ミリと入力。
  • 最小マイクロビア径 0.002インチ
  • 最小マイクロビアドリル径 0.005インチ

デザインルール-ネットクラスエディタ

次にネットクラスエディタのタブを選んで以下の内容を入力する。新しいネットクラスは作成せずDefaultを使用し、グローバルデザインルールで入力した値と同じ値をを入力する。

  • クリアランス 0.007874インチ
    面実装部品のパッド幅はミリ単位で設計されているものが多いのでクリアランスはミリ単位で0.2mmと入力。
  • 配線幅 0.008インチ
  • ビア径 0.030インチ
  • ビアドリル径 0.0157インチ(0.4ミリ)
  • マイクロビア径 0.020インチ
  • マイクロビアドリル径 0.005インチ

入力が終わったらPcbnewの画面に戻ってDRCを実行する(デザインルールチェックの実行->DRCを開始)。エラーが出たら基板を修正して再度DRCを実行する。これをエラーが出なくなるまで繰り返す。


ガーバーファイルの出力


製造ファイル出力

Pcbnewのメニューから寸法->パッド-マスク(レジスト)のクリアランスを選択して以下の値を入力する。

  • レジストのクリアランス 0.1ミリ
  • レジストの最小幅 0.1ミリ
  • ハンダペーストのクリアランス 0.13ミリ

次にPcbnewのメニューからファイル->プロットを選択し以下の値を入力する。

  • 出力フォーマット ガーバー
  • 出力ディレクトリ
    出力先の場所を指定する
  • レイヤ
    F.Cu/B.Cu/B.SilkS/F.SilkS/B.Mask/F.Mask/Dwgs.User/Edge.Cutsにチェック
  • 「シルクスクリーンにパッド出力」にチェック
  • 「基板外形レイヤのデータを他のレイヤから削除」のチェックを外す
  • 「原点に補助座標を使用」にチェック
  • 「Protelの拡張子を使用」にチェック

入力が終わったら「製造ファイル出力」をクリックしてガーバーファイルを出力する。


ドリルファイルの出力


ドリルファイルの出力

「ドリルファイルの生成」をクリックして以下の値を入力する。

  • ドリルの単位 ミリ
  • ドリルマップファイルフォーマット ガーバー
  • ドリル原点 補助座標
    ガーバーファイル出力の設定と合わせる。
  • 「PTHとNPTH穴データを1つのファイルにマージ」にチェック️
    メッキあり・なしの穴データを1つのファイルにマージする。FusionPCBで使用するドリルファイルは1つだけなのでマージしておく。

入力が終わったら「ドリルファイル」をクリックしてドリルファイルを出力する。


出力したファイルの確認


kicadのメニューからツール->ガーバービューア(GerbView)を起動。ガーバービューアのメニューからファイル->ガーバーファイルを読み込む、で先ほど出力したガーバーファイル一式を選択。ファイル->EXCLLONドリルファイルを開く、で先ほど出力したドリルファイルを選択。レイヤーの透過表示がないみたいなので1レイヤーずつ確認する。ドリル穴がズレていないか等々。


↓なんと1万種類のフットプリントのデータが付いてくるみたいよ、奥さん!




Wifi温度湿度計の製作(1)

Posted by arms22 on 2016年05月26日 0  0

最近流行のWifiモジュール「ESP-WROOM-02」を使った温度湿度計の製作をはじめました。定期的にサンプリングしたデータはセンサーサーバに貯めてブラウザで表示するところまでやりたいと思います。

ハードウェアは手配線するより基板作って実装したほうが早いだろということで、実験もそこそこにKiCadを使って回路を描き始めました。KiCadの勉強をしつつ作業を進めているのですがなかなか設計が終わりません。。


回路図



WifiTempPH_sch

Q1のP-Ch FETはダイオードの変わり。最初はFETのボディーダイオードを通して電流が流れるけど、途中からゲートがONになって低抵抗で電流が流れ始める。普通のダイオードを使うより電圧降下が少ない。VBUSが接続されている時はQ1のゲートがOFFになりVBATにVBUSが流れ込まないようになっている、はず。。

温湿度ICは手頃な値段で手半田できそうなモノが見つからなかったので、秋月電子で販売されているHDC1000を使用する予定。なので回路図には温湿度ICは描いていません。


基板


WifiTempPH_board

基板の外形サイズは50x50mm、空きスペースには2.54mmピッチのランドを配置する。部品点数が少ないのでけっこうすかすかに。もっと詰めて配置して空きスペースを広げようかな。。

WifiTempPH_3D

KiCadには設計した基板を3Dで表示する機能が付いています。部品の3Dモデルがあれば部品同士の干渉も事前に確認できます。これ見てるだけで作った気になっちゃう。


基板ケース


WifiTempPH_case

基板設計と並行してfusion 360で基板ケースも設計中。KiCadにはDXF(2次元のCADデータ)を取り込む機能があるので2/3D CADで基板の外形を描いて、それを取り込むこともできるようです。

MCP73831を使ったリチウムイオン・リチウムポリマー充電回路

Posted by arms22 on 2016年05月06日 0  0

IMGP1244

MicrochipのMCP73831というICを使った充電回路の実験を行いました。実験といっても応用例どおり回路を組んで動かしてみただけですが、上写真ではリチウムイオンポリマー充電池(1000mAh)2個をMCP73831を2つ使って充電しています。MCP73831はaitendoで2個100円で購入しました。


回路


MCP73831標準応用例
MCP73831データシートより

入出力のコンデンサは手持ちの10uFの電解コンデンサを使用。必要ないと思うけど積層セラミックコンデンサ0.1uFもおまけでつけておいた。PROGに接続する抵抗値によって充電電流が決まり、次の式で計算できます。
I-REG = 1000V / R-PROG

R-PROG → kΩ
I-REG → mA

例.
500mA = 1000V / 2kΩ
416mA = 1000V / 2.4kΩ
178mA = 1000V / 5.6kΩ
100mA = 1000V / 10kΩ


熱問題

MCP73831接合部温度に対する充電電流
MCP73831データシートより 接合部温度に対する充電電流

MCP73831はリニア方式の充電ICなので電源と充電池の電圧差はそのまま電力損失となり、ICを加熱させます。幸いMCP73831にはダイ温度に応じて充電電流を制限する機能があるので、ICが壊れてしまうことはなさそうです。ただ充分冷却しないと期待した充電電流が得られなくなります。


電源にUSBを利用する場合

MCP73831はUSBバスに繫がってネゴシエーションしたりしないので、PCに接続して充電したい場合は、充電電流を100mAまで下げた方が良い。或は下記のような2A・2.4A出力対応のUSB充電器がおススメ。



USBケーブルは2A・2.4A出力対応品でできるだけ短いほうが良い。

ELECOM microUSBケーブル 2A出力 高耐久 1.2m ブラック MPA-AMBS2U12BK
エレコム (2014-09-04)
売り上げランキング: 19,661



参考URL

MCP73831/2 - 超小型単セル用フル集積化リチウムイオン・リチウムポリマー充電管理コントローラ
http://www.microchip.jp/docs/DS21984B_JP.pdf

Raspberry Pi 3の電源問題について - スイッチサイエンス
http://doc.switch-science.com/support/RaspberryPi3/raspi3power.pdf