Controller and code reader system

The controller dynamically determines the camera's control parameters, which solves the problem of reading errors caused by changes in the workpiece conveying state, and realizes efficient code reading when the conveying state changes.

CN120387463APending Publication Date: 2025-07-29KEYENCE CORP
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202510066352.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-01-26
Filing Date
2025-01-16
Publication Date
2025-07-29

AI Technical Summary

Technical Problem

Existing code readers are prone to read errors when the workpiece conveying state changes, and cannot adapt to real-time changes in the workpiece conveying state.

Method used

The controller obtains the detection signal of the workpiece, the conveyor conveyor speed and the camera installation information, identify the conveyor state of the workpiece, and dynamically determine the control parameters of the camera to ensure that the camera's shooting process adapts to the changes in the conveyor state.

Benefits of technology

Even if the workpiece conveying state changes, it can still effectively suppress the occurrence of reading errors and improve the accuracy and reliability of code reading.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120387463A_ABST
    Figure CN120387463A_ABST
Patent Text Reader

Abstract

The invention provides a controller and a code reader system. Even if the conveying state of a workpiece changes during operation, the occurrence of a reading error is suppressed. The controller includes: an acquisition unit for acquiring a detection signal of the workpiece, a conveying speed of the conveyor, and mounting information for indicating a relative position and posture of each camera with respect to the conveyor; the recognition unit is used for recognizing the conveying state of the workpiece on the basis of the detection signal and the conveying speed; a processing determination unit for determining, for each camera, a control parameter corresponding to a conveying position of the workpiece on the conveyor based on the conveying state and the mounting information of each camera; and a communication unit for transmitting the control parameter determined by the process determination unit to each corresponding camera.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a controller and a code reader system. Background Art

[0002] For example, a code reader is configured to photograph a code such as a barcode or a two-dimensional code attached to a workpiece conveyed by a conveyor via a camera, cut out the code included in the obtained image through image processing, binarize the code, decode the code, and read information (see, for example, Japanese Unexamined Patent Application Publication No. 2021-149588A).

[0003] This type of code reader is used by connecting to a computer and a programmable logic controller (PLC) or the like as an external control device. For example, a user makes various settings such as the photographing conditions, image processing, and decoding processing of the code reader through a computer, and the setting information set by the user through the computer is transmitted to the code reader and applied during operation. During operation, the code reader performs photographing and decoding processing of the workpiece based on a trigger signal input from the PLC.

[0004] Thereafter, the decoding result obtained through the decoding processing is sent to the PLC.

[0005] However, the conveying state of the workpiece by the conveying device is not always the same, and it is conceivable that the conveying state changes over time. In this regard, in the code reader of Japanese Unexamined Patent Application Publication No. 2021-149588A, once the photographing conditions and the like are set before operation, since the setting will continue to be applied during operation, for example, when the conveying state of the workpiece by the conveying device changes, the photographing processing and the like cannot be appropriately performed, and thus there is a concern that a reading error may occur. Summary of the Invention

[0006] In view of this, the present disclosure has been made, and an object of the present disclosure is to suppress the occurrence of reading errors even when the conveying state of the workpiece changes during operation.

[0007] To achieve the above object, according to an embodiment of the present disclosure, a controller may be assumed that is connected to a decoder and one or more cameras for generating an image based on reflected light from a code attached to a workpiece conveyed on a conveyor, and the decoder for performing decoding processing of the code attached to the workpiece based on an image output from the one or more cameras.

[0008] The controller includes: an acquisition unit configured to acquire a detection signal of the workpiece using a detection sensor, conveyor information including the conveyance speed of the conveyor, and installation information indicating the position and orientation of each of the one or more cameras in a conveyor coordinate system; an identification unit configured to identify a conveyance state of the workpiece based on the detection signal and the conveyance speed; a processing determination unit configured to determine, for each camera, control parameters corresponding to a conveyance position of the workpiece on the conveyor based on the conveyance state and the installation information of each camera; and a communication unit configured to transmit the control parameters determined by the processing determination unit to each corresponding camera.

[0009] According to this configuration, when acquiring an image of a code of a workpiece conveyed on a conveyor by a camera, the control parameters of the camera are dynamically determined based on the conveyance state of the workpiece identified by the identification unit and the installation information of the camera. For example, in a case where the conveyance state of the workpiece changes during operation, since the control parameters of the camera are determined based on the changed conveyance state, the imaging process of the camera can be executed with control parameters suitable for the changed conveyance state. As a result, even in a case where the conveyance state of the workpiece changes during operation, occurrence of reading errors is suppressed.

[0010] According to another embodiment of the present disclosure, a controller may be assumed that is communicatively connected to one or more code readers. Each of the code readers includes: an illumination control unit configured to control an illumination unit for irradiating a workpiece conveyed on a conveyor; a camera configured to generate an image based on reflected light from a code attached to the workpiece; and a decoder configured to perform a decoding process of the code attached to the workpiece based on an image output from the camera. In this case, the controller may include: an acquisition unit configured to acquire a detection signal of the workpiece using a detection sensor, the conveyance speed of the conveyor, and installation information indicating the position and orientation of each of the one or more code readers in a conveyor coordinate system of the conveyor; an identification unit configured to identify a conveyance state of the workpiece based on the detection signal and the conveyance speed; a processing determination unit configured to determine, for each code reader, control parameters corresponding to a conveyance position of the workpiece on the conveyor based on the conveyance state and the installation information of each code reader; and a communication unit configured to transmit the control parameters determined by the processing determination unit to each corresponding code reader.

[0011] According to another embodiment of the present disclosure, a code reader system may be assumed that is configured to read a code attached to a workpiece on a conveyor downstream of a detection sensor for detecting the workpiece conveyed on the conveyor, based on a detection signal from the detection sensor. The code reader system may include: one or more code readers, each including: a lighting control unit configured to control a lighting unit for irradiating the workpiece; a camera configured to generate an image based on reflected light from the workpiece; and a decoder configured to perform a decoding process of the code attached to the workpiece based on the image generated by the camera; and a controller including: an acquisition unit configured to acquire the detection signal, a conveyance speed of the conveyor, and installation information indicating a position and orientation of each of the one or more code readers in a conveyor coordinate system of the conveyor; an identification unit configured to identify a conveyance state of the workpiece based on the detection signal and the conveyance speed; a process determination unit configured to determine, for each code reader, control parameters corresponding to a conveyance position of the workpiece on the conveyor based on the conveyance state and the installation information of each code reader; and a communication unit configured to send the control parameters determined by the process determination unit to each corresponding code reader.

[0012] As described above, since the control parameters of the camera can be dynamically determined during operation, occurrence of reading errors can be suppressed even when the conveyance state of the workpiece changes. BRIEF DESCRIPTION OF THE DRAWINGS

[0013] Figure 1 is a schematic configuration diagram of a code reader system according to an embodiment of the present invention;

[0014] Figure 2 is a diagram for describing Operation Example 1 of the code reader system;

[0015] Figure 3 is a plan view for describing Operation Example 2 of the code reader system;

[0016] Figure 4A is a plan view for describing Operation Example 2 of the code reader system;

[0017] Figure 4B is a side view for describing Operation Example 2 of the code reader system;

[0018] Figure 5 is a block diagram of the code reader;

[0019] Figure 6 is a diagram showing respective positional relationships from a trigger point to an output point;

[0020] Figure 7It is a diagram showing an example of the connection form between the controller and the code reader;

[0021] Figure 8 It is a diagram for describing the positional relationship between the code reader and the conveying device;

[0022] Figure 9 It is a block diagram of the controller;

[0023] Figure 10 It is a timing diagram in the case where multiple code readers are provided;

[0024] Figure 11 It is used to describe Figure 10 a diagram showing the details of the timing diagram shown;

[0025] Figure 12 It is a timing diagram in the case where the lighting units of multiple code readers are turned on simultaneously;

[0026] Figure 13 It is a timing diagram in the case where the lighting cycle and the shooting cycle are common for all code readers;

[0027] Figure 14 It is a timing diagram in the case where the lighting cycle and the shooting cycle are different for each code reader but are common for each code reader unit;

[0028] Figure 15 It is a timing diagram in the case where the lighting cycle and the shooting cycle are different for each code reader unit for each code reader;

[0029] Figure 16 It is a diagram for describing the shooting area in the case where multiple workpieces approach in the conveying direction;

[0030] Figure 17 It is a diagram for describing the mask area in the case where multiple workpieces approach in the conveying direction;

[0031] Figure 18 It is a diagram showing the shooting area in the case of using a custom sensor;

[0032] Figure 19 It is a diagram showing the reading direction of the custom sensor;

[0033] Figure 20 It is a diagram showing the installation information acquired by the acquisition unit during calibration;

[0034] Figure 21 It is a diagram showing the calculation results of the positions and installation angles of the respective code readers in the coordinate system of the conveying device;

[0035] Figure 22A figure showing the camera information acquired by the acquisition unit during calibration;

[0036] Figure 23 A figure showing the transformation formula used when the coordinate system of the conveying device is transformed into the coordinate system of the imaging unit;

[0037] Figure 24 A figure showing the transformation formula used when the coordinate system of the imaging unit is transformed into the coordinate system of the image sensor;

[0038] Figure 25 A figure showing an example of a calibration model;

[0039] Figure 26 A figure corresponding to after the change of the position parameter of the code reader is accepted; Figure 25 Corresponding figure;

[0040] Figure 27 A figure corresponding to an example showing an image of the workpiece being conveyed; Figure 25 Corresponding figure;

[0041] Figure 28 A figure corresponding to the case where the edge display line is aligned with the workpiece; Figure 27 Corresponding figure;

[0042] Figure 29 A figure corresponding to the case where the code reader is installed to image the workpiece from the upstream side on the side of the workpiece; Figure 25 Corresponding figure;

[0043] Figure 30 A figure corresponding to an example showing an image of the workpiece being conveyed; Figure 29 Corresponding figure;

[0044] Figure 31 A figure corresponding to the case where the code reader is installed to image the workpiece from the downstream side on the side of the workpiece; Figure 25 Corresponding figure;

[0045] Figure 32 A figure corresponding to an example showing an image of the workpiece being conveyed; Figure 31 Corresponding figure;

[0046] Figure 33 A figure according to a modification example in the case where the code reader is installed to image the workpiece from the upstream side on the side of the workpiece;

[0047] Figure 34 A figure corresponding to an example showing an image of the workpiece being conveyed; Figure 33 Corresponding figure;

[0048] Figure 35 A figure according to a modification example in the case where the code reader is installed to image the workpiece from the downstream side on the side of the workpiece;

[0049] Figure 36 is a diagram corresponding to an example showing an image of a workpiece being conveyed; Figure 35 ;

[0050] Figure 37 is a block diagram of a collection and analysis device;

[0051] Figure 38 is a flowchart showing an example of a processing flow from image capture to image storage;

[0052] Figure 39 is a diagram showing an example of an image display user interface screen;

[0053] Figure 40 is a flowchart showing an example of a process from after decoding processing until additionally writing a log;

[0054] Figure 41 is a block diagram showing the situation of accumulating images in each collection and analysis device;

[0055] Figure 42 is a flowchart showing an example of a control flow of a controller when setting up a code reader system; and

[0056] Figure 43 is a flowchart showing an example of a control flow of a controller during the operation of a code reader system. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0057] Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. Note that the following description of the preferred embodiments is merely exemplary in nature and is not intended to limit the present invention, its applications, or its uses.

[0058] Figure 1 is a diagram showing a schematic configuration of a code reader system S including a code reader 1 according to an embodiment of the present invention. Figure 2 、 Figure 3 、 Figure 4A and Figure 4B are diagrams for describing Operation Example 1 and Operation Example 2 of the code reader system S. In Operation Example 1 and Operation Example 2, the situation of using the code reader system S at a logistics site for handling a plurality of workpieces W is shown. At the logistics site, a conveying device B for sequentially conveying a plurality of workpieces W in a predetermined conveying direction is installed. The conveying direction of the workpiece W is indicated by the arrow A in Figure 2 . Therefore, Figure 2 、 Figure 3 、 Figure 4A and Figure 4B the left side in is the upstream side in the conveying direction, and the right side is the downstream side in the conveying direction.

[0059] As Figure 2 shown, the conveying device B includes a plurality of conveying mechanisms B1 and B2. The conveying mechanisms B1 and B2 are, for example, belt conveyors or roller conveyors, etc., and include an upstream conveying mechanism B1 and a downstream conveying mechanism B2. The upper surfaces of the upstream conveying mechanism B1 and the downstream conveying mechanism B2 are conveying surfaces. In this embodiment, the conveying direction of the workpiece W is defined as the Y direction, the direction orthogonal to the Y direction on the conveying surface is defined as the X direction, and the direction orthogonal to both the X direction and the Y direction is defined as the Z direction. In a logistics site, the X direction and the Y direction can be substantially horizontal, but the Y direction can be inclined with respect to the horizontal plane. The X direction can be referred to as the width direction of the conveying mechanisms B1 and B2, or can be referred to as the longitudinal direction of the gap of the conveying device B. In addition, the Z direction can also be referred to as the height direction (vertical direction). Note that the definition of the direction is for convenience of description and does not limit the direction in use.

[0060] The upstream conveying mechanism B1 and the downstream conveying mechanism B2 are arranged at intervals in the conveying direction. The size (dimension) of the interval between the upstream conveying mechanism B1 and the downstream conveying mechanism B2 is not particularly limited, but is set such that the smallest workpiece W to be conveyed can be smoothly transferred from the upstream conveying mechanism B1 to the downstream conveying mechanism B2 without falling through the gap. The dimension of the gap in the longitudinal direction (the dimension in the X direction) is approximately the same as the width of the conveying mechanisms B1 and B2 (the dimension in the X direction), but these dimensions are not particularly limited either.

[0061] The number of code readers 1 included in the code reader system S can be one or more than one. The code reader 1 of this embodiment is of a fixed type. The operation time of the fixed-type code reader 1 is the time for performing an operation for sequentially reading the codes of the workpieces W conveyed by the conveying device B. The code reader 1 is fixed to a frame, a table, a bracket, etc. (not shown). In this embodiment, the case where the code reader system S includes a plurality of code readers 1 will be described. In Figure 2 the operation example 1 shown, three code readers 1 are used, and the field of view of the code reader 1 is indicated by the reference numeral C.

[0062] In the case where a plurality of code readers 1 are provided, the plurality of code readers 1 can be installed to surround the workpiece W. That is, the code reader 1 in the operation example 1 includes a code reader 1A for upstream-side inclined reading installed so as to be able to read the code given to the workpiece W from the upstream side above the workpiece W, a code reader 1B for downstream-side inclined reading installed so as to be able to read the code given to the workpiece W from the downstream side above the workpiece W, and a code reader 1C for bottom-surface reading. The code reader 1C for bottom-surface reading is installed below the conveying device B such that the gap between the upstream-side conveying mechanism B1 and the downstream-side conveying mechanism B2 is included in the visual field C.

[0063] Since the gap between the upstream-side conveying mechanism B1 and the downstream-side conveying mechanism B2 is included in the visual field C of the code reader 1C for bottom-surface reading, when the bottom surface of the workpiece W being conveyed passes through this gap, the bottom surface can be photographed by the code reader 1C. A code can be given to the bottom surface of the workpiece W. In the case where a code is given to the bottom surface of the workpiece W, since the code reader 1 is installed at an installation position below the conveying surface of the conveying device B, the code attached to the bottom surface of the workpiece W can be read from below the conveying surface of the conveying device B through the gap.

[0064] The photographing unit 3 of the code reader 1C for bottom-surface reading is a bottom-surface camera, and outputs a plurality of images in which a part of the code attached to the bottom surface of the workpiece W appears by continuously photographing the bottom surface of the workpiece W exposed from the gap of the conveying device B and included in the depth of field of the photographing unit 3. After a plurality of images photographing a part of the code in the conveying direction are sequentially output from the image sensor 31b, the code image given to the bottom surface of the workpiece W can be obtained by synthesizing these images.

[0065] A plurality of code readers 1C for bottom-surface reading can be installed. In this case, a plurality of photographing units 3 for reading the common gap of the conveying device B from below the conveying surface of the conveying device B and a plurality of lighting units 2 corresponding to the plurality of photographing units 3 can be provided.

