Arduino 入門
Lesson 64
【RFIDモジュール】
その2
こにんちは、管理人のomoroyaです。
センサーの使い方の基本を学習する入門編。
下記、電波法の関係で保留にしていたLesson 64 【RFIDモジュール】。
詳細はこちらの記事を参照ください。
安価で手に入るものは、素性がわからず電波法に違反する可能性があるため避けていましたが・・・
「Switch Science」さんにて、めでたく上記電波法に合致したものが発売されたため購入しました!
下記ページに「電界強度測定資料」も掲載されています。
安心して遊ぶことが可能です!
「Switch Science」さん、日本の法規制に対応するために色々と取り組んでくれたようで感謝です!
みなさん、ぜひ購入してください!
ということで、本Lessonは長い間保留にしていた【RFIDモジュール】について解説です。
M5Satck向けのモジュールですが、Arduino だろうが、なんだろうが使えます!
さっそく遊んでいきましょう。
ちなみに、「M5Satck」「M5StickC Plus」・・・M5用のセンサモジュールなどなど・・・
実は色々持っているのですが・・・
あえてArduino を使って解説です!
本Lessonで使用している「RFIDモジュール」は以下が同等品。
※Switch Science
※M5Stack用WS1850S搭載 RFID 2ユニット
https://www.switch-science.com/products/8301
Arduino入門編の解説にて使用しているArduinoは互換品です。
互換品とは言え、Arduinoはオープンソースであり複製して販売するのもライセンス的に問題なし。
そのため互換品の品質も悪くなく、それでいて値段は安いです。
正規品本体の値段程度で豊富な部品が多数ついています。
正規品(Arduino UNO R3)の本体単品がほしい方はこちらとなります。
Arduino入門編2では「Arduino UNO R4 Minima」「Arduino UNO R4 WIFI」にて遊ぶため今のところは正規品を使用。(まだ互換品が・・・ほぼない)
はじめに
本Lessonで使用する「RFIDモジュール」は非接触での双方向データ通信やカードの読み込み/認識が可能なモジュール。
カードの読み込み、書き込み、認識、記録、認証など様々な機能を備えています。
ただし日本国内で扱うためには「電波法」に準拠したもので遊ばないと罰則対象になってしまいます・・・。
なかなか、安価で手軽にというわけにはいかず・・・
と思っていたところ、「Switch Science」さんにて「電波法」に準拠したものが発売されました。
めでたく、手軽に安価で遊べる環境がようやく整ったということです。
「Switch Science」さん、ありがとう!
電波法については↓こちらの記事にて解説しています。
遊ぶ前に一読していただくと嬉しいです!
Lesson 64 目標
本Lessonの目標は以下です。
2.RFIDモジュールを使って、カードデータを取得するスケッチを描く
いつものように、遊ぶことが重要です。
「M5Stack用WS1850S搭載 RFID 2ユニット」ですが、モジュールとやり取りをするための通信は「I2C」。
「I2C」については以下で解説しています。
準備
ではLessonの準備に取り掛かりましょう。
電子部品は「M5Stack用WS1850S搭載 RFID 2ユニット」のみ。
あとは、適当に読み取り用のカードをご用意ください。
といっても、非接触Mifareカードなど用意する必要があります。
Lesson 63にて解説していますがSuicaは規格がFelicaであるため読むことができません・・・。
ちなみに、会社の入門カードなどは読めるかも。
必要なもの
- USB接続用のPC(IDE統合環境がインストールされたPC)
→管理人が勝手に比較したBTOメーカーを紹介しています。 - UNO R3(以下UNO)、おすすめUNO互換品(ELEGOO)
- PCとUNOを接続するUSBケーブル
- ブレッドボード安価(大)、ブレッドボード安価(中)
※おすすめブレッドボード(大)、おすすめブレッドボード(中) - M-M Jumper wire(UNOと部品をつなぐための配線)
- M-F Jumper wire(UNOと部品をつなぐための配線)
- M-F M-M F-F セット Jumper wire(UNOと部品をつなぐための配線)
※ブレッドボードはセンサとUNOを直接つなぐ場合不要です。
※ジャンパワイヤーは「M-M」「M-F」を必要に応じて使い分けてください。
Jumper wire、抵抗は今後も頻繁に利用します。
Jumper wireはできれば、「オス-メス オス-オス メス –メス」の3種類を揃えておくことをお勧めします。
短めが使いやすい場合も。
抵抗も単品で揃えるよりはセットをおすすめします。
抵抗、LEDなどを個別でセット品を購入しても、そんなに使わない!
という方は、「電子工作基本部品セット」が使い勝手が良い。
使用部品説明
「M5Stack用WS1850S搭載 RFID 2ユニット」について説明していきます。
M5Stack用WS1850S搭載 RFID 2ユニット 実物写真
下の写真が「M5Stack用WS1850S搭載 RFID 2ユニット」の実物写真です。
WS1850Sを内蔵しており、動作周波数は13.56 MHz。
カードの読み込み/書き込み/認識/記録や、RFカードのエンコーディング、認証など様々な機能を備えています。
■表面
■裏面(左から:SCL、SDA、5V、GND)
M5Stack用WS1850S搭載 RFID 2ユニット 回路図
「M5Stack用WS1850S搭載 RFID 2ユニット」の詳細に関してはWS1850Sのデータシートを確認ください。
ここでは、割愛します。
データシートはSwitch Scienceさんにて確認できます。
M5Stack用WS1850S搭載 RFID 2ユニット 仕様
遊び、学習で使う分には気にする特性はとくにありません。
通信はI2Cで行うため、デバイスのアドレスが「0x28」であるということは頭に入れておきましょう!
Name | Function |
---|---|
動作周波数 | 13.56 MHz |
I2Cデータレート | Fastモード : 最大400 kbit/秒 High-Speedモード : 最大3400 kbit/秒 |
トランシーババッファ | 64 bytes |
対応プロトコル | ISO14443A、MIFARE、NTAG |
動作温度範囲 | -20℃〜85℃ |
温度補償範囲 | -10 ~ +40 ℃ |
データ保存可能期間 | 10年以上 |
読み込み可能範囲 | 最大20 mm |
通信プロトコル | I2C(アドレス : 0x28) |
重量 | 6 g |
サイズ | 48 x 24 x 8 mm |
WS1850S 仕様
搭載されているICである「WS1850S」の詳細仕様に関してはデータシートにて確認ください。
こちらでは割愛。
データシートはSwitch Scienceさんにて確認できます。
本Lessonは遊び、学習を想定しています。
Arduinoの仕様範囲内で使用していれば問題になることもありません。
遊び、学習以外での使用用途をお考えの場合はデータシートを必ず確認しましょう。
実践 回路作成とコード作成
最初に回路図を確認してください。
次に、回路図に合わせて部品を接続します。
最後にコードを書いて、「M5Stack用WS1850S搭載 RFID 2ユニット」を接続してカードデータを読み取りましょう!
Arduinoのピン配置を確認したい方は番外編02を参照してください。
回路図
Arduinoの使用ピンは以下。
- I2Cピン:SCL、SDA
- 5V、GND
「M5Stack用WS1850S搭載 RFID 2ユニット」のFriztingパーツがありません。
時間があったら、自作しますが期待せずにお待ちください・・・。
回路図がこちら。
「M5Stack用WS1850S搭載 RFID 2ユニット」のFriztingパーツがないため省略。
こちらがブレッドボード図。
「M5Stack用WS1850S搭載 RFID 2ユニット」のFriztingパーツがないため省略。
回路図は「fritzing」を利用しています。
「fritzing」の使い方は下記を参照してください。
接続
下図に示すように、用意した部品を使用して接続しましょう。
電子部品は「M5Stack用WS1850S搭載 RFID 2ユニット」のみ。
使用するポートは
- I2Cピン:SCL、SDA
- 5V、GND
穴に挿入しづらいときは、ラジオペンチなどを使用してください。
コードの書き込み
接続が終わったら、USBケーブルを使用してUNOにプログラムを書き込んで行きましょう。
コードを書き終えたら、いつでも利用できるように「ファイル」⇒「名前を付けて保存」で保存しておきましょう。
といいつつ本Lessonでは・・・
てっとりばやく動くことを確認するためサンプルスケッチにてカードデータを読み取ります。
使用するのは下記。
「ツール」→「ライブラリを管理」→「MFRC522 I2C」で検索。
「RFID_MFRC522v2」をインストール。
自作のサンプルスケッチも検討予定。
気長にお待ちください。
コマンド説明
サンプルスケッチのため割愛。
サンプルコード
「ファイル」→「スケッチ例」→「RFID_MFRC522v2」→「CustomI2C」
動作確認
では、さっそく動作を確認していきます。
動作はTwitterに掲載しましたこちら。
RFIDモジュール。
安価なもので、日本の電波法に適合したものが今までなかったため避けていたが、適合品が登場。
さっそく遊んでみる。
SwitchScienceさん、ありがとう!
M5ではなくarduinoを使う…#arduino pic.twitter.com/gxnKAMv7tB— おもろや (@omoroya777) December 11, 2022
本Lessonで使用した「M5Stack用WS1850S搭載 RFID 2ユニット」は電波法に適合しているため安心して遊ぶことができます。
手軽にRFIDを扱うことができるため、色々なものに応用できると思います。
まとめ
本Lessonは、以下を目標としました。
2.RFIDモジュールを使って、カードデータを取得するスケッチを描く
「M5Stack用WS1850S搭載 RFID 2ユニット」は電波法に適合した電子部品。
ようやく、安心して遊べるRFIDのユニットが登場しました。
カードの読み込み/書き込み/認識/記録など色々と遊ぶことができます。
本にタグをつけて管理するなどなど、色々と使い道はあると思います。
考えてみるのも面白い!
今回は、動かすことが主体でスケッチの説明などしていません。
自作したスケッチを描いて、説明するつもりです。
気長にお待ちください・・・!
Lesson 64 【RFIDモジュール】 はここまで。
疑問点、質問などありましたら気軽にコメントください。
次回、Lesson 65は【Line Tracking Sensor】です。
最後に
疑問点、質問などありましたら気軽にコメントください。
この電子部品の解説をしてほしい!などなどなんでもOKです。
リンク切れ、間違いなどあればコメントいただけると助かります。
Arduino入門編、番外編、お役立ち情報などなどサイトマップで記事一覧をぜひご確認ください。
Arduino入門編、Arduino入門編2で使用しているUNOはAmazonにて購入可能です。
Arduino入門編では互換品を使用。
Arduinoはオープンソース。
複製して販売するのもライセンス的に問題なし。
そのため互換品の品質も悪くなく、それでいて値段は安いです。
正規品本体の値段程度で豊富な部品が多数ついています。
学習用、遊び用、お試し用には安価な互換品がおすすめです。
ELEGOO UNO キット レベルアップ チュートリアル付 uno mega2560 r3 nanoと互換 Arduino用
上記のものでも十分に多数の部品が入っていますが、最初からもっと多数の部品が入っているこちらもお勧めです。
Arduino入門編2では「Arduino UNO R4 Minima」「Arduino UNO R4 WIFI」にて遊ぶため今のところは正規品を使用。(まだ互換品が・・・ほぼない)
Amazonでお得に買う方法
Amazonでお得に購入するならAmazon Mastercard、Amazonギフト券がおすすめです。
時期により異なりますが、様々なキャンペーンを実施しています。
\Amazonギフト券/
Amazonギフトカード キャンペーン
\Amazon Mastercard お申込み/
Amazon Mastercard 申し込み
いずれの場合もプライム会員である方がお得!!
\Amazon Prime 30日間の無料会員を試す/
無料会員登録
コメント
とても分かりやすく説明されていましたのでM5Stack用WS1850S搭載 RFID 2ユニットとarduinoを買って遊んでみました。是非とも続編を期待しています。
この組み合わせでUIDのみ取り出す方法とかがよく分からないで悩んでいます。
RC522とarduinoの記事はよく見かけるのですが
コメントありがとうございます!!!
はい、続編を記事にしたいと思っています!
私事で2月末まで、ブログ更新が滞る予定です。
しばらく、お待ちいただけるとと思います。