Gelişmiş

Etiket Kodlama ve EPC Belleği

Tedarik zinciri entegrasyonu için etiket bellek mimarisine ve GS1 kodlamasına hakim olun

4 Bellek Bankası

Her EPC Gen2 etiketi, her biri belirli bir amaca hizmet eden tam olarak 4 bellek bankasına sahiptir. Bu yapıyı anlamak, etiketlerinizi kodlamak, okumak ve güvenliğini sağlamak için çok önemlidir.

Bank 00 (Reserved): 32 bit Kill Şifresi ve 32 bit Erişim Şifresi içerir. Varsayılan değerler 0x00000000'dır. Kill şifresi gönderildiğinde etiketi kalıcı olarak devre dışı bırakır. geri döndürülemez. Erişim şifresi, yetkisiz yazmaları önlemek için bellek bankalarını kilitler.

Bank 01 (EPC): StoredCRC (16 bit, otomatik hesaplanır), StoredPC/Protocol Control (16 bit, EPC uzunluğunu ve etiket yeteneklerini gösterir) ve EPC değerinin kendisini içerir. tipik olarak SGTIN-96 için 96 bit (12 bayt). Bazı etiketler 128 bit veya hatta 496 bit EPC'leri destekler.

Bank 10 (TID): Fabrika tarafından programlanmış Etiket Tanımlayıcı. Çip üretici kodu, model numarası ve benzersiz bir seri numarası içerir. Bu banka salt okunurdur ve asla değiştirilemez. sahteciliğe karşı koruma ve etiket kimlik doğrulaması için paha biçilmez hale getirir.

Bank 11 (User): İsteğe bağlı ek depolama. Boyut çipe göre değişir: NXP UCODE 9'un 0 biti (kullanıcı belleği yok), Quanray QStar-7U'nun 512 biti (64 bayt) vardır. Toplu numaralar, inceleme tarihleri, sıcaklık eşikleri veya bakım kayıtları için kullanın. Yazmadan önce her zaman mevcut kapasiteyi kontrol edin.

SGTIN-96 Kodlama. Adım Adım

SGTIN-96, en yaygın kullanılan EPC şemasıdır. Bir GTIN-14'ü (ürün barkodunuz) artı benzersiz bir seri numarasını tam olarak 96 bite (12 bayt) kodlar. Bu, ürün türü başına 274 milyara kadar benzersiz seri numarasına izin verir.

96 bitlik yapı: Başlık (8 bit, SGTIN-96 için her zaman 0x30) → Filtre (3 bit: 0=hepsi, 1=POS, 2=tam kasa, 3=ayrılmış, 4=iç paket, 5=ayrılmış, 6=birim yükü, 7=bileşen) → Bölüm (3 bit: şirket öneki ve öğe referansı arasındaki bitlerin nasıl bölündüğünü tanımlar) → Şirket Öneki (20–40 bit) → Öğe Referansı (4–24 bit) → Seri Numarası (38 bit).

Bölüm değeri (0–6), Şirket Öneki uzunluğunu belirler: P=0 → 40 bitlik önek (12 basamak), P=1 → 37 bit (11 basamak), P=2 → 34 bit (10 basamak), P=3 → 30 bit (9 basamak), P=4 → 27 bit (8 basamak), P=5 → 24 bit (7 basamak), P=6 → 20 bit (6 basamak). GS1 şirket öneki uzunluğunuz, hangi bölüm değerini kullanacağınızı belirler.

💡

SGTIN-96 değerlerini etkileşimli olarak kodlamak ve kodunu çözmek için /tools/tds-rfid-converter adresindeki Nextwaves TDS RFID Dönüştürücü aracını kullanın. GTIN-14 + seri numaranızı girin ve anında onaltılık EPC'nizi alın.

SGTIN-96 Bit Structure
┌────────┬──────┬─────┬──────────────┬──────────────┬──────────────┐
│ Header │Filter│Part │Company Prefix│Item Reference│   Serial     │
│ 8 bits │3 bits│3bits│  20-40 bits  │   4-24 bits  │   38 bits    │
│  0x30  │ 0-7  │ 0-6 │  GS1 prefix  │  product ref │  unique ID   │
└────────┴──────┴─────┴──────────────┴──────────────┴──────────────┘

Partition table (defines prefix/item bit allocation):
P=0: 40-bit prefix (12 digits)  P=4: 27-bit prefix (8 digits)
P=1: 37-bit prefix (11 digits)  P=5: 24-bit prefix (7 digits)
P=2: 34-bit prefix (10 digits)  P=6: 20-bit prefix (6 digits)
P=3: 30-bit prefix (9 digits)

Example: 3034257BF7194E4000001A85
  Header=0x30 Filter=1 Part=5 Prefix=0614141
  Item=812345 Serial=6789 → GTIN-14: 80614141123458

Diğer EPC Şemaları

SGTIN-96'nın ötesinde, GS1, farklı tedarik zinciri tanımlayıcıları için birkaç farklı 96 bit EPC şeması tanımlar. Her birinin kendi başlık baytı vardır.

Etiket Belleğini Okuma ve Yazma

Envanter sırasında etiket okuma pasiftir. okuyucu bir sorgu yayınlar ve etiketler EPC'lerini Bank 01'den yanıtlar. Ancak, banka numarasını, kelime ofsetini ve kelime sayısını içeren bir OKUMA komutu göndererek herhangi bir bellek bankasını da açıkça okuyabilirsiniz.

Etiketlere yazmak daha fazla hassasiyet gerektirir. Etiketin tekilleştirilmesi (yalnızca bir etiket yanıt veriyor) gerekir ve yazma işlemleri her seferinde bir kelime (16 bit) olarak gerçekleşir. Tam bir 96 bitlik EPC yazma işlemi 6 ardışık kelime yazma gerektirir. Her yazma işlemi 10–20 ms sürer, bu nedenle tek bir etiketi kodlamak yalnızca EPC verileri için 60–120 ms sürer.

Yaygın yazma hataları: Etiket, antene çok uzak (yazma işlemleri için okumalardan daha güçlü bir sinyale ihtiyaç duyar. Etiketi 1m'nin yakınına getirin). Sahada birden fazla etiket (tekilleştirme başarısız oldu. Hedef etiketi izole edin). Etiket belleği kilitli (erişim parolası gerekir). Yazma doğrulama başarısız oldu (tekrar deneyin veya etiket arızalı olabilir. Tipik arıza oranı 10.000'de 1–3'tür).

💡

En iyi uygulama: Yazdıktan sonra her zaman verileri geri okuyup karşılaştırarak doğrulayın. Bir yazma komutu başarılı olabilir ancak nadir durumlarda bitişik bitleri bozabilir. Yazmadan sonra doğrulama, bu sorunları yakalar.

Write EPC — Nextwaves NRN Protocol
TX → 5A 00 01 02 11 00 0C [EPC_12_BYTES] [CRC16]

Write per 16-bit word: 10-20ms
Full 96-bit EPC = 6 words = 60-120ms total

With access password:
TX → 5A 00 01 02 11 00 10 [PWD_4B] [EPC_12B] [CRC16]

Etiket Güvenliği ve Şifreler

EPC Gen2 etiketleri, güvenlik için iki adet 32 bitlik şifre destekler. Erişim Şifresi, belirli bellek bankalarını kilitler. Ayarlandıktan sonra, bu banka herhangi bir okuma veya yazma işleminden önce şifreyi gerektirir. Kill Şifresi, iletildiğinde etiketi kalıcı olarak devre dışı bırakır. Öncelikli olarak perakendede tüketici gizliliği için kullanılan geri döndürülemez bir işlem (satın alma işleminden sonra etiketi yok etmek).

Güvenlik en iyi uygulamaları: Üretimde asla varsayılan tüm sıfır şifresini (0x00000000) kullanmayın. Sıfır güvenlik sağlar. Etiket partisi başına benzersiz şifreler oluşturun veya şirket ön ekini tohum olarak kullanın. Şifreleri arka uç sisteminizde saklayın, asla etiketin üzerinde değil (etiket kilidi açılırsa şifre belleği okunabilir). Programlamadan sonra şifre bankalarını kilitleyin. TID'yi gizleyen ve EPC'yi azaltan, etiketi yok etmeden gizlilik sağlayan İzlenemez modu (daha yeni çiplerde mevcuttur) düşünün.

⚠️

Kill komutu kalıcıdır ve geri döndürülemez. Geri alma yoktur. Bir etiket öldürüldüğünde, bir daha asla herhangi bir okuyucuya yanıt veremez. Yazılımınızda her zaman kill-password doğrulaması uygulayın ve kill komutlarını yürütmeden önce yönetici yetkisi isteyin.