Programs, methods, and systems
The code reader installation support device addresses the challenge of insufficient installation guidance by determining optimal positions and orientations based on acquired information, enhancing installation accuracy and flexibility through iterative adjustments and intuitive interface outputs.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- KEYENCE CORP
- Filing Date
- 2026-01-30
- Publication Date
- 2026-04-10
AI Technical Summary
Existing code readers assume a single installation condition and may suggest insufficient installation settings when reading codes from varying workpiece positions, lacking comprehensive guidance for optimal placement and orientation.
A stationary code reader installation support device that acquires camera, code, and environmental information to determine the required field of view and depth, recommending the best installation position and orientation, and iteratively adjusts if initial settings do not meet the requirements, using templates for multiple installation scenarios, and provides outputs in a convenient format, allowing for intuitive user interface and CAD file generation.
Enables users to virtually grasp the installation scenario, simplifying the installation process by providing recommended positions and orientations, ensuring optimal reading conditions, and offering multiple installation patterns for flexibility and ease of use.
Smart Images

Figure 2026063439000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a terminal device, a program, a method, and a system.
Background Art
[0002] Generally, a code reader is configured to capture an image of a code such as a barcode or a two-dimensional code attached to a workpiece by a camera, cut out and binarize the code included in the obtained image by image processing, and perform a decoding process to read information (see, for example, Patent Documents 1 and 2).
[0003] The optical reading device of Patent Document 1 determines an upper limit value of an exposure time for reading a code based on the moving speed of a workpiece and the cell size constituting the code, and acquires and analyzes a plurality of images including the code, so that the exposure time is automatically set within the upper limit value.
[0004] The optical reading device of Patent Document 2 has a first core that executes imaging processing in an imaging unit and transfers the acquired image data to a shared memory, and a second core that reads out the image data from the shared memory and executes a decoding process based on a decoding process request from the first core.
Prior Art Documents
Patent Documents
[0005]
Patent Document 1
Patent Document 2
Summary of the Invention
Problems to be Solved by the Invention
[0006] The device described in Patent Document 1 can suggest not only the upper limit of the exposure time but also the distance from the imaging unit to the code, i.e., the installation conditions, when the line transport speed and the cell size of the code to be read are input. However, this device assumes that the workpiece is photographed from one side, and the only installation condition it can suggest to the user is the recommended distance from the imaging unit to the code, so the suggested conditions may be insufficient.
[0007] This invention has been made in view of the above, and its purpose is to enable users to virtually grasp the situation at a site where a stationary code reader is installed through visual means. [Means for solving the problem]
[0008] To achieve the above objective, this disclosure may provide a stationary code reader installation support device that assists in the installation of a stationary code reader for reading codes attached to workpieces being transported on a line. The installation support device includes an acquisition means for acquiring camera information including camera parameters of the code reader, code information to be read, and environmental information indicating the reading environment, and a calculation means for determining the required field of view and depth of the code reader necessary for reading the code under the environment specified by the environmental information, based on the environmental information acquired by the acquisition means, and determining an installation pattern, which is a recommended installation position for the code reader that can satisfy the required field of view and depth, based on the camera information and the code information.
[0009] The present disclosure also includes a method for supporting the installation of a stationary code reader, comprising an acquisition step for implementing the acquisition means and a calculation step for implementing the calculation means.
[0010] The present disclosure also includes a computer program that causes the installation support device to execute an acquisition step that implements the acquisition means and an calculation step that implements the calculation means.
[0011] This configuration allows the calculation means to determine not only the recommended installation position of the code reader, but also the orientation of the code reader at that recommended installation position. This allows the user to check both the position and orientation before installing the code reader. Furthermore, when installing the code reader at the determined recommended installation position, the user only needs to install it so that it is in the determined orientation, making the installation process easier.
[0012] In the second disclosure, the calculation means is equipped with an output means that outputs the installation pattern determined by the calculation means, so that the recommended installation position and orientation of the code reader can be presented to the user.
[0013] In the third disclosure, the acquisition means can acquire the assumed installation position and orientation of the code reader, and the calculation means can determine whether the field of view and depth at the assumed installation position and orientation acquired by the acquisition means satisfy the required field of view and depth.
[0014] With this configuration, the code reader's hypothetical installation position and orientation can be acquired by the acquisition means before the recommended installation position and orientation of the code reader are determined. The calculation means can determine whether the field of view and depth at the acquired hypothetical installation position and orientation meet the required field of view and depth. If they do, the hypothetical installation position and orientation can be set as the recommended installation position and orientation. If they do not meet the requirements, the hypothetical installation position and orientation may not be set as the recommended installation position and orientation, and the user may be informed that the requirements are not met.
[0015] In the fourth disclosure, the calculation means performs a modification process to change at least one of the assumed installation position and orientation if the field of view and depth at the assumed installation position and orientation acquired by the acquisition means do not satisfy the required field of view and depth, performs the determination with the assumed installation position and orientation after the modification process, and repeats the modification process and the determination to determine the installation pattern.
[0016] In this configuration, if the field of view and depth at the acquired assumed installation position and orientation do not meet the required field of view and depth, the calculation means performs a modification process to change at least one of the assumed installation position and orientation. A determination is made again with the assumed installation position and orientation after the modification process, and if the required field of view and depth are met, the assumed installation position and orientation after the modification process can be set as the recommended installation position and orientation. If the required field of view and depth are still not met after the second determination, the modification process is performed again, and a determination can be made with the assumed installation position and orientation after the modification process. By repeating this process, the recommended installation position and orientation of the code reader can be determined.
[0017] The fifth disclosure includes a storage unit that stores a plurality of templates indicating the type of assumed installation position and orientation of the code reader, and the acquisition means is configured to acquire any template from the plurality of templates stored in the storage unit.
[0018] This configuration allows for the pre-creation and storage of multiple templates, each with at least one different assumed installation position and orientation. Since any template can be retrieved from the multiple templates stored in the memory, the assumed installation position and orientation can be easily obtained.
[0019] In the sixth disclosure, the template includes mounting angle information of the code reader with respect to a reference plane, and the output means outputs the mounting angle information of the code reader.
[0020] This configuration makes the installation process much easier because it allows for the indication of the mounting angle of the code reader relative to a reference surface when installing the code reader. The reference surface can be any of the following: a horizontal plane, a vertical plane, a plane extending in the conveying direction, a plane perpendicular to the conveying direction, or a plane on a line.
[0021] In the seventh disclosure, the template includes surface information of the workpiece to be read, and the output means outputs the surface information.
[0022] According to this configuration, for example, when a code is attached to the side surface of the workpiece, the position and orientation of the code reader that can read the side surface of the workpiece can be recommended. Also, when a code is attached to the upper surface of the workpiece, the position and orientation of the code reader that can read the upper surface of the workpiece can be recommended. By outputting the surface information of the workpiece together with the output of the position and orientation of the code reader, it becomes possible to provide a proposal that is easy for the user to understand.
[0023] In the eighth disclosure, the output means outputs model information that differs depending on the model of the code reader.
[0024] That is, although the field of view and depth differ depending on the model of the code reader, by outputting the model information of the code reader, it is possible to present the model of the code reader that satisfies the requirements for the user.
[0025] In the ninth disclosure, the acquisition means receives an input from the user regarding information on the width of the line and information on the height of the workpiece as the environment information, and the calculation means calculates and determines the required field of view and depth of the code reader based on the conveyance speed of the line, the information on the width of the line, and the information on the height of the workpiece.
[0026] Since the required field of view and depth of the code reader are calculated using information on the width of the line and the height of the workpiece, it is possible to propose an installation pattern based on environmental conditions close to the actual usage site.
[0027] In the tenth disclosure, the calculation means determines a plurality of the installation patterns, and the output means outputs the plurality of installation patterns.
[0028] This allows for presenting users with multiple installation patterns. When presenting multiple installation patterns, the most suitable pattern and other patterns may be presented. For example, the cheapest installation pattern or the pattern with the fewest code readers may be presented.
[0029] The 11th disclosure includes a display unit that displays a diagram showing the installation pattern, so that a diagram showing the recommended installation pattern can be displayed on the display unit and presented to the user. This makes it easier for the user to intuitively understand the installation pattern.
[0030] In the twelfth disclosure, the output means outputs a bill of materials showing the parts information and the required number of parts necessary to realize the installation pattern, so that the user can understand the parts and their quantities needed to realize the presented installation pattern.
[0031] Disclosure No. 13 states that the installation pattern can be output as a CAD file. The CAD file may be a 2D CAD file or a 3D CAD file showing the installation pattern. Since it can be provided to the user as a CAD file, the user can directly incorporate it into their design drawings, making it highly convenient. [Effects of the Invention]
[0032] As explained above, according to this disclosure, users can virtually grasp the situation at the site where the stationary code reader is installed through visual means. [Brief explanation of the drawing]
[0033] [Figure 1] Figure 1 is a diagram illustrating the operation of a stationary code reader according to an embodiment of the present invention. [Figure 2] Figure 2 is a block diagram of the installation support device for a stationary code reader. [Figure 3] Figure 3 is a block diagram of a stationary code reader. [Figure 4] Figure 4 is a front view of a stationary code reader. [Figure 5] Figure 5 shows a stationary code reader viewed from the side with the control buttons. [Figure 6] Figure 6 shows a stationary code reader viewed from the terminal side. [Figure 7] Figure 7 is a flowchart showing an example of the installation support process. [Figure 8] Figure 8 shows an example of a user interface screen for inputting conveyor information. [Figure 9] Figure 9 shows an example of a user interface screen for clearance installation. [Figure 10] Figure 10 shows an example of a user interface screen for inputting work information. [Figure 11] Figure 11 shows an example of a user interface screen for setting the code paste location. [Figure 12] Figure 12 shows an example of a user interface screen for detailed settings. [Figure 13] Figure 13 shows an example of a user interface screen for entering code information. [Figure 14] Figure 14 shows an example of a user interface screen for inputting code position and orientation. [Figure 15] Figure 15 shows an example of an installation pattern when there is one code reader. [Figure 16] Figure 16 shows an example of an installation pattern when there are multiple code readers. [Figure 17] Figure 17 shows an example of a mounting pattern for a code reader. [Figure 18] Figure 18 shows an example of another mounting pattern for the code reader. [Figure 19] Figure 19 is a flowchart showing the procedure for calculating the capabilities of a code reader. [Figure 20]Figure 20 shows an example of the user interface screen displayed when installation support is provided by the installation support device, and is an example of the screen when the bank tab is selected. [Figure 21] Figure 21 shows an example of the user interface screen displayed when installation support is provided by the installation support device, specifically when the "Read" tab is selected. [Figure 22] Figure 22 shows an example of how information is presented to the user. [Figure 23] Figure 23 shows an example of a list of equipment used. [Figure 24] Figure 24 shows an example of displaying the workpiece and readable area from a top view. [Figure 25] Figure 25 shows an example of displaying the workpiece and readable area from a side view. [Figure 26] Figure 26 shows an example of a detailed display of the mounting bracket. [Figure 27] Figure 27 shows the structure of the report. [Figure 28] Figure 28 shows an example of a page in a report containing a connection diagram. [Modes for carrying out the invention]
[0034] Embodiments of the present invention will be described in detail below with reference to the drawings. The following description of preferred embodiments is essentially illustrative and is not intended to limit the present invention, its applications, or its uses.
[0035] Figure 1 is a schematic diagram showing the operation of a stationary code reader 1 according to an embodiment of the present invention, and also shows a computer 100, a display unit 42, and other components that constitute part of the installation support device A for this stationary code reader 1.
[0036] In the example shown in Figure 1, multiple workpieces W are placed on the upper surface of a conveyor belt B and transported in the direction of arrow Y in Figure 1, with a code reader 1 according to the embodiment installed above and away from the workpieces W. The workpieces W may flow not only through the center of the upper surface of the conveyor belt B in the width direction, but also along one side and the other side with an offset in the width direction, so the workpieces W do not always pass through a fixed position.
[0037] Code reader 1 can be used, for example, in a logistics distribution center. On a conveyor belt B installed in a logistics distribution center, various sizes and shapes of objects (workpieces W) are transported at high speed. The spacing between workpieces W in the direction of transport is also set to be narrow. Furthermore, workpieces W may have multiple codes (not shown), or they may have only one. The codes may be one-dimensional or two-dimensional.
[0038] As shown in Figure 1, the code reader 1 is a device that optically reads the code attached to the workpiece W. Specifically, it is configured to capture an image of the code attached to the workpiece W to generate a reading image, decode the code contained in the generated reading image, and output the decoded result.
[0039] The code reader 1 is used fixed to a bracket or the like (not shown) to prevent movement during operation, but it may also be operated while being held and moved by a robot (not shown) or a user. Alternatively, the code reader 1 may be used to read the code of a stationary workpiece W. Operation refers to the time when the code of workpieces W being sequentially transported by a transport belt conveyor B is being read. The code reader 1 of this embodiment is suitable for situations where it is desired to read a code attached to a workpiece W whose position changes, but it is not limited to this and can also be used to read a code attached to a workpiece W whose position does not change.
[0040] As shown in Figure 1, the code reader 1 is wired to the computer 100 and the programmable logic controller (PLC) 101, which constitute part of the external control device and installation support device, via signal lines 101a. However, the system is not limited to this; communication modules may be built into the code reader 1, the computer 100, and the PLC 101 to wirelessly connect the code reader 1 to the computer 100 and the PLC 101. The PLC 101 is a control device for sequence control of the conveyor belt B and the code reader 1, and a general-purpose PLC can be used.
[0041] Computer 100 can be a general-purpose or dedicated electronic computer or portable terminal. In this example, a so-called personal computer is used, and as shown in Figure 2, it is equipped with a control unit 40, a storage device 41, and a communication unit 44. By miniaturizing the code reader 1, it becomes difficult to perform all settings of the code reader 1 using only the display unit 7 and buttons 8, 9, etc. (shown in Figure 3) of the code reader 1. Therefore, a separate computer 100 may be prepared, and various settings of the code reader 1 may be performed on the computer 100 and the setting information may be transferred to the code reader 1.
[0042] Furthermore, since the computer 100 is equipped with a communication unit 44, the computer 100 and the code reader 1 may be connected in a bidirectional manner so that the computer 100 performs some of the processing of the code reader 1 as described above. In this case, a part of the computer 100 becomes a part of the components of the code reader 1.
[0043] Furthermore, during operation, the code reader 1 receives a read start trigger signal from the PLC 101 via signal line 101a, which defines the timing for starting code reading. Based on this read start trigger signal, the code reader 1 performs imaging and decoding of the workpiece W. Subsequently, the decoded result obtained from the decoding process is transmitted to the PLC 101 via signal line 101a. In this way, during operation of the code reader 1, the input of the read start trigger signal and the output of the decoded result are repeatedly performed between the code reader 1 and an external control device such as the PLC 101 via signal line 101a. Note that the input of the read start trigger signal and the output of the decoded result may be performed via signal line 101a between the code reader 1 and the PLC 101, as described above, or via other signal lines not shown. For example, a sensor for detecting when the workpiece W arrives at a predetermined position may be directly connected to the code reader 1, and the read start trigger signal may be input from that sensor to the code reader 1. Furthermore, the decoding results, images, and various setting information can also be output to devices other than the PLC101, such as the computer 100.
[0044] [Overall configuration of Code Reader 1] As shown in Figures 4 to 6, the code reader 1 comprises a housing 2 and a front cover 3. As shown in Figure 5, the front of the housing 2 is provided with an illumination unit 4, an imaging unit 5, and an aimer 6. The configurations of the illumination unit 4 and the imaging unit 5 will be described later. The aimer 6 is made of a light-emitting element such as a light-emitting diode. This aimer 6 is used to indicate the imaging range by the imaging unit 5 and the optical axis of the illumination unit 4 by shining light in front of the code reader 1. The user can also set up the code reader 1 by referring to the light emitted from the aimer 6.
[0045] As shown in Figure 5, one end face of the housing 2 is provided with a display unit 7, a select button 8, an enter button 9, and an indicator 10. The configuration of the display unit 7 will be described later. The select button 8 and the enter button 9 are buttons used for setting the code reader 1, etc., and are connected to the control unit 20. The control unit 20 is capable of detecting the operation status of the select button 8 and the enter button 9. The select button 8 is operated when selecting one of several options displayed on the display unit 7. The enter button 9 is operated when confirming the result selected with the select button 8. The indicator 10 is connected to the control unit 20 and can be made of a light-emitting element such as a light-emitting diode. The operating status of the code reader 1 can be communicated externally by the illumination status of the indicator 10.
[0046] As shown in Figure 6, the other end face of the housing 2 is provided with a power connector 11, a network connector 12, a serial connector 13, and a USB connector 14. A heatsink 15, which serves as the rear case, is provided on the back of the housing 2. Power wiring for supplying power to the code reader 1 is connected to the power connector 11. The serial connector 13 is for signal lines 100a and 101a connected to the computer 100 and PLC 101, and the network connector 12 is an Ethernet connector. Note that the Ethernet standard is just one example, and signal lines of standards other than Ethernet can also be used.
[0047] Furthermore, the enclosure 2 houses the control unit 20, storage device 50, output unit 60, and other components shown in Figure 3. These will be described later.
[0048] In this description of the embodiment, the front and back of the code reader 1 are defined as described above, but this is solely for the convenience of explanation and does not limit the orientation of the code reader 1 when in use. That is, as shown in Figure 1, the code reader 1 can be installed and used with its front facing approximately downwards, or with its front facing upwards, or with its front facing downwards and tilted, or with its front aligned with a vertical plane, and so on.
[0049] [Configuration of Lighting Unit 4] As shown by the dashed line in Figure 1, the illumination unit 4 is a component that irradiates light towards the area through which the workpiece W being transported by the conveying belt B passes. The light emitted from the illumination unit 4 illuminates at least a predetermined range in the transport direction of the conveying belt B. This predetermined range is wider than the dimensions in the same direction of the largest workpiece W expected to be transported during operation. The illumination unit 4 illuminates the first code CD1 and the second code CD2 attached to the workpiece W being transported by the conveying belt B.
[0050] The illumination unit 4 includes a light-emitting element 4a, such as a light-emitting diode, and there may be one or more light-emitting elements 4a. In this example, there are multiple light-emitting elements 4a, and the imaging unit 5 faces the outside from between the light-emitting elements 4a. Light from the aimer 6 is also emitted from between the light-emitting elements 4a. The illumination unit 4 is electrically connected to the imaging control unit 22 of the control unit 20 and is controlled by the control unit 20, allowing it to be turned on and off at any desired timing.
[0051] In this example, the illumination unit 4 and the imaging unit 5 are integrated into a single housing 2, but the illumination unit 4 and the imaging unit 5 may be configured as separate units. In this case, the illumination unit 4 and the imaging unit 5 can be connected by wire or wireless connection. Furthermore, the control unit 20, which will be described later, may be built into the illumination unit 4 or into the imaging unit 5. The illumination unit 4 mounted in the housing 2 will be called internal illumination, and the illumination unit 4 that is separate from the housing 2 will be called external illumination. It is also possible to illuminate the workpiece W using both internal and external illumination.
[0052] [Configuration of imaging unit 5] Figure 3 is a block diagram showing the configuration of the code reader 1. The imaging unit 5 is a component that receives light irradiated from the illumination unit 4 and reflected from the area through which the workpiece W passes, and generates a read image of the area through which the workpiece W passes. An area camera with pixels arranged vertically and horizontally (X direction and Y direction) can be used as the imaging unit 5, which enables the reading of 2D codes and allows a single workpiece W to be imaged multiple times while being transported.
[0053] As shown in Figure 3, the imaging unit 5 includes an image sensor 5a capable of imaging at least the portion of the workpiece W to which the code is attached, an optical system 5b having a lens and the like, and an autofocus mechanism (AF mechanism) 5c. Light reflected from at least the portion of the workpiece W to which the code is attached is incident on the optical system 5b. The image sensor 5a is an image sensor consisting of a light-receiving element such as a CCD (charge-coupled device) or CMOS (complementary metal oxide semiconductor) that converts the image including the code obtained through the optical system 5b into an electrical signal.
[0054] The AF mechanism 5c is a mechanism that adjusts focus by changing the position and refractive index of the focusing lens among the lenses that make up the optical system 5b. The AF mechanism 5c is connected to the control unit 20 and controlled by the AF control unit 21 of the control unit 20.
[0055] The image sensor 5a is connected to the image control unit 22 of the control unit 20. The image sensor 5a is controlled by the image control unit 22 and is configured to capture images of the area through which the workpiece W passes at predetermined fixed time intervals, or to capture images of the area through which the workpiece W passes at any timing with a changed time interval. The imaging unit 5 is configured to perform so-called infinite burst imaging, which continuously generates read images. This makes it possible to capture the code of a workpiece W moving at high speed without missing it in the read image, and to capture a single workpiece W multiple times while it is being transported to generate multiple read images. The image control unit 22 may be built into the imaging unit 5.
[0056] The intensity of light received by the light-receiving surface of the image sensor 5a is converted into an electrical signal by the image sensor 5a, and the electrical signal converted by the image sensor 5a is transferred to the processing unit 23 of the control unit 20 as image data that constitutes the read image.
[0057] [Configuration of Display Unit 7] The display unit 7 consists of, for example, an organic EL display or a liquid crystal display. The display unit 7 is connected to the control unit 20 as shown in Figure 3. The display unit 7 can display, for example, the code captured by the imaging unit 5, the string resulting from the decoding of the code, the reading success rate, the matching level (reading margin), etc. The reading success rate is the average reading success rate when the reading process is performed multiple times. The matching level is the reading margin that indicates how easy it is to read a code that has been successfully decoded. This can be determined from the number of error corrections that occurred during decoding, etc., and can be expressed as a numerical value, for example. The fewer the error corrections, the higher the matching level (reading margin), and conversely, the more error corrections, the lower the matching level (reading margin).
[0058] [Configuration of storage device 50] The storage device 50 is composed of various types of memory, hard disks, SSDs, etc. The storage device 35 is provided with a decode result storage unit 51, an image data storage unit 52, and a parameter set storage unit 53. The decode result storage unit 51 is the part that stores the decode result, which is the result of the decoding process performed by the processing unit 23. The image data storage unit 52 is the part that stores the image captured by the imaging unit 5. The parameter set storage unit 53 is the part that stores setting information set by the computer 100, setting information set by the select button 8 and the enter button 9, setting information (read parameters) obtained as a result of tuning performed by the tuning execution unit 24, etc. This parameter set storage unit 53 can store multiple parameter sets, each containing multiple parameters that constitute the imaging conditions of the imaging unit 5 (gain, light intensity of the illumination unit 4, exposure time, etc.) and the image processing conditions of the processing unit 23 (type of image processing filter, etc.).
[0059] [Configuration of output unit 60] The code reader 1 has an output unit 60. The output unit 60 is the part that outputs the decoded result processed by the processing unit 23, which will be described later. Specifically, when the processing unit 23 completes the decoded process, it transmits the decoded result to the output unit 60. The output unit 60 can be configured as a communication unit that transmits data related to the decoded result received from the processing unit 23 to, for example, a computer 100 and a PLC 101. The output unit 60 may have an I / O unit connected to the computer 100 and the PLC 101, a serial communication unit such as RS232C, and a network communication unit such as a wireless LAN or a wired LAN.
[0060] [Configuration of control unit 20] The control unit 20 shown in Figure 3 is a unit for controlling various parts of the code reader 1, and can be composed of a CPU, MPU, system LSI, DSP, dedicated hardware, etc. The control unit 20 is equipped with various functions, which may be realized by logic circuits or by executing software.
[0061] The control unit 20 includes an AF control unit 21, an imaging control unit 22, a processing unit 23, a tuning execution unit 24, and a UI management unit 25. The AF control unit 21 is the part that focuses the optical system 5b using conventionally known contrast AF or phase-detection AF. The AF control unit 21 may be included in the imaging unit 5.
[0062] [Configuration of the imaging control unit 22] The imaging control unit 22 controls not only the imaging unit 5 but also the illumination unit 4. In other words, the imaging control unit 22 is composed of a unit that adjusts the gain of the image sensor 5a, controls the light intensity of the illumination unit 4, and controls the exposure time (shutter speed) of the image sensor 5a. The gain, the light intensity of the illumination unit 4, the exposure time, etc., are included in the imaging conditions of the imaging unit 5.
[0063] [Configuration of Processing Unit 23] The processing unit 23 extracts candidate code regions from the image read by the imaging unit 5, performs decoding on the determined regions, and generates the decoding result. The methods for extracting candidate code regions and the decoding process are conventionally well known, so we will omit their explanation.
[0064] [Configuration of the installation support device A for stationary code readers] The installation support device A shown in Figure 1 is a device for assisting with the installation of the code reader 1 before it is actually installed at the site. The installation support device A can be used by those who will use the code reader 1 (including prospective users), those who propose the installation of the code reader 1, those who sell the code reader 1, etc. (collectively referred to as users).
[0065] Installation support device A includes a computer 100, a display unit 42, an input unit 43, and a printer 45, although the printer 45 may be omitted. The display unit 42 is composed of, for example, a liquid crystal display. The input unit 43 is composed of a keyboard 43a, a mouse 43b, a touch sensor (not shown), etc. As will be described in detail later, the input unit 43 can input code information to be read and environmental information indicating the reading environment. An example of environmental information indicating the reading environment is the conveying speed of the line, but it is not limited to the conveying speed of the line; for example, the distance the workpiece W moves per unit time or the size of the workpiece W may be included in the above environmental information.
[0066] As shown in Figure 2, the computer 100 comprises a control unit 40, a storage device 41, and a communication unit 44. The control unit 40 is a unit for controlling each part of the installation support device A, and can be composed of a CPU, MPU, system LSI, DSP, or dedicated hardware. The control unit 40 is equipped with various functions, which may be realized by logic circuits or by executing software. The storage device 41 is composed of various types of memory, hard disks, SSDs (Solid State Drives), etc. The communication unit 44 is the part that communicates with the code reader 1. The communication unit 44 may have an I / O unit connected to the code reader 1, a serial communication unit such as RS232C, and a network communication unit such as wireless LAN or wired LAN.
[0067] The control unit 40 controls each part of the computer 100 based on a program stored in the storage device 41, and includes an information acquisition unit 40a, a UI management unit 40b, an arithmetic unit (an example of arithmetic means) 40c, and an output unit (an example of output means) 40d. Details of each part will be described later, but the general outline is as follows. The information acquisition unit 40a is an acquisition means that acquires various information input by the input unit 43 and various information pre-stored in the storage device 41, and is capable of acquiring at least camera information including the camera parameters of the code reader 1, code information to be read, and environmental information including the transport speed of the line. The acquisition step is executed by this information acquisition unit 40a.
[0068] The UI management unit 40b is responsible for generating various user interface screens and receiving user input operations from the input unit 43. The calculation unit 40c is responsible for determining the required field of view and depth of the code reader 1 necessary for reading the code, based on the environmental information acquired by the information acquisition unit 40a, under the environment specified by the said environmental information. Furthermore, the calculation unit 40c can determine the recommended installation pattern, which is the installation position and orientation of the code reader 1 that can satisfy the determined required field of view and depth, based on the camera information and code information acquired by the information acquisition unit 40a. The calculation step can be executed by the calculation unit 40c. The output unit 40d is responsible for outputting the installation pattern determined by the calculation unit 40c to the display unit 42 via the user interface screen, or to the printer 45 in report format.
[0069] The following describes the processing flow of the installation support device A according to the flowchart shown in Figure 7. In step SA1, the information acquisition unit 40a acquires camera parameters. Camera parameters are information contained in the camera information, i.e., the information of the imaging unit 5 held by the code reader 1. The information acquisition unit 40a may read the camera parameters directly from the code reader 1, or it may store the camera parameters in the storage device 41 in advance and acquire them by reading them from the storage device 41. Alternatively, the information acquisition unit 40a may acquire camera parameters input by the input unit 43. Camera parameters include the number of pixels of the image sensor 5a, the angle of view and aperture of the optical system 5b, but may also include other information specific to the imaging unit 5. Since the camera parameters are fixed values determined for each imaging unit 5, they cannot be changed by the user.
[0070] The code reader 1 is available in multiple models with different imaging units 5 and illumination units 4, and each model can be used. Since the camera parameters differ depending on the model of code reader 1, the information acquisition unit 40a acquires the camera parameters for each model. The camera parameters and model number are the model information for code reader 1.
[0071] In step SA2, the information acquisition unit 40a acquires code information. Code information is information used to identify the type of code to be read. Code information includes the code type, such as one-dimensional code or two-dimensional code, NB width (narrow bar width), and maximum code length. Code information is input by the user by operating the input unit 43. Alternatively, code information may be acquired by imaging the code to be read.
[0072] In step SA3, the information acquisition unit 40a acquires work information and conveyor information. Work information and conveyor information are information that the user inputs by operating the input unit 43. Work information includes the minimum and maximum size of work W transported by the conveyor belt B, the minimum spacing between work W transported by the conveyor belt B, the side of the work W to which the code is attached, the position of the code on the work W, and the position of the work W on the conveyor belt B.
[0073] The size of workpiece W can be specified by its width, depth, and height. The minimum and maximum sizes of workpiece W can be used as reference values for the required field of view. The position information of the code relative to workpiece W only needs to be entered if the code's position is limited, and obtaining this information can relax the required field of view. The minimum interval between workpieces W is the interval until the next workpiece W arrives, and is a value related to the reading timing and the calculation of the required field of view. The position information of workpiece W on the conveyor belt B indicates, for example, whether workpiece W is located in the center of the width direction on the conveyor or displaced to one side in the width direction, and obtaining this information can relax the required field of view. In other words, the area through which the code passes can be narrowed by the workpiece information, and by inputting the workpiece information, it can be used to calculate the required field of view.
[0074] Furthermore, the conveyor information includes the height, width, speed, and length of the conveying surface of the conveying belt conveyor B. The height of the conveying surface can be used to calculate the installation distance of the code reader 1. The width of the conveying surface can be used to calculate the required field of view. The conveying speed can be used to calculate the number of readable codes for the code reader 1. The length of the conveying surface can be used as a reference value for the vertical field of view. In other words, the conveyor information can be used to calculate the required field of view and the installation distance of the code reader 1.
[0075] Furthermore, while the required field of view in the direction of conveyor movement can be calculated using the line's conveying speed, it is also possible to calculate the required field of view in the direction of conveyor movement using the distance the workpiece W moves per unit time or the size of the workpiece W, not limited to the line's conveying speed. In other words, it is sufficient to have dimensional information regarding the direction in which the workpiece W moves as input values.
[0076] Next, an example of the input procedure for work information and conveyor information will be described. Figure 8 shows an example of the user interface screen 200 for conveyor information input that is displayed in step SA3. The UI management unit 40b generates the user interface screen 200 for conveyor information input and displays it on the display unit 42. The user interface screen 200 for conveyor information input is provided with a progress display area 200a, an image display area 200b, a conveyor information input area 200c, and a clearance setting start button 200d. In the progress display area 200a, three steps are displayed in order of input: the input step for conveyor information (conveyor conditions), the input step for work information (work conditions), and the input step for code information (code conditions). In the image display area 200b, a work W being transported by the conveyor belt B is illustrated.
[0077] Each time information included in the conveyor and workpiece data is entered, the conveyor and workpiece can be redrawn and displayed on each user interface screen. This allows users to virtually grasp the situation on site visually.
[0078] The conveyor information input area 200c allows input of three items: the width of the conveying surface of the conveying belt conveyor B (conveyor width), the height of the conveying surface of the conveying belt conveyor B (conveyor height), and the conveying speed of the conveying belt conveyor B (conveyor speed). Input operations for each item can be performed by the input unit 43. The input values are stored in the conveyor information storage unit 41a provided in the storage device 41.
[0079] When the UI management unit 40b detects that the clearance setting start button 200d has been operated, it generates the clearance setting user interface screen 201 shown in Figure 9 and displays it on the display unit 42. The clearance setting user interface screen 201 includes an image display area 201a, a height-direction clearance setting area 201b, a width-direction clearance setting area 201c, and a depth-direction clearance setting area 201d. The image display area 201a shows the workpiece W being transported by the conveyor belt B, along with arrows illustrating the clearances to be set in each clearance setting area 201b, 201c, and 201d. In the height-direction clearance setting area 201b, the clearance above and below the conveyor can be set. In the width-direction clearance setting area 201c, the clearances to the right and left sides in the direction of travel of the workpiece W can be set, respectively. In the depth-direction clearance setting area 201d, the clearance in the conveying direction of the conveying belt conveyor B can be set. Input operations for each item can be performed using the input unit 43. When the "OK" button on the clearance setting user interface screen 201 is pressed, the input value is stored in the conveyor information storage unit 41a, and the user returns to the conveyor information input user interface screen 200 shown in Figure 8. When the "Cancel" button on the clearance setting user interface screen 201 shown in Figure 9 is pressed, the input value is not stored, and the user returns to the conveyor information input user interface screen 200 shown in Figure 8.
[0080] When the UI management unit 40b detects the operation of the "Next" button on the conveyor information input user interface screen 200 shown in Figure 8, it generates the work information input user interface screen 202 shown in Figure 10 and displays it on the display unit 42. The work information input user interface screen 202 is also displayed in step SA3. The work information input user interface screen 202 is also provided with a progress display area 202a and an image display area 202b. Furthermore, the work information input user interface screen 202 is provided with a work information input area 202c for inputting work information, a code paste position setting start button 202d, and a detailed setting start button 202e.
[0081] The work information input area 202c allows input via the input unit 43 of the minimum workpiece W1 size, the maximum workpiece W2 size, and the minimum spacing between workpieces W transported by the conveyor belt B. When the UI management unit 40b detects the operation of the code pasting position setting start button 202d, it generates the code pasting user interface screen 203 shown in Figure 11 and displays it on the display unit 42. The code pasting user interface screen 203 includes an image display area 203a, a pasting surface specification area 203b, and a pasting position specification area 203c. In the pasting surface specification area 203b, the input unit 43 can specify which surface of the workpiece W the code is attached to. For example, the user can specify a surface by selecting from multiple options such as the top surface or left and right sides. This surface information is the surface information of the workpiece W that is to be read. In the pasting position specification area 203c, the user can specify the location of the code on the surface specified in the pasting surface specification area 203b using dimensions. For workpieces W where specifying the paste position is difficult, input is not required. The image display area 203a can display the surface specified in the paste surface specification area 203b and the dimensions entered in the paste position specification area 203c.
[0082] When the "OK" button on the code pasting user interface screen 203 is pressed, the input value is stored in the work information storage unit 41b provided in the storage device 41, and the user returns to the work information input user interface screen 202 shown in Figure 10. When the "Cancel" button on the code pasting user interface screen 203 shown in Figure 11 is pressed, the input value is not stored, and the user returns to the work information input user interface screen 202 shown in Figure 10.
[0083] When the UI management unit 40b detects operation of the detailed settings button 202e shown in Figure 10, it generates the detailed settings user interface screen 204 shown in Figure 12 and displays it on the display unit 42. The detailed settings user interface screen 204 includes an image display area 204a, a workpiece shape / rotation specification area 204b, a width alignment specification area 204c, and a film presence / absence specification area 204d. In the workpiece shape / rotation specification area 204b, the input unit 43 can specify whether or not the workpiece W may rotate and whether or not the workpiece W is cylindrical. In the width alignment specification area 204c, the input unit 43 can specify whether or not the workpiece W is cylindrical. In the film presence / absence specification area 204d, the input unit 43 can specify whether or not there is a film on the surface of the workpiece W.
[0084] When the "OK" button on the detailed settings user interface screen 204 is pressed, the input value is stored in the work information storage unit 41b located in the storage device 41, and the user returns to the work information input user interface screen 202 shown in Figure 10. When the "Cancel" button on the detailed settings user interface screen 204 shown in Figure 12 is pressed, the input value is not stored, and the user returns to the work information input user interface screen 202 shown in Figure 10.
[0085] When the UI management unit 40b detects the operation of the "Next" button on the work information input user interface screen 202 shown in Figure 10, it generates the code information input user interface screen 205 shown in Figure 13 and displays it on the display unit 42. The code information input user interface screen 205 is displayed at step SA2 of the flowchart shown in Figure 7. The code information input user interface screen 205 is also provided with a progress display area 205a and an image display area 205b. Furthermore, the code information input user interface screen 205 is provided with a code position / type display field 205c that displays the code pasting position and code type, and a code information input area 205d. In the code information input area 205d, the code type, NB width, maximum code length, etc. can be entered by operating the input unit 43.
[0086] A setting button 205e is provided in the code information input area 205d. When the UI management unit 40b detects the operation of the setting button 205e, it generates the code position / orientation input user interface screen 206 shown in Figure 14 and displays it on the display unit 42. On the code position / orientation input user interface screen 206, the code position can be entered from the top, side, front, rear, bottom, etc. of the workpiece W by operating the input unit 43. When the "OK" button on the code position / orientation input user interface screen 206 is operated, the input value is stored in the code information storage unit 41c provided in the storage device 41, and the user returns to the code information input user interface screen 205 shown in Figure 13. When the "Cancel" button on the code position / orientation input user interface screen 206 shown in Figure 14 is operated, the input value is not stored, and the user returns to the code information input user interface screen 205 shown in Figure 13. The above is an example of user input operations in steps SA2 and SA3 of the flowchart shown in Figure 7, but the input order and screen display format can be changed.
[0087] In steps SA4 and SA5 of the flowchart shown in Figure 7, the user inputs the first installation pattern and the first mounting pattern by operating the input unit 43. First, the installation patterns will be explained. The installation pattern is a pattern that shows the relative positional relationship of the code reader 1 with respect to the workpiece W. As shown in Figure 15, there are multiple installation patterns when there is one code reader 1, and as shown in Figure 16, there are multiple installation patterns when there are multiple code readers 1. The installation patterns shown in Figure 15 include an installation pattern in which the code reader 1 is installed at a position to read the code on the top surface of the workpiece W, an installation pattern in which the code reader 1 is installed at an angle to the front and rear surfaces or sides (reference plane) of the workpiece W, and an installation pattern in which the code reader 1 is installed at a position to read the code on the side of the workpiece W. In addition, the installation patterns shown in Figure 16 include an installation pattern in which the code reader 1 is installed so as to read the code from four directions relative to the workpiece W, and an installation pattern in which the code reader 1 is installed to the side and diagonally above the workpiece W. In installation patterns where the code reader 1 is installed at an angle to the reference surface (the surface to be imaged, on which the code to be read is attached), the installation angle information of the code reader 1 with respect to the reference surface includes, for example, the inclination angle information of the imaging surface of the code reader 1 with respect to the reference surface (e.g., 15°, 30°, etc.).
[0088] The UI management unit 40b can display the diagrams and pattern names of each installation pattern shown in Figures 15 and 16 on the display unit 42. The diagrams and pattern names of each installation pattern can be stored in the template storage unit 41c provided in the storage device 41 as templates indicating the installation position and orientation of the code reader 1. The user can operate the input unit 43 to select any installation pattern on the display unit 42 and input it as the first installation pattern. The installation pattern includes surface information of the workpiece W to be read.
[0089] Next, the mounting patterns will be described. As shown in Figures 17 and 18, there are multiple mounting patterns, including those that change the position of the code reader 1 relative to the workpiece W, and those that change the number of code readers 1. The UI management unit 40b can display the diagrams and pattern names of each mounting pattern shown in Figures 17 and 18 on the display unit 42. The diagrams and pattern names of each mounting pattern can be stored as templates in the template storage unit 41c provided in the storage device 41. The user can operate the input unit 43 to select any mounting pattern on the display unit 42 and input it as the first mounting pattern. The mounting patterns also include surface information of the workpiece W to be read.
[0090] The installation pattern and mounting pattern allow for settings such as which side of the workpiece W (top, bottom, left, right, front, or back) to read, the degree to which the imaging surface of the code reader 1 is inclined relative to the conveyor, and whether the code reader is perpendicular or horizontal to the conveyor. The installation pattern and mounting pattern input by the input unit 43 are acquired by the information acquisition unit 41c as the first installation pattern and first mounting pattern in steps SA4 and SA5 in Figure 7. At this stage, the first installation pattern and first mounting pattern have not been determined to be recommended patterns, so they are stored in the storage device 41 as the assumed installation position and orientation of the code reader 1. By acquiring the first installation pattern and first mounting pattern, the range corresponding to the inclination of the code and the installation angle of the code reader 1 can also be acquired.
[0091] For example, it may be possible to cover the perimeter of the workpiece W with four code readers 1. In this case, one code reader 1 would cover an area of approximately 90° around the workpiece W, resulting in a large tilt angle of the imaging unit 5 relative to the surface of the workpiece W. Depending on the width of the NB, this may limit the acquisition of the code. To eliminate this limitation, it is suggested to increase the number of code readers 1 to, for example, six.
[0092] As shown by reference numeral 300 in Figure 7, camera parameters, code information, and work information can be input separately from the above steps SA1 to SA3. In this case, as shown by reference numeral 301, the user can input a second installation pattern and a second mounting pattern that are different from the first installation pattern and the first mounting pattern. The input second installation pattern and second mounting pattern are acquired by the information acquisition unit 41c and stored as the assumed installation position and orientation of the code reader 1. In this way, although not shown, the user can input a third installation pattern and a third mounting pattern, a fourth installation pattern and a fourth mounting pattern, and so on, and these are also stored in the storage device 41 by the information acquisition unit 41c as the assumed installation position and orientation of the code reader 1. In other words, multiple assumed installation positions and orientations can be stored and acquired later.
[0093] In step SA6 of the flowchart shown in Figure 7, the calculation unit 40c performs the calculation of the capabilities of the code reader 1. The procedure for calculating the capabilities of the code reader 1 will be explained based on the flowchart shown in Figure 19. In step SB1, focus conditions are assumed. After assuming focus conditions, it is also possible to calculate the range of focus conditions that satisfy the conditions by repeatedly calculating the depth and checking whether the required depth is met.
[0094] The focus condition is the amount of adjustment of the focusing lens by the AF mechanism 5c. In step SB2, the camera parameters acquired by the information acquisition unit 40a are read. In step SB3, the codes found by searching from the captured images by the imaging unit 5 are read.
[0095] In step SB4, the distance from the image sensor 5 to the cord (mm) is obtained based on the relationship between the adjustment amount of the focusing lens by the AF mechanism 5c when focusing by the focusing lens is completed and the distance from the image sensor 5 to the cord. This becomes the current installation distance. Alternatively, the user may measure the distance from the image sensor 5 to the cord using a scale or the like and input that measured value as the installation distance.
[0096] In step SB5, the angle of view (rad) of the optical system 5b, which is stored in advance, is read. In step SB6, the number of pixels of the image sensor 5a is read, for example, in the format of 1280 vertical x 768 horizontal pixels. The number of pixels of the image sensor 5a is known and can be stored in the memory device 41 in advance. In step SB7, information regarding the aperture and focal length of the optical system 5b is read. The current aperture and focal length of the optical system 5b should be output to the calculation unit 40c.
[0097] Step SB8 calculates the PPC (pixels / cell). Step SB9 reads the code's coordinates. The code's coordinates can be obtained, for example, by estimating the center of the code and finding the X and Y coordinates of that center, but they can also be obtained from the coordinates of the code's edges.
[0098] In step SB10, the field of view of the imaging unit 5 is calculated. The field of view h can be calculated from equation (1).
[0099] h = 2d·tan(θ / 2)·····(1) Here, d is the current installation distance, and θ is the field of view of the optical system 5b.
[0100] In step SB11, the resolution r, that is, the actual length represented by one pixel that makes up the image data, is calculated. The resolution r can be calculated from equation (2).
[0101] Resolution (r)=h / n (2) Here, n is the number of pixels in the horizontal direction of the image sensor 5a.
[0102] Step SB12 calculates the code size. The code size CS (mm) can be obtained by multiplying the resolution r, calculated from equation (2), by the number of pixels in the horizontal direction of the code. The number of pixels in the horizontal direction of the code can be obtained from the image data.
[0103] Step SB13 calculates the cell size. A cell is the smallest unit that makes up a code. The cell size p can be obtained by multiplying the resolution r, calculated from equation (2), by the number of pixels in the horizontal direction of the cell. The number of pixels in the horizontal direction of the cell can be obtained from the image data. The cell size p is calculated by the cell size setting unit 30.
[0104] Step SB14 sets the allowable circle of confusion diameter (mm). The allowable circle of confusion diameter indicates the acceptable degree of blur caused by the lens, without considering movement. The allowable circle of confusion diameter can also be expressed by the number of cells that make up the code. In addition, the maximum allowable blur amount is determined in advance and can be stored in the memory device 41.
[0105] In step SB15, the front depth of field (mm) is calculated from equation (3), and the rear depth of field (mm) is calculated from equation (4).
[0106] Front depth of field Df=(δFd2) / (f2+δFd) (3) Back depth of field Db=(δFd2) / (f2-δFd) (4) Here, F is the aperture of the optical system 5b, and f is the focal length of the optical system 5b. Also, δ is the allowable circle of confusion diameter. In this way, the calculation unit 40c can determine the actual field of view and actual depth of field of the code reader 1.
[0107] In step SA9 of the flowchart shown in Figure 7, the field of view necessary for reading the code is calculated based on the workpiece information and conveyor information acquired in step SA3, using the conveyor coordinates as the reference. The necessary field of view information includes the required area in the conveyor width direction, the required area in the workpiece movement direction, and the required area in the workpiece height direction.
[0108] In step SA10, the calculation of the field of view and depth required to read the code is performed based on the installation and mounting patterns acquired in steps SA4 and SA5, using the coordinates of the code reader 1 as a reference. The required field of view and depth information includes the vertical field of view, required depth, etc. In this way, in steps SA9 and SA10, the calculation unit 40c can determine the required field of view and depth of the code reader 1 required to read the code under the environment specified by the environmental information acquired by the information acquisition unit 40a.
[0109] In step SA7, it is determined whether the field of view and depth of the code reader 1 calculated in step SA6 can meet the required field of view and depth calculated in steps SA9 and SA10. If it is determined in step SA7 that the field of view and depth of the code reader 1 meet the required field of view and depth, the process proceeds to step SA8 to calculate the possible installation range of the code reader 1. The possible installation range of the code reader 1 includes the minimum installation distance, maximum installation distance, recommended installation distance, etc. Similarly, if it is determined in step SA7 that the field of view and depth of the code reader 1 do not meet the required field of view and depth, the possible installation range of the code reader 1 may be calculated in the same way. The result of the determination in step SA7 is stored.
[0110] Furthermore, in step SA7, the installation and mounting patterns of all templates or any multiple templates stored in the template storage unit 41c may be determined. In other words, by performing the determination in step SA7 in a brute-force manner for all templates, the recommended installation position and orientation of the code reader 1 can be identified from among those patterns.
[0111] In step SA11, if it is determined in step SA7 that the field of view and depth of the code reader 1 meet the required field of view and depth, the first installation pattern and first mounting pattern are determined to be the recommended installation position and orientation for the code reader 1 that can meet the required field of view and depth. If it is determined in step SA7 that the field of view and depth of the code reader 1 do not meet the required field of view and depth, the first installation pattern and first mounting pattern are determined to be patterns that cannot meet the required field of view and depth. This step is performed by the calculation unit 40c.
[0112] Furthermore, the process indicated by reference numeral 302 in Figure 7 is the same as steps SA6 to SA10. If the process indicated by reference numeral 302 determines that the actual field of view and actual depth of the code reader 1 meet the required field of view and depth, the process proceeds to step 303, where the second installation pattern and second mounting pattern are determined to be the recommended installation position and orientation for the code reader 1 that can meet the required field of view and depth. If the process indicated by reference numeral 302 determines that the actual field of view and actual depth of the code reader 1 do not meet the required field of view and depth, the process proceeds to step 303, where the second installation pattern and second mounting pattern are determined to be patterns that cannot meet the required field of view and depth. Similarly, the third installation pattern and third mounting pattern, the fourth installation pattern and fourth mounting pattern, etc., can also be determined.
[0113] In step SA12, the best pattern is selected from among multiple installation and mounting patterns. That is, if the field of view and depth at the assumed installation position and orientation acquired by the information acquisition unit 40a do not meet the required field of view and depth, the calculation unit 40c performs a modification process to change at least one of the assumed installation position and orientation, performs the aforementioned determination with the assumed installation position and orientation after the modification process, and repeats the modification process and determination to determine the installation pattern which is the recommended installation position and orientation for the code reader. For example, if the first installation pattern and the first mounting pattern do not meet the required field of view and depth, the system is changed to the second installation pattern and the second mounting pattern, and it is determined whether the second installation pattern and the second mounting pattern meet the required field of view and depth. At this time, it is possible to determine whether the required field of view and depth are met by changing only one of the installation position and orientation of the code reader 1.
[0114] In step SA12, instead of selecting the best pattern, multiple recommended installation positions and orientations for the code reader 1 may be presented, allowing the user to select any pattern by operating the input unit 43. In this case, patterns that were not determined to be the recommended installation positions and orientations for the code reader 1 may also be presented to the user.
[0115] Furthermore, the criteria for selecting the best pattern in step SA12 may be changed. For example, the best pattern could be the one with the fewest number of code readers 1, or the one with the lowest total cost of equipment used.
[0116] Next, proceed to step SA13 to optimize (tune) the reading parameters, and then perform a reading test in step SA14. Finally, you can proceed to step SA15 to output the report. Steps SA13 to SA15 can be performed as needed and may be omitted. Details of steps SA13 to SA15 will be described later.
[0117] [Parameter Set (Bank)] Figure 20 shows an example of a user interface screen 400 displayed when installation support is provided by the installation support device A. The user interface screen 400 can be generated by the UI management unit 40b and displayed on the display unit 42. Multiple tabs 401, 402, and 403 are provided at the top of the user interface image 400, and it is possible to select any one of the multiple tabs 401, 402, and 403.
[0118] Figure 20 shows the case where bank tab 402 is selected. We will refer to one set of parameters as a "bank". In the example shown in Figure 20, only banks 1 and 2 are displayed, but the number of banks can be set arbitrarily.
[0119] Each bank has common settings such as "Decode Timeout Value" which indicates the timeout period for the decoding process, "Black and White Inversion" which inverts the black and white of the read image, "Internal Lighting" which switches the internal lighting, which is composed of a lighting unit 4 mounted on the housing 2, on and off "External Lighting" which switches the external lighting, which is composed of a lighting unit 4 separate from the housing 2, and "Code Details Setting" which switches the code type. In addition, each bank has reading settings such as "Exposure Time" which indicates the exposure time by the imaging unit 5, "Gain" which indicates the gain of the imaging unit 5, "Contrast Adjustment Method" which indicates the method for adjusting the contrast of the read image, and "First Image Filter" and "Second Image Filter" which select the type and order of the image filters to be applied.
[0120] In this code reader 1, the user can select the bank to be used when operating the code reader 1 from among multiple banks stored in the parameter set storage unit 53. That is, the user can operate the input unit 43 while looking at the user interface image 400 shown in Figure 20 and select any bank on the user interface image 400.
[0121] [User interface screen during installation support] Figure 21 shows the user interface screen 400 when the reading tab 401 is selected, and can be displayed during installation support. The user interface screen 400 shown in Figure 21 is provided with a reading image display area 404 that displays the reading image captured by the imaging unit 5, and a tuning result display area 405 that displays the tuning results. The tuning result display area 405 displays, for example, a graph showing the relationship between readability and brightness. Furthermore, a proposal creation button 400a, a monitor start button 400b, an autofocus button 400c, a tuning start button 400d, a readability button 400e, and a report output button 400f are also provided.
[0122] When the UI management unit 40b detects that the proposal creation button 400a has been operated, it displays user interface screens 200-206 (shown in Figures 8-14, respectively) in the order described above to prompt the user to input the information necessary for installation support. This allows the information acquisition unit 40a to acquire each piece of information. The user is also prompted to input the installation patterns shown in Figures 15-18, and this information is also acquired by the information acquisition unit 40a.
[0123] When the UI management unit 40b detects that the monitor start button 400b has been pressed, it instructs the imaging unit 5 to perform the process of generating the read image. The generated read image is displayed in the read image display area 404.
[0124] When the UI management unit 40b detects that the autofocus button 400c has been operated, the AF control unit 21 controls the AF mechanism 5c to perform focusing. In this example, a one-dimensional code CD is shown attached to the workpiece W, but a two-dimensional code may also be used. The read image display area 404 also displays a frame 410 surrounding the area where the code CD is most likely to be present. If the workpiece W has two or more code CDs attached, two or more code CDs may be displayed in the read image display area 404.
[0125] Subsequently, when the UI management unit 40b detects that the tuning start button 400d has been operated, it instructs the tuning execution unit 24 shown in Figure 2 to perform the optimization process of the read parameters. This process corresponds to step SA13 in Figure 7.
[0126] The tuning execution unit 24 causes the imaging unit 5 to acquire multiple read images while changing, for example, the brightness (exposure time, gain, light intensity of the illumination unit 4, etc.), and then causes the processing unit 32 to perform decoding processing on each read image. As a result, the tuning execution unit 24 can obtain a graph showing the brightness and readability of the read image, as shown in the tuning result display area 405 in Figure 21. Readability can be determined, for example, from the readability margin. This allows the optimal reading parameters to be obtained. The optimal reading parameters are stored as a parameter set in the bank shown in Figure 20 and are displayed on the display unit 42 for the user to confirm.
[0127] When the UI management unit 40b detects that the read rate button 400e has been operated, it instructs the imaging unit 5 to reflect the tuning results and generate a new read image, and then has the processing unit 32 perform a decoding process on the generated read image. This is the read test mode for testing the read stability, and corresponds to the process of step SA14 shown in Figure 7. For example, 10 reads can be attempted, and the results can be displayed in the tuning result display area 405.
[0128] The read test modes include task test mode, depth test mode, and speed test mode. The task test mode is a mode for measuring read time, and the current read time, longest read time, and shortest read time are displayed on the display unit 42.
[0129] The depth test mode measures the maximum readable depth, and can, for example, plot and display the relative positional relationship between the code reader 1 and the readable code on the display unit 42. The shortest and longest distances between the code reader 1 and the readable code can also be displayed on the display unit 42.
[0130] The speed test mode continuously reads the moving workpiece W, calculates the speed of the workpiece W from the number of code readings and the position, and displays it on the display unit 42. The speed of the workpiece W can be calculated and displayed in near real time. The speed of the workpiece W may be displayed numerically or in bar format.
[0131] [Examples of presentation formats for users] Figure 22 shows an example of a presentation format for the user. The UI management unit 40b can generate the presentation user interface screen 220 shown in this figure and display it on the display unit 42. The information constituting the presentation user interface screen 220 includes calculation results from the calculation unit 40c and information acquired by the information acquisition unit 40a, etc. This information is output from the output unit 40d to the UI management unit 40b, and the UI management unit 40b can generate the presentation user interface screen 220 based on this information.
[0132] The user interface screen 220 for presentation includes a list display button 220a, a frame option selection area 220b, a code reader selection area 220c, a model selection area 220d, a distance adjustment area 220e, a comprehensive results display area 220f, a layout preview area 220g, a first layout diagram display area 220h, a second layout diagram display area 220i, and the like.
[0133] When the UI management unit 40b detects that the list display button 220a has been operated, it generates a list of equipment used, as shown in Figure 23, and displays it on the display unit 42. The list of equipment used displays the name, model number, and quantity of the equipment required when installing the code reader 1 in the recommended installation position and orientation. In other words, the output unit 40d can output a bill of materials showing the parts information and the required number of parts necessary to realize the installation pattern that shows the recommended installation position and orientation. The displayed parts can also be changed.
[0134] The frame option selection area 220b is an area for switching whether or not to suggest frame options. If frame options are suggested, they will be suggested considering frame limitations; however, if frame options are not suggested, they will be suggested without frame limitations.
[0135] The code reader selection area 220c is for selecting any code reader 1 in installation patterns where multiple code readers 1 are installed. The model selection area 220d is for displaying model information, such as the model number, when the optimal model is automatically suggested. In the model selection area 220d, the user can also select any model and determine whether the selected model is suitable. The distance adjustment area 220e is for the user to operate when making fine adjustments to the installation position of code reader 1. The suitability of the adjustment result can be determined. The overall result display area 220f is for displaying whether the information displayed in the code reader selection area 220c, model selection area 220d, distance adjustment area 220e, etc., is readable or not. If reading is not possible, the overall result display area 220f can also display how much the data is lacking compared to the requirement.
[0136] The layout preview area 220g is an area that displays the relative positional relationship of the code reader 1, workpiece W, and conveyor, as well as the dimensions of each part, in a diagram. It also includes mounting angle information for the code reader 1 and reading surface information for the workpiece W. An overhead preview image can be generated and displayed in the layout preview area 220g while changing the viewpoint by 360°. The viewpoint can be changed using the input unit 43. The first layout diagram display area 220h is an area that displays a diagram showing the relative positional relationship of the code reader 1, workpiece W, and conveyor, as well as the dimensions of each part, from a front view. The second layout diagram display area 220i is an area that displays a diagram showing the relative positional relationship of the code reader 1, workpiece W, and conveyor, as well as the dimensions of each part, from a side view.
[0137] The first layout diagram display area 220h or the second layout diagram display area 220i can also display the workpiece W and readable range 600 from a top view, as shown in Figure 24. The first layout diagram display area 220h or the second layout diagram display area 220i can also display the workpiece and readable range 601 from a side view, as shown in Figure 25. The first layout diagram display area 220h or the second layout diagram display area 220i can also display details of the mounting bracket 603, as shown in Figure 26. The details of the mounting bracket 603 include mounting angle information for the code reader 1.
[0138] [Report Output] As mentioned above, the recommended installation pattern for the code reader 1 can be presented to the user not only by displaying the user interface screen on the display unit 42, but also by presenting it in a report. The report may be presented as electronic data or as paper printed using the printer 45 shown in Figure 2.
[0139] The report is described below. When the UI management unit 40b detects that the report output button 400f on the user interface screen 400 shown in Figure 21 has been operated, it executes step SA15 of the flowchart shown in Figure 7. In this step, the information that makes up the report is first prepared. The information that makes up the report includes the calculation results of the calculation unit 40c and the information acquired by the information acquisition unit 40a.
[0140] The structure of the report output by output unit 40d will be explained based on Figure 27. The contents of the report can be broadly categorized into general project information, proposal summary, list of equipment used, reading area, installation diagram, connection diagram, and reading results, but it is not necessary to include all of these.
[0141] The general project information in the report includes the user's project name, as well as required information for that project, such as work information, code information, clearance setting information, and information regarding the code placement location. Work information consists of information entered on the work information input user interface screen shown in Figure 10. Code information consists of information entered on the code information input user interface screen shown in Figure 13. Clearance setting information consists of information entered on the clearance setting user interface screen shown in Figure 9. Information regarding the code placement location consists of information entered on the code placement position setting user interface screen shown in Figure 11.
[0142] The proposed summary of the report includes drawings and other information displayed in the layout preview area 220g of the presentation user interface screen 220 shown in Figure 22. In other words, the proposed summary provides information that allows the user to roughly grasp the relative positional relationship between the code reader 1, workpiece W, and conveyor.
[0143] The list of equipment used in the report can, for example, use the format of the equipment list table shown in Figure 23 to present to the user the name, model number, and quantity of the equipment required when installing Code Reader 1 in the recommended installation location and orientation.
[0144] The reading area of the report displays reading diagrams from a front view, a slope view, etc. The readable areas on these diagrams can be indicated by color coding or other methods. Furthermore, when multiple code readers are installed, the readable areas of each code reader can also be indicated by color coding or other methods.
[0145] The installation diagram in the report displays the front view installation diagram shown in the first layout diagram display area 220h of the presentation user interface screen 220 shown in Figure 22, as well as the side view installation diagram and top view shown in the second layout diagram display area 220i.
[0146] The connection diagram for the report can be found in Figure 28, which shows the connection diagram for Code Reader 1. This diagram shows the connections to encoders, etc., to the host system, and to the power supply, as well as the connection to the host system via a terminal box.
[0147] The report may also include information on the model, tuning conditions such as exposure time, information on the use or non-use of internal and external lighting, reading information showing the relationship between brightness and readability, read images, and tuning results (parameter sets, etc.). The tuning results may be provided as electronic data so that they can be imported and used in code reader 1.
[0148] The report's reading results include the read image, read rate test results, cycle test results, depth test results, and speed test results. The read rate test results include the read data, read rate (%), bank number, code type, narrow bar width, etc. The cycle test results include the read data, bank number, time taken to read (cycle time), etc. The depth test results include the reading depth, focal length, depth and field at the shortest readable distance, depth and field at the longest readable distance, etc. The speed test results include the speed of the workpiece W calculated using the speed test mode described above.
[0149] [Variations in presentation format to the user] As a way of presenting the recommended installation pattern of the code reader 1 to the user, for example, the recommended installation pattern may be output from the output unit 40d as 2D CAD data or 3D CAD data (CAD file). The diagram showing the recommended installation pattern can be the same as the diagram displayed in the placement preview area 220g of the presentation user interface screen 220 shown in Figure 22. By providing the user with CAD data of the recommended installation pattern, the user's design effort can be reduced.
[0150] Furthermore, the calculation unit 40c can understand the conveyor speed and the placement of the code reader 1, and can calculate the timing for reading the code. This reading timing can also be presented to the user. In addition, by converting the time information into distance information, it is possible to present the information in a way that is intuitively easy for the user to understand.
[0151] Furthermore, in the case of a workpiece W covered with a transparent film or the like, a polarizing plate can be attached in front of the imaging unit 5. Attaching the polarizing plate will reduce the brightness at the imaging unit 5, but this reduction in brightness can be compensated for by moving the code reader 1 closer to the workpiece W. By pre-acquiring the amount of brightness reduction caused by the polarizing plate, the optimal placement of the code reader 1 when the polarizing plate is attached can be calculated and presented to the user.
[0152] [Computer Program] The computer program installed on the installation support device A is responsible for causing the installation support device A to perform the aforementioned functions, particularly the acquisition step of acquiring camera information and environmental information, and the calculation step of determining the installation pattern, which is the recommended installation position and orientation of the code reader 1. The computer program can be stored in the storage device 41. In addition, the computer program can be stored on various storage media such as optical discs and distributed to the market, or it can be stored on a server and downloaded by users via the internet and installed on their computers for use. A computer on which this program is installed can become the installation support device A.
[0153] [Effects of the Embodiment] As described above, according to this embodiment, the calculation unit 40c of the installation support device A determines not only the recommended installation position of the code reader 1 but also the orientation of the code reader 1 at the recommended installation position, so that the user can confirm both the position and orientation before installing the code reader 1. Furthermore, when the user installs the code reader 1 at the determined recommended installation position, they only need to install the code reader 1 so that it is in the determined orientation, thus simplifying the installation process.
[0154] The embodiments described above are merely illustrative in all respects and should not be interpreted restrictively. Furthermore, any modifications or changes that fall within the equivalent scope of the claims are all within the scope of the present invention. [Industrial applicability]
[0155] As described above, the installation support device for a stationary code reader according to the present invention can be used to indicate the installation position and orientation of the code reader before the code reader is installed. [Explanation of symbols]
[0156] 1 Code Reader 4. Lighting section 5. Imaging Department 40a Information acquisition unit (an example of acquisition means) 40c Calculation unit (an example of calculation means) 40d Output section (an example of an output means) 41 Storage device A. Installation support device for stationary code readers
Claims
1. A system that assists in the installation of a code reader, It comprises a processor and a non-temporary storage medium that stores instructions for generating a user interface screen, When the processor executes the instruction, the system (i) an information input area configured to receive surface information of the workpiece to be read, conveyor information related to the conveyor, and code information related to the target code attached to the workpiece, and (ii) an image display area configured to display an image of the workpiece placed on the conveying surface of the conveyor, a user interface screen is generated, A system that generates a user interface screen in which, in response to user input via the information input area, an image of the workpiece on the transport surface based on the user input is displayed in the image display area.
2. The system according to claim 1, wherein the image display area is configured to display a first image of the workpiece viewed from a first direction based on the surface information, and a second image of the workpiece viewed from a second direction different from the first direction.
3. The system according to claim 2, wherein the first direction includes a viewpoint from which one of the top surface and side surface of the workpiece is visible, and the second direction includes a viewpoint from which the other of the top surface and side surface is visible.
4. The system according to claim 1, wherein the command further causes the image display area to display a shape indicating the field of view of the code reader.
5. The system according to claim 4, wherein the instruction further causes a readable range indicating an area within the field of view in which the target code is likely to be read well to be superimposed.
6. The system according to claim 1, wherein the code information includes at least one of the code type, maximum code length, or narrow bar width.
7. The system according to claim 1, wherein the conveyor information includes at least one of the conveyor speed or the conveyor width.
8. A method for assisting in the installation of a code reader, (i) an information input area configured to receive surface information of a workpiece to be read, conveyor information related to a conveyor, and code information related to a target code attached to the workpiece; and (ii) an image display area configured to display an image of the workpiece placed on the transport surface of the conveyor; The steps include detecting user input via the information input area, In response to detecting the user input, the steps include: displaying the user interface screen on the display unit, which displays an image of the workpiece placed on the transport surface in the image display area based on the user input; A method that includes this.
9. The method according to claim 8, wherein the image display area is configured to display a first image of the workpiece viewed from a first direction based on the surface information, and a second image of the workpiece viewed from a second direction different from the first direction.
10. The method according to claim 9, wherein the first direction includes a viewpoint from which one of the top surface and side surface of the workpiece is visible, and the second direction includes a viewpoint from which the other of the top surface and side surface is visible.
11. The method according to claim 8, further comprising the step of displaying a shape indicating the field of view of the code reader in the image display area.
12. The method according to claim 11, wherein the image display area superimposes a readable range indicating an area within the field of view in which the target code is likely to be read well.
13. The method according to claim 8, wherein the code information includes at least one of the code type, maximum code length, or narrow bar width.
14. The method according to claim 8, wherein the conveyor information includes at least one of the conveyor speed or the conveyor width.
15. A program that assists in the installation of a code reader, (i) an information input area configured to receive surface information of a workpiece to be read, conveyor information related to a conveyor, and code information related to a target code attached to the workpiece; and (ii) an image display area configured to display an image of the workpiece placed on the transport surface of the conveyor; The steps include detecting user input via the information input area, In response to detecting the user input, the steps include: displaying the user interface screen on the display unit, which displays an image of the workpiece placed on the transport surface in the image display area based on the user input; A program that causes one or more processors to execute a process having the following characteristics.
Citation Information
Patent Citations
Optical information reader
JP2012064178A
Optical information reader
JP2018136860A