フナブロ

見習いエンジニアの成長日記

技術書典7で「AWS IoTでつくるお手軽スマートホーム」を出します(す25D)

9月22日に開催される技術書典7で「AWS IoTでつくるお手軽スマートホーム」を出します。

techbookfest.org

techbookfest.org

表紙 f:id:t-funaki:20190822115623p:plain

目次 f:id:t-funaki:20190822115728j:plain

f:id:t-funaki:20190822115739j:plain

一言でまとめるとどんな本?

AWS IoTを用いたお手軽なスマートホームシステムの作り方についての本です。 前半ではRaspberry Piと環境センサWxBeacon2を用いてAWSクラウド上にデータを送って活用する方法について解説しています。 後半ではサーボモータを使ってSlackアプリからおうちの鍵を開け締めできるようにします。

概要

スマートホーム、スマートスピー カーと最近はスマート〇〇が流行っていますね。スマートホームといえば、エアコンなど の家電を外出先から操作したり、家の鍵を持たなくてもスマホでドアを開けられるなどの イメージが強いと思います。これらのプロダクトはすでに製品化されており、比較的気軽 に導入できるようになってきました。しかし、エンジニアとしてこれらの(値段が高い) プロダクトを買わなくとも、自分で作ってしまえばよいのでは・・・というのが本書の発 想のきっかけです。以前からRaspberry Pi を使ってスマートホームもどきなことはやっ ていましたが、技術書典7 の開催にともない、ひとつの本としてまとめられたらと思い、 作り上げました。本書では、気軽に手に入れることができる環境センサから温度、湿度、 気圧などを取得して、AWS IoT を通じてクラウド上にデータをストックし、活用する方 法について解説しています。具体的には、簡易的なAPI を作ったり、おうちの環境変化 をグラフ化して可視化してみたり、Slack アプリを作ってどこでもおうちの状況を把握で きるようにします。後半の章では、サーボモータを活用してスマートロックシステムを構 築し、Slack アプリを利用してお家の鍵を開け締めできるようにします。複雑なことはで きるだけせず、シンプルなシステムになるようにしました。このシステムをどう活用して いくかは読んでいるあなた次第です。できるだけ図を多く取り入れ、わかりやすくなるよ うに工夫しました。

この本の対象者

  • IoT に興味はあるけど、敷居が高いと感じている
  • AWSクラウド)サービスを使ってみたい
  • スマートホームシステムを構築する足がかりにしたい

完成すると

f:id:t-funaki:20190822115814p:plain

こんな感じのSlackアプリがAWSを利用して作れます。おうちの状態をどこでも確認、スマホでおうちの鍵を開け締めできるようになります。

どこで売ってるの

f:id:t-funaki:20190822115925p:plain

2Fのす25Dでお待ちしております。サークル名は「ツバメの巣」です。 B5版で80ページ前後、1,000円(紙版+電子版のセット)を予定しています。 各種QRコード決済(技術書典かんたん後払い、PayPay、Kyash、Pixiv Pay)でのお支払いにも対応しています。

当日は実物展示、デモンストレーションも予定しています(ネット環境によりますが・・・)

当日はサンシャインで僕と握手!

木曽駒ヶ岳に登った

山の日だったので木曽駒ヶ岳に登った。

f:id:t-funaki:20190817101155j:plain

8月10日

新宿→駒ヶ根BT→しらび平→千畳敷→宝剣山荘

お盆初日とあって中央道はそこそこ渋滞しており、一時間遅れで到着。 駅前の割烹食堂 水車 でソースカツ丼をいただく

tabelog.com

f:id:t-funaki:20190817102029p:plain

ロープウェイはスムーズに乗車でき、千畳敷へ。

f:id:t-funaki:20190817102118j:plain

f:id:t-funaki:20190817102301p:plain

一時間ほどの道のりを経て本日の宿、宝剣山荘へ。 夕飯は割とボリュームがあった。ライスおかわり自由で助かった。

f:id:t-funaki:20190817102327p:plain

8月11日

宝剣山荘→木曽駒ヶ岳→馬の背→濃ヶ池→駒飼ノ池→宝剣山荘→千畳敷→新宿

朝4時過ぎに起床。 日の出を眺める。

f:id:t-funaki:20190817102522j:plain

f:id:t-funaki:20190817102604p:plain

