じゃがいもログ

脊髄性筋萎縮症(SMA)1型の息子と生活中

Arduinoでタッチセンサースイッチ ver.2

以前作ったタッチセンサースイッチ、その後大活躍していますが、使用条件によってはセンサーの感度がとても不安定になることがあります。どうも接続先の機器の影響を受けているっぽい。スイッチのオンオフ制御にメカニカルリレーを使っているのですが、これの絶縁性が良くないそうで、タッチセンサー側にノイズが乗る原因になっているのではと推測しました。

そこで、より絶縁性に優れたPhotoMOSリレーを使って新しく作ってみることにしました。あわせて、今回はなるべくノイズの載る要素を減らすために回路は極力シンプルにし、前回の1装置2センサー・感度調整つまみ付きから、1装置1センサー・感度調整つまみなしで行くことにしました。

PhotoMOSリレーについては、Panasonicのサイトがとても参考になりました。接続先機器がどういった電流・電圧を流すかわかりませんので、汎用タイプのGU 1a 高容量を使ってみることにしました。

プロトタイピング

まずは、検証用に使っているいつものArduino unoと、ブレッドボードを使ってプロトタイプ作成です。

いろいろ微調整しつつ、最終的には下の図ような回路になりました。メカニカルリレーと違ってPhotoMOSリレーはオンオフの切り替えで音がしないので、オンのときはLEDが発光するようにしました。ただし9番ピンに繋がっている抵抗については、LEDの定格電流的に150Ωとすべきですが、流れる電流量が大きすぎるのかセンサーが安定しないため、1KΩの抵抗を使いました。

スケッチ(ソースコード)はこちら。

センサーの閾値(SENSOR_THRESHOLD)は、シリアルポートの出力を見ながら調整し、150としました。しばらくこれで動作確認してみたところ、だいぶ安定しているようだったので、このまま本実装に進みます。

本実装

今回使用した部品は以下の通りです。

例によって一番大変なケースの加工を終わらせたら、あとははんだ付けしながらケースに組み付けです。回路は、Arduinoがunoからmicroになった以外は、プロトタイプのものと完全に同じです。スケッチ(ソースコード)もまったく同じものを使いました。

仮止めして息子に少し試してもらった感じでは、以前のものよりだいぶ安定しているようでした。ただ、プロトタイプモデルと同時に利用してかつ同じモバイルバッテリーから給電すると、とたんに不安定になりました。別電源からとると、同時使用しても問題なし。やっぱり以前のバージョンで不安定だったのは、1回路でセンサーが2個だったことも大きいのかなと思いました。

両手で使用できるように2個作る必要があるので、来週末にでも2個目を作ります。

[2021.2.17追記]
その後、2個目も作りました。1つのモバイルバッテリーから電源をとっても、問題なく動作しているようです。メカニカルリレー版とは違って、とても安定しています。

ソニーBDレコーダー用リモコンのエミュレート

以前、Panasonic製テレビのリモコンをArudinoで作りましたが、今度はソニー製BDレコーダー用のリモコン化にも挑戦しました。
jagaimolog.hatenablog.jp

Panasonicリモコンの時と同様に、IR受信センサーを使って、本物リモコンの信号を読み取り、同じ信号を赤外線LEDで発信するようにします。信号の特定はすぐにできたのですが、何度試してもBDレコーダーが反応しない。ネット上をいろいろ調べていたところ、ここを読んでいて、あることが書かれていることにふと気づきました。ソニー製リモコンは、同じ信号を3回続けて出すようになっているとのこと。また、使用しているArduino用IR Remoteライブラリの最新コードを見ると、45msごとに3回送信する、と書かれています。

ということで、IR Remoteライブラリのコードを参考にしつつ、信号発信部分のコードを以下のようにしたら、さっくりBDレコーダー側で信号を認識してくれました。

for (int i = 0; i < 3; i++) {
   unsigned long startMillis = millis();
   irsend.sendSony(signalData, BITSIZE); 
   delay((startMillis + 45000 / 1000) - millis());
}

