【教學/測試】AS3992 UHF RFID Reader 教學 | AS3992 – UHF RFID Single Chip Reader
Last Updated on 2022 年 8 月 13 日 by 小編
AS3992 UHF RFID Reader 教學 和測試紀錄!
如果需要購買 AS3992 UHF(超高頻) NFC/RFID Reader,請和我們聯絡~
內容目錄
AS3992 UHF RFID Reader 文件
文件總整理,可以從這論壇查看使用教學。
- 完整資料下載,包括 datashhet、schematics、firmware、document 等等。
- AS3992 韌體(.hex)。
- PC 軟體。
- How to program the RFID reader 文件
- 完整資料原始出處,https://www.dropbox.com/s/u9cv2ytscplytmg/AS3992%20reader%20module%20files%20English.zip?dl=0
AS3992 硬體外觀
AS3992 開發板 + 3.6V/2A 電源 + 3dBi 天線 + 五張 915MHz Tag。
USB Debug Adapter + JTAG 排線 + JTAG 轉 C2 轉板。
AS3992 韌體更新
由於韌體預設是燒錄 USB 版本,可以燒成 UART 版本方便測試。連接方式需接上 JTAG 排線,還好 JTAG 有防呆。
注意要三角對三角。
AS3992 的 C2CK 和 C2D 還有 GND 要和 JTAG 轉板腳位相接。
相接的結果(用手扶著就可以了)。
完整連接圖。
韌體更新要透過 Silicon Lab 提供的 FLASH 燒錄工具(C8051F)上傳。或是下載完整資料裡的壓縮檔。選擇 C2 programmer > Flash Programming V3.90.exe
如果一切連接順利,就可以看到 USB Debug Adapter 是可以選取的。
點選 “Connect”,順利的話就可以連接到 AS3992,原來 “Connect” 會變成 “Disconnect”。
下載 AS399X firmware.zip(.hex)
其中,as399xdemo_uart_3992.hex
表示 115200bps baud rate
。
另外,as399xdemo3992uart_9600.hex
表示 9600bps baud rate
。
我們選擇 115200bps
燒錄(用 9600bps
的也可以)。
燒錄完畢後,重插拔電源將會使用新韌體開機(如果下載到一半斷線也沒關係,但電源不能斷)
AS3992 連線
我們測試的環境為 Raspberry Pi 3,使用 2016-05-23 的映像檔。
Raspberry Pi 和 AS3992 使用 USB 轉 TTL 序列傳輸線(PL2303HXD 或是 PL2303HX 都可以)相接。
通訊的方式是用 CuteCom,如果還沒安裝請先用 sudo apt-get install cutecom
安裝。
在 Pi 上連線的介面是 /dev/ttyUSBX
,例如 /dev/ttyUSB0
如下圖。
一切沒問題,就可以使用 cutecom
做連線測試了。步驟如下:
- 在
Device
選擇/dev/ttyUSB0
- 在
Baud rate
選擇115200
- 在
Data bits
選擇8
- 在
Stop bits
選擇1
- 在
Parity
選擇None
- 這時候點選
Open device
- 最下方選擇
Hex input
char delay
選擇1 ms
根據文件說明,送 10 03 00
是查詢韌體版本,送 10 03 01
是查詢硬體版本。
因此我們在底下的 Input 輸入100300
就可以看到 AS3992 回傳的韌體版本。
如果是輸入100301
就可以看到 AS3992 回傳的硬體版本。
更多命令就需要參考完整的手冊才知道怎麼使用了。最重要的是完整資料裡的 datasheet 和 command。
datasheet: AS3992 reader module files English > Application notes > AS3992_Datasheet_v1.0.pdf
command: AS3992 reader module files English > Application notes > AN399x Leo Roger System Description_1_4.pdf
AS3992 讀卡
有人將 AS3992 UHF RFID reader 寫了 Python 的模組,可以參考使用。
接線就和剛剛的方式一樣,Raspberry Pi 透過 PL2303HX 或 PL2303HXD 和 AS3992 相接。
################ ########## # Raspberry Pi # --USB to TTL-- # AS3992 # ################ ##########
開啟 Pi 的終端機,先把程式拉(pull)下來。
$ cd ~ $ git clone https://github.com/GuyLewin/pyAS3992 $ cd pyAS3992/
因為原本的範例程式(example.py)只會讀取一次,我們稍做修改就可以持續讀取。
$ vim main.py
import as3992_api import time def main(): ann = as3992_api.AntennaDevice() print "Firmware info: %s\nHardware info: %s" % ann.get_system_info() print "Activating antenna" ann.set_antenna_state(True) print "Tags:" while True: try: for epc, rssi in ann.iter_epc_rssi(): print epc.encode("HEX"), rssi except: pass time.sleep(1) if __name__ == "__main__": main()
執行 main.py
,我們拿五張 tag 做測試,會讀到 epc
和 rssi
。實測接收距離約在 10-15cm 左右。
$ sudo python main.py
結論
這次我們實測 AS3992 UHF RFID Reader,介紹如何接線、更新韌體,並且和 Raspberry Pi 連接後讀取 UHF RFID Tag。如果沒有改裝天線而使用原本的配備,讀取距離約 10-15cm,但如果加上高功率的天線,讀取距離可以達到 5-15m,會根據不同強度的天線而有不同的讀取距離效果。
這款 AS3992 UHF RFID Reader,除了和常用的 RC522 RFID Reader 使用的頻段不同,讀取距離也可以更遠,對於做非接觸式的應用是非常好的選擇。
發佈留言