RFID相关知识总结(超高频UHF)
RFID標(biāo)簽分類(lèi)
1.LF(Low frequency) 低頻
頻段范圍: 125 KHz~135KHz(ISO18000-2)
常見(jiàn)應(yīng)用:該頻段特點(diǎn)是具有良好的物體穿透能力。廣泛應(yīng)用于進(jìn)出管理、門(mén)禁管理、考勤、車(chē)輛管理、
巡更、汽車(chē)鑰匙、動(dòng)物晶片、固定設(shè)備等。
2.HF(High Frequency) 高頻
頻段范圍: 13.56MHz(ISO18000-3)
常見(jiàn)應(yīng)用:供應(yīng)鏈、生產(chǎn)管理與產(chǎn)品跟蹤、貨架、智慧卡(身份證、醫(yī)保卡與交通卡等)、運(yùn)輸、門(mén)禁、票>>務(wù)(門(mén)票、電子票務(wù))、圖書(shū)和旅游卡等。
3.UHF(Ultra High Frequency) 超高頻
頻段范圍:860MHz~960MHz(ISO18000-6)
常見(jiàn)應(yīng)用:國(guó)土安全、供應(yīng)鏈、物流、移動(dòng)商務(wù)、防偽、電子牌照、倉(cāng)庫(kù)管理、機(jī)場(chǎng)行李管理等
4.MW(Micro Wave) 微波
頻段范圍:2.45 GHz(ISO18000-4)與5.8GHz(ISO18000-5)
常見(jiàn)應(yīng)用:定位跟蹤、自動(dòng)收費(fèi)系統(tǒng)、移動(dòng)車(chē)輛識(shí)別
UHF RFID存儲(chǔ)區(qū)簡(jiǎn)介
1.TID區(qū)
RFID標(biāo)簽的唯一識(shí)別碼區(qū)、TID號(hào)碼唯一且不重復(fù), 相當(dāng)于芯片的 "身份證"
2.EPC區(qū)
存儲(chǔ)用戶(hù)的EPC信息、16進(jìn)制數(shù)據(jù)。不同廠商的RFID芯片可寫(xiě)入的位數(shù)有所不同,常見(jiàn)EPC存儲(chǔ)16/24位。
3.User區(qū)
存儲(chǔ)用戶(hù)的自定義數(shù)據(jù), 不同廠商該區(qū)不一樣。impinj G2則沒(méi)有用戶(hù)區(qū), Philips則有28字節(jié)。
4.Reserved區(qū)
存儲(chǔ)Kill Password(銷(xiāo)毀)與Access Password(訪問(wèn))密碼。前兩個(gè)字節(jié)銷(xiāo)毀密碼、后兩個(gè)字節(jié)訪問(wèn)密碼。
以上4個(gè)存儲(chǔ)區(qū)均可寫(xiě)保護(hù)。意味著保護(hù)后該區(qū)永不可寫(xiě)或非安全模式下不可寫(xiě)。讀取保護(hù)則只對(duì)密碼區(qū)設(shè)置有效, 即需要在安全模式下進(jìn)行訪問(wèn)。TID與EPC則無(wú)法設(shè)置讀取保護(hù)。
UHF RFID閱讀器操作[ Impinj SDK C#示例 ]
不同閱讀器只會(huì)有SDK的調(diào)用方式有所不同, 功能都相同
1.EPC寫(xiě)入 [ 代碼示例 ]
常見(jiàn)的EPC寫(xiě)入、SDK需要先鎖定需要操作的RFID標(biāo)簽。
TID鎖定: TID唯一碼改寫(xiě),適用于批量更新,準(zhǔn)確
EPC鎖定: EPC可能存在重復(fù)的情況, 影響更新性能
static void ProgramEpc(string tid, string currentEpc,ushort currentPcBits, string newEpc)
{
// 檢查指定的 EPCs 是否有效長(zhǎng)度
if ((currentEpc.Length % 4 != 0) || (newEpc.Length % 4 != 0))
throw new Exception("EPCs must be a multiple of 16 bits (4 hex chars)");
//創(chuàng)建標(biāo)簽操作序列
TagOpSequence seq = new TagOpSequence();
seq.TargetTag.MemoryBank = MemoryBank.Tid;
seq.TargetTag.Data = tid;
TagWriteOp writeEpc = new TagWriteOp();
writeEpc.Id = EPC_OP_ID;
writeEpc.MemoryBank = MemoryBank.Epc;
writeEpc.Data = TagData.FromHexString(newEpc);
writeEpc.WordPointer = WordPointers.Epc;
//標(biāo)簽訪問(wèn)密碼,未加密前默認(rèn)8個(gè)0
writeEpc.AccessPassword = TagData.FromHexString("00000000");
seq.Ops.Add(writeEpc);
if (currentEpc.Length != newEpc.Length)
{
ushort newEpcLenWords = (ushort)(newEpc.Length / 4);
ushort newPcBits = PcBits.AdjustPcBits(currentPcBits, newEpcLenWords);
TagWriteOp writePc = new TagWriteOp();
writePc.Id = PC_BITS_OP_ID;
writePc.MemoryBank = MemoryBank.Epc;
writePc.Data = TagData.FromWord(newPcBits);
writePc.WordPointer = WordPointers.PcBits;
//標(biāo)簽訪問(wèn)密碼,未加密前默認(rèn)8個(gè)0
writeEpc.AccessPassword = TagData.FromHexString("00000000");
seq.Ops.Add(writePc);
}
reader.AddOpSequence(seq); //操作序列添加進(jìn)入閱讀器中
}
2.EPC寫(xiě)保護(hù) [代碼示例]
防止標(biāo)簽進(jìn)行初始化后, 其他人員惡意進(jìn)行非法更新或銷(xiāo)毀操作, 使得芯片無(wú)法在流程及應(yīng)用中發(fā)揮其作用, 一般標(biāo)簽在初始化后需要進(jìn)行加密保護(hù)或標(biāo)簽供應(yīng)商出廠前進(jìn)行加密保護(hù), 加密保護(hù)主要包含銷(xiāo)毀與訪問(wèn)密碼保護(hù)。
TagWriteOp writeOp = new TagWriteOp();
writeOp.Id = pcid;
writeOp.AccessPassword = null;
writeOp.MemoryBank = MemoryBank.Reserved;
writeOp.WordPointer = WordPointers.AccessPassword;
writeOp.Data = TagData.FromHexString("00000000");
seq.Ops.Add(writeOp);
//EPC 標(biāo)簽鎖定操作
TagLockOp lockOp = new TagLockOp();
lockOp.Id = pcid;
lockOp.AccessPasswordLockType = TagLockState.Lock;
lockOp.UserLockType = TagLockState.Lock;
seq.Ops.Add(lockOp);
3.User區(qū)寫(xiě)入 [ 代碼示例 ]
// Create a tag write operation.
TagWriteOp writeOp = new TagWriteOp();
// Write to user memory
writeOp.MemoryBank = MemoryBank.User;
// Write two (16-bit) words
writeOp.Data = TagData.FromHexString("00000000");
// Starting at word 0
writeOp.WordPointer = 0;
// Add this tag write op to the tag operation sequence.
seq.Ops.Add(writeOp);
// Add the tag operation sequence to the reader.
// The reader supports multiple sequences.
reader.AddOpSequence(seq);
4.Kill Tag銷(xiāo)毀標(biāo)簽 [ 代碼示例 ]
未加密的標(biāo)簽銷(xiāo)毀密碼同訪問(wèn)密碼為8個(gè)0組成, 銷(xiāo)毀密碼的過(guò)程中, 需要單獨(dú)給其設(shè)定一個(gè)銷(xiāo)毀密碼, 如已設(shè)置銷(xiāo)毀密碼則按設(shè)置后的密碼, 標(biāo)簽一旦銷(xiāo)毀, 則滅活無(wú)法正常讀取。
static void SequenceWriteTag(string epc)
{
TagOpSequence seq = new TagOpSequence();
var target = new TargetTag();
target.MemoryBank = MemoryBank.Epc;
target.BitPointer = BitPointers.Epc;
target.Data = epc;
seq.TargetTag = target;
TagWriteOp writeOp = new TagWriteOp();
writeOp.AccessPassword = null;
writeOp.MemoryBank = MemoryBank.Reserved;
writeOp.WordPointer = WordPointers.KillPassword;
writeOp.Data = TagData.FromHexString(KILL_PW);
seq.Ops.Add(writeOp);
// Define a tag kill operation.
TagKillOp killOp = new TagKillOp();
// Specify the kill password for this tag.
// The kill password cannot be zero.
killOp.KillPassword = TagData.FromHexString(KILL_PW);
// Add this tag write op to the tag operation sequence.
seq.Ops.Add(killOp);
reader.AddOpSequence(seq);
}
UHF RFID讀寫(xiě)器讀取性能影響分析
1.閱讀器功率
直接影響到讀取標(biāo)簽的性能, 距離。 功率↑性能↑ 功率↓性能↓
2.閱讀器頻率
不同的RFID標(biāo)簽,頻率不同、讀取設(shè)定的頻段也會(huì)受到影響
3.閱讀器
各種閱讀器之間有差異,主要體現(xiàn)在: 讀寫(xiě)性能、設(shè)備穩(wěn)定性、可擴(kuò)展、及成熟的算法等方面。
4.天線的增益及饋線的衰減
通常來(lái)講、RFID天線增益上調(diào)對(duì)應(yīng)的距離、性能會(huì)更好。
5.RFID標(biāo)簽種類(lèi)
不同種類(lèi)的RFID標(biāo)簽、型號(hào)、不同的廠家生產(chǎn)設(shè)計(jì)。標(biāo)簽性能都會(huì)有所不同。
6.讀取方向及環(huán)境
標(biāo)簽與天線極化方向與相對(duì)角度的配合度,方向一致配合度高,讀寫(xiě)距離就遠(yuǎn),反之,不配合的話(huà)讀距近
總結(jié)
以上是生活随笔為你收集整理的RFID相关知识总结(超高频UHF)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 吴王靠是什么(吴王靠)
- 下一篇: 活着是为了什么(活着是为了什么)