新四季網

rfid生產測試方法(RFID實驗實例)

2023-04-20 17:13:29

rfid生產測試方法? 本實例包含4個案例,覆蓋了M1卡的幾乎所有應用,實例以RC522模塊和樹莓派實現,這些實例均 以 MFRC522-python 庫(https://github.com/mxgxw/MFRC522-python)為基礎 可以參考 樹莓派3B連接MFRC522模塊進行RFID讀寫全指南 和 樹莓派 RC522模塊,今天小編就來聊一聊關於rfid生產測試方法?接下來我們就一起去研究一下吧!

rfid生產測試方法

本實例包含4個案例,覆蓋了M1卡的幾乎所有應用,實例以RC522模塊和樹莓派實現,這些實例均 以 MFRC522-python 庫(https://github.com/mxgxw/MFRC522-python)為基礎 可以參考 樹莓派3B連接MFRC522模塊進行RFID讀寫全指南 和 樹莓派 RC522模塊

(https://blog.csdn.net/coder9999/article/details/79196753)兩個連結的內容,完成硬體連接和庫的引用應該有這麼幾個步驟: 1、硬體連接;2、打開spi和IIC埠;3、安裝spi-py庫;4安裝MFRC522-python庫。案例1:門禁系統門禁程序原型說明

根據給定的示例程序,設計的門禁程序原型,採用了直接讀卡id號的模式,與登記在sqlite3庫中的記錄比較,如有記錄,點亮led燈,模擬開門,同時登記刷卡開門的記錄。

************************

程序特點:因判斷的是卡id,須使用登記的ic卡,採用了本地sqlite3庫記錄,可以根據py_mysql.py修改為讀取遠程mysql的程序。

****************************

原有程序文件

MFRC522.py 庫文件

Dump.py 顯示所有扇區數據

Read.py python2的讀卡id的程序

Write.py python2的寫扇區8的程序

*********************************************

io.py 控制led顯示,模擬開門程序,開門程序只需要一個i/o口,在輸出out為1的時候,開門,然後自動關門

db_rz.db sqlite3的資料庫文件,含兩個表 py_cb.py python3創建sqlite資料庫中表的程序

py_insery.py 插入數據

py_select.py 查詢數值

py_sqlite.py 顯示錶記錄

py_mysql.py python3連接mysql資料庫的程序

*****************************************************

r.py python3的讀卡程序,id為10進位

r_id.py python3的讀卡id程序,id為16進位

ck.py 門禁主程序,查詢卡id是否登記的庫中,是,開門,不是,給出提示,只要刷卡,就記錄

zk.py 註冊卡的程序,將卡登記入庫 可以參考更為方便的另一種web門禁

案例2:web門禁系統 web門禁

基於ic卡的門禁,在主程序中,根據卡id是否登記在sqlite3庫中記錄情況開門,因主程序記錄了登記的ic的記錄,也記錄 了沒有登記的ic的記錄,因此結合phpliteadmin,web管理sqlite3資料庫的軟體,通過對記錄的處理,完成整個門禁功能

案例3:一卡通系統 M1卡充值消費示例程序

類似一卡通消費,公交卡,地鐵卡,飯卡等與數字存取有關的操作

******************************************

根據給定的示例程序,設計的卡消費程序原型,採用了直接讀寫block8,存取數字的模式實現了充值與消費,採用了本地數據 庫sqlite記錄流水,卡本身保存剩餘金額的方式。block8中數字的存取,沒有採用通用的值,反值,校驗位的模式保證數據的一致性, 而是採用了對block8的16字中的前後8個字保存一樣的數字方式方便讀寫,同時前後對照,也有一定的容錯性。 因庫MFRC522.py不能滿足要求,在MFRC522_Read函數的基礎上增加了MFRC522_Read_data庫函數,滿足對指定扇區讀取數據的需求。 根據M1卡對扇區讀寫數據的要求,為簡化難度,沒有採用將數字轉換為16進位存儲在扇區的模式,參考input_s.py,沒有完全實現。 而是採用了直接將10進位數字轉換為單個數字列表的方式,將每一個10進位數轉換為ascii內碼的方式形成列表,儲存在block中,讀取 過程相反,具體的過程可以參考input_store.py,因採用了block的一半存儲數字,考慮到貨幣需要精確到0.01元,因此採用了將貨幣金 額元乘以100保存,沒有考慮存儲負值,所以能夠保存的貨幣金額最大是999999.99元,可以滿足絕大多數的需求。

*********************************************

原有程序文件

MFRC522.py 庫文件

Dump.py 顯示所有扇區數據

Read.py python2的讀卡id的程序

Write.py python2的寫block8的程序

***********************************************

cz.py python3充值程序,直接寫卡,沒有庫操作

xf.py 消費程序,默認直接扣除10元,直接寫卡,沒有在庫中記錄

czk.py 充值程序,充值金額寫庫,寫卡

xfk.py 消費程序,記錄記庫,卡中金額不能超過庫裡金額,否則廢卡

input_s.py 過程測試,沒有實現

input_store.py 過程測試,將10進位數字形成適合在卡中保存的數據

up.py 本地上傳記錄程序,將本地sqlite中的消費記錄上傳到遠程總庫中,將遠程庫中的總金額同步到本地

案例4:類身份證系統 M1卡類身份證存、讀中文和字符示例程序

******************************************

M1卡的類似身份證的示例程序,直接將姓名,性別,地址,身份證號寫在卡上,然後讀出來。 根據實例代碼中的Write.py 和Dump.py程序改寫,示例中將性別名字寫在一個數據塊4,將住址寫在 數據塊5,身份證號寫在了數據塊9和10,發現對一個扇區寫需要驗證一次,分兩部分寫,沒有做數據校驗,沒有做卡作廢處理 因庫MFRC522.py不能滿足要求,在MFRC522_Read函數的基礎上增加了MFRC522_Read_data庫函數,滿足對指定扇區讀取數據的需求。 根據M1卡對扇區讀寫數據的要求,對一個扇區寫需要驗證key,即使所有的key一樣,對不同的扇區寫仍然要驗證一次key,性別名字保 存在扇區1的block4,直接採用了GBK編碼,一個漢字佔兩個字節,比UNICODE佔用三個字節節省一些,家庭住址保存在扇區1的block5, 作為實例程序,地址最多只能有8個漢字,如不能滿足要求,自己考慮增加。身份證號保存在扇區2的block9和block10,目前身份證位數為18位, 可以考慮將前部分兩個數字保存一個字,這樣在一個塊就可以保存身份證號,可以參考input_store2.py,涉及編碼問題,沒有最終實現, 最終實現的可以參考input_store3.py,將身份證號前16位保存在block9,後兩位保持在block10,採用了gbk編碼,一個數字佔一個字,這樣身份 證最長可以保存32位數字或字母。

*********************************************

原有程序文件

MFRC522.py 庫文件 增加了MFRC522_Read_data函數

***********************************************

d.py 原有dump.py的改寫

input_store1.py 一些測試想法

input_store2.py 想法,對身份證號碼合併儲存,沒有實現

input_store3.py 對性別姓名地址身份證號綜合的一個在卡存儲的測試

rk.py 讀身份證 rw.py 沒有實現,發現對多個扇區寫需要多個key驗證

rw1.py 寫身份證中姓名性別地址,對扇區1中block4,block5讀寫

rw2.py 寫身份證中身份證號,對扇區2中block9,block10讀寫

w.py 測試對多個扇區寫的測試

另外一個選擇,當更換樹莓派的系統,重新配置時候發現,MFRC522-python庫不是那麼穩定,有時拔掉rst線時又可以讀卡,經過查找,可以使用pi-rc522庫,這個庫在MFRC522-python庫基礎上改進,使用了IRQ也就是中斷的模式,原理上效率更高,對系統的佔用更小,經測試,這個庫比較穩定。

,
同类文章
葬禮的夢想

葬禮的夢想

夢見葬禮,我得到了這個夢想,五個要素的五個要素,水火只好,主要名字在外面,職業生涯良好,一切都應該對待他人治療誠意,由於小,吉利的冬天夢想,秋天的夢是不吉利的
找到手機是什麼意思?

找到手機是什麼意思?

找到手機是什麼意思?五次選舉的五個要素是兩名士兵的跡象。與他溝通很好。這是非常財富,它擅長運作,職業是仙人的標誌。單身男人有這個夢想,主要生活可以有人幫忙
我不怎麼想?

我不怎麼想?

我做了什麼意味著看到米飯烹飪?我得到了這個夢想,五線的主要土壤,但是Tu Ke水是錢的跡象,職業生涯更加真誠。他真誠地誠實。這是豐富的,這是夏瑞的巨星
夢想你的意思是什麼?

夢想你的意思是什麼?

你是什​​麼意思夢想的夢想?夢想,主要木材的五個要素,水的跡象,主營業務,主營業務,案子應該抓住魅力,不能疏忽,春天夢想的吉利夢想夏天的夢想不幸。詢問學者夢想
拯救夢想

拯救夢想

拯救夢想什麼意思?你夢想著拯救人嗎?拯救人們的夢想有一個現實,也有夢想的主觀想像力,請參閱週宮官方網站拯救人民夢想的詳細解釋。夢想著敵人被拯救出來
2022愛方向和生日是在[質量個性]中

2022愛方向和生日是在[質量個性]中

[救生員]有人說,在出生88天之前,胎兒已經知道哪天的出生,如何有優質的個性,將走在什麼樣的愛情之旅,將與生活生活有什么生活。今天
夢想切割剪裁

夢想切割剪裁

夢想切割剪裁什麼意思?你夢想切你的手是好的嗎?夢想切割手工切割手有一個真正的影響和反應,也有夢想的主觀想像力。請參閱官方網站夢想的細節,以削減手
夢想著親人死了

夢想著親人死了

夢想著親人死了什麼意思?你夢想夢想你的親人死嗎?夢想有一個現實的影響和反應,還有夢想的主觀想像力,請參閱夢想世界夢想死亡的親屬的詳細解釋
夢想搶劫

夢想搶劫

夢想搶劫什麼意思?你夢想搶劫嗎?夢想著搶劫有一個現實的影響和反應,也有夢想的主觀想像力,請參閱週恭吉夢官方網站的詳細解釋。夢想搶劫
夢想缺乏缺乏紊亂

夢想缺乏缺乏紊亂

夢想缺乏缺乏紊亂什麼意思?你夢想缺乏異常藥物嗎?夢想缺乏現實世界的影響和現實,還有夢想的主觀想像,請看官方網站的夢想組織缺乏異常藥物。我覺得有些東西缺失了