KR20240038660A - Robot apparatus for calculating product each customer and preventing collision with customer - Google Patents

Robot apparatus for calculating product each customer and preventing collision with customer Download PDF

Info

Publication number
KR20240038660A
KR20240038660A KR1020240002324A KR20240002324A KR20240038660A KR 20240038660 A KR20240038660 A KR 20240038660A KR 1020240002324 A KR1020240002324 A KR 1020240002324A KR 20240002324 A KR20240002324 A KR 20240002324A KR 20240038660 A KR20240038660 A KR 20240038660A
Authority
KR
South Korea
Prior art keywords
product
area
payment
conveyor
processor
Prior art date
Application number
KR1020240002324A
Other languages
Korean (ko)
Inventor
이현
Original Assignee
이현
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 이현 filed Critical 이현
Priority to KR1020240002324A priority Critical patent/KR20240038660A/en
Publication of KR20240038660A publication Critical patent/KR20240038660A/en

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/06Safety devices
    • B25J19/061Safety devices with audible signals
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0093Programme-controlled manipulators co-operating with conveyor means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation

Abstract

본 발명에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치는 결제를 위해 계산대 컨베이어의 상부 영역에 배치된 복수의 상품 각각의 상품 코드를 판독하여 고객별로 결제 금액 정보를 산출하는 상품 코드 판독을 이용한 상품 계산 로봇 장치로서, 상품을 선택한 고객별로 상기 복수의 상품을 분리시키는 컨베이어 디바이더 및 상기 복수의 상품이 상부 영역에 배치된 상기 계산대 컨베이어를 촬영하여 컨베이어 이미지를 생성하는 촬영부; 상기 컨베이어 이미지로부터 상기 컨베이어 디바이더의 디바이더 위치를 인식하고, 상기 디바이더 위치에 기초하여 상기 계산대 컨베이어의 상부 영역 중에서 결제 상품 영역을 설정하는 프로세서; 및 상품의 가격 정보를 포함하고 상품의 일측에 배치되는 상기 상품 코드가 판독되도록 상품을 파지하여 코드 판독부로 이동시키는 로봇암부;를 포함하고, 상기 프로세서는 상기 결제 상품 영역에 배치되었던 상품의 상품 코드로부터 판독된 가격 정보를 합산하여 고객이 결제할 결제 금액을 나타내는 상기 결제 금액 정보로 산출할 수 있다.The product calculation robot device using product code reading according to the present invention reads the product code of each of a plurality of products placed in the upper area of the checkout conveyor for payment and calculates payment amount information for each customer. Product calculation using product code reading A robotic device, comprising: a conveyor divider that separates the plurality of products for each customer who selects the product, and a photographing unit that generates a conveyor image by photographing the checkout conveyor on which the plurality of products are arranged in an upper area; a processor that recognizes a divider position of the conveyor divider from the conveyor image and sets a payment product area in the upper area of the checkout conveyor based on the divider position; And a robot arm unit that holds the product and moves it to the code reading unit so that the product code, which includes the price information of the product and is placed on one side of the product, is read, wherein the processor determines the product code of the product placed in the payment product area. The price information read from can be added up to calculate the payment amount information indicating the payment amount to be paid by the customer.

Description

고객과의 충돌 방지가 가능한 상품 계산 로봇 장치{Robot apparatus for calculating product each customer and preventing collision with customer}{Robot apparatus for calculating product each customer and preventing collision with customer}

본 발명은 상품 코드 판독을 이용한 상품 계산 로봇 장치에 관한 것으로서, 더욱 상세하게는 로봇암부를 이용하여 계산대 컨베이어에 배치된 상품의 상품 코드를 판독하고, 복수의 고객에 의해 계산대 컨베이어에 배치된 복수의 상품을 고객별로 분리하여 고객 각각의 결제 금액 정보를 산출할 수 있는 상품 코드 판독을 이용한 상품 계산 로봇 장치에 관한 것이다.The present invention relates to a product calculation robot device using product code reading, and more specifically, to read product codes of products placed on a checkout conveyor using a robot arm, and to read product codes of products placed on a checkout conveyor by a plurality of customers. This relates to a product calculation robot device using product code reading that can separate products by customer and calculate payment amount information for each customer.

대형 마트 또는 대형 쇼핑몰에서의 쇼핑은, 구매자가 상품을 구매한 후, 계산대에서 정산한 후 셀프 포장대에서 포장하고, 카트로 포장된 상품을 주차장으로 이동하여 상차하고 주차비를 정산한 후 출차하게 된다.When shopping at a large supermarket or large shopping mall, the buyer purchases the product, settles the bill at the cash register, packs it at a self-packing stand, moves the packaged product to a cart to the parking lot, loads it, settles the parking fee, and then leaves the car. .

한편, 대형 마트 또는 대형 쇼핑몰에서, 구매자들은 한 번에 다량의 상품을 구매하곤 하는데, 양이 많은 경우 계산을 위해서 상품을 계산대에 적치하기 불편하고, 카트 안에 상품을 빼서 계산을 하려면 노약자나 임산부의 경우 힘이 부치기도 하고 키가 작은 사람들도 큰 카트 안에서 상품을 빼기가 쉽지 않다. 이러한 불편함으로 인해 고객 편의를 위해 한 계산대에 복수의 계산원을 배치하기도 한다.Meanwhile, in large supermarkets or large shopping malls, buyers often purchase a large quantity of products at once. However, when the quantity is large, it is inconvenient to place the products on the counter for payment, and it is difficult for the elderly or pregnant women to remove products from the cart and pay. In some cases, it takes a lot of strength, and even short people find it difficult to remove products from a large cart. Due to this inconvenience, multiple cashiers are sometimes placed at one checkout counter for customer convenience.

이를 위해, 로봇을 이용한 무인 계산대 기술을 통해 상품구매를 효율적으로 개선할 필요가 있다.To this end, there is a need to efficiently improve product purchasing through unmanned checkout technology using robots.

한국공개특허 제10-2018-0109107호Korean Patent Publication No. 10-2018-0109107

본 발명의 목적은, 복수의 고객에 의해 계산대 컨베이어에 배치된 복수의 상품을 고객별로 분리하여 고객 각각의 결제 금액 정보를 산출함으로써, 연속하여 배치된 계산대 컨베이어 상의 상품을 고객별로 계산할 수 있는 상품 코드 판독을 이용한 상품 계산 로봇 장치를 제공함에 있다.The purpose of the present invention is to separate a plurality of products placed on the checkout conveyor by a plurality of customers by customer and calculate payment amount information for each customer, thereby providing a product code that can calculate the products on the checkout conveyor placed in succession for each customer. To provide a product counting robot device using reading.

본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시예에 의해 보다 분명하게 이해될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.The objects of the present invention are not limited to the objects mentioned above, and other objects and advantages of the present invention that are not mentioned can be understood by the following description and will be more clearly understood by the examples of the present invention. Additionally, it will be readily apparent that the objects and advantages of the present invention can be realized by the means and combinations thereof indicated in the patent claims.

본 발명에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치는 결제를 위해 계산대 컨베이어의 상부 영역에 배치된 복수의 상품 각각의 상품 코드를 판독하여 고객별로 결제 금액 정보를 산출하는 상품 코드 판독을 이용한 상품 계산 로봇 장치로서, 상품을 선택한 고객별로 상기 복수의 상품을 분리시키는 컨베이어 디바이더 및 상기 복수의 상품이 상부 영역에 배치된 상기 계산대 컨베이어를 촬영하여 컨베이어 이미지를 생성하는 촬영부; 상기 컨베이어 이미지로부터 상기 컨베이어 디바이더의 디바이더 위치를 인식하고, 상기 디바이더 위치에 기초하여 상기 계산대 컨베이어의 상부 영역 중에서 결제 상품 영역을 설정하는 프로세서; 및 상품의 가격 정보를 포함하고 상품의 일측에 배치되는 상기 상품 코드가 판독되도록 상품을 파지하여 코드 판독부로 이동시키는 로봇암부;를 포함하고, 상기 프로세서는 상기 결제 상품 영역에 배치되었던 상품의 상품 코드로부터 판독된 가격 정보를 합산하여 고객이 결제할 결제 금액을 나타내는 상기 결제 금액 정보로 산출할 수 있다.The product calculation robot device using product code reading according to the present invention reads the product code of each of a plurality of products placed in the upper area of the checkout conveyor for payment and calculates payment amount information for each customer. Product calculation using product code reading A robotic device, comprising: a conveyor divider that separates the plurality of products for each customer who selects the product, and a photographing unit that generates a conveyor image by photographing the checkout conveyor on which the plurality of products are arranged in an upper area; a processor that recognizes a divider position of the conveyor divider from the conveyor image and sets a payment product area in the upper area of the checkout conveyor based on the divider position; And a robot arm unit that holds the product and moves it to the code reading unit so that the product code, which includes the price information of the product and is placed on one side of the product, is read, wherein the processor determines the product code of the product placed in the payment product area. The price information read from can be added up to calculate the payment amount information indicating the payment amount to be paid by the customer.

바람직하게, 상기 프로세서는 상기 디바이더 위치를 기준으로 상기 상부 영역을 복수의 상품 영역으로 구획하고, 상기 복수의 상품 영역 중에서 최선단에 위치한 상품 영역을 상기 결제 상품 영역으로 설정할 수 있다.Preferably, the processor may divide the upper area into a plurality of product areas based on the divider position, and set the product area located at the forefront among the plurality of product areas as the payment product area.

바람직하게, 상기 로봇암부는 상기 결제 상품 영역에 배치된 상품의 상기 상품 코드가 판독되도록 상기 결제 상품 영역에 배치된 상품을 파지하여 상기 코드 판독부로 이동시킬 수 있다.Preferably, the robot arm may hold the product placed in the payment product area and move it to the code reading unit so that the product code of the product placed in the payment product area is read.

바람직하게, 상기 프로세서는 상기 결제 상품 영역에 배치된 상품이 없는 경우, 상기 결제 금액 정보가 나타내는 결제 금액을 안내하는 결제 금액 안내 메시지를 생성할 수 있다.Preferably, when there is no product placed in the payment product area, the processor may generate a payment amount information message guiding the payment amount indicated by the payment amount information.

바람직하게, 상기 프로세서는 상기 결제 상품 영역에 배치된 상품이 없는 경우, 상기 결제 금액 정보가 나타내는 결제 금액을 결제할 결제 수단의 종류를 나타내는 결제 수단 정보의 입력을 요청하는 결제 수단 정보 요청 메시지를 생성할 수 있다.Preferably, when there is no product placed in the payment product area, the processor generates a payment method information request message requesting input of payment method information indicating the type of payment method to pay the payment amount indicated by the payment amount information. can do.

