Summary of Barcode Reading using Roborealm Output on Arduino LCD
This project demonstrates how to build a Barcode Reader using a webcam, Roborealm software, and an Arduino with an LCD screen. The Arduino is programmed to display barcode data received via serial communication. Roborealm processes the webcam's video feed, decodes various barcode types, and sends the data to the Arduino. The setup includes interfacing an LCD (JHD162A) with Arduino UNO and using a potentiometer for display adjustments. The project uses a trial version of Roborealm for barcode decoding.
Parts used in the Barcode Reader Project:
- Arduino UNO
- LCD (JHD162A)
- Roborealm software
- Potentiometer
- Webcam (Logitech Quickcam)
This Instructable shows how to create a Barcode Reader using only a webcam together with Roborealm and Arduino. The webcam used in this demonstration is the Logitech Quickcam and the LCD screen is labelled, JHD162A.
What you need for this project:
1. Arduino UNO
2. LCD
3. Roborealm
4. Potentiometer
Step 1: Coding the Arduino
First of all, start by coding the Arduino to successfully output words on the LCD. The example of how to interface LCD with Arduino is shown in http://arduino.cc/en/Tutorial/LiquidCrystal . My modified code is attached below. The program basically initializes the LCD and just wait for any input from the serial port. It displays the current received data only resets the buffer when a new set of data is received. The BUFFSIZE is set to 16 because the LCD can only display up to 16 characters per row.

Step 2: The Robofile
For this project, I downloaded the 1 month trial version of Roborealm from their website (http://www.roborealm.com ). To connect the Arduino, you have to use the Serial function on Roborealm.
Robofile
__________________________________________________________
<head><version>2.42.6</version></head>
<Barcode>
<check_ean_8>TRUE</check_ean_8>
<check_codabar>FALSE</check_codabar>
<check_maxicode>TRUE</check_maxicode>
<require_crc>FALSE</require_crc>
<check_code_39>TRUE</check_code_39>
<check_orientation>TRUE</check_orientation>
<check_upc_e>TRUE</check_upc_e>
<check_i2of5>FALSE</check_i2of5>
<check_upc_a>TRUE</check_upc_a>
<check_code_128>TRUE</check_code_128>
<check_ean_13>TRUE</check_ean_13>
</Barcode>
<If_Statement>
<comparison_1>16</comparison_1>
<variable_1>BARCODE</variable_1>
<comparison_4>-1</comparison_4>
<comparison_type_4>-1</comparison_type_4>
<join_2>-1</join_2>
<value_2>1</value_2>
<comparison_type_3>-1</comparison_type_3>
<variable_2>a</variable_2>
<comparison_3>-1</comparison_3>
<join_3>-1</join_3>
<comparison_type_2>3</comparison_type_2>
<comparison_2>1</comparison_2>
<has_else>FALSE</has_else>
</If_Statement>
<Serial>
2. LCD
3. Roborealm
For more detail: Barcode Reading using Roborealm Output on Arduino LCD