日記とか、工作記録とか

自分に書けることを何でも書いてゆきます。作った物、買ったもの、コンピュータ系の話題が多くなるかもしれません。

Amazon Echo Dot使っています

Amazon Echo Dotを買いまして、10日くらい使ったところです。
先に結論を簡単に言うと、まだまだ課題は多いですけど、今後の発展に期待という感じですね。
f:id:WindVoice:20171222075620j:plain

購入

招待制で販売されているAIスピーカーのAlexaシリーズですが、テンバイヤー防止のための戦略なんでしょうか?

私の場合は招待メールを一か月近く待ちましたが、注文して翌日には入手できました。必要に応じてあとからBluetoothスピーカーを接続できるということでしたので、スピーカー部分には期待せず、一番小さくて安いEcho Dotを選択すれば充分と考えることにしました。

セットアップ

セットアップには、スマホが必要です。

基本的には、これだけで使えるようになります。Echo Dotにはバッテリーが内蔵されていないので、常にコンセントとつながっていなくてはなりません。電源はUSBのミニプラグです。一度設定すれば、電源を適当に抜いてほかの場所に移動しても大丈夫です。

設定

私は、「設定」⇒「音声ショッピング」の設定は、無効にしてあります。テレビの音声で一斉に購入動作をしてしまう、などというニュースもでていますが、明示的に無効にできるので、この点は心配いらないと思います。Amazon Music Unlimitedの会員に安く(¥380/月)加入できるようなのですが、今のところ試していません。今後試してみようと思います。
www.amazon.co.jp

何に使う?

音声アシスタントに「Alexa、今日の天気は?」などと聞いてみれば、いま自分がいる地域の天気予報、気温を教えてくれます。「Alexa、今何時?」「Alexa、3分たったら教えて」なども普通に対処してくれます。Googleのアカウントを登録することで、Googleカレンダーへの予定入力、今日の予定の確認なども応じてくれます。Siriとは違って、ひとつづきの応答であれば、いちいちAlexaの名前を呼ばなくても対応してくれます。

ただ、どの機能も、スマホがあるのだからそれでいいのでは?と思わないではいられません。モニターもタッチパネルもなく音声の入出力のみ、という点が、スマートスピーカーの厳しい現実だと思います。話しかけるまで何ができるか(できないか)わかりませんし、Alexaの応答も、集中して静かにじっと聴いていなければなりません。

いつ使う?

つまり、スマホを取り出せないシチュエーションで使うのが良いのでしょうか。ものぐさな気分のときとか、両手がふさがっているときとか。

枕元においておけば、手を伸ばさなくても今日の天気が聞けます(ただし、声を出すので目は覚めてしまいますが)。キッチンにおいておけば、料理をしながら応答してくれるかもしれません。玄関においておけば、暗くても明かりをつけてくれる…… かもしれません(別のデバイスが必要ですが)。Alexaには複数の動作をセットにしておく「定型アクション」という機能があるので、明かりをつけて、エアコンつけて、テレビをつけてくれる(リモコン操作はできるのかな?)なども、アイディアとしてはありかもしれません。

エコシステムとしてはどうなっているの?

音声は、たぶんAmazonに送られて、AWS Lexほかの機能を使って実装されていると思います。となると、Amazonとしてはずっとインフラ料金がかかりつづけていることになります。私は買い物はしないし、Amazon Musicの有料会員にもならないのだとすると、Amazonはどこで儲けるのでしょうか。ここがちょっと不思議なところです。ユーザーを囲いこんでしまえばなんとかなる作戦なのかもしれませんけれど、スマホほど便利ではない状況を考えると、すぐには稼げる商品ではないのでは?と想像します。

ただ、Alexaスキルはスマホのアプリから追加可能ですし、サードパーティにも開発可能です。
developer.amazon.com

ですから、Amazonとしては一種の経済圏を作り上げてしまってあとからマネタイズする戦略なのかもしれません。何かアイディアがあれば私も作ってみたいところではあります。「Alexa、今日会社休むよ」「わかりました、風邪をひいたことにしてメール送っておきます」などとベットのなかからやりとりできると、面白いかもしれません。

Amazon Echo Dot (Newモデル)、ブラック

Amazon Echo Dot (Newモデル)、ブラック

映画見ました:ドクター・ストレンジ

なんとなく気分で、Amazonビデオのドクター・ストレンジを観ました。

少し前の作品ですが、古いというほどではないと思います。かつてマトリクスも楽しんで観た私向きの映画です。