別の部屋ですが、こんな感じの部屋でした。自分たちの部屋は窓がなくてムシムシしていた。

f:id:t-funaki:20190817102717p:plain

さくっと中岳へ。

木曽駒ヶ岳頂上 - Spherical Image - RICOH THETA

小一時間ほどで木曽駒ヶ岳山頂へ到着。リコーのTHETA SCを2週間前に買っていたので使ってみた。 他の登山者も使っていたので登山でTHETAはメジャーっぽい

f:id:t-funaki:20190817103238j:plain

ここで折り返して千畳敷へ戻るルートがメジャーですが、時間もたっぷりあったので濃ヶ池周りのルートへ。 人が少なくて尾根沿いなので景色もよくよかった

f:id:t-funaki:20190817103354p:plain

f:id:t-funaki:20190817103437p:plain

宝剣山荘に戻る頃にはガスってしまった。

f:id:t-funaki:20190817104240p:plain

帰りのロープウェイがまさかの2時間待ち。帰りに温泉行こうと思ったのに時間が無くなってしまった・・・

www.komakusanoyu.com

駒ヶ根駅に到着してバスまでの時間、再びソースカツ丼

tabelog.com

f:id:t-funaki:20190817104429p:plain

帰りも大渋滞で一時間遅れで新宿へ到着。

あと20分遅れていたら終電逃すところだった・・・

Alexa Developer スキルアワード2019 ハッカソン東京 Vol.2 参加記録

6月22日、23日の土日に開催された、Alexa Developer スキルアワード2019 ハッカソン東京 Vol.2に参加してきました。

amazonalexadeveloper2019vol2.splashthat.com

ハッカソンだったので、参加するまで不安しかなかったんですがとても楽しめました。

f:id:t-funaki:20190624111519p:plain
AWS LOFT TOKYO
f:id:t-funaki:20190624111623p:plain
AWS LOFT TOKYO

場所は目黒のAmazonオフィス内にあるAWS LOFT TOKYOでした。おしゃれなオフィス・・・!

ハッカソンの流れ

Alexaの機能紹介→アイスブレイク(同卓の人と自己紹介)→アイデア出し→アイデアを一枚にまとめ、紹介し合う→気の合う人とチームを組んで、ひたすら開発→発表

f:id:t-funaki:20190624112121p:plain
イデア出し

私の考えたアイデアに共感してくれる方がいたので、2人でチームを組みました。 スキルは個々で作るけど、協力し合う「ぼっちソンズ」チームがいて笑いましたw

何を作ったか

Alexaの特徴(音でユーザとコミュニケーションを取る)を活かしたいなと思い、「サウンドスケープクイズ」というスキルを作りました。

f:id:t-funaki:20190624112559p:plain
時間なかったのでいらすとやを使う

サウンドスケープというのは「音」(サウンド)と「風景」(ランドスケープ)をあわせた単語で、

Wikipediaには、

「サウンドスケープ」とは、ランドスケープのランドを「サウンド」に置き換えた言葉で、音の風景という意味である。シェーファーの著書が翻訳されたとき「音風景」と訳された。近代では、音を環境から切り離し、あまりにも客観的に取り扱ってきたため、もう一度音を風景の観念でとらえ、その上で音を巡っての関係性に注目し、日常生活や環境の中で音を風景としてどのようにかかわっているのかを考えるために、「サウンドスケープ」という概念が提唱された。

と定義されています。地域ごとに特徴のある音があるわけで、例えば、お祭りの音、駅構内の雑踏の音などがあります。

www.yamakawa.co.jp

教育向けにまとめたものもあったりする(めっちゃ高い)

こういう音を聞いて、クイズ形式でどこの地域の音か答えるスキルです。その音についての解説も加えたので、地域についても詳しくなれる、子供から大人まで使えるのを想定しました。

f:id:t-funaki:20190624113510p:plain
成果物

使った技術

Alexa Skills Kit SDK v2 for Node.js をベースに作りました。 最初はPython使おうとしたのですが(過去にスキル作ったときにPython使っていたので)、Alexa-hosted(スキルと一緒にLambdaの環境も作ってくれ、デプロイ、コーディングもブラウザ上で完結できる。超便利)を使うと、Node.jsしか使えないのでこちらで開発しました。

