FC2ブログ

迷走の果て・Tiny Objects

迷走する日々の覚え書きです。自分で分かってることは省略してますので、念のため。

M5StickC バッテリーの電圧、放電電流、充電電圧を測ってみる

M5StickCはバッテリーが内蔵されていますが80mAHと容量が小さいのであまり長時間は使えません。
その辺りを調べてみようかと思いましたが、既に何人かの方が記事にされています。

とうふ荘さん M5StickCのバッテリーでの動作時間
らびやんさんのツイート

とはいえ自分なりにM5StickCの勉強を兼ねて調べてみました。
Lang-Shipさんの
M5StickCのバッテリー管理AXP192を調べる
電源管理(AXP192)
を参考にさせて頂きました、とても助かりました、ありがとうございます。

まずはバッテリ電圧の取得。
loop内で
double vbat = M5.Axp.GetVbatData() * 1.1 / 1000;
で電圧を取得して表示するだけのスケッチです。
GNDとBAT端子にテスターをつないで測定、ほぼあっています。
vBat.jpg

1.1をかけるのはAXP192データシート26ページにBattery Voltage Step 1.1mV となっているからです。
同様にバッテリの充放電電流のStepは 0.5mAであるとわかります。
AXP192データシート切り抜き

バッテリ電圧だけでなく、充放電電流も測れるようにスケッチを書きました。
CPUクロックも変えられるようにしました。

充電時ですが電流はバッテリーの状態によって変化します。
充電電流

クロック20MHzでの放電電流、ばらつきますが目視で約20mA程度。
放電電流クロック20MHz

クロック240MHzの放電電流、これもばらつきますが、目視で45mA程度。
放電電流フルクロック

シリアルモニターで見たいところですがケーブルをつなぐと充電されるので放電電流は測定できません。
WifiかBluetoothで飛ばせばいいんでしょうけど、まだ勉強が進んでません。
スポンサーサイト



OLEDの焼き付き

二年ほど前に温度・湿度・気圧計を作りました。センサーにはBME280、ディスプレイにOLEDを使いました。
だいぶ前から気にはなっていたのですが、一部の文字が暗くなってます。
常時表示している部分がそうで、下の写真では単位や小数点、また気圧の上位二桁が暗くなっています。
写真ではそれほど目立ちませんけど。
交換前

新しいのに入れ替えるときれいな表示になりました。
交換後

二年間ずっと使い続けていたわけではありません。電池動作なので電池が切れても放置したままだったこともありますので。
なのでどれぐらい使ったら輝度が低下したのかはわからないです。

長持ちさせようと思ったら、
輝度を落とす。
スイッチをつけて必要な時だけ表示させる。
人感センサーで人のいるときだけ表示させる。
ドットのビット反転。
などが思いつきます。
今後の課題です。

M5StackにMLX90640をつないでみる(3)視野角の違うセンサーの比較

視野角の違う二つのMLX90640モジュールを比較するために手持ちの治具を使ってできるだけ同じ方向に向けてみました。

MLX90640比較

例によって自撮り、センサーとの距離は約50センチ、上は視野角110°、下が視野角55°のセンサーです。
スマホを右手でもち、左手で上を支えて写真を撮りました。

MLX90640比較1

次は距離約30センチの自撮り。
今度は上が視野角55°下が110°のセンサ。
上は眼鏡が分かるんですが、下は眼鏡より口付近の温度が高くなっているように見えます。
MLX90640比較2


M5StackにMLX90640をつないでみる(2)

今度はQwiic - MLX90640搭載 赤外線アレイモジュール(FOV55°)をつないでみました。
自撮り(笑)してみたんですが、視野角が違うためか前回と同じように顔を写すためには前より離れる必要がありました。
私の顔が写っていて、中央は私の右眼鏡部で温度が低くなっています、右下はスマホです。
MLX90640自撮り2

視野(FOV)についてデータシート52ページから引用します。
MLX90640_FOV.jpg

今回使ったモジュールはFOV55°のMLX90640-ESF-BABを使ってます。(今2019/10/10現在、スイッチサイエンスさんでは品切れのようです)
前回のモジュールはFOV110°のMLX90640-ESF-BAAを使っており、M5StackにGroveでそのままつながります。