プロモーション動画でもでていましたが、街のビルが歪んだりする演出は凄いです。発想も表現もすばらしい。こういった描写は荒唐無稽なだけに説得力が必要で、マンガちっくなばかばかしさが出てしまわないようにまとめているところが凄いなと思いました。

ちょっと惜しいのが、悪役のマッツさんをもっといい役回りにして欲しかったなというところ。彼にも悪役なりのドラマがあったようなのですが、そこのところがあまり触れられていなくて悪役に感情移入するタイプには難易度高めの感じです。マトリクスのときはミスタースミスがいい味出していました。ああいう感じではないですね。単純なアクション映画として観る分には、面白いと思うのですが。

オキシメーター dretec OX-101WTDI

前置き

しばらく前のことになりますが、ネット将棋を遊んでいたときに、視界が異常な状態になりました。盤面の駒の一部が、盲点の実験をしたときみたいに見えなくなっていたのです。注目している駒は見えるのですが、そのすぐ右下のマスの駒が見えず、おかしいなと思っていろいろ試してみたところ、視界の右下あたりが見えなくなっていたのです。

不思議なもので、この「見えない」というのはまっくらなわけでも、何も無いわけでも無くて、ちゃんと空きマスになっているように見えるのです。おそらく実際には脳に情報は届いていないのですが、脳のオートコンプリート機能が働いて「だいたいこんなもんでしょ」的な補完をしているのでしょう。

脳がおかしいのか?と不安にかられ自分の右手を視界の右下(4時の方向あたり)で振っても手があるように見えない、という状況で、相当慌てました。病院で相談する頃には回復していて、結局明確な原因はわからず。医師の話では血圧が上がると脳の酸素が充分に供給されないことがあり、酸素不足になった脳が一部おかしくなったかもしれない、ということでした。眼の中も検査しましたが特に異常は見当たらず。

ともあれ、大事には至らずに済んだのですが、それ以来ネット将棋はやりづらくなってしまいました。将棋ウォーズのような時間の短い将棋だとどうしても熱く集中してしまいます。どうしたものかなぁ、ともやもやしているのですが……

探しもの

自分が集中したときにどんな状態になっているのか知る必要があると思って調べたところ、パルスオキシメーターというものがあるのを知りました。指先に装着する小さな機械で、血液の酸素量と心拍数を調べることができます。こんなものです。
f:id:WindVoice:20171017214224j:plain
本体は洗濯ばさみのような形状になっていて、指を挟んで使います。
f:id:WindVoice:20171224170352j:plain
指を挟んだら、表面の小さなボタンを押すと計測が始まります。表示されるまでは7~8秒くらい。
f:id:WindVoice:20171224170526j:plain
95と表示されているのが、ヘモグロビンと酸素が結合している割合です。通常は96から99の間で、90を下回るのは良くない状態ということです。私は素人なので専門家の情報にリンクしておきますが、ともかく、素人でも計測するのは簡単です。

よくわかるパルスオキシメーター 日本呼吸器学会

https://www.jrs.or.jp/uploads/uploads/files/guidelines/pulse-oximeter_general.pdf

実際に酸素飽和度を測ってみる

私の場合、おとなしくしていると97くらいの数値になっています。呼吸を止めると、60秒かからず85~88位の数値に落ち、それ以上は呼吸をがまんできなくなります。確かに酸素が足りないと数値が悪くなるみたいです。指を挟んでいる間はずっと動き続けるので、10分くらい継続して測ってもたいしたことはありません。

この機種は簡易的な物なので測るだけですが、高価なものだとスマホで記録をとることなでどもできるみたいです。

私の場合、ずっと集中して頭を使っていると、92くらいまでは落ちてくることがありました。集中しすぎて呼吸が止まっているのかもしれません。一般には、標高の高い登山をする場合に、高山病の危険を判断できるようこれを装備に入れておく、という話があるようです。確かに邪魔にならない大きさ、軽さなので気軽に持って行けます。

Amazon Dash Button買ってみます

ここに書くようなことが最近少なくて間が空いています。

Amazon IoT Buttonというのがあって、ボタンを押すとAWSのいろいろな機能が呼び出せる…… らしいのですが、あいにく日本には出荷されないということです。早く日本でも使えるようにならないかと待っていたのですが、どうもそんな気運を感じませんね。ユニークな(というより素っ頓狂な)(なんと古い言い回し)使い道を切り開くには日本でも売ってみた方が良いと思うんですけどね。

