متقدم

ترميز العلامات وذاكرة EPC

أتقن بنية ذاكرة العلامات وتشفير GS1 لتكامل سلسلة التوريد

بنوك الذاكرة الأربعة

تحتوي كل علامة EPC Gen2 على 4 بنوك ذاكرة بالضبط، يخدم كل منها غرضًا محددًا. يعد فهم هذه البنية أمرًا ضروريًا لتشفير علاماتك وقراءتها وتأمينها.

البنك 00 (محجوز): يحتوي على Kill Password (32 بت) و Access Password (32 بت). القيم الافتراضية هي 0x00000000. تعمل كلمة مرور الإيقاف على تعطيل العلامة بشكل دائم عند إرسالها. لا رجعة فيه. تعمل كلمة مرور الوصول على تأمين بنوك الذاكرة لمنع الكتابة غير المصرح بها.

البنك 01 (EPC): يحتوي على StoredCRC (16 بت، يتم حسابه تلقائيًا)، StoredPC/Protocol Control (16 بت، يشير إلى طول EPC وقدرات العلامة)، وقيمة EPC نفسها. عادةً ما تكون 96 بت (12 بايت) لـ SGTIN-96. تدعم بعض العلامات EPCs 128 بت أو حتى 496 بت.

البنك 10 (TID): معرف العلامة المبرمج من المصنع. يحتوي على رمز الشركة المصنعة للرقاقة ورقم الطراز والرقم التسلسلي الفريد. هذا البنك للقراءة فقط ولا يمكن تغييره أبدًا. مما يجعلها لا تقدر بثمن لمكافحة التزييف ومصادقة العلامات.

البنك 11 (المستخدم): تخزين إضافي اختياري. يختلف الحجم حسب الشريحة: NXP UCODE 9 لديه 0 بت (لا توجد ذاكرة مستخدم)، Quanray QStar-7U لديه 512 بت (64 بايت). استخدمه لأرقام الدُفعات أو تواريخ الفحص أو عتبات درجة الحرارة أو سجلات الصيانة. تحقق دائمًا من السعة المتاحة قبل الكتابة.

ترميز SGTIN-96. خطوة بخطوة

SGTIN-96 هو نظام EPC الأكثر استخدامًا على نطاق واسع. يقوم بترميز GTIN-14 (الرمز الشريطي لمنتجك) بالإضافة إلى رقم تسلسلي فريد في 96 بت بالضبط (12 بايت). يسمح هذا بما يصل إلى 274 مليار رقم تسلسلي فريد لكل نوع منتج.

بنية 96 بت: الرأس (8 بتات، دائمًا 0x30 لـ SGTIN-96) → المرشح (3 بتات: 0=الكل، 1=POS، 2=الحالة الكاملة، 3=محجوز، 4=العبوة الداخلية، 5=محجوز، 6=وحدة التحميل، 7=المكون) → القسم (3 بتات: يحدد كيفية تقسيم البتات بين بادئة الشركة والمرجع) → بادئة الشركة (20-40 بت) → مرجع العنصر (4-24 بت) → الرقم التسلسلي (38 بت).

تحدد قيمة القسم (0-6) طول بادئة الشركة: P=0 → بادئة 40 بت (12 رقمًا)، P=1 → 37 بت (11 رقمًا)، P=2 → 34 بت (10 أرقام)، P=3 → 30 بت (9 أرقام)، P=4 → 27 بت (8 أرقام)، P=5 → 24 بت (7 أرقام)، P=6 → 20 بت (6 أرقام). يحدد طول بادئة شركة GS1 الخاصة بك قيمة القسم التي سيتم استخدامها.

💡

استخدم أداة Nextwaves TDS RFID Converter على /tools/tds-rfid-converter لترميز وفك ترميز قيم SGTIN-96 بشكل تفاعلي. أدخل GTIN-14 + الرقم التسلسلي واحصل على EPC السداسي على الفور.

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

مخططات EPC الأخرى

بالإضافة إلى SGTIN-96، تحدد GS1 العديد من مخططات EPC الأخرى البالغ عددها 96 بت لمعرفات سلسلة التوريد المختلفة. لكل منها بايت رأس خاص به.

قراءة وكتابة ذاكرة العلامات

تعتبر قراءة العلامات أثناء المخزون سلبية. يبث القارئ استعلامًا وتستجيب العلامات بـ EPC الخاصة بها من البنك 01. ولكن يمكنك أيضًا قراءة أي بنك ذاكرة بشكل صريح عن طريق إرسال أمر READ برقم البنك وإزاحة الكلمة وعدد الكلمات.

تتطلب الكتابة إلى العلامات دقة أكبر. يجب تحديد العلامة (استجابة علامة واحدة فقط)، وتحدث عمليات الكتابة كلمة واحدة (16 بت) في كل مرة. تتطلب كتابة EPC كاملة 96 بت 6 عمليات كتابة متتالية للكلمات. تستغرق كل عملية كتابة 10-20 مللي ثانية، لذا يستغرق ترميز علامة واحدة 60-120 مللي ثانية لبيانات EPC وحدها.

أخطاء الكتابة الشائعة: العلامة بعيدة جدًا عن الهوائي (تحتاج إلى إشارة أقوى للكتابة أكثر من القراءة. قم بإحضار العلامة على مسافة 1 متر). علامات متعددة في الحقل (فشل التحديد. عزل العلامة المستهدفة). ذاكرة العلامة مقفلة (مطلوب كلمة مرور للوصول). فشلت عملية التحقق من الكتابة (أعد المحاولة، أو قد تكون العلامة معيبة. معدل العيوب النموذجية هو 1-3 لكل 10000).

💡

أفضل ممارسة: تحقق دائمًا بعد الكتابة عن طريق قراءة البيانات ومقارنتها. قد ينجح أمر الكتابة ولكنه يفسد البتات المجاورة في حالات نادرة. يكتشف التحقق من القراءة بعد الكتابة هذه المشكلات.

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]

أمان العلامات وكلمات المرور

تدعم علامات EPC Gen2 كلمتي مرور 32 بت للأمان. تقوم كلمة مرور الوصول بتأمين بنوك ذاكرة معينة. بمجرد التعيين، يتطلب هذا البنك كلمة المرور قبل أي عملية قراءة أو كتابة. تقوم كلمة مرور الإيقاف بتعطيل العلامة بشكل دائم عند الإرسال. عملية لا رجعة فيها تستخدم في المقام الأول لخصوصية المستهلك في البيع بالتجزئة (تدمير العلامة بعد الخروج).

أفضل ممارسات الأمان: لا تستخدم أبداً كلمة المرور الافتراضية المكونة من أصفار (0x00000000) في الإنتاج. فهي لا توفر أي أمان. قم بإنشاء كلمات مرور فريدة لكل دفعة علامات أو استخدم بادئة شركتك كنقطة انطلاق. قم بتخزين كلمات المرور في نظام الواجهة الخلفية الخاص بك، وليس على العلامة نفسها (يمكن قراءة ذاكرة كلمة المرور إذا تم إلغاء قفل العلامة). قم بتأمين بنوك كلمة المرور بعد البرمجة. ضع في اعتبارك الوضع غير القابل للتتبع (المتوفر على الرقائق الأحدث) الذي يخفي TID ويقلل EPC، مما يوفر الخصوصية دون إيقاف العلامة.

⚠️

أمر Kill دائم ولا رجعة فيه. لا يوجد تراجع. بمجرد إيقاف علامة، لا يمكنها الاستجابة لأي قارئ مرة أخرى. قم دائمًا بتنفيذ التحقق من كلمة مرور الإيقاف في برنامجك واطلب تفويض المدير قبل تنفيذ أوامر الإيقاف.