[0066] Figure 3 Shows the arrangement of the code readers 1A, 1B, 1D, 1E, 1F and 1G in the operation example 2. Figure 4A Shows the scene of the code readers 1D to 1G of the operation example 2 viewed from above the conveying device B, and Figure 4BShows a scene of the code readers 1A and 1B in operation example 2 as viewed from the side of the conveying device B. In operation example 2, six code readers are used. Specifically, the code reader 1A captures the upper surface and the front surface of the workpiece W, the code reader 1B captures the upper surface and the rear surface of the workpiece W, the code reader 1D captures the side surface (right side in the conveying direction) and the rear surface of the workpiece W, the code reader 1E captures the side surface (right side in the conveying direction) and the front surface of the workpiece W, the code reader 1F captures the side surface (left side in the conveying direction) and the rear surface of the workpiece W, and the code reader 1G captures the side surface (left side in the conveying direction) and the front surface of the workpiece W.

[0067] The code reader system in this embodiment is not limited to operation example 1 and operation example 2, and operation example 1 and operation example 2 can be arbitrarily combined. For example, in operation example 2, the code reader 1C for bottom surface reading in operation example 1 can be additionally installed. The code reader 1 can be installed at installation locations other than operation example 1 and operation example 2. In operation example 1 and operation example 2, multiple code readers 1 can capture different workpiece surfaces of the workpiece W.

[0068] The codes attached to the workpiece W include both barcodes and two-dimensional codes. Examples of two-dimensional codes include QR codes (QR code (registered trademark)), micro QR codes, and data matrices (data codes), Veri codes, Aztec codes, PDF417, and Maxi codes, etc. Two-dimensional codes include stacked types and matrix types, but the present invention can be applied to any two-dimensional code. The code can be given by directly printing or stamping on the workpiece W, or can be given by pasting it on the workpiece W after printing on a label, and its means and methods are not limited. Additionally, in the case of using multiple code readers 1, all the code readers can be the same code reader or different code readers. In the following description, it is assumed that all the code readers 1 are the same code reader.

[0069] Figure 5 Is a block diagram of the code reader 1. The code reader 1 includes an illumination unit 2, a photographing unit (camera) 3, a control unit 4, a storage unit 5, and a reader-side communication unit 6. The control unit 4 includes a photographing control unit 41 for controlling the photographing unit 3, an illumination control unit 42 for controlling the illumination unit 2, a code detection unit 43, and a decoding unit (decoder) 44. Additionally, the storage unit 5 includes a decoding result storage unit 51, an image data storage unit 52, and a setting storage unit 53. The decoding result storage unit 51, the image data storage unit 52, and the setting storage unit 53 can be provided, for example, as a rewritable storage device such as a solid-state drive (SSD). Although not shown, the decoding result storage unit 51, the image data storage unit 52, and the setting storage unit 53 can be provided as separate storage devices.

[0070] The reader-side communication unit 6 is a unit for performing communication with various external devices (details will be described later). The control unit 4 receives setting information and the like sent from the external device via the reader-side communication unit 6. In addition, the control unit 4 receives a reading start trigger signal from the external device via the reader-side communication unit 6. The decoding result of the code reader 1 is sent to the external device via the reader-side communication unit 6. In addition, the reader-side communication unit 6 also receives, for example, the size of the gap formed between the plurality of conveying mechanisms B1 and B2 included in the conveying device B and the conveying speed of the conveying device B, etc. The size of the gap and the conveying speed can be pre-input by the user in the external device. The input size of the gap and the conveying speed are stored in the external device, and the size of the gap and the conveying speed are sent from the external device and then received and acquired by the reader-side communication unit 6.

[0071] The illumination unit 2 is a unit for irradiating the workpiece W conveyed on the conveying device B with illumination light. In Figure 2 In the case of the operation example 1 shown, since the code reader 1C for bottom surface reading is installed below the conveying surface of the conveying device B, the illumination unit 2 irradiates the gap between the upstream conveying mechanism B1 and the downstream conveying mechanism B2 with illumination light from below the conveying surface. As a result, when the bottom surface of the workpiece W being conveyed passes through the gap between the upstream conveying mechanism B1 and the downstream conveying mechanism B2, the bottom surface can be illuminated by the illumination unit 2. In the case of giving a code to the bottom surface of the workpiece W, the code attached to the bottom surface of the workpiece W can be illuminated by the illumination unit 2. The illumination unit 2 includes, for example, a light-emitting body including a light-emitting diode (LED).

[0072] The illumination unit 2 and the imaging unit 3 can be integrated, or the illumination unit 2 and the imaging unit 3 can be separated. The illumination unit 2 is controlled by the illumination control unit 42 to switch between on and off and change the brightness when on, etc. When a reading start trigger signal is input from the external device, the illumination control unit 42 turns on the illumination unit 2 for a predetermined time and turns off the illumination unit 2 after the elapse of the predetermined time.

[0073] The imaging unit 3 is a unit for generating an image based on the reflected light from the code attached to the workpiece W conveyed on the conveying device B. The imaging unit 3 can generate a code image including the code by imaging the workpiece W and can output the code image to the control unit 4. The imaging unit 3 includes a lens 31a, an image sensor 31b, and a preprocessing circuit 32. The lens 31a is an imaging lens for collecting the reflected light from the workpiece W. The light incident on the lens 31a is emitted toward the light-receiving surface of the image sensor 31b and is imaged on the light-receiving surface.

[0074] The image sensor 31b includes a light-receiving element such as a charge-coupled device (CCD) or a complementary metal-oxide semiconductor (CMOS) that converts an image of a code obtained through the lens 31a into an electrical signal. An image including the code is generated based on the amount of received light of the light received by the light-receiving surface of the image sensor 31b. The image sensor 31b includes a plurality of imaging elements (i.e., a plurality of pixels arranged in a matrix) arranged in the row direction and the column direction. That is, the imaging unit 3 is a so-called area camera. In the present embodiment, in the image sensor 31b, the number of pixels in the column direction (U direction) is larger than the number of pixels in the row direction (V direction). Information about the camera related to the imaging unit 3, such as the number of pixels, focal length, and sensor size of the image sensor 31b, is stored in the storage unit 5. A captured image (hereinafter also simply referred to as an "image") generated by capturing the workpiece W or the like by the image sensor 31b is input to the preprocessing circuit 32. The preprocessing circuit 32 can be provided as needed and is not essential.

[0075] The preprocessing circuit 32 is, for example, an integrated circuit such as a field-programmable gate array (FPGA) and is a unit that performs various preprocessings on the image output from the image sensor 31b. The preprocessing includes, for example, various filtering processes. The imaging unit 3 outputs the image preprocessed by the preprocessing circuit 32 to the control unit 4. The preprocessing by the preprocessing circuit 32 can be performed as needed, and an image that has not been preprocessed can be output to the control unit 4. The image output to the control unit 4 is stored in the image data storage unit 52.

[0076] The imaging unit 3 is controlled by the imaging control unit 41. When a read start trigger signal is input from an external device, the imaging control unit 41 generates an image by performing an exposure for a preset exposure time. The imaging control unit 41 also controls the imaging unit 3 to perform a process of applying a preset gain to the image generated by the image sensor 31b and amplifying the brightness of the image through digital image processing.

[0077] The control unit 4 is a unit that controls each unit of the code reader 1 to detect a code attached to the workpiece W based on a plurality of images output from the imaging unit 3 and perform a decoding process on the detected code. As a specific configuration example of the control unit 4, for example, a configuration example including a microcomputer can be exemplified, the microcomputer including a processor (having a function as a central processing unit), a ROM, a RAM, and the like. The imaging control unit 41, the illumination control unit 42, the code detection unit 43, and the decoding unit 44 are constituted by the hardware included in the control unit 4 and the software executed by the control unit 4.

[0078] The code detection unit 43 of the control unit 4 is a unit configured to specify a code area based on a code image output from the imaging unit 3 and detect a code from the specified code area. The code detection unit 43 generates a plurality of edge images by applying a plurality of edge extraction filters for extracting edges of different frequencies to the image generated by the imaging unit 3, and then performs an integration process on the plurality of edge images. Thereafter, the code detection unit 43 determines a code candidate position based on the result of the edge integration process. That is, on the edge-processed image, a region where many pixels having large luminance values are aggregated can be estimated as the code area.

[0079] For example, in order to search for the position of a code in a code image, the code detection unit 43 may generate a heat map image indicating code similarity. That is, the code detection unit 43 quantifies the feature amount of the code, generates a heat map in which the magnitudes of the feature amounts are assigned to respective pixel values, and extracts a code candidate area where the possibility of the presence of a code is high on the heat map. As a specific example, there is a method for obtaining a feature portion of a code in a relatively hot (having a large feature amount) region on the heat map. In the case of obtaining a plurality of feature portions, the feature portions may be preferentially extracted and stored in a RAM or the like. By using the heat map image, the code area can thus be detected at high speed.

[0080] The decoding unit 44 of the control unit 4 is a unit configured to decode the code detected by the code detection unit 43. Specifically, since the code is represented by black-and-white binarized data, the decoding unit decodes the black-and-white binarized data. For decoding, a table representing the correspondence relationship of the encoded data may be used. In addition, the decoding unit 44 checks whether the decoding result is correct according to a predetermined checking method. In the case where an error is found in the data, the correct data is calculated by using an error correction function. The error correction function varies according to the type of the code.

[0081] As Figure 1 shown, in addition to the code reader 1, the code reader system S further includes a dimension measurement unit 90, an encoder 91, a workpiece sensor 92, a data communication device 93, a controller 100, a collection and analysis device 200, a setting device 300, and the like. The dimension measurement unit 90, the controller 100, the collection and analysis device 200, and the like are examples of external devices.

[0082] The setting device 300 is, for example, a personal computer or the like, and includes a display unit (display device) 301 composed of a liquid crystal display or the like and an operation unit 302 composed of various input devices or operation devices such as a keyboard and a mouse. The user can input various information by operating the operation unit 302. When the collection and analysis device 200 is a personal computer, the setting device 300 does not necessarily have to be a personal computer and can be a combination of a display and an input device. Note that, in the description of the present embodiment, a code reader system S having a function of decoding a code will be described, but the present invention can also be applied to a device or system that does not have a function of decoding a code. For example, in the case of a system in which the decoding unit 44 described later is omitted or the decoding unit 44 is inoperable, the system is an image processing device or an image processing system that performs various image processes by using an image generated by photographing a workpiece W.

[0083] The encoder 91 and the workpiece sensor 92 are connected to the controller 100 via the IO wiring 94 for communication. The data communication device 93 is connected via the host communication line 95 to communicate with the controller 100 and includes a device for performing communication with an external network or the like. The code reader 1 and the dimension measurement unit 90 are connected via the dedicated control communication line 96 to communicate with the controller 100.

[0084] Since the code reader 1 includes the photographing unit 3 and the decoding unit 44, the photographing unit 3 and the decoding unit 44 are connected to the controller 100. In addition, since the code reader 1 includes the illumination unit 2 corresponding to the photographing unit 3, the illumination unit 2 is connected to the controller 100. Although details will be described later, in the case of Operation Example 1 and Operation Example 2, the photographing units 3 of the plurality of code readers 1 photograph the workpiece W from a plurality of different directions in response to an instruction from the control unit 107 ( Figure 9 as shown) of the controller 100. In response to an instruction from the control unit 107 of the controller 100, the illumination units 2 of the plurality of code readers 1 illuminate the workpiece W from a plurality of different directions.

[0085] In addition, the code reader 1 and the dimension measuring unit 90 are connected to each other via a dedicated control communication line 96 so as to be able to communicate with each other. Further, the code reader 1 is connected via a communication line 97 to communicate with the collection and analysis device 200. The setting device 300 is connected via a communication line 98 to communicate with the collection and analysis device 200, and is connected via a communication line 99 to communicate with the controller 100. Although details will be described later, the collection and analysis device 200 is a unit for collecting and storing a time-series log including images transmitted from the controller 100 or the code reader 1, and is typically a personal computer. Note that the connection forms of the above-described code reader 1, dimension measuring unit 90, encoder 91, workpiece sensor 92, data communication device 93, controller 100, collection and analysis device 200, and setting device 300 are examples, and any connection form that can achieve the functions to be described later can be used.

[0086] The dimension measuring unit 90 is, for example, an optical dimension measuring device and is an example of a detection sensor capable of detecting workpiece information including at least one of the position of the workpiece W in the width direction of the conveying device B and the height of the workpiece W. As the optical dimension measuring device constituting the dimension measuring unit 90, a known device in the prior art can be used, and for example, the dimensions of the workpiece W can be measured using the triangulation principle by irradiating the workpiece W with measuring light and receiving the measuring light reflected from the workpiece W. The dimensions of the workpiece W that can be measured by the dimension measuring unit 90 include, for example, height, width, and depth. When a read start trigger signal sent from the controller 100 is received via the dedicated control communication line 96, the dimension measuring unit 90 performs dimension measurement processing. The dimension measuring unit 90 sends the generated dimension data to the controller 100 and the code reader 1 via the dedicated control communication line 96. By measuring the dimensions of the workpiece W, for example, the loading capacity for loading the workpiece W can be estimated and the transportation volume can be calculated.

[0087] The encoder 91 is a device for detecting the conveying speed of the conveying device B. As Figure 2 shown, the encoder 91 is attached to the conveying device B. Further, the workpiece sensor 92 is a device (e.g., a photoelectric sensor) for detecting that the workpiece W conveyed by the conveying device B has reached a predetermined position, and outputs a detection signal when it detects the fact that the workpiece W has reached the predetermined position. The workpiece sensor 92 can also be attached to the conveying device B. The signals output from the encoder 91 and the workpiece sensor 92 are sent to the controller 100 via the IO wiring 94.

[0088] Figure 6This is a diagram showing the respective positional relationships from the trigger point to the output point. The trigger point is the point at which a read start trigger signal for performing shooting and illumination is output. For example, the time point when the workpiece sensor 92 detects that the workpiece W has reached a predetermined position can be set as the trigger point, and the read start trigger signal can be output to the dimension measurement unit 90 and the code reader 1 via the dedicated control communication line 96 at the trigger point. The workpiece sensor 92 is installed on the upstream side with respect to the code reader 1 in the conveying direction. Therefore, the code reader 1 reads the code attached to the workpiece W downstream of the workpiece sensor 92.

[0089] The dimension measurement unit 90 is installed at the dimension measurement unit installation point downstream of the trigger point in the conveying direction. Therefore, the dimensions of the workpiece W that arrives after the read start trigger signal is output can be measured. The code reader 1 is installed at the code reader installation point downstream of the dimension measurement unit installation point in the conveying direction. Therefore, the workpiece W whose dimensions have been measured by the dimension measurement unit 90 can be photographed.

[0090] After the input of the read start trigger signal, the decoding process of the code of the workpiece W is executed, and the decoding process and the creation of output data including the decoding result and the log, etc. are executed until the release point. When the workpiece W reaches the output point, the output data is output from the code reader 1 to the data communication device 93 via the dedicated control communication line 96. The output point corresponds to, for example, the timing desired by the user determined based on the specifications of other systems. The output point and the release point can be set at the same timing. Whether the workpiece W has reached the release point and the output point can also be detected by the workpiece sensor.

[0091] As Figure 7 shown, when multiple code readers 1 are operated, the controller 100 is connected via the dedicated control communication line 96 to communicate with the multiple code readers 1. In this case, the controller 100 serves as the bus master, and each code reader 1 serves as the bus slave. The dedicated control communication line 96 can also be referred to as a bus for realizing the transmission and reception of various data between the bus master and the bus slave. In addition to the example where multiple code readers 1 are directly connected to the controller 100, a ring network is constructed by directly connecting the code readers 1 to each other, and thus even when the direct connection between a certain code reader 1 and the controller 100 is disconnected, the connection between the code reader 1 and the controller 100 can be maintained via other code readers 1.

[0092] Figure 8This is a diagram for describing the positional relationship between the code reader 1 and the conveying device B. For example, in the coordinate system of the conveying device B (conveyor coordinate system), the position of the workpiece sensor 92 can be defined as the origin, the conveying direction can be defined as the Y direction, the width direction of the conveyor can be defined as the X direction, and the height direction relative to the conveying surface can be defined as the Z direction. The installation angle of the code reader 1 is determined by the angle between the conveying surface (Y direction) and the optical axis. For each model of the code reader 1, the viewing angle of the code reader 1 is determined in advance. The X coordinate, Y coordinate, Z coordinate, installation angle, viewing angle, etc. of the code reader 1 are installation information for indicating the position and posture of the imaging unit 3 in the conveyor coordinate system, and include the installation position and installation angle of the imaging unit 3 in the coordinate system of the conveying device B. The code reader 1, for example, has a Scheimpflug optical system including a lens 31a for collecting reflected light from the code attached to the workpiece W and an image sensor 31b having a light-receiving surface inclined with respect to the optical axis of the lens 31a, and includes an imaging unit 3 (camera) for generating and outputting an image including the code based on the amount of received light received by the light-receiving surface. The imaging unit 3 has a depth of field DOF suitable for tilted reading by the Scheimpflug optical system. Note that the optical system of the imaging unit 3 is not limited to the Scheimpflug optical system.

