2017年6月25日日曜日

ペルチェ素子で自作ドリンククーラーを作った

はじめに

温度を制御して見たかったのと、仕事中によく飲むアイスの缶のボトルコーヒーが温くなるのが嫌なので、ドリンククーラーを作った。


アプローチ

ペルチェ素子の片面に放熱用のヒートシンク、片面にアルミ板でドリンクホルダーみたいなのを付ければ行けるんじゃなかろうかという雑な発想を元に開発した。

使った部品



筐体を作る

FreeCADで設計して3Dプリンターで印刷した。
ドリンクホルダー部分は保温のために軽く中空にしてある。
制御ユニットは作業しやすいように嵌め込み式で外れるようになっている。構造上、ペルチェ素子周辺で結露して水滴が発生しても、制御ユニットの中に入らないようにしている。また熱が発生する部分なので空気穴を開けてある(オーバーヒートしそうならファンを設置するつもりだった)。
ドリンクホルダー内の冷却部分は、0.5mmのアルミ板をカッターで斬り出して折り曲げた。手を切らないようにヤスリでエッジの処理もしている。
CPUクーラーに固定用の部品が付属していたので、CPUクーラーの固定にはそれを使うようにした。地味に重たいので強度不足にならないように周辺は厚くしている。


制御ユニット

制御ユニットの中には可変スイッチング電源キット(写真左)と、ACアダプタのコネクタを刺すための基盤(写真右)が入っている。



使用したペルチェ素子の抵抗は1.4〜1.6Ωなので、直接12Vを食わせると8.57A(≒12/1.4)くらいなのでACアダプターの容量オーバーになる。なので可変スイッチング電源キットを噛ませて電圧を下げるようにしている。
CPUファンは右の基盤から電源を取っているが、そのままではファンの回転数が高すぎて少々うるさいため、トランジスタと可変抵抗を挟んで電流量を調節している。トランジスタも地味に発熱するので小さいヒートシンクを括りつけている。

使った感想

ペットボトルを突っ込んで使ってみた感じ、室温よりかは冷えているが、キンキンに冷えるには程遠い。

考察

  • CPUファンはもともと100W級の冷却用なので、そのまま使うとファンがオーバースペックでうるさい。静かなものに交換すると良さそう。
  • ACアダプターの容量の都合でペルチェ素子には結局9Vほどに落として供給している。
  • いまいち冷えないのはドリンクホルダー部の断熱が雑というのが大きいと思われる。

おわりに

正直、使い物になるのかというと微妙な結果に終わった。でもそのうち動植物の育成用の箱とか作ってみたいなと思っているので、そのときのこのノウハウが引き継げたら良いと思う。

2016年10月1日土曜日

ノートPCをG-Tune i4600に買い換えた

ノートPCをG-Tune i4600に買い換えた。G-TuneはマウスコンピューターのゲーミングPCのブランドです。ThinkPad X220を長らく愛用していたけど、今時のPCゲームをやってみたいのと、TensorFlowとか触ってみたいのでGPUが載ったPCが欲しくなったのが理由です。


買い替え動機

個人持ちのPCは10年近くThinkPadを使っていた。LinuxとWindowsのデュアルブートでPCゲームをするときだけWindowsを使う運用だった。当初はそのままThinkPadシリーズにしようかと思っていた。でもGPUが載ったモデルはお値段が跳ね上がるのと、7列キーボード+トラックポイントに拘りがあったけど、今はラインナップから消えてるから、トラックポイントに未練が残りつつも諦めた。MacBookも考えたけど仕事で使ってるし、Macに拘りは無いので辞めた。最近の開発ツールが軒並みOS Xに移行してるのが引っかかるけど割り切った。

個人的に日常的に持ち歩くことはないので重量は2.0〜2.5kgなら許容範囲、大きさは一般的なビジネスバッグに入れば良いので14〜15inchで探した。大抵のゲーミングPCのブランドはそもそもノートPCが無かったり、あってもフルサイズで大きいけど、G-Tuneだけ14inchの2kgそこそこのモデルがあった。the比較のレビューを見るとメモリスロット、M.2 SSD、2.5inch HDDのスロットがあるので将来的にちょっと増やしたいと思えば増やせそう(もちろん中身を開けることになるので自己責任だが)。というわけでこれに決めた。

