Portable adapter for barcode scanners



Similar documents
Microtronics technologies Mobile:

A Barcode Primer for Manufacturers Dr. Peter Green BellHawk Systems Corporation

[PROJECT PLAN: IPOD BARCODE SCANNER]

Microcontroller Based Low Cost Portable PC Mouse and Keyboard Tester

Application Note 132. Introduction. Voice Video and Data Communications using a 2-Port Switch and Generic Bus Interface KSZ MQL/MVL

Open Architecture Design for GPS Applications Yves Théroux, BAE Systems Canada

Wireless Security Camera

Location-Aware and Safer Cards: Enhancing RFID Security and Privacy

Quick Installation. A Series of Intelligent Bar Code Reader with NeuroFuzzy Decoding. Quick Installation

LEN s.r.l. Via S. Andrea di Rovereto 33 c.s CHIAVARI (GE) Tel Fax mailto: len@len.it url: http//

MICROPROCESSOR. Exclusive for IACE Students iacehyd.blogspot.in Ph: /422 Page 1

CSE2102 Digital Design II - Topics CSE Digital Design II

WinProladder software package

AUTOMATIC NIGHT LAMP WITH MORNING ALARM USING MICROPROCESSOR

1 PERSONAL COMPUTERS

The Keyboard One of the first peripherals to be used with a computer and is still the primary input device for text and numbers.

Chapter 3: Computer Hardware Components: CPU, Memory, and I/O

Android based Alcohol detection system using Bluetooth technology

Laser Barcode Scanner

A RF18 Remote control receiver MODULE

Data Transfer between Two USB Devices without using PC

Evolving Bar Codes. Y398 Internship. William Holmes

ERSSTOCK INVENTORY SOFTWARE FOR PC. USER GUIDE - v 1.00

Hello and welcome to this training module for the STM32L4 Liquid Crystal Display (LCD) controller. This controller can be used in a wide range of

Remote control circuitry via mobile phones and SMS

Automatic Ration Material Distributions and Payment System Based on GSM and RFID Technology

Block 3 Size 0 KB 0 KB 16KB 32KB. Start Address N/A N/A F4000H F0000H. Start Address FA000H F8000H F8000H F8000H. Block 2 Size 8KB 16KB 16KB 16KB

COMPUTER HARDWARE. Input- Output and Communication Memory Systems

Intelligent Fleet Management System Using Active RFID

A+ Guide to Managing and Maintaining Your PC, 7e. Chapter 1 Introducing Hardware

How To Create A Unified Messaging System

8051 MICROCONTROLLER COURSE

Lecture N -1- PHYS Microcontrollers

ANYTIME ANYPLACE-REMOTE MONITORING OF STUDENTS ATTENDANCE BASED ON RFID AND GSM NETWORK

KEYWORDS: Cellphone, Braille language, Visually impaired people(vip), Microcontroller, Decoder, Latches, DC motors.

Intelligent Home Automation and Security System

E-TRACKING SYSETEM FOR MUNICIPAL SOLID WASTE MANAGEMENT USING RFID TECHNOLOGY

Design of Wireless Home automation and security system using PIC Microcontroller

Chapter 9 Input/Output Devices

ALL-USB-RS422/485. User Manual. USB to Serial Converter RS422/485. ALLNET GmbH Computersysteme Alle Rechte vorbehalten

Bar Codes For Inventory

Accurate Measurement of the Mains Electricity Frequency

HT580 User Reference Guide. Version 1.0

Pen Drive to Pen Drive and Mobile Data Transfer Using ARM

Fall Lecture 1. Operating Systems: Configuration & Use CIS345. Introduction to Operating Systems. Mostafa Z. Ali. mzali@just.edu.

STEPPER MOTOR SPEED AND POSITION CONTROL

Development of Low Cost Private Office Access Control System(OACS)

Firmware version: 1.10 Issue: 7 AUTODIALER GD30.2. Instruction Manual

MS9500 SERIES VOYAGER PRODUCT GUIDE. Single Line, Hand-Held, 1D, High-Density 1D, PDF-417 2D and Wireless Laser Bar Code Scanners

Using Xbee in Serial Communication

Alliance System Ordering Guide

Design and Implementation of an Accidental Fall Detection System for Elderly

Wi-Fi Barcode Scanner