[0093] In addition to being configured to be connectable to the code reader 1 and the dimension measurement unit 90, the controller 100 is also configured to be connectable to, for example, an external controlled device (such as a packaging style camera for photographing the packaging style of the workpiece W), and the controller 100 is a controller for controlling the trigger control of the code reader 1, the dimension measurement unit 90, and the external controlled device. When receiving a signal output from the workpiece sensor 92 for detecting the position of the workpiece W or the encoder 91 for tracking the workpiece W, the controller 100 outputs control parameters, a reading start trigger signal, etc. to the code reader 1, the dimension measurement unit 90, and the external controlled device. In addition, the decoding results from the code reader 1 are aggregated and uploaded to the collection and analysis device 200, the setting device 300, etc.

[0094] The logic of the trigger control includes delay settings, etc. from the time point when the workpiece sensor 92 detects the workpiece W, and such settings can be made by the controller 100. In addition, the processing of the read data (string operations, etc.) can be executed by the controller 100. Therefore, the controller 100 has setting and programming elements and is configured to be able to respond to different host communication (TCP / IP socket communication or traditional serial) protocol specifications according to the installation site.

[0095] Here, at the actual operation site, there are various installation locations for the code reader 1, and it may be difficult to change the settings of the code reader 1 by operating it after installation. Additionally, when setting each ID for the code reader 1 before installing multiple code readers 1 and then arranging the code readers 1 at specified locations, there are installation limitations. For example, when the code reader 1 is installed at the wrong location, it is difficult to reset the ID of the code reader 1. Also, the person installing the code reader 1 may be different from the person setting the code reader 1, and it is desired to eliminate installation limitations as much as possible.

[0096] Additionally, the same applies to the IP address, and the problems in the case of installing the code reader 1 after pre-setting the IP address are as described above. Even after the installation of the code reader 1, DHCP can be used when the IP address has not been set. However, when another IP address has already been assigned to the code reader 1, since it is impossible to handle it without returning to the unset state, physical components such as an IP address initialization button are required. Furthermore, there are use cases where Ethernet is not used (cases where images are not required), and even when the IP address has not been assigned to the code reader 1, it is necessary to enable Ethernet.

[0097] In contrast, in the standard of dedicated control communication using the dedicated control communication line 96 according to the present embodiment, the ID and the IP address can be assigned to the code reader 1 via the dedicated control communication line 96, and the code reader 1 can be controlled only by dedicated control communication. For example, after the installation and wiring of the code reader 1 are completed, the ID can be assigned from the controller 100 as the bus master to the code reader 1 as the bus slave via the dedicated control communication line 96, and after the dedicated control communication line 96 becomes communicable, the IP address can be assigned to the code reader 1 as needed via the dedicated control communication line 96 or the setting information of the code reader 1 can be communicated.

[0098] Synchronize the controller 100 and each code reader 1 through a dedicated control system using the dedicated control communication line 96. The controller 100 generates a read start trigger signal and sends the generated read start trigger signal to each code reader 1. The read start trigger signal can vary according to the type of the code reader 1 and can be, for example, an edge trigger or a level trigger. The edge trigger is a trigger per shot, and the trigger indication can include the target ID, the shooting time, control parameters, etc. The code reader 1 decodes only one workpiece W in one shot. On the other hand, the level trigger is a trigger for the start or stop of shooting, and the shooting timing is executed by the code reader 1.

[0099] When receiving the read start trigger signal generated by the controller 100, each code reader 1 generates the illumination timing of each code reader according to the synchronization guarantee time of each code reader. In other words, the controller 100 controls the ON and OFF of the illumination of each code reader 1.

[0100] Each code reader 1 performs shooting according to the illumination control timing. In Figure 2 the operation example 1 shown, the shooting periods of the code readers 1A and 1B other than the code reader for bottom surface reading depend on the decoding time of the decoding unit 44, but in the case of the code reader 1C for bottom surface reading, shooting is performed at a constant period.

[0101] Reference will be made to Figure 9 describe the specific configuration of the controller 100. The controller 100 includes an acquisition unit 101, an identification unit 102, a reception unit 103, a processing determination unit 104, a communication unit 105, an input / output interface 106, a control unit 107, a display processing unit 108, and an output unit 109. The input / output interface 106 is a unit connected to the encoder 91, the workpiece sensor 92, the data communication device 93, the setting device 300, the code reader 1, the dimension measurement unit 90, the external controlled device, and the collection and analysis device 200, etc. The input / output interface 106 is connected to the communication unit 105.

[0102] The acquisition unit 101 is a unit for acquiring the detection signal of the workpiece W through the workpiece sensor 92, the conveyor information including the conveyance speed and the conveyor width of the conveyor device B, and the installation information indicating the position and posture of each code reader 1 in the conveyor coordinate system of the conveyor device B. The conveyance speed of the conveyor device B can be acquired based on the output signal of the encoder 91, can be acquired from the moving distance in a predetermined time by using a plurality of workpiece sensors, or can be acquired from the conveyance speed of the conveyor device B set by the user. Note that even in the case where the encoder 91 calculates the conveyance distance of the workpiece based on the number of pulses from the detection of the workpiece W to the shooting and the moving distance per unit pulse, it can be considered that the conveyance speed is substantially or indirectly acquired, and the conveyance distance is obtained based on the elapsed time and the conveyance speed.

[0103] The identification unit 102 is a unit for identifying the conveyance state of the workpiece W on the conveyor device B based on the detection signal and the conveyance speed acquired by the acquisition unit 101. The conveyance state includes, for example, the conveyance speed and the position of the workpiece W on the conveyor device B (i.e., the position of the workpiece W in the conveyor coordinate system). The identification unit 102 can also identify the conveyance state including the dimensions (width, height, and depth) of the workpiece W and the position and posture of the workpiece W in the conveyor coordinate system by using the information obtained from the dimension measurement unit 90.

[0104] The accepting unit 103 is a unit configured to be able to accept, from a user, a combination of the plurality of code readers 1 connected to the controller 100 that are desired to prevent illumination interference. For example, in Figure 2 the operation example 1 shown, when the illuminations of the code reader 1A that reads while tilting upstream and the code reader 1B that reads while tilting downstream are turned on simultaneously, the illuminations interfere with each other, and there is a concern that a desired code image cannot be obtained. In a case where such illumination interference is desired to be prevented, the code reader 1A and the code reader 1B are a combination of the code readers 1 that are desired to prevent illumination interference. When the user designates the code reader 1A and the code reader 1B, this combination is accepted by the accepting unit 103.

[0105] The processing determination unit 104 acquires the conveyance state of the workpiece W identified by the identification unit 102 and the installation information of each code reader 1 acquired by the acquisition unit 101. Based on the conveyance state of the workpiece W and the installation information of each code reader 1, the processing determination unit 104 determines, for each code reader 1, control parameters corresponding to a predetermined conveyance position of the workpiece W on the conveyance device B. The processing determination unit 104 can estimate the current position of the workpiece W based on the output signal of the encoder 91 and the detection signal of the workpiece sensor 92. The processing determination unit 104 determines the control parameters in advance before the workpiece W reaches the predetermined conveyance position on the conveyance device B. That is, since it is possible to acquire which type of workpiece W is currently positioned and where the workpiece W is currently positioned as the conveyance state of the workpiece W, it is possible to update and prepare the optimum control parameters in advance for each code reader 1. Then, when each code reader 1 becomes ready to capture an image, each code reader 1 performs illumination and capture control by using the latest control parameters at that time point. The code reader 1 is not limited to Figure 5 the configuration including one imaging unit 3 shown, and may have a configuration including a plurality of imaging units 3 in the housing of the code reader 1. Further, the code reader 1 is not limited to the configuration including both the imaging unit 3 and the decoding unit 44 inside the housing, and the decoding unit 44 may be provided as a separate device. In the case of these configurations, the processing determination unit 104 determines, for each imaging unit 3, control parameters corresponding to a predetermined conveyance position of the workpiece W on the conveyance device B based on the conveyance state of the workpiece W and the installation information of each imaging unit 3.

[0106] The control parameters determined by the processing determination unit 104 include, for example, the exposure time of the imaging unit 3, the gain, the type of code to be decoded, the read result output timeout, the imaging range (the imaging range of the image sensor 31b), and the processing parameters of the preprocessing circuit 32, etc. The exposure time can be determined, for example, according to the conveyance speed of the conveyance device B obtained based on the output signal of the encoder 91. For example, the exposure time can be shortened as the conveyance speed becomes faster and faster. The processing determination unit 104 automatically optimizes the exposure time, and thus the brightness of the image generated by the imaging unit 3 becomes suitable for the decoding process. In addition, the gain is the gain of the imaging unit 3, and is automatically set to the optimal value by the processing determination unit 104 based on the position of the workpiece W on the conveyance device B and the installation information of the code reader 1. The gain is optimized, and thus the brightness of the image generated by the imaging unit 3 becomes suitable for the decoding process.

[0107] The processing determination unit 104 is configured to be able to determine the code to be read as a control parameter for each imaging cycle based on the conveyance state of the workpiece W and the installation information of each code reader 1. The type of code to be decoded is the type of code to be decoded by the decoding unit 44, and multiple types of codes can be specified. For example, in the case of excluding the codes that do not need to be read based on the read results of other code readers 1 installed on the upstream side or switching the codes to be read for each imaging, the processing determination unit 104 determines the type of code to be decoded as a control parameter. In addition, it is also possible to determine the control parameter such that the first code reader 1 reads the first type of code on the upstream side in the conveyance direction, and the second code reader 1 reads the second type of code on the downstream side.

[0108] The processing determination unit 104 can also determine the number of digits of the code, the data format, and the detailed settings for each code type, etc. as control parameters. In addition, the processing determination unit 104 can also determine the upper limit of the number of codes to be searched in one imaging as a control parameter. In addition, the processing determination unit 104 can also determine the imaging prohibition flag as a control parameter. For example, in the case where the decoding processing load of the code reader 1 is high and the computing resources are insufficient, the control parameter is set so as not to perform imaging temporarily. As a result, the load on the code reader 1 can be reduced.

[0109] The processing determination unit 104 is configured to be able to determine the time limit for the decoding process (read result output timeout) as a control parameter for each imaging cycle based on the conveyance state of the workpiece W and the installation information of each code reader 1. In the case of confused codes, the decoding process may take a long time, but it is necessary to output the decoding result before the workpiece W on the conveyance device B reaches the output point, and the processing determination unit 104 determines the time from the start of decoding until just before the workpiece W on the conveyance device B reaches the output point as the time limit for the decoding process.

[0110] The control parameters can be changed on a shot-by-shot basis. The processing parameters of the preprocessing circuit 32 include parameters for luminance conversion, thermograms, etc. The parameters for luminance conversion include, for example, parameters related to post-shot processing such as HDR. The parameters for thermograms are parameters related to the generation of the above-mentioned thermogram images.

[0111] In addition, the processing determination unit 104 can also determine, for each shooting cycle, whether to output a captured image as a control parameter based on the conveyance speed of the workpiece W. That is, the control parameter can include a control flag for image output to the collection and analysis device 200. When all captured images are set to be output to the collection and analysis device 200, the load on the network band for image output increases. However, the processing determination unit 104 determines the control flag to output only some images, and thus reduces the load on the network band for image output. For example, the control flag can be used when appropriately skipping images at intervals so as to be able to grasp the entire view of the workpiece W. The control flag can be determined based on the output signal of the encoder 91.

[0112] The processing determination unit 104 determines the shooting cycle for each code reader 1 based on the conveyance state and installation information of each code reader 1. In the case where a plurality of code readers 1 are connected, the processing determination unit 104 generates a reference signal for defining a basic cycle common to the code readers 1, and determines the shooting cycle and illumination cycle for each code reader 1 based on the basic cycle. The basic cycle is a cycle used as a reference for the turn-on timing of illumination, and interference between multiple illuminations can be prevented by controlling illumination and shooting according to the basic cycle.

[0113] The shooting cycle and the illumination cycle are composed of one or more basic cycles. The illumination cycle is the cycle during which the illumination unit 2 performs illumination, and is a cycle set as a natural number multiple of the basic cycle. The shooting cycle is the cycle during which the shooting unit 3 performs shooting, and is a cycle set as a natural number multiple of the illumination cycle.

[0114] In addition, the processing determination unit 104 determines, for each code reader 1, the offset amount by which the start timing of the shooting cycle and the illumination cycle is offset with respect to the reference signal based on the conveyance state of the workpiece W by the conveyance device B and the installation information of each code reader 1. The offset amount is, for example, set to delay the start timing of illumination and is used to prevent interference between multiple illuminations.

[0115] In addition, in the case where the acceptance unit 103 accepts from the user a combination of code readers 1 for which illumination interference is to be prevented, the processing determination unit 104 generates a plurality of groups for each combination accepted by the acceptance unit 103, and determines the offset amount of the start timing of the shooting cycle and the illumination cycle with respect to the reference signal for each group.

[0116] Although there is a combination of the code reader 1 that is desired to prevent lighting interference, it may be desirable to synchronize the lighting of multiple code readers 1. For example, as described above, in a configuration including multiple imaging units 3 that read a common gap of the conveying device B from below the conveying surface of the conveying device B and multiple lighting units 2 corresponding to the multiple imaging units 3, a large amount of light can be ensured by synchronizing the multiple lighting units 2. For example, the processing determination unit 104 may also determine control parameters so that the multiple lighting units 2 emit lighting light at overlapping timings.

[0117] The communication unit 105 is a unit that performs communication with the multiple code readers 1 according to the standard of dedicated control communication, and sends the control parameters determined by the processing determination unit 104 to the corresponding code readers 1. For example, after determining the control parameters corresponding to the code reader 1, the communication unit 105 sends the corresponding control parameters to each of the code readers 1 at the timing when the workpiece W reaches a predetermined conveying position. Note that the timing of sending is desirably the timing when the workpiece W reaches a predetermined conveying position, but within the range where the control parameters can be effectively used, it can be immediately before or after the instant when the workpiece W reaches a predetermined conveying position.

[0118] When multiple code readers 1 are connected, the communication unit 105 sends the imaging period determined by the processing determination unit 104 to the corresponding code readers 1, and sends the lighting period determined by the processing determination unit 104 to the corresponding code readers 1. The preprocessing circuit 32 can perform pre-imaging processing and post-imaging processing according to the control parameters.

[0119] Figure 10 It is a timing chart when the code reader 1A that reads at an upstream-side inclination, the code reader 1B that reads at a downstream-side inclination, and the code reader 1C that reads the bottom surface are operated. When the front edge (front end) of the workpiece W reaches the trigger point, the workpiece sensor 92 outputs a detection signal to be in the ON state and maintains the ON state until the rear edge (rear end) is detected. When receiving the detection signal from the workpiece sensor 92, the controller 100 outputs a read start trigger signal. The upstream-side inclined reading code reader 1A, the downstream-side inclined reading code reader 1B, and the bottom-surface reading code reader 1C that have received the read start trigger signal operate according to a reference signal that defines a basic period common to the code readers 1A, 1B, and 1C.

[0120] The bottom-surface reading code reader 1C that has received the read start trigger signal repeatedly executes imaging by the imaging unit 3 and lighting by the lighting unit 2. The imaging period and the lighting period at this time may be composed of one basic period, or may be composed of multiple basic periods. The control parameters of the bottom-surface reading code reader 1C are the control parameters determined by the processing determination unit 104.

[0121] The start timing of the shooting cycle and the lighting cycle of the upstream-side inclined reading code reader 1A that has received the reading start trigger signal is offset with respect to the reference signal, and lighting and shooting are performed according to the shooting cycle and the lighting cycle. The image generated by the shooting unit 3 of the upstream-side inclined reading code reader 1A is transmitted to the decoding unit 44. The decoding unit 44 performs decoding processing on the transmitted image.

[0122] In addition, the start timing of the shooting cycle and the lighting cycle of the downstream-side inclined reading code reader 1B that has received the reading start trigger signal is also offset with respect to the reference signal. The offset amount of the start timing of the shooting cycle and the lighting cycle of the downstream-side inclined reading code reader 1B is set to be larger than the offset amount of the start timing of the shooting cycle and the lighting cycle of the upstream-side inclined reading code reader 1A. The downstream-side inclined reading code reader 1B also performs shooting and lighting according to the shooting cycle and the lighting cycle. The control parameters of the upstream-side inclined reading code reader 1A and the downstream-side inclined reading code reader 1B are also the control parameters determined by the processing determination unit 104. The shooting order of the upstream-side inclined reading code reader 1A, the downstream-side inclined reading code reader 1B, and the bottom surface reading code reader 1C can be set arbitrarily.

