Wirenボード上のアクセス制御システム





みなさんこんにちは!



私たちはすでに、Wi-Fi、GPRS、GPS、NFC、およびLinuxを実行するイーサネットを備えたコンパクトな産業用コンピューターであるWiren Boardの機能について書きました。 それに基づいて、必要なモジュールを使用して既製のデバイスをすばやく作成できます。

その機能を示すために、完成したデバイスを作成することにしました。 今日の記事は、Wiren Boardのアクセス制御システムについてです。





デバイスのアイデア



私たちの母校のホステル-MIPT-公共インフラ施設-ランドリーとスポーツルームがあります。 長年、それらへのアクセスは、ジャーナルのエントリで警備員からキーを取得することによって実行されていました。



もちろん、これは非常に不便です。 良い解決策は、カードスループットシステムを作成することです。



少し前に、私たちの研究所の学生がホステルにアクセスシステムを作ることを決めたことを知りました。そのため、ランドリールームとスポーツルームへのアクセスは、個人カードでのみ可能になりました。



私たちは母国の研究所を支援することにしました。



カードをすべての生徒に配布して登録する代わりに、生徒の既存のソーシャルカードを使用することにしました。 彼らはすでに所有者の名前とその他の情報( カードの調査に関する記事 )を持っているので、ドアのコントローラーは事前登録を必要とせずにホステルの住人のリストでカードの名前を確認するだけです。



実装



そのようなシステムは通常どのように構築されますか? シンプルなスタンドアロンACSには次のものがあります。

  1. カードリーダー
  2. ロックコントローラー(リーダーと組み合わせることができます)
  3. 電磁ロック
  4. 終了ボタン(戻る)


通常、マスターカードを使用してプログラムされます。



追加のACSサーバーであるネットワークソリューションでは、インターフェイスコンバーターがインストールされ、RS-485回線が敷設されます。RS-485回線を介して、サーバーはコントローラーと通信します。



当然のことながら、市販されている既製のシステムを使用することもできましたが、これは多くの市場に存在しますが、さまざまな致命的な欠陥を明らかにしました。 また、カードを読み取り、ロックを管理し、イーサネット経由でサーバーと通信できる、つまりすべてのコンポーネントを組み合わせたWirenボードがあることを思い出しました。 「スマート」アクセスコントローラーを作成することにしました。



サーバーに別のRS-485ラインを敷設する必要はありません。イーサネット経由でSCSに接続するだけでよく、これはホステル内の問題ではありません。 また、サーバー自体には別のコンピューターとしてのサーバー(およびWindowsを含む)は必要ありません。仮想サーバーを上げるだけです。 電力はイーサネット(PoE)を介してデバイスに供給されます-電源を接続する場所と、そこからドアまでワイヤを伸ばす方法について考える必要はありません。



もちろん、ACSネットワークコントローラーという形で市場には優れたソリューションがありますが、クローズドソフトウェアが付属しているため、ソーシャルカードのサポートを実装することは困難です。 この場合、カードからセクターを読み取る標準機能は適切ではありません。コントローラーが必要なセクターからデータを抽出し、それを解読し、受信した情報を使用して、カードを登録するためのデータベースへのリクエストを作成する必要があるためです



また、ACSは、既存および将来の自己記述型システム(Webサイト、洗濯記録システムなど)と統合する必要があります。 複雑なソフトウェアが閉じられているため、これは非常に難しいタスクです。 また、サブスクリプションまたはライセンスで支払うことができます-不要な問題。





Wiren Boardで使用するもの:

-NFC-ソーシャルカード(Mifare Classicなどのカード)の読み取り用

- イーサネット -データベースとの通信用

-磁気ロックおよび表示LEDを制御するためのトランジスタ出力

-「終了」ボタンを接続するGPIO

-Power over Ethernet-電源ケーブルの数を減らし、コンセントを気にしない



接続図を図に示します。



緑と赤のLEDは表示機能を実行します。 安全出口ボタンは3ピンでなければならず、電磁ロック回路を機械的に開く必要があります。 ボタンを押すと、一対の接点が開き、中央の接点が3番目に閉じて、ボードに信号が送られます。 制御トランジスタが閉じ、ロックの電源回路を3〜4秒間遮断します。







電磁ロックは、トランジスタ出力を介して12Vを供給することにより制御されます。 電力には、ユビキティのパッシブPoEインジェクターが使用されました。



適切なハウジングが選択され、デバイスはドアの適切な場所を取りました。







ソフトウェア


システムのソフトウェア部分とロジックは非常に単純です。



彼らはほとんどの学生が持っているソーシャルカードを使用しています。 理論的には、銀行カード、Mifareキーフォブ、メトロカード、NFCを搭載したスマートフォンなど、ISO 14443互換のラベルを使用できます。



すべての情報は、リモートサーバー上のMySQLデータベースに保存されます。 ユーザーのリスト(教員のリスト)、各ユーザーのカードのリスト、ログなどがそこに保存されます。 シリアル番号、そのタイプ、およびカードのタイプに応じた追加情報は、各カードに保存されます。ソーシャルカードの名前、番号、有効期間。 ワンタイムメトロカード番号など



カードを提示すると、コントローラーはそのシリアル番号を読み取り、データベースに要求を送信します。 カード番号が対応するテーブルで見つかった場合、コントローラーはドアを開き、ログにエントリを追加します。 番号が見つからない場合、コントローラーはカードを識別しようとします

ソーシャルカードから名前やその他の情報を読み取り、メトロカードから番号を読み取ります。 目的の名前と生年月日のユーザーがユーザーテーブルにある場合、カードはシステムに自動的に登録されます。



システムを簡素化するために、コントローラはストアドプロシージャを呼び出してMySQLデータベースと直接通信します。 もちろん、コントローラーはテーブルに直接アクセスできません。



コントローラーで実行されるクライアント部分はPythonで記述されており、数十行かかります。



おわりに



完成したコントローラーも気に入ったので、完成したデバイスとして販売することにしました 。 オプションとして、通信チャネルの予約用のGPRSやRS-485回線への接続など、Wiren Boardが提供するすべての可能性が利用可能です。 外部リーダー、追加のロック、ボタンもデバイスに接続できます。



Wiren Boardコンピューター自体の詳細な説明は、 ドキュメントポータルにあります。 ストアでサンプルを購入できます。 また、 フォーラムおよびコメントでのコメントや提案をお待ちしています。



All Articles