2017/05/30

PIC32ブレイクアウト#2

以前試作したPIC32MM用ボードの修正板を実装してみた。

・SOSC用に32.768kHzの水晶をシリンダタイプに変更。
・ICSP端子を追加
・コンデンサの外形見直し。(10μFを1608へ)
・32MX1xxに対応。(2xxだとICSP端子のデータ、クロック線が使えないけど使うことはできる。)

PIC32MM

32MX1xx


 ピンヘッダつけてしまうと意外とめんどくさいので、いつか端面スルーホール処理にしてみたい。

 プロジェクトファイル置き場 https://github.com/kentN/PIC32-28P-Breakout

2017/05/15

簡易無電源環境光センサ

太陽電池を簡易的な環境光センサとして使ってみた。

CPC1822はとても小さな太陽電池セル。
透明なSO8パッケージに封入されたアレイで構成され、4V 50μA(6000Lux時)の発電能力を持つとデータシートにはある。残念ながらすでに生産中止品なので、部品屋に流通している分で販売終了のようだ。部品箱から発掘されたので、供養と称して特性を調べてみた。

  50μAで何ができるかといえば、アプリケーションとしては光検出、トリクル充電の電源といった用途になる。μAレベルの平均消費電力であれば、コンデンサを充電することでPIC12Fあたりを間欠駆動することもできそう。

光量センサとしては、無電源でADCに直結する簡易的な環境光センサとして使う事もできそうなので、簡単に実験してみた。


CPC1822のパッケージは向きが分かりにくいが、結線されている足は二つだけ。
シャント抵抗を取り付けて、I-V変換された電圧を読み取る。
(写真では100kΩを取り付けたときのもの)
Arduino(AVR系列)なら、基準電圧に1.1Vが使えるので、10kΩでシャントすれば直射日光下で余裕のあるレンジになりそうだ。

10kΩの抵抗を接続し、照度計と一緒に窓辺に置いて、端子間電圧を測定した結果が下記のグラフになる。曇り空のため、あるていど均一な光量が得られていた。

薄曇りの窓辺での計測結果 < 4000Luxまで


その後、雲間を通して直射日光が得られたので、変動の激しい中ではあるけど、プロットしてみた。


 34401Aにつないでシャント電圧を測定してみると、本来のデータシートの発電特性よりも4倍ほど高い電流値を示していた。負荷抵抗を外して直接電流計測しても4倍の電流が計測できている。 そういうものなのかな…。  6万ルクスで50μAが得られることになる。

 雲間の太陽光で計測した結果は、雲の動きが激しすぎて、プロット精度がとても落ちてしまった。快晴下で透過率を調節するのが理想かなぁ。
曇りのプロットと陽光下のプロットの傾きはやや異なる。セル自体はフィルタもないので、赤外線などの影響をかなり受けている。照度で測るなら、可視光帯域に調整された専用のフォトダイオードを使うのが良だろう。

照度計としては怪しいけど、光量センサとしては使える。発電量を刻々とモニタするという意味では役目を果たすので、機械が生き抜く感覚としては十分そうだ。

太陽電池をセンサだけにつかうのはもったいないので、普段は発電していて、時々電流値を測定できると、マイコンのADCのみで太陽電池の健全性確認ができる。
発電電流の大きな太陽電池だと、シャント抵抗に低抵抗が必要なので熱損失がかなり増える。一時的に負荷からセルを切り離し、FETで測定時のみ一時的にシャントする経路を設けておくとよさそう。

2017/04/22

Nexus5X(と寄り道)

いまさらだが、Androidアプリの作成をしてみたくなって、開発機としてNexus5Xを調達した。
 端末のセンサ値をテレメトリみたいに長時間ロギングしてみたいとおもったが、手元にはセンサを積んだ新しめの機種がなく…。

 Nexus5xには製造不良が原因とされるbootloopといった有名な不具合があり、保証切れの個体がオークションで放流されているため、最初は取り寄せてあそんでみることにした。 結局、安定しなかったので 開発機は新品を購入して運用中。

 起動不良を抱えた個体を分解してみた。
分解についてはiFixitに詳細なレポートがある。分解はプラスチックの爪を外すだけなので容易く、基板は数か所のねじを外すだけでアクセスできる。 裏蓋などの分離する筐体にケーブルは伸びておらず、フレキシブルアンテナや指紋センサ、オーディオジャックは基板に配置された金属端子の接触のみで接続されている。基板につながるフレキ端子はLCD、バッテリ、二つのカメラモジュールのみだ。
今どきの端末はかなり設計の合理化が進んでいて、バラしやすい。

 背面カメラはIMX377で、1200万画素、1/2.3型CMOS。 手持ちのTG-4と比較すると、オートホワイトバランスがちょっと頼りないけれど、画素サイズとレンズのおかげか、細部ははかなりシャープに映る。 5Xだと手振れ補正が無く、シャッターボタンを押してから動きの少ない瞬間を狙ってキャプチャしているっぽいので、光量がある場面ではかなり強い。
全球撮影やパノラマモードみたいな撮影についてはAndroidのほうが気に入っている。

 話を基板に戻すと、SoCを覆う金属シールドもツメになっていて、簡単に開く。
放熱シートを介して、DRAMがPoP実装されたCPUが出てくる。 素子を放射温度計でモニタしながら、ヒートガンであぶってはんだクラックの対処をしてみると、たしかにある程度起動しつづけるようになった。
 ただ、2日目に急速充電をテストした際に発熱が増え、bootloopが再発。 常用は難しそうだと見限ることにした。 あとから買った新品と比べると、負荷をかけたときの発熱が多いのも気になった。 バッテリ端子を外して絶縁し、保管中。


 SoCの裏側に、スマートフォン全体の電力管理パッケージが実装されている。
統合チップのデータシートのブロック図を読むと、
・バッテリ管理
・各種電源用DCDC回路
・ハウスキーピング(各部温度、電流電圧モニタリング)
・LEDドライバ
・振動モータードライバ
・待機系

といったものがワンチップになっている。 コンデンサいっぱい。 あとところどころにエミフィルがある。
 仕事で作っている基板の機能図とかぶっていて、個人的にこの部分の仕様を追うのが楽しかった。ここまで統合はされてないものの、太陽電池を電源に、バッテリで動く無線局ということで結果的に同じシステムブロック図が出来上がるのだった…。

 センサまわり。気圧センサと地磁気センサ?が見える。 LEDライト/フラッシュの隣には、レーザーフォーカス用のToFレンジファインダがある。 時期的に以前、単体で動作実験していたものと同じ型番だろうか。

はじめてのUSB-Cな端末で、接続についてはいろいろと参考になった…。机の上にPCにつながったUSB系コネクタが勢ぞろいしていて面倒になりつつある。
試しに4つ全部違うコネクタの端末をつないでみた。
AppleのLightning, USB-typeC(Nexus5X), microUSB(Xperia Ray), mini-B(HTC-03A)


MVNOのデータSIMのサイズ変更(micro→nano)するために、再契約までしばらくはiPhoneをルーターにして、省エネなBluetoothテザリングをすることにした。 この機種はバッテリの容量が少ないため、Wifiオフが結構効いてくる。