でも今回のモジュールはそのままつなぐわけにはいきません。
Grove電源端子は5Vですが、今回のモジュールの動作電圧は3 V〜3.6 Vです、電圧を落とす必要があります。
そこでGROVE - プロトシールド三端子レギュレータLP2950L-3.3を載せたアダプタを作りました。

sparkfun_MLX90640.jpg

MLX90640_2.jpg

これでM5Stackにつなげることができました。
スケッチは変えていません。

とりあえずここまで。あとは三連休にいじってみます。
台風の影響がなければいいんだけど。

M5Stackにミニサーマルカメラユニット(MLX90640)をつないでみる(1)

M5StackにM5Stack用ミニサーマルカメラユニット(MLX90640)をつないでみました。

自撮りしてみました(汗)
両手でスマホをもって写しています、眼鏡の辺りが温度が低くなっているのが分かります。
上の横ラインは蛍光灯スタンドです。
MLX90640自撮り

スケッチはサンプルスケッチのままです。
いやぁ、面白いですわ。
MLX90640menu.jpg

M5StickCにNCIR(MLX90614)をつなぐ(2)

MLX90614は物体温度(Object temperature)と周囲温度(Ambient temperature)が測定できますが、先の記事では物体温度だけ表示していました。
両方表示するためにAdafruit-MLX90614-Libraryを使います。
実際には
M5StackとNCIRモジュールで、飲み物の覚めすぎを防止する
というQiita.comの記事を参考にしました。ありがとうございます。
記事のスケッチから私には不要な部分をカットしてM5StickCに移しました。

カッコ悪いんですが、M5StickCとNCIR(MLX90614)モジュールを結束バンドで仮固定しました。
表示上が物体温度、下が周囲温度です。
M5StickC_MLX90614表

M5StickC_MLX90614裏

見た目が悪いし表示も愛想ないので、もう一工夫したいところです。


M5StickC NCIR(MLX90614)

M5StickCに非接触温度センサユニットをつないでみました。
このユニットにはMLX90614が使われています。
以前、MLX90614をArduinoで使ったことがあるので、その時に使ったMLX90614を外して、GROVEプロトシールドを使ってつないでみました。
センサーの向きが違うので表示温度は同じにはなっていません。


MLX90614はパッケージによって数種類あります。
これは以前に、私のブログで書きました
M5StickC_MLX90614比較
並べると厚みが違います。
今回のユニットにはおそらくMLX90614ESF-BAAが使われています。
手持ちのはMLX90614ESF-BCCで視野角が35°と狭くなっています。
視野角10°のMLX90614ESF-DCIもありますが、aliでも2000円以上します、まだ手を出していません。

スケッチはほとんどサンプルスケッチのNCIR.のままで、一行だけ追加してます。
6行目の次に
M5.Axp.ScreenBreath(9); // 画面の輝度を設定(7-15)
を追加しています。
輝度調整用で0から設定できますが、0~6では見えません。
7でかろうじて見えるようになります。
ScreenBreath7.jpg

設定が8の場合です、見えますがちょっと暗いので今回は9にしています。
ScreenBreath8.jpg

設定値による消費電流の違いは
M5StickCの消費電源 その1にあります、測定していただきありがとうございます。

M5StickCと ENV hat

M5StickC に ENV hat をつないでみました。

M5StickC_ENV_Hat.jpg

フラッシュのせいかM5StickCの色が変わってしまってます。
スケッチはサンプルスケッチのまま使いましたが、Adafruit_BMP280_Libraryをインストールする必要がありました。

どうも温度が高すぎるように思います。
触ってみるとM5StickCが発熱しているようでそれがENV Hatに伝わってしまったのでしょう。

M5StickC_ENV_Hat比較

そこで写真の上側のように、ジャンパ線で離してみました。
ENV Hat直刺しだと3度も温度が高くなっています。

なおスケッチは若干変更してあります。
気圧表示は100で割って単位をhPaにしました。
HeadingDegrees は表示をコメントアウトしました
フォント指定を変更しました。
フォント指定についてはM5StickCのDisplay周り解析を参考にさせて頂きました、とても助かりました、ありがとうございます。

一部引用します。