[0123] Figure 11 is for describing Figure 10 the details of the timing chart shown. As Figure 11 shown, based on the base point of the communication cycle of the dedicated control communication, synchronous control of the upstream-side inclined reading code reader 1A, the downstream-side inclined reading code reader 1B, and the bottom surface reading code reader 1C is performed. The lighting timing of the lighting unit 2 and the shooting timing of the shooting unit 3 are set such that shooting is performed between the lighting start timing and the lighting end timing of the bottom surface reading code reader 1C. Similarly, the lighting timing of the lighting unit 2 and the shooting timing of the shooting unit 3 are set such that shooting is performed between the lighting start timing and the lighting end timing of each of the downstream-side inclined reading code reader 1B and the bottom surface reading code reader 1C.

[0124] Figure 12 is a timing chart when the lighting units 2 of the first code reader and the second code reader are turned on simultaneously. In the example shown in this figure, the first code reader and the second code reader are installed to shoot the same surface of the workpiece W. The first code reader and the second code reader that have received the reading start trigger signal perform lighting and shooting at a timing offset with respect to the shooting timing of the bottom surface reading code reader 1C. At this time, since the lighting of the first code reader and the lighting of the second code reader are performed simultaneously, the workpiece W is brightly illuminated, and the brightness of the image generated by the shooting unit 3 can be increased.

[0125] Figure 13 It is a timing diagram in the case where the illumination period and the shooting period are common for all code readers (shown as the first code reader and the second code reader in the figure). The illumination periods 1-1 and 1-2 of the first code reader are the same as the illumination periods 2-1 and 2-2 of the second code reader. In addition, the shooting periods 1-1 and 1-2 of the first code reader are the same as the shooting periods 2-1 and 2-2 of the second code reader.

[0126] Figure 14 It is a timing diagram in the case where the illumination period and the shooting period are different for each code reader but are common for each code reader unit. That is, the illumination periods 1-1 and 1-2 of the first code reader are the same, and the shooting periods 1-1 and 1-2 of the first code reader are the same. On the other hand, the illumination period 2-1 of the second code reader is different from the illumination period 1-1 of the first code reader, and the shooting period 2-1 of the second code reader is different from the shooting period 1-1 of the first code reader. In addition, the illumination periods 2-1 and 2-2 of the second code reader are the same, and the shooting periods 2-1 and 2-2 of the second code reader are the same. The illumination period and the shooting period can be changed midway.

[0127] Figure 15 It is a timing diagram in the case where the illumination period and the shooting period are different for each code reader unit. That is, the illumination periods 1-1 and 1-2 of the first code reader are the same, and the shooting periods 1-1 and 1-2 of the first code reader are the same. On the other hand, the illumination period 2-1 of the second code reader is different from the illumination period 1-1 of the first code reader, and the shooting period 2-1 of the second code reader is different from the shooting period 1-1 of the first code reader. In addition, the illumination periods 2-1 and 2-2 of the second code reader are different from each other, and the shooting periods 2-1 and 2-2 of the second code reader are also different from each other. Since Figure 15 the timing indicated by the arrow D in [ ] is the timing when the shooting unit 3 is not exposed, the illumination period can be not offset.

[0128] For example, in the logistics industry, although accurate tracking (the association between the workpiece W and the read code) is required, since the amount of workpieces W (packages) to be handled tends to increase, it is also required to shorten the distance between the workpieces W being conveyed to improve efficiency. Here, since the conveying device B conveys a plurality of workpieces W in sequence, as Figure 16As shown, a plurality of workpieces W1 and W2 may approach in the conveying direction (indicated by arrow A) of the conveying device B. That is, in a situation where the workpiece W1 to be read approaches the front workpiece W2 located on the downstream side in the conveying direction and the imaging unit 3 simultaneously images the workpiece W1 to be read and the front workpiece W2, it is difficult for the code reader 1 side to distinguish whether the read code is given to the workpiece W1 to be read or the front workpiece W2, and there is a possibility of incorrectly associating the read code with the workpiece.

[0129] In order to suppress such incorrect association, in the present embodiment, as indicated by reference numeral E, the imaging area of the imaging unit 3 is set to a narrow area that can only image the workpiece W1 to be read. Specifically, the process determination unit 104 determines the reading area as a control parameter for each imaging cycle based on the conveying state and installation information of each code reader 1. When determining the reading area, the position of the code reader 1 is specified by, for example, the installation information of the code reader 1. In addition, the relative positional relationship of the workpiece W1 to be read with respect to the code reader 1 can be specified based on the detection signal of the workpiece sensor 92 and the output signal of the encoder 91. Then, the process determination unit 104 offsets the imaging area of the imaging unit 3 in the Y direction so that only the workpiece W1 to be read is included in the imaging area E.

[0130] Specifically, the process determination unit 104 generates a control parameter for offsetting the imaging area of the imaging unit 3 in the Y direction (corresponding to the V direction of the UV coordinate system). In addition, since the relative positional relationship of the workpiece W1 to be read with respect to the code reader 1 can be specified as described above, the size of the imaging area E of the imaging unit 3 can be specified by the process determination unit 104 based on this positional relationship. As a result, since the code of the front workpiece W2 is not imaged, the code of the front workpiece W2 is not decoded, and the association between the decoding result of the front workpiece W2 and the workpiece W1 to be read can be avoided. The process determination unit 104 also generates information related to the size of the imaging area E of the imaging unit 3 as a control parameter.

[0131] Figure 17 Shows a situation where a plurality of workpieces W1 and W2 approach in the conveying direction (indicated by arrow A) of the conveying device B, the workpiece W1 to be read is located on one side in the width direction of the conveying device B, and the front workpiece W2 is located on the other side in the width direction of the conveying device B. In this case, even when Figure 16In the narrow imaging area E shown, at least a part of the front workpiece W2 is also included in the imaging area E, and the read code and the workpiece may be wrongly associated. On the other hand, the processing determination unit 104 determines, for each imaging cycle, a mask area F where the decoding process is not to be performed as a control parameter based on the conveying state, workpiece information, and the installation information of each code reader 1. Information related to the size of the workpiece W1 to be read, which is the workpiece information, can be obtained by the size measurement unit 90. The position, size, and shape of the mask area F in the imaging area E can be determined by using the conveying state of the workpiece W1 to be read, the workpiece information of the workpiece W1 to be read, and the installation information of each code reader 1 based on the detection signal of the workpiece sensor 92 and the output signal of the encoder 91. The processing determination unit 104 generates a control parameter such that even if the determined mask area F is set as a non-target range for code search or there is a code as a result of code search, the decoding unit 44 does not perform the decoding process. Therefore, the decoding result of the front workpiece W2 can be prevented from being associated with the workpiece W1 to be read.

[0132] Figure 18 An example is shown where a custom sensor in which the number of pixels in the column direction is greater than the number of pixels in the row direction is used as the image sensor 31b. In the case where a plurality of workpieces W1 and W2 approach in the conveying direction (shown by the arrow A) of the conveying device B, the workpiece W1 to be read is located on one side in the width direction of the conveying device B, and the front workpiece W2 is located on the other side in the width direction of the conveying device B, it is also possible to use a custom sensor without setting Figure 17 the mask area F shown to cope with this situation. In the present embodiment, the processing determination unit 104 determines, for each imaging cycle, an area where only some of the pixels arranged in some rows of the image sensor 31b are read as a control parameter based on the conveying state of the workpiece W and the installation information of each code reader 1.

[0133] That is, the imaging area E corresponding to the imaging field of view of the image sensor 31b is set as a long field of view in the short axis direction instead of the long axis direction of the image sensor 31b, and thus the front workpiece W2 can be prevented from being included in the imaging area E. Since the reading direction of a general image sensor is along the long axis of the image sensor, it is impossible to read an imaging area E that is long in the short axis direction as Figure 18 shown. However, in the present embodiment, as a custom sensor, a sensor capable of reading in the short axis direction of the image sensor as shown by the arrow H in Figure 19 is used as the image sensor 31b. As a result, the reading of the imaging area E that is long in the short axis direction of the image sensor is accelerated. The width of the imaging area E (the length in the long axis direction of the image sensor) is determined by the processing determination unit 104 to correspond to the width of the workpiece W.

[0134] (Setting auxiliary function)

[0135] The code reader system S has a setting auxiliary function for setting the code reader 1. The code reader system S can also be referred to as a device having a setting auxiliary function (i.e., a setting auxiliary device). In the case of a setting auxiliary device, since the decoding process can be executed by an external device, the decoding unit 44 may not be provided.

[0136] Hereinafter, the setting auxiliary function will be described in detail. First, as a prerequisite, the code reader system S has a tracking function of associating the workpiece W with the decoding result of the code attached to the workpiece W. Since it is necessary to accurately associate the workpiece W with the decoding result, in order to improve the accuracy of tracking, calibration for associating the coordinate system of the conveying device B (conveyor coordinate system) with the imaging coordinate system of the code reader 1 is performed. The code reader system S has a calibration function that can easily perform this calibration.

[0137] As Figure 3 、 Figure 4A and Figure 4B shown, the coordinate system of the conveying device B can be defined as an XYZ coordinate system. The unit of the coordinate system of the conveying device B is mm. The imaging coordinate system of the code reader 1 is also referred to as a camera coordinate system, and is a coordinate system obtained by translating the conveyor coordinate system of the conveying device B to the imaging unit 3 and rotating the conveyor coordinate system, and the Z direction coincides with the optical axis. The unit of the imaging coordinate system of the code reader 1 is mm. The coordinate system of the image sensor 31b (sensor coordinate system) can be defined as the Figure 18 and Figure 19 UV coordinate system shown in. The unit of the coordinate system of the image sensor 31b is pixels.

[0138] Camera information including the number of pixels, focal length, and sensor size of the image sensor 31b is known and stored in the storage unit 5 of the code reader 1. Calibration is performed by using the camera information, the information input by the user (such as the width of the conveying device B and the installation position and posture of the code reader 1 (X coordinate, Y coordinate, Z coordinate, and installation angle), etc.), and the moving distance of the workpiece W (= time information × conveying speed). The moving distance of the workpiece W can also be used for, for example, installation confirmation, etc.

[0139] Examples of the prerequisite conditions when the code reader system S performs calibration are as follows.

[0140] 1. The conveying direction of the workpiece W is the Y direction in the coordinate system of the conveying device B.

[0141] 2. When the code reader 1 is installed to read the upper surface of the workpiece W (in the case of installation on the upper surface), the X direction and the U direction are substantially the same as each other, and the V direction is inclined with respect to the Y direction.

[0142] 3. When the code reader 1 is installed to read the side surface of the workpiece W (in the case of installation on the side surface), the Z direction and the U direction are substantially the same as each other, and the V direction is inclined with respect to the Y direction.

[0143] Then, the code reader system S generates an initial calibration model (coordinate transformation coefficient) by using known camera information and information input by the user (such as the width of the conveying device B and the installation position and posture of the code reader 1, etc.). Since the detection signal of the workpiece sensor 92 can be used as a reference in the Y direction, and the position of the workpiece W in the Y direction at a certain time can be calculated based on the speed condition, the initial calibration model can be adjusted by using the calculation result. The initial calibration model is adjusted to generate an adjusted calibration model, and thus the position of the workpiece W on the image can be accurately known.

[0144] Hereinafter, the calibration process will be described. First, the acquisition unit 101 acquires installation information indicating the position and posture of the code reader 1 (i.e., the conveying device B of the photographing unit 3) in the conveyor coordinate system. The installation information includes the X coordinate, Y coordinate, Z coordinate, and installation angle of the code reader 1, etc., and is input by the user operating the setting device 300 etc. after measurement. In addition, the width of the conveying device B is also input by the user operating the setting device 300 etc. Figure 20 Examples of the input values are shown. In addition, the acquisition unit 101 also acquires the detection signal of the workpiece W through the workpiece sensor 92. In addition, the acquisition unit 101 also acquires conveyor information including the width and conveying speed of the conveying device B.

[0145] As Figure 9 shown, the controller 100 includes a control unit 107, and the control unit 107 defines the coordinate system of the conveying device B with the position of the workpiece sensor 92 as a reference. For example, the origin of the Y coordinate of the coordinate system of the conveying device B can be set to the position of the workpiece sensor 92, but the present invention is not limited thereto. In addition, the control unit 107 calculates the position (conveyor position) of the conveying device in the captured image based on the camera information, the conveyor information, and the installation information of the code reader 1.

[0146] The control unit 107 calculates the position and installation angle of each code reader 1 in the coordinate system of the conveying device B based on the Figure 20 information shown. Figure 21An example of calculating the positions and mounting angles of the respective code readers 1 is shown. As shown in this figure, the control unit 107 calculates the X, Y, and Z coordinates of the code reader 1 in the coordinate system of the conveying device B, as well as the roll angle in the X direction, the pitch angle in the Y direction, and the yaw angle in the Z direction.

[0147] The acquisition unit 101 also acquires camera information. Figure 22 The camera information acquired by the acquisition unit 101 is shown, and the camera information includes the focal length of the photographing unit 3, the size of the width (U direction) of the image sensor 31b, the size of the height (V direction) of the image sensor 31b, the number of pixels of the image sensor 31b in the height direction, and the number of pixels of the image sensor 31b in the width direction, etc.

[0148] The user can also input the size of the workpiece W and the code information. For example, the control unit 107 calculates candidate mounting positions of the photographing unit 3 based on at least one of the size of the workpiece W, the conveyor width, and the code information input from the user. In this case, the acquisition unit 101 acquires the candidate mounting positions calculated by the control unit 107 as mounting information.

[0149] Figure 23 This is an example of a transformation formula that can be used when the coordinate system of the conveyor of the conveying device B is transformed into the photographing coordinate system of the code reader 1. This transformation formula includes a rotation matrix for the mounting angle of the code reader 1 (for example, in the order of yaw angle, pitch angle, and roll angle) and a translation matrix for the mounting position of the code reader 1, and the control unit 107 can transform the coordinate system of the conveying device B into the photographing coordinate system of the code reader 1 by using the rotation matrix and the translation matrix.

[0150] Figure 24 This is an example of a transformation formula that can be used when the photographing coordinate system of the code reader 1 is transformed into the UV coordinate system (corresponding to the XY coordinate system in Figure 16 ). This transformation formula includes a matrix for converting mm into unit pixels, a scale transformation of the image sensor 31b onto a plane, and a matrix for moving the origin position to the upper left side of the image sensor 31b. The control unit 107 can transform the photographing coordinate system of the code reader 1 into the UV coordinate system of the image sensor 31b by using these matrices.

[0151] As Figure 23 and Figure 24 shown, the control unit 107 generates a calibration model for indicating the correspondence between the coordinate system of the conveyor of the conveying device B and the UV coordinate system of the image sensor 31b based on the camera information, conveyor information, and mounting information of the code reader 1 acquired by the acquisition unit 101.

[0152] InFigure 25 In [the device], an installation confirmation image using a calibration model can be displayed on a display unit 301 of a setting device 300 or the like, where the calibration model is used to indicate the correspondence between the coordinate system of the conveying device B and the UV coordinate system of the image sensor 31b. An image display area 401, a workpiece information display area 402, and a code reader information display area 403 for displaying the installation confirmation image are set on the user interface screen 400. In this example, the conveyor position M (virtual conveyor position) calculated by the calibration model is displayed as a captured image in a manner of being superimposed on an image of the conveying device (an image with multiple horizontal lines).

[0153] The conveyor position M indicates the area estimated to be the conveying device, and it can be displayed in a form that fills the entire area, or only the part corresponding to the edge of the conveying device can be displayed. Since the conveyor position M indicates the area of the conveying device, the area estimated to be the conveying device can be indicated to the user by displaying the conveyor position M in a manner of being superimposed on the captured image. The image indicating the conveyor position M in the captured image is an installation confirmation image for confirming the installation.

[0154] Instead of or in addition to the image of the conveying device, a line (alignment reference line) used as an alignment reference such as the center line of the conveying device can be displayed. The alignment reference line can also be a part of the installation confirmation image.