Wireless monitoring system for temperature and humidity based on ZigBee

INTERNATIONAL JOURNAL OF ELECTRONICS AND COMMUNICATION ENGINEERING & TECHNOLOGY (IJECET)

Design And Implementation Of Bank Locker Security System Based On Fingerprint Sensing Circuit And RFID Reader

OPTREX CORP. LCD MODULE

2100 POS System User Guide

Wireless Laser Barcode Scanner ils 6300BU. User s Manual

The I2C Bus. NXP Semiconductors: UM10204 I2C-bus specification and user manual HAW - Arduino 1

Keywords ATM Terminal, Finger Print Recognition, Biometric Verification, PIN

Construction and Application of a Computer Based Interface Card

HD61202U. (Dot Matrix Liquid Crystal GraphicDisplay Column Driver)

How To Design A Code Lock System With A Status Display On A Cell Phone And A Password Code On A Smart Phone

Tutorial for MPLAB Starter Kit for PIC18F

The Clavinova-Computer Connection

Online Communication of Critical Parameters in Powerplant Using ZIGBEE

Laser Barcode Scanner User s Manual

Barcoding 101 for Manufacturers: What You Need to Know to Get Started

January 2002

Disturbance Recoder SPCR 8C27. Product Guide

EDK 350 (868 MHz) EDK 350U (902 MHz) EnOcean Developer Kit

Microcontroller Display Interfacing Techniques

Chapter 6 The BIOS Setup Program

E-Blocks Easy RFID Bundle

Synergy Controller Application Note 4 March 2012, Revision F Tidal Engineering Corporation Synergy Controller Bar Code Reader Applications

C Programming. for Embedded Microcontrollers. Warwick A. Smith. Postbus 11. Elektor International Media BV. 6114ZG Susteren The Netherlands

Internet and Computing Core Certification Guide Module A Computing Fundamentals

Single channel data transceiver module WIZ2-434

DKWF121 WF121-A B/G/N MODULE EVALUATION BOARD

Process Control and Automation using Modbus Protocol

Basics of Computer 1.1 INTRODUCTION 1.2 OBJECTIVES

Machine Architecture and Number Systems. Major Computer Components. Schematic Diagram of a Computer. The CPU. The Bus. Main Memory.

PART B QUESTIONS AND ANSWERS UNIT I

Implementing a Digital Answering Machine with a High-Speed 8-Bit Microcontroller

CREATING YOUR OWN RF SWITCHING SYSTEM

Instruction manual. testo easyheat Configuration and Analysis software

Display Message on Notice Board using GSM

Serial Communications

The Increasing Use of Cordless Handheld Bar Code Readers, Technology, and Applications. A White Paper by Datalogic Scanning, Inc.

EMBEDDED GSM MONITOR AND CONTROL USING ANDROID APPLICATION

Technical Description. Multifunctional Desk-Top Call Station Digital Version 8, 16 Keys L.No ,

A DESIGN OF DSPIC BASED SIGNAL MONITORING AND PROCESSING SYSTEM

FEATURES DESCRIPTION APPLICATIONS BLOCK DIAGRAM. PT2272 Remote Control Decoder

Computer Hardware HARDWARE. Computer Hardware. Mainboard (Motherboard) Instructor Özgür ZEYDAN

Mini Portable Reader (MPR) Model HS 5900L F

International Journal of Engineering Research & Management Technology

Document Management Solutions

Security & Chip Card ICs SLE 44R35S / Mifare

Why you need to monitor serial communication?

Transcription:

Microprocessors and Microsystems 23 (1999) 217 223 Portable adapter for barcode scanners I.Y. Soon a, *, C.K. Yeo b, Y.H. Sng a a School of Electrical and Electronics Engineering, Nanyang Technological University, Nanyang Avenue, S 639798, Singapore, Singapore b School of Applied Science, Nanyang Technological University, Nanyang Avenue, S 639798, Singapore, Singapore Received 10 November 1998; received in revised form 4 April 1999; accepted 20 May 1999 Abstract Barcode technology presents management with rapid, timely and accurate information and provides quick turnaround times for customers. Its popularity can be attested by its use in all the sectors of the industry. Ordinary barcode scanners are linked to personal computers and hence render the scanner non-portable unless the scanner is connected to a notebook or palm-top computer. One class of portable barcode scanners utilises wireless transmission technology, usually radio frequency, which faces problems of limited coverage and radio interferences. These devices often have a prohibitive price tag, as they comprise a handheld unit and a base station. Another type of portable scanners has built-in memory units to store the data collected. However, the price is still high. In both cases, users cannot make use of their existing non-portable scanners but need to replace them with portable ones. This paper describes the design of a low-cost portable adapter for commercial barcode scanners. The portable adapter transforms any ordinary barcode scanner into a portable standalone data collector. It essentially comprises an 8-bit microcontroller with a local memory module for storing the barcodes. A Liquid Crystal Display and keypad are also integrated for error checking and correction purposes. Barcode information can subsequently be uploaded to the host computer via the keyboard port or RS232 link. 1999 Elsevier Science B.V. All rights reserved. Keywords: Portable Adapter; Bar code scanner; Data collector 1. Introduction The use of barcodes is one of the most important developments in retail automation, library automation and factory automation. In fact, its spectrum of use spans all industries from the traditional retail industry, to manufacturing and warehousing, to postal and the health industry. Barcodes are extensively used for product inventory control, retail management, supply and stocking purposes just to name some applications. Its main advantage lies in its ability to provide safe and rapid availability of information about a commodity, be it an article, a parcel or a product. It semiautomates the manual data collection process and eradicates the element of human error in data entry. Given its popularity, newer forms of barcodes such as 2D barcodes [1] and colour barcodes [2] have been proposed. Most barcode scanners are, however integrated with point-of-sale equipment and are thus not suitable for stock taking purposes where the operator has to bring the scanner physically to the warehouse or storeroom location. For bulk items such as props or sets in a movie studio, it is near impossible to move them to the fixed based scanner for * Corresponding author. Tel.: 65-7905638; fax: 65-7920415. E-mail address: eiysoon@ntu.edu.sg (I.Y. Soon) stocktaking. One way to overcome this problem is to plug the scanner to a computer such as a notebook or palm-top when on the move. This is cumbersome, as both the scanner and the computer have to be moved about. Moreover, the effective reach of the scanner is limited by the length of the cable linking it to the computer. Another means to overcome this problem is to use portable wireless scanners (see example in Ref. [3]). Most of these wireless scanners make use of radio frequency (RF) for their transmission for larger coverage. A base station, which is usually plugged to a computer, is required for communication with the scanner. They, however, come with a pricey tag of about US $1650 for an entry level product as compared to ordinary non-portable scanners costing about US $150 each. In addition, wireless barcode scanners also suffer from limited range and radio interference problems. From the scanner manufacturer s perspective, RF scanners incur higher design and manufacturing costs, as such wireless devices require approval by the Federal Communications Commission [4]. This cost is ultimately passed on to the customers. Other portable scanners with built-in memory modules are priced from US $750 to US $1350 depending on the type of scanner option purchased (refer to examples in Ref. [5]). Besides the cost factor, the common problem with using the above types of portable 0141-9331/99/$ - see front matter 1999 Elsevier Science B.V. All rights reserved. PII: S0141-9331(99)00027-7