もちろん不安な点は何個かある。なんだかんだで丈夫で品質の良いといわれるThinkPadシリーズを使っていたので、そのつもりで使ったら耐えられない「かも」しれない。あとThinkPadは保守マニュアルや液晶パネル、キーボードなどの諸々の部品が手に入ったが、部品単品で手に入れるのはできなさそう。

購入時に店員さんにLinuxを使っている話をしたら、OSの入れ替えはサポート対象外であることだけじゃなく、ハードウェアの保証も全てなくなるとの説明を受けた。まぁしょうがない、、、か。

購入して実際触ってみた感想

スペック的には申し分ない。AndroidStudioのビルドも早いし、今時のPCゲームもサクサク動く。発熱もゴツいヒートシンクと2つのファンを使っているというだけあって、ちゃんと排熱されている。キーボードの一部キーが横に長いので打ちにくいかもという懸念があったが僕は問題なかった。樹脂製の筐体だが強度が心配という感じはない。USB、USB type-c、HDMI、MiniDisplayPortとか、必要なポートは一通りあるので問題なさそう。
個人的に良くないと思っているところもある。液晶の発色が全体的に淡くガンマ値を調整しないとWebサイトの文字が読みづらかった。
タッチパッドが若干左にオフセットしていて、親指でスペースを押した拍子にタップと誤認されることがある。ただ、これはキーボードのタイプ中のタップを回避するユーティリティで解決した。
本体は2kgそこそこだがACアダプタが771gと結構重い(150Wとかちょっとした電源ユニットだから当然っちゃ当然)。

おわりに

ゲーミングPCって開発者にとって地味にバランスが良いんじゃないかなと思った。

2014年8月24日日曜日

BL600のVirtual Serial Portを動かす

BL600でSPPのようなシリアル通信ができないかとさがしていたところ、公式サイトでVirtual Serial Port (vSP) Bridge and Command Modes Demonstrationというデモがあったので、同じ物を作ってみました。

BL600のソフトウェア部分はファームウェアとSmartBasicの2段構えになっていて、古いバージョンのファームウェア(1.3.57未満)でvSPを使う場合は専用のSmartBasicのコード(upass.vsp.sb)を使う必要がありました。新しいファームウェア(1.3.57以降)ではファームウェア側にその機能が取り込まれており、ジャンパ線を繋ぐだけで利用可能になります。

公式のデモ動画にSIO_7とVCCを繋ぐと、特に何もせずvSPとして動作してくれました。デモ動画では開発キットで通信していましたが、今回は手持ちのBL600にUSBシリアルを接続し、配線を同じにしたものを使用しました。Nexus4にはLaird BL600 Serial(Google Playからダウンロード)をインストールしました。
PC側はUwTerminal(BL600の開発用ツール)を起動し、USBシリアル側を開いています。 Nexus4側はアプリでConnectを押してBL600と接続しています。

PCとNexus4の間で、BL600を経由したvSPでメッセージのやりとりができました。PC側は今回はUwTerminalを使用しましたが、Linuxで一般的なcuコマンドなどでも通信できます。

気になった点として通信速度があると思います。正直なところ遅いです。メッセージがやり取りができる程度だと考えたほうが良いでしょう。
ボーレートが標準で9600となっていますが、これはAT+CFGコマンドで変更が可能です。ただ大きい数字にするとデータ化けが発生していました。

Android側のサンプルアプリであるLaird BL600 SerialはiOS版もありますので、iOSから同様の通信もできると思います。

BLEで通信する場合、GATT上で大抵のことは事足りるのでユースケースとしては疑問が残るところもありますが、シーケンシャルな通信が必要な処理や、既存の低速な有線シリアル通信を置き換えることには使えるかもしれません。

2014年3月16日日曜日

BLE600でビーコンを手ハンダで作る

BL600というBLEモジュールを入手したので、BLEで何か作れないか試行錯誤している今日このごろです。

