Category : 実験室

分からないなりにメッシュネットワークを構築してIoTゲートウェイをつくってみた

No Image

ESP-WROOM-02やESP32でメッシュネットワークを構築できると分かったので色々試していたんですけど、painlessMesh というのが一番楽に構築できました。
Arduino Core を使えるのでプログラムも作りやすいです。

このライブラリを使ってゲートウェイを作るには色々面倒くさそうだったので自分なりに解釈して自分ができる範囲でつくってみました。

温度センサMCP9700を補正して高精度に測定する

No Image

温度センサのMCP9700/MCP9701は安価で温度データの取得も簡単な温度センサですが、少し精度に不安があります。
精度が最大で±4℃ですので、正確な温度測定には全く向かないセンサでしょう。

ただやっぱり「安価」というのは魅力的で重要だと思うのです。
1個だいたい30円ですよ?
1000円くらいする温度センサを何個買えるんですか...
でも実はMCP9700は補正すると±0.5℃まで精度を高められるらしいので、実際にやってみました。

平均値などの逐次計算アルゴリズム

No Image

データの平均値をとることは多いですが、データが逐次的に入ってくるときは普通の計算では今までの全てデータが必要で総和を取る必要があり、これは計算量が多いです。
マイコンなどのメモリが少なく、スペックがあまり高くないシステムであれば、想像以上に影響が出てきます。
ここでは短い計算時間でメモリを節約でき、流れてくるデータの平均値を順次求めていく方法を紹介します。

ADCの値から抵抗値や電圧を求める方法

No Image

ADC(アナログ-デジタル変換器)で取得したデータは量子化されているため、基準電圧に対してのバイナリデータになります。
そのままでも使える場合もありますが、抵抗値や電圧を測定する場合は、計算で求める必要があります。
様々な状況がありますが、換算式を忘れてしまって毎回手計算で求めているのでここにまとめようと思います。

もげないMicroUSBコネクタを求めて

No Image

MicroUSB(Bタイプ)はいろんなデバイスに使われていますが、よくもげるようです。
私はまだ経験したことがないですが、その事例はよく耳にします。
USBはPCとの接続のスタンダードですし、小さいMicroUSBは省スペース化にも貢献しますので私もよく使います。
私ももげるは嫌です。
そこで、もげやすい・もげにくいで分類するとMicroUSBコネクタはどう分類できるのか気になったのでまとめてみました。

ESP8266の動作が不安定なときの対策案

No Image

ESP8266(ESP-WROOM-02)やESP32(ESP-WROOM-32)は小型でWi-Fi接続ができて非常に便利なのですが、電源周りをしっかりとする必要のあるデバイスです。
電源がひ弱だとWi-Fi接続できなかったり、リセットを繰り返したり不安定になってしまうのでしっかりと対策しなければなりません。