家事の自動化に必要な投資額とオススメ機種紹介

最近 Twitter で「食洗機買え」「ルンバ買え」の声をよく目にする。たしかにこれらの自動化家電は家事の負担を軽減させ、QoL の向上に寄与する。しかしそれらの声に対して「でもお高いんでしょう」「いろいろあってどれがいいかわからない」と尋ねる声も目にする。そこで、金額やオススメ機種の情報を探しているかた向けに、実際に食洗機・ルンバ・ドラム型洗濯乾燥機を導入してみた自分がそれぞれのオススメを紹介しようと思う。結論から書くと、すべて購入すると工事費をあわせて約 22 万円弱かかるが、それでも購入して損はない。

ロボット掃除機

ロボット掃除機は、1回の掃除で床を完璧に綺麗にするものではない。むしろ毎日動かして綺麗を維持するためのものである。ゆえに、1回の掃除力は高くなくてよく、金額としては安いものでも十分にその役割を果たしてくれる。

そうは言っても、他社製の安いものより Roomba はやはり安定なので、Roomba の最安品がおすすめである。

Roomba 641(2018-07-24 現在、約32000円)

カーペットを使用しない・床に物を置かないなど、生活をロボット掃除機に適したものに変更する必要はある。

食器洗い乾燥機

ビルトインでない家庭用食洗機は Panasonic しか製造していないので、選択肢は少ない。 その少ない選択肢の中で、毎日使用する・昼食は外で取る前提を置けば、1-2人で生活するならばプチ食洗で間に合う。 乾燥機能は必須なので、必ず乾燥機能つきのものを選択する必要がある(洗濯機能のみのものは、洗濯完了後に食洗機の蓋を開ける必要があるが、それは自動化としては不十分である。選択完了後に蓋を開けられるような人は家事を自動化しようとは思い立たないはずである)。特殊な洗浄機能は不要である。以上の条件を満たすのは下の1機種のみである。

NP-TCM4(2018-07-24 現在、約40000円)

食洗機購入に際しての注意点としては工事費が別途かかることが挙げられる。本体以外に分岐水栓パーツ代(約1万円強;蛇口の形式によって異なる)+分岐水栓工事代(約1万円弱;業者によって異なる)が別途必要で、本体と合わせて計6万円程度の出費となる。

また、食器についても、この食洗機に入り、かつ食洗機対応の食器を選んで購入・使用する必要がある。

加えて、調理器具(フライパン等)も、T-fal の取っ手が取れるタイプのうち、食洗機対応で、この食洗機に入るものを使用すれば手洗いの手間が省ける。

ドラム型洗濯乾燥機

各社各機種存在するが、基本的な機能はどれも同じである。要は自動で洗濯から乾燥までやってくれればよいので、最安のもので問題ない。

たとえば、BD-SG100BL などで十分用をなすだろう(2018-07-24 現在、約120000円)

これについても食洗機と同様に、ノーアイロンシャツなど、乾燥後に放置してもシワにならない衣服を選ぶ必要はある。

まとめ

上記3機種で、計22万円弱。ロボット掃除機をより低価格なものに抑えれば20万円以内も夢ではない。それでもなかなか高額だが、これらによって家事の時間的・肉体的・精神的負担が激減する。初任給が出たら買って損はないと考える。

グラフィックボードの交換

最近 PUBG というゲームをやっているのだが、グラフィックを最低設定にしても、室内に入ると重くなる・急に振り向くことができない などの問題が生じていてなかなかドン勝を食べることができていなかった。勝てないのは自分の腕のせいではなくグラボのせいにするという PC ゲーマーの旧習に則り、私もグラボのせいにすることにして2011年ごろに購入したグラボを交換することにした。

まずは AMD のドライバを削除する。コントロールパネル の プログラムの変更・削除 から AMD Catalyst Control Center をアンインストール。 また、AMDドライバを完全に削除するユーティリティ を配布している。通常のアンインストールが失敗したら使用せよと書かれているので、コントロールパネルからのアンインストール終了後に1回実行しておこう。

続いて、完全に PC の電源を落として(裏面の電源スイッチまで切る)からグラフィックボードを差し替える。

電源を入れ、新しいドライバを GeForce のサイト からダウンロードしてくる。インストールの際に、標準でインストールしようとしたら失敗した。カスタムから、クリーンインストールする にチェックを入れてインストールしたら正常にインストールされた。

とてもスムーズに交換することができた。ファンが2枚から1枚になったので静音にもなり、足音がよく聞こえるようになった。 PUBG はグラフィック 中 設定で快適に動くようになった。高 でもわりと快適だがところどころひっかかりを感じる。 ちょっとまえに購入して、これまたグラフィック最低設定で遊んでいた Watch_Dogs 2 も高めのグラフィック設定でプレイできるようになったのでサンフランシスコの霧を味わいに行ってこようと思う。