BLE600は技術基準適合証明が通っているので日本国内でも安心して使用できるBLEモジュールです。BLE600自体は非常に小さいモジュールで、裏の端子も0.8mmピッチと小さくなっています。

この小さいモジュールを無理やりブレークアウトしてビーコンを作ります。まず、適当なユニバーサル基板を準備します。小さい部品なのでフラックスは必須です。

ユニバーサル基板を適当に斬って、モジュールを押し込む穴を作ります。モジュールには端子にハンダを塗布します。ハンダの塗布にはこの動画(How to Solder QFN MLF chips...)の3:40辺りの方法を使いました。

動作確認に最低限必要な端子を半田付けします。細めのスズメッキ線をピンセットで押さえながらハンダゴテを軽く当てると溶接されます。この時にハンダゴテを当て過ぎると端子がモゲるので当てる時間は必要最低限にします。

ハンダゴテで炙りすぎてモゲた例。一つ駄目にしました、、、orz

USBシリアルを繋いで動作確認をします。BL600の場合は専用ツールのUWTerminalで通信できるかを確認します。

問題がなければ電池ホルダーや電源スイッチ、nAutoRun用のDIPスイッチを取り付けます。

裏の配線は触るとポロッと行くことがあるのでグルーガンで固めます。グルーガンはダイソーのものを使用しました。

このままでは何なので3Dプリンターで箱を作ります。不恰好だけど今回はただの箱にしました。

印刷が終わったら中に押し込みます。寸法を測って専用に作った箱なのでピッタリ収まります。
蓋を閉じて完成です。

ぶっちゃけていうと汎用のタグを使ったほうが早いし安いので意味的なものはあんまり無いですが、今回ここまで作れたので、次からはセンサー的なものを載せたものを作りたいと思います。

ちなみに今回は自力でブレークアウトしましたが、半田付けに自身が無い人は頑張らなくても、@ksksue 氏がBL600 Breakout Boardを頒布されているので、そちらを使えば余計な苦労をしなくても済みます。
並べると一目瞭然ですが、明らかに手ハンダの方が大変です、、


2014年1月14日火曜日

PocketDuinoで温度湿度計を作ってみた

Androidの標準の温度センサーは実質的に端末の温度がとれてしまうので、センサーを外にだして温度と湿度を取れるようにできたらと思っていたところ、PocketDuinoを頂いたので温度湿度計を作ってみた。


