この、世界最小サイズのマウスで解決!(^^)
SONY α7II + FE 90mm F2.8 MACRO G
しばらく更新が止まっておりますが、ご安心ください、まったく走行距離は伸びてないので変化なしです(笑)
一方、ポータブルCO2測定器の方は順調に苦労を重ねております。
単純に、CO2だけを計測するようにしていればこんな苦労は不要だったのですが・・・。
とりあえず起動したよ!
前回までに、とりあえずボディの設計・製造は終わっていたので、あとは必要な部品を組み込むだけです。
だけなんですが・・・、意外と大変。
リチウムイオンの充放電回路を作る。おぉ、充電LED点灯!
SONY α7II + FE 90mm F2.8 MACRO G
5Vに対して余裕があり心強い(^^)
SONY α7II + FE 90mm F2.8 MACRO G
この辺まではまだ快調。緑の基板がマイコン御本尊。
SONY α7II + FE 90mm F2.8 MACRO G
厳しくなってきた・・・。
SONY α7II + FE 90mm F2.8 MACRO G
比較的内部空間を大きく取ったはずなのですが、それでも配線(40本ほど)をやり始めると窮屈になってきます。
いつもと同じマイコン(Raspberry Pi Zero)を使ったのですが、ピンヘッダ付きモデルしか入手できず、このピンヘッダが邪魔で難儀でした。
また、CO2センサはトランジスタ駆動にしたのですが、マイコンの他に「基板」を入れる隙間が無かったため、トランジスタも抵抗もみんな部品に直結というスタイルになってしまいました・・・。
1日ほどかけて、どうにかこうにか狭いボディ内部に押し込むことができました。
センサがかなり電力を食うので、トランジスタ駆動にします(黒いプラスチック部品)
SONY α7II + FE 90mm F2.8 MACRO G
ほっ、なんとか無事に収まった!
SONY α7II + FE 90mm F2.8 MACRO G
肝心なソフトウェアは全く書いてなかったのですが、全速力で、前回の試作時のコードを流用してみたところ、とりあえず起動だけは無事にできました。
ちゃんと、内蔵の3.7VのLiPo電池を、充放電回路で5.2Vまで昇圧して、マイコンの電源が入り、Linux OSが起動して、自分のコードが走り出して、画面に何か表示される。
それだけでプチ感動です(^^)
とりあえず、最小限のプログラムを書いてみる。小さくても、ディスプレイ付きパソコンなんです。
SONY α7II + FE 90mm F2.8 MACRO G
おぉ~、ちゃんと電池で起動できた!!
SONY α7II + FE 90mm F2.8 MACRO G
神奈川は砂漠化してる・・・?
今回は、CO2センサのほかに、温度・湿度・気圧の統合環境センサ―(BOSCH社のBME280)を内蔵しています。
基板中央の2mm角の四角い金属がBME280。とにかく小さい!
SONY α7II + FE 90mm F2.8 MACRO G
ボディ内部はマイコンやLiPo電池の発熱によって熱くなることが想定されたので、ボディ下部にセンサー用の小窓を作り、外部・卓上の空気を計測するようにしています。
・・・が、実際に計測値を見てみると、温度が高め、というかものすごく暑い。
室温45℃、湿度24%。神奈川は砂漠化?
寒がりなのであまりエアコンは使わないのですが、45℃は高すぎではないかと。
よく見ると湿度も24%などと異常に低くなっていて、もはや、Shiro家は砂漠気候(BWhですかね)。
センサー部に扇風機を近づけると常識的な日本の夏の温度になるので、センサーの故障(またはプログラムミス)ではなさそう。
どうも、ボディが温まることで机もだんだん温まり(ノートパソコンとかみたいに)、机上の空気ですら砂漠並みになってしまっていたようです・・・。
温帯湿潤気候を探して三千里
改めて、この装置を見てみると、熱いものだらけ。
- マイコン(1GHz相応の熱が出る)
- CO2センサ(そもそも「加熱式」だから論外)
- LiPo電池(ほのかに温まる)
- LiPo昇圧回路(狂ったように熱くなる)
これら熱源のせいで、ケース全体が肉まんのように熱くなっているので、内部設置はとても不可能。
そこで、正しい温度、正しい日本の温暖湿潤気候の温度を求めた試行錯誤が始まります。
【対策案1】 ボディ上面で計測→もちろんNG
ボディ上面の排気口付近に取り付けてみましたが、もちろんダメでした。
内部のすべての熱がここから出ていくのだから当たり前ですよね。
設計変更が簡単だったからやっただけです、すいません。
ボディ上面にジャストサイズの穴を作り・・・。
SONY α7II + FE 90mm F2.8 MACRO G
こんな風にセンサを置く。手抜き~
SONY α7II + FE 90mm F2.8 MACRO G
【対策案2】 ボディ側面で外部の熱を計測→おしい!
ボディ側面に小さな穴を空けて、そこからセンサーを出して計測してみました。外部の空気を直接測るので、影響が少ないのではないかと期待しての挑戦です。
電源投入直後は、25℃など正しそうな値を出しているのですが、しばらくすると、お決まりの40℃コース。
どうも、ボディ内部の熱がセンサー基板の裏側から伝わり、センサー自体が熱くなってしまうようです。
無念・・・。
上がダメなら横だ!
SONY α7II + FE 90mm F2.8 MACRO G
こんな感じ。でも、結局、内部から熱せられちゃう・・・。
SONY α7II + FE 90mm F2.8 MACRO G
【対策案3】 世界最小クラスのファン搭載!→高価&効果ゼロ
「熱いならファンだろ」ということで、強制風冷することにしました。
ボディ内部には普通のファンを内蔵するスペースは無いので、15mm×15mmという極小サイズのファンを購入してみました(1000円もしたよ・・・)
これをボディ下部(ここしかない)に作った穴に取り付けて吸気し、そのすぐ上にセンサーを配置してみました。
また、コイツの駆動をON/OFF制御するために、新たにパワートランジスタ回路やサージ防止用のダイオードを入れたり、それなりに大変。
しかし、こちらのファンはあまりに小さいために、風量は蚊の羽くらいしかなく、結局一番最初の状態と同じく、やっぱり砂漠気候になってしまいました。無念・・・
ち、小さい!
SONY α7II + FE 90mm F2.8 MACRO G
基板が無いので、またも直結配線。このあと熱収縮チューブ。
SONY α7II + FE 90mm F2.8 MACRO G
ボディも作り直し、ちゃんとファンを置いたのですが・・・。
SONY α7II + FE 90mm F2.8 MACRO G
【対策案4】 ボディから5mmくらい飛び出させる→お?
残るは、「センサーをボディ外部に出す」しか無いようですが、底面は無理だし、側面・上面・前面は格好悪すぎ。
ということで、消極的にですが、ボディ後部から5mmほど飛び出させて配置することに。
この思想(?)変更に合わせ、より外部に飛び出ししやすい形状になるよう、センサーをBOSCHのBME280から、SENSIRIONのSHT31に変更。
これは意外といいみたいで、今までで一番温度上昇しないで感じですが、それでも、やはり数分すると徐々に温度が上がってきます。
やぱり、ボディがアンマン(肉まんではなかったか?)のような状態なので、5mm程度の離隔ではすぐに砂漠気候の熱波にやられてしまうようです・・・。
より内部熱の影響を受けにくい、SHT31(左)に変更!
SONY α7II + FE 90mm F2.8 MACRO G
こんな風に、ケツから出してみよう!
ボディから5mmくらい外に出せました。
SONY α7II + FE 90mm F2.8 MACRO G
ウルトラ原始的方法で(強引に)解決!!
無数の試行錯誤の結果、もはや、ボディから遠く離れたところで計測する、しかないという結論に達しました。
途中から薄々気が付いてはいたのですが、せっかくコンパクトなボディにまとまったのに、温度センサーだけヒモで繋いで外に出ているというのは、あまりにブサイクで最後の最後の案にしていました。
しかし、あらゆる案が否決された以上、センサーを外部に出してケーブルでつなぐ、という案を採用せざるを得ません。
せめて少しは見栄えが良くなるように、以下の工夫をしてみました。
- ケーブルは極細の「ロボットケーブル」にする
- センサーはマウス的な形状のケースを作ってごまかす
マウス、じゃなく、外部センサーボディ。上下2分割で作ってます。
BME280に戻して、「マウス」に内蔵作業中。
SONY α7II + FE 90mm F2.8 MACRO G
おぉ、完成(^^)
SONY α7II + FE 90mm F2.8 MACRO G
玉でもレーザーではなく、温度・湿度・気圧センサーです(^^)
SONY α7II + FE 90mm F2.8 MACRO G
これ以上設計変更したくない・・・。ケーブルを出すための配管増設中。
ケーブルにダメージを与えないよう、外向きに円錐加工してます。
SONY α7II + FE 90mm F2.8 MACRO G
なんか、マウスっぽくないですかね?ないですか・・・(笑)
センサーとの通信はI2Cという方式で4線式(VCC, GND, SDA, SCL)
普通、4本もあると結構な太さになりますが、ロボット工作などで用いる超極細線(AWG32×4本)を束ねた「ロボットケーブル」で作れば、しなやかに細いケーブルができます。
見た目は賛否両論(?)ありますが、温度は極めて安定して出るようになりました!
おぉ~、ちゃんと動いたよ! 温度も日本並みだ!
SONY α7II + FE 90mm F2.8 MACRO G
300円で買った温湿度計と比較しても、ほぼ合ってるぞ!(でいいのか?)
SONY α7II + FE 90mm F2.8 MACRO G
手持ちの、他の温度計と比較してもドンピシャですし、湿度も正しく、温帯湿潤気候的な値になってくれました。
3週間ほど試行錯誤しましたが、ようやく解決です!
デジタルの温度計なんて、100均で普通に売っていますが、こんなに大変なんですね・・・。
次回は、ソフトウェア面での改良を紹介して、長かったCO2測定器工作記事は完結予定です。
つづく
そういえば、バッテリー低下時の検出も考えないと・・・。
基板を立てて上昇気流による下から上へのエアフローを阻害しないように、とも思いましたが、コネクタが基板直付けだとムリですね。通気口の最も高い位置よりも上は熱溜まりになるので、液晶の裏ギリギリまで通気孔を伸ばす。あとはCO₂センサーを天面から浮かせてラズパイの発熱もすべての通気孔を通るように、足を伸ばして床面との隙間を広く取って通風抵抗を減らす、底面の開口部を広く取る、筐体を薄肉化して内部空間を広く取り空気が流れる空間を確保する、あたりでしょうか。
一番簡単なのは、プロセッサの能力を必要最小限に抑えて、発熱そのものを減らすことですね。