[0155] In the workpiece information display area 402, the width of the conveying device B, the size of the workpiece W, and the position of the workpiece W are displayed. In the code reader information display area 403, the installation position and installation angle, etc. (position parameters) of the code reader 1 calculated based on the installation information are displayed. Note that since the code reader 1 captures the workpiece W, the code reader 1 can also be called a scanner, and in Figure 25 the example shown, "scanner position" is displayed in the code reader information display area 403.

[0156] When the position parameters used to define the position of the code reader 1 are changed, as Figure 26 shown, the change in the position parameters is reflected on the displayed user interface screen 400 to adjust the calibration model, and the conveyor position M calculated by the adjusted calibration model and the actual position of the conveying device can be made to coincide with each other on the installation confirmation image. At this time, the X coordinate, Z coordinate, roll angle in the X direction, pitch angle in the Y direction, and yaw angle in the Z direction of the code reader 1 are adjusted.

[0157] Figure 27This is an example of displaying an image of the workpiece W conveyed by the conveying device B. The acquisition unit 101 directly or indirectly acquires the conveying speed of the conveying device B based on, for example, the output signal of the encoder 91 or the setting value set by the user. The control unit 107 causes the imaging unit 3 to image the workpiece W conveyed on the conveying device B and generates a captured image. The display processing unit 108 displays an installation confirmation image in the image display area 401, and this installation confirmation image is used to indicate the characteristic part (such as the edge to be described later) of the workpiece W calculated by the adjusted calibration model in the captured image generated by the imaging unit 3.

[0158] The control unit 107 calculates the position of the characteristic part of the workpiece W in the coordinate system of the conveying device B at the shooting time point of the captured image based on the detection signal of the workpiece sensor 92 and the conveying speed. For example, when the elapsed time from the detection of the workpiece W to the shooting time point and the conveying speed are known, it is possible to know how much the workpiece has moved since the detection. Note that the detection signal includes not only the signal directly sent from the workpiece sensor 92 to the controller 100, but also the signal received from the workpiece sensor 92 and sent from the PLC to the controller 100 when the workpiece sensor 92 is connected to the controller 100 via the PLC. The characteristic part of the workpiece W is not particularly limited, but for example, it can be the edge part of the workpiece W or the code part of the workpiece W, etc. Note that since the edge part of the workpiece W is easily detected, it is easy to improve the accuracy of adjustment. The calculation method of the characteristic part of the workpiece W is not limited to one method, and for example, the control unit 107 can calculate the characteristic part of the workpiece W in the captured image based on the detection signal of the workpiece sensor 92 and the conveyor information.

[0159] Hereinafter, the method of specifying the characteristic part of the workpiece W will be described with a specific example. The control unit 107 can specify the edge part of the workpiece W detected by performing edge detection processing on the captured image as the characteristic part. For example, when the workpiece W is located on the far side, super-resolution processing and optimal edge detection processing can be performed assuming that the workpiece W is located on the far side. The code reader 1 directly installed above the workpiece W can determine whether the workpiece W is on the near side or the far side in the Z direction. In addition, the code reader 1 installed on the side of the workpiece W can determine whether the workpiece W is on the near side or the far side in the X direction.

[0160] In addition, the control unit 107 can also specify the part detected by performing the code detection process on the captured image as the feature part. The code detection process can be similar to the process of the code detection unit 43. In addition, the control unit 107 can specify the part where the decoding process has been successfully performed by performing the decoding process on the captured image as the feature part. The decoding process can be similar to the process of the decoding unit 44. That is, for example, the coordinates specified by performing image processing such as edge detection processing, code detection processing, and decoding processing on the captured image can be set as the coordinates of the position corresponding to the feature part of the workpiece W. In addition to the above processing, the image processing also includes object detection processing, etc., and can be rule-based detection processing or detection processing using artificial intelligence (AI).

[0161] The control unit 107 obtains the position of the feature part of the workpiece W in the coordinate system of the conveying device B and the position corresponding to the feature part of the workpiece W in the UV coordinate system of the captured image. Then, the control unit 107 further adjusts the parameters of the adjusted calibration model in the conveying direction based on the position of the feature part of the workpiece W in the coordinate system of the conveying device B and the position corresponding to the feature part of the workpiece W in the UV coordinate system of the captured image.

[0162] That is, the control unit 107 obtains the detection time of the workpiece sensor 92 (the time when the detection signal is output) and the shooting time of the shooting unit 3, and calculates the elapsed time from the detection time to the shooting time. The control unit 107 estimates the front edge position of the workpiece W based on the calculated elapsed time and the conveying speed of the workpiece W, and draws the front edge position as an edge display line 404 on the adjusted image.

[0163] When changing the position parameters of the code reader 1 to align the edge display line 404 with the corresponding edge part of the workpiece W, as Figure 28 shown, the change in the position parameters is reflected on the display user interface screen 400. At this time, the Y coordinate of the code reader 1 is adjusted. That is, the operation of aligning the edge display line 404 with the corresponding edge part of the workpiece W is an operation performed by the user operating the operation unit 302, etc. via the display unit 301, and is an operation for correcting the installation information. When receiving the correction of the installation information from the user via the display unit 301, the display processing unit 108 changes and displays at least one of the conveyor position and the position of the feature part of the workpiece W on the installation confirmation image according to the correction. The operation for correcting the installation information can be, for example, an operation of directly inputting the value included in the installation information without using the display unit 301.

[0164] Note that the installation information can also be corrected by directly moving the edge display line 404 in the vertical direction of the display user interface screen 400. As described above, the coordinates of the position corresponding to the feature portion of the workpiece W in the UV coordinate system of the captured image can be the coordinates specified by the user as the feature portion of the workpiece W for the captured image. In addition, the installation confirmation image can indicate at least one of the conveyor position and the feature portion of the workpiece W without indicating both the conveyor position and the feature portion of the workpiece W.

[0165] The control unit 107 can cause the imaging unit 3 to image the workpiece W conveyed by the conveying device B multiple times at different timings. In this case, for each of the multiple captured images obtained by imaging the workpiece W conveyed by the conveying device B multiple times at different timings by the imaging unit 3, the control unit 107 can adjust the parameters of the calibration model in the conveying direction based on the position of the feature portion of the workpiece W in the coordinate system of the conveying device B and the position corresponding to the feature portion in the UV coordinate system of each captured image. That is, since the UV coordinates of the edge portion specified by the user and the position detected by the image processing may not accurately indicate the feature portion of the workpiece W, the accuracy can be improved by repeatedly adjusting the parameters multiple times.

[0166] Although Figures 25 to 28 it shows the case where the code reader 1 is installed above the workpiece W, as Figure 3 and Figure 4A shown, the code reader 1 can be installed on the side of the workpiece W. The case where the code reader 1 is installed on the side of the workpiece W will be described.

[0167] Figure 29 It shows the installation confirmation image in the case where the code reader 1 is installed to image the workpiece W from the side on the upstream side of the workpiece W. In this example, the long axis direction of the image sensor 31b is made to coincide with the Z direction in the coordinate system of the conveying device B. In addition, it shows the case where the workpiece W points from the downstream side to the upstream side in the conveying direction. For example, the control unit 107 can acquire the installation angle of the imaging unit 3 in the coordinate system of the conveying device B, and can judge the orientation of the field of view of the imaging unit 3 based on the acquired installation angle. As Figure 19 shown, in the case where the image sensor 31b is a custom sensor that can be read in the short axis direction of the image sensor, the reading direction of the image sensor 31b and the conveying direction can be made to coincide with each other.

[0168] Figure 30An example is shown in which an image obtained by photographing the workpiece W being conveyed from the upstream side is displayed, and an installation confirmation image in which an edge display line 404 is drawn on the photographed image is displayed in the image display area 401. The control unit 107 acquires the detection signal of the workpiece sensor 92 and the conveyor information, and based on the acquired detection signal and conveyor information, sends a trigger to the photographing unit 3 so that the characteristic part of the workpiece W is included in the installation confirmation image, and controls the photographing unit 3 to generate a photographed image.

[0169] Specifically, when the field of view of the photographing unit 3 extends from the upstream side to the downstream side in the conveying direction, the control unit 107 designates the front edge of the workpiece W (the edge part at the upstream end in the conveying direction) as the characteristic part of the workpiece W. When the edge display line 404 is aligned with the corresponding edge part of the workpiece W (the edge part at the upstream end in the conveying direction), the Y coordinate of the code reader 1 is adjusted. As described above, when the field of view of the photographing unit 3 points from the downstream side to the upstream side of the conveying device B, the acquisition unit 101 acquires the designation from the user by using the front edge of the workpiece W as the characteristic part of the workpiece W.

[0170] After adjusting the parameters of the calibration model in this way, during operation, the control unit 107 determines the area for photographing the workpiece W as the area for reading signals from the image sensor 31b, as the first partial area. When the first partial area is determined, signals of the first partial area are read from the image sensor 31b, and the signals of the first partial area can be displayed as Figure 17 shown.

[0171] When the field of view of the photographing unit 3 points from the downstream side to the upstream side of the conveying device B, the control unit 107 controls the photographing unit 3 so that the front edge of the workpiece W is included in the installation confirmation image as the characteristic part of the workpiece W (that is, the front edge of the workpiece W is included in the area for reading signals from the image sensor 31b).

[0172] In addition, during operation, the control unit 107 can also determine a second partial area for performing image processing on the image. For example, when performing mask processing as the image processing, the part other than the workpiece W in the image is set as the second partial area, and mask processing is performed on the second partial area. As a result, an area where decoding processing is not performed can be designated. The second partial area is set as a non-object range for code search, and even if a code exists as a result of code search, decoding processing is not performed.

[0173] Alternatively, super-resolution processing can also be performed as image processing. In this case, the part of the workpiece W in the image is set as the second partial area, and super-resolution processing is performed on this second partial area. As a result, even for the scrambled code, the reading success rate can be improved. As described above, the control unit 107 can identify the conveying state of the workpiece W conveyed on the conveying device B based on, for example, the detection signal of the workpiece sensor 92 and the conveying speed of the conveying device B, and can determine at least one of the first partial area for reading the signal from the image sensor 31b and the second partial area for performing image processing on the captured image based on the conveying state of the workpiece W and the adjusted calibration model.

[0174] When the target workpiece to be imaged and the adjacent workpiece adjacent to the target workpiece are included in the field of view (FOV) of the imaging unit 3, the control unit 107 can also determine at least one of the first partial area that includes the target workpiece but does not include the adjacent workpiece and the second partial area that includes the adjacent workpiece and performs masking processing. That is, as Figure 16 shown, when the target workpiece is the reading target workpiece W1 and the adjacent workpiece is the front workpiece W2, the first partial area that includes the reading target workpiece W1 but does not include the front workpiece W2 is determined (the area Figure 16 identical to the area E in). In this case, the first partial area is the area for reading the signal from the image sensor 31b. Additionally, as Figure 17 shown, the control unit 107 can also determine the second partial area that includes the front workpiece W2 (the Figure 17 masking area F in), and in this case, the second partial area is the area for performing masking processing.

[0175] Figure 31 The conveyor position M is shown in the case where the code reader 1 is installed to image the workpiece W from the side on the downstream side of the workpiece W. In this example, similar to the Figure 29 example shown, the long axis direction of the image sensor 31b is aligned with the Z direction in the coordinate system of the conveying device B.

[0176] Figure 32An example of an image obtained by photographing a workpiece W being conveyed from the downstream side is shown, and an edge display line 404 is drawn on the photographed image. Specifically, when the field of view of the photographing unit 3 expands from the downstream side to the upstream side in the conveying direction, the control unit 107 designates the rear edge of the workpiece W (the edge portion at the downstream end in the conveying direction) as the characteristic portion of the workpiece W. When the edge display line 404 aligns with the corresponding edge portion of the workpiece W (the edge portion at the downstream end in the conveying direction), the Y coordinate of the code reader 1 is adjusted. As described above, when the field of view of the photographing unit 3 points from the upstream side to the downstream side of the conveying device B, the acquisition unit 101 can obtain a designation from the user by using the rear edge of the workpiece W as the characteristic portion of the workpiece W.

[0177] Even when the characteristic portion of the workpiece W is the rear edge of the workpiece W, similar to the case of the front edge, the photographing unit 3 is controlled so that the characteristic portion is included in the installation confirmation image. Specifically, when the field of view of the photographing unit 3 points from the upstream side to the downstream side of the conveying device B, the control unit 107 controls the photographing unit 3 so that the rear edge of the workpiece W is included in the installation confirmation image as the characteristic portion of the workpiece W.

[0178] Figure 33 relates to Figure 29 a modification of the example shown, and in this modification, the short-axis direction of the image sensor 31b is made to coincide with the Z direction in the coordinate system of the conveying device B. When the image sensor 31b is a custom sensor, the reading direction of the image sensor 31b can be made to coincide with the Z direction. In this modification, since as Figure 34 shown, an edge display line 404 is drawn on the photographed image, when the edge display line 404 aligns with the corresponding edge portion of the workpiece W, the Y coordinate of the code reader 1 is also adjusted.

[0179] Figure 35 relates to Figure 31 a modification of the example shown, and in this modification, the short-axis direction of the image sensor 31b is made to coincide with the Z direction in the coordinate system of the conveying device B. When the image sensor 31b is a custom sensor, the reading direction of the image sensor 31b coincides with the Z direction. In this modification, since as Figure 36 shown, an edge display line 404 is drawn on the photographed image, when the edge display line 404 aligns with the corresponding edge portion of the workpiece W, the Y coordinate of the code reader 1 is also adjusted.

[0180] Even when Figure 3 shown, code readers are installed at multiple installation positions, according to the above configuration, during calibration, since Figure 27 , Figure 30 , Figure 32 ,Figure 34 and Figure 36 The image for adjusting the parameters of the calibration model of the code reader in the conveying direction shown can be uniformly obtained by conveying the workpiece W only once by the conveying device B, so the burden on the user during calibration can also be reduced.

[0181] As Figure 9 shown, the controller 100 includes an output unit 109. The output unit 109 is a unit for outputting an installation confirmation report, and the installation confirmation report includes an installation confirmation image for indicating the position of the conveyor and the characteristic part of the workpiece W in the captured image. The installation confirmation report may include any one or more of the code reading test results of the decoding unit 44, the installation date and time, the installation location, the installation information, the camera information, and the workpiece information, etc. together with the installation confirmation image. The installation confirmation report can be output in the format of an electronic file (electronic data), or can be output by printing on a paper medium. The installation confirmation report is created, and thus the basis for indicating the reading test result by the image can be provided.

[0182] The controller 100 generates image output parameters and sends the image output parameters to the code reader 1. When receiving the image output parameters sent from the controller 100, the code reader 1 performs image output processing according to the received image output parameters. The output of the setting image and the output of the collected image can be performed through the image output parameters.

[0183] The setting image is a test image output to a setting device 300, etc. for the user to confirm and used in the code reading test during setting, and a captured image used in installation adjustment, and an installation confirmation image is generated based on the captured image.

[0184] The collected image is output to the collection and analysis device 200 and used as an analysis image, a learning image, and a user confirmation when an error occurs for the error analysis function described later.

[0185] (Error analysis function)

[0186] During the operation of the code reader system S, code reading may fail. Such a failure is called an error, and since there are various error causes, it may be difficult for the user to specify the error. On the other hand, the code reader system S of the present embodiment has an error analysis function as a function for estimating the error cause based on the image related to the workpiece ID given to each workpiece W and facilitating the user to solve the error. In the error analysis function, it is possible to specify when the workpiece W on the conveying device B is positioned and where the workpiece is positioned on the conveying device B so as to perform error analysis for each workpiece W, and it is possible to easily specify which workpiece W cannot be read and the error cause. The error analysis function can be implemented by the collection and analysis device 200 which is the above-mentioned personal computer. An example of the configuration of the personal computer includes a microcomputer having a processor (including a CPU and a GPU), a ROM, a RAM, and the like.

[0187] When a detection signal is acquired from the workpiece sensor 92, the control unit 107 of the controller 100 generates a workpiece ID for each workpiece W based on the acquired detection signal. The workpiece ID is identification information for identifying the workpiece W, and is different for each workpiece W. The workpiece ID generated by the control unit 107 is associated with the image generated by the imaging unit 3, and is also associated with the result of the decoding process of the decoding unit 44.

[0188] As Figure 3 , Figure 4A and Figure 4B shown, in operation examples 1 and 2 in which a plurality of code readers 1 image a common workpiece W, a plurality of images are generated by the imaging units 3 of the plurality of code readers 1. The image storage unit 201 (e.g., SSD or HDD) included in the collection and analysis device 200 stores the plurality of images (collected images) generated by the imaging units 3 of the plurality of code readers 1 in association with the corresponding workpiece IDs. In addition, as a result of the decoding process of the code of each image by the decoding unit 44, there are cases where the reading is successful and cases where the reading is failed, and the workpiece ID is associated with each of the image of the workpiece W for which the reading is successful and the image of the workpiece W for which the reading is failed.