바람직하게, 상기 프로세서는 상기 결제 수단 정보 요청 메시지에 대응하여 상기 결제 수단 정보가 입력된 경우, 상기 결제 수단 정보가 나타내는 결제 수단으로 결제를 요청하는 결제 요청 메시지를 생성할 수 있다.Preferably, when the payment method information is input in response to the payment method information request message, the processor may generate a payment request message requesting payment using the payment method indicated by the payment method information.

바람직하게, 상기 프로세서는 상기 결제 수단 정보가 나타내는 결제 수단이 현금인 경우, 현금 출입부에 투입된 현금의 투입 금액에서 상기 결제 금액 정보가 나타내는 결제 금액을 차감하여 금액차를 산출하고, 상기 금액차를 안내하는 금액차 안내 메시지를 생성할 수 있다. Preferably, when the payment method indicated by the payment method information is cash, the processor calculates the amount difference by subtracting the payment amount indicated by the payment amount information from the amount of cash input into the cash entry and exit unit, and calculates the amount difference. You can create a message informing you of the price difference.

바람직하게, 상기 로봇암부는 상기 결제 상품 영역에 배치된 상품의 결제가 완료된 경우, 상기 결제 상품 영역에 최근접한 상기 컨베이어 디바이더를 상기 계산대 컨베이어의 상부 영역 외부로 배치시키고, 상기 프로세서는 상기 결제 상품 영역으로 설정된 상품 영역과 이웃하는 상품 영역을 결제 상품 영역으로 재설정할 수 있다.Preferably, when the payment of the product placed in the payment product area is completed, the robot arm arranges the conveyor divider closest to the payment product area outside the upper area of the checkout conveyor, and the processor The product area set as and the neighboring product area can be reset to the payment product area.

도 1은 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치, 코드 판독부, 상품 및 계산대를 도시한 도면이다.
도 2는 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치의 구성 블록도이다.
도 3은 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치가 결제 상품 영역을 설정하는 과정을 설명하기 위한 도면이다.
도 4 및 도 5는 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치가 상품의 물리량 정보를 고려하여 상품을 코드 판독부로 이동시키는 과정을 설명하기 위한 도면이다.
도 6은 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치가 결제 금액을 안내하고 결제 수단의 종류를 입력 요청하는 과정을 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치가 결제 요청하는 과정을 설명하기 위한 도면이다.
도 8은 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치가 결제 수단의 회수를 요청하는 과정을 설명하기 위한 도면이다.
도 9 및 도 10은 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치가 위험 경고 메시지를 출력하는 과정을 설명하기 위한 도면이다.
Figure 1 is a diagram showing a product calculation robot device using product code reading, a code reading unit, products, and a checkout counter according to an embodiment of the present invention.
Figure 2 is a block diagram of a product calculation robot device using product code reading according to an embodiment of the present invention.
Figure 3 is a diagram illustrating a process of setting a payment product area by a product calculation robot device using product code reading according to an embodiment of the present invention.
Figures 4 and 5 are diagrams for explaining a process in which a product calculation robot device using product code reading according to an embodiment of the present invention moves a product to a code reading unit in consideration of physical quantity information of the product.
Figure 6 is a diagram illustrating a process in which a product calculation robot device using product code reading according to an embodiment of the present invention guides the payment amount and requests input of the type of payment method.
Figure 7 is a diagram illustrating a process of requesting payment by a product calculation robot device using product code reading according to an embodiment of the present invention.
Figure 8 is a diagram for explaining a process in which a product calculation robot device using product code reading according to an embodiment of the present invention requests collection of a payment method.
Figures 9 and 10 are diagrams for explaining a process in which a product calculation robot device using product code reading according to an embodiment of the present invention outputs a risk warning message.

이하, 본 발명의 다양한 실시 예가 첨부된 도면을 참조하여 기재된다. 그러나, 이는 본 발명을 특정한 실시 형 태에 대해 한정하려는 것이 아니며, 본 발명의 실시 예의 다양한 변경(modification), 균등물(equivalent), 및/또는 대체물(alternative)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대 해서는 유사한 참조 부호가 사용될 수 있다. Hereinafter, various embodiments of the present invention are described with reference to the accompanying drawings. However, this is not intended to limit the present invention to specific embodiments, and should be understood to include various modifications, equivalents, and/or alternatives to the embodiments of the present invention. In connection with the description of the drawings, similar reference signs may be used for similar components.

본 문서에서, "가진다", "가질 수 있다", "포함한다", 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 작동, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다. In this document, expressions such as “have,” “may have,” “includes,” or “may include” refer to the presence of the corresponding feature (e.g., numerical value, function, operation, or component such as a part). , and does not rule out the existence of additional features.

본 문서에서, "A 또는 B", "A 또는/및 B 중 적어도 하나", 또는 "A 또는/및 B 중 하나 또는 그 이상" 등의 표현 은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B", "A 및 B 중 적어도 하나", 또는 "A 또는 B 중 적어도 하나"는 (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다. In this document, expressions such as “A or B,” “at least one of A or/and B,” or “one or more of A or/and B” may include all possible combinations of the items listed together. . For example, “A or B,” “at least one of A and B,” or “at least one of A or B” (1) includes at least one A, (2) includes at least one B, or (3) It can refer to all cases including both at least one A and at least one B.

본 문서에서 사용된 "제1", "제2", "첫째", 또는 "둘째" 등의 표현들은 다양한 구성요소들을, 순서 및/또는 중 요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 예를 들면, 제1 사용자 기기와 제2 사용자 기기는 순서 또는 중요도와 무관하게, 서로 다른 사용자 기기를 나타낼 수 있다. 예를 들면, 본 문서에 기재된 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 바꾸어 명명될 수 있다.As used herein, expressions such as "first", "second", "first", or "second" may modify various elements in any order and/or importance, and may refer to one element. It is only used to distinguish from other components and does not limit the components. For example, a first user device and a second user device may represent different user devices regardless of order or importance. For example, a first component may be renamed a second component without departing from the scope of rights described in this document, and similarly, the second component may also be renamed to the first component.

어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제1 구성요소)가 다른 구성 요소(예: 제2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제3 구성요소)가 존재하지 않는 것으로 이해될 수 있다. A component (e.g., a first component) is “(operatively or communicatively) coupled with/to” another component (e.g., a second component). When “connected to” is mentioned, it should be understood that any component may be directly connected to the other component or may be connected through another component (e.g., a third component). On the other hand, when a component (e.g., a first component) is referred to as being “directly connected” or “directly connected” to another component (e.g., a second component), it is said that the component and the other component are It may be understood that no other components (e.g., third components) exist between components.

본 문서에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합 한(suitable for)", "~하는 능력을 가지는(having the capacity to)", "~하도록 설계된(designed to)", "~하도록 변경된(adapted to)", "~하도록 만들어진(made to)", 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성(또는 설정)된"은 하드웨어적으로 "특별히 설계된(specifically designed to)"것 만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성 (또는 설정)된 제어부"는 해당 작동을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 작동들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다. The expression "configured to" used in this document may be used depending on the context, for example, "suitable for," "having the capacity to." )", "designed to", "adapted to", "made to", or "capable of". . The term “configured (or set) to” may not necessarily mean “specifically designed to” in hardware. Instead, in some contexts, the expression “a device configured to” may mean that the device is “capable of” working with other devices or components. For example, the phrase "control configured (or set) to perform operations A, B, and C" means that a dedicated processor (e.g., an embedded processor) to perform those operations, or by executing one or more software programs stored in memory, , may refer to a general-purpose processor (e.g., CPU or application processor) capable of performing the corresponding operations.

특히, 본 명세서에서, “~장치”는 중앙처리장치(Central Processing Unit (CPU)), 애플리케이션 프로세서(Application Processor (AP)) 및 커뮤니케이션 프로세서(Communication Processor (CP)) 중 하나 이상을 포함할 수 있다. In particular, in this specification, “~device” may include one or more of a central processing unit (CPU), an application processor (AP), and a communication processor (CP). .

본 명세서에서, “~장치”는 적어도 하나의 프로세서를 포함하는 모든 종류의 하드웨어 장치를 의미하는 것이고, 실시 예에 따라 해당 하드웨어 장치에서 작동하는 소프트웨어적 구성도 포괄하는 의미로서 이해될 수 있다. 예를 들어, “~장치”는 기계 구동 장치, 스마트폰, 태블릿 PC, 데스크톱, 노트북 및 각 장치에서 구동되는 사용자 클라이언트 및 애플리케이션을 모두 포함하는 의미로서 이해될 수 있으며, 또한 이에 제한되는 것은 아니다.In this specification, “~device” refers to all types of hardware devices including at least one processor, and depending on the embodiment, it may be understood as encompassing software configurations operating on the hardware device. For example, “~device” can be understood as including, but is not limited to, a mechanical drive device, smartphone, tablet PC, desktop, laptop, and user clients and applications running on each device.

본 문서에서 사용된 용어들은 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 다른 실시 예의 범위를 한 정하려는 의도가 아닐 수 있다. 단수의 표현은 컨텍스트 상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 문서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 문서에 사용된 용어들 중 일반적인 사전에 정의된 용어들은 관련 기술의 컨텍스트 상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 문서에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 문서에서 정의된 용어일지라도 본 문서의 실시 예들을 배제하도록 해석될 수 없다. Terms used in this document are merely used to describe specific embodiments and may not be intended to limit the scope of other embodiments. Singular expressions may include plural expressions, unless the context clearly indicates otherwise. Terms used herein, including technical or scientific terms, may have the same meaning as commonly understood by a person of ordinary skill in the technical field described in this document. Among the terms used in this document, terms defined in general dictionaries may be interpreted to have the same or similar meaning as the meaning they have in the context of related technology, and unless clearly defined in this document, they may be interpreted in an ideal or excessively formal sense. It is not interpreted. In some cases, even terms defined in this document cannot be interpreted to exclude embodiments of this document.

도 1은 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치, 코드 판독부, 상품 및 계산대(C)를 도시한 도면이고, 도 2는 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치의 구성 블록도이다.Figure 1 is a diagram showing a product calculation robot device, code reading unit, product, and checkout counter (C) using product code reading according to an embodiment of the present invention, and Figure 2 is a diagram showing a product code according to an embodiment of the present invention. This is a block diagram of a product calculation robot device using reading.

도 1 및 도 2를 참조하면, 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치(100)는 매장 내 계산대(C)의 일측에 위치하고, 고객이 결제하고자 하는 상품을 계산대(C)의 계산대 컨베이어(CB)에 배치하면, 상품의 일측에 마련된 상품 코드가 판독되도록 상품을 이동 및 회전시켜 상품의 가격 정보를 획득하고, 동일한 고객이 계산대 컨베이어(CB)에 배치한 상품들만의 가격 정보를 합산하여 고객이 결제할 결제 금액 정보를 산출함으로써, 고객이 상품을 결제하도록 할 수 있다.Referring to Figures 1 and 2, the product calculation robot device 100 using product code reading according to an embodiment of the present invention is located on one side of the checkout counter (C) in the store, and places the product that the customer wants to pay at the checkout counter ( When placed on the checkout conveyor (CB) of C), the price information of the product is obtained by moving and rotating the product so that the product code provided on one side of the product is read, and only the products placed on the checkout conveyor (CB) by the same customer are displayed. By adding up the price information and calculating the payment amount information to be paid by the customer, the customer can pay for the product.