Raspberry Pi 2 を AirPlay サーバーにする

Sharepoint Sync をインストール

本家 の General Build Instructions を参考に必要なライブラリをインストール。 libsoxr は負荷が高いようなので使用しないことにする。

$ sudo apt-get install build-essential git
$ sudo apt-get install autoconf automake libtool libdaemon-dev libasound2-dev libpopt-dev libconfig-dev
$ sudo apt-get install avahi-daemon libavahi-client-dev
$ sudo apt-get install libssl-dev
$ sudo apt-get install libpolarssl-dev

続いて Sharepoint Sync 本体のインストールに移る。

$ git clone https://github.com/mikebrady/shairport-sync.git
$ cd shairport-sync
$ autoreconf -i -f

systemd が走っているシステムなのか System V なのかを次のコマンドで判断。出力に systemd を含むものがあれば前者。

$ ps aux | grep systemd | grep -v grep

コンパイルオプションを指定して make してユーザーを作って make install する。公式の手順に従っているだけ。

$ ./configure --sysconfdir=/etc --with-alsa --with-avahi --with-ssl=openssl --with-metadata --with-systemd
$ make
$ getent group shairport-sync &>/dev/null || sudo groupadd -r shairport-sync >/dev/null
$ getent passwd shairport-sync &> /dev/null || sudo useradd -r -M -g shairport-sync -s /usr/bin/nologin -G audio shairport-sync >/dev/null
$ sudo make install
$ sudo systemctl enable shairport-sync

名前の設定を変更する。

$ sudo vi /etc/shairport-sync.conf

general = {
  name = "AirPi";

}

あとは $ sudo reboot すれば使えるようになるはず。同じネットワークにある iOS 機器 もしくは iTunes から、さきほど設定した名前のデバイスが検出できていることを確認する。

USB オーディオ機器を接続

オーディオの音質を上げるため、USB サウンドデバイスを接続した。手順は ここ を参考にした。デバイスとしては、家にあった UA-4FX を利用した。

まずは何も接続していない状態でサウンドデバイスを確認。

$ cat /proc/asound/modules
0 snd_bcm2835

USB に UA-4FX を接続して、再度確認。

$ cat /proc/asound/modules
0 snd_bcm2835
1 snd_usb_audio

この機器番号 (1) をデフォルトとして使うように alsa のコンフィグを変更し、再起動。

$ sudo vi /usr/share/alsa/alsa.conf
...
defaults.ctl.card 1
defaults.pcm.card 1
...
$ sudo reboot

小型軽量有線USBマウスのケーブルを着脱可能に改造する

動機

ノートパソコンにはトラックパッドが付いているが、長時間のカーソル操作のしやすさではマウスに軍配が上がる。 無線マウスは電池を内蔵しているので重いうえに、使っていないとすぐに省電力モードとなり、動かし始めの最初の数百ミリ秒ではあるが移動に遅れが発生してストレスが溜まるため、小型軽量の有線マウス を常時持ち歩いている。

ところが、このマウスはケーブルが細いため、カバンの中に入れておくと頻繁に断線する。Amazon で購入記録を調べたところ、前回の購入日が 2016-10-30 であり、この記事を書いている 2017-01-21 の数日前に断線したのだから、実質今回は3ヶ月持たなかったことになる。もちろんメーカー保証期間内であるため家電量販店などに持っていけば交換してくれるのだが、交換までに数日・数週間かかるので現実的ではない(再購入のほうが総合的なコストは低いように感じてしまう)。

この状況があまりにもストレスフルだったため、断線したケーブルを取り去って着脱可能となるように改造した。もちろん保証範囲外となるので、試される方は自己責任でお願いします。

端子の選定

Android 端末・カメラ などの充電端子として使われている USB Micro B メス コネクタをマウスにつければ、常時持ち歩いている USB ケーブルを用いてマウスを使用することが可能となる。 ただし、通常の Micro B メス コネクタは表面実装用であるため、手で配線をするのは困難である。よって秋月電子で販売されている ブレッドボード用マイクロBメスUSBコネクタDIP化キット を利用する。

マウスの解体

裏面にある QC と書かれたシールを破るとネジが現れる。このネジを外すとマウス本体のケースを上下に分離できる。

コネクタ取り付け位置の選定

今回はちょうど前方にコネクタを取り付けることができそうなスペースがあった。

Mouse Base Front

周囲のプラスチックを切り落とし、コネクタの基盤も不要な部分は切り落としてその部位に嵌まるように加工する。

Cut USB Connector and Mouse Base

USB Connector Inserted

ケーブルの接続部分は太くなっていることが多いため、周囲をちょっと大きめに切り落としてケーブルとの干渉を防ぐ(このあたりは、いったん作ってみて、ケーブルと干渉した場合に微調整するという方針でよいだろう)。 クリック操作に支障が出ないように注意する。