しかし、どうもAmazon Dashボタンでも、いくつか手を加えるとIoT Button相当の動作がさせられるようで。Amazonさんとしては最初からハックしてみせよという意向なんでしょうかね。

赤いきつねうどん Dash Button

赤いきつねうどん Dash Button

というわけで3個買ってみました。まずは普通のDashボタンとして使ってみて、そのあと遊んでみようと思います。

オデッセイ(MARTIAN:火星の人)

映画をみました。どうして洋画ってタイトル変えるんですかね。日本語にするならわかるけれど、わざわざ横文字のままで…… 原作には、オデッセイという言葉は出てきません。う~ん。

普段あまり映画は見ないのですが、映画館でやっていたころTVCMをたくさんみたので、興味は持っていました。
読書はたくさんするほうなので、先にKindle版の本を読んで、これなら映画も観られそうかなってことで休日の鑑賞となりました。

書籍の方が中身は濃いので、時間のある人にはKindle版をおすすめしたいところです。映画の場合2時間に詰め込む必要があるので、どうしても端折りますよね。しかたないことですが、ストーリーの結構大事な一角が無くなっていたりするので、ちょっと残念だなと思いました。

火星の人

火星の人

ざっくりしたストーリーとしては、火星に独り取り残されることになった主人公マーク・ワトニーがどうやって生き残って地球に帰還するのか、というものなのですが、絶望的な状況でもメゲない主人公の明るさにより、全体的に観やすい内容になっています。独りで観ても、家族で観てもOKかと。

独りで生き残るストーリーなので、難しい人間関係が絡まったりはしません。
私は複雑な人間関係は苦手なのですが、そういう方にもこのお話はオススメです。

はてなブログ、重いですよね……

最近は、少々将棋にはまっています。
ものを作るのはあまりやっていませんが、自分の持っている小さなサーバでCGIを作りましたのでその紹介を。

将棋ウォーズというゲームがありまして、私もここで地道に対局しています。私は現在3級なのですが、将棋は強くなるために対局後の振り返りが重要で、対局相手との対話(感想戦)が大切とされてきました。

ただ、ネット対戦の場合、感想戦はなかなか難しいとおもいます。相手の方と手軽に話せませんしね。将棋ソフトを使用して分析することが多くなるのですが、将棋ウォーズの中で分析するだけでなく、自分で用意した将棋ソフトで解析したい場合もあります。そんな時に棋譜を取り出す必要がありますが、そのためのCGIです。

dododon.jp

こちらのサイトで棋譜をツイートするときのURLをコピー&ペーストしてボタンを押すと、棋譜ファイル(*kif)がダウンロードできます。使い方は簡単ですのでお試しください。私はダウンロード後は激指14に読み込ませて使っています。

Raspberry pi 3のバックアップ再び(rpi-clone)

以前バックアップについては一度書きましたが、以前のエントリでは、microSDカードを抜いてPCでバックアップを取る方法でした。今回はRaspberry piを起動したままで取得することを試みます。
f:id:WindVoice:20170129223222j:plain

準備

今回のバックアップはmicroSDカードに取得します。以前書いた方法はPCにファイルの形でとることができるので、場合によってはこちらのほうが便利かもしれません。SDカードを交換して簡単に環境を入れ替えたい場合は今回の方法がよさそうです。まずは安いSDカードとUSB-microSDカードリーダを入手しました。どっちも安いです。

rpi-cloneのインストール

インストールというほどのことはないですが…… GitHubにソースがあるのでcloneしました。
シェルスクリプトで、作者の方によれば/usr/local/binにコピーする説明となっています。

pi@raspberrypi:~ $ git clone https://github.com/billw2/rpi-clone.git
Cloning into 'rpi-clone'...
remote: Counting objects: 58, done.
remote: Total 58 (delta 0), reused 0 (delta 0), pack-reused 58
Unpacking objects: 100% (58/58), done.
Checking connectivity... done.
pi@raspberrypi:~ $ cd rpi-clone/
pi@raspberrypi:~/rpi-clone $ ls
README.md  rpi-clone
pi@raspberrypi:~/rpi-clone $ sudo cp rpi-clone /usr/local/sbin
pi@raspberrypi:~/rpi-clone $ type rpi-clone
rpi-clone は /usr/local/sbin/rpi-clone です
pi@raspberrypi:~/rpi-clone $

USBメモリとして認識させる