이때, 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치(100)는 고객이 상품을 결제하는 과정에서 고객이 수행해야 할 절차와 고객에게 안내되어야 하는 정보에 대한 메시지를 생성하여 출력할 수 있다.At this time, the product calculation robot device 100 using product code reading according to an embodiment of the present invention generates a message about the procedures to be performed by the customer and information to be provided to the customer in the process of paying for the product. Can be printed.

한편, 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치(100)는 로봇암부(130)가 상품을 파지하여 이동시키도록 구성되되, 로봇암부(130)의 허용 물리량 조건에 따라 상품을 할당하고, 할당된 상품이 해당 로봇암부(130)에 의해 이동되도록 구성될 수 있다.Meanwhile, the product calculation robot device 100 using product code reading according to an embodiment of the present invention is configured so that the robot arm 130 grasps and moves the product according to the allowable physical quantity conditions of the robot arm 130. A product may be allocated, and the allocated product may be configured to be moved by the corresponding robot arm unit 130.

이때, 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치(100)는 로봇암부(130)이 고객과 충돌하지 않도록 메시지를 생성하여 출력할 수 있다.At this time, the product calculation robot device 100 using product code reading according to an embodiment of the present invention can generate and output a message to prevent the robot arm unit 130 from colliding with the customer.

한편, 매장 내 계산대(C)는 계산대 컨베이어(CB), 코드 판독부(CR) 및 포장 영역(P)를 포함할 수 있다.Meanwhile, the checkout counter (C) in the store may include a checkout conveyor (CB), a code reading unit (CR), and a packaging area (P).

계산대 컨베이어(CB)는 고객에 의해 선택된 복수의 상품과 고객별로 복수의 상품을 분리시키는 컨베이어 디바이더(CD)가 상부 영역에 배치될 수 있다.The checkout conveyor (CB) may have a plurality of products selected by the customer and a conveyor divider (CD) arranged in the upper area to separate the plurality of products for each customer.

이러한, 계산대 컨베이어(CB)는 상부 영역에 배치된 복수의 상품과 컨베이어 디바이더(CD)를 진행 방향으로 이동시킬 수 있다.This checkout conveyor (CB) can move a plurality of products and a conveyor divider (CD) arranged in the upper area in the direction of progress.

이때, 계산대 컨베이어(CB)는 일단에 물체 감지 센서를 구비하고 물체 감지 센서에 의해 일단에서 물체(상품 또는 컨베이어 디바이더)가 감지되면 복수의 상품 및 컨베이어 디바이더(CD)의 이동을 정지시킬 수 있다.At this time, the checkout conveyor (CB) is equipped with an object detection sensor at one end, and when an object (product or conveyor divider) is detected at one end by the object detection sensor, the movement of a plurality of products and the conveyor divider (CD) can be stopped.

여기서, 진행 방향을 계산대 컨베이어(CB)의 타단에서 일단을 향하는 방향이고, 코드 판독부(CR)는 계산대 컨베이어(CB)의 타단 보다 일단에 더 근접하여 위치될 수 있다.Here, the moving direction is from the other end of the checkout conveyor (CB) to one end, and the code reading unit (CR) may be located closer to one end of the checkout conveyor (CB) than the other end.

한편, 컨베이어 디바이더(CD)는 막대 형상으로 형성되고, 고객에 의해 복수의 상품이 고객별로 분리되도록 계산대 컨베이어(CB)의 상부 영역에 배치될 수 있다.Meanwhile, the conveyor divider (CD) is formed in a bar shape and can be placed in the upper area of the checkout conveyor (CB) to separate a plurality of products by customer.

예를 들어, 고객 A에 의해 계산대 컨베이어(CB)의 상부 영역에 배치된 상품 A1, A2, A3와 고객 B에 의해 계산대 컨베이어(CB)의 상부 영역에 배치된 상품 B1, B2, B3 사이에는 컨베이어 디바이더(CD)가 배치되어 고객 A에 의해 계산대 컨베이어(CB)의 상부 영역에 배치된 상품 A1, A2, A3와 고객 B에 의해 계산대 컨베이어(CB)의 상부 영역에 배치된 상품 B1, B2, B를 분리시킬 수 있다.For example, there is a conveyor between products A1, A2, A3 placed in the upper area of the checkout conveyor (CB) by customer A and products B1, B2, B3 placed in the upper area of the checkout conveyor (CB) by customer B. Products A1, A2, A3 placed in the upper area of the checkout conveyor (CB) by customer A with dividers (CD) placed and products B1, B2, B placed in the upper area of the checkout conveyor (CB) by customer B can be separated.

코드 판독부(CR)는 컨베이어 디바이더(CD)와 포장 영역(P) 사이에 위치하여, 상품의 상품 코드를 판독함으로써, 상품의 가격 정보를 획득할 수 있다.The code reading unit (CR) is located between the conveyor divider (CD) and the packaging area (P) and can obtain price information of the product by reading the product code of the product.

이를 위해, 코드 판독부(CR)는 QR코드 형식 또는 바코드 형식의 상품 코드를 판독할 수 있다.To this end, the code reading unit (CR) can read product codes in QR code format or barcode format.

구체적으로, 코드 판독부(CR)는 상품 코드가 바코드 형식인 경우, 상품 코드로부터 반사되는 가시광선을 입력받아 상품 코드를 판독하는 가시광선 상품 코드 판독 방식 및 상품 코드로부터 반사되는 적광을 입력받아 상품 코드를 판독하는 적광 상품 코드 판독 방식 중 하나 이상을 이용할 수 있으나, 상품 코드로부터 상품의 가격 정보를 획득하는 한, 판독 방식은 제한되지 않음을 유의한다.Specifically, when the product code is in a barcode format, the code reading unit (CR) uses a visible light product code reading method that reads the product code by receiving visible light reflected from the product code, and a visible light product code reading method that reads the product code by inputting visible light reflected from the product code and reads the product code by receiving red light reflected from the product code. Note that one or more of the red light product code reading methods for reading the code may be used, but the reading method is not limited as long as price information of the product is obtained from the product code.

한편, 상품 코드는 상품의 일측에 인쇄되거나 플라스틱 소재의 태그에 인쇄되어 상품의 일측에 마련될 수 있고, 해당 상품의 가격 정보가 부호화되어 표시될 수 있다. Meanwhile, the product code may be printed on one side of the product or printed on a tag made of plastic and provided on one side of the product, and the price information of the product may be encoded and displayed.

이때, 상품 코드는 QR코드 형식 또는 바코드 형식일 수 있다.At this time, the product code may be in QR code format or barcode format.

상품 코드는 바코드 형식인 경우, 코드 11 방식, 코드 39 방식, 코드 93 방식, 코드 128 방식, UPC 방식, EAN 8 방식, EAN 13 방식, PDF 417 방식 및 데이터매트릭스 방식 중 어느 하나의 방식으로 형성될 수 있으나 상품의 가격 정보가 포함되는 한 코드 방식이 제한되지 않음을 유의한다.When the product code is in barcode format, it can be formed in any one of the following methods: Code 11 method, Code 39 method, Code 93 method, Code 128 method, UPC method, EAN 8 method, EAN 13 method, PDF 417 method, and Data Matrix method. However, please note that the code method is not limited as long as the product price information is included.

이러한, 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치(100)는 촬영부(110), 프로세서(120), 로봇암부(130), 디스플레이(140), 스피커(150), 결제부(160), 통신부(170) 및 저장부(180)를 포함할 수 있다.The product calculation robot device 100 using product code reading according to an embodiment of the present invention includes a photographing unit 110, a processor 120, a robot arm unit 130, a display 140, a speaker 150, It may include a payment unit 160, a communication unit 170, and a storage unit 180.

도 3은 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치가 결제 상품 영역을 설정하는 과정을 설명하기 위한 도면이다.Figure 3 is a diagram illustrating a process of setting a payment product area by a product calculation robot device using product code reading according to an embodiment of the present invention.

촬영부(110)는 복수의 상품 및 상술된 컨베이어 디바이더(CD)가 상부 영역에 배치된 계산대 컨베이어(CB)를 촬영하여 컨베이어 이미지를 생성할 수 있다.The photographing unit 110 may generate a conveyor image by photographing a plurality of products and the checkout conveyor (CB) on which the above-described conveyor divider (CD) is placed in the upper area.

이를 위해, 촬영부(110)는 이미지를 생성하는 카메라 모듈을 구비할 수 있다. 또한, 촬영부(110)는 물체에 대해 비전 센싱을 수행하는 비전 센싱 카메라 모듈을 구비할 수 있다.To this end, the photographing unit 110 may be equipped with a camera module that generates images. Additionally, the photographing unit 110 may be equipped with a vision sensing camera module that performs vision sensing on an object.

프로세서(120)는 컨베이어 이미지로부터 컨베이어 디바이더(CD)의 디바이더 위치를 인식하고, 디바이더 위치에 기초하여 계산대 컨베이어(CB)의 상부 영역(CA) 중에서 결제 상품 영역(PA)을 설정할 수 있다.The processor 120 may recognize the divider position of the conveyor divider (CD) from the conveyor image and set the payment product area (PA) in the upper area (CA) of the checkout conveyor (CB) based on the divider position.

구체적으로, 프로세서(120)는 디바이더 위치를 기준으로 상부 영역(CA)을 복수의 상품 영역(UA1, UA2)으로 구획하고, 복수의 상품 영역(UA1, UA2) 중에서 최선단에 위치한 상품 영역(UA1)을 결제 상품 영역(PA)으로 설정할 수 있다.Specifically, the processor 120 divides the upper area (CA) into a plurality of product areas (UA1, UA2) based on the divider position, and selects a product area (UA1) located at the forefront among the plurality of product areas (UA1, UA2). ) can be set as the payment product area (PA).

여기서, 최선단에 위치한 최선단에 위치한 상품 영역이란, 복수의 상품 영역(UA1, UA2) 중에서 계산대 컨베이어(CB)의 진행 방향을 기준으로 가장 선행하는 상품 영역(UA1, PA)을 의미할 수 있다.Here, the product area located at the forefront may mean the product area (UA1, PA) that is most advanced among the plurality of product areas (UA1, UA2) based on the direction of movement of the checkout conveyor (CB). .

보다 구체적으로, 프로세서(120)는 3차원 공간인 상부 영역(CA) 내에 디바이더 위치에 대응되는 가상의 평면을 형성하고, 가상의 평면에 의해 상부 영역(CA)으로부터 분할되는 영역을 복수의 상품 영역(UA1, UA2)으로 구획할 수 있다.More specifically, the processor 120 forms a virtual plane corresponding to the divider position in the upper area (CA), which is a three-dimensional space, and divides the area divided from the upper area (CA) by the virtual plane into a plurality of product areas. It can be divided into (UA1, UA2).