218 I.Y. Soon et al. / Microprocessors and Microsystems 23 (1999) 217 223 Fig. 1. Overall block diagram. scanners is the need to replace existing non-portable ones. Users have to discard their current scanners or they have to use a different scanner when on the move, thereby incurring undue costs. This paper proposes a portable scanner adapter, which can be attached to any barcode scanner and function as a standalone handheld unit. It is a low-cost solution based on the 8051 microcontroller. It is attached to a barcode scanner via the keyboard interface. The resultant portable scanner will have a local memory module of 64 kb for storing all the barcodes scanned, which can then be uploaded at a convenient time to the host computer via either a RS232 link or a keyboard port. 2. System design The overall system design is shown in Fig. 1. The barcodes scanned by the attached scanner will be downloaded to the memory through the microcontroller. At the Table 1 Input output port assignment of the 8051 Ports Functions Port 0 8-bit data bus multiplexed with lower 8-bit address bus (RAM interface) Port 1 data port for the 8255 PPI Port 2 upper 8-bit address bus (RAM interface) Port 3 serial communications & 8255 PPI controls 3.0 receive Line 3.1 transmit Line 3.2 scanner clock input/output 3.3 8255 PPI chip select 3.4 8255 PPI address A0 interface 3.5 8255 PPI address A1 interface 3.6 read signal to RAM 3.7 write signal to RAM same time, the microcontroller will also interpret the barcodes and displayed them on the Liquid Crystal Display (LCD) panel. This will allow the operator to visually check the barcodes for errors if required. If errors are encountered, the keypad will be used to perform the necessary corrections. The other function of the keypad is to allow the operator to enter the quantity of the goods. When the data collection process is completed, the data stored in the memory will be uploaded into the host computer via the keyboard port Also there is an option for uploading using RS232 link. 2.1. Microcontroller An 8-bit microcontroller (8051/8751) is used as the brain of the system. The 8051 microcontroller is suitable for the application as it is low-cost and most of the interfacing required is with 8-bit peripherals. The 8051 microcontroller also supports serial communication thus rendering it suitable for accepting serial data from the scanner as well as reproducing the serial data for uploading to the computer. There are four ports (Ports 0 3) available for use in the 8051 microcontroller. Port 0 and Port 2 are used to interface with the external 64 kb RAM unit. Port 0 is used to multiplex between the 8-bit data bus and the lower 8-bits of the address bus. Port 2 is used by the microcontroller for the upper 8-bits of the address bus. Port 3 is used mainly for serial communications and controlling the 8255 programmable peripheral interface (PPI). The first two pins on Port 3 (Ports 3.0 3.1) are used for serial communication purposes. Port 3.0 is the receiving (RXD) line for reading serial data from the scanner while Port 3.1 is used as a transmit (TXD) line for downloading to the computer. Port 3.2 is used to read the scanner clock during scanning and to generate the clock signal for the keyboard input during downloading. Port

I.Y. Soon et al. / Microprocessors and Microsystems 23 (1999) 217 223 219 Fig. 2. Schematic of the 64 kb external RAM. 3.6 and Port 3.7 generate the external read (RD) and write (WR) signals respectively for the external RAM and the 8255 PPI. Port 3.3 is used to chip select the 8255 PPI while Port 3.4 and Port 3.5 are connected to the A0 and A1 pin of the 8255 PPI. The remaining port, Port 1, is used as a data port for the 8255. Table 1 summarises the function of each of the 8051 ports. 2.2. Memory module Fig. 2 shows the schematic of the external RAM used to store the barcodes scanned. A 64 Kbyte RAM which is sufficient for 5000 13-bit barcodes is chosen for the system. An address latch 74373 is used for latching the lower address lines (A0 A7). Fig. 3. Interface between the keypad and the PPI.

220 I.Y. Soon et al. / Microprocessors and Microsystems 23 (1999) 217 223 Fig. 4. Interface between the LCD and the 8051. 2.3. PPI The 8255 PPI is used as an interface to the LCD panel as well as the keypad module. The 8255 is used to expand the number of available ports and is programmed as mode 0 which is simple input and output (IO) without handshaking. The 8255 PPI has three 8-bit IO ports A, B and C. Port A is used to interface with the keypad detection signal. Fig. 3 shows the details of the inter-connection between the keypad and the PPI. PA0 PA3 are connected to pins A, B, C and D, respectively, of the keypad decoder to acknowledge a key-press, and pin PA4 is connected to the data available pin of the keypad decoder to receive signals when a key is pressed. The other three pins of Port A remain unused. Port B is used to interface the microcontroller and the LCD unit. Data is sent from Port 0 of the microcontroller to the data port of the LCD. The detailed interface between the PPI and the LCD is shown in Fig. 4. Port C is used for LCD control. PC0 is used to select the register in the LCD while PC1 is controlling the read/write line of the LCD. PC2 enables the LCD control panel. Table 2 summarises the port assignment of the 8255 PPI. 2.4. Keypad module The keypad used is a 16-key miniature telephone type which is basically a switch matrix comprising four rows Table 2 Input output port assignment of the 8255 PPI Ports Functions Port A keypad interface A.0 A.4 keypad inputs A.5 A.7 Unused Port B LCD panel data lines Port C LCD panel control lines C.0 LCD panel internal register select line C.1 LCD panel read/write control C.2 LCD panel enable C.3 C.7 Unused by four columns. It is interfaced directly with a 74C922 keypad encoder as shown in Fig. 3. The keypad encoder plays an important role as it converts a key switch closer to its 4-bit nibble equivalent. The keyboard scan rate and debounce period can be controlled by altering the oscillator s capacitance and key bounce mask s capacitance. The output of the keypad decoder is connected to the port A of the 8255. 2.5. Liquid crystal display A single line, 16-character alphanumeric dot matrix LCD unit is used. It is self-contained and incorporates a CMOS microprocessor and all the supporting devices such as character generator ROM and display drivers. The module utilises a 5 7 dot matrix format with a cursor and is capable of displaying the full ASCII character set plus up to eight additional user programmable custom symbols. The displays are virtually burden free to the microcontroller. Internal registers can store up to 80 characters and all updating and refreshing are done internally. Software development is greatly eased by simple instructions. 2.6. Power supply Four AA Nickel Cadnium batteries are connected in series to produce a supply voltage of 4.8 V which is sufficiently close to 5 V for our circuit. They are rechargeable and easily available. They can store sufficient charge to power the scanner and the portable unit for a duration of up to 3 h which is sufficient for most purposes. The battery unit can be recharged during downloading of data. A battery low warning indicator is incorporated to alert the user when the battery charge is low. 3. Software design The software design as shown in Fig. 5, is essentially a continuous repetitive flow of processing cycles. Upon activation of the portable adapter, an initialisation is performed on the 8255 PPI and the LCD. The repetitive cycle