実はここでしばらくうまくいかなくて悩みました。ネットを探しても、みんなすんなり認識しているのですが、なぜか私のmicroSDカードは認識しない…… 結局カードリーダにしっかりカードがささっていなくて認識していなかったようです。このカードリーダ、ちゃんと差し込まれていなくても青いLEDが点灯するので怪しいと思いませんでした。最終的には/dev/sdbとして認識しました。

pi@raspberrypi:/dev $ sudo lsusb
Bus 001 Device 009: ID 0bda:0109 Realtek Semiconductor Corp.★
Bus 001 Device 004: ID 174c:1153 ASMedia Technology Inc.
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
pi@raspberrypi:/dev $ sudo fdisk -l

Disk /dev/ram0: 4 MiB, 4194304 bytes, 8192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes

...

Disk /dev/sdb: 28.8 GiB, 30945574912 bytes, 60440576 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000

Device     Boot Start      End  Sectors  Size Id Type
/dev/sdb1        8192 60440575 60432384 28.8G  c W95 FAT32 (LBA)

pi@raspberrypi:/dev $

rpi-cloneでコピー

コマンドにバックアップ先のmicroSDカードのデバイス名(sdb)を指定します。SDカードは最初FATでフォーマットされているので、そのままではバックアップできません。パーティションから作り直しになるので、--force-initializeオプションを指定しました。あとはひたすら、ひたすら待ちます。忍耐です。なお、バックアップ中はrootファイルシステムの変更があるのは良くないと思われます。コピーしたカードから正常に起動できない可能性がでてくるからです。信頼性の高さが求められるような状況では使わないほうがいいかもね。

pi@raspberrypi:~/rpi-clone $ sudo rpi-clone sdb --force-initialize

Forcing a partition initialization of destination disk sdb
The existing destination disk 'sdb' partitions are:
Disk /dev/sdb: 30946MB
Partition Table: msdos

Number  Start   End      Size     Type     File system  Flags
 1      4.19MB  30946MB  30941MB  primary  fat32        lba

*** All data on destination disk sdb will be overwritten! ***

Do you want to initialize the destination disk /dev/sdb? (yes/no): yes

Imaging the partition structure, copying 1181 megabytes...
1181+0 レコード入力
1181+0 レコード出力
1238368256 バイト (1.2 GB) コピーされました、 140.037 秒、 8.8 MB/秒
Running fsck on /dev/sdb1...
Sizing partition 2 (root partition) to use all SD card space...
mke2fs 1.42.12 (29-Aug-2014)
Found a dos partition table in /dev/sdb2
Creating filesystem with 7268695 4k blocks and 1818624 inodes
Filesystem UUID: 01ad2d41-0ad0-4b22-a402-d4bc93355317
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000

Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done


/dev/sdb is initialized and resized.  Its partitions are:
Disk /dev/sdb: 30946MB
Partition Table: msdos

Number  Start   End      Size     Type     File system  Flags
 1      4.19MB  1173MB   1169MB   primary  fat32        lba
 2      1173MB  30946MB  29773MB  primary  ext4

e2label: Attempt to read block from filesystem resulted in short read while trying to open /dev/mmcblk0p2
Couldn't find valid filesystem superblock.

Your booted /dev/mmcblk0p2 rootfs existing label:
You may enter a label for the destination rootfs /dev/sdb2: bkuppi

======== Clone Summary ========
Clone mode               :  rsync all files to sdb root file system
Clone destination disk   :  sdb
Clone destination rootfs :  /dev/sdb2 (bkuppi) on /mnt/clone
Clone destination bootfs :  /dev/sdb1 on /mnt/clone/boot
Verbose mode             :  off
===============================
Final check, is it Ok to proceed with the clone (yes/no)?: yes
=> Mounting /dev/sdb2 (bkuppi) on /mnt/clone
=> Mounting /dev/sdb1 on /mnt/clone/boot
===============================
Starting the filesystem rsync to sdb
(This may take several minutes)...

*** Done with clone to /dev/sdb ***
    Started: 09:58:10    Finished: 12:13:47

Hit Enter when ready to unmount the /dev/sdb partitions...unmounting /mnt/clone/boot
unmounting /mnt/clone
===============================
pi@raspberrypi:~/rpi-clone $

最後に

コピーには時間がかかります。大きいことはいいことだ、ということで32GBのカードを使っているのですが、コピーに2時間15分かかりました。忍耐です。終わるまでひたすら忍耐です。