이때, 가상의 평면은 계산대 컨베이어(CB)의 상부면 즉, 상부 영역(CA)의 하부면에 직립하고, 가상의 평면과 계산대 컨베이어(CB)의 상부면이 접하는 직선과 계산대 컨베이어(CB)의 진행 방향이 이루는 각도는 컨베이어 디바이더(CD)와 계산대 컨베이어(CB)의 진행 방향이 이루는 각도와 동일하도록 형성될 수 있다.At this time, the virtual plane is erect on the upper surface of the checkout conveyor (CB), that is, the lower surface of the upper area (CA), and the straight line where the virtual plane and the upper surface of the checkout conveyor (CB) are in contact with the checkout conveyor (CB) The angle formed by the moving direction may be formed to be the same as the angle formed by the moving direction of the conveyor divider (CD) and the checkout conveyor (CB).

프로세서(120)는 상부 영역(CA)에 배치된 컨베이어 디바이더(CD)의 개수 만큼 가상의 평면을 형성할 수 있다.The processor 120 may form a virtual plane equal to the number of conveyor dividers (CD) disposed in the upper area (CA).

이에 따라, 프로세서(120)는 상부 영역(CA)에 배치된 컨베이어 디바이더(CD)가 1개인 경우 가상의 평면을 1개 형성하고, 2개의 상품 영역을 구획할 수 있다.Accordingly, when there is one conveyor divider (CD) disposed in the upper area (CA), the processor 120 can form one virtual plane and partition two product areas.

또한, 프로세서(120)는 상부 영역(CA)에 배치된 컨베이어 디바이더(CD)가 2개인 경우 가상의 평면을 2개 형성하고, 3개의 상품 영역을 구획할 수 있다.Additionally, when there are two conveyor dividers (CDs) disposed in the upper area (CA), the processor 120 can form two virtual planes and partition three product areas.

이후, 프로세서(120)는 계산대 컨베이어(CB)의 진행 방향을 기준으로 복수의 상품 영역(UA1, UA2) 중에서 최선단에 위치한 상품 영역(UA1)을 결제 상품 영역(PA)으로 설정할 수 있다.Thereafter, the processor 120 may set the product area UA1 located at the forefront among the plurality of product areas UA1 and UA2 as the payment product area PA based on the direction of movement of the checkout conveyor CB.

이러한, 프로세서(120)는 계산대 컨베이어(CB)가 진행 방향으로 복수의 상품 및 컨베이어 디바이더(CD)를 이동시킴에 따라, 미리 설정된 주기마다 결제 상품 영역(PA)의 설정을 보정할 수 있다.As the checkout conveyor (CB) moves a plurality of products and the conveyor divider (CD) in the direction in which the checkout counter conveyor (CB) moves, the processor 120 may correct the settings of the payment product area (PA) at preset intervals.

한편, 프로세서(120)는 결제 상품 영역(PA) 내에 배치된 상품 중에서 로봇암부(130)에 의해 코드 판독부(CR)로 이동되어 상품 코드가 판독될 상품(이하, '이동 대상 상품'이라함)을 결정할 수 있다.Meanwhile, the processor 120 moves the product to the code reading unit (CR) by the robot arm 130 among the products placed in the payment product area (PA) to have the product code read (hereinafter referred to as 'moved target product'). ) can be determined.

구체적으로, 프로세서(120)는 진행 방향을 기준으로 결제 상품 영역(PA) 내에 배치된 상품 중에서 최선단에 위치한 상품을 이동 대상 상품으로 결정할 수 있다.Specifically, the processor 120 may determine the product located at the forefront among products placed in the payment product area (PA) as the product to be moved based on the direction of movement.

도 4 및 도 5는 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치가 상품의 물리량 정보를 고려하여 상품을 코드 판독부(CR)로 이동시키는 과정을 설명하기 위한 도면이다.Figures 4 and 5 are diagrams for explaining a process in which a product calculation robot device using product code reading according to an embodiment of the present invention moves a product to the code reading unit (CR) in consideration of physical quantity information of the product.

본 발명에 따른 로봇암부(130)는 복수일 수 있다. 프로세서(120)는 코드 판독부(CR)로 이동시키고자 하는 이동 대상 상품의 물리량 정보에 따라 복수의 로봇암부(130a, 130b) 중에서 이동 대상 상품을 코드 판독부(CR)로 이동시킬 어느 하나의 로봇암부를 결정할 수 있다.There may be multiple robot arm units 130 according to the present invention. The processor 120 selects one of the plurality of robot arm units 130a and 130b to move the product to the code reading unit (CR) according to the physical quantity information of the product to be moved to the code reading unit (CR). The robot arm part can be determined.

이를 위해, 프로세서(120)는 컨베이어 이미지로부터 복수의 상품 각각의 물리량 정보를 획득할 수 있다.To this end, the processor 120 may obtain physical quantity information for each of a plurality of products from the conveyor image.

구체적으로, 프로세서(120)는 컨베이어 이미지 중에서 이동 대상 상품의 상품 이미지를 추출하고, 이동 대상 상품의 상품 이미지를 상품의 물리량 정보를 결정하도록 훈련된 물리량 인공지능 모델에 이동 대상 상품의 상품 이미지를 입력하여, 이동 대상 상품의 물리량 정보를 획득할 수 있다.Specifically, the processor 120 extracts the product image of the product to be moved from the conveyor image and inputs the product image of the product to be moved to the physical quantity artificial intelligence model trained to determine the physical quantity information of the product. Thus, physical quantity information of the product to be moved can be obtained.

이를 위해, 프로세서(120)는 학습용 상품 이미지 및 학습용 상품 이미지에 대응되는 학습용 물리량 정보를 이용하여 물리량 인공지능 모델을 훈련시킬 수 있다. To this end, the processor 120 may train a physical quantity artificial intelligence model using a learning product image and learning physical quantity information corresponding to the learning product image.

여기서, 물리량 인공지능 모델은 학습 데이터로써 학습용 상품 이미지 및 학습용 물리량 정보로 구성된 학습 데이터를 이용하여 훈련 및 학습되고, 입력 데이터인 상품 이미지에 대하여 결과 값으로 물리량 정보를 추론해 내는데 사용될 수 있고, 추론된 값은 어떠한 동작을 수행하기 위한 판단의 기초로 이용될 수 있다.Here, the physical quantity artificial intelligence model is trained and learned using learning data consisting of a product image for learning and physical quantity information for learning, and can be used to infer physical quantity information as a result value for the product image as input data, and inference The value can be used as a basis for judgment to perform any operation.

여기서, 인공 지능은 인공적인 지능 또는 이를 만들 수 있는 방법론을 연구하는 분야를 의미하며, 머신 러닝(기계 학습, Machine Learning)은 인공 지능 분야에서 다루는 다양한 문제를 정의하고 그것을 해결하는 방법론을 연구하는 분야를 의미한다. 머신 러닝은 어떠한 작업에 대하여 꾸준한 경험을 통해 그 작업에 대한 성능을 높이는 알고리즘으로 정의하기도 한다.Here, artificial intelligence refers to a field that studies artificial intelligence or methodologies to create it, and machine learning (machine learning) refers to a field that defines various problems dealt with in the field of artificial intelligence and studies methodologies to solve them. means. Machine learning is also defined as an algorithm that improves the performance of a task through consistent experience.

인공 신경망(ANN: Artificial Neural Network)은 머신 러닝에서 사용되는 모델로써, 시냅스의 결합으로 네트워크를 형성한 인공 뉴런(노드)들로 구성되는, 문제 해결 능력을 가지는 모델 전반을 의미할 수 있다. 인공 신경망은 다른 레이어의 뉴런들 사이의 연결 패턴, 모델 파라미터를 갱신하는 학습 과정, 출력값을 생성하는 활성화 함수(Activation Function)에 의해 정의될 수 있다.Artificial Neural Network (ANN) is a model used in machine learning. It can refer to an overall model with problem-solving capabilities that is composed of artificial neurons (nodes) that form a network through the combination of synapses. Artificial neural networks can be defined by connection patterns between neurons in different layers, a learning process that updates model parameters, and an activation function that generates output values.

인공 신경망은 입력층(Input Layer), 출력층(Output Layer), 그리고 선택적으로 하나 이상의 은닉층(Hidden Layer)를 포함할 수 있다. 각 층은 하나 이상의 뉴런을 포함하고, 인공 신경망은 뉴런과 뉴런을 연결하는 시냅스를 포함할 수 있다. 인공 신경망에서 각 뉴런은 시냅스를 통해 입력되는 입력 신호들, 가중치, 편향에 대한 활성 함수의 함수값을 출력할 수 있다.An artificial neural network may include an input layer, an output layer, and optionally one or more hidden layers. Each layer includes one or more neurons, and the artificial neural network may include synapses connecting neurons. In an artificial neural network, each neuron can output the function value of the activation function for the input signals, weight, and bias input through the synapse.

모델 파라미터는 학습을 통해 결정되는 파라미터를 의미하며, 시냅스 연결의 가중치와 뉴런의 편향 등이 포함된다. 그리고, 하이퍼파라미터는 머신 러닝 알고리즘에서 학습 전에 설정되어야 하는 파라미터를 의미하며, 학습률(Learning Rate), 반복 횟수, 미니 배치 크기, 초기화 함수 등이 포함된다.Model parameters refer to parameters determined through learning and include the weight of synaptic connections and the bias of neurons. Hyperparameters refer to parameters that must be set before learning in a machine learning algorithm and include learning rate, number of repetitions, mini-batch size, initialization function, etc.

인공 신경망의 학습의 목적은 손실 함수를 최소화하는 모델 파라미터를 결정하는 것으로 볼 수 있다. 손실 함수는 인공 신경망의 학습 과정에서 최적의 모델 파라미터를 결정하기 위한 지표로 이용될 수 있다.The purpose of artificial neural network learning can be seen as determining model parameters that minimize the loss function. The loss function can be used as an indicator to determine optimal model parameters in the learning process of an artificial neural network.

머신 러닝은 학습 방식에 따라 지도 학습(Supervised Learning), 비지도 학습(Unsupervised Learning), 강화 학습(Reinforcement Learning)으로 분류할 수 있다.Machine learning can be classified into supervised learning, unsupervised learning, and reinforcement learning depending on the learning method.