フォント指定
M5.Lcd.setTextFont(font)
1 Adafruit 8ピクセルASCIIフォント
2 16ピクセルASCIIフォント
3 未設定
4 26ピクセルASCIIフォント


サンプルスケッチのENVではフォント指定は2でしたが、小さすぎて老眼に優しくないのでフォント指定は4にしました。

ENV Hatは直刺し出来てお手軽なんですが、温度が高く表示されてしまうのが残念な点です。
温度重視ならこの記事のように離してしまうか、M5Stack用環境センサユニットを使った方がいいでしょうね。
持ってないので動作確認していません、たぶん動くでしょうけど。

エモグラスを使ったハローウィンの電飾

百均で買ったカボチャのオーナメントにエモグラスをつけてみました。
エモグラス_ハローウィンの電飾
買ったエモグラスには点滅パターンが入ってるので、単に両面テープで張り付け、電源を配線しただけです。
問題なく動作したのですが、一つ気になっていることがありました。

エモグラスの注意書きです。
エモグラス注意点

ACアダプタを使いコンセントを抜いて電源を切るとプログラムが破壊される場合がある、とのことです。
なぜそうなるのかちょっとわからないのですが、USBコネクタを抜いて電源を切るのではなく、ACアダプタのコンセントを抜いて電源を切ると電圧がゆっくり降下するでしょうから(出力に電解コンデンサが入ってるから)それがトラブルを起こすのではないかと推定しています。
これは困ります、店の電飾は24時間つけっぱなしにするわけにはいかず、以前買ったデジタルタイマーでACアダプタをオンオフするつもりだからです。
でも以前作った電飾ではトラブルは起きていません。

で、試しにACアダプタから電源を供給し、コンセントから抜き、再度差し込んでみると、点滅しなくなりました。
なんでやねん!
このエモグラスにはATtiny85が使われておりDigispark互換となっているそうです。私はDigisparkは使ったことがありません。

以前の電飾にはArduino pro miniを使ってタイマーオンオフでも問題なかったので、作り直すことにしました。

続きを読む »

ターンテーブル

日本橋のシリコンハウス共立でお買い物。
ソーラー/乾電池(単三電池一本)両用のターンテーブルです。
ターンテーブル

M5StickCにBeetleCを装着したのを乗せて回してみました。



 | HOME |  古い日記に行く »

文字サイズの変更

プロフィール

edy

最新記事一覧(サムネイル画像付き)

M5StickC バッテリーの電圧、放電電流、充電電圧を測ってみる 2019/10/21
OLEDの焼き付き 2019/10/13
M5StackにMLX90640をつないでみる(3)視野角の違うセンサーの比較 2019/10/11
M5StackにMLX90640をつないでみる(2) 2019/10/10
M5Stackにミニサーマルカメラユニット(MLX90640)をつないでみる(1) 2019/10/09
M5StickCにNCIR(MLX90614)をつなぐ(2) 2019/10/06
M5StickC NCIR(MLX90614) 2019/10/05
M5StickCと ENV hat 2019/09/28
エモグラスを使ったハローウィンの電飾 2019/09/22
ターンテーブル 2019/09/16

全記事表示リンク

全ての記事を表示する

リンク

このブログをリンクに追加する

月別アーカイブ

10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  12  11  10  09  07  05  04  03  04  03  01  12  11  10  08  07  06  05  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  02  01  12  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  10  09  08  07  06  05  04  03  02  01 

カテゴリ

プログラミング (0)
freescale (1)
AVR (3)
テルミン (16)
緊急警報放送 (3)
78K (1)
PSoC (295)
地上デジタル放送 (2)
電子工作 (490)
HX711 (2)
ACS712 (6)
DDS (3)
数学 (6)
パソコン (16)
PLC (14)
未分類 (42)
ブログ関係 (20)
スカイプ (37)
ロボット (1)
LTSpice (8)
OCXO (0)
arduino (35)
maxima (1)
フランクリン発振回路 (3)
GPS (3)
DTMF (1)
Linux (1)
KOMAINO (7)
Android (1)
obniz (7)
M5Stack (5)
Analog Discovery (1)

タグリスト

最近のコメント

最近のトラックバック

メールフォーム

名前:
メール:
件名:
本文:

検索フォーム

アクセス

RSSリンクの表示

ブログリンク

Template by たけやん