コンテンツにスキップ

RFIDリーダーの接続

RFIDリーダーは、有線連絡なしにカード、タグ、またはフォブを読み取ることができます。

iDryerのようなデバイスでは、これはスプール識別、素材プロファイル選択、サービスアクセス、または消耗品トラッキング実験に役立つ可能性があります。

主な間違い。「RFIDモジュール」を購入して、どのカードも任意のコントローラーでどのような距離からでも読み取ることができると想定します。実際には、周波数、タグタイプ、インターフェース、電力、ロジックレベル、およびアンテナプレースメントを確認する必要があります。

人気のあるモジュール

一般的なものは以下を含みます。

  • RC522 / MFRC522
  • PN532
  • USB/UART RFIDリーダーの準備
  • I2C、SPI、またはUART付きNFCモジュール

シンプルな3Dプリンタープロジェクトでは、13.56MHzモジュールとタグが最も一般的です。カード、フォブ、NTAG/MIFARE互換タグ。

接続する前に確認すること

接続する前に、見つけます。

  • モジュール周波数
  • サポートされているカードとタグの種類
  • インターフェース。SPI、I2C、またはUART
  • 供給電圧
  • ロジックレベル
  • ボードのピンアウト
  • ジャンパーまたはハンダブリッジ経由のインターフェース選択
  • 読む距離
  • アンテナとプレースメント要件

モジュールが 3.3V に対応している場合、チェックなしで 5V ロジックに接続することはできません。一部のボードには電圧レギュレーターがありますが、シグナルラインのレベルシフトがありません。

RC522。典型的なSPI接続

安いRC522モジュールは通常 3.3V で実行され、ほとんどの場合、SPI経由で接続します。

典型的なラインズ。

  • VCC - 3.3V 電力
  • GND - グラウンド
  • SCK - SPI時計信号
  • MOSI - コントローラーからモジュールへのデータ
  • MISO - モジュールからコントローラーへのデータ
  • SDASS、または CS - SPI チップの選択
  • RST - リセット
  • IRQ - 割り込み、シンプルなプロジェクトではしばしば未使用

13.56MHzカードを読むためのRFID RC522 (MFRC522) モジュール

出典: ウィキメディア・コモンズ、Giacomo Alessandroni、CC BY-SA 4.0

ピン名が異なる可能性があります。例えば、RC522では、ピン SDA はしばしばI2C SDA ラインではなく、SPI用の SS/CS を意味しています。これは混乱の一般的な源です。

PN532。SPI、I2C、またはUART

PN532は、より柔軟なモジュールです。ボードに応じて、次を使用して動作できます。

  • SPI
  • I2C
  • UART

しかし、単にピンを接続することはできません。多くのPN532ボードでは、インターフェースはジャンパー、DIPスイッチ、またはハンダブリッジで選択されます。

接続する前に、確認してください。

  • どのインターフェースが物理的にボード上で選択されます
  • どのピンが選択されたインターフェースと一致します
  • I2C用のプルアップ抵抗が必要かどうか
  • リセットピンが必要かどうか
  • ロジックレベルはコントローラーと互換性がありますか

ボードが「3.3V ロジック」と言う場合は、それを5V GPIOに直接接続しないでください。

共通のグラウンド

他のモジュールのように、共通のグラウンドが必要です。

RFIDモジュールが1つのソースから電力を供給され、コントローラーが別のソースから電力を供給されている場合、それらの GND を接続する必要があります。

共通のグラウンドなしでは、SPI/I2C/UARTが機能しないか、不安定に機能する可能性があります。

タグはリーダーと一致する必要があります

RFID/NFCは単一のユニバーサル標準ではありません。

モジュールは物理的にチップとライブラリがサポートするタグのみを読み取ることができます。

確認してください。

  • タグ周波数
  • カードまたはフォブのタイプ
  • モジュールはMIFARE、NTAG、ISO14443A、または必要なタイプをサポートしていますか
  • UIDだけを読むか、またはデータも読み書きしてください
  • 選択したライブラリは必要な操作をサポートしていますか

シンプルな素材プロファイル選択の場合、タグUIDだけを読み取り、ファームウェアまたはホストにUID ->素材マッピングを保存するだけで十分です。