I.Y. Soon et al. / Microprocessors and Microsystems 23 (1999) 217 223 221 Fig. 5. Overall system flowchart. comprises a polling to check for activation of any inputs, either via the keypad or via the attached scanner. The adapter then reads from the appropriate devices accordingly. If an input is detected from the scanner, the scanned barcode will be displayed on the LCD and stored in the memory unit. If the inputs are via the keypad, the software will respond according to the commands issued. Details of the keypad commands are given in Section 3.2. The cycle then repeats itself. The entire software therefore comprises the following five essential modules as shown in Fig. 5. 3.1. Initialisation This module performs initialisation for both the 8255 PPI and the LCD when the portable adapter is activated. The 8255 PPI is set to operate in mode 0, i.e. simple input output without handshaking. In this mode, the PPI ports functions as level-sensitive inputs or latched outputs. Initialisation to the LCD is done to ensure that the display windows of the LCD are correctly formatted. It then clears the entire display and is ready for operation. 3.2. Keypad read The keypad modules provide users with a selection of actions to be taken. Functions supported includes the uploading of barcodes from the proposed portable adapter to the host computer, clearing of the 64 kb RAM upon successful uploading, entry of scanned items quantity and deletion of the last read barcode. 3.3. Memory storage The memory module allows the microcontroller to first store the scanned barcode in its internal RAM, process and filter the barcodes according to the instruction from the

