スマートロックのようやく、iFTTTで問題無く利用できてきたが
妻の要望、物理キーを使わないようにしたい。
SuicaでSESAME(セサミ)を解錠 【ラズパイ】
https://jp.candyhouse.co/blogs/how-to/suica%E3%81%A7%E3%82%BB%E3%82%B5%E3%83%9F%E3%82%92%E8%A7%A3%E9%8C%A0-with-%E3%83%A9%E3%82%BA%E3%83%91%E3%82%A4
これは、結構素晴らしい。これを、参考に妄想していたが
利用していると、結構遅延が有ることが増えてきた。
というのも、IFTTTアプリバックグランドで稼働してない場合は
15分毎らしく
ドアの施錠に向いてない。
スリープでなければ問題ない。
家の近くで、スマートフォンがスリープで無い事が求められる。
IFTTTのLine ビーコンも想定できるが、やっぱりカードなどで施錠したい。
そこでだ、ラズパイは、稼働には、1A-2.4A程度のACアダプタと非常に高度なモジュールを利用する。
電力もさることながら、設置も苦労する。
ラズペリーパイ、NFCリーダのRC-S380が必須となる。
これだけでも、1万円はくだらない。
その上、スイカが必要となる。
NFCが、sonyだからであるが
敷居が非常に高いため、別な製品を選択した。
とりあえず、探し出して注文した製品がようやく到着した。
基本的には、ピンコンパチなので良いが、ドライバーの相性からCP2102を選択。
CH340 は、面倒だと聞いたので今回は選択しなかった。
ESP8266 NodeMCU CP2102
|
それと、NFC モジュール RC522
カードとキーホルダーが付いたもの
これで、2つは、利用できる。
|
ブレッドボード
組み立てチェックに最適なので
最小で構わない
|
|
ブレッドボード・ジャンパーワイヤー
どこにでも使えるので購入する。
設置について考察しながら後に考えようと思う。
要は、現実可能かどうか程度をチェック
これで完了だ。
合計、1000円ほどだった。
それに、物理キーの増設や、タグシールなどにも応用したくて
これと、
利用できそうな製品を購入。
モジュールが、汎用なので、汎用製品だけ利用できると考えたほうが良い。
まず準備
モジュールに、プログラム送るソフト
Arduino IDE
https://www.arduino.cc/en/Main/Software#
無難な、Windows Installer, for Windows XP and upを導入。
このソフトは、無料だが、寄付はウェルカムなので協力しましょう。
ダウンロード後、インストール。
次に、モジュールとボードと書き込みドライバーが登録されてい無いのでそれぞれ導入する。
ライブラリマネージャで、mfrc522をフィルタするとインストールが出るのでインストール
ボードは、ツールー環境設定に
http://arduino.esp8266.com/stable/package_esp8266com_index.json
を入れる。
書き込みドライバーも入れておく。
http://digistump.com/package_digistump_index.json
次に、ツール-ボードマネージャでNodeMCU 1.0を選択。
これで準備完了。
後は、配線だ。
後は、スケッチ(ソース)に以下を入力
——————————————————————————-
#include <SPI.h>
#include <MFRC522.h>
#define RST_PIN 3 // Configurable, see typical pin layout above
#define SS_PIN 4 // Configurable, see typical pin layout above
MFRC522 mfrc522(SS_PIN, RST_PIN); // Create MFRC522 instance
void setup() {
Serial.begin(9600); // Initialize serial communications with the PC
while (!Serial); // Do nothing if no serial port is opened (added for Arduinos based on ATMEGA32U4)
SPI.begin(); // Init SPI bus
mfrc522.PCD_Init(); // Init MFRC522
delay(4); // Optional delay. Some board do need more time after init to be ready, see Readme
mfrc522.PCD_DumpVersionToSerial(); // Show details of PCD – MFRC522 Card Reader details
Serial.println(F(“Scan PICC to see UID, SAK, type, and data blocks…”));
}
void loop() {
// Reset the loop if no new card present on the sensor/reader. This saves the entire process when idle.
if ( ! mfrc522.PICC_IsNewCardPresent()) {
return;
}
// Select one of the cards
if ( ! mfrc522.PICC_ReadCardSerial()) {
return;
}
// Dump debug info about the card; PICC_HaltA() is automatically called
mfrc522.PICC_DumpToSerial(&(mfrc522.uid));
}
次に、検証、コンパイルしてから、次に書き込み。
こんな感じで接続して、書き込む。
正常に書き込まれればエラーが発生しない。
ツールのシリアルプモニターを見ながら、タグを当てると表示されるので成功だ、
open TAGも、読み取れるも確認できた。
ようやく完成までこぎつけた。
あとは、webサービスだけ