読み取り距離

小さなRFID/NFCモジュールの読み取り距離は通常短いです。

結果は以下に依存します。

  • アンテナサイズ
  • タグタイプ
  • タグの向き
  • 距離
  • ハウジング プラスチック
  • 近くの金属
  • 干渉
  • モジュール電源

アンテナの近くの金属は読み取りを劇的に悪化させることができます。リーダーが乾燥機、チャンバー、またはスプールホルダーにマウントされている場合は、ベンチではなく、実際のアセンブリで距離をテストしてください。

リーダーを配置する場所

フィラメントスプールの場合、RFIDリーダーをユーザーが意図的にタグを持ってくる場所に配置するのが最適です。

タグが常に自動的に読み取られると想定したロジックを設計しないでください。

実用的なオプション。

  • ハウジングの「ここにタグを持ってきた」ゾーン
  • スプールホルダーの近くの位置
  • アクセスカード用のサービスゾーン
  • 読取距離が短い別のパネル

タグがスプール上にある場合は、異なるスプール、異なるタグの向き、異なるプラスチック、および金属の近接でテストしてください。

最初の起動

統合の前に。

  1. ベンチでモジュールを接続します。
  2. モジュール用ライブラリからの例を実行します。
  3. カードまたはタグが安定して読み取ることを確認します。
  4. 複数のタグのUIDを記録します。
  5. サポートされていないカードがロジックを破らないことを確認します。
  6. ハウジングにモジュールをマウントして、再テストします。

この段階では、複雑なプロファイルシステムを構築したり、すぐに複雑なシステムを構築したりしないでください。まず、安定したUID読み取りを達成してください。

例デバイスロジック

マテリアルプロファイルの場合、シンプルなロジックは以下の通りです。

  1. ユーザーはタグを持ってきます。
  2. デバイスはUIDを読みます。
  3. UIDはテーブルで検索されます。
  4. UIDが既知の場合は、マテリアルプロファイルが選択されます。
  5. UIDが不明な場合は、デバイスは手動プロファイル選択を求めます。

RFIDは唯一の制御方法であってはいけません。手動バックアップが必要です。メニューのプロフィール、ボタン、画面、またはインターフェース設定。

アセンブリ後に確認すること

確認してください。

  • モジュールは正しい電圧を受け取ります
  • ロジックレベルはコントローラーと互換性があります
  • 正しいインターフェースが選択されます
  • MOSIMISOSCKCS はSPI用に交換されていません
  • SDASCL はI2C用に交換されていません
  • TXRX はUART用に正しく交差しています
  • 共通のグラウンドが存在します
  • リセット/IRQはライブラリが必要とおりに接続されます
  • 正しいタイプのタグが読み取る
  • ハウジング内の読取距離は正常です
  • 金属とワイヤーはアンテナをブロックしません
  • タグが読み取られない場合、デバイスは正常に機能します

一般的な間違い

  • 3.3V RC522を5V パワーまたは5V ロジックに接続
  • RC522 SDA をI2C SDA と混同する
  • SPI用の CS/SS を忘れた
  • MOSIMISO を交換
  • PN532でジャンパーで1つのインターフェースを選択しましたが、別のワイヤー
  • サポートされていないカードタイプを使用する
  • アンテナをメタルのすぐ隣に配置
  • ベンチで読む距離をテストしましたが、ハウジング内では
  • RFIDをプロフィール選択の唯一の方法にする
  • 読み取りエラーチェックなしにUIDのみに重要なロジックを保存

キーポイント

  • RFID/NFCモジュールは特定のタグとインターフェースのために選択される必要があります
  • RC522は通常 3.3V とSPIを必要とします
  • PN532はSPI、I2C、またはUARTを使用できますが、インターフェースはボードで選択する必要があります
  • 共通のグラウンドが必要です
  • アンテナの近くの金属は読み取りを大幅に悪化させることができます
  • マテリアルプロファイルの場合、タグUIDはしばしば十分ですが、手動バックアップ選択が必要です
  • ベンチではなく、実際のハウジングでテストしてください

関連読書