222 I.Y. Soon et al. / Microprocessors and Microsystems 23 (1999) 217 223 Table 3 Summary of comparison Cost Portability User acceptability Versatility Proposed adapter US $15 unlimited range wide user base extremely versatile Portable scanner (non-rf) US $500 to US $1000 unlimited range narrow user base versatile Portable scanner (RF) From US $1900 upwards limited range narrow user base versatile Ordinary handheld nonportable scanner US $120 onwards cost of computer not portable/ unlimited Range if linked to portable PC / limited Reach wide user base versatile keypad. The processed signal is then passed saved in the external RAM. Data is stored sequentially in the RAM. 3.4. Display Upon initialisation, the LCD will display the scanned barcodes read by the attached scanner. The barcodes are read from port B of the PPI as routed by the microcontroller. 3.5. Serial communication This module is responsible for the serial communication that takes place during the scanning operation (between the attached scanner and the proposed adapter) and the uploading operation (between the adapter and the host computer). For interface via the keyboard port, the keyboard-input clock needed to synchronise the transfer is generated by this module. For transfer via the RS232 link, the clock generation module will be inactivated. 4. Evaluation To highlight the merits of the proposed adapter, a comparison is made with commercially related products. The four factors used in the comparison are namely, cost, portability, user acceptability and versatility. The commercially related products used in the comparison are handheld portable scanners [5] which do not make use of RF technology and those portable ones using RF technologies [3]. In addition, comparison is made with ordinary handheld nonportable scanners. The summary of the comparison is tabulated in Table 3. 4.1. Cost In terms of cost, the proposed adapter is the cheapest as it can be linked to any existing scanner without additional components. Other portable scanners incur the additional cost of a built-in reader. Moreover, for the RF type of portable scanners, a base station has to be purchased to communicate with the handheld device. The ordinary handheld scanner is considered extremely expensive as it requires a portable computer to be attached to it to render it portable. The scanner on its own is certainly cheap. 4.2. Portability From the portability perspective, the proposed adapter has unlimited range as it is a standalone unit in the true sense of the word. It is likewise for the non-rf portable scanner. The RF based scanner suffers a limited range, as it has to be within the base station s coverage. As for the ordinary handheld scanner, in itself it is non-portable. When linked to a portable computer, it enjoys unlimited range as both the scanner and the computer can be moved together. However, there is a constraint on reach as imposed by the cable linking the scanner to the computer. 4.3. User acceptability Both the proposed adapter and the ordinary handheld scanner enjoy a wide user base and hence good user acceptability. This stems from the fact that users can make use of their existing scanners without having the need to purchase new ones, unlike the case of the portable scanners. Users therefore do not need to adapt to new scanners and can reap the benefits of portability as well as familiarity with existing scanners. Moreover, for the RF version, an additional base station has to be purchased. 4.4. Versatility The proposed adapter is considered the most versatile as it can support all types of barcode scanners with keyboard or RS232 interfaces. In other words, it can support barcodes of all specifications. The portable scanners and the handheld non-portable scanners are versatile as the built-in readers are usually designed to support a few common types of barcodes. However, compared to the concept of use adopted in the proposed adapter, the proposed adapter is more universal in the support of the various types of barcodes. 5. Conclusion This paper has presented a new concept of making ordinary barcode scanners portable through the use of a low-cost portable adapter. The portable adapter is developed based on the 8051 microcontroller and it can be linked to any

I.Y. Soon et al. / Microprocessors and Microsystems 23 (1999) 217 223 223 handheld barcode scanner via a keyboard interface or a RS232 link. It has a 64 kb RAM to store the scanned barcodes and these data can later be uploaded to the host computer. In comparison with commercially available portable barcode readers, the proposed adapter is low cost, and enjoys an unlimited range. Given the nature of use of the adapter, it is totally portable and is very versatile being capable of supporting all types of barcode specifications. As it can be attached to any scanner, it enjoys a wide user acceptability since users do not need to make new investments on RF base station, portable computers or new scanners. References [1] http://www.adams1.com/pub/russadam/spec.html, Bar Code 1 Specifications, 1998. [2] S.Erhard, S. Axel, Vision-based reading system for colour-coded barcodes, Proceedings of SPIE The International Society for Optical Engineering, vol. 2665, 1996. [3] Worthington Data Solutions, http://gate.cruzio.com/-wds/rflasers.html, Cordless 2-way RF laser scanner, 1997 1998. [4] Code of Federal Regulations, Title 47, Volume 2, Parts 27, Wireless Communications Services, 1 October 1997, the US Government Printing Office via GPO Access, [CITE: 47CFR27]. [5] Worthington Data Solutions, http://gate.cruzio.com/-wds/portables, Tricoder portable bar code readers, 1997 1998. Ing Yann Soon received his BEng (Hons) and MSc degrees in 1987 and 1991, respectively, both in electrical engineering, from the National University of Singapore. He was with Chartered Industries of Singapore as a Senior Engineer before joining the Nanyang Technological University in 1991. His current research interests include speech enhancement, image/ video processing and digital signal processorbased applications. Chai Kiat Yeo received her BEng (Hons) and MSc degrees in 1987 and 1991, respectively both in electrical engineering, from the National University of Singapore. She was a Principal Engineer with Singapore Technologies Electronics & Engineering Limited prior to joining the Nanyang Technological University in 1993. Her current research interests include array and digital signal processing, microprocessor based applications and Internet technologies. Yeow Hong Sng received his BSc (Hons), MSc and PhD from the University of Strathclyde, University of Manchester Institute of Science and Technology and Nanyang Technological University in 1981, 1986 and 1998, respectively. He is currently an Associate Professor with the Nanyang Technological University, Singapore. His research areas include array signal processing and beamforming.