Mouse After Remodeling Front View

ケーブルの取り外し・再結線

ハンダ吸い取り線を用いて USB ケーブルが基盤に接続されていた部位を切り離し、コネクタの基盤に再配線する。

Mouse Substrate Before Remodeling

New Cables Inserted

USB は通常 4 線なのだが、USB Micro B は 5 線であり、そのうちの 4 番目の線は拡張用なので、導線は 1, 2, 3, 5 番のピンに接続することに注意。

Cables Connected to USB Connector

ケースへの収納

ケースを閉じて、ケーブルを接続し、通常のマウスのように使えたら完成である。 コネクタがきちんとマウス自体に固定されるように、グルーガンや接着材などを使用してもよいかもしれない(ズボラなのである程度ガタガタでも私は許容してしまっている)。

Substrate Inserted

結句

荒療治ではあるが、けっこう簡単にできる加工なので(所要時間2時間弱)オススメである。

MacBook Air を半分放電させてからシャットダウンする作業を自動化する

数ヶ月に1回ほど使用する MacBook Air があるのだが、長期的に充電池を放置することになるので、充電池が劣化するリスクが有る。 こういう場合のベストプラクティスは、 Apple が公式に公開している記事によると、 【50% の充電状態で電源を切って適正温度で維持すること。半年に一度は確認して 50% を維持すること。】だそうである。 だから使用後には AC アダプターから外して 50% になるまで待ってから電源を切るという行動をする必要があるのだが、こんなこと人間がやる必要ないなと思ったので自動化した。 下のコードに名前をつけて $ caffeinate -di python BatteryTo50PercentAndShutdown.py というふうにスクリーンロックを抑止しながら実行してやればよい。

# Usage: $ caffeinate -di python BatteryTo50PercentAndShutdown.py

import time
import subprocess
import re

# Drain battery until it reaches to the percentage of aim.:
percentage_of_aim = 50
# percentage_of_aim = 100  # debug
cmd = 'pmset -g batt'
# re_percent = re.compile('-InternalBattery-0\s*([0-9]+)%')
re_percent = re.compile('\s*([0-9]+)%')
while True:
    proc = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
    out, err = proc.communicate()
    percentage = int(re_percent.findall(out)[0])
    print percentage
    if percentage < percentage_of_aim:
        break
    time.sleep(60)

# Shutdown:
# http://stackoverflow.com/questions/28438247/computer-shut-off-python-3-4
import subprocess
subprocess.call(['osascript', '-e', 'tell app "System Events" to shut down'])

Steam 版 Watch_Dogs 2 を英語音声でプレイする方法

  1. Steam のライブラリから Watch_Dogs 2 を右クリック→プロパティ
  2. 言語→このゲームで使用する言語を選択してください を English(英語) に変更。
  3. 音声ファイル 2 GB くらいのダウンロードが勝手に始まる。
  4. ダウンロード完了後にゲームを起動。この時点では文字・音声ともに英語になっているはず。
  5. 英語音声日本語字幕にしたい場合は Settings→Audio and Language→Written Language を日本語に。

iOS のリマインダーの記録を取得したのちに完了済みのリマインダーを削除する

はじめに

GTD-like なシステムを iOS のリマインダーを用いて構築しているのですが、さいきんリマインダーがバグいな〜と思っていたのです(そもそも動作が緩慢&携帯との同期が遅い&特にスケジュール情報の同期が壊滅的)。 これはもしかしたら4000件にも及ぶ完了済みの予定が影響しているのではないかと思い、完了済みの予定を全削除しようと考えました。 しかしせっかく記録があるのですからこれのログは残したい。そのために Pythonista でログを取ってから予定削除、という手順を取りました。

リマインダーの記録を取得(Pythonista を利用)

Pythonista 3 を利用して iOS のリマインダーの予定を全取得しました。コードは次のとおりです。 reminders モジュール から呼び出せるすべての attributes を読んでいるはずなので、これ以上の情報は取れないはずです。

Backup all reminders in iOS Reminders app, using P ...

完了済みの予定を削除

iCloud の Web インターフェース に完了済みの予定をすべて削除する機能がある、との情報が 世間には 広まっています が、実際にこれを数千件の予定に対して行うと100件を超えたあたりくらいで rate limit に到達し iCloud がエラーを吐きまくって死にます(経験済)。

完了済みの予定を削除するベストプラクティスは、macOS のリマインダーアプリ を用いて完了済みの予定を表示して、Shift+クリックで完了済みの予定を全選択し、右クリック→削除 です。

結果

プラセボかどうかわかりませんが、なんとなく動作が軽快になった気がします。

それにしても数千件程度の予定で音を上げる iOS の Reminders アプリってリマインダーアプリと呼べるのか疑問です。