지도 학습은 학습 데이터에 대한 레이블(label)이 주어진 상태에서 인공 신경망을 학습시키는 방법을 의미하며, 레이블이란 학습 데이터가 인공 신경망에 입력되는 경우 인공 신경망이 추론해 내야 하는 정답(또는 결과 값)을 의미할 수 있다. 비지도 학습은 학습 데이터에 대한 레이블이 주어지지 않는 상태에서 인공 신경망을 학습시키는 방법을 의미할 수 있다. 강화 학습은 어떤 환경 안에서 정의된 에이전트가 각 상태에서 누적 보상을 최대화하는 행동 혹은 행동 순서를 선택하도록 학습시키는 학습 방법을 의미할 수 있다.Supervised learning refers to a method of training an artificial neural network with a given label for the learning data. A label refers to the correct answer (or result value) that the artificial neural network must infer when learning data is input to the artificial neural network. It can mean. Unsupervised learning can refer to a method of training an artificial neural network in a state where no labels for training data are given. Reinforcement learning can refer to a learning method in which an agent defined within an environment learns to select an action or action sequence that maximizes the cumulative reward in each state.

인공 신경망 중에서 복수의 은닉층을 포함하는 심층 신경망(DNN: Deep Neural Network)으로 구현되는 머신 러닝을 딥 러닝(심층 학습, Deep Learning)이라 부르기도 하며, 딥 러닝은 머신 러닝의 일부이다. 본 명세서에서, 머신 러닝은 딥 러닝을 포함하는 의미로 사용된다.Among artificial neural networks, machine learning implemented with a deep neural network (DNN) that includes multiple hidden layers is also called deep learning, and deep learning is a part of machine learning. In this specification, machine learning is used to include deep learning.

여기서, 물리량 정보는 상품(이동 대상 상품)의 부피 정보, 무게 정보, 폭 정보, 높이 정보 및 너비 정보 중 하나 이상을 포함할 수 있다.Here, the physical quantity information may include one or more of volume information, weight information, width information, height information, and width information of the product (product to be moved).

이후, 프로세서(120)는 이동 대상 상품의 물리량 정보가 복수의 로봇암부(130a, 130b) 각각의 허용 물리량 조건 중 어느 로봇암부의 허용 물리량 조건에 만족하는지 여부를 판단할 수 있다.Thereafter, the processor 120 may determine whether the physical quantity information of the product to be moved satisfies the allowable physical quantity condition of any robot arm unit among the allowable physical quantity conditions of each of the plurality of robot arm units 130a and 130b.

여기서, 허용 물리량 조건은 로봇암부의 물체 이동 능력에 따라 로봇암부가 이동시킬 수 있는 물체의 물리량 범위를 나타낼 수 있다.Here, the allowable physical quantity condition may represent the physical quantity range of the object that the robot arm can move according to the object movement ability of the robot arm.

구체적으로, 프로세서(120)는 이동 대상 상품의 물리량 정보가 나타내는 물리량이 포함되는 물리량 범위를 나타내는 허용 물리량 조건의 로봇암부에 이동 대상 상품을 할당할 수 있다.Specifically, the processor 120 may allocate the moving target product to the robot arm under an allowable physical quantity condition indicating a physical quantity range that includes the physical quantity indicated by the physical quantity information of the moving target product.

물리량 정보가 무게 정보이고, 제1 로봇암부(130a)의 허용 물리량 조건이 나타내는 물리량 범위가 0g 초과 1kg 미만이고, 제2 로봇암부(130b)의 허용 물리량 조건이 나타내는 물리량 범위가 0g 초과 2kg 미만인 예를 들어 설명하도록 한다.An example in which the physical quantity information is weight information, the physical quantity range indicated by the allowable physical quantity condition of the first robot arm unit 130a is greater than 0 g and less than 1 kg, and the physical quantity range indicated by the allowable physical quantity condition of the second robot arm unit 130b is greater than 0 g and less than 2 kg. Let me explain.

도 4에 도시된 바와 같이, 프로세서(120)는 이동 대상 상품의 물리량 정보가 800g인 경우, 이동 대상 상품의 물리량 정보 800g이 포함되는 물리량 범위를 나타내는 허용 물리량 조건의 제1 로봇암부(130a)에 이동 대상 상품을 할당할 수 있다.As shown in FIG. 4, when the physical quantity information of the product to be moved is 800g, the processor 120 applies to the first robot arm unit 130a an allowable physical quantity condition indicating a physical quantity range including 800g of the physical quantity information of the product to be moved. You can assign products to be moved.

또한, 도 5에 도시된 바와 같이, 프로세서(120)는 이동 대상 상품의 물리량 정보가 1.5kg인 경우, 이동 대상 상품의 물리량 정보 1.5g이 포함되는 물리량 범위를 나타내는 허용 물리량 조건의 제2 로봇암부(130b)에 이동 대상 상품을 할당할 수 있다.In addition, as shown in FIG. 5, when the physical quantity information of the product to be moved is 1.5 kg, the processor 120 sets the second robot arm unit of the allowable physical quantity condition indicating the physical quantity range including 1.5 g of the physical quantity information of the product to be moved. The product to be moved can be assigned to (130b).

복수의 로봇암부(130a, 130b)는 결제 상품 영역(PA)에 배치되고 이동되는 것으로 결정된 이동 대상 상품이 할당되면 해당 이동 대상 상품의 상품 코드가 코드 판독부(CR)에 의해 판독되도록 이동 대상 상품을 파지하여 코드 판독부(CR)로 이동시킬 수 있다.A plurality of robot arm units (130a, 130b) are arranged in the payment product area (PA) and, when a moving target product determined to be moved is assigned, the moving target product is assigned such that the product code of the moving target product is read by the code reading unit (CR). can be grasped and moved to the code reading unit (CR).

이후, 복수의 로봇암부(130a, 130b)는 상품 코드의 판독이 완료된 이동 대상 상품을 포장 영역(P)으로 이동시킬 수 있다. 여기서, 포장 영역(P)은 상품 코드의 판독이 완료되어 가격 정보가 프로세서(120)로 획득된 이동 대상 상품이 이동되는 영역으로, 고객에 의해 상품이 수령되는 영역일 수 있다.Thereafter, the plurality of robot arm units 130a and 130b may move the product for which the product code has been read to the packaging area P. Here, the packaging area P is an area where the product to be moved, for which the product code has been read and price information has been acquired by the processor 120, is moved, and may be an area where the product is received by the customer.

이를 위해, 복수의 로봇암부(130a, 130b)는 프로세서(120)로부터 수신되는 제어 신호에 기초하여 작동에 제어될 수 있다. 이러한, 복수의 로봇암부(130a, 130b)는 지지부(J)에 일단이 고정된 로봇암(131) 및 로봇암(131)의 타단과 연결된 파지부(132) 각각을 포함할 수 있다.To this end, the plurality of robot arm units 130a and 130b may be controlled to operate based on control signals received from the processor 120. The plurality of robot arm parts 130a and 130b may each include a robot arm 131 with one end fixed to the support part J and a grip part 132 connected to the other end of the robot arm 131.

이때, 지지부(J)는 하단이 계산대(C)와 인접한 지면에 고정되고, 상단에 로봇암(131)의 일단이 연결되어 움직이는 로봇암(131)을 지지할 수 있다.At this time, the lower end of the support part J is fixed to the ground adjacent to the counter C, and one end of the robot arm 131 is connected to the upper end to support the moving robot arm 131.

또한, 파지부(132)는 집게 형상으로 형성되어 상품의 양측을 가압하여 상품을 파지하도록 구성될 수 있다.Additionally, the gripping portion 132 may be formed in the shape of tongs and configured to hold the product by pressing both sides of the product.

이러한, 복수의 로봇암부(130a, 130b)는 프로세서(120)의 제어 신호에 따라 각각의 로봇암(131) 및 파지부(132)의 작동을 제어할 수 있다.The plurality of robot arm units 130a and 130b can control the operation of each robot arm 131 and the grip unit 132 according to the control signal from the processor 120.

구체적으로, 복수의 로봇암부(130a, 130b)는 로봇암(131) 및 파지부(132)를 통해 이동 대상 상품의 부위를 파지하여 코드 판독부(CR)로 이동 대상 상품을 이동시킬 수 있다.Specifically, the plurality of robot arm units 130a and 130b can grip parts of the product to be moved through the robot arm 131 and the gripper 132 and move the product to the code reading unit CR.

이후, 복수의 로봇암부(130a, 130b)는 이동 대상 상품을 이동 및 회전시켜 상품 코드가 코드 판독부(CR)와 대면되도록 할 수 있다.Thereafter, the plurality of robot arms (130a, 130b) can move and rotate the product to be moved so that the product code faces the code reading unit (CR).

이를 통해, 복수의 로봇암부(130a, 130b)는 직원이 직접 상품의 상품 코드를 코드 판독부(CR)로 이동시켜 상품 코드를 스캔하지 않더라도, 고객이 계산대(C)에 상품을 배치하기만 하면, 상품 코드를 가리지 않도록 상품을 파지하여 상품 코드가 판독되도록 함으로써, 상품 계산을 신속하고 노동력 소요없이 완료시킬 수 있다.Through this, the plurality of robot arms (130a, 130b) allow the customer to simply place the product at the checkout counter (C) even if the employee does not directly move the product code of the product to the code reading unit (CR) and scan the product code. , by holding the product so as not to obscure the product code and allowing the product code to be read, product calculation can be completed quickly and without labor.

이를 위해, 복수의 로봇암부(130a, 130b)는 기계적인 움직임을 구현할 수 있도록 구성될 수 있다. 구체적으로, 복수의 로봇암부(130a, 130b)는 다양한 작업을 수행할 수 있는 하나 이상의 관절(또는 조인트), 링크, 기어 등을 구비할 수 있다. 이러한, 복수의 로봇암부(130a, 130b)는 복수의 조인트 및 복수의 조인트에 의해 서로 연결된 복수의 링크, 복수의 조인트를 회전시키는 구동 모터를 포함할 수 있다. 이때, 프로세서(120)는 구동 모터의 작동을 제어하여 복수의 로봇암부(130a, 130b)를 제어하고, 이를 통해, 복수의 로봇암부(130a, 130b)는 로봇암(131) 및 파지부(132)를 제어할 수 있다.To this end, the plurality of robot arm parts 130a and 130b may be configured to implement mechanical movement. Specifically, the plurality of robot arm units 130a and 130b may be provided with one or more joints (or joints), links, gears, etc. that can perform various tasks. The plurality of robot arm units 130a and 130b may include a plurality of joints, a plurality of links connected to each other by the plurality of joints, and a drive motor that rotates the plurality of joints. At this time, the processor 120 controls the operation of the drive motor to control the plurality of robot arm parts 130a and 130b, and through this, the plurality of robot arm parts 130a and 130b are connected to the robot arm 131 and the gripping part 132. ) can be controlled.

한편, 프로세서(120)는 결제 상품 영역(PA)에 배치되었던 상품의 상품 코드로부터 판독된 가격 정보를 합산하여 고객이 결제할 결제 금액을 나타내는 결제 금액 정보로 산출할 수 있다.Meanwhile, the processor 120 may calculate payment amount information indicating the payment amount to be paid by the customer by adding up the price information read from the product codes of the products placed in the payment product area (PA).