[0189] As Figure 37 shown, the collection and analysis device 200 includes an analysis unit 202 for estimating the error cause, and the analysis unit 202 is implemented by a processor (e.g., GPU). Based on the result of the decoding process corresponding to each workpiece ID, the analysis unit 202 designates the workpiece ID associated with the image for which the reading is failed as an error workpiece ID, and keeps the workpiece ID associated with the other images (i.e., the images for which the reading is successful) as it is. As a result, the analysis unit 202 can automatically classify the images associated with the error workpiece ID and the other images. In addition, the analysis unit 202 estimates the error cause based on the plurality of images associated with the error workpiece ID.

[0190] Specifically, the analysis unit 202 includes a first determination unit 202a for determining whether a code exists by using an image associated with an incorrect workpiece ID and a second determination unit 202b for determining whether a workpiece exists by using an image associated with the incorrect workpiece ID. The first determination unit 202a is a unit for specifying a code area based on an image associated with the incorrect workpiece ID and detecting a code from the specified code area, and can determine whether a code exists, for example, by a process similar to that of the code detection unit 43. When a code is detected in at least one image associated with the incorrect workpiece ID, the first determination unit 202a determines that the code is given to the workpiece W associated with the incorrect workpiece ID.

[0191] The first determination unit 202a has a machine learning model trained in advance from a plurality of code images and is configured to determine whether a code exists in an image corresponding to the incorrect workpiece ID by this machine learning model. Since the code itself does not change greatly for each user, unlike the detection of the workpiece W, code detection can be pre-trained to save the time and effort of the user. For example, a machine learning model using a convolutional neural network (CNN) can be adopted as the machine learning model of the first determination unit 202a. Note that the first determination unit 202a can perform rule-based detection.

[0192] When the workpiece W is detected in at least one image associated with the incorrect workpiece ID, the second determination unit 202b determines that the workpiece W corresponding to the incorrect workpiece ID has been normally conveyed. It can also be determined that the workpiece W has not been conveyed based on the determination result of the second determination unit 202b. The second determination unit 202b has a machine learning model trained from a conveyance device image (conveyor image) captured by a plurality of code readers 1 installed around the conveyance device B in a state where the workpiece W is not included in the field of view. For example, the code reader 1 can acquire a background image obtained by capturing the conveyance device B in a state where the workpiece W is not included in the field of view. The machine learning model can be trained by inputting the background image as a learning image into the machine learning model. For example, a machine learning model using a convolutional neural network (CNN) can be adopted as the machine learning model of the second determination unit 202b. For example, after only learning the background image, the second determination unit 202b detects the difference between the features of the background image and the features of the image input during operation (i.e., the workpiece on the conveyance device B). In addition, the second determination unit 202b can learn not only the background image but also an image in which the workpiece W appears on the conveyance device B. As a result, when the appearance and size of the workpiece W to be conveyed change little, the determination accuracy regarding the presence or absence of the workpiece can be improved.

[0193] The second determination unit 202b determines whether there is a workpiece W for an image corresponding to an incorrect workpiece ID through a machine learning model. The image corresponding to the incorrect workpiece ID is input into the machine learning model of the second determination unit 202b, and thus it is possible to accurately determine whether there is a workpiece W in the image. The machine learning model of the second determination unit 202b is trained through a conveyor image corresponding to the installation status of the conveyor B and the code reader 1 used by the user, and thus the machine learning model is hardly affected by scratches on the conveyor B and changes in the exposure timing, and the detection accuracy of the workpiece W is improved.

[0194] The second determination unit 202b is configured to be able to train the machine learning model of the second determination unit 202b using a new conveyor image at a predetermined time interval or at a timing specified by the user. That is, since the conveyor B deteriorates over time, it is possible to perform detection corresponding to the current status of the conveyor B by periodically retraining and additionally training the machine learning model of the second determination unit 202b, and misjudgment is less likely to occur. The predetermined time interval is, for example, an interval of several days, an interval of several weeks, or an interval of several months, etc. Note that the second determination unit 202b can perform rule-based detection.

[0195] The analysis unit 202 estimates the cause of the error for each incorrect workpiece ID using the first determination unit 202a and the second determination unit 202b. The determination order of the analysis unit 202 can also be specified. For example, for an image in which the first determination unit 202a determines that there is no code in the image associated with the incorrect workpiece ID, the analysis unit 202 determines whether there is a workpiece W by the second determination unit 202b. Note that the determination of the first determination unit 202a can be performed after the determination of the second determination unit 202b, but the processing time can be shortened by performing the determination of the second determination unit 202b after the determination of the first determination unit 202a. For example, when there is a code, there is a workpiece W, but even if there is a workpiece W, it is not known whether a code has been given. Therefore, when a code can be detected, it is determined that there is also a workpiece W, and the processing time can be shortened by terminating the processing.

[0196] The error causes include a first type and a second type. In the first type, the reading of the image of the presence code in the image associated with the error workpiece ID has failed, and in the second type, the workpiece W corresponding to the error workpiece ID of the image of the absence code in the image associated with the error workpiece ID has been normally conveyed. When determining which of the first type and the second type the error cause belongs to, the determination results of the first determination unit 202a and the second determination unit 202b can be used. As a result, it can be specified whether the error cause is due to the code itself or the fact that the code has not been given to the workpiece W. For example, assuming a case where about eight code readers 1 are installed and five images of each workpiece W are taken, since the number of images of each workpiece W is 40, it is burdensome for the user to confirm the images one by one. However, determining which of the first type and the second type the error cause belongs to and presenting the determination result to the user, and thus it is easier for the user to take measures to deal with the error.

[0197] The error cause can include a third type. In the third type, there is no workpiece W corresponding to the error workpiece ID or the workpiece has not been normally conveyed. For example, the determination result of the second determination unit 202b can be used to determine whether the error cause belongs to the third type. The third type is included in the error causes, and thus it can be specified whether the workpiece W itself has not yet entered the field of view of the imaging unit 3. As a result, it is easier for the user to take measures to deal with the error. As an example of the error cause belonging to the third type, when the position or conveyance speed of a certain object detected by the workpiece sensor 92 or the encoder 91 does not correspond to the time of the code reader 1 due to some reasons including program defects or machine failures, there is a possibility that the workpiece W cannot be imaged. In addition, the following case can also be an example of the error cause belonging to the third type: Although the workpiece W has not been conveyed due to a failure of the workpiece sensor 92 or the encoder 91, only the workpiece ID is generated.

[0198] The analysis unit 202 can set the number of images in which the decoding process has been successfully performed among the multiple images associated with the workpiece ID as a threshold for determining that the workpiece ID is a successfully read workpiece ID. When the number of images in which the decoding process has been successfully performed is equal to or greater than a predetermined number, the workpiece ID of the workpiece W is set as the successfully read workpiece ID. The analysis unit 202 is configured such that the number of images used as a threshold for determining that the workpiece ID is a successfully read workpiece ID changes. Since the number of images used as the threshold can be changed, the level of reading stability can be adjusted. For example, when there are multiple codes, the determination can be made separately for each type of code, or the determination can be made for each workpiece. Even when one of the multiple types of codes does not exceed the threshold, the workpiece W can be determined as a failed read. Additionally, for example, in the case where a workpiece W has five decoding opportunities, when the decoding of two of the three types is successful five times, even if the decoding of one type is only successful once, the reading stability is low, and thus it can be determined as a failed read.

[0199] The collection and analysis device 200 includes a display processing unit 203, and the display processing unit 203 is implemented by a processor. The display processing unit 203 acquires the cause of the error estimated by the analysis unit 202 together with the error workpiece ID, and displays the image associated with the error workpiece ID together with the cause of the error corresponding to the acquired error workpiece ID on the display unit 301. The display unit 301 can be a display device that can be installed away from the main body part of the setting device 300, or can be integrated with the main body part of the setting device 300.

[0200] The collection and analysis device 200 includes an image generation unit 204. The image generation unit 204 is a unit for generating a packaging style image for indicating the appearance of the workpiece W by synthesizing multiple images associated with each workpiece ID. The packaging style image can be generated by the collection and analysis device 200, or can be generated by the control unit 4 of the code reader 1.

[0201] When the imaging unit 3 captures the workpiece W being conveyed by the conveying device B multiple times at constant time intervals (constant distance intervals), partial images of the workpiece W are generated that are captured sequentially from the upstream side to the downstream side of the workpiece W in the conveying direction. Since these partial images are images obtained by capturing the same workpiece W, these partial images are associated with the same workpiece ID. The image generation unit 204 generates one packaging style image by synthesizing a plurality of partial images associated with the same workpiece ID in the order of capture. Internal time such as the internal clock of the code reader 1 is added to the date and time information based on the capture date and time of the images used to generate the packaging style image. Here, the collection and analysis device 200 can convert the date and time information of the image into external time by receiving the correspondence between the internal time of the code reader 1 and the external time (such as UTC, etc.) from the controller 100.

[0202] When the image generation unit 204 generates a packaging style image, the generated packaging style image is sent to the image storage unit 201. The image storage unit 201 stores the packaging style image generated by the image generation unit 204 in association with the corresponding workpiece ID. At this time, the image storage unit 201 stores the packaging style image together with the date and time information based on the capture date and time of the images used to generate the packaging style image. The date and time information stored in the image storage unit 201 is also associated with the workpiece ID.

[0203] In addition, in the case of using a plurality of code readers 1, the image generation unit 204 generates a packaging style image for each code reader 1. For example, the image generation unit 204 extracts a plurality of images corresponding to each workpiece W for each of the plurality of code readers 1. At this time, a plurality of images corresponding to each workpiece W can be extracted based on the workpiece ID. The image generation unit 204 can generate a packaging style image for each workpiece W by synthesizing the extracted plurality of images.

[0204] The packaging style images of each code reader 1 generated by the image generation unit 204 are stored in the image storage unit 201 in association with the corresponding workpiece ID. At this time, each packaging style image can be stored in the image storage unit 201 in a state associated with specific information for specifying the captured code reader 1. Even if packaging style images corresponding to each workpiece are generated for each of the plurality of code readers 1, each packaging style image can be stored in the image storage unit 201.

[0205] The code reader system S further includes a search unit 205 for searching for a packaging style image from date and time information specified by the user, and the search unit 205 is implemented by a processor. The search unit 205 may be provided in the collection and analysis device 200, or may be provided in the setting device 300. When, for example, the user specifies date and time information by operating the operation unit 302 of the setting device 300, the specified date and time information is received by the search unit 205. When the date and time information is received, the search unit 205 searches for a packaging style image synthesized from images taken at the shooting date and time specified by the date and time information from among the plurality of packaging style images stored in the image storage unit 201. The display processing unit 203 displays the searched packaging style image on the display unit 301. At this time, the workpiece ID associated with the packaging style image may be displayed on the display unit 301. The code reader system S has, for example, a storage and search function for packaging style images, and thus when there is an inquiry from the person who finally holds the workpiece W regarding damage to the workpiece W after conveyance, it is possible to confirm at a later time at what timing and in what condition the workpiece W was.

[0206] In addition, the search unit 205 may also search for a packaging style image from the workpiece ID. When the user operates the operation unit 302 of the setting device 300 to input the workpiece ID, the input workpiece ID is received by the search unit 205. When the workpiece ID is received, the search unit 205 searches for the packaging style image specified by the workpiece ID from among the plurality of packaging style images stored in the image storage unit 201. The display processing unit 203 displays the searched packaging style image on the display unit 301.

[0207] Figure 38 is a flowchart showing an example of the processing flow from image shooting to image storage. The controller 100 executes a code reader control process for controlling the code reader 1 (step SA1), a code identification process for identifying the code (step SA2), a read test process for performing a code reading test (step SA3), and an online adjustment process during operation (step SA4). First, the controller 100 executes the code reader control process SA1 and sends a read start trigger signal and control parameters to the code reader 1. The code reader 1 that has received the read start trigger signal performs illumination and shooting processing in step SA5. A captured image is generated by performing step SA5. The captured image is sent as a set image to the controller 100 by executing image output processing in step SA6. The controller 100 performs the read test process in step SA3 and the online adjustment process in step SA4 based on the set image. In addition, the captured image is sent as a collected image to the collection and analysis device 200 and stored in the image storage unit 201.

[0208] In step SA7, the decoding unit 44 performs a decoding process on the captured image. The identification data for code identification generated by the decoding process is sent to the controller 100 and used in the code identification process in step SA2.

[0209] The controller 100, the code reader 1, and the dimension measurement unit 90 have a logging function for accumulating logs in each device and outputting the logs to the collection and analysis device 200. The collection and analysis device 200 collects and accumulates the logs output from the controller 100, the code reader 1, and the dimension measurement unit 90.

[0210] The format of the log data is not particularly limited, and for example, a line protocol can be used. The line protocol includes a plurality of fields, such as a field for indicating the log type, a field for the identifier, a field for the log data, and a field for the transmission time, etc. As a result, the collection and analysis device 200 can identify when what type of log was sent from which device.

[0211] The logs collected and accumulated by the collection and analysis device 200 include package logs, image collection logs, and system logs, etc. The package log is a log for collecting detailed information of the workpiece W in time series. The controller 100 outputs a package log at the timing (release point) when the tracking of the workpiece W ends. The image collection log is the image generated by the above-described imaging unit 3, and the controller 100 outputs the image generated by the imaging unit 3 as an image collection log. The system log is a log related to the state change or event of the entire system, and includes not only the logs output from the controller 100, but also the logs output from the code reader 1 and the dimension measurement unit 90.

[0212] Figure 39 An image display user interface screen 500 displayed by the display processing unit 203 on the display unit 301 is shown. In the image display user interface screen 500, a code reader display area 501, a workpiece image display area 502, and a check box 503 for only displaying errors are provided. In Figure 39 In the example shown, six code readers 001 to 006 are used as the operating code readers, and the six code readers 001 to 006 are displayed in the code reader display area 501. In the workpiece image display area 502, a packaging style image based on the images captured by the six code readers 001 to 006 is displayed. The packaging style image displayed in the workpiece image display area 502 is a thumbnail image, and the computational load is reduced by displaying the thumbnail image. The code reader 1 is not limited to Figure 5The configuration shown includes a photographing unit 3, and a plurality of photographing units 3 may be included in the housing of the code reader 1. In the case of this configuration, the code reader display area 501 may indicate that even in the common housing, the code reader is used as a different code reader for each photographing unit 3, and the workpiece image display area 502 may display a packaging style image based on the images photographed by each photographing unit 3.

[0213] In this example, since the six code readers 001 to 006 photograph the workpiece W from different directions, the packaging style images displayed in the workpiece image display area 502 are different images. When the user checks the checkbox 503 for displaying only errors, the search unit 205 detects this check. Then, the search unit 205 searches for the packaging style image corresponding to the error workpiece ID for which the code reading has failed, and the display processing unit 203 displays only the packaging style image corresponding to the error workpiece ID in the workpiece image display area 502.

[0214] The display processing unit 203 may display, on the display unit 301, the packaging style image corresponding to each workpiece ID and the error cause for each workpiece ID. That is, an error cause display area 504 for displaying the error cause is provided in the image display user interface screen 500. In the error cause display area 504, the analysis result of the analysis unit 202 is displayed. For example, when the analysis unit 202 determines that there is no code, a message indicating the absence of the code is displayed in the error cause display area 504. In addition, when the analysis unit 202 determines that the workpiece W does not exist, a message indicating the absence of the workpiece W is displayed in the error cause display area 504. As described above, the packaging style image indicating the appearance of the workpiece W is displayed together with the error cause, and thus it is easier for the user to solve the error.

[0215] The display processing unit 203 may display, on the display unit 301, statistical information based on the error causes corresponding to a plurality of error workpiece IDs. The statistical information includes, for example, the overall reading success rate, the effective reading rate excluding errors not caused by the code reader, and the details of the errors not caused by the code reader. The details include, for example, errors caused by the non - existence of the workpiece itself and errors caused by damage to the workpiece.

[0216] The display processing unit 203 can also display, in a comparable manner on the display unit 301, the package style image corresponding to the error workpiece ID for which code reading has failed and the package style images corresponding to other workpiece IDs. "Other workpiece IDs" include the workpiece IDs for which code reading has been successful. For example, the display processing unit 203 generates an image display user interface screen and sets, on this image display user interface screen, an area for displaying the package style image corresponding to the error workpiece ID and an area for displaying the package style images corresponding to other workpiece IDs. The display processing unit 203 displays the image display user interface screen on the display unit 301, and thus the user can view and compare the package style image for which code reading has failed and the package style images for which code reading has been successful. As a result, it is easy to visually identify the cause of the error.

