工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

RFIDとリレーでPCをセキュアに:Arduinoドアロック応用

必要な部品と材料

部品数量備考
Arduino UNO1
RFIDモジュール(MFRC522)1
リレーモジュール(5V 1ch)1
ジャンパーワイヤー(オス/メス)12RFID 7本、リレー-Arduino 3本、リレー-マザーボード 2本

プロジェクト概要

PCのパスワードに加えて、物理的なセキュリティ機能を追加するプロジェクトです。YouTubeで見つけたRFIDドアロックのコードを流用し、PCの電源ボタン制御に応用しました。

まずMFRC522ライブラリのサンプル(DumpInfo)でカード/キーフォブのUIDを取得し、スケッチに登録します。登録済みUIDをかざすとリレーが作動し、マザーボードの電源スイッチ端子をショートさせてPCを起動。別のUID(キーフォブ等)を登録しておけば、長押し(5秒)で強制シャットダウンも可能です。

リレーのON時間は500ms(起動用)と5000ms(シャットダウン用)で、一般的なプッシュスイッチに対応しています。

SNS: Facebook @HeathenHacks | Twitter @HeathenHacks | Instagram @HeathenHacks

ソースコード

#include <SPI.h>
#include <MFRC522.h>

#define RST_PIN 9
#define SS_PIN 10
MFRC522 mfrc522(SS_PIN, RST_PIN);

String read_rfid;
String ok_rfid_1 = "e199312d";  // メインカード:PC起動用
String ok_rfid_2 = "fbecb673";  // キーフォブ:強制シャットダウン用
int lockPin = 7;

void setup() {
  Serial.begin(9600);
  while (!Serial);
  SPI.begin();
  mfrc522.PCD_Init();
  pinMode(lockPin, OUTPUT);
}

void dump_byte_array(byte *buffer, byte bufferSize) {
  read_rfid = "";
  for (byte i = 0; i < bufferSize; i++) {
    read_rfid += String(buffer[i], HEX);
  }
}

void pulseRelay(int duration) {
  digitalWrite(lockPin, HIGH);
  delay(duration);
  digitalWrite(lockPin, LOW);
}

void loop() {
  if (!mfrc522.PICC_IsNewCardPresent()) return;
  if (!mfrc522.PICC_ReadCardSerial()) return;

  dump_byte_array(mfrc522.uid.uidByte, mfrc522.uid.size);
  Serial.println(read_rfid);

  if (read_rfid == ok_rfid_1) {
    pulseRelay(500);  // PC起動
  }
  if (read_rfid == ok_rfid_2) {
    pulseRelay(5000); // 強制シャットダウン
  }
  // 必要に応じてUIDを追加登録可能
}

使用ライブラリ:MFRC522 Library

回路図

配線図(色分けして判りやすく作成)
RFIDとリレーでPCをセキュアに:Arduinoドアロック応用

製造プロセス

  1. 銀行金庫の中身:歴史、設計、セキュリティの未来
  2. 回転ドア:設計、歴史、省エネ効果
  3. 運河と閘門:米国水上輸送のエンジニアリング、歴史、そして未来
  4. 現代ピンタンブラー錠の進化と製造
  5. バーコードスキャナ:技術、設計、将来動向
  6. ダイヤル式南京錠:設計、製造、歴史的進化
  7. スマートフォンのBluetooth近接検知でスマートオートロックドアを構築
  8. ArduinoとESP8266で作るWi-Fi対応スマートドアロック — スマホで解錠
  9. XORゲートとNORゲートによる4ビットコンビネーションロックの設計
  10. ジャンブスイッチ理解:機能、用途、交換方法
  11. Tcl駆動テストベンチでVHDLコード・ロック・モジュールを検証する