즉, 프로세서(120)는 동일한 결제 상품 영역(PA)에 배치되었다가 상품 코드가 판독된 상품의 가격 정보만을 합산하여 결제 금액 정보로 산출할 수 있다.That is, the processor 120 can calculate payment amount information by adding up only the price information of products that are placed in the same payment product area (PA) and whose product codes have been read.

이를 통해, 프로세서(120)는 어느 하나의 고객에 의해 계산대 컨베이어(CB)에 배치된 상품들의 가격 정보만을 합산하여 결제 금액 정보로 산출할 수 있다.Through this, the processor 120 can calculate payment amount information by adding up only the price information of products placed on the checkout conveyor (CB) by one customer.

프로세서(120)는 결제 상품 영역에 배치된 상품이 없는 경우, 즉, 결제 상품 영역에 배치된 모든 상품의 상품 코드가 판독된 경우, 고객의 회원 정보를 요청하는 회원 정보 요청 메시지를 생성할 수 있다.If there are no products placed in the payment product area, that is, if the product codes of all products placed in the payment product area are read, the processor 120 may generate a member information request message requesting the customer's member information. .

이때, 회원 정보 요청 메시지는 음성 메시지 및 텍스트 메시지 중 어느 하나 이상일 수 있다.At this time, the member information request message may be one or more of a voice message and a text message.

이후, 디스플레이(140)는 텍스트 메시지인 회원 정보 요청 메시지를 출력할 수 있다. 또한, 스피커(150)는 음성 메시지인 회원 정보 요청 메시지를 출력할 수 있다.Afterwards, the display 140 may output a member information request message, which is a text message. Additionally, the speaker 150 may output a member information request message, which is a voice message.

여기서, 회원 정보는 매장에 회원으로 가입된 고객에 대한 정보로서, 고객 일련 번호, 고객 이름 정보, 고객 주소 정보 및 고객 포인트 정보를 포함할 수 있다.Here, the member information is information about a customer who has registered as a member in the store, and may include a customer serial number, customer name information, customer address information, and customer point information.

이때, 고객은 고객 정보를 직접 입력부(미도시)에 입력하거나 회원 카드를 삽입하여 고객 정보를 제공할 수 있다.At this time, the customer can provide customer information by directly entering customer information into an input unit (not shown) or by inserting a membership card.

도 6은 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치가 결제 금액을 안내하고 결제 수단의 종류를 입력 요청하는 과정을 설명하기 위한 도면이다.Figure 6 is a diagram illustrating a process in which a product calculation robot device using product code reading according to an embodiment of the present invention guides the payment amount and requests input of the type of payment method.

프로세서(120)는 결제 상품 영역에 배치된 상품이 없는 경우, 즉, 결제 상품 영역에 배치된 모든 상품의 상품 코드가 판독된 경우, 결제 금액 정보가 나타내는 결제 금액을 안내하는 결제 금액 안내 메시지를 생성할 수 있다.The processor 120 generates a payment amount information message guiding the payment amount indicated by the payment amount information when there is no product placed in the payment product area, that is, when the product codes of all products placed in the payment product area are read. can do.

이때, 결제 금액 안내 메시지(M1)는 음성 메시지 및 텍스트 메시지 중 어느 하나 이상일 수 있다.At this time, the payment amount information message M1 may be one or more of a voice message and a text message.

이후, 디스플레이(140)는 텍스트 메시지인 결제 금액 안내 메시지(M1)를 출력할 수 있다. 또한, 스피커(150)는 음성 메시지인 결제 금액 안내 메시지(M1)를 출력할 수 있다.Afterwards, the display 140 may output a payment amount information message (M1), which is a text message. Additionally, the speaker 150 may output a payment amount information message (M1), which is a voice message.

이를 통해, 고객은 자신이 결제해야 할 금액을 즉각적으로 확인할 수 있다.Through this, customers can immediately check the amount they need to pay.

한편, 프로세서(120)는 결제 상품 영역에 배치된 상품이 없는 경우, 결제 금액 정보가 나타내는 결제 금액을 결제할 결제 수단의 종류를 나타내는 결제 수단 정보의 입력을 요청하는 결제 수단 정보 요청 메시지를 생성할 수 있다.Meanwhile, if there is no product placed in the payment product area, the processor 120 may generate a payment method information request message requesting input of payment method information indicating the type of payment method to pay the payment amount indicated by the payment amount information. You can.

여기서, 결제 수단 정보는 현금을 나타내거나 신용카드를 나타낼 수 있다.Here, the payment method information may represent cash or a credit card.

이때, 결제 수단 정보 요청 메시지(M2)는 음성 메시지 및 텍스트 메시지 중 어느 하나 이상일 수 있다.At this time, the payment method information request message (M2) may be one or more of a voice message and a text message.

이후, 디스플레이(140)는 텍스트 메시지인 결제 수단 정보 요청 메시지(M2)를 출력할 수 있다. 또한, 스피커(150)는 음성 메시지인 결제 수단 정보 요청 메시지(M2)를 출력할 수 있다.Afterwards, the display 140 may output a payment method information request message (M2), which is a text message. Additionally, the speaker 150 may output a payment method information request message (M2), which is a voice message.

이를 통해, 고객은 자신이 결제할 결제 수단을 선택할 수 있다.Through this, customers can select their payment method.

도 7은 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치가 결제 요청하는 과정을 설명하기 위한 도면이다.Figure 7 is a diagram illustrating a process of requesting payment by a product calculation robot device using product code reading according to an embodiment of the present invention.

프로세서(120)는 결제 수단 정보 요청 메시지에 대응하여 결제 수단 정보가 입력된 경우, 결제 수단 정보가 나타내는 결제 수단으로 결제를 요청하는 결제 요청 메시지(M3)를 생성할 수 있다.When payment method information is input in response to the payment method information request message, the processor 120 may generate a payment request message (M3) requesting payment using the payment method indicated by the payment method information.

