বারকোড কিভাবে বানানো হয় ?
আবিষ্কারের একেবারে প্রথম দিকে বারকোড ব্যবহার করা হয়েছিল স্বয়ংক্রিয় গাড়ি উৎপাদন কারখানায়। জেনারেল টেলিফোন অ্যান্ড ইলেকট্রনিকস বারকোডের একটা প্রাথমিক সংস্করণ ব্যবহার করেছিল। সেসময় এর নাম দেওয়া হয়েছিল কারট্রেক এসিআই (অটোমেটিং কার আইডেন্টিফিকেশন)। ধীরে ধীরে অন্য নানা ক্ষেত্রেও এর ব্যবহার শুরু হয়ে যায়।
বারকোড হলো মেশিন-রিডেবল কোনও পণ্যতে মুদ্রিত বিভিন্ন প্রস্থের সমান্তরাল রেখার প্যাটার্ন। একটি বারকোড মূলত ভিজ্যুয়াল প্যাটার্নে রাখা কিছু তথ্য যা শুধু মাত্র মেশিন পড়তে পারে। কালো সাদা মিশ্রিত বারসমূহের যে প্যাটার্নটি আমরা বারকোডে দেখতে পাই সেগুলো একটি এলগোরিদম মেনে চলে।
বারকোডে সাধারণত পণ্যের তথ্য থাকে যেমন: পণ্যের মূল্য ও ওজন, উৎপাদনের ও সমাপ্তির (মেয়াদ) তারিখ, প্রস্তুতকারকের নাম ইত্যাদি। আন্তর্জাতিকভাবে প্রত্যেকটি পণ্যের বারকোড ভিন্ন ভিন্ন হয়ে থাকে।তবে পণ্য ছাড়াও আরো অনেক কাজেই বারকোড ব্যবহার করা হয়।
বারকোড দুই প্রকার। একমাত্রিক এবং দ্বিমাত্রিক।
মুদি, কলম এবং বৈদ্যুতিক সরঞ্জাম ইত্যাদির মতো সাধারণ পণ্যগুলিতে একমাত্রিক বারকোড ব্যবহৃত হয়।
দ্বিমাত্রিক বারকোড একমাত্রিক বারকোডের মতই, তবে এটি একমাত্রিকের তুলনায় প্রতি ইউনিটে অধিক তথ্য সংরক্ষণ করতে পারে। দ্বিমাত্রিক কোডকে প্রায় ই “কিউ আর”- কুইক রেসপন্স কোডও বলা হয়।
বারকোড কিভাবে কাজ করে?
একটি বারকোডে সর্বমোট ৯৫ টি ব্লক থাকে। ৯৫ টি ব্লককে ৩ ভাগে ভাগ করা হয়। লেফট গার্ড, সেন্টার গার্ড এবং রাইট গার্ড। এদের মধ্যে ১২টি ব্লকে বারকোড লিখা হয়। তথ্যগুলো বারকোডের প্রতিটি সাদাকালো বার এবং এদের মধ্যকার ফাঁঁকা জায়গার মধ্যে এনকোড করে রাখা হয়।
বারকোড রিডার নামক একটি স্ক্যানার ডিভাইসের সাহায্যে কোডগুলো ডিকোড করা হয়। এটি লেজার ব্যবহার করে কাজ করে। রিডারটি রিড করার সময়ে বাম দিক থেকে ডানদিকে রিড করে।
বার-প্যাটার্ন এর মধ্যে বাইনারি বিট স্টোর করা থাকে এবং সেই বিটগুলো কিছু অক্ষরকে নির্দেশ করে।স্কান্যার ডিভাইস বাইনারি সিকোয়েন্সটি কম্পিউটারে পাঠানোর পরে কম্পিউটার সেগুলোকে আমাদের বোধগম্য ভাষায় রূপান্তর করে প্রদর্শন করে।
আবার, বারকোড জেনারেটর সফটওয়্যার দিয়ে বারকোড তৈরি করা হয়। সফটওয়্যারটি প্রথমে স্ট্রিং হিসেবে তথ্য ইনপুট নেয় তারপরে সেগুলোকে বাইনারি তে কনভার্ট করে এবং বারকোড এর এলগোরিদমের সাহায্যে বারগুলো জেনারেট করে আউটপুট দেয়। একটি একমাত্রিক বারকোড প্রায় ২০ টি ক্যারেক্টার ধারণ করে রাখতে পারে এবং একটি দ্বিমাত্রিক বারকোড প্রায় ২০০০ টি ক্যারেক্টার ধারণ করতে পারে। দ্বিমাত্রিক বারকোডে এরর কারেকশন থাকে ফলে এর কিছু অংশ নষ্ট হয়ে গেলেও স্ক্যানার তা স্ক্যান করতে পারে।
বারকোডের নিচে যে ডিজিটগুলো দেখা যায় সেগুলোকে EAN-13 বলা হয়। UPC-A এর ১২ টি ডিজিটের পুর্বে একটি ডিজিট বসে EAN-13 কোড তৈরি করে। আন্তর্জাতিক কোনো পণ্যের জন্য বারকোড ব্যবহার করতে হলে GS1 নামক একটি অর্গানাইজেশন থেকে বারকোড কিনে নিতে হয়। তারাই ইউনিক বারকোড জেনারেট করে দেয় যার কারনে সেই পণ্যটি যেকোনো দেশের স্ক্যানার পড়তে পারে। বারকোডের প্রথম বিটটি কোম্পানিকে নির্দেশ করে এবং প্রথম ৩ টি ডিজিট সেই দেশকে নির্দেশ করে যে দেশে কোম্পানিটি অবস্থিত। ১২ তম ডিজিটটি স্ক্যানার ঠিকভাবে পুরো কোডটি পড়তে পেরেছে কিনা তা যাচাই করার জন্য দেয়া হয়। একে চেক ডিজিট বলে। কোম্পানি প্রিফিক্স এবং ১২ তম ডিজিটের মাঝের ডিজিটগুলো নির্ধারনের জন্য কোনো নির্দিস্ট নিয়ম থাকেনা এগুলো পন্যের কোম্পানি নিজেদের ইচ্ছা মত নির্ধারন করতে পারে। এগুলো সব একটি সেন্ট্রাল ডেটাবেইজে থাকে যার কারনে পৃথিবীর যেকোনো জায়গার স্ক্যানার পণ্যটি সনাক্ত করতে পারে।
বারকোড স্ক্যানিং এর জন্য দুইধরনের স্ক্যানিং প্রযুক্তি ব্যবহার করা হয়। একটি হলো লেজার টাইপ বারকোড স্ক্যানার অন্যটি হলো ইমেজ টাইপ বারকোড স্ক্যানার। লেজার টাইপ স্ক্যানার বারকোডের উপরে লেজার প্রজেক্ট করে এবং এর রিসিভার প্রতিফলিত আলো শনাক্ত করে এবং প্রসেস করে। বারকোডের কালো বার গুলো আলো শোষণ করে আর সাদা বার গুলো আলো প্রতিফলিত করে। এভাবেই লেজার বারকোড স্ক্যানার কাজ করে। আর আমরা ফোনের ক্যামেরা ব্যবহার করে যখন বারকোড স্ক্যান করি তখন আসলে ক্যামেরা পুরো বারকোডের একটি ছবি তোলে তারপর ছবিটি কিছু ইমেজ প্রসেসিং এলগোরিদমের সাহায্য ডিকোড করে আউটপুট দেয়। এই কাজটি ডিভাইসের মধ্যে থাকা প্রসেসর করতে পারে।
আশাকরি প্রশ্নকর্তা প্রশ্নের উত্তরটি পেয়েছেন। ধন্যবাদ।