바코드의 원리는 뭘까?


 바코드는 컴퓨터가 판독할 수 있는 굵기가 다른 흑백의 막대를 말합니다. 막대 모양(bar)으로 생긴 부호(code)라는 뜻에서 바코드(barcode)라고 하고, 제품이나 도서 등의 겉면에서 쉽게 찾을 수 있습니다.


https://www.pexels.com/photo/white-and-black-barcode-1243362/

(삑!)



 주로 계산대에서 바코드를 이용하는 모습을 볼 수 있는데, 점원이 스캐너를 이용해 제품 겉면에 있는 바코드에 빛을 비추면 스캐너와 연동된 컴퓨터에 제품의 정보가 뜹니다. 바코드에 무슨 정보가 있길래 스캐너를 비추기만 하면 다양한 정보가 나오는 걸까요?


 바코드는 1948년 대학생원이었던 버나드 실버와 그의 친구인 노르만 조지프 우들랜드가 발명했습니다. 바코드는 이진법의 표시체계를 이용하는데, 이진법은 숫자 01만을 이용하는 수 체계를 말합니다.


기본 바코드
(검은 바탕에 네 개의 흰 줄)


 그들이 제안한 바코드는 세 줄짜리 기본 바코드로 위의 그림을 보면 검은 바탕에 4개의 흰 줄이 있습니다. 가장 왼쪽에 있는 흰 줄을 기준선이라고 하고, 기준선을 제외한 왼쪽의 흰 줄부터 차례대로 2, 3, 4번 선이라고 합니다.



 2~4번 선을 검은색 바탕으로 칠했을 때 형태를 달리할 수 있는 경우의 수는 총 8개입니다. 이를 이진법으로 해석해보면 그림 1은 기준선 옆에 3개의 흰 줄이 있으므로 111(2)이라고 할 수 있고, 7(=1*2^2 + 1*2^1 + 1*2^0)이란 값을 구할 수 있습니다. 다음으로 그림 6을 보면 3번 선에만 흰 줄이 있으므로 010(2)이라고 할 수 있고, 이는 2(=0*2^2 + 1*2^1 + 0*2^0)라는 값을 구할 수 있습니다.

 

바코드 기본

(8개의 그림 형태)


 위와 같은 방식으로 8개의 그림을 모두 판독해보면 그림 1번부터 8번까지는 차례대로 7, 6, 5, 4, 3, 2, 1, 0이란 값이 나오는데, 각 숫자에 넣고 싶은 정보를 넣고, 흑백의 막대기로 표현해 놓은 게 바코드입니다.



 스캐너로 바코드에 빛을 비춰주면 반사하는 정도를 통해 흑백을 구분하여 01로 판독할 수 있고, 해석도 할 수 있습니다. 그리고 해석한 값에 입력해놓은 정보를 컴퓨터에 보여주는 식으로 이용합니다.(바코드가 흑백인 이유는 빛의 반사율 차이가 커서 비교가 쉽기 때문!)



 여기까지 읽었다면 기본개념은 이해했을 텐데, 8개의 값은 너무 적습니다. 더 많은 정보를 입력하기 위해서는 흰 줄을 늘리면 되고, 흰 줄을 하나 더 늘리면 8(=2^3)에서 16(=2^4)의 정보를 입력할 수 있습니다. 한 줄씩 늘어날 때마다 입력할 수 있는 정보의 수가 기하급수적으로 늘어나므로 필요한 만큼 늘리면 됩니다.


표준형 바코드

(흑백선의 굵기에 차이를 주어 값을 표현할 수도 있습니다 ⓒEAN-13(표준형 바코드) 규격)


 우리나라에서는 표준형 13자리의 KAN(EAN KOREA) 코드를 사용하는데(출판물에서는 국제표준도서번호(ISBN) 13자리를 사용), 앞의 숫자 3개는 국가 코드(한국:880)이고, 다음 숫자 4개는 제조업체 코드, 다음 숫자 5개는 상품의 정보가 담긴 코드입니다. 마지막 숫자 하나는 검증코드(x)로 앞에 나온 바코드 숫자를 조합(조합식은 홀수 번째 자릿수의 합*3(짝수 번째 자릿수의 합)+x=10의 배수)해서 오류를 검증합니다.


ISBN

(ISBN ⓒ한국문헌번호편람)



 참고로 바코드 밑에 있는 숫자는 이진법을 십진법으로 계산해서 적어 놓은 숫자로 스캐너가 바코드를 판독할 수 없을 때 점원이 컴퓨터에 직접 숫자를 입력해서 판독할 수 있게끔 하기 위한 용도로 적어놓습니다. 근데 바코드와 비슷하게 생긴 게 있습니다. QR코드 등으로 일반적으로 우리가 아는 바코드와는 모양이 다른데, 우리가 아는 바코드는 1차원 바코드이고, QR코드 등은 2차원 바코드라고 합니다.


2차원 바코드

(2차원 바코드의 종류)


 1차원 바코드가 가로 방향으로만 정보를 얻을 수 있었다면, 2차원 바코드는 가로와 세로 방향에서 정보를 얻을 수 있으므로 1차원 바코드보다 약 100배나 많은 정보를 담을 수 있습니다. 덕분에 바코드 자체에 정보를 입력할 수 있고, 다양한 분야에서 활용하고 있습니다.


 근데 왜 굳이 바코드를 사용할까요? 바코드는 종이 외에도 다양한 재질 위에 인쇄할 수 있고, 일부가 손상돼도 어느 정도 해독이 가능하다는 장점이 있습니다. 무엇보다 제작비용이 바코드 1개당 약 5원으로 저렴해서 계속 사용하고 있습니다.



Copyright. 스피드웨건. (유튜브 등 불펌 금지)