이때, 결제 요청 메시지(M3는 음성 메시지 및 텍스트 메시지 중 어느 하나 이상일 수 있다.At this time, the payment request message (M3) may be one or more of a voice message and a text message.

이후, 디스플레이(140)는 텍스트 메시지인 결제 요청 메시지(M3)를 출력할 수 있다. 또한, 스피커(150)는 음성 메시지인 결제 요청 메시지(M3)를 출력할 수 있다.Afterwards, the display 140 may output a payment request message (M3), which is a text message. Additionally, the speaker 150 may output a payment request message (M3), which is a voice message.

한편, 결제부(160)는 결제 금액 정보가 나타내는 결제 금액만큼 고객으로부터 입력된 결제 수단으로 결제를 수행할 수 있다.Meanwhile, the payment unit 160 can perform a payment using the payment method input by the customer up to the payment amount indicated by the payment amount information.

이를 위해, 결제부(160)는 신용카드로 결제 금액을 결제하는 신용카드 결제부(161) 및 현금을 투입받고 투입된 현금의 투입 금액을 인식하며 인출 요청된 인출 금액만큼의 현금을 인출시키는 현금 출입부(162)를 구비할 수 있다.For this purpose, the payment unit 160 includes a credit card payment unit 161 that pays the payment amount with a credit card, receives cash input, recognizes the input amount of the cash, and withdraws cash equal to the requested withdrawal amount. A unit 162 may be provided.

이때, 프로세서(120)는 결제 수단 정보가 나타내는 결제 수단이 현금이고, 현금 출입부(162)에 투입된 현금의 투입 금액에서 결제 금액 정보가 나타내는 결제 금액을 차감하여 금액차를 산출하고, 금액차를 안내하는 금액차 안내 메시지를 생성할 수 있다.At this time, the processor 120 determines that the payment method indicated by the payment method information is cash, calculates the amount difference by subtracting the payment amount indicated by the payment amount information from the amount of cash inputted into the cash entry unit 162, and calculates the amount difference. You can create a message informing you of the price difference.

이후, 디스플레이(140)는 텍스트 메시지인 금액차 안내 메시지를 출력할 수 있다. 또한, 스피커(150)는 음성 메시지인 금액차 안내 메시지를 출력할 수 있다.Afterwards, the display 140 may output a price difference information message, which is a text message. Additionally, the speaker 150 may output a price difference information message, which is a voice message.

한편, 복수의 로봇암부(130a, 130b)는 결제 금액 정보의 결제 금액에 대한 결제가 완료되면, 결제 상품 영역(PA)에 최근접한 컨베이어 디바이더(CD)를 계산대 컨베이어(CB)의 상부 영역 외부로 배치시킬 수 있다.Meanwhile, when the payment for the payment amount of the payment amount information is completed, the plurality of robot arm units (130a, 130b) move the conveyor divider (CD) closest to the payment product area (PA) to the outside of the upper area of the checkout conveyor (CB). It can be placed.

이후, 프로세서(120)는 결제 상품 영역(PA)으로 설정된 상품 영역(UA1)과 이웃하는 상품 영역(UA2)을 결제 상품 영역으로 재설정할 수 있다.Thereafter, the processor 120 may reset the product area UA1 set as the payment product area PA and the neighboring product area UA2 to the payment product area.

즉, 프로세서(120)는 계산대 컨베이어(CB)의 진행 방향을 기준으로 결제 상품 영역(PA)으로 설정된 상품 영역(UA1)의 뒤에 위치하는 상품 영역(UA2)을 결제 상품 영역으로 재설정할 수 있다.That is, the processor 120 may reset the product area UA2 located behind the product area UA1 set as the payment product area PA to the payment product area based on the moving direction of the checkout conveyor CB.

이를 통해, 프로세서(120)는 고객별로 상품의 결제 금액 정보를 산출할 수 있다.Through this, the processor 120 can calculate product payment amount information for each customer.

도 8은 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치가 결제 수단의 회수를 요청하는 과정을 설명하기 위한 도면이다.Figure 8 is a diagram for explaining a process in which a product calculation robot device using product code reading according to an embodiment of the present invention requests collection of a payment method.

프로세서(120)는 고객이 제공한 결제 수단으로 결제 금액 정보가 나타내는 결제 금액의 결제가 완료되면, 결제 수단의 회수를 요청하는 결제 수단 회수 요청 메시지를 생성할 수 있다.When payment of the payment amount indicated by the payment amount information is completed using the payment method provided by the customer, the processor 120 may generate a payment method recovery request message requesting recovery of the payment method.

이때, 프로세서(120)는 앞서 획득된 결제 수단 종류 정보가 현금을 나타내는 경우, 현금 출입부(162)에 투입된 현금의 투입 금액에서 결제 금액 정보가 나타내는 결제 금액을 차감한 금액차가 양수의 금액인 경우에만 결제 수단 회수 요청 메시지를 생성할 수 있다.At this time, if the previously obtained payment method type information indicates cash, the processor 120 determines if the difference between the amount of cash input into the cash entry unit 162 and the payment amount indicated by the payment amount information is a positive amount. You can only create a payment method recovery request message.

한편, 프로세서(120)는 앞서 획득된 결제 수단 종류 정보가 신용카드를 나타내는 경우, 신용카드 결제부(161)에 신용카드가 삽입되었는지 여부를 확인하고 신용카드 결제부(161)에 신용카드가 삽입되어 있으면 결제 수단 회수 요청 메시지를 생성할 수 있다.Meanwhile, if the previously obtained payment method type information indicates a credit card, the processor 120 checks whether a credit card has been inserted into the credit card payment unit 161 and inserts the credit card into the credit card payment unit 161. If so, you can create a payment method recovery request message.

이때, 결제 수단 회수 요청 메시지(M4)는 음성 메시지 및 텍스트 메시지 중 어느 하나 이상일 수 있다.At this time, the payment method recovery request message (M4) may be one or more of a voice message and a text message.

이후, 디스플레이(140)는 텍스트 메시지인 결제 수단 회수 요청 메시지(M4)를 출력할 수 있다. 또한, 스피커(150)는 음성 메시지인 결제 수단 회수 요청 메시지(M4)를 출력할 수 있다.Afterwards, the display 140 may output a payment method recovery request message (M4), which is a text message. Additionally, the speaker 150 may output a payment method recovery request message (M4), which is a voice message.

도 9 및 도 10은 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치가 위험 경고 메시지를 출력하는 과정을 설명하기 위한 도면이다.Figures 9 and 10 are diagrams for explaining a process in which a product calculation robot device using product code reading according to an embodiment of the present invention outputs a risk warning message.

프로세서(120)는 복수의 로봇암부(130a, 130b) 각각의 이동 가능 영역(MA)을 설정하고, 이동 가능 영역(MA) 내에 고객의 신체가 진입하는지 여부를 감지할 수 있다.The processor 120 may set a movable area (MA) for each of the plurality of robot arm units 130a and 130b and detect whether the customer's body enters the movable area (MA).

여기서, 이동 가능 영역(MA)는 복수의 로봇암부(130a, 130b)의 작동으로 복수의 로봇암부(130a, 130b)의 구성 요소 배치될 수 있는 공간을 의미할 수 있다.Here, the movable area MA may mean a space where the components of the plurality of robot arm units 130a and 130b can be arranged through the operation of the plurality of robot arm units 130a and 130b.

프로세서(120)는 이동 가능 영역(MA)을 촬영한 제1 영역 이미지에서 고객의 신체(B)가 인식되면 이동 가능 영역(MA) 내에 고객의 신체가 진입한 것으로 감지하고, 로봇암부와 고객의 신체 간에 충돌 위험을 경고하는 위험 경고 메시지를 생성할 수 있다.When the customer's body (B) is recognized in the first area image of the movable area (MA), the processor 120 detects that the customer's body has entered the movable area (MA), and detects that the customer's body has entered the movable area (MA), and the robot arm and the customer's body A hazard warning message can be generated that warns of the risk of collision between bodies.

이때, 위험 경고 메시지(M5)는 음성 메시지 및 텍스트 메시지 중 어느 하나 이상일 수 있다.At this time, the danger warning message (M5) may be one or more of a voice message and a text message.

이후, 디스플레이(140)는 텍스트 메시지인 위험 경고 메시지(M5)를 출력할 수 있다. 또한, 스피커(150)는 음성 메시지인 위험 경고 메시지(M5)를 출력할 수 있다.Afterwards, the display 140 may output a danger warning message (M5), which is a text message. Additionally, the speaker 150 may output a danger warning message (M5), which is a voice message.

한편, 프로세서(120)는 복수의 로봇암부 중 어느 하나의 로봇암부에 의해 이동되는 상품 즉, 이동 대상 상품이 결정되면, 이동이 결정된 상품의 상품 위치와 해당 로봇암부의 로봇암부 위치에 기초하여 해당 로봇암부의 이동 경로 영역(MP)를 설정할 수 있다.Meanwhile, when the processor 120 determines the product to be moved by one of the plurality of robot arm units, that is, the product to be moved, the processor 120 determines the product position of the product for which movement has been determined and the robot arm position of the corresponding robot arm unit. You can set the movement path area (MP) of the robot arm.

여기서, 이동 경로 영역(MP)는 로봇암부가 이동 대상 상품을 파지하여 코드 판독부(CR)로 이동시키는 동안에 해당 로봇암부의 구성 요소가 배치되는 경로의 집합을 의미할 수 있다.Here, the movement path area (MP) may mean a set of paths on which the components of the robot arm are arranged while the robot arm grasps the product to be moved and moves it to the code reading unit (CR).

프로세서(120)는 이동 경로 영역(MP)을 촬영한 제2 영역 이미지에서 고객의 신체(B)가 인식되면 이동 경로 영역(MP) 내에 고객의 신체가 진입한 것으로 감지하고, 로봇암부와 고객의 신체 간에 충돌 위험을 경고하는 위험 경고 메시지를 생성할 수 있다.When the customer's body (B) is recognized in the second area image that captures the movement path area (MP), the processor 120 detects that the customer's body has entered the movement path area (MP), and detects that the customer's body has entered the movement path area (MP), and A hazard warning message can be generated that warns of the risk of collision between bodies.

한편, 다른 실시 예에 따른 프로세서(120)는 결제 상품 영역(PA)의 설정을 수행한 횟수에 기초하여 수수료를 산출할 수 있다.Meanwhile, the processor 120 according to another embodiment may calculate a fee based on the number of times setting the payment product area (PA) is performed.

보다 구체적으로, 다른 실시 예에 따른 프로세서(120)는 미리 설정된 주기 마다 미리 설정된 기간 동안에 결제 상품 영역(PA)의 설정을 수행한 횟수에 비례하여 수수료를 산출할 수 있다.More specifically, the processor 120 according to another embodiment may calculate a fee in proportion to the number of times the payment product area (PA) is set during a preset period at each preset cycle.

여기서, 미리 설정된 기간은 매장의 영업시간이고, 미리 설정된 주기는 하루일 수 있다.Here, the preset period may be the store's business hours, and the preset period may be one day.

예를 들어, 매장의 영업시간이 매일 오전 9시부터 오후 10시까지인 경우, 미리 설정된 기간은 매일 오전 9시부터 오후 10시까지이고, 다른 실시 예에 따른 프로세서(120)는 오전 9시부터 오후 10시까지의 수수료를 매일 산출할 수 있다.For example, if the store's business hours are from 9:00 AM to 10:00 PM every day, the preset period is from 9:00 AM to 10:00 PM every day, and the processor 120 according to another embodiment may operate from 9:00 AM to 10:00 PM. Fees up to 10 o'clock can be calculated daily.

한편, 다른 실시 예에 따른 프로세서(120)는 미리 설정된 기간 동안에 결제 상품 영역(PA)의 설정을 수행한 횟수에 단위 수수료를 적용하여 수수료를 산출할 수 있다.Meanwhile, the processor 120 according to another embodiment may calculate the fee by applying a unit fee to the number of times the payment product area (PA) is set during a preset period.

여기서, 단위 수수료는 결제 상품 영역(PA)을 1회 설정할 때 책정되는 수수료를 의미할 수 있다.Here, the unit fee may refer to the fee charged when setting the payment product area (PA) once.

예를 들어, 어느 하루의 미리 설정된 기간 동안에 다른 실시 예에 따른 프로세서(120)가 결제 상품 영역(PA)을 10회 설정하고, 단위 수수료가 100원인 경우, 다른 실시 예에 따른 프로세서(120)는 10회에 단위 수수료 100원을 곱하여 수수료를 1,000원으로 산출할 수 있다.For example, if the processor 120 according to another embodiment sets the payment product area (PA) 10 times during a preset period of one day and the unit fee is 100 won, the processor 120 according to another embodiment sets the payment product area (PA) 10 times. The fee can be calculated as 1,000 won by multiplying 10 times by the unit fee of 100 won.

한편, 본 발명의 일 실시 예에 따른 상품 코드 판독을 이용한 상품 계산 로봇 장치(100)는 상술된 기능을 수행하기 위해, 데이터, 정보 및 신호를 송수신하는 통신부(170) 및 데이터, 정보 및 신호를 저장하는 저장부(180)를 포함할 수 있다.Meanwhile, the product calculation robot device 100 using product code reading according to an embodiment of the present invention includes a communication unit 170 for transmitting and receiving data, information and signals, and data, information and signals in order to perform the above-described functions. It may include a storage unit 180 for storing.

한편, 프로세서(120)는 상술된 각 구성 요소의 작동을 수행할 수 있으며, 하나 이상의 코어(core, 미도시) 및 그래픽 처리부(미도시) 및/또는 다른 구성 요소와 신호를 송수신하는 연결 통로(예를 들어, 버스(bus) 등)를 포함할 수 있다.Meanwhile, the processor 120 may perform the operation of each of the above-described components, and may include one or more cores (not shown) and a graphics processing unit (not shown) and/or a connection passage for transmitting and receiving signals with other components ( For example, it may include a bus, etc.).

프로세서(120)는 저장부(180)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 상술된 각 구성 요소의 작동을 수행하도록 구성될 수 있다.The processor 120 may be configured to perform the operation of each of the components described above by executing one or more instructions stored in the storage unit 180.

저장부(180)에는 프로세서(120)의 처리 및 제어를 위한 프로그램들(하나 이상의 인스트럭션들)을 저장할 수 있다. 저장부(180)에 저장된 프로그램들은 기능에 따라 복수 개의 모듈들로 구분될 수 있다.The storage unit 180 may store programs (one or more instructions) for processing and controlling the processor 120. Programs stored in the storage unit 180 may be divided into a plurality of modules according to their functions.

이제까지 본 발명에 대하여 바람직한 실시 예를 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 본 발명을 구현할 수 있음을 이해할 것이다. 그러므로 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 한다.So far, the present invention has been examined with a focus on preferred embodiments. A person skilled in the art to which the present invention pertains will understand that the present invention can be implemented in a modified form without departing from the essential characteristics of the present invention. Therefore, the disclosed embodiments should be considered from an illustrative rather than a restrictive perspective. The scope of the present invention is indicated in the claims rather than the foregoing description, and all differences within the equivalent scope should be construed as being included in the present invention.

이상과 같이, 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 이것에 의해 한정되지 않으며 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술사상과 아래에 기재될 특허청구범위의 균등범위 내에서 다양한 수정 및 변형이 가능함은 물론이다.As described above, although the present invention has been described with limited examples and drawings, the present invention is not limited thereto, and the technical idea of the present invention and the following will be understood by those skilled in the art to which the present invention pertains. Of course, various modifications and variations are possible within the scope of equivalence of the patent claims to be described.

100 : 상품 코드 판독을 이용한 상품 계산 로봇 장치
110 : 촬영부
120 : 프로세서
130 : 로봇암부
140: 디스플레이
150: 스피커
160: 결제부
170: 통신부
180: 저장부
100: Product calculation robot device using product code reading
110: Filming department
120: processor
130: Robot arm part
140: display
150: speaker
160: Payment department
170: Department of Communications
180: storage unit

Claims (1)

결제를 위해 계산대 컨베이어의 상부 영역에 배치된 복수의 상품 각각의 상품 코드를 판독하여 고객별로 결제 금액 정보를 산출하는 상품 코드 판독을 이용한 상품 계산 로봇 장치에 있어서,
상품을 선택한 고객별로 상기 복수의 상품을 분리시키는 컨베이어 디바이더 및 상기 복수의 상품이 상부 영역에 배치된 상기 계산대 컨베이어를 촬영하여 컨베이어 이미지를 생성하는 촬영부;
상기 컨베이어 이미지로부터 상기 컨베이어 디바이더의 디바이더 위치를 인식하고, 상기 디바이더 위치에 기초하여 상기 계산대 컨베이어의 상부 영역 중에서 결제 상품 영역을 설정하는 프로세서; 및
상품의 가격 정보를 포함하고 상품의 일측에 배치되는 상기 상품 코드가 판독되도록 상품을 파지하여 코드 판독부로 이동시키는 로봇암부;를 포함하고,
상기 프로세서는
상기 결제 상품 영역에 배치되었던 상품의 상품 코드로부터 판독된 가격 정보를 합산하여 고객이 결제할 결제 금액을 나타내는 상기 결제 금액 정보로 산출하고,
상기 프로세서는
상기 디바이더 위치를 기준으로 상기 상부 영역을 복수의 상품 영역으로 구획하고, 상기 복수의 상품 영역 중에서 최선단에 위치한 상품 영역을 상기 결제 상품 영역으로 설정하고,
상기 프로세서는
3차원 공간인 상기 상부 영역 내에 상기 디바이더 위치에 대응되는 가상의 평면을 형성하고, 상기 가상의 평면에 의해 상기 상부 영역으로부터 분할되는 영역을 상기 복수의 상품 영역으로 구획하고,
상기 프로세서는
상기 계산대 컨베이어의 상부면인 상기 상부 영역의 하부면에 직립하도록 상기 가상의 평면을 형성하되, 상기 가상의 평면과 상기 계산대 컨베이어의 상부면이 접하는 직선 및 상기 계산대 컨베이어의 진행 방향이 이루는 각도가, 상기 컨베이어 디바이더 및 상기 계산대 컨베이어의 진행 방향이 이루는 각도와 동일하도록 상기 가상의 평면을 형성하고,
상기 프로세서는
상기 계산대 컨베이어가 진행 방향으로 상기 복수의 상품 및 상기 컨베이어 디바이더를 이동시킴에 따라, 미리 설정된 주기마다 상기 결제 상품 영역의 설정을 보정하고,
상기 프로세서는
상기 결제 상품 영역에 배치된 모든 상품의 결제가 완료된 경우, 상기 결제 상품 영역으로 설정된 상품 영역과 이웃하는 상품 영역을 결제 상품 영역으로 재설정하고,
상기 프로세서는
상기 코드 판독부로의 이동이 결정된 상품의 상품 위치와 상기 로봇암부의 로봇암부 위치에 기초하여, 이동이 결정된 상품을 파지해 상기 로봇암부가 상기 코드 판독부로 이동시키는 동안 상기 로봇암부의 구성 요소가 배치되는 경로의 집합인 이동 경로 영역을 설정하고, 상기 이동 경로 영역을 촬영한 제2 영역 이미지에서 고객의 신체가 인식되면 상기 이동 경로 영역 내에 고객의 신체가 진입한 것으로 감지하고, 상기 로봇암부와 고객의 신체 간에 충돌 위험을 경고하는 위험 경고 메시지를 생성하고,
상기 프로세서는
미리 설정된 기간 동안에 상기 결제 상품 영역의 설정을 수행한 횟수에 단위 수수료를 적용하여 미리 설정된 주기 마다 수수료를 산출하고,
상기 프로세서는
상기 결제 상품 영역에 배치된 모든 상품의 상품 코드가 판독된 경우, 고객의 회원 정보를 요청하는 회원 정보 요청 메시지를 생성하는 것을 특징으로 하는
고객과의 충돌 방지가 가능한 상품 계산 로봇 장치.
In the product calculation robot device using product code reading, which calculates payment amount information for each customer by reading the product code of each of a plurality of products arranged in the upper area of the checkout conveyor for payment,
a conveyor divider that separates the plurality of products for each customer who selects the product, and a photographing unit that generates a conveyor image by photographing the checkout conveyor on which the plurality of products are arranged in an upper area;
a processor that recognizes a divider position of the conveyor divider from the conveyor image and sets a payment product area in the upper area of the checkout conveyor based on the divider position; and
It includes a robot arm that holds the product and moves it to the code reading unit so that the product code, which includes the price information of the product and is placed on one side of the product, is read,
The processor is
Calculating the payment amount information indicating the payment amount to be paid by the customer by adding up the price information read from the product code of the product placed in the payment product area,
The processor is
Divide the upper area into a plurality of product areas based on the divider position, and set the product area located at the forefront among the plurality of product areas as the payment product area,
The processor is
Forming a virtual plane corresponding to the position of the divider in the upper area, which is a three-dimensional space, and dividing the area divided from the upper area by the virtual plane into the plurality of product areas,
The processor is
The virtual plane is formed to stand upright on the lower surface of the upper area, which is the upper surface of the checkout conveyor, and the angle formed by the straight line in contact between the virtual plane and the upper surface of the checkout conveyor and the moving direction of the checkout conveyor is, Forming the virtual plane to be equal to the angle formed by the moving direction of the conveyor divider and the checkout conveyor,
The processor is
As the checkout conveyor moves the plurality of products and the conveyor divider in a moving direction, the settings of the payment product area are corrected at preset intervals,
The processor is
When payment for all products placed in the payment product area is completed, the product area set as the payment product area and the neighboring product area are reset to the payment product area,
The processor is
Based on the product position of the product whose movement to the code reading unit is determined and the robot arm position of the robot arm unit, the components of the robot arm are disposed while the robot arm grasps the product whose movement has been determined and moves it to the code reading unit. A movement path area, which is a set of paths, is set, and when the customer's body is recognized in the second area image taken of the movement path area, it is detected that the customer's body has entered the movement path area, and the robot arm and the customer Generates a hazard warning message warning of the risk of collision between the bodies of
The processor is
Calculating a fee at each preset cycle by applying a unit fee to the number of times the payment product area is set during a preset period,
The processor is
When the product codes of all products placed in the payment product area are read, a member information request message is generated requesting the customer's member information.
A product counting robot device that can prevent collisions with customers.
KR1020240002324A 2022-09-16 2024-01-05 Robot apparatus for calculating product each customer and preventing collision with customer KR20240038660A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020240002324A KR20240038660A (en) 2022-09-16 2024-01-05 Robot apparatus for calculating product each customer and preventing collision with customer

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020220116918A KR102623905B1 (en) 2022-09-16 2022-09-16 Robot apparatus for cashing product using product code reading
KR1020240002324A KR20240038660A (en) 2022-09-16 2024-01-05 Robot apparatus for calculating product each customer and preventing collision with customer

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020220116918A Division KR102623905B1 (en) 2022-09-16 2022-09-16 Robot apparatus for cashing product using product code reading

Publications (1)

Publication Number Publication Date
KR20240038660A true KR20240038660A (en) 2024-03-25

Family

ID=89511721

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020220116918A KR102623905B1 (en) 2022-09-16 2022-09-16 Robot apparatus for cashing product using product code reading
KR1020240002323A KR20240038659A (en) 2022-09-16 2024-01-05 Robot apparatus for calculating product each customer
KR1020240002324A KR20240038660A (en) 2022-09-16 2024-01-05 Robot apparatus for calculating product each customer and preventing collision with customer

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020220116918A KR102623905B1 (en) 2022-09-16 2022-09-16 Robot apparatus for cashing product using product code reading
KR1020240002323A KR20240038659A (en) 2022-09-16 2024-01-05 Robot apparatus for calculating product each customer

Country Status (1)

Country Link
KR (3) KR102623905B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180109107A (en) 2017-03-27 2018-10-08 (주)로직아이텍 Intelligent cart robotic devices for use in stores and warehouses

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101983611B1 (en) * 2017-03-03 2019-05-29 정태선 Abalone spat counter equipment
KR102165868B1 (en) * 2018-11-20 2020-10-15 동국대학교 산학협력단 System and method for automatically classifying consumer goods
JP6804576B2 (en) * 2019-02-05 2020-12-23 東芝テック株式会社 Checkout system
KR102333971B1 (en) * 2021-09-28 2021-12-03 이현 System for cashing product using automatic barcode scanning

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180109107A (en) 2017-03-27 2018-10-08 (주)로직아이텍 Intelligent cart robotic devices for use in stores and warehouses

Also Published As

Publication number Publication date
KR20240038659A (en) 2024-03-25
KR102623905B1 (en) 2024-01-10

Similar Documents

Publication Publication Date Title
CN108780596B (en) Information processing system
US11915217B2 (en) Self-checkout anti-theft vehicle systems and methods
US10573135B2 (en) Apparatus, system, and method for self-service shopping
EP4156060A1 (en) Product checkout system using automatic barcode scanning
JP2020506457A (en) Automatic in-store registration system
AU2019100428A4 (en) An intelligent in-store shopping platform for customers and retailers. With this, customers can select, scan, and pay for the products via smartphones and check-out of the store with minimal human intervention. The system uses hi-end technologies such as artificial intelligence for anti-shoplifting, automated decision making, Computer Vision, weighing techniques, electronic circuitry and RFID. The framework uses intricate IoT (Internet of Things) technology and self-learning algorithms, big data analytics, customer engagement and pattern analysis using data extraction and knowledge mining.
CN112567419A (en) Self-service product return using computer vision and artificial intelligence
US10383461B2 (en) System of control and identification of goods in a shop
CN110097715A (en) Merchandise management server, automatic cash register system and merchandise control method
Hanooja et al. Human friendly smart trolley with automatic billing system
CN109754544A (en) Commodity data processing unit, processing system and processing method
CN109190706A (en) Self-service method, apparatus and system
KR102623905B1 (en) Robot apparatus for cashing product using product code reading
KR102636634B1 (en) Robot apparatus for cashing product using multiple robot arms
JP4607940B2 (en) Merchandise sales data processing apparatus and computer program
CN107909451A (en) After a kind of online shopping can under line picking automatically vending system and method
JP2009134479A (en) Article sales data processor and computer program
CN106157045A (en) Method based on logistics data identification wash sale, device and server
WO2020175611A1 (en) Gate device, method for controlling gate device, and program
CN109559186A (en) A kind of method, apparatus and application of automatic distributing shopping bag
Singhi et al. Smart Shopping System for Billing Automation
KR102456400B1 (en) Method, device and system for providing multi platform service for wholesale and retail e-commerce
KR100691408B1 (en) Self-calculating die and motion system for self-calculating die
WO2023187993A1 (en) Product quantity determination device, product quantity determination method, and recording medium
JPH08190672A (en) Pos system device