[0217] Figure 40 is a flowchart showing the process from after the decoding process until the log is additionally written. In step SB1 after the start, the collection and analysis device 200 determines whether code reading has been successful. Whether code reading has been successful is determined based on the result of the decoding process. Additionally, in the case where the distance between adjacent workpieces W is narrower than a predetermined interval, since there is a high risk that the information read in the decoding process is associated with an incorrect workpiece, it can be considered that the reading has failed regardless of the result of the decoding process.

[0218] In the case where code reading has been successful, the process proceeds to step SB2, the fact that code reading has been successful is additionally written to the log, and the process ends. "Being additionally written" means that the collection and analysis device 200 stores the log. In the case where code reading has failed (step SB3), the fact that code reading has failed is additionally written to the log, and the process proceeds to step SB4.

[0219] In step SB4, the first determination unit (code detection AI) 202a of the analysis unit 202 performs a process for determining whether a code exists. In step SB5, the presence or absence of the code is determined. If the code exists, the process proceeds to step SB6, and the presence of the code is additionally written to the log, and the process ends. If the code does not exist, the process proceeds to step SB7. In step SB7, the second determination unit (workpiece detection AI) 202b of the analysis unit 202 performs a process for determining whether a workpiece W exists. In step SB8, the presence or absence of the workpiece W is determined. If the workpiece W exists, the process proceeds to step SB9, and the presence of the workpiece W is additionally written to the log, and the process ends. If the workpiece W does not exist, the process proceeds to step SB10, and the absence of the workpiece W is additionally written to the log, and the process ends. The method for estimating the cause of an error based on the additionally written log is as described above. Note that, if the workpiece W exists, it is possible to determine whether the workpiece W is a box-shaped workpiece or a bag-shaped workpiece or whether the workpiece W is scratched.

[0220] In addition, as Figure 41 shown, the code reader system S may include a plurality of collection and analysis devices 200A and 200B. In Figure 41 the case shown, the first collection and analysis device 200A and the second collection and analysis device 200B respectively constitute an image storage device, and a plurality of images and logs captured by the plurality of code readers 1 are stored in a distributed manner in the plurality of collection and analysis devices 200A and 200B. For example, when the image data size per sheet increases, the processing load increases accordingly, and thus there is a concern that the storage process in one collection and analysis device 200 is delayed. In this case, the plurality of images are stored in a distributed manner in the plurality of collection and analysis devices 200A and 200B, and thus the processing load can be distributed to the plurality of collection and analysis devices 200A and 200B. As a result, the delay in the storage process can be eliminated. The collection and analysis devices 200A and 200B may be provided for each code reader 1, or may be provided for each group of a plurality of code readers 1. In addition, a plurality of images sequentially generated by the code reader 1 may be distributed and stored in the plurality of collection and analysis devices 200A and 200B in the order of generation. The number of collection and analysis devices 200 is not limited to two.

[0221] In the case where a plurality of collection and analysis devices 200A and 200B are provided, the analysis unit 202 can acquire a plurality of images related to the error workpiece IDs stored in a distributed manner in the plurality of collection and analysis devices 200A and 200B, and can estimate the cause of the error based on the acquired images.

[0222] The first collection and analysis device 200A may be the main collection and analysis device, and the second collection and analysis device 200B may be the auxiliary collection and analysis device. In this case, the first collection and analysis device 200A performs main functions such as the generation of a log display screen and the collection of logs. At the log acquisition timing, the first collection and analysis device 200A sends an image processing trigger signal to the second collection and analysis device 200B.

[0223] The second collection and analysis device 200B collects and stores the images output from the code reader 1, but stops main functions such as the generation of a log display screen and the collection of logs. When receiving the image processing trigger signal from the first collection and analysis device 200A, the second collection and analysis device 200B performs processing for generating a packaging style image and processing for automatically classifying images. In addition, the log data of the first collection and analysis device 200A is updated based on the analysis result of the analysis unit 202.

[0224] Figure 42 It is a control flowchart of the controller 100 when generating and adjusting the above calibration model of the code reader system S. The details of each step correspond to the description in the above embodiment.

[0225] In step SC1 after the start, the controller 100 acquires camera information, conveyor information, and installation information. In step SC2, the controller 100 generates an initial calibration model based on the camera information, conveyor information, and installation information, and the initial calibration model is used to indicate the correspondence between the conveyor coordinate system and the UV coordinate system. After generating the initial calibration model, the calibration model is adjusted by conveying the workpiece W on the conveyor.

[0226] In step SC3, the controller 100 obtains a detection signal of the workpiece W conveyed on the conveyor from the detection sensor 92. In step SC4, the controller 100 sends a trigger to the imaging unit 3 at a timing estimated to be when the workpiece W enters the field of view of the camera based on the initial calibration model to generate a captured image. In step SC5, the controller 100 calculates the position of the conveyor in the captured image based on the initial calibration model. In step SC6, the controller 100 calculates the position of the characteristic portion of the workpiece W in the conveyor coordinate system at the time point of capture of the captured image based on the initial calibration model. In step SC7, the controller 100 displays an installation confirmation image on the display device, and this installation confirmation image is used to indicate the position of the conveyor M and the position of the characteristic portion of the workpiece W in the captured image. In step SC8, the controller 100 obtains information related to the correction of the installation information or the correction of the position of the conveyor and the position of the characteristic portion of the workpiece in the installation confirmation image from the user. Here, an example of displaying the position of the conveyor and the position of the characteristic portion of the workpiece W in the same captured image is shown, but the present invention is not limited thereto. That is, after parameters in directions other than the conveying direction are adjusted only by the captured image of the conveyor not including the workpiece W, parameters in the conveying direction can be adjusted by other captured images including the workpiece W conveyed on the conveyor.

[0227] In step SC9, the controller 100 adjusts the initial calibration model based on the information related to the correction obtained in step SC8, generates an adjusted calibration model, and ends the generation and adjustment of the calibration model.

[0228] Figure 43 is the control flowchart of the controller 100 from when a workpiece is detected by the code reader system S until the reading result is sent to the outside by using Figure 42 the adjusted calibration model generated therein. The details of each step correspond to the description in the above embodiment.

[0229] In step SD1 after the start, the controller 100 obtains a detection signal of the workpiece W conveyed on the conveyor from the detection sensor 92. In step SD2, the controller 100 assigns a workpiece ID to the workpiece W based on the detection signal and sends a trigger to the dimension measurement unit 90. In step SD3, the controller 100 obtains dimension information of the workpiece W conveyed on the conveyor from the dimension measurement unit 90. In step SD4, the controller 100 identifies the conveyance state of the workpiece W based on the detection signal, the dimension information, and the adjusted calibration model. In step SD5, the controller 100 determines control parameters corresponding to the conveyance position of the workpiece W on the conveyor for each code reader 1 based on the conveyance state and the installation information. In step SD6, the controller 100 sends the control parameters and the trigger to the corresponding code reader 1. In step SD7, the controller 100 obtains an image and a decoding result obtained based on the control parameters from the corresponding code reader 1. In step SD8, the controller 100 sends the image and / or the decoding result to the outside (the data communication device 93, the collection and analysis device 200, and the setting device 300) in association with the corresponding workpiece ID, and ends the control process for one workpiece W. Then, the code reader system S repeats the above process for each workpiece W sequentially conveyed on the conveyor.

[0230] The above embodiments are merely examples in all respects and should not be construed in a limiting manner. In addition, all variations and changes falling within the equivalent scope of the claims are within the scope of the invention. In this embodiment, it is described that the code reader 1 and the controller 100 are physically separated, but a part of the controller 100 can be incorporated into the code reader 1. For example, the acquisition unit 101, the control unit 107, and the display processing unit 108 of the controller 100 are incorporated into the code reader 1, and thus the code reader 1 can include the acquisition unit 101, the control unit 107, and the display processing unit 108.

[0231] A problem different from the above will be described. That is, for example, a code reader is configured to photograph a code such as a barcode or a two-dimensional code attached to a workpiece conveyed by a conveyor with a camera, cut out the code included in the obtained image by image processing, binarize the code, perform a decoding process, and read information (for example, see Japanese Unexamined Patent Application Publication No. 2021-149604A).

[0232] The code reader in Japanese Unexamined Patent Application Publication No. 2021-149604A is configured to be able to obtain camera information including camera parameters, code information to be read, and environment information indicating a reading environment, determine a recommended installation position that satisfies the required field of view and depth based on the camera information and the code information, and provide the determined recommended installation position to the user.

[0233] Incidentally, for example, when operating an image processing device such as a code reader, the installation state of the image processing device varies depending on the usage environment, the type and size of the workpiece, etc. In particular, in a case where it is necessary to accurately associate a workpiece with a decoding result of a code, since highly accurate calibration is required to improve accuracy, the accuracy of the association may not be sufficient only by providing the recommended installation position according to Japanese Unexamined Patent Application Publication No. 2021-149604A.

[0234] In the related art, in such a case, the user performs complex processing by using a programmable logic controller (PLC) or the like, and the burden on the user is large.

[0235] In view of this, other features of the present disclosure have been made, and the object is to reduce the burden on the user during calibration.

[0236] [Clause A1]

[0237] An image processing device, comprising:

[0238] a camera including an image sensor having a plurality of pixels arranged in a matrix, and configured to capture a workpiece conveyed on a conveyor by the image sensor to generate a captured image;

[0239] an acquisition unit configured to acquire camera information related to the camera, installation information indicating a position and orientation of the camera in a conveyor coordinate system of the conveyor, conveyor information including a conveyance speed of the conveyor, and a detection signal of the workpiece; and

[0240] a control unit configured to generate a calibration model based on the camera information and the installation information, the calibration model being for indicating a correspondence relationship between the conveyor coordinate system and a UV coordinate system of the image sensor,

[0241] wherein the control unit:

[0242] calculates a position of a characteristic portion of the workpiece in the conveyor coordinate system at a shooting time point of the captured image based on the detection signal and the conveyance speed, and

[0243] adjusts a parameter of the calibration model in a conveyance direction based on a position corresponding to the characteristic portion in the conveyor coordinate system and a position corresponding to the characteristic portion in the UV coordinate system of the captured image.

[0244] [Clause A2]

[0245] The image processing device according to Clause A1, wherein

[0246] The acquisition unit acquires a detection signal of the workpiece using the detection sensor installed on the upstream side of the conveyor relative to the camera, and

[0247] The control unit defines the conveyor coordinate system with the position of the detection sensor as a reference, and calculates the position of the characteristic part based on the elapsed time from the detection of the workpiece to the time point of shooting.

[0248] [Clause A3]

[0249] The image processing apparatus according to Clause A2, wherein the control unit:

[0250] During the operation after the adjustment of the parameters of the calibration model, based on the detection signal and the conveying speed, identify the conveying state of the workpiece conveyed on the conveyor, and based on the conveying state and the adjusted calibration model, determine at least one of a first partial area for reading a signal from the image sensor and a second partial area for performing image processing on the captured image.

[0251] [Clause A4]

[0252] The image processing apparatus according to Clause A3, wherein when the object workpiece to be photographed and an adjacent workpiece adjacent to the object workpiece are included in the field of view of the camera, the control unit determines at least one of a first partial area including the object workpiece but not including the adjacent workpiece and a second partial area including the adjacent workpiece on which mask processing is performed.

[0253] [Clause A5]

[0254] The image processing apparatus according to Clause A1, wherein the coordinates of the position corresponding to the characteristic part in the UV coordinate system of the captured image are coordinates specified by the user for the captured image as the characteristic part or coordinates specified by performing image processing on the captured image.

[0255] [Clause A6]

[0256] The image processing apparatus according to Clause A5, wherein,

[0257] The acquisition unit:

[0258] In the case where the field of view of the camera points from the downstream side to the upstream side of the conveyor, acquire a designation from the user with the front edge of the workpiece as the characteristic part of the workpiece, and in the case where the field of view of the camera points from the upstream side to the downstream side of the conveyor, acquire a designation from the user with the rear edge of the workpiece as the characteristic part of the workpiece.

[0259] [Article A7]

[0260] The image processing apparatus according to Article A5, wherein the control unit designates, as the feature part, an edge part of the workpiece detected by performing edge detection processing on the captured image.

[0261] [Article A8]

[0262] The image processing apparatus according to Article A7, wherein

[0263] when the field of view of the camera points from the downstream side to the upstream side of the conveyor, the control unit designates the front edge of the workpiece as the feature part of the workpiece, and

[0264] when the field of view of the camera points from the upstream side to the downstream side of the conveyor, the control unit designates the rear edge of the workpiece as the feature part of the workpiece.

[0265] [Article A9]

[0266] The image processing apparatus according to Article A5, wherein the control unit designates, as the feature part, a part detected by performing code detection processing on the captured image.

[0267] [Article A10]

[0268] The image processing apparatus according to Article A5, wherein the control unit designates, as the feature part, a part where the decoding process has been successful by performing decoding processing on the captured image.

[0269] [Article A11]

[0270] The image processing apparatus according to Article A1, wherein for each of the plurality of captured images obtained by the camera capturing the workpiece conveyed by the conveyor at different timings, the control unit adjusts the parameters of the calibration model in the conveying direction based on the position of the feature part in the conveyor coordinate system and the position corresponding to the feature part in the UV coordinate system of each captured image.

[0271] [Article A12]

[0272] The image processing apparatus according to Article A1, wherein

[0273] the control unit calculates candidate mounting positions of the camera based on at least one of the size of the workpiece, the conveyor width, and the code information input from the user, and

[0274] The acquisition unit acquires the installation candidate position as the installation information.

[0275] [Clause B1]

[0276] An image processing apparatus includes:

[0277] A camera including an image sensor having a plurality of pixels arranged in a matrix, and configured to capture a workpiece conveyed on a conveyor by the image sensor to generate a captured image;

[0278] An acquisition unit configured to acquire camera information related to the camera, conveyor information including the width of the conveyor, and installation information for indicating the position and orientation of the camera in a conveyor coordinate system of the conveyor;

[0279] A control unit configured to calculate a conveyor position in the captured image based on the camera information, the conveyor information, and the installation information; and

[0280] A display processing unit configured to display an installation confirmation image on a display device, the installation confirmation image being configured to indicate the conveyor position in the captured image.

[0281] [Clause B2]

[0282] The image processing apparatus according to Clause B1, wherein

[0283] The acquisition unit further acquires a detection signal of the workpiece using a detection sensor and a conveyance speed of the conveyor as the conveyor information;

[0284] The control unit calculates a feature portion of the workpiece in the captured image based on the detection signal and the conveyor information; and

[0285] The display processing unit displays an installation confirmation image on the display device, the installation confirmation image further being configured to indicate a position of the feature portion of the workpiece.

[0286] [Clause B3]

[0287] The image processing apparatus according to Clause B1, wherein the display processing unit displays an image for indicating the installation information together with the installation confirmation image on the display device.

[0288] [Clause B4]

[0289] The image processing apparatus according to Clause B1, wherein correction of the installation information is received from a user, and the display processing unit changes and displays the conveyor position on the installation confirmation image according to the correction.

[0290] [Clause B5]

[0291] The image processing apparatus according to Clause B2, wherein when receiving the correction of the installation information from the user, the display processing unit changes and displays at least one of the position of the conveyor and the position of the characteristic part of the workpiece on the installation confirmation image according to the correction.

[0292] [Clause B6]

[0293] The image processing apparatus according to Clause B1, wherein when receiving the designation of the position of the conveyor on the installation confirmation image from the user via the display screen displayed on the display device, the display processing unit changes and displays the content of the installation information according to the designation.

[0294] [Clause B7]

[0295] The image processing apparatus according to Clause B2, wherein when receiving the designation of at least one of the position of the conveyor and the position of the characteristic part of the workpiece on the installation confirmation image from the user via the display screen displayed on the display device, the display processing unit changes and displays the content of the installation information according to the designation.

[0296] [Clause B8]

[0297] The image processing apparatus according to Clause B2, wherein

[0298] the display processing unit:

[0299] when the field of view of the camera points from the downstream side to the upstream side of the conveyor, displays the front edge of the workpiece as the characteristic part of the workpiece on the installation confirmation image, and

[0300] when the field of view of the camera points from the upstream side to the downstream side of the conveyor, displays the rear edge of the workpiece as the characteristic part of the workpiece on the installation confirmation image.

