Barcode Scanner Emulator
كيف تعمل ماسحات الباركود
يبدو مسح الباركود فوريًا، لكنه يمر بأربع مراحل منفصلة بين الباركود المادي والحرف الذي يصل إلى تطبيقك. فهم كل مرحلة يجعل تشخيص الأعطال المرتبطة بالماسح أسهل بكثير.
المراحل الأربع لمسح الباركود
1. الإضاءة والتقاط الصورة
تمسح الماسحات الليزرية الشعاع عبر الباركود وتقيس شدة الضوء المنعكس. تلتقط الماسحات المعتمدة على الصورة (معظم الماسحات اليدوية الحديثة وكاميرات الهاتف) صورة ثنائية الأبعاد للباركود بمستشعر CMOS صغير، يشبه كاميرا منخفضة الدقة.
2. فك الترميز
يحلّل البرنامج الثابت المدمج عروض الأشرطة (أو الصورة الثنائية الأبعاد لرموز QR وData Matrix) ويفكها إلى الحمولة الرقمية الأصلية، بخوارزمية الترميز المحدد: Code 128 وCode 39 وEAN-13 وQR وغيرها. يحدث كل ذلك داخل الماسح نفسه، قبل أن تصل أي بيانات إلى الحاسوب.
3. الاتصال
تُنقل الحمولة المفكوكة إلى الحاسوب المضيف. يكون النقل عادة عبر USB، وتقدّم الغالبية العظمى من ماسحات المستهلكين والصناعة نفسها لنظام التشغيل كجهاز لوحة مفاتيح USB HID لا كفئة USB خاصة. تدعم بعض الماسحات أوضاعًا بديلة مثل USB التسلسلي (محاكاة منفذ COM) أو Bluetooth HID، لكن وضع محاكاة لوحة المفاتيح هو الافتراضي في كل ماسح يُباع اليوم تقريبًا.
4. إدخال التطبيق
لأن الماسح يتصرف كلوحة مفاتيح، يسلّم نظام التشغيل الحمولة كسلسلة من أحداث المفاتيح إلى التطبيق الذي يملك تركيز لوحة المفاتيح حاليًا. لا يتحدث تطبيقك مع الماسح مباشرة أبدًا، بل يتلقى ضغطات مفاتيح تمامًا كما لو كتبها شخص بسرعة كبيرة.
لماذا تتصرف معظم الماسحات كلوحات مفاتيح
وضع لوحة مفاتيح HID هو الإعداد الافتراضي في كل ماسحات الباركود التجارية تقريبًا لأنه لا يحتاج إلى تثبيت برنامج تشغيل. أي نظام تشغيل يدعم لوحة مفاتيح USB يدعم الماسح فورًا.
محاكاة لوحة مفاتيح USB تعني أن البرنامج الثابت للماسح يربط كل حرف مفكوك برمز مفتاح HID USB الذي ترسله لوحة المفاتيح لذلك الحرف، ثم يرسل تقارير لوحة مفاتيح HID العادية عبر نقطة نهاية المقاطعة في USB.
لماذا يهم ذلك عند الاختبار: لأن الماسح لا يمكن تمييزه عن لوحة المفاتيح في طبقة التطبيق، يمكنك اختبار جزء كبير من السلوك المدفوع بالماسح بالكتابة السريعة في حقل مركّز، أو بأداة في المتصفح تفحص أحداث لوحة المفاتيح (انظر الأدوات المرتبطة أدناه).
لاحقات ENTER وTAB
تُضبط معظم الماسحات لإلحاق ضغطة لاحقة بعد الحمولة المفكوكة، والأكثر شيوعًا ENTER (إرجاع الحامل، 0x0D)، وأحيانًا TAB (0x09) أو تسلسل مخصص. بذلك يعرف التطبيق المستلم أين تنتهي القيمة الممسوحة من دون مهلة زمنية: تعمل اللاحقة كإشارة إرسال، مثل الضغط على Enter بعد الكتابة في حقل نص.
توقيت الماسح
ينقل الماسح حمولة الباركود كاملة في أقل من ثانية بكثير، غالبًا بفجوات من بضعة ميلي ثوانٍ بين الأحرف. من يكتب السلسلة نفسها يدويًا تكون لديه عادة فجوات من 100 إلى 300 مللي ثانية أو أكثر بين الضغطات. هذا الفرق الزمني هو أساس «اكتشاف الماسح» في كثير من تطبيقات POS والمخزون، التي تراقب دفعات إدخال سريعة بشكل غير معتاد تتبعها فورًا مفتاح لاحقة.
بالنسبة إلى تطبيقك يعني ذلك: إذا أردت تمييز إدخال الماسح عن الكتابة اليدوية، فقس الوقت بين الضغطات بدلًا من البحث عن علامة خاصة، لأن أحداث لوحة المفاتيح العادية في المتصفح لا تحمل معلومات عن مصدر الإدخال.
جرّبه بنفسك
استخدم فاحص إدخال الباركود لمسح باركود حقيقي ورؤية القيمة الملتقطة والتوقيت واكتشاف اللاحقة في الوقت الفعلي. للتعمق في سلوك إسفين لوحة المفاتيح، تابع إلى شرح إسفين لوحة مفاتيح HID.