11
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

スマートロックを自作したので難所をまとめる

Last updated at Posted at 2021-01-12

IoT開発初心者がスマートロックを作ってみました。詰まった箇所をまとめます。

作製したもの

スマートロックを作製しました。開錠・施錠の方法は2つあります。

  • あるエンドポイントにリクエストを送った後、ドアノブを一回ガチャっと回す
  • 指定のリズムでドアノブをガチャガチャする

IMG_1793 (online-video-cutter.com).gif

内側はこのようになっています。ブレッドボードやジャンパワイヤを使ったままですが、この方が新しい機能をつけやすいのでこのままにします。
IMG_1794.jpg

構成

エンドポイントを利用した開錠・施錠を実現するため、以下のような構成を作りました。

Untitled Diagram.png

使用した技術

バックエンドはサーバーレスにしています。私しか利用しないので、サーバーを借りるとコストがかさむからです。デプロイにServerless Frameworkを利用しました。

WiFiを利用したかったのでESP32-WROOM-32を選択しました。初めて利用したのですが開発は非常に楽でした。Arduino IDEで開発可能です。

難所

今回の開発で難しかった点を書いていきます。

消費電力を抑えながら可用性を確保する必要があった

今回はバッテリーから給電することにしました。頻繁に電池切れを起こすとスマートロックとして大変不便ですし、最悪家から締め出されてしまう原因にもなります。そのため消費電力をできる限り抑える必要がありました。

対策として、ESP32-WROOM-32の選定により解決を目指しました。ESP32-WROOM-32にはDeepSleepという機能があり、スリープ状態での消費電流を10uA~150uAに抑えることが出来ます。

しかしながら、実際に運用してみると1週間程度でバッテリーがきれてしまいます。そのため商用のスマートロックと同等の製品にすることはできませんでした。

モバイルバッテリーが自動停止してしまう

モバイルバッテリーはもともと携帯などを充電するために作られており、過充電を防いだり無駄な電力を消費しないように自動停止する機能がついているみたいです。家電量販店で売られているものには基本的にこの機能がついています

この問題はこのモバイルバッテリーを利用するすることで解決しました。
cheero Canvas 3200mAh IoT機器対応 モバイルバッテリー ホワイト CHE-061

スマートロックを設置する方法に戸惑った

当然、サーボモータをカギに取り付けると以下のようにサーボモータの方が回ってしまいます。
IMG_1776.gif

これをしっかりと固定するために、L字の金具などを使いました。しかし自分にこのような金具を使う経験が乏しく見栄えは悪くなってしまいました。
IMG_1797.jpg

DynamoDBをboto3で操作するのが大変

本筋ではないのですが、Pythonのboto3のAPIを使ってDynamoDBにリクエストを送るのが大変でした。APIの仕様が複雑で、私には理解するのに非常に時間がかかりました。

途中でPynamoDBを利用することにしました。開発が非常に楽になりました。

開発の感想

ドアノブをガチャガチャするだけで開錠できるので、生活は非常に楽になりました。

また友達が一時的に自分の部屋を出入りする場合、物理的な鍵を共有せずに開錠・施錠ができるため、今後も便利なシチュエーションがありそうです。

ESP32-WROOM-32開発ボードを利用した開発は非常にスムーズでした。お金が少し高くても、開発の速度や快適さを求めるなら開発ボードを買うべきだと実感しました。以前はお金をケチってPICを使ったり、ESP-WROOM-02 DIP化キットを使ったりしていました。

スマートロックをドアに取り付けるのに苦労しました。ネット上の先人はよく3Dプリンタを使ってこの問題に取り組んでいるので、私も3Dプリンタを購入しました。次の開発から使ってみたいと思います。

11
4
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?