উন্নত

ট্যাগ এনকোডিং ও EPC মেমোরি

সাপ্লাই চেইন ইন্টিগ্রেশনের জন্য ট্যাগ মেমোরি আর্কিটেকচার এবং GS1 এনকোডিং মাস্টার করুন

৪টি মেমোরি ব্যাংক

প্রতিটি EPC Gen2 ট্যাগে সঠিক ৪টি মেমোরি ব্যাংক থাকে, প্রতিটি একটি নির্দিষ্ট উদ্দেশ্যে কাজ করে। এই স্ট্রাকচার বোঝা আপনার ট্যাগ এনকোডিং, পড়া এবং সুরক্ষার জন্য অপরিহার্য।

Bank 00 (Reserved): ৩২-বিট Kill পাসওয়ার্ড এবং ৩২-বিট অ্যাক্সেস পাসওয়ার্ড ধারণ করে। ডিফল্ট ভ্যালু হল 0x00000000। সঠিক পাসওয়ার্ড দিয়ে পাঠানো হলে kill পাসওয়ার্ড ট্যাগ স্থায়ীভাবে অক্ষম করে - অপরিবর্তনীয়। অ্যাক্সেস পাসওয়ার্ড অননুমোদিত লেখা প্রতিরোধ করতে মেমোরি ব্যাংক লক করে।

Bank 01 (EPC): StoredCRC (১৬ বিট, স্বয়ংক্রিয় গণনা), StoredPC/প্রোটোকল কন্ট্রোল (১৬ বিট, EPC দৈর্ঘ্য এবং ট্যাগ ক্ষমতা নির্দেশ করে) এবং নিজের EPC ভ্যালু ধারণ করে - SGTIN-96-এর জন্য সাধারণত ৯৬ বিট (১২ বাইট)। কিছু ট্যাগ ১২৮-বিট বা এমনকি ৪৯৬-বিট EPC সাপোর্ট করে।

Bank 10 (TID): ফ্যাক্টরি-প্রোগ্রামড ট্যাগ আইডেন্টিফায়ার। চিপ প্রস্তুতকারক কোড, মডেল নম্বর এবং একটি অনন্য সিরিয়াল নম্বর ধারণ করে। এই ব্যাংক রিড-অনলি এবং কখনো পরিবর্তন করা যায় না - এটি পণ্য জালিয়াতি প্রতিরোধ এবং ট্যাগ অথেনটিকেশনের জন্য অমূল্য।

Bank 11 (User): ঐচ্ছিক অতিরিক্ত স্টোরেজ। চিপ দ্বারা আকার পৃথক: NXP UCODE 9-এ ০ বিট (কোনো ইউজার মেমোরি নেই), Quanray QStar-7U-এ ৫১২ বিট (৬৪ বাইট)। ব্যাচ নম্বর, পরিদর্শন তারিখ, তাপমাত্রা থ্রেশহোল্ড বা রক্ষণাবেক্ষণ রেকর্ডের জন্য ব্যবহার করুন। লেখার আগে সবসময় উপলব্ধ ক্ষমতা চেক করুন।

SGTIN-96 এনকোডিং - ধাপে ধাপে

SGTIN-96 হল সবচেয়ে ব্যাপকভাবে ব্যবহৃত EPC স্কিম। এটি একটি GTIN-14 (আপনার প্রোডাক্ট বারকোড) এবং একটি অনন্য সিরিয়াল নম্বরকে সঠিক ৯৬ বিটে (১২ বাইট) এনকোড করে। এটি প্রতি প্রোডাক্ট টাইপে ২৭৪ বিলিয়ন পর্যন্ত অনন্য সিরিয়াল নম্বর অনুমতি দেয়।

৯৬-বিট স্ট্রাকচার: হেডার (৮ বিট, SGTIN-96-এ সবসময় 0x30) → ফিল্টার (৩ বিট: ০=সব, ১=POS, ২=ফুল কেস, ৩=রিজার্ভড, ৪=ইনার প্যাক, ৫=রিজার্ভড, ৬=ইউনিট লোড, ৭=কম্পোনেন্ট) → পার্টিশন (৩ বিট: কোম্পানি প্রিফিক্স এবং আইটেম রেফারেন্সের মধ্যে বিট কীভাবে বিভক্ত তা সংজ্ঞায়িত করে) → কোম্পানি প্রিফিক্স (২০–৪০ বিট) → আইটেম রেফারেন্স (৪–২৪ বিট) → সিরিয়াল নম্বর (৩৮ বিট)।