結果的には、Alexaの技術ドキュメントの量が圧倒的にNode.jsのほうが多かったので正解でした。 npmのパッケージングもデプロイボタン押すだけで全部やってくれるので爆速で開発できました。

ディスプレイ付きデバイスにも比較的簡単に対応できたので質問項目を出してみました。

クイズのデータを登録、提供するのには、チームのもう一人のメンバーが既に作っていた「クイズ出題API」を使いました。 クイズの質問、答えの登録がブラウザででき、JSONで値を引っ張ってこれるので、超便利でした。

基本的にはスキルの開発を私が、クイズの登録(音も探す)、プレゼンの作成、発表を相方の人が担当しました。

f:id:t-funaki:20190624115031p:plain

結果発表

f:id:t-funaki:20190624115132p:plain
いっぱいフィードバックもらった

プレゼン後はみなさんのスキルを見て回る時間がありました。

f:id:t-funaki:20190624115341p:plain
スキル見て回る

ディスプレイ付き端末をフル活用したキッズ向けスキルや、センサーを使ったIoTスキルなど、独創性豊かなものが多く、面白かったです。 育成ゲームが多かった気がする(笑)

残念ながら入賞とはなりませんでしたが、多数のフィードバックを頂き、面白いと言ってくれる方が多数いたので良かったです。

まとめ

土日2日間ととても短い時間でしたが、ある程度動作するスキルを作り上げることができました。 技術サポートもあって至れり尽くせりなハッカソンでした。

今後はスキル公開して、スキルアワードに応募できたらいいなぁとは思います。クイズの音をどうするかっていう問題はありますが・・・・

あとご飯美味しかった(小並

f:id:t-funaki:20190624120117p:plain
懇親会

小笠原旅行記 4日目(山編)

t-funaki.hatenablog.com

昨日の海に引き続き、今日は山(ハートロックを目指すコース)へ。

山に入るのにもガイドが必要なので、ボニンブルーシマさんに予約を入れていた。

f:id:t-funaki:20190331144019p:plain
山への入り口

千尋岩(ハートロック)方面への山の入り口では、靴裏の掃除を行った。木酢液をかけると虫も死ぬらしい。

f:id:t-funaki:20190331144322p:plain
ヤハズカズラ

森に入ってしばらくはヤハズカズラの花がたくさん咲いていた。

f:id:t-funaki:20190331144753p:plain
常世ノ滝

小笠原唯一の滝。ここ数年の雨不足で枯れてることがほとんどらしいけど、昨日の雨で復活していた。ラッキー?

f:id:t-funaki:20190331145024p:plain
防空壕

ところどころに戦時中の防空壕が残っている

f:id:t-funaki:20190331145133p:plain

本来の小笠原はこういった木が多いらしいけど、今や人間が持ち込んだ植物(松とか)のほうが多い

f:id:t-funaki:20190331145331p:plain
軍用道路

結構山奥来ても、このように軍用道路の跡が残る

f:id:t-funaki:20190331145448p:plain
戦時中の瓶

ガラスとかせとものは腐らないから70年以上前のものでも自然界でほぼそのまま残っている ちなみに下のプラボックスには、緊急時の備品(水、担架など)が入っていて、コース中2箇所ほど設置されている。

f:id:t-funaki:20190331145617p:plain
視界がひらけた

しばらく進むと視界がひらけた場所に。ボニンブルー!

f:id:t-funaki:20190331145745p:plain
ハートロックの麓

ハートロックの麓まで来た。

f:id:t-funaki:20190331150009p:plain
ハートロックのてっぺん

昨日いた南島を見下ろす

f:id:t-funaki:20190331150108p:plain
ハートロック

自然保護のため、ハートロック上で歩いていい範囲は小石で区切られている。

ここでお昼ご飯タイム。宿の前のビーチコマのミニショップで朝買っていたおにぎり弁当。

f:id:t-funaki:20190331150356p:plain
ニッサンのエンジン

f:id:t-funaki:20190331150707p:plain
トヨタ
帰りは少し別のルートで。こちらのほうが戦時中の遺構が多く、ニッサンのエンジンや、トヨタ車が放置されてた。

f:id:t-funaki:20190331150546p:plain

f:id:t-funaki:20190331150621p:plain

f:id:t-funaki:20190331150646p:plain

ガジュマルの木が生い茂る場所へ。昔は人間が生活していた場所らしい。 この木、非常に丈夫で大人が数人乗っても大丈夫である。

f:id:t-funaki:20190331150906p:plain
マルハチ

f:id:t-funaki:20190331150955p:plain
ヤギ

ヤギがいた。こいつも外来種

きついコースと言われていたので身構えてきたけど、そこまでアップダウンあるわけではなく、整備も定期的にされているようであるきやすかった。

真夏だとしんどいだろうけど。。。

ようやく晴れて、長袖シャツ一枚でちょうどいい気候の中トレッキングができた。

5日目(町中散策、帰宅編)に続く

小笠原旅行記 3日目 海編

f:id:t-funaki:20190321150124p:plain

t-funaki.hatenablog.com

2日目からの続き

雨模様の中、船に乗って一日海ツアーに参加した。 おがまるパックのオプションプランで小笠原観光さんのツアーです。 南島に向かう途中、ハシナガイルカの群れを見ることができた。 この日イルカを見れたのがこれだけだったので写真撮れなかったのが残念・・・

f:id:t-funaki:20190321150525p:plain
南島上陸

波が高く、南島上陸が危ぶまれたが、船長の技術力で着岸し、上陸できた。 船着き場の入り口が狭い岩場になっていて、波があると通過できないらしい。

f:id:t-funaki:20190321150745p:plain
ハートロック

f:id:t-funaki:20190321150958p:plain
荒れてる南島

普段だと泳げるくらい穏やからしいけど、この日は激しく荒れてた

f:id:t-funaki:20190321151122p:plain
ヒロベソカタマイマイ

数千年前に絶滅してそのままの状態で残っている化石。元々色は茶色だったらしい。

f:id:t-funaki:20190321151533p:plain
ハートロックを間近に

f:id:t-funaki:20190321151622p:plain
トーチカ

太平洋戦争時は硫黄島などとともに重要拠点となっていた父島。戦時中の遺構も残っている。

f:id:t-funaki:20190321151848p:plain
クルーザー

波の落ち着いた入り江でお昼ご飯。 船には水、コーヒー味噌汁など温かい飲み物、シャワー、トイレと一日過ごすのに困らない設備があった。

f:id:t-funaki:20190321152112p:plain
地層

お昼ご飯後は、クジラを探しに船を走らせる。

f:id:t-funaki:20190321152227p:plain
クジラ

f:id:t-funaki:20190321152311p:plain
クジラ

ブリーチングも何回か見れたけど写真に収めるのは難しい

ちなみに小笠原でクジラが見れるのはこの季節だけなんだとか。夏に来たらドルフィンスイムをぜひやりたい

クジラ探しのあとは兄島海中公園へ。

f:id:t-funaki:20190321152608p:plain
海の中

シュノーケリング。ウェットスーツなどは無料で貸してくれた

f:id:t-funaki:20190321152715p:plain f:id:t-funaki:20190321152745p:plain f:id:t-funaki:20190321152822p:plain

オリンパスの防水カメラTG-5で撮影。水族館!?ってなるくらい魚いてきれいだった。 ちなみに泳ぐの10年ぶりくらいだったけど、意外と泳げて体が泳ぎ方覚えているもんだなぁと(一応救命胴衣つけといたけど)

海から出たら天気悪いのもあって南の島とは言え寒さで死にかけた(´・ω・`)

その後はイルカとクジラを探しつつ、二見港へ戻った。

f:id:t-funaki:20190321153226p:plain
宿の晩ごはん

離島だとお肉は貴重。お店行っても結構お値段高めだった。 魚はそこらへんで釣り竿入れれば釣れる()

4日目(山編)へ続く

小笠原旅行記 4日目(山編) - フナブロ

小笠原旅行記 2日目 父島到着編

f:id:t-funaki:20190318143746p:plain
ははじま丸

小笠原旅行記 1日目 東京出発編の続き.

朝起きたらめっちゃ船揺れてて立ったらめっちゃ吐き気した.完全に船酔いである. 1時間半到着が遅延するそうで,午前中はほとんど寝ていた.

f:id:t-funaki:20190318144022p:plain
父島到着
なんとか到着.雨は到着まで降っていたが着いた瞬間止んだ.

宿の人と合流し,宿が扇浦地区というところで町から離れていたため,荷物だけ先に持っていってもらうことに.

とりあえず船酔いも収まったのでお昼ご飯へ

f:id:t-funaki:20190318143621p:plain
島魚のポキ丼

tabelog.com

テキトーに歩いて見つけたお店へ.ポキ丼ってなんだと思ったけどハワイ風海鮮丼のことらしい.美味しかった.

f:id:t-funaki:20190318144427p:plain
ビーチ

f:id:t-funaki:20190318144519p:plain
サンゴ礁

ビーチがすぐ近くにあり,浜はサンゴ礁で埋め尽くされていた.

午後はおがまるパックのオプションで申し込んでいた島内バス観光へ

f:id:t-funaki:20190318144658p:plain
ウェザーステーション展望台

f:id:t-funaki:20190318144740p:plain
タコノキ

f:id:t-funaki:20190318144820p:plain
宮之浜

この日は3月11日.東日本大震災からちょうど8年がたった.海岸で黙祷を捧げた.

f:id:t-funaki:20190318145046p:plain
テリハハマボウ

f:id:t-funaki:20190318145135p:plain
戦争遺跡

ところどころ,太平洋戦争時の遺跡が残る.この遺跡は展望台のすぐそばで落書きがひどかった.

f:id:t-funaki:20190318145258p:plain
小笠原亜熱帯農業センター

f:id:t-funaki:20190318145401p:plain
ゲストハウス ロックウェルズ

3泊お世話になる宿.ゲストハウス ロックウェルズさんへ

f:id:t-funaki:20190318145507p:plain
お部屋はオーシャンビュー

同時に宿泊した人は男4人で,1人は工事の仕事で4月まで小笠原に滞在する予定とか その人が宿の前の海岸で釣ったイカを宿の人が調理した刺身を頂いた.新鮮で美味しかった.

部屋の照明が暗く,すぐ眠くなったので22時過ぎに就寝zzz

3日目(海のアクティビティ編)に続く

t-funaki.hatenablog.com

小笠原旅行記 1日目 東京出発編

久々の更新になってしまいました・・・

f:id:t-funaki:20190317143414j:plain

3月10日から15日まで小笠原諸島の父島に一人旅に行ってきました。 せっかくなのでその顛末を一日ずつ記事にしていこうかなと。

これは1日目(2019年3月10日)の旅行記です。

f:id:t-funaki:20190317144408j:plain

朝11時発のおがさわら丸に乗るため竹芝桟橋へ。最寄りは浜松町駅です。

f:id:t-funaki:20190317144623j:plain
おがさわら丸乗船

24時間の船旅が始まります。

f:id:t-funaki:20190317144917j:plain
レインボーブリッジ・お台場
f:id:t-funaki:20190317145101j:plain
風の塔

船の中の自分のスペースはこんな感じ。おがまるパックで申し込んでいたので標準で2等寝台でした。 これより下だと雑魚寝の2等和室、最上級だと特等室とかありますが+4万以上します・・・ 高級旅館泊まれるやんけ

f:id:t-funaki:20190317145233j:plain
2等寝台

夜まではそれほど揺れてなかったので、余裕だなと思いながらこの中で本読んだり動画見たりしていました。テレ東のBODにお試し加入したのでガイアの夜明けの金融革命の回見てフィンテックすげーとか言ってました。

昼はコンビニで買ってましたが、夕飯は船内レストランを使ってみました。オムライス950円。ちょい割高ですが船の中で出来たてご飯が食べられるのはありがたいです。 島塩ステーキ1500円とかもありました。流石に手が出なかったので帰りに島塩買って家で作ります笑

f:id:t-funaki:20190317145917j:plain
夕飯のオムライス

船内にはカップ麺(定価)も売っているので安く済ませるならオススメ。ニチレイの冷凍食品(おにぎりとかハンバーガー)の自販機もありましたが往復動いていませんでした。 ちなみに船内はレストラン、売店Suicaが使える(チャージはできない)ので財布は貴重品ロッカーに預けてキャッシュレス生活ができます。

夜になるとだいぶ揺れが激しくなってきて、デッキも早めに閉鎖されました。最強の酔い止めアネロンニスキャップを飲んでいましたが、起きてても気分悪くなるので消灯時間22時すぎにさっさと寝ました・・・・

2日目(父島到着編)に続く