2020年9月3日木曜日

補聴器乾燥機の観察

補聴器乾燥機について電気式と乾燥剤式を比較してみました。

この実験は厳密な比較ではありません。ごく簡易的な条件で行いました。何しろ蓋の隙間から電線引っ張り出しているので、当然通常の使用状態とは異なります。あらかじめご了承ください。

■電気式■

シーメンス SIEMENS 補聴器電気乾燥機 パーフェクトドライ クイックエア(4,698円)は電源が必要ですが乾燥剤不要の乾燥機です。最近購入しました。使ってみて思ったのは乾燥機から取り出した時に補聴器が「カサッ」とした手触りなんですよね。相当強力な除湿効果があるのでは、と期待して試してみました。補聴器とセンサーを入れてスイッチをonにします。一定時間(約60分)でスイッチが切れて、徐々に室内と同じ環境に戻ります。

スイッチONから20分ほどで湿度28%まで低下、温度は45分後に45度まで上昇。

乾燥剤式よりも効果があるように感じられるのは、湿度だけでなく温度も上がるからだと思います。



■Panasonic補聴器用乾燥剤■

WIDEXの乾燥ケースを数日開けっ放しにして部屋と同じ湿度にし新品の乾燥剤に補聴器用乾燥剤・1個入りパナソニック製WH-PZ1805Jを入れました。4時間30分ほどで27.8%で落ち着きました。


その後、帰宅して汗びっしょりの補聴器を入れてみたのが11時。15分で28%に到達する電気式ほどではないですが、26分で30%を切っています。


■まとめ■

いかがでしt……じゃなくて。

短時間でさっさと乾かす電気式とじっくり乾燥させる乾燥剤式。電気式は乾燥剤10年分の値段ですが、私のように1日に何度も補聴器を出し入れする使い方には電気式の方が向いているように思います。

■電子工作アカなので■

計測にはM5 ATOM lite + CJMCU-8128を使用しました。CJMCU-8128はCCS-811、BMP280、SI702xを搭載していて、温度(3つ)、湿度、気圧、CO2、TVOC(空気質?)を計測できます。

今回の計測には関係ないんですが……CCS-811ってどのぐらいアテになるんでしょうね。CO2とTVOCの値がほぼ連動してますし、数日使っていると窓をあけてもCO2濃度1200ppmなんて値が出て地球が終わりそうになるんです。


#include "Adafruit_CCS811.h"
#include "Adafruit_Si7021.h"
#include "Adafruit_BMP280.h"
Adafruit_CCS811 ccs;
Adafruit_BMP280 bmp280;
Adafruit_Si7021 SI702x = Adafruit_Si7021();
//
// Wifi, ambient
//
#include <WiFi.h>
#include "Ambient.h"
WiFiClient client;
Ambient ambient;
const char* ssid = "<your wifi ssid>";
const char* password = "<your wifi password>";
unsigned int channelId = <AmbientのチャネルID>;
const char* writeKey = "<Abmientのライトキー>";
//
// Setup
//
void setup() {
Serial.begin(115200);
Wire.begin(32, 26);
WiFi.begin(ssid, password); // Wi-Fi APに接続
Serial.println("CCS811 test");
if (!ccs.begin(0x5A)) {
Serial.println("Failed to start sensor! Please check your wiring.");
while (1);
}
//calibrate temperature sensor
while (!ccs.available());
float temp = ccs.calculateTemperature();
ccs.setTempOffset(temp - 25.0);
Serial.println("BMP280 test"); /* --- SETUP BMP on 0x76 ------ */
if (!bmp280.begin(0x76)) {
Serial.println("Could not find a valid BMP280 sensor, check wiring!");
while (true);
}
Serial.println("Si7021 test!"); /* ---- SETUP SI702x ----- */
if (!SI702x.begin()) {
Serial.println("Did not find Si702x sensor!");
while (true);
}
while (WiFi.status() != WL_CONNECTED) { // Wi-Fi AP接続待ち
delay(100);
Serial.print(".");
}
ambient.begin(channelId, writeKey, &client); // チャネルIDとライトキーを指定してAmbientの初期化
}
float sumTemp = 0;
float sumHumd = 0;
float sumPres = 0;
float sumCo2 = 0;
float sumTVOC = 0;
int cnt811 = 0;
int sumCount = 0;
float period = 1000 * 60;
float prevPeriod = -1;
//
// Loop
//
void loop() {
if (ccs.available()) {
float temp = ccs.calculateTemperature();
if (!ccs.readData()) {
float co2 = ccs.geteCO2();
float tvoc = ccs.getTVOC();
Serial.print("CO2: ");
Serial.print(co2);
Serial.print("ppm, TVOC: ");
Serial.print(tvoc);
Serial.print("ppb Temp:");
Serial.print(temp);
Serial.print(" ");
sumCo2 += co2;
sumTVOC += tvoc;
cnt811 ++;
}
else {
Serial.println("ERROR CCS811");
}
}
float bmpTemp, bmpPressure;
bmpTemp = bmp280.readTemperature();
Serial.print("BMP280 => Temperature = ");
Serial.print(bmpTemp);
Serial.print(" °C, ");
bmpPressure = bmp280.readPressure() / 100;
Serial.print("Pressure = ");
Serial.print(bmpPressure);
Serial.print(" Pa, ");
sumTemp += bmpTemp;
sumPres += bmpPressure;
float siTemp = SI702x.readTemperature();
float siHumidity = SI702x.readHumidity();
Serial.print(" SI702x => Temperature = ");
Serial.print(siTemp, 2);
Serial.print(" °C, ");
Serial.print("Humidity = ");
Serial.println(siHumidity, 2);
sumHumd += siHumidity;
sumCount ++;
int now = millis() / period;
if (now != prevPeriod) {
if (sumCount > 0) {
ambient.set(1, sumTemp / (float)sumCount);
ambient.set(2, sumHumd / (float)sumCount);
ambient.set(3, sumPres / (float)sumCount);
ambient.set(4, sumCo2 / (float)cnt811);
ambient.set(5, sumTVOC / (float)cnt811);
Serial.println("sending");
ambient.send();
}
sumTemp = 0;
sumHumd = 0;
sumPres = 0;
sumCo2 = 0;
sumTVOC = 0;
sumCount = 0;
cnt811 = 0;
prevPeriod = now;
}
}

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。