ソニー製リモコンの信号の仕様については、こちらも参考になりました。
https://www.sbprojects.net/knowledge/ir/sirc.php

祝 Xbox Adaptive Controller 在庫復活!

2020年元旦時点で在庫が復活しているようです!たしか12月29日か30日くらいにみたときは相変わらず在庫切れでしたので、年末年始にかけて在庫が復活したみたいです。発売が昨年の1月でしたので、ほぼ1年ぶりでしょうか。前回在庫切れで買えなかった方は、以下リンクから見てみてください。新しいXboxでもばっちり使えるのでオススメです!

www.microsoft.com

Goal Zero 2号機

移動時の持続吸引と送風マットの電源として使用しているGoal ZeroのSherpa 50、まだまだ現役で活躍していますが、さすがに5年近く使いこんでそろそろ故障が心配になってきました。

外出中に突然止まると困るので、こちらはバックアップにまわして、新しい電源を調達することにしました。

某有名メーカーのものなども試しましたが、いまいち我が家の使用形態にあわず、回り道した結果、結局は今回もGoal Zeroになりました。Sherpa 100ACです。

値段が張るだけあって、妙にプレミアム感のあるパッケージ&本体でした。(もっとしょぼくていいから安くしてほしい・・)

さすがGoal Zeroと思ったのが、AC出力のタイムアウト設定を無効化できるところ。電力消費が低いと、自動でタイムアウトしてAC出力が止まってしまうポータブル電源が多い中、このSherpa 100ACはタイムアウトの有無を設定で変更できます。

ACアダプターは旧モデルのSherpa 50のものを使いまわせるし、今回も大満足の一品です。
[asin:B07HFHTGX3:detail]

文字盤アプリの配信

Xboxで動作確認できた文字盤アプリですが、いちいちDev modeにするのがめんどくさいので、Store経由でインストールできるようにしてみました。

Microsoft Storeにアプリを置く場合、公開先やインストールできる人を限定できるそうなので、自分のアカウントのみでインストールできるように公開範囲を設定してみみました。アプリの申請自体は、中身がほぼ無いせいかほぼスルーで承認されていました。

Windowsからだとこんな感じでMicrosoft Store上で見れます。Xboxでも似たような感じです。

で、無事にStore経由でインストールできて、Dev modeではない通常のモードでアプリを気軽に起動できるようになりました。

ミキサー食とスベラカーゼ

これまでミキサー食に何度か少しずつトライしてみましたが、嘔吐が続いたりしてなかなか定着しませんでした。嘔吐のことを先生に相談してみたところ、ミキサー食にした方が粘性が高いから逆に嘔吐が減りますよ、と目から鱗的なアドバイスをいただき、あらためてミキサー食に挑戦することにしました。

前から気になっていたこちらを購入して、まずは先達たちの知恵に頼ることにしました。

これまでは、おなかをあまりびっくりさせないようにと、ミキサー食は少しにして、あとはエネーボをあげるということをしていましたが、どうもそれが逆効果だったようです。この本にならって、ミキサー食の量を思い切って増やしてみるところから始めました。またミキサーにかける時間も全然短かったようなので、しっかり1分以上かけるようにしました。

そうすると、吐くこともほとんどなくなりました。

ある程度慣れてきて次に挑戦したのが、先ほどの書籍で紹介されていた「スベラカーゼ」です。でんぷんによる粘りけを解消しつつ、ゼリー状にするという魔法?の粉です。ミキサー食はたいていおかゆ状態にしたものをあげているのですが、そうするとご飯に含まれるでんぷんによって粘りけが出てしまい、シリンジで押すのが一苦労になるし、胃婁チューブが詰まりやすくなってしまいます。それらを解消しつつ、ゼリー状にすることによって栄養剤のような逆流を防ぐことができる、という優れモノだそうです。

最初は、粘りけを解消しつつゼリー状にするという状況がいまいちよく理解できませんでしたが、ものは試しで使ってみたところ、これがほんとに素晴らしい。

文字通りミキサー食がゼリー状になり、シリンジでの注入もぐっと楽になりました。