PocketDuinoは@ksksue氏が制作したAndroidのUSBポートに直接差し込むことのできるArduino Pro Mini互換のボードです。(PocketDuino公式サイト
 
パッケージにスマートフォンにサクッと刺せそうなイラストが描かれています。
外観はArduino Pro miniの上にUSBコネクタがそのままついたような形になっています。
裏面は何も無く、配線用のホールだけとスッキリしています。


そのままでは遊びにくいのでDIPピンをつけました。
これでいろんな物を繋げることができます。


取り付けたDIPにGrove系の温度湿度計を繋げたいので接続用の中継基板を作ります。
紙エポキシのユニバーサル基板から作ります。
紙エポキシは柔らかいので金鋏で簡単に切れます。大きさを合わせて切断します。
メスのDIPピンのコネクタと、Grove用のコネクタを繋ぐためのDIPピンを取り付けます。今回使用した温度湿度センサーはSeed StudioのTemperature and Humidity Sensor Proです。VCCとGNDはそのままArduinoのVCCとGNDに結線し、今回は信号線をD3ピンに接続しています。(実はA0やD2といった別のピンに繋ぐとデータ化けが発生しました。)
Grove用のコネクタの片方を雌のDIPピンにしていたので、それを接続します。写真ではわかりにくいですが、引っ張っても抜けないように画像の赤と白のコードの辺りにワイヤーロックをしています。
Grove用のコネクタのもう片方を温度湿度計に接続します。

PocketDuinoにスケッチを焼き、Android側も専用アプリをインストールした後、PocketDuinoを接続します。(スケッチとAndroidのソースはこちら)
PocketDuinoの電源が入って青いLEDが点いているのがわかります。アプリ側も温度と湿度が取得できて画面に表示できています。


流石に基板剥き出しでは何なので、外装を作ります。
基板の寸法を測って収まる箱を作ります。デザインは適当で少々無骨ですが今回は気にしません。(FreeCADの3Dモデルデータはこちら
3Dプリンターで印刷します。
印刷し終わったら部品が収まるか確認します。問題がなければ部品を納めて蓋をします。今回は背面の4箇所をネジ止めできるようにしているのでタッピンビスでサクッと閉めます。
箱からはMicroUSBの端子が出ているのと、センサー部が外気に触れるように窓があります。


以上でPocketDuinoを使って温度湿度センサができました。USBの端子をUSB Host APIに対応している最近の端末に挿せば温度と湿度が測定できます。
実際に作ってみて意外に大きいと感じました。挿しっぱなしにすることは出来無さそうですが、たまに指して測定という用途には使えるかも知れません。ただ、外装をジャケット型にすれば挿しっぱなしも可能だと思います。

今回はAndroid側のソフトやスケッチについては特に触れませんでしたが、なんだかんだで、プログラムの実装も大変でした。それでも個人ででもこういったデバイスが作れる時代になったのでモノ作らーとしては嬉しい限りです。

2013年12月21日土曜日

フォクすけ人形の制作風景

データから印刷するまでの流れです。


写真をBlenderという3DCGソフトの背景に設定します。正面や上からなども併せて貼ります。

それを見ながらモデルデータを作ります。

印刷用に整えます。

印刷データへの変換ツールに喰わせます。

印刷します。途中省略してるけど、2時間くらいかけて印刷して組み上がるまでの動画です。


2013年11月4日月曜日

Maker Faire Tokyo 2013に出展してました

夏のYamaguchi Mini Maker Faireに続き、11月3日〜4日のMaker Faire Tokyo 2013に出展しました。今回は一人での出展でしたので自分が作ったものを全面に並べました。(知人と一緒にやろうと思ったのですが、それぞれが自分のブースを持ってたのでそれぞれ自分の戦いをしてました)。
今回は前回出展していた画像認識で自動走行するロボットと猫型ロボットに加え、新作のフォクすけロボットとフォクすけ人形を展示しました。


フォクすけロボの作成工程については以前の記事()の通りで3Dプリンタでフルスクラッチで作成しました。顔認識で人を見つけると手を振るようにしていたので見に来てくれた方々に可愛がって貰えました。

このロボットは両手両足、首、尻尾、両耳が動きます。特に両耳は重用なのでかなり頑張りました。また展示では伝えきれなかったのですが、外部から繋がってるケーブルは電源とHDMIケーブルのみなので、内臓バッテリーに繋げばスタンドアロンでの動作も可能です。
反省点としては見栄えを良くしすぎたためか既製品と間違われたり、巧妙に作りすぎたためか目に仕込んだWebカメラに気づいて貰えないことがありました。次の展示の際はもう少しお客さんにわかるようにしたいです。
他には以前から問題になっていた顔認識などの画像認識が会場の照明に影響を受けていたことが今回は顕著にでてしまい、経験上もっとも悪かった感じがしました。フォクすけロボに仕込んだWebカメラは汎用のものの皮を剥いで基板のみ埋め込んだのですが、目の部分のカバーやWebカメラ自体に安いものを使ったのが原因のようなので今後調整します。


フォクすけロボの展示に合わせてフォクすけ人形も展示しました。3Dプリンターで印刷、パテ埋め、サーフェイサーで表面を整えるなど、製作途中のものが残っていたので製作工程として並べました。
見に来てくれた方や他のMakerやプレスの方に「手順を踏んで一から作ってるのは珍しい」といってくれた方が何名かいらっしゃったのでこちらもまずまずかなと感じました。


実際に作って、出展して、お客さんや他のMakerさんと話をしているといろいろと勉強になります。実のところそれらの話から触発されて2つほど次に作りたいネタが浮かんできたので次はそれを作って行きたいと思います。

最後にMaker Faire Tokyo 2013の出展者、参加者、そして運営のスタッフの方々お疲れ様でした。今後もモノ創らーとして活動して面白いものを創っていきたいと思うのでこれからも宜しくおねがいします。