[0301] [Clause B9]

[0302] The image processing apparatus according to Clause B8, wherein the control unit determines the orientation of the field of view of the camera based on the installation angle of the camera in the conveyor coordinate system.

[0303] [Clause B10]

[0304] The image processing apparatus according to Clause B8, wherein the control unit controls the camera based on the detection signal and the conveyor information so that the characteristic part of the workpiece is included in the installation confirmation image.

[0305] [Clause B11]

[0306] The image processing apparatus according to Clause B9, wherein,

[0307] the control unit:

[0308] when the field of view of the camera points from the downstream side to the upstream side of the conveyor, controls the camera such that the front edge of the workpiece is included in the mounting confirmation image as a characteristic part of the workpiece, and

[0309] when the field of view of the camera points from the upstream side to the downstream side of the conveyor, controls the camera such that the rear edge of the workpiece is included in the mounting confirmation image as a characteristic part of the workpiece.

[0310] [Clause B12]

[0311] The image processing apparatus according to Clause B1, further comprising:

[0312] an output unit configured to output a mounting confirmation report including the mounting confirmation image.

[0313] [Clause B13]

[0314] The image processing apparatus according to Clause B12, further comprising:

[0315] a decoder configured to perform decoding processing of a code attached to the workpiece based on the captured image, and

[0316] the output unit outputs the mounting confirmation report including the reading test result using the decoder together with the mounting confirmation image.

[0317] [Clause B14]

[0318] A code reader system for reading a code attached to a workpiece conveyed on a conveyor based on a detection signal from a detection sensor for detecting the workpiece conveyed on the conveyor, downstream of the detection sensor, the code reader system comprising:

[0319] a code reader including a camera and a decoder, the camera including an image sensor having a plurality of pixels arranged in a matrix and capturing the code attached to the workpiece conveyed on the conveyor through the image sensor to generate a captured image, the decoder being configured to perform decoding processing of the code included in the image captured by the camera; and

[0320] A controller, comprising: an acquisition unit configured to acquire camera information related to the camera, conveyor information including the width of the conveyor, and installation information indicating the position and orientation of the camera in the conveyor coordinate system of the conveyor; a control unit configured to calculate the conveyor position in the captured image based on the camera information, the conveyor information, and the installation information; and a display processing unit configured to display an installation confirmation image on a display device, the installation confirmation image being used to indicate the conveyor position in the captured image.

[0321] [Clause B15]

[0322] An installation assistance device, comprising:

[0323] A camera, comprising an image sensor having a plurality of pixels arranged in a matrix, and configured to capture a workpiece conveyed on a conveyor through the image sensor to generate a captured image;

[0324] An acquisition unit configured to acquire camera information related to the camera, conveyor information including the width of the conveyor, and installation information indicating the relative position and orientation of the camera in the conveyor coordinate system of the conveyor;

[0325] A control unit configured to calculate the conveyor position in the captured image based on the camera information, the conveyor information, and the installation information; and

[0326] A display processing unit configured to display an installation confirmation image on a display device, the installation confirmation image being used to indicate the conveyor position in the captured image.

[0327] Problems different from the above will be described. For example, a code reader system is configured to capture a code such as a barcode or a two-dimensional code attached to a workpiece conveyed by a conveyor based on a trigger signal through a camera, cut out the code included in the obtained image through image processing, binarize the code, and decode the code through a decoder (for example, see Japanese Unexamined Patent Application Publication No. 2021-149657A).

[0328] The code reader system in Japanese Unexamined Patent Application Publication No. 2021-149657A is configured to be able to retain success or failure information indicating whether the reading process of the decoder has been successful in a state associated with a plurality of images captured based on trigger signals, select a reading result corresponding to an arbitrary trigger signal from a user in a state where a list of reading results corresponding to a plurality of trigger signals is displayed on a display unit, and present an image associated with the selected trigger signal to the user.

[0329] Incidentally, when the reading process of the decoder has not been successful (i.e., when a reading error has occurred), the user expects to estimate the cause of the error and solve the problem. In this regard, in Japanese Patent Application Laid-Open No. 2021-149657A, since the images are retained in association with the trigger signals for each code reader, when specifying the image corresponding to the workpiece for which a reading error has occurred, the image can only be specified from the time of the error occurrence in units of the code reader.

[0330] However, what the user wants to solve the error is not in which code reader the error has occurred, but in which workpiece the reading error has occurred, and this problem cannot be solved by the code reader system in Japanese Patent Application Laid-Open No. 2021-149657A.

[0331] In view of this, the present disclosure has been made, and the object of the present disclosure is to facilitate the user's estimation of the cause of the reading error and the user's solution to the reading error.

[0332] [Clause C1]

[0333] A code reader system for reading a code attached to a workpiece downstream of a detection sensor for detecting the workpiece conveyed on a conveyor based on a signal from the detection sensor, the code reader system comprising:

[0334] A control unit for generating a workpiece ID for each workpiece based on a signal from the detection sensor;

[0335] A plurality of cameras for photographing the workpiece from a plurality of different directions in response to an instruction from the control unit;

[0336] A decoder for performing a decoding process of the code attached to the workpiece for each of the plurality of images photographed by the plurality of cameras;

[0337] An image storage unit for storing the plurality of images in association with the corresponding workpiece IDs; and

[0338] An analysis unit for designating the workpiece ID for which the reading has failed as an error workpiece ID based on the result of the decoding process corresponding to the workpiece ID, and estimating the cause of the error based on the plurality of images associated with the error workpiece ID.

[0339] [Clause C2]

[0340] The code reader system according to Clause C1, further comprising:

[0341] A display processing unit for displaying at least one of an error cause corresponding to the error workpiece ID, an image associated with the error workpiece ID, and statistical information based on error causes corresponding to a plurality of error workpiece IDs on a display device.

[0342] [Clause C3]

[0343] The code reader system according to Clause C1, wherein,

[0344] The analysis unit includes:

[0345] A first judgment unit for judging whether there is a code by using an image associated with the error workpiece ID, and

[0346] A second judgment unit for judging whether there is a workpiece by using an image associated with the error workpiece ID, and

[0347] By using the first judgment unit and the second judgment unit, the error cause is estimated for each error workpiece ID.

[0348] [Clause C4]

[0349] The code reader system according to Clause C3, wherein,

[0350] In the case where a code is detected in at least one image associated with the error workpiece ID, the first judgment unit judges that the code is given to the workpiece associated with the error workpiece ID; and

[0351] In the case where a workpiece is detected in at least one image associated with the error workpiece ID, the second judgment unit judges that the workpiece corresponding to the error workpiece ID is being normally conveyed.

[0352] [Clause C5]

[0353] The code reader system according to Clause C4, wherein the error cause includes a first type and a second type. In the first type, the reading of the image with a code in the image associated with the error workpiece ID has failed. In the second type, the workpiece corresponding to the error workpiece ID in the image without a code in the image associated with the error workpiece ID is being normally conveyed.

[0354] [Clause C6]

[0355] The code reader system according to Clause C5, wherein the error cause further includes a third type. In the third type, there is no workpiece corresponding to the error workpiece ID or the workpiece is not being normally conveyed.

[0356] [Clause C7]

[0357] The code reader system according to Clause C3, wherein the analysis unit determines, for an image in which no code is determined by the first determination unit in the image associated with the incorrect workpiece ID, whether a workpiece exists through the second determination unit.

[0358] [Clause C8]

[0359] The code reader system according to Clause C3, wherein the second determination unit includes a machine learning model trained from conveyor images captured by a plurality of code readers installed around the conveyor in a state where the workpiece is not included in the field of view, and determines whether the workpiece exists for an image corresponding to the incorrect workpiece ID through the machine learning model.

[0360] [Clause C9]

[0361] The code reader system according to Clause C8, wherein the second determination unit is configured to be able to train the machine learning model of the second determination unit with new conveyor images at a predetermined time interval or at a timing specified by the user.

[0362] [Clause C10]

[0363] The code reader system according to Clause C3, wherein the first determination unit includes a machine learning model pre-trained from a plurality of code images, and determines whether a code exists for an image corresponding to the incorrect workpiece ID through the machine learning model.

[0364] [Clause C11]

[0365] The code reader system according to Clause C3, wherein the control unit is configured to set the number of images in which the decoding process has been successful among a plurality of images associated with the workpiece ID as a threshold for determining that the workpiece ID is a successfully read workpiece ID, and to change the number of images used as the threshold.

[0366] [Clause C12]

[0367] The code reader system according to Clause C2, further comprising an image generation unit for generating a packaging style image showing the appearance of the workpiece by synthesizing a plurality of images associated with each workpiece ID,

[0368] wherein the image storage unit stores the packaging style image in association with the corresponding workpiece ID, and

[0369] The display processing unit displays, on the display device, a packaging style image corresponding to each workpiece ID and the cause of an error.

[0370] [Clause C13]

[0371] The code reader system according to Clause C12, wherein,

[0372] the image storage unit stores the packaging style image together with date and time information based on the shooting date and time of the image used to generate the packaging style image, and

[0373] the code reader system further includes a search unit configured to search for the packaging style image from the date and time information specified by the user.

[0374] [Clause C14]

[0375] The code reader system according to Clause C12, wherein,

[0376] the image generation unit extracts and synthesizes a plurality of images corresponding to each workpiece for each of the plurality of code readers to generate a packaging style image for each workpiece, and

[0377] the display processing unit displays, on the display device, the packaging style image corresponding to the error workpiece ID and the packaging style images corresponding to other workpiece IDs in a comparable manner.

[0378] [Clause C15]

[0379] The code reader system according to Clause C1 further includes a plurality of storage devices configured to store the plurality of images captured by the plurality of cameras in a distributed manner,

[0380] wherein the analysis unit estimates the cause of the error based on the plurality of images related to the error workpiece ID stored in the plurality of storage devices in the distributed manner.

[0381] As described above, the present invention can be used, for example, at a site where workpieces are conveyed by a conveyor or the like.

Claims

1. A controller is connected to a decoder and one or more cameras. The one or more cameras are configured to generate images based on reflected light from a code attached to a workpiece being conveyed on a conveyor. The decoder is configured to perform decoding processing of the code attached to the workpiece based on the images output from the one or more cameras. The controller includes: An acquisition unit configured to acquire a detection signal of the workpiece using a detection sensor, conveyor information including the conveying speed of the conveyor, and installation information indicating the position and orientation of each of the one or more cameras in a conveyor coordinate system; An identification unit configured to identify the conveying state of the workpiece based on the detection signal and the conveying speed; A processing determination unit configured to determine, for each camera, control parameters corresponding to the conveying position of the workpiece on the conveyor based on the conveying state and the installation information of each camera; And A communication unit configured to send the control parameters determined by the processing determination unit to each corresponding camera.

2. The controller according to claim 1, wherein The processing determination unit determines, for each camera, a shooting cycle based on the conveying state and the installation information of each camera, and The communication unit sends the shooting cycle determined by the processing determination unit to each corresponding camera.

3. The controller according to claim 1, wherein The controller is connected to a plurality of lighting units corresponding to the plurality of cameras via the communication unit, The processing determination unit generates a reference signal for defining a basic cycle common to each camera and each lighting unit, and determines, for each camera and each lighting unit, a shooting cycle and a lighting cycle based on the basic cycle, and The communication unit sends the shooting cycle determined by the processing determination unit to each corresponding camera, and sends the lighting cycle determined by the processing determination unit to each corresponding lighting unit.

4. The controller according to claim 3, wherein, The shooting cycle and the lighting cycle are composed of one or more of the basic cycles.

5. The controller according to claim 3, wherein, The processing determination unit determines, for each camera and each lighting unit, an offset amount by which the start timing of the shooting cycle and the lighting cycle is offset relative to the reference signal based on the conveying state and the installation information of each camera.

6. The controller according to claim 1, wherein, The plurality of cameras photograph a portion above the conveying surface of the conveyor and photograph different workpiece surfaces.

7. The controller according to claim 5, further comprising a reception unit that can receive from a user a combination of cameras and lighting units in the plurality of cameras and the plurality of lighting units connected to the controller for which interference prevention is desired, Among them, The processing determination unit generates a plurality of groups for each combination received by the reception unit and determines the offset amount for each group.

8. The controller according to claim 1, wherein, The controller is connected to a plurality of bottom surface cameras for reading a common gap of the conveyor from below a conveying surface of the conveyor and a plurality of lighting units corresponding to the plurality of bottom surface cameras, and causes the plurality of lighting units to emit illumination light at an overlapping timing.

9. The controller according to claim 1, wherein, the processing determination unit pre-determines control parameters corresponding to the conveying position before the workpiece reaches the conveying position of the workpiece on the conveyor based on the conveying state and the installation information of each camera, and after determining the corresponding control parameters, the communication unit sends the corresponding control parameters to each camera.

10. The controller according to claim 1, wherein, The processing determination unit determines a reading area as the control parameter for each shooting cycle based on the conveying state and the installation information of each camera.

11. The controller according to claim 1, wherein, The processing determination unit determines a code to be read as the control parameter for each shooting cycle based on the conveying state and the installation information of each camera.

12. The controller according to claim 1, wherein, The processing determination unit determines a time limit for decoding processing as the control parameter for each shooting cycle based on the conveying state and the installation information of each camera.

13. The controller according to claim 1, wherein, The processing determination unit determines whether to output a captured image as the control parameter for each shooting cycle based on the conveying speed.

14. The controller according to claim 1, wherein, the detection sensor includes a dimension measurement function or a dimension measurement unit separate from the detection sensor, the dimension measurement function for further detecting workpiece information including at least one of a position of the workpiece in the width direction of the conveyor and a height of the workpiece, the dimension measurement unit for detecting the workpiece information, the acquisition unit further acquires a width of the conveyor as the conveyor information, and the processing determination unit determines control parameters corresponding to a conveying position of the workpiece in the width direction of the conveyor on the conveyor based on the workpiece information.

15. The controller according to claim 14, wherein, The processing determination unit determines a mask area where decoding processing is not performed as the control parameter for each shooting cycle based on the conveying state, the workpiece information, and the installation information of each camera.

16. The controller according to claim 1, wherein, the one or more cameras include an image sensor in which a plurality of pixels are arranged in a matrix, and the number of pixels in the column direction is greater than the number of pixels in the row direction, and the processing determination unit determines an area for only partially reading pixels arranged in certain rows of the image sensor as the control parameter for each shooting cycle based on the conveying state and the installation information of each camera.

17. A controller is connected to one or more code readers, and each of the code readers includes: A lighting control unit for controlling a lighting unit for irradiating a workpiece conveyed on a conveyor; A camera for generating an image based on reflected light from a code attached to the workpiece; and a decoder configured to perform a decoding process of a code attached to the workpiece based on an image output from the camera, and the controller is configured to control the code reader, the controller including: an acquisition unit configured to acquire a detection signal of the workpiece using a detection sensor, a conveyance speed of the conveyor, and installation information indicating a position and orientation of each of the one or more code readers in a conveyor coordinate system of the conveyor; an identification unit configured to identify a conveyance state of the workpiece based on the detection signal and the conveyance speed; a process determination unit configured to determine, for each code reader, control parameters corresponding to a conveyance position of the workpiece on the conveyor based on the conveyance state and the installation information of each code reader; and a communication unit configured to send the control parameters determined by the process determination unit to each corresponding code reader.

18. A code reader system configured to read a code attached to a workpiece downstream of a detection sensor based on a detection signal from the detection sensor for detecting the workpiece conveyed on a conveyor, the code reader system including: one or more code readers each including: a lighting control unit configured to control a lighting unit for irradiating the workpiece; a camera configured to generate an image based on reflected light from the workpiece; and a decoder configured to perform a decoding process of a code attached to the workpiece based on the image generated by the camera; and a controller including: an acquisition unit configured to acquire a detection signal, a conveyance speed of the conveyor, and installation information indicating a position and orientation of each of the one or more code readers in a conveyor coordinate system of the conveyor; an identification unit configured to identify a conveyance state of the workpiece based on the detection signal and the conveyance speed; a process determination unit configured to determine, for each code reader, control parameters corresponding to a conveyance position of the workpiece on the conveyor based on the conveyance state and the installation information of each code reader; and a communication unit configured to send the control parameters determined by the process determination unit to each corresponding code reader.

Citation Information

Patent Citations

  • Optical reader

    JP2021149588A

  • Installation support device, installation support method, and computer program for stationary code reader

    JP2021149604A

  • Optical information reader, optical information reading method, optical information reading program, computer readable recording medium, and recorded instrument

    JP2021149657A