Katip yiyeceklerimizi taradığında veya kendi kendini tarama kioskunu ziyaret ettiğimizde, barkodlar on yıllardır günlük rutinimizin bir parçası olmuştur. Makine tarafından okunabilir bir girdi biçimi olarak geliştirilen barkodlar, değerleri temsil etmek için değişen kalın ve ince siyah ve beyaz çubuklar kullanılarak gevşek bir şekilde Mors Koduna dayanır. Onları 21. yüzyılda olduğu gibi kabul ediyoruz, ancak mütevazi barkod 20. yüzyıl ticaretinde devrim yarattı.
SB Components’ın en yeni HAT’si olan 50$ RPI Barkod Okuyucu HAT tam olarak budur, yerleşik DE2120 barkod okuyuculu bir Raspberry Pi HAT. HAT, 1,14 inç TFT ekrana ve HAT’ler ve devre tahtası projeleri için bir GPIO geçişine sahiptir.
Raspberry Pi 4 ve Windows 10 PC’mizde RPI Barkod Okuyucu HAT’ı test ettiğimiz bazı retro PlayStation 1 oyunları da dahil olmak üzere test edilecek bir dizi barkodla donanmış.
Barkod Okuyucu HAT Özellikleri
Barkod okuyucu | DE2120 2D Tarama Motoru [pdf] |
Görüntülemek | 1.14 inç TFT |
iletişim | 40 pinli GPIO ve Mikro USB |
Barkod Uyumluluğu | 1B |
UPC-A, UPC-E, EAN-8, EAN-13, Code 128, GS1-128, Code 39, Code 93, Code 11, Interleaved 2/5, Matrix 2/5, Endüstriyel 2/5, Codabar, MSI , GS1 DataBar, Datalogic 2/5 | |
2B | |
QR Kodu, Karekod, PDF 417, Mikro PDF 417, Aztek Kodu | |
Boyutlar | 65x56mm |
Barkod Okuyucu HAT’ı Kullanma
Bu bir HAT olduğundan, doğrudan 40 GPIO pininin üzerine oturur ve GPIO üzerinden güç alır. GPIO, HAT’ın üzerine bölünmüştür ve bu, daha sonra test edeceğimiz başka bir tahtayı üste koyabileceğimiz anlamına gelir.
Barkod Okuyucu HAT’ı Python kitaplığının erken bir sürümüyle test ettik ve karşılaştığımız sorunlar hakkında SB Bileşenlerine geri bildirim sağladık. Python kitaplığının işlevsel ve kullanımı kolay olduğunu söylemek yeterli, ancak bir dizi yazım hatası ilerlememizi yavaşlattı. Tanımlanan, üstesinden gelinen ve bildirilen yazım hataları ile nihayet tahtayı kullanmaya başladık ve oldukça iyi çalışıyor.
Python kitaplığının temeli, seri / UART bağlantısı aracılığıyla veri dağıtabilen DE2120 tarayıcı modülü ile etkileşime girmekle ilgilidir. Tarayıcı, bir klavye görevi görecek şekilde yeniden programlanabilir, verileri mikro USB bağlantı noktası aracılığıyla bir klavyeymiş gibi verir, bu da başka bir bilgisayarla kullanılabileceği anlamına gelir.
Barkod Tarayıcı HAT’ı Raspberry Pi’den uzakta test ettik. Okuyucuyu USB klavye olarak yapılandırmak için özel bir barkod kullanarak HAT’ı Windows 10 PC’mize bağladık ve tümü metin düzenleyici penceremizde görünen rastgele barkodları taramaya başladık.
Tarayıcıyı seri cihaz olarak kullanmayı seçtik ve örnek uygulamalar üzerinde çalıştıktan sonra nasıl çalıştığını anladık. Veriler bayt olarak çıkar, esasen şu ile başlayan bir metin dizisidir: B ardından içerdiği barkod verileri ”son karakter /r bir taşıma dönüşüdür.
Tavan arasından bir sürü PlayStation 1 oyunu aldıktan sonra, Barkod Okuyucu HAT hakkında daha fazla bilgi edinmek için bir demo oluşturmaya başladık. Testimiz olarak iki oyunun barkodunu kullandık. Koşullu bir test, barkod tarayıcı tarafından okunan verileri kontrol eder ve bunları bilinen iki barkodla karşılaştırır. Bir eşleşme varsa, oyunun adı Python Kabuğuna yazdırılır. Oyunun ekran görüntüsünü 280 x 135 çözünürlüklü ekranda göstermek için fazladan birkaç satır ekledik. Görüntüyü ekran çözünürlüğüne tam olarak uyacak şekilde manuel olarak düzenlemek zorunda kaldık, piksel farkı olsa bile kod hata verecektir. İkisi oyunlar için, diğeri logomuzu kullanarak üç resim oluşturduk. Tarayıcı giriş için beklerken logomuz görüntülenir. Kodu çalıştırıp ilk oyunumuzu sıraladık, tara butonuna bastık ve barkodumuz okundu, oyunun adını shell’e yazdırdık ve ekran görüntüsünü ekranda gösterdik. Bir süre sonra ekran görüntüsü Tom’s Hardware logosu ile değiştirilir ve başka bir barkodun taranması beklenir.
Testimizi dallara ayırdık ve koparma yoluyla GPIO’ya bağlanan bir HC-SR04+ ultrasonik sensör kullandık. HC-SR04+’nın amacı, üniteye dokunmadan barkod tarayıcıyı tetiklemekti. Python kitaplığı, kodu özetleyen ve sensörün kullanımını kolaylaştıran bir ultrasonik modüle sahiptir. Sensörü projeye başarıyla entegre ettik ve oyunlarımızı eller serbest olarak tarayabilir ve ekran görüntülerini ekranda görebiliriz.
GPIO başarımızdan güç alarak, en sevdiğimiz Raspberry Pi HAT, Pimoroni’nin Explorer HAT Pro’sunu GPIO başlığına bağladık ve Explorer HAT’ın erişilebilir olduğunu doğrulayabiliriz. Ancak, uzun başlık pimleri, barkod tarayıcı üzerinde boşluk sağlamak için yeterince uzun değil. Bize birkaç milimetre daha açıklık sağlayan başka bir GPIO başlığı ekledik. Pimoroni’nin test.py dosyasını inceledik ve tüm işlevler mevcuttu. Daha sonra oyun tarayıcı test kodumuza küçük bir Explorer HAT kodu karıştırdık, böylece bir oyunu tararken belirli bir LED rengi yanar ve bir motor döner. Yalnızca dört satır kodla bu beklediğimiz gibi çalıştı ve bu, Barkod Okuyucu HAT’ı yeni bir girdi ve kontrol aracı olarak kullanarak projelerimize ekleyebileceğimiz anlamına geliyor.
Barkod Okuma
Barkodlar her türlü formatta gelir. Çoğunlukla market, kitap ve dergilerin barkodlarına alışkınız. Ancak son on yılda, çok daha fazla veriyi kolayca sindirilebilen bir formatta kodlamak için QR kodları (Hızlı Yanıt) kodları kullanıldı.
Tom’s Hardware: The Pi Cast’ın yakın tarihli bir bölümünde, bir izleyici Barkod Okuyucu HAT’ın QR kodlarıyla kullanılıp kullanılamayacağını sordu, bu nedenle Tom’un Donanım URL’sini içeren kendi QR kodumuzu oluşturduk ve SB Components Barkod Okuyucu HAT’nin Raspberry Pi HAT olarak veya klavye öykünmesi yoluyla QR kodlarıyla kullanılabilir.
Barkod Okuyucu HAT Proje Fikirleri
Barkodlar sadece bakkaliye ürünleriniz için değildir. Kendi barkodlarınızı oluşturmanın birçok yolu vardır, bu nedenle Barkod Okuyucu HAT, projeleri bir kart dalgasıyla kontrol etmek için kullanılabilir. Konferanslarda veya iş yerinde, Barkod Okuyucu HAT, QR kodlu kartvizitleri taramak ve bir veritabanına kaydetmek için kullanılabilir. Sınıfta, öğrenciler katılımı kaydetmek veya etkileşimli ekranları kontrol etmek için QR kodlarını kullanabilirler.
Sonuç olarak
Bu, küçük bir niş olsa da, eğlenceli küçük bir HAT. 50 doların biraz üzerinde bu herkes için bir HAT değil, ancak form faktörü ve kullanım kolaylığı, Pi projelerine barkod girişi eklemek isteyenlere fayda sağlayacaktır. Barkod Okuyucu HAT, diğer HAT’larla birlikte kullanıldığında gerçekten kendine gelir.