pharmacy-pos-qr-system/backend/samples/barcode_reader_README.md
시골약사 b4de6ff791 feat: 통합 테스트 및 샘플 코드 추가
- test_integration.py: QR 토큰 생성 및 라벨 테스트
- samples/barcode_print.py: Brother QL 프린터 예제
- samples/barcode_reader_gui.py: 바코드 리더 GUI 참고 코드

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-23 16:36:41 +09:00

3.5 KiB

허니웰 바코드 리더기 COM 포트 리딩 프로그램

COM3 포트에 연결된 허니웰 바코드 리더기에서 바코드를 실시간으로 읽어 터미널에 출력하는 Python 프로그램입니다.

필수 라이브러리 설치

pip install pyserial

사용 방법

1. 기본 실행 (COM3 포트, 9600 bps)

python barcode_reader.py

2. 다른 COM 포트 사용

python barcode_reader.py --port COM5

3. 통신 속도 변경

python barcode_reader.py --baudrate 115200

4. 사용 가능한 COM 포트 목록 확인

python barcode_reader.py --list-ports

출력 예시

[시작] 바코드 리더기 연결 중...
포트: COM3
속도: 9600 bps
------------------------------------------------------------
[성공] COM3 포트 연결 완료!
[대기] 바코드를 스캔해주세요... (종료: Ctrl+C)
============================================================

[스캔 #1] 2026-01-07 15:30:45
바코드: 8801234567890
길이: 13자
원본(HEX): 383830313233343536373839300d0a
------------------------------------------------------------
[스캔 #2] 2026-01-07 15:30:52
바코드: ABC123XYZ
길이: 9자
원본(HEX): 4142433132335859 5a0d0a
------------------------------------------------------------

프로그램 종료

  • Ctrl + C 키를 눌러 프로그램을 종료합니다.
  • 종료 시 총 스캔한 바코드 개수가 표시됩니다.

트러블슈팅

1. "포트 연결 실패" 오류

원인:

  • COM3 포트가 다른 프로그램에서 사용 중
  • 바코드 리더기가 제대로 연결되지 않음
  • 잘못된 포트 번호

해결 방법:

# 1. 사용 가능한 포트 목록 확인
python barcode_reader.py --list-ports

# 2. 올바른 포트 번호로 실행
python barcode_reader.py --port COM5

2. 바코드가 읽히지 않음

확인 사항:

  • 바코드 리더기의 LED가 켜지는지 확인
  • 바코드 리더기 설정 확인 (USB-COM 모드인지)
  • 케이블 연결 상태 확인

3. 글자가 깨져서 나옴

원인:

  • 잘못된 통신 속도(baudrate) 설정

해결 방법:

# 다른 통신 속도 시도
python barcode_reader.py --baudrate 115200
python barcode_reader.py --baudrate 19200

허니웰 바코드 리더기의 일반적인 통신 속도:

  • 9600 bps (기본값)
  • 19200 bps
  • 38400 bps
  • 115200 bps

허니웰 바코드 리더기 설정

일부 허니웰 바코드 리더기는 USB-COM 모드로 전환해야 할 수 있습니다.

USB-COM 모드 활성화 방법:

  1. 바코드 리더기 매뉴얼에서 "USB Serial Emulation" 설정 바코드 찾기
  2. 해당 바코드 스캔하여 USB-COM 모드 활성화
  3. 컴퓨터 재연결 후 장치 관리자에서 COM 포트 확인

장치 관리자에서 COM 포트 확인

  1. Windows + X장치 관리자 실행
  2. 포트(COM & LPT) 항목 확장
  3. 바코드 리더기의 COM 포트 번호 확인 (예: COM3, COM5 등)

코드 구조

# 주요 함수
read_barcode_from_com3(port, baudrate, timeout)
  ├─ 시리얼 포트 열기
  ├─ 바코드 데이터 실시간 읽기
  ├─ UTF-8/ASCII 디코딩
  └─ 터미널 출력

list_available_ports()
  └─ 사용 가능한 COM 포트 목록 출력

참고

  • 프로그램은 바코드 스캔 시 자동으로 감지하여 출력합니다.
  • 각 바코드마다 스캔 번호, 시간, 내용, HEX 값이 표시됩니다.
  • 바코드 리더기는 일반적으로 스캔 후 개행문자(\r\n)를 전송합니다.