家用アプリを作ってみるよ♪

  • 14
    いいね
  • 0
    コメント

いきなりですが、ごめんなさい…

誤って最初の方しか書かれていない下書きが、自動投稿されてしまいましたorz
数名ですがご覧になった方、大変申し訳ありませんでした…
あと、諸々あって内容を変えさせていただきます(´・ω・`)
そのため、投稿も遅れてしまってすみませんです。。。

このネタはAndroidあんま関係ないです(>_<)

内容を変えるにあたり、さて何にしようと考えました。
でも、そこまでネタがない人…
かと言ってここで放置とかしたくない!
なので、Androidで作った何かを紹介しようと思いました。
RxJavaとか真面目にやっておけばよかった…orz

やっと前置き…

さて、皆さんは シャア専用 自分専用アプリは作られていますか?
私は下らないネタ(下ネタではない)アプリや、実用的なもの、テストアプリなど色々作ってます♪
全て非公開です( `・ω・´) ← ドヤるな!
今回紹介させていただくのは、その中でも周りに評判のIoTアプリです(^^)
何かの参考になれば幸いです♪

IoTというと?

自宅でIoTというと、どんなことを思い浮かべるでしょうか?

  • Lチカ
  • 監視カメラ
  • 赤外線送信

この辺りが多いですかね(・∀・)
私もまさにこのあたりをやっています。
Raspberry PiとAndroidアプリと連携して、いつでも簡単に家の家電を操作します!

アプリ側

アプリの起動画面がこちら。
起動画面
ボタンでいっぱいです(笑)
順に紹介させて頂きます。

メニューバーの世界地図ボタン

こちらは家の温度と湿度の結果を取得します。
Androidに温度アイコンがなかったので、何となくこれにしました(^ω^;)
表示するとこんな感じ。
温度画面
1時間おきに取得したデータをCanvasJSを使ったWebViewに表示させています。
本当はHoloGraphLibraryを使おうと思ったのですが、どうやってもKotlinで動いてくれない…
いや、Kotlinは悪くない!
試行錯誤しましたが、結局WebViewが簡単だったので、それに落ち着いちゃいました(笑)

ちなみにデータを取得しているのはこちら。
温度画面
DHT22です。
最初はDHT11を使っていたのですが、いかんせん精度がよろしくない…
なのでこちらに変えて、毎時MySQLに保存しています。
ちなみに、データの取得にはAdafruit_Python_DHTを少し変えて使わせて頂きました!

メニューバーカメラボタン

こちらはMotionのストリーミングデータを(また)WebViewを使って表示します。
起動するとこんな感じ。
カメラ画面
恥ずかしいので、あんまりお見せできません(>_<)
常時起動していると帰宅した後に録画されてしまうので、CONNECTIVITY_CHANGEを使って自宅のWi-Fiに繋がったらMotionを止めるようにしています。
こういうことができるのは、モバイルならではかもしれませんね(・∀・)

リロードボタン

稀になんですが、家のWi-Fiへの接続が失敗します。。。
「認証に問題があります。」って出るんですが、認証情報を削除して、同じ情報を入れると接続できます。
最初は「端末のせいかな?」と思っていたのですが、端末が変わっても起こるので、多分ルーターのせいでしょうね(^ω^;)
でも特にそれ以外に不具合はないし、Androidでだけ起こる事象なので、再接続してくれる機能を付けました!
WifiConfigurationを使ってゴリゴリ生情報を記入します。。。
この機能を作ってて思ったのですが、会社の野良アプリでパスを教えずWi-Fiに繋げられるアプリとかあっても良さそうですよね(^w^)

冷房〜停止までのボタン

フツーにhttpを介して赤外線でエアコンを操作します。
本当に夏場とかこの寒い時期は、この機能が助かるんですよ♪
「あと30分で家に着くから、暖房を入れておこう」とかできます。
暖かい部屋が迎えてくれるのは嬉しいですよ(^w^)
この機能を作るのにはラズベリーパイ研究室さんの赤外線リモコン信号受信・送信を参考にさせて頂きました!
当初はlircでやろうと思ったのですが、Raspberry Pi 3から仕様が変わったのが、私も動きませんでした。。。
本当に上記サイトには感謝です!
ただ、今現在のこの機能は温度が固定なんです(´・ω・`)
エアコンの赤外線の仕様を全然理解してなくて、ここは温度や風量も選択できるように改修予定です。。。

ON/OFFタイマー

毎朝エアコンが自動で点く、祝日や休日は起動しない、出かける時間頃に勝手に消える…
こんな夢(?)の機能、付け足したくないですか?
私には夢のような機能だったので、エアコン制御と合わせて作りました!

起動画面がこちら。
タイマー画面
OFFも同じ画面です。
毎晩寝る前に設定しなくても、これで起床時には暖かいお部屋になっています♪

照明設定

ミラーボールというかプラネタリウムというか、何となく家の雰囲気を変えてくれるイルミネーションの制御はLチカの応用でできました!
下の「自動消灯時間の設定」で、このイルミネーションも制御しています。

玄関ライトをつける

夜帰ると、基本的には家は暗いですよね?
自宅ですから、いつも通りの物の配置なら玄関の照明も手探りで付けられますが、ちょっと荷物があったりしてるのを忘れてると、躓いて「うぉっ(>_<)」ってなります。。。
そうならないために、またまたLチカの応用で玄関前に照明を置き、ポチっとするとピカってしてくれる機能を入れました!
電気を消しちゃった後のお手洗いも、これがあるととても楽なんです(^^)

ということで…

何か作ったアプリの自慢的な話になってしまいました…
しかもAndroid全然出てきてませんね(T_T)
でも、今モバイルでIoTはいい勢いで広がってますし、少し調べればこのような連携アプリも簡単に作ることができます。
Androidは個人用なら野良で全然OKですからね!
「何か作ろうかな?」「IoTやってみようかな?」と思われた方の参考になれば本当に嬉しいです<(_ _)>