পার্টিশন ভ্যালু (০–৬) কোম্পানি প্রিফিক্স দৈর্ঘ্য নির্ধারণ করে: P=০ → ৪০-বিট প্রিফিক্স (১২ সংখ্যা), P=১ → ৩৭-বিট (১১ সংখ্যা), P=২ → ৩৪-বিট (১০ সংখ্যা), P=৩ → ৩০-বিট (৯ সংখ্যা), P=৪ → ২৭-বিট (৮ সংখ্যা), P=৫ → ২৪-বিট (৭ সংখ্যা), P=৬ → ২০-বিট (৬ সংখ্যা)। আপনার GS1 কোম্পানি প্রিফিক্স দৈর্ঘ্য নির্ধারণ করে কোন পার্টিশন ভ্যালু ব্যবহার করতে হবে।

/tools/tds-rfid-converter-এ Nextwaves 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 স্কিম সংজ্ঞায়িত করে। প্রতিটির নিজস্ব হেডার বাইট আছে।

ট্যাগ মেমোরি পড়া ও লেখা

ইনভেন্টরির সময় ট্যাগ পড়া প্যাসিভ। রিডার একটি কোয়েরি ব্রডকাস্ট করে এবং ট্যাগগুলি ব্যাংক 01 থেকে তাদের EPC দিয়ে রেসপন্ড করে। তবে ব্যাংক নম্বর, ওয়ার্ড অফসেট এবং ওয়ার্ড কাউন্ট সহ READ কমান্ড পাঠিয়ে আপনি যেকোনো মেমোরি ব্যাংক স্পষ্টভাবে পড়তে পারেন।

ট্যাগে লেখার জন্য বেশি নির্ভুলতা প্রয়োজন। ট্যাগটি অবশ্যই সিঙ্গুলেট করা থাকতে হবে (শুধুমাত্র একটি ট্যাগ রেসপন্ড করছে), এবং প্রতিটি বার একটি ওয়ার্ড (16 বিট) করে লেখা হয়। একটি সম্পূর্ণ 96-বিট EPC লেখার জন্য 6টি সিকোয়েন্সিয়াল ওয়ার্ড রাইট প্রয়োজন। প্রতিটি লেখায় 10-20ms সময় লাগে, তাই শুধুমাত্র EPC ডেটার জন্য একটি ট্যাগ এনকোড করতে 60-120ms লাগে।

সাধারণ রাইট ব্যর্থতা: ট্যাগ অ্যান্টেনা থেকে খুব দূরে (লেখার জন্য পড়ার চেয়ে শক্তিশালী সিগন্যাল প্রয়োজন। ট্যাগকে 1m এর মধ্যে আনুন)। ফিল্ডে একাধিক ট্যাগ (সিঙ্গুলেশন ব্যর্থ। টার্গেট ট্যাগটি আইসোলেট করুন)। ট্যাগ মেমোরি লক করা (অ্যাক্সেস পাসওয়ার্ড প্রয়োজন)। রাইট ভেরিফাই ব্যর্থ (রিট্রাই করুন, অথবা ট্যাগ ত্রুটিপূর্ণ হতে পারে। সাধারণ ত্রুটি হার হল 10,000 এ 1-3টি)।

সর্বোত্তম অনুশীলন: ডেটা ব্যাক পড়ে এবং তুলনা করে লেখার পরে সর্বদা ভেরিফাই করুন। একটি রাইট কমান্ড সফল হতে পারে কিন্তু বিরল ক্ষেত্রে সংলগ্ন বিট দূষিত করতে পারে। রাইট-পরে-রিড ভেরিফিকেশন এই সমস্যাগুলি ধরতে পারে।

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 হ্রাস করে, ট্যাগ কিল না করে প্রাইভেসি প্রদান করে।

কিল কমান্ড স্থায়ী এবং অপরিবর্তনীয়। কোনো আনডু নেই। একবার একটি ট্যাগ কিল হয়ে গেলে, এটি আর কখনো কোনো রিডারে রেসপন্ড করতে পারবে না। আপনার সফটওয়্যারে সর্বদা কিল-পাসওয়ার্ড ভেরিফিকেশন বাস্তবায়ন করুন এবং কিল কমান্ড এক্সিকিউট করার আগে ম্যানেজার অনুমোদন প্রয়োজন করুন।

হোমে ফিরে যান