WO2012111173A1 - 画像処理装置および画像処理システム - Google Patents

画像処理装置および画像処理システム Download PDF

Info

Publication number
WO2012111173A1
WO2012111173A1 PCT/JP2011/056230 JP2011056230W WO2012111173A1 WO 2012111173 A1 WO2012111173 A1 WO 2012111173A1 JP 2011056230 W JP2011056230 W JP 2011056230W WO 2012111173 A1 WO2012111173 A1 WO 2012111173A1
Authority
WO
WIPO (PCT)
Prior art keywords
imaging
image processing
image
workpiece
control device
Prior art date
Application number
PCT/JP2011/056230
Other languages
English (en)
French (fr)
Inventor
池田 泰之
雄一 土井
直哉 中下
Original Assignee
オムロン株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オムロン株式会社 filed Critical オムロン株式会社
Priority to EP11858578.5A priority Critical patent/EP2653414B1/en
Priority to CN201180064575.4A priority patent/CN103313921B/zh
Priority to KR1020137015181A priority patent/KR101485722B1/ko
Publication of WO2012111173A1 publication Critical patent/WO2012111173A1/ja
Priority to US13/957,467 priority patent/US9741108B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G47/00Article or material-handling devices associated with conveyors; Methods employing such devices
    • B65G47/74Feeding, transfer, or discharging devices of particular kinds or types
    • B65G47/90Devices for picking-up and depositing articles or materials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0007Image acquisition
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q17/00Arrangements for observing, indicating or measuring on machine tools
    • B23Q17/24Arrangements for observing, indicating or measuring on machine tools using optics or electromagnetic waves
    • B23Q17/2414Arrangements for observing, indicating or measuring on machine tools using optics or electromagnetic waves for indicating desired positions guiding the positioning of tools or workpieces
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0014Image feed-back for automatic industrial control, e.g. robot with camera
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N21/00Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
    • G01N21/84Systems specially adapted for particular applications
    • G01N2021/845Objects on a conveyor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31432Keep track of conveyed workpiece, batch, tool, conditions of stations, cells
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/06Recognition of objects for industrial automation

Definitions

  • the present invention relates to an image processing apparatus and an image processing system directed to conveyor tracking and the like.
  • FA factory automation
  • a technique for controlling various processes using image processing is frequently used for labor saving.
  • a workpiece is transferred by a transfer device such as a belt conveyor, and the workpiece being transferred is also referred to as a moving machine (hereinafter referred to as “industrial robot” or simply “robot”). )
  • a transfer device such as a belt conveyor
  • robot moving machine
  • work steps such as tracking and gripping.
  • Such a work process is called conveyor tracking or the like.
  • an image of a workpiece on a transfer device is imaged using an imaging device, and an image obtained by the imaging is subjected to measurement processing such as pattern matching or binarization processing using an image processing device.
  • measurement processing such as pattern matching or binarization processing using an image processing device.
  • the robot tracks and grips each workpiece.
  • Patent Document 1 Japanese Patent Laid-Open No. 09-072717 discloses a configuration that is applied to a robot tracking process or the like by performing image acquisition and processing with a simple system using a visual sensor. .
  • Patent Document 2 Japanese Patent Laid-Open No. 2005-293567
  • Patent Document 3 Japanese Patent Laid-Open No. 2005-063176
  • Patent document 4 International publication WO2006 / 0775354 pamphlet
  • Patent Document 2 discloses a measurement device that can output a measurement value of a measurement object to an external control device together with information about a time when the measurement value is obtained.
  • Patent Document 3 discloses an object recognition device that recognizes the state of a workpiece by performing image processing on an imaging result of an object that moves relative to an imaging unit, such as a workpiece on a conveyor.
  • Patent Document 3 discloses an object recognition apparatus that can obtain a positional relationship between an imaging unit and a workpiece at an imaging timing with high accuracy and obtain a highly accurate image processing result.
  • Patent Document 4 is not directed to conveyor tracking, but when a workpiece as a semiconductor chip is placed without being positioned on an XY table, the workpiece is imaged by imaging the workpiece with a camera. A configuration for positioning at a predesignated position is disclosed.
  • a pulse coder is attached to the conveyor to detect the amount of movement, and the detection output from the pulse coder is input to the robot controller.
  • a visual sensor having an image processing device and a camera performs imaging and tracking using detection output of a pulse coder.
  • an imaging instruction is given to the visual sensor at a timing when the image processing apparatus determines that the detection output from the pulse coder satisfies a predetermined condition.
  • the timing at which the visual sensor performs imaging does not completely match, and some time lag occurs. If the conveyor transport speed is relatively low compared to the length of this time lag, this is not a problem, but if the conveyor transport speed is increased, tracking lag may occur due to this time lag. .
  • Patent Document 2 discloses one approach for eliminating such a time lag. More specifically, Patent Document 2 discloses a configuration in which a measurement control unit is provided in the signal processing unit, and the time at the time of measurement is measured, so that time information at the time of measurement is added to the measurement result and output. .
  • a measurement control unit is provided in the signal processing unit, and the time at the time of measurement is measured, so that time information at the time of measurement is added to the measurement result and output.
  • Patent Document 3 discloses a configuration in which imaging timing is generated using a trigger sensor provided separately from the encoder, not the measurement result by the encoder. At this time, since there is a time lag between the timing of detecting the arrival of the workpiece by the trigger sensor and the timing of imaging, information on the positional relationship between the workpiece and the imaging means at the time of imaging using the measurement result by the encoder And image recognition is performed using the positional relationship information.
  • Patent Document 4 a position detection signal from the position detector is sent to the image processing device via the motor control device.
  • the image processing device controls the motor control device based on the position command signal from the master device and the position detection signal from the position detector while imaging the conductor chip with the camera.
  • the transmission delay of the position detection signal transmitted from the position detector transmitted to the image processing apparatus via the motor control apparatus is relative to the XY table positioning control period. Therefore, the method of Patent Document 4 cannot be applied to conveyor tracking or the like as it is. Therefore, even if the method of Patent Document 4 is adopted, the tracking process cannot be reliably performed.
  • the present invention has been made in order to solve the above-described problems, and the purpose of the present invention is when there is a time lag from when an imaging instruction is issued to the imaging apparatus until the actual imaging is performed. Even if it exists, the visual sensor which can perform a tracking process correctly is provided.
  • an image processing device connected to an imaging unit arranged to image a workpiece conveyed on a conveyance device.
  • An image processing apparatus is a control device for controlling an interface that receives a signal indicating the amount of movement in a conveyance path of a conveyance apparatus, and a moving machine that is disposed downstream of an imaging range of an imaging unit in the conveyance path and handles a workpiece.
  • An interface for communicating with the control unit means for acquiring position information of an area corresponding to a pre-registered workpiece in the image by performing measurement processing on an image obtained by imaging of the imaging unit, and a control device Means for synchronizing and holding the amount of movement in the transport path between the image pickup device, means for starting image pickup by the image pickup unit in response to the image pickup instruction, and when shooting the position information and the image used to acquire the position information. And a means for transmitting the amount of movement to the control device.
  • the position information includes a coordinate value representing an area corresponding to a previously registered workpiece in the image in the coordinate system of the mobile machine.
  • the position information further includes a rotation angle of an area corresponding to the workpiece in the image with reference to the posture of the workpiece registered in advance.
  • the signal indicating the amount of movement in the transport path of the transport device is a pulse signal.
  • the pulse signal is configured to be input to the image processing device and the control device.
  • the means for holding in synchronization includes a first counter for counting the number of pulses contained in the pulse signal. The same parameter is set for the first counter with respect to the second counter for the control device to count the number of pulses included in the pulse signal.
  • the first counter is reset together with the second counter before the start of counting the number of pulses included in the pulse signal.
  • the pulse signal is configured to be input to the image processing apparatus, and the means for holding in synchronization includes a counter for counting the number of pulses included in the pulse signal, and is transmitted to the control apparatus.
  • the means for performing is configured such that the delay time related to transmission and reception is constant.
  • the movement amount when the image used to acquire the position information is captured is indicated by a counter value by a counter.
  • the image processing device is configured to receive an imaging instruction from the control device.
  • the imaging unit arranged to image the workpiece conveyed on the conveyance device, and the workpiece arranged on the downstream side of the imaging range of the imaging unit in the conveyance path of the conveyance device
  • An image processing system including a control device for controlling a mobile machine that handles the image processing apparatus and an image processing device connected to the imaging unit and the control device is provided.
  • the image processing device handles an interface that receives a signal indicating the amount of movement in the transport path of the transport device, and performs measurement processing on the image obtained by imaging by the imaging unit, thereby corresponding to a pre-registered work in the image Means for acquiring position information of a region to be performed, means for synchronizing and holding the amount of movement in the transport path with the control device, means for starting imaging by the imaging unit in response to an imaging instruction, and position information Means for transmitting to the control device the amount of movement when the image used to acquire the position information is captured.
  • an image processing apparatus capable of accurately performing tracking processing even when there is a time lag from when an imaging instruction is issued to the imaging apparatus until actual imaging is performed.
  • An image processing system is provided.
  • FIG. 1 is a schematic diagram showing a configuration of a conveyor tracking system using a visual sensor according to Embodiment 1 of the present invention.
  • the conveyor tracking system shown in FIG. 1 includes two conveying devices (conveyors) 10 and 20.
  • the conveyors 10 and 20 are rotationally driven by drive rollers 12 and 22, respectively.
  • the conveyors 10 and 20 are also referred to as line 1 and line 2, respectively.
  • the line 1 moves to the right side of the page, and the line 2 moves to the left side of the page.
  • the work W is randomly provided on the line 1 from the left side of the drawing by the carry-out device 30 or the like.
  • the workpiece W on the line 1 moves from the left side to the right side.
  • As the work W typically, foods such as sweets and various tablets are assumed.
  • the visual sensor 100 is provided at a predetermined position on the line 1.
  • the visual sensor 100 is configured integrally with an imaging unit for imaging a subject such as a workpiece and an image processing unit for processing an image captured by the imaging unit.
  • the imaging unit and the image processing unit may be configured separately.
  • the visual sensor 100 is set so that the imaging field of view includes the entire width direction of the line 1 (direction perpendicular to the conveyance direction).
  • the visual sensor 100 picks up images at a predetermined cycle, so that the workpieces W flowing randomly on the line 1 can be picked up sequentially.
  • the visual sensor 100 performs positioning processing and tracking processing of each workpiece by performing measurement processing such as pattern matching on the sequentially captured images.
  • the imaging unit imaging unit 110 illustrated in FIG. 3 of the visual sensor 100 is arranged so as to capture the workpiece W that is transported on the conveyor 10 that is a transport device.
  • an image processing apparatus image processing unit 120 shown in FIG. 3) is connected to the imaging unit.
  • a robot 300 that holds the workpiece W and moves it to the line 2 is disposed on the downstream side of the visual sensor 100.
  • the robot 300 has an arm for gripping the workpiece W, and grips the workpiece on the line 2 by moving the arm to a target position. That is, the robot 300 corresponds to a mobile machine that is disposed on the downstream side of the imaging range of the imaging unit of the visual sensor 100 and handles the workpiece W in the conveyance path of the conveyor 10 (line 1) that is a conveyance device. More specifically, the robot 300 positions its arm on the target workpiece W, picks it up, and aligns it on the line 2.
  • the robot 300 is disposed on a moving mechanism 400 (see FIG. 2) for moving along the line 1, and moves over a predetermined range.
  • This movement range of the robot 300 is also referred to as a tracking range.
  • the tracking process and positioning process of the robot 300 are controlled by using the detection result by the encoder 14 provided in the line 1.
  • the encoder 14 typically employs a rotary encoder, and generates a pulse signal as it rotates. By counting the number of pulses of the generated pulse signal, the number of rotations of the rollers connected to the conveyor 10 (line 1), that is, the pulse signal generated by the encoder 14 is obtained in the conveyance path of the conveyor 10 which is a conveyance device. It corresponds to a signal indicating the amount of movement, and the amount of movement of the conveyor 10 is calculated based on this pulse signal.
  • the robot 300 operates in accordance with instructions from the robot control device 200. That is, the robot control apparatus 200 is a control apparatus for controlling the robot 300 that is a mobile machine.
  • the robot control apparatus 200 is connected to the visual sensor 100 via the network NW, and based on the position of each workpiece W detected by the visual sensor 100, instructions necessary for the gripping operation of the workpiece W to the robot 300. give.
  • the teaching pendant 2100 for calibrating the robot 300 is connected to the robot control device 200.
  • the user operates the teaching pendant 2100 to move the robot 300 to a position necessary for calibration or the like.
  • an operation display device 500 and a support device 600 may be connected to the network NW.
  • the operation display device 500 displays a processing result from the visual sensor 100, an operation state of the robot 300 from the robot control device 200, and the like, and in response to an operation from the user, the visual sensor 100 and / or the robot control device 200. Give various instructions to.
  • the conveyor tracking system employs a configuration in which the pulse signal generated by the encoder 14 is input not only to the robot controller 200 but also to the visual sensor 100.
  • the visual sensor 100 and the robot control device 200 synchronize with each other to acquire the position information of the target transfer device (conveyor), whereby communication between the robot control device 200 and the visual sensor 100 via the network NW. Even if the delay time due to the problem becomes a problem, the influence can be avoided. Details of this will be described later.
  • FIG. 2 is a diagram for explaining positioning and tracking processing in the conveyor tracking system using the visual sensor according to Embodiment 1 of the present invention.
  • visual sensor 100 images line 1 using a built-in imaging unit.
  • the imaging operation of the visual sensor 100 is started in response to an imaging instruction from the robot control device 200.
  • This imaging instruction is conveyed via a network NW that connects the visual sensor 100 and the robot control device 200.
  • a general-purpose network such as Ethernet (registered trademark) can be adopted as this network NW.
  • the visual sensor 100 is configured to receive an imaging instruction from the robot control device 200, and starts imaging in response to the imaging instruction. As a result, the visual sensor 100 sequentially acquires images that capture the imaging field of view. Then, the visual sensor 100 performs a measurement process (typically, a pattern matching process based on a model image of the workpiece W registered in advance or a binarization process) on the image. Furthermore, the visual sensor 100 transmits position information (X, Y, ⁇ ) at the time of imaging of each workpiece W obtained by this measurement process to the robot control device 200. As described above, the visual sensor 100 performs the measurement process on the image obtained by the imaging of the imaging unit, and thereby acquires the position information of the area corresponding to the workpiece registered in advance in the image.
  • a measurement process typically, a pattern matching process based on a model image of the workpiece W registered in advance or a binarization process
  • the position information includes the position (X, Y) of the workpiece W on the conveyor 10 and the rotation angle ( ⁇ ) of the workpiece W.
  • a value converted into a coordinate system for controlling the robot 300 is used from the viewpoint of simplifying the deduplication processing in the robot control apparatus 200.
  • the arm (picking) position of the robot 300 is defined by an X coordinate (conveyor transport direction) and a Y coordinate (direction orthogonal to the conveyor transport direction), and this XY coordinate system. (Hereinafter, also referred to as “robot coordinate system”) is used to specify the position of each workpiece detected by the pattern matching process.
  • the position information includes a coordinate value representing an area corresponding to a pre-registered workpiece in an image acquired by imaging in the coordinate system “robot coordinate system” of the robot 300 that is a moving machine.
  • the visual sensor 100 and the robot control device 200 are calibrated in advance so that the measured position information of each workpiece W can be output as a value in the robot coordinate system.
  • the rotation angle ( ⁇ ) of the workpiece W means a rotation angle when the model image of the workpiece W is used as a reference. That is, the position information further includes a rotation angle of a region corresponding to the workpiece in the image with reference to the posture of the workpiece registered in advance. Depending on the shape of the workpiece W, the rotation angle of the arm of the robot 300 is appropriately controlled based on this rotation angle information.
  • the robot controller 200 counts the number of pulses included in the pulse signal from the encoder 14, and passes through the network NW at a timing when a number of pulses equal to or greater than a predetermined value is input.
  • An imaging instruction is sent to the visual sensor 100.
  • the position information of each workpiece from the visual sensor 100 is transmitted to the robot control device 200 via the network NW and stored in a memory inside the robot control device 200.
  • the visual sensor 100 sequentially captures images, the same workpiece W may be captured at different timings.
  • the position information about the same workpiece W is duplicated and transmitted to the robot control apparatus 200.
  • the robot control apparatus 200 such duplication is eliminated and stored in the memory.
  • the robot controller 200 updates the position information (coordinate values X, Y) of all the workpieces W stored in the memory every time a pulse signal is received from the encoder 14. This is for tracking the workpiece W actually transported on the belt conveyor in the memory of the robot controller 200.
  • an instruction necessary for the gripping operation is given to the robot 300.
  • the pulse signal generated according to the detection result of the encoder 14 provided in the line 1 is configured to be input to the visual sensor 100 and the robot control device 200.
  • the visual sensor 100 and the robot control device 200 each have an encoder counter for counting the number of pulses included in the pulse signal. Since the pulse signal from the encoder 14 is input in parallel to the visual sensor 100 and the robot control device 200, if each encoder counter is initialized (counter reset) at the same timing, it is input thereafter.
  • the counter values for the pulse signals can be the same as each other, that is, the counter values can be synchronized.
  • the amount of movement of the conveyor per pulse included in the pulse signal from the encoder 14 is set in advance. Further, the same parameters (maximum counter value, minimum counter value, increment value for one pulse, etc.) are set for the encoder counters of the visual sensor 100 and the robot control apparatus 200, respectively. That is, the encoder counter of the visual sensor 100 is set with the same parameter regarding the count with the encoder counter of the robot controller 200.
  • the counter value by these encoder counters is initialized to 0 before the production line is operated. That is, the encoder counter of the visual sensor 100 is reset together with the encoder counter of the robot control device 200 before the start of counting the number of pulses included in the pulse signal.
  • a means for synchronizing and holding the amount of movement of the conveyor 10 in the transport path between the visual sensor 100 and the robot controller 200 is realized.
  • visual sensor 100 adds a counter value obtained when actual imaging is performed in accordance with an imaging instruction from robot control device 200 to the position information of each workpiece, and transmits the information to robot control device 200. .
  • the counter value is held synchronously between the visual sensor 100 and the robot control device 200, the timing when the imaging instruction is sent from the robot control device 200 and the visual sensor in response to the imaging instruction. Even if there is a lime lag between the timing at which 100 actually performs imaging, the timing at which imaging was actually performed is specified on a common time axis, that is, using a synchronized counter value.
  • the visual sensor 100 transmits the detected position information of the workpiece W and the amount of movement on the conveyor 10 when the image used to acquire the position information is captured to the robot control device 200.
  • the amount of movement when the image used to acquire the position information of the workpiece W is captured is indicated by a counter value by a counter.
  • the robot control device 200 corrects the corresponding position information using the counter value at the time of imaging received from the visual sensor 100, and stores it in the memory of its own device. Accordingly, it is possible to avoid a situation where the line speed is high and the time lag from the output of the imaging instruction to the actual imaging affects the positioning and tracking processing in the robot 300.
  • FIG. 3 is a schematic diagram showing a hardware configuration of the conveyor tracking system using the visual sensor according to Embodiment 1 of the present invention.
  • visual sensor 100 includes an imaging unit 110 and an image processing unit 120.
  • the imaging unit 110 is a device that images a subject existing in an imaging field.
  • an optical system such as a lens and a diaphragm, a CCD (Charge Coupled Device) image sensor, and a CMOS (Complementary Metal Oxide Semiconductor) image.
  • a light receiving element such as a sensor.
  • the imaging unit 110 captures images in accordance with instructions from the image processing unit 120 and outputs image data obtained by the imaging to the image processing unit 120.
  • the image processing unit 120 includes a CPU (Central Processing Unit) 122, a memory 124, an imaging control unit 126, a communication interface (I / F) 128, an input / output interface (I / F) 130, an encoder counter 132, including. These components are connected to each other via a bus 134 so as to be able to perform data communication with each other.
  • CPU Central Processing Unit
  • the CPU 122 is a processor that performs main operations in the image processing unit 120.
  • the memory 124 stores various programs executed by the CPU 122, image data captured by the imaging unit 110, various parameters, and the like.
  • the memory 124 includes a volatile storage device such as a DRAM (Dynamic Random Access Memory) and a non-volatile storage device such as a FLASH memory.
  • the imaging control unit 126 controls the imaging operation in the connected imaging unit 110 according to an internal command from the CPU 122 or the like.
  • the imaging control unit 126 has an interface that transmits various commands to the imaging unit 110 and an interface that receives image data from the imaging unit 110.
  • the communication interface 128 exchanges various data with the robot controller 200.
  • the vision sensor 100 and the robot controller 200 are connected via Ethernet (registered trademark), and the communication interface 128 is hardware conforming to such Ethernet (registered trademark).
  • the input / output interface 130 outputs various signals from the image processing unit 120 to the outside, or inputs various signals from the outside.
  • the input / output interface 130 receives a pulse signal generated by the encoder 14, converts the signal into a digital signal, and outputs the digital signal to the encoder counter 132.
  • Encoder counter 132 counts the number of pulses included in the pulse signal from encoder 14. Since the encoder counter 132 basically operates independently of the calculation cycle of the CPU 122, the number of pulses included in the pulse signal from the encoder 14 is not missed.
  • the robot control apparatus 200 includes an arithmetic processing unit 210, a communication interface (I / F) 228, an input / output interface (I / F) 230, an encoder counter 232, a picking control unit 240, and a movement control unit 250. Including.
  • the arithmetic processing unit 210 is a processor that performs an operation for outputting a command to the robot 300 and the moving mechanism 400 based on position information from the visual sensor 100, and a memory 220 for tracking each workpiece W. including.
  • the memory 220 stores position information of each workpiece W detected by the measurement process of the visual sensor 100.
  • the arithmetic processing unit 210 sequentially updates the position information of each workpiece W according to the movement of the target conveyor (detected based on the pulse signal from the encoder 14).
  • the communication interface (I / F) 228 exchanges various data with the image processing unit 120 of the visual sensor 100.
  • the visual sensor 100 and the robot controller 200 are connected via Ethernet (registered trademark), and the communication interface 228 is hardware conforming to such Ethernet (registered trademark).
  • the input / output interface 230 outputs various signals from the robot controller 200 to the outside, or inputs various signals from the outside.
  • the input / output interface 230 receives a pulse signal generated by the encoder 14, converts the signal into a digital signal, and outputs the digital signal to the encoder counter 232.
  • Encoder counter 232 counts the number of pulses included in the pulse signal from encoder 14. Since the encoder counter 232 basically operates independently of the calculation cycle of the calculation processing unit 210, the number of pulses included in the pulse signal from the encoder 14 is not missed.
  • the picking control unit 240 controls a gripping operation in the connected robot 300 in accordance with an internal command from the arithmetic processing unit 210 or the like.
  • the picking control unit 240 has an interface for transmitting a target position and the like on each movable axis of the robot 300, and an interface for receiving a current position on each movable axis of the robot 300.
  • the moving mechanism 400 controls tracking in the moving mechanism 400 that drives the connected robot 300 in accordance with an internal command from the arithmetic processing unit 210 or the like.
  • the moving mechanism 400 has an interface for transmitting the target position and target speed of the moving mechanism 400 and an interface for receiving the current position of the moving mechanism 400 on the moving axis.
  • FIG. 4 is a diagram showing the conveyor tracking system according to the embodiment of the present invention in comparison with the related configuration. That is, FIG. 4A shows a schematic configuration of a conveyor tracking system related to the present invention, and FIG. 4B shows a schematic configuration of the conveyor tracking system according to the present embodiment.
  • the robot control device 200 gives an imaging instruction to the image processing unit 120A every time the conveyor 10 moves by a predetermined distance based on the pulse signal from the encoder 14.
  • the image processing unit 120A images a subject and executes measurement processing on image data obtained by the imaging. Then, the result of the measurement process is returned from the image processing unit 120A to the robot control device 200.
  • the imaging timing by the imaging unit 110 is set so that at least a part overlaps between the imaging range in the previous imaging of the imaging unit 110 and the imaging range in the current imaging. This is because it is necessary to set a certain margin between the imaging ranges in each imaging so that all the workpieces W flowing on the conveyor 10 can be imaged.
  • FIG. 5 is a sequence diagram showing a control operation in the tracking system related to the present invention.
  • FIG. 6 is a time chart showing the control operation in the tracking system related to the present invention.
  • FIG. 5 shows processing when the robot control device 200 gives an imaging instruction (via the image processing unit 120A) to the imaging unit 110 every time the conveyor 10 moves by a predetermined distance.
  • arithmetic processing unit 210 of robot control device 200 determines whether or not the number of pulses included in the pulse signal from encoder 14 has increased by a predetermined value or more from the value at the previous imaging (step). S100). That is, it is determined whether or not the current counter value in the encoder counter 232 has increased by a distance corresponding to the imaging timing.
  • the arithmetic processing unit 210 of the robot control device 200 refers to the encoder counter 232 and acquires the current counter value (C0 ′). (Step S102). Subsequently, the arithmetic processing unit 210 of the robot control apparatus 200 transmits an imaging instruction to the image processing unit 120A (step S104). This imaging instruction is transmitted to the image processing unit 120A via the network NW. In response to the imaging instruction from the robot control apparatus 200, the image processing unit 120A causes the imaging unit 110 to perform imaging (step S106). An image obtained by imaging by the imaging unit 110 is transmitted to the image processing unit 120A.
  • the image processing unit 120A performs measurement processing on the image from the imaging unit 110 (step S108). Furthermore, the image processing unit 120A transmits the measurement result (position information (X, Y, ⁇ ) of each workpiece) obtained by the measurement process in step S108 to the robot control device 200 (step S110).
  • the robot control apparatus 200 executes deduplication processing based on the measurement result from the image processing unit 120A (step S112). As described above, the imaging timing in the imaging unit 110 is controlled so that the respective imaging ranges overlap between successive imaging. Therefore, the same workpiece W may be included in a plurality of images. In order to prevent such a tracking defect caused by the same work W included in a plurality of images, the process of deleting the position information acquired in duplicate is a deduplication process.
  • the arithmetic processing unit 210 of the robot control device 200 determines whether or not position information about the new workpiece W has been acquired (step S114), and if position information about the new workpiece W has been acquired (in step S114). If YES, the new position information is stored in the memory (step S116). Then, the process returns.
  • the robot control apparatus 200 handles the measurement result transmitted from the image processing unit 120A in step S110 as the value acquired in the counter value C0 ′ acquired in the corresponding step S102. Therefore, in the update process of the position information (coordinate values X, Y) of the workpiece W accompanying the movement of the conveyor 10, the update amount ⁇ X is based on the difference between the counter value C0 ′ and the counter value C1 acquired at the update timing. , ⁇ Y are calculated. Therefore, the counter value C0 ′ indicating the imaging timing associated with the position information of each workpiece W needs to accurately reflect the actual imaging timing.
  • the counter value C0 'acquired in step S102 may not accurately reflect the actual imaging timing.
  • a delay time lag
  • the robot control device 200 transmits an imaging instruction until the actual imaging is performed.
  • the robot control device 200 Since the robot control device 200 receives the pulse signal from the encoder 14 once and generates an imaging instruction, the robot control device 200 does not wait until the imaging instruction is actually output from the input timing of the pulse signal. A delay corresponding to one cycle of the program to be executed occurs.
  • an imaging instruction is transmitted from the robot controller 200 to the image processing unit 120A via the network NW, a transmission delay occurs, and further, an imaging operation in the imaging unit 110 and a measurement process in the image processing unit 120A. Are executed in series, and then the measurement result is returned to the robot controller 200 via the network again.
  • the encoder counter 232 is set to output an imaging instruction when the encoder counter 232 reaches “3”, the encoder counter 232 is set to “5”. ” May have arrived.
  • the visual sensor 100 employs a method of minimizing the influence on positioning processing and tracking processing due to such a delay (time lag).
  • a pulse signal from the encoder 14 that detects the amount of movement of the conveyor 10 is input to the visual sensor 100 in addition to the robot controller 200.
  • the visual sensor 100 and the robot control device 200 have encoder counters 132 and 232, respectively.
  • Each encoder counter counts the pulses included in the pulse signal from the encoder 14 independently of each other.
  • these encoder counters 132 and 232 are both reset before operation, and the parameters relating to the count operation are set to be the same. Therefore, the counter value counted by the encoder counter 132 and the counter value counted by the encoder counter 232 indicate the same value in synchronization with each other.
  • the visual sensor 100 As described above, an environment in which the counter value is synchronously held between the visual sensor 100 and the robot control device 200 is realized, and the counter value when the visual sensor 100 performs the imaging is obtained by the imaging.
  • the measurement result position information of each workpiece
  • the visual sensor 100 outputs a counter value indicating the timing at which actual imaging is performed in association with the measurement result.
  • the deduplication process can also be accurately executed.
  • FIG. 7 is a sequence diagram showing a control operation in the tracking system according to Embodiment 1 of the present invention.
  • FIG. 8 is a diagram showing a format example of a measurement result transmitted in the tracking system according to Embodiment 1 of the present invention.
  • FIG. 9 is a time chart showing a control operation in the tracking system according to Embodiment 1 of the present invention.
  • FIG. 7 shows processing when the robot control apparatus 200 gives an imaging instruction to the visual sensor 100 to the imaging unit 110 every time the conveyor 10 moves by a predetermined distance, as in FIG. 5 described above. .
  • the same parameters (counter maximum value, counter minimum value, increment value for one pulse, etc.) are set for both visual sensor 100 and robot controller 200 (steps). S1 and S2). Then, reset (counter reset) is performed on each encoder counter for both the visual sensor 100 and the robot controller 200 (steps S3 and S4).
  • the common parameter setting and counter reset for the encoder counter are executed, and the count operation for the number of pulses included in the pulse signal from the encoder 14 is synchronized between the visual sensor 100 and the robot controller 200. Can be made.
  • the arithmetic processing unit 210 of the robot control device 200 determines whether or not the number of pulses included in the pulse signal from the encoder 14 has increased by a predetermined value or more from the value at the previous imaging (step S5). That is, it is determined whether or not the current counter value in the encoder counter 232 has increased by a distance corresponding to the imaging timing.
  • the arithmetic processing unit 210 of the robot control device 200 transmits an imaging instruction to the visual sensor 100 (step S6).
  • This imaging instruction is transmitted to the visual sensor 100 via the network NW.
  • the image processing unit 120 of the visual sensor 100 refers to the encoder counter 132, and the image processing unit 120 of the visual sensor 100 calculates the counter value (C0) at the time of imaging. Obtain (step S7).
  • the image processing unit 120 of the visual sensor 100 causes the imaging unit 110 to perform imaging (step S8).
  • An image obtained by imaging by the imaging unit 110 is transmitted to the image processing unit 120.
  • the image processing unit 120 performs measurement processing on the image from the imaging unit 110 (step S9). Further, the image processing unit 120 obtains the measurement result (position information (X, Y, ⁇ ) of each workpiece) obtained by the measurement process in step S9 together with the counter value C0 acquired in step S7, and the robot control device 200. (Step S10).
  • the robot control apparatus 200 executes deduplication processing based on the measurement result from the image processing unit 120 (step S11). This deduplication process is the same process as described above.
  • the arithmetic processing unit 210 of the robot controller 200 determines whether or not position information about the new workpiece W has been acquired (step S12), and when position information about the new workpiece W has been acquired (in step S12). If YES, the new position information is stored in the memory (step S13). Then, the process returns.
  • the measurement result transmitted in step S10 in the sequence diagram of FIG. 7 is transmitted according to the format shown in FIG. FIG. 8 shows an example of data when three workpieces W matching the model image are detected as an example.
  • “3” that is the number of detected workpieces W is stored in the first item, and the positions of the detected three workpieces W are stored in the second to tenth items that follow.
  • Information (X coordinate value, Y coordinate value, rotation angle ⁇ ) is stored.
  • the last item stores a counter value indicating the timing at which the image used to generate the detection result is captured.
  • FIG. 8 illustrates an example in which imaging is performed when the counter value is “100”.
  • a common parameter for the encoder counter is set for both the visual sensor 100 and the robot control apparatus 200, and all the encoder counters are initialized (counter reset) in advance. In response to the generated pulse signal, each encoder counter counts up substantially synchronously.
  • the visual sensor 100 when viewed from the visual sensor 100, when an imaging instruction is received at some timing, an imaging operation using the imaging unit 110 and a measurement process in the image processing unit 120A are executed. In parallel with the imaging and measurement processing, the visual sensor 100 acquires a counter value at the time of imaging. The visual sensor 100 transmits the measurement result to the robot controller 200 together with the counter value at the time of imaging.
  • an imaging instruction is output from the robot control apparatus 200 to the visual sensor 100, and the visual sensor 100 executes imaging and measurement processing in response to the imaging instruction.
  • the robot control device 200 performs an accurate tracking process based on the counter value corresponding to each measurement value. be able to.
  • the timing at which the robot control device 200 transmits the imaging instruction in other words, the imaging instruction is transmitted at a cycle according to the conveyor conveyance speed. This is sufficient), and the transmission delay of the measurement result from the visual sensor 100 to the robot controller 200 does not matter.
  • the counter value is acquired at a plurality of timings during the imaging operation (including before and after the start), and is determined as a counter value indicating the imaging timing based on the acquired counter values. May be.
  • FIG. 10 is a time chart showing a control operation in the tracking system according to the modification of the first embodiment of the present invention.
  • counter values are acquired before and after the imaging operation, and the two acquired counter values are averaged to be handled as the counter values in the imaging operation.
  • the counter value indicating the imaging timing can be accurately acquired.
  • FIG. 11 is a time chart showing a control operation in a tracking system according to another modification of the first embodiment of the present invention.
  • the visual sensor 100 refers to the counter value of its encoder counter 132 and generates an imaging instruction internally each time three pulses are generated from the encoder 14.
  • the workpiece positioning and tracking processing can be realized without any problems even if such a configuration is adopted. it can. Further, since an imaging instruction is not transmitted on the network NW, there is an advantage that the load on the network NW can be reduced.
  • FIG. 12 is a flowchart showing processing in the robot control apparatus 200 according to Embodiment 1 of the present invention. 12 (a) to 12 (d) exemplify main processes executed in the robot control apparatus 200, but the processes in the robot control apparatus 200 are not limited to those shown in FIG.
  • FIG. 12A shows processing that occurs when the encoder 14 generates a pulse signal. More specifically, the process of FIG. 12A is activated as an event that the encoder 14 generates a pulse signal and the encoder counter 232 counts up (step S50). When the encoder counter 232 counts up, the position information of each workpiece stored in the memory of the robot controller 200 is updated (step S51). A method for updating the position information is as follows.
  • the work is conveyed in the X direction, and the right end of the tracking range of the robot 300 is set as the origin in the X direction.
  • the moving amount (movement vector) of the conveyor per pulse of the encoder 14 is ( ⁇ Mx, ⁇ My)
  • the position information of the workpiece W whose position information before update is (X0, Y0, ⁇ 0) is n
  • the updated position information is (X0 ⁇ Mx ⁇ n, Y0 ⁇ My ⁇ n, ⁇ 0).
  • the value obtained by multiplying the unit movement amount per pulse on the conveyor by the number of pulses is the movement amount ( ⁇ Mx ⁇ n, My ⁇ n) of the workpiece W. If the workpiece W is moving in the direction of the origin, the workpiece position information is updated by this amount of movement (movement vector).
  • FIG. 12B also shows processing that occurs when the encoder 14 generates a pulse signal. More specifically, the process of FIG. 12B is activated as an event that the encoder 14 generates a pulse signal and the encoder counter 232 counts up (step S50).
  • the encoder counter 232 counts up, it is determined whether or not an imaging instruction generation condition is satisfied. For example, in the above-described example, it is determined whether or not the number of pulses included in the pulse signal from the encoder 14 has increased by a predetermined value or more from the value at the previous imaging. If the condition for generating the imaging instruction is satisfied (YES in step S50), the imaging instruction is transmitted from the robot control device 200 to the visual sensor 100.
  • FIG. 12C illustrates a gripping operation performed by the robot 300.
  • the flow in FIG. 12C is activated as an event that the position information of the workpiece is updated (step S60). More specifically, when the workpiece position information is updated, it is determined whether any workpiece W exists within the tracking range of the robot 300 (step S61). When any workpiece W exists within the tracking range of the robot 300 (YES in step S61), control of the gripping operation of the workpiece W by the robot 300 is started.
  • step S62 based on the acquisition of position information of the gripping target workpiece within the tracking range (step S62), the calculation of the deviation between the gripping target workpiece and the robot 300 (step S63), and the deviation calculated in step S63,
  • step S63 The generation of instructions for the robot 300 and the moving mechanism 400 (step S64) and the update of the position information of the workpiece W (step S65) are repeated.
  • the robot control apparatus 200 outputs a gripping operation instruction to the robot 300 (step S66).
  • a movement operation instruction for moving the gripped workpiece W to a target position is output to the robot 300 in the gripping state (step S67). Then, the process returns.
  • FIG. 12 (d) is activated by receiving other position information as an event. More specifically, the current position information is calculated (step S69), and further, deduplication processing is executed (step S70). Thereafter, the position information is stored in the memory (step S71).
  • the difference between the counter value at the time of imaging and the counter value at each time point is calculated, and this difference is multiplied by the unit movement amount on the conveyor per pulse.
  • the value obtained in this way is the correction amount.
  • FIG. 13 is a time chart showing the overall control operation in the tracking system according to Embodiment 1 of the present invention.
  • an imaging instruction is generated at a timing when the counter value of the encoder counter 232 of the robot control device 200 becomes “7”.
  • This imaging instruction is sent to the visual sensor 100, and imaging and measurement processing are executed. Then, the measurement result is transmitted to the robot control device 200 together with “9” which is the counter value at the time of imaging of the encoder counter 132 of the visual sensor 100.
  • the robot control apparatus 200 When the robot control apparatus 200 receives the measurement result from the visual sensor 100, after the deduplication process or the like, the robot control apparatus 200 associates the counter value (in this example, “9”) with the current counter value (this example) In the example, “12”) is compared, and the measurement result is corrected by the counter value “3” which is the difference (coordinate calculation). Furthermore, every time the encoder counter 232 counts up, the robot control device 200 updates the stored position information (coordinate position of each workpiece) (coordinate update).
  • the robot control apparatus 200 instructs the robot 300 to perform a gripping operation.
  • the gripping operation by the robot 300 is completed, the workpiece position information stored in the robot controller 200 is deleted.
  • the conveyor tracking according to the present embodiment is realized by the processing procedure as described above.
  • the visual sensor 100 image processing unit 120
  • the imaging operation and the measurement process for the image obtained by the imaging operation are performed by the robot.
  • the program execution cycle of the control device 200 is not affected.
  • the counter value at the time of imaging in the visual sensor 100 (imaging unit 110) can be accurately acquired no matter what timing the imaging instruction from the robot control device 200 is issued. Thereby, even if a delay time that cannot be ignored occurs between the imaging instruction and the actual imaging operation, accurate tracking processing and accurate control of the robot 300 are possible.
  • the counter value at the time of imaging can be obtained accurately, so it is not necessary to adjust the parameters relating to the counter operation depending on the conveyor speed.
  • the pulse signals from the encoder 14 are input to both the visual sensor 100 and the robot controller 200, and the pulses are output by the encoder counters 132 and 232, each of which is set to the same parameter. By counting the number of pulses included in the signal, the moving amount (counter value) of the conveyor is held in synchronization.
  • the second embodiment a configuration in which the movement amount (counter value) of the conveyor is held in synchronization via the network will be exemplified.
  • FIG. 14 is a view for explaining positioning and tracking processing in the conveyor tracking system using the visual sensor according to Embodiment 2 of the present invention.
  • the pulse signal from encoder 14 is input only to visual sensor 100 #, and visual sensor 100 # and robot control are performed.
  • This is different from the conveyor tracking system using the visual sensor according to the first embodiment shown in FIG. 2 in that a field network FN is provided between the device 200 # and the apparatus 200 #. Since other configurations are the same as those in the first embodiment, only differences will be mainly described below.
  • FIG. 15 is a schematic diagram showing a hardware configuration of a conveyor tracking system using a visual sensor according to Embodiment 2 of the present invention.
  • image processing unit 120 # constituting visual sensor 100 # according to Embodiment 2 has field network interface (I / F) 160 compared to image processing unit 120 shown in FIG. It has more.
  • the robot control apparatus 200 # according to the second embodiment has a field network interface (I) instead of the encoder counter 232 and the input / output interface (I / F) 230, as compared with the robot control apparatus 200 shown in FIG. / F) 260 is provided. Since other configurations are the same as those in the first embodiment, only differences will be mainly described below.
  • the counter value counted by encoder counter 132 in image processing unit 120 # is shared via field network FN. .
  • industrial Ethernet registered trademark
  • EtherCAT registered trademark
  • Profinet IRT a field network other than industrial Ethernet (registered trademark)
  • MECHATROLINK registered trademark
  • Powerlink a field network other than industrial Ethernet (registered trademark)
  • EtherCAT registered trademark
  • EtherCAT registered trademark
  • Profinet IRT a field network other than industrial Ethernet (registered trademark)
  • MECHATROLINK registered trademark
  • Powerlink a field network other than industrial Ethernet (registered trademark)
  • a field network other than industrial Ethernet registered trademark
  • EtherCAT registered trademark
  • EtherCAT registered trademark
  • a general field network is configured such that a delay time related to transmission and reception is constant, and this delay time can be suppressed to about several ns. Therefore, as described above, a delay (time lag) from when the robot control device 200 transmits an imaging instruction to when the actual imaging is performed is sufficiently smaller than the delay between the visual sensor 100 # and the robot control device 200 #. It can be considered that the count value is held substantially synchronously.
  • a pulse signal provided in the visual sensor 100 (or the robot control device 200) is used as means for synchronously holding the movement amount in the transport path of the conveyor 10 between the visual sensor 100 and the robot control device 200. This is realized by a counter for counting the number of included pulses, and a field network FN that shares the counter value by the counter substantially synchronously between apparatuses.
  • the delay time in the field network FN is controlled to a constant value, so that the counter value is synchronized and held by the following method. can do.
  • FIG. 16 is a diagram for explaining the influence of the delay time in the field network FN according to the second embodiment of the present invention. Referring to FIG. 16, for example, it is assumed that the counter value updated by visual sensor 100 # is transmitted to robot control device 200 # with a delay of ⁇ D. Since this delay time ⁇ D is basically constant (predictable), it is possible to take measures such as shifting the control timing in consideration of this delay time ⁇ D.
  • the delay time ⁇ D with the robot control device 200 # can be substantially canceled.
  • a correction amount (counter correction value) obtained by multiplying the pulse cycle included in the pulse signal from the encoder 14 by the delay time ⁇ D is added to the counter value. It may be used for control.
  • the visual sensor 100 # is a host of the field network FN and the robot control device 200 # is configured as a slave of the field network FN. May be reversed.
  • a pulse signal from the encoder 14 is input only to the robot control device 200 # side, and an encoder counter is provided in the robot control device 200 #.
  • FIG. 17 is a schematic diagram showing a hardware configuration of the support device 600 according to the third embodiment of the present invention.
  • the support device 600 is typically composed of a general-purpose computer. From the viewpoint of maintainability, a notebook personal computer with excellent portability is preferable.
  • the support device 600 stores a CPU 61 that executes various programs including an OS, a ROM (Read Only Memory) 62 that stores BIOS and various data, and data necessary for executing the program in the CPU 61. It includes a memory RAM 63 that provides a work area for storing, and a hard disk (HDD) 64 that stores programs executed by the CPU 61 in a nonvolatile manner.
  • a CPU 61 that executes various programs including an OS, a ROM (Read Only Memory) 62 that stores BIOS and various data, and data necessary for executing the program in the CPU 61.
  • It includes a memory RAM 63 that provides a work area for storing, and a hard disk (HDD) 64 that stores programs executed by the CPU 61 in a nonvolatile manner.
  • HDD hard disk
  • the support device 600 further includes a keyboard 65 and a mouse 66 that receive an operation from the user, and a monitor 67 for presenting information to the user.
  • various programs executed by the support device 600 are stored in the CD-ROM 69 and distributed.
  • the program stored in the CD-ROM 69 is read by a CD-ROM (Compact Disk-Read Only Memory) drive 68 and stored in a hard disk (HDD) 64 or the like.
  • the program may be downloaded from a host computer or the like via a network.
  • the support device 600 is realized using a general-purpose computer, no further detailed description will be given.
  • Such a support device 600 is capable of data communication with both the visual sensor 100 and the robot control device 200, and thus can collect various data. Therefore, the support device 600 according to the present embodiment is configured to collect an image that has been subjected to measurement processing at the time of adjustment from the visual sensor 100.
  • the corresponding counter value and measurement value (coordinate information, angle, etc.) and each image are stored in association with each other. These pieces of information are transmitted from the visual sensor 100 to the support device 600 via the network NW. Then, it is stored in the hard disk 64 of the support device 600.
  • the necessary image and the measurement result can be easily searched using the counter value corresponding to the desired timing.
  • the following functions can be provided by preparing a database of such images and measurement results. That is, in the robot 300, the robot motion (positioning and tracking processing) is recorded in association with the counter value, so that the robot motion can be associated with the corresponding image processing. Thereby, for example, when the gripping operation fails, the image of the workpiece that is the gripping object and the measurement result can be reproduced on the support device 600 in order to pursue the cause of the failure. Therefore, the cause of the failure can be analyzed more easily.
  • 10 conveyors, 12 drive rollers, 14 encoders, 30 carry-out devices, 61, 122 CPU, 63 RAM, 64 hard disks, 65 keyboards, 66 mice, 67 monitors, 68 drives, 69 CD-ROM, 100 visual sensors, 110 imaging units, 120, 120A image processing unit, 124, 220 memory, 126 imaging control unit, 128, 228 communication interface, 130, 230 input / output interface, 132, 232 encoder counter, 134 bus, 200 robot control device, 210 arithmetic processing unit, 240 Picking control unit, 250 movement control unit, 300 robot, 400 movement mechanism, 500 operation display device, 600 support device, 2100 teaching pendant, FN fee De network, NW network, W work.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Quality & Reliability (AREA)
  • Optics & Photonics (AREA)
  • Robotics (AREA)
  • Manipulator (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Control Of Conveyors (AREA)
  • Specific Conveyance Elements (AREA)
  • Image Processing (AREA)
  • Studio Devices (AREA)
  • Image Analysis (AREA)

Abstract

本発明の画像処理装置は、搬送装置(10)の搬送経路における移動量を示す信号を受付けるインターフェイス(14)と、搬送経路において撮像部の撮像範囲より下流側に配置され、ワークを取り扱う移動機械(300)を制御するための制御装置(200)と通信するためのインターフェイス(NW)と、撮像部(100)の撮像によって得られた画像に対して計測処理を行うことで、画像中の予め登録されたワークに対応する領域の位置情報を取得する手段(100)及び制御装置(200)の間で、搬送経路における移動量を同期して保持する手段と、撮像指示に応答して撮像部による撮像を開始する手段(100)と、位置情報及び、当該位置情報の取得に用いた画像を撮像したときの移動量を制御装置へ送信する手段とを含む。

Description

画像処理装置および画像処理システム
 本発明は、コンベアトラッキング等に向けられた画像処理装置および画像処理システムに関する。
 ファクトリーオートメーション(FA)分野においては、省力化のため、画像処理を用いて各種の工程を制御する技術が多用されている。このような画像処理技術の適用例の一つとして、ベルトコンベア等の搬送装置によってワークを搬送するとともに、その搬送中のワークを移動機械(以下、「産業用ロボット」あるいは単に「ロボット」とも称す。)を用いて、追跡(トラッキング)および把持するような作業工程がある。このような作業工程は、コンベアトラッキング等と称される。
 このコンベアトラッキングの技術においては、撮像装置を用いて搬送装置上のワークを撮像し、その撮像によって得られた画像に対して、画像処理装置を用いてパターンマッチングあるいは2値化処理などの計測処理を行うことで、各ワークの存在位置(座標)を特定する。そして、この特定された各ワークの存在位置(座標)に基づいて、ロボットが各ワークを追跡および把持する。
 例えば、特許文献1(特開平09-072717号公報)には、視覚センサを利用して簡素なシステムで画像取得・処理を行うことで、ロボットのトラッキング処理等に応用する構成が開示されている。
 また、コンベアトラッキングに向けられたものではないが、視覚センサに関連する先行技術文献として、特許文献2(特開2005-293567号公報)、特許文献3(特開2005-063176号公報)、および特許文献4(国際公開WO2006/075354パンフレット)が挙げられる。
 特許文献2には、計測対象物の計測値を、計測値が得られた時間に関する情報と共に外部制御機器に出力できる計測装置が開示されている。
 特許文献3には、コンベア上のワークのような、撮像手段に対して相対移動する物体の撮像結果を画像処理して、ワークの状態を認識する物体認識装置が開示されている。特に、特許文献3は、撮像タイミングでの撮像手段とワークとの位置関係を精度良く得て、精度の高い画像処理結果を得ることができる物体認識装置を開示する。
 特許文献4には、コンベアトラッキングに向けられたものではないが、半導体チップとしてのワークがXYテーブル上に位置決めされることなく載せられている場合に、ワークをカメラで撮像することで、ワークを予め指定された位置に位置決めするための構成が開示されている。
特開平09-072717号公報 特開2005-293567号公報 特開2005-063176号公報 国際公開WO2006/075354パンフレット
 上述の特許文献1の構成においては、コンベアには、移動量を検出するために、パルスコーダが取り付けられ、パルスコーダからの検出出力はロボット制御部へ入力される。画像処理装置およびカメラを有する視覚センサは、パルスコーダの検出出力を利用して、撮像やトラッキングを行う。
 しかしながら、特許文献1の構成においては、画像処理装置がパルスコーダからの検出出力が所定条件を満足すると判断したタイミングで視覚センサへ撮像指示を与えるが、この視覚センサへ撮像指示を与えるタイミングと実際に視覚センサが撮像を行うタイミングとは完全には一致しておらず、幾らかのタイムラグが生じる。このタイムラグの長さに比較して、コンベアの搬送速度が相対的に低い場合には、それほど問題にはならないが、コンベアの搬送速度が高速化すると、このタイムラグによって、トラッキングのずれ等が生じ得る。
 そこで、特許文献2には、このようなタイムラグを解消するための一つのアプローチが開示されている。より具体的には、特許文献2は、信号処理部に計測制御部を設けて、計測時の時間を測定することで、計測結果に計測時の時間情報を付加して出力する構成を開示する。このような構成を上述のようなコンベアトラッキングに適用した場合には、搬送装置の搬送速度が一定である場合には、当該計測時の時間情報に基づいて移動量を計算することで、上述のようなタイムラグによる影響を低減することができる。
 しかしながら、現実の生産ラインでは、搬送装置の搬送速度は変化するため、特許文献2の手法をそのまま適用しただけでは、トラッキング処理を確実に行うことができない場合もある。
 また、特許文献3は、エンコーダによる計測結果ではなく、エンコーダとは別に設けられたトリガーセンサを用いて、撮像タイミングを生成するという構成を開示している。このとき、トリガーセンサによってワークの到着を検出するタイミングと、撮像のタイミングとの間にタイムラグが生じるため、エンコーダによる計測結果を用いて、撮像時のワークと撮像手段との間の位置関係の情報を生成し、この位置関係の情報を用いて画像認識が行われる。
 しかしながら、現実の生産ラインでは、搬送経路上に複数のワークが配置されることも多く、特許文献3に開示されるようなトリガーセンサでワークの到着を検出することは現実的ではない。そのため、特許文献3の手法を適用しても、トラッキング処理を確実に行うことはできない。
 さらに、特許文献4には、位置検出器からの位置検出信号がモータ制御装置を介して画像処理装置へ送られる。画像処理装置は、導体チップをカメラで撮像しつつ、マスタ装置からの位置指令信号と、位置検出器からの位置検出信号とに基づいて、モータ制御装置を制御する。特許文献4に開示される構成においては、モータ制御装置を経由して画像処理装置へ送信される位置検出器からの位置検出信号の送信遅延がXYテーブルの位置決め制御の周期に比較して相対的に無視できることが前提となっており、特許文献4の手法は、コンベアトラッキング等にはそのまま適用することができない。そのため、特許文献4の手法を採用したとしても、トラッキング処理を確実に行うことはできない。
 そこで、本発明は、上述のような課題を解決するためになされたものであり、その目的は、撮像装置に対する撮像指示を発生してから実際に撮像が行われるまでにタイムラグが存在する場合であっても、正確にトラッキング処理を行うことのできる視覚センサを提供
するものである。
 本発明のある局面によれば、搬送装置上を搬送されるワークを撮像するように配置された撮像部に接続される画像処理装置を提供する。画像処理装置は、搬送装置の搬送経路における移動量を示す信号を受付けるインターフェイスと、搬送経路において撮像部の撮像範囲より下流側に配置されるとともにワークを取り扱う移動機械、を制御するための制御装置と通信するためのインターフェイスと、撮像部の撮像によって得られた画像に対して計測処理を行うことで、画像中の予め登録されたワークに対応する領域の位置情報を取得する手段と、制御装置との間で搬送経路における移動量を同期して保持する手段と、撮像指示に応答して撮像部による撮像を開始する手段と、位置情報と当該位置情報の取得に用いた画像を撮像したときの移動量とを制御装置へ送信する手段とを含む。
 好ましくは、位置情報は、画像中の予め登録されたワークに対応する領域を移動機械の座標系で表した座標値を含む。
 さらに好ましくは、位置情報は、予め登録されたワークの姿勢を基準とした、画像中の当該ワークに対応する領域の回転角度をさらに含む。
 好ましくは、搬送装置の搬送経路における移動量を示す信号は、パルス信号である。
 さらに好ましくは、パルス信号は、画像処理装置および制御装置に入力されるように構成されている。同期して保持する手段は、パルス信号に含まれるパルス数をカウントするための第1のカウンタを含む。第1のカウンタは、制御装置がパルス信号に含まれるパルス数をカウントするための第2のカウンタとの間で、カウントに関して同一のパラメータが設定されている。
 さらに好ましくは、第1のカウンタは、パルス信号に含まれるパルス数のカウント開始前に、第2のカウンタとともに、リセットされる。
 あるいは好ましくは、パルス信号は、画像処理装置に入力されるように構成されており、同期して保持する手段は、パルス信号に含まれるパルス数をカウントするためのカウンタを含み、制御装置へ送信する手段は、送受信に係る遅延時間が一定になるように構成されている。
 好ましくは、位置情報の取得に用いた画像を撮像したときの移動量は、カウンタによるカウンタ値で示される。
 好ましくは、画像処理装置は、撮像指示を制御装置から受信するように構成されている。
 この発明の別の局面に従えば、搬送装置上を搬送されるワークを撮像するように配置された撮像部と、搬送装置の搬送経路において撮像部の撮像範囲より下流側に配置されるとともにワークを取り扱う移動機械、を制御するための制御装置と、撮像部および制御装置に接続される画像処理装置とを含む画像処理システムを提供する。画像処理装置は、搬送装置の搬送経路における移動量を示す信号を受付けるインターフェイスと、撮像部の撮像によって得られた画像に対して計測処理を行うことで、画像中の予め登録されたワークに対応する領域の位置情報を取得する手段と、制御装置との間で搬送経路における移動量を同期して保持する手段と、撮像指示に応答して撮像部による撮像を開始する手段と、位置情報と当該位置情報の取得に用いた画像を撮像したときの移動量とを制御装置へ送信する手段とを含む。
 本発明によれば、撮像装置に対する撮像指示を発生してから実際に撮像が行われるまでにタイムラグが存在する場合であっても、正確にトラッキング処理を行うことのできる画像処理装置およびそれを含む画像処理システムを提供するものである。
本発明の実施の形態1に係る視覚センサを利用したコンベアトラッキングシステムの構成を示す模式図である。 本発明の実施の形態1に係る視覚センサを利用したコンベアトラッキングシステムにおける位置決めおよびトラッキング処理を説明するための図である。 本発明の実施の形態1に係る視覚センサを利用したコンベアトラッキングシステムのハードウェア構成について示す模式図である。 本発明の実施の形態に係るコンベアトラッキングシステムを関連する構成と対比して示す図である。 本発明に関連するトラッキングシステムにおける制御動作を示すシーケンス図である。 本発明に関連するトラッキングシステムにおける制御動作を示すタイムチャートである。 本発明の実施の形態1に係るトラッキングシステムにおける制御動作を示すシーケンス図である。 本発明の実施の形態1に係るトラッキングシステムにおいて送信される計測結果のフォーマット例を示す図である。 本発明の実施の形態1に係るトラッキングシステムにおける制御動作を示すタイムチャートである。 本発明の実施の形態1の変形例に係るトラッキングシステムにおける制御動作を示すタイムチャートである。 本発明の実施の形態1の別の変形例に係るトラッキングシステムにおける制御動作を示すタイムチャートである。 本発明の実施の形態1に係るロボット制御装置における処理を示すフローチャートである。 本発明の実施の形態1に係るトラッキングシステムにおける全体の制御動作を示すタイムチャートである。 本発明の実施の形態2に係る視覚センサを利用したコンベアトラッキングシステムにおける位置決めおよびトラッキング処理を説明するための図である。 本発明の実施の形態2に係る視覚センサを利用したコンベアトラッキングシステムのハードウェア構成について示す模式図である。 本発明の実施の形態2に係るフィールドネットワークにおける遅延時間の影響を説明するための図である。 本発明の実施の形態3に係るサポート装置のハードウェア構成を示す模式図である。
 本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。
 [実施の形態1]
 <A.システム構成>
 図1は、本発明の実施の形態1に係る視覚センサを利用したコンベアトラッキングシステムの構成を示す模式図である。図1に示すコンベアトラッキングシステムは、2つの搬送装置(コンベア)10および20を含む。コンベア10および20は、それぞれ駆動ローラ12および22によって回転駆動される。以下では、コンベア10および20をそれぞれライン1およびライン2とも称す。図1に示す例では、ライン1は、紙面右側に移動し、ライン2は、紙面左側に移動する。ライン1には、搬出装置30等によって紙面左側からワークWがランダムに提供される。このライン1上のワークWは、紙面左側から紙面右側へ移動する。ワークWとしては、典型的には、お菓子等の食品や各種の錠剤等が想定される。
 本実施の形態に係る視覚センサ100は、ライン1上の所定位置に設けられる。後述するように、視覚センサ100は、ワークなどの被写体を撮像するための撮像部と当該撮像部によって撮像された画像を処理するための画像処理部とを一体的に構成したものである。但し、撮像部と画像処理部とを別体として構成してもよい。
 視覚センサ100は、その撮像視野がライン1の幅方向(搬送方向とは直交する方向)の全体を含むように設定される。そして、視覚センサ100が所定周期で撮像を行うことで、ライン1上をランダムに流れてくるワークWを順次撮像できる。視覚センサ100は、この順次撮像される画像に対してパターンマッチング等の計測処理を行うことで、各ワークの位置決めおよびトラッキング処理を行う。このように、視覚センサ100の撮像部(図3に示す撮像部110)は、搬送装置であるコンベア10上を搬送されるワークWを撮像するように配置されている。そして、この撮像部に画像処理装置(図3に示す画像処理部120)が接続される。
 ライン1の搬送方向には、視覚センサ100の下流側に、ワークWを把持してライン2へ移動させるロボット300が配置されている。このロボット300は、ワークWを把持するためのアームを有しており、このアームを目的位置に移動させることで、ライン2上のワークを把持する。すなわち、ロボット300は、搬送装置であるコンベア10(ライン1)の搬送経路において、視覚センサ100の撮像部の撮像範囲より下流側に配置されるとともにワークWを取り扱う移動機械に相当する。より具体的には、ロボット300は、そのアームを目的のワークWに位置決めして、ピックアップしてライン2上に整列する。
 さらに、ロボット300は、ライン1に沿って移動するための移動機構400(図2参照)上に配置されており、所定の範囲に亘って移動する。このロボット300の移動範囲をトラッキング範囲とも称す。
 ロボット300のトラッキング処理および位置決め処理については、ライン1に設けられたエンコーダ14による検出結果を用いて制御される。このエンコーダ14は、典型的には、ロータリーエンコーダが採用され、回転に伴ってパルス信号を発生する。この発生するパルス信号のパルス数をカウントすることで、コンベア10(ライン1)と連結されたローラの回転数、すなわち、エンコーダ14が発生するパルス信号は、搬送装置であるコンベア10の搬送経路における移動量を示す信号に相当し、このパルス信号に基づいて、コンベア10の移動量が算出される。
 ロボット300は、ロボット制御装置200からの指示に従って動作する。すなわち、ロボット制御装置200は、移動機械であるロボット300を制御するための制御装置である。ロボット制御装置200は、視覚センサ100とネットワークNWを介して接続されており、視覚センサ100によって検出された各ワークWの位置に基づいて、ロボット300に対してワークWの把持動作に必要な指示を与える。
 ロボット制御装置200には、ロボット300のキャリブレーションなどを行うためのティーチングペンダント2100が接続されている。ユーザは、ティーチングペンダント2100を操作して、キャリブレーションなどに必要な位置にロボット300を移動させる。
 ネットワークNWには、視覚センサ100およびロボット制御装置200に加えて、操作表示装置500およびサポート装置600が接続されていてもよい。操作表示装置500は、視覚センサ100からの処理結果やロボット制御装置200からのロボット300の動作状態などを表示するとともに、ユーザからの操作に応答して、視覚センサ100および/またはロボット制御装置200へ各種の指示を与える。
 図1に示すコンベアトラッキングシステムにおいては、生産性を向上するために、ライン速度(搬送速度)をより高めたいという潜在的なニーズが存在する。このようなニーズに対処するため、本実施の形態に係るコンベアトラッキングシステムにおいては、エンコーダ14が発生するパルス信号をロボット制御装置200だけではなく、視覚センサ100にも入力するという構成を採用する。このように、視覚センサ100およびロボット制御装置200が同期して対象の搬送装置(コンベア)の位置情報を取得することで、ロボット制御装置200と視覚センサ100との間のネットワークNWを介した通信による遅延時間が問題となる場合であっても、その影響を回避することができる。この詳細については、後述する。
 <B.位置決めおよびトラッキング処理>
 次に、図1に示すコンベアシステムにおける位置決めおよびトラッキング処理の詳細について説明する。
 図2は、本発明の実施の形態1に係る視覚センサを利用したコンベアトラッキングシステムにおける位置決めおよびトラッキング処理を説明するための図である。図2を参照して、視覚センサ100は、内蔵の撮像部を用いてライン1を撮像する。視覚センサ100の撮像動作は、ロボット制御装置200からの撮像指示に応じて開始される。この撮像指示は、視覚センサ100とロボット制御装置200とを接続するネットワークNW経由で搬送される。このネットワークNWは、典型的には、イーサネット(登録商標)などの汎用的なネットワークを採用することができる。
 視覚センサ100は、撮像指示をロボット制御装置200から受信するように構成されており、この撮像指示に応答して撮像を開始する。これにより、視覚センサ100は、撮像視野を写した画像を順次取得する。そして、視覚センサ100は、当該画像に対して計測処理(典型的には、予め登録されたワークWについてのモデル画像に基づくパターンマッチング処理、あるいは、2値化処理)を実行する。さらに、視覚センサ100は、この計測処理によって得られた各ワークWの撮像時の位置情報(X,Y,θ)をロボット制御装置200へ送信する。このように、視覚センサ100は、撮像部の撮像によって得られた画像に対して計測処理を行うことで、画像中の予め登録されたワークに対応する領域の位置情報を取得する。
 位置情報は、コンベア10上のワークWの位置(X,Y)およびワークWの回転角度(θ)を含む。なお、ワークWの位置(X,Y)は、ロボット制御装置200における重複排除処理などを簡素化する観点から、ロボット300を制御するための座標系に換算した値が用いられる。例えば、図2に示すように、ロボット300のアーム(ピッキング)位置をX座標(コンベアの搬送方向)およびY座標(コンベアの搬送方向とは直交する方向)で定義しておき、このXY座標系(以下「ロボット座標系」とも称す。)を用いてパターンマッチング処理により検出された各ワークの位置を特定する。すなわち、位置情報は、撮像によって取得された画像中の予め登録されたワークに対応する領域を移動機械であるロボット300の座標系「ロボット座標系」で表した座標値を含む。このように、各ワークWの計測された位置情報をロボット座標系の値として出力できるように、視覚センサ100およびロボット制御装置200は、予めキャリブレーションされている。
 また、ワークWの回転角度(θ)は、ワークWのモデル画像を基準とした場合の回転角度を意味する。すなわち、位置情報は、予め登録されたワークの姿勢を基準とした、画像中の当該ワークに対応する領域の回転角度をさらに含む。ワークWの形状によっては、この回転角度の情報に基づいて、ロボット300のアームの回転角度などが適宜制御される。
 より具体的には、ロボット制御装置200は、エンコーダ14からのパルス信号に含まれるパルス数をカウントし、予め定められた値以上の数のパルスが入力されたタイミングで、ネットワークNWを経由して視覚センサ100に対して撮像指示を送出する。
 視覚センサ100からの各ワークの位置情報は、ネットワークNWを介してロボット制御装置200へ送信され、ロボット制御装置200の内部にあるメモリに格納される。視覚センサ100が順次撮像することで、同一のワークWが異なるタイミングで撮像されることもある。このような場合、同一のワークWについての位置情報が重複してロボット制御装置200へ送信されるが、このロボット制御装置200では、このような重複を排除した上で、メモリに記憶する。また、ロボット制御装置200は、エンコーダ14からのパルス信号を受けるたびに、メモリ内に格納されているすべてのワークWの位置情報(座標値X,Y)を更新する。これは、ロボット制御装置200のメモリ上において、実際にベルトコンベア上を搬送するワークWをトラッキングするためである。そして、いずれかのワークWの更新後の位置情報(座標値)がロボット300のトラッキング範囲に入ると、ロボット300に対して把持動作に必要な指示を与える。
 ライン1に設けられたエンコーダ14の検出結果に応じて生成されるパルス信号は、視覚センサ100およびロボット制御装置200へ入力されるように構成されている。視覚センサ100およびロボット制御装置200は、パルス信号に含まれるパルス数をカウントするためのエンコーダカウンタをそれぞれ有している。エンコーダ14からのパルス信号は、並列的に、視覚センサ100およびロボット制御装置200に入力されるので、それぞれのエンコーダカウンタを同じタイミングで初期化(カウンタリセット)しておけば、その後に入力されるパルス信号についてのカウンタ値は、互いに同じ値、すなわち、カウンタ値についての同期をとることができる。
 より具体的には、視覚センサ100およびロボット制御装置200には、いずれも、エンコーダ14からのパルス信号に含まれる1パルスあたりのコンベアの移動量が予め設定されている。さらに、視覚センサ100およびロボット制御装置200のそれぞれのエンコーダカウンタについても、互いに同一のパラメータ(カウンタ最大値、カウンタ最小値、1パルスに対する増加値など)が設定されている。すなわち、視覚センサ100のエンコーダカウンタは、ロボット制御装置200のエンコーダカウンタとの間で、カウントに関して同一のパラメータが設定されている。
 また、これらのエンコーダカウンタによるカウンタ値は、生産ラインの稼動前に0に初期化される。すなわち、視覚センサ100のエンコーダカウンタは、パルス信号に含まれるパルス数のカウント開始前に、ロボット制御装置200のエンコーダカウンタとともに、リセットされる。
 このように本実施の形態においては、視覚センサ100とロボット制御装置200との間でコンベア10の搬送経路における移動量を同期して保持する手段が実現される。
 特に、本実施の形態に係る視覚センサ100は、ロボット制御装置200からの撮像指示に従って実際に撮像を行ったときのカウンタ値を各ワークの位置情報に付加して、ロボット制御装置200へ送信する。上述したように、視覚センサ100とロボット制御装置200との間でカウンタ値を同期して保持しているため、ロボット制御装置200から撮像指示を送出したタイミングと、撮像指示に応答して視覚センサ100が実際に撮像を行ったタイミングとの間にライムラグがあっても、実際に撮像が行われたタイミングが共通の時間軸上で、すなわち同期されたカウンタ値を用いて、特定される。
 このように、視覚センサ100は、検出されたワークWの位置情報と当該位置情報の取得に用いた画像を撮像したときのコンベア10における移動量とをロボット制御装置200へ送信する。このワークWの位置情報の取得に用いた画像を撮像したときの移動量は、カウンタによるカウンタ値で示される。
 ロボット制御装置200では、視覚センサ100から受信した撮像時のカウンタ値を用いて、対応する位置情報を補正した上で、自装置のメモリに格納する。これによって、ライン速度が高く、撮像指示の出力から現実の撮像までのタイムラグが、ロボット300における位置決めおよびトラッキング処理に影響を与えるという事態を回避できる。
 <C.ハードウェア構成>
 図3は、本発明の実施の形態1に係る視覚センサを利用したコンベアトラッキングシステムのハードウェア構成について示す模式図である。図3を参照して、視覚センサ100は、撮像部110と、画像処理部120とを含む。
 撮像部110は、撮像視野に存在する被写体を撮像する装置であり、主体たる構成要素として、レンズや絞りなどの光学系と、CCD(Charge Coupled Device)イメージセンサやCMOS(Complementary Metal Oxide Semiconductor)イメージセンサなどの受光素子とを含む。撮像部110は、画像処理部120からの指令に従って撮像するとともに、その撮像によって得られた画像データを画像処理部120へ出力する。
 画像処理部120は、CPU(Central Processing Unit)122と、メモリ124と、撮像制御部126と、通信インターフェイス(I/F)128と、入出力インターフェイス(I/F)130と、エンコーダカウンタ132とを含む。これらのコンポーネントは、バス134を介して互いにデータ通信可能に接続されている。
 CPU122は、画像処理部120において主たる演算を行うプロセッサである。メモリ124は、CPU122によって実行される各種プログラム、撮像部110によって撮像された画像データ、各種パラメータなどを格納する。典型的には、メモリ124は、DRAM(Dynamic Random Access Memory)などの揮発性記憶装置と、FLASHメモリなどの不揮発性記憶装置とからなる。
 撮像制御部126は、CPU122などからの内部コマンドに従って、接続されている撮像部110における撮像動作を制御する。撮像制御部126は、撮像部110に対して各種コマンドを送信するインターフェイスと、撮像部110からの画像データを受信するインターフェイスとを有している。
 通信インターフェイス128は、ロボット制御装置200との間で各種データを遣り取りする。典型的には、視覚センサ100およびロボット制御装置200とはイーサネット(登録商標)を介して接続されており、通信インターフェイス128は、このようなイーサネット(登録商標)に準拠したハードウェアである。
 入出力インターフェイス130は、画像処理部120から外部へ各種信号を出力し、あるいは、外部からの各種信号を入力する。特に、入出力インターフェイス130は、エンコーダ14で生成されるパルス信号を受け入れ、その信号をデジタル信号に変換してエンコーダカウンタ132へ出力する。
 エンコーダカウンタ132は、エンコーダ14からのパルス信号に含まれるパルス数をカウントする。このエンコーダカウンタ132は、基本的には、CPU122の演算サイクルとは独立して動作するため、エンコーダ14からのパルス信号に含まれるパルス数を取り逃すことがない。
 一方、ロボット制御装置200は、演算処理部210と、通信インターフェイス(I/F)228と、入出力インターフェイス(I/F)230と、エンコーダカウンタ232と、ピッキング制御部240と、移動制御部250とを含む。
 演算処理部210は、視覚センサ100からの位置情報に基づいて、ロボット300および移動機構400に対してコマンドを出力するための演算を行うプロセッサであり、それぞれのワークWをトラッキングするためのメモリ220を含む。メモリ220には、視覚センサ100の計測処理によって検出されたそれぞれのワークWの位置情報が格納される。演算処理部210は、対象のコンベアの移動(エンコーダ14からのパルス信号に基づいて検出)に応じて、それぞれのワークWの位置情報を順次更新する。
 通信インターフェイス(I/F)228は、視覚センサ100の画像処理部120との間で各種データを遣り取りする。典型的には、視覚センサ100およびロボット制御装置200とはイーサネット(登録商標)を介して接続されており、通信インターフェイス228は、このようなイーサネット(登録商標)に準拠したハードウェアである。
 入出力インターフェイス230は、ロボット制御装置200から外部へ各種信号を出力し、あるいは、外部からの各種信号を入力する。特に、入出力インターフェイス230は、エンコーダ14で生成されるパルス信号を受け入れ、その信号をデジタル信号に変換してエンコーダカウンタ232へ出力する。
 エンコーダカウンタ232は、エンコーダ14からのパルス信号に含まれるパルス数をカウントする。このエンコーダカウンタ232は、基本的には、演算処理部210の演算サイクルとは独立して動作するため、エンコーダ14からのパルス信号に含まれるパルス数を取り逃すことがない。
 ピッキング制御部240は、演算処理部210などからの内部コマンドに従って、接続されているロボット300における把持動作を制御する。ピッキング制御部240は、ロボット300のそれぞれの可動軸における目標位置などを送信するインターフェイスと、ロボット300のそれぞれの可動軸における現在位置を受信するインターフェイスとを有している。
 移動機構400は、演算処理部210などからの内部コマンドに従って、接続されているロボット300を駆動する移動機構400におけるトラッキングを制御する。移動機構400は、移動機構400の目標位置および目標速度などを送信するインターフェイスと、移動機構400の移動軸における現在位置を受信するインターフェイスとを有している。
 <D.本発明に係る課題>
 次に、本発明に係る課題などについて、より詳細に説明する。
 図4は、本発明の実施の形態に係るコンベアトラッキングシステムを関連する構成と対比して示す図である。すなわち、図4(a)は、本発明に関連するコンベアトラッキングシステムの模式的構成を示し、図4(b)は、本実施の形態に係るコンベアトラッキングシステムの模式的構成を示す。
 図4(a)に示す本発明に関連するコンベアトラッキングシステムにおいては、コンベア10の移動量を検出するエンコーダ14からのパルス信号がロボット制御装置200にのみ入力されるものとする。この構成においては、ロボット制御装置200がエンコーダ14からのパルス信号に基づいて、コンベア10が所定距離だけ移動する毎に、画像処理部120Aに撮像指示を与える。画像処理部120Aは、ロボット制御装置200からの撮像指示に応答して、被写体を撮像し、その撮像によって得られた画像データに対して計測処理を実行する。そして、その計測処理の結果は、画像処理部120Aからロボット制御装置200へ返される。
 なお、撮像部110の前回の撮像における撮像範囲と今回の撮像における撮像範囲との間で少なくとも一部は重複するように、撮像部110による撮像タイミングが設定される。これは、コンベア10上を流れるすべてのワークWを撮像できるように、各撮像における撮像範囲間にある程度のマージンを設定する必要があるからである。
 図4(a)に示すようなシステム構成を採用した場合には、コンベアの搬送速度(ライン速度)が高まると、トラッキング処理を正確に行うことができない場合が生じる。以下、この理由については、図5および図6を参照して説明する。
 図5は、本発明に関連するトラッキングシステムにおける制御動作を示すシーケンス図である。図6は、本発明に関連するトラッキングシステムにおける制御動作を示すタイムチャートである。
 図5には、コンベア10が所定距離だけ移動する毎に、撮像部110に対してロボット制御装置200が撮像指示を(画像処理部120Aを介して)与える場合の処理を示す。図5を参照して、ロボット制御装置200の演算処理部210は、エンコーダ14からのパルス信号に含まれるパルス数が前回撮像したときの値から所定値以上増加したか否かを判断する(ステップS100)。すなわち、エンコーダカウンタ232での現在のカウンタ値が撮像タイミングに相当する距離以上増加したか否かが判断される。
 エンコーダ14からのパルス信号に含まれるパルス数が所定値以上に到達すれば、ロボット制御装置200の演算処理部210は、エンコーダカウンタ232を参照して、現在のカウンタ値(C0’)を取得する(ステップS102)。続いて、ロボット制御装置200の演算処理部210は、画像処理部120Aに対して、撮像指示を送信する(ステップS104)。この撮像指示は、ネットワークNWを介して、画像処理部120Aへ伝送される。画像処理部120Aは、ロボット制御装置200からの撮像指示に応答して、撮像部110に撮像を実行させる(ステップS106)。撮像部110が撮像して得られた画像は、画像処理部120Aへ伝送される。画像処理部120Aは、撮像部110からの画像に対して計測処理を実行する(ステップS108)。さらに、画像処理部120Aは、ステップS108における計測処理によって得られた計測結果(それぞれのワークの位置情報(X,Y,θ))をロボット制御装置200へ送信する(ステップS110)。
 ロボット制御装置200は、画像処理部120Aからの計測結果に基づいて、重複排除処理を実行する(ステップS112)。上述したように、連続する撮像の間でそれぞれの撮像範囲が重複するように、撮像部110における撮像タイミングが制御される。そのため、同一のワークWが複数の画像に含まれることもある。このような複数の画像に含まれる同一のワークWによるトラッキングの不具合を防ぐために、重複して取得された位置情報について削除する処理が重複排除処理である。
 ロボット制御装置200の演算処理部210は、新たなワークWについての位置情報が取得されたか否かを判断し(ステップS114)、新たなワークWについての位置情報が取得された場合(ステップS114においてYESの場合)には、メモリに当該新たな位置情報を格納する(ステップS116)。そして、処理はリターンする。
 このとき、ロボット制御装置200は、ステップS110において画像処理部120Aから送信される計測結果については、対応するステップS102において取得されたカウンタ値C0’において取得された値であると取扱う。そのため、コンベア10の移動に伴うワークWの位置情報(座標値X,Y)の更新処理においては、カウンタ値C0’と更新タイミングにおいて取得されたカウンタ値C1との差分に基づいて、更新量ΔX,ΔYが算出される。そのため、それぞれのワークWの位置情報と関連付けられる、撮像タイミングを示すカウンタ値C0’は実際の撮像タイミングを正確に反映させる必要がある。
 しかしながら、図4(a)に示す構成では、ステップS102において取得されるカウンタ値C0’は実際の撮像タイミングを正確に反映しない場合がある。すなわち、以下に示す(1)および(2)の要因によって、ロボット制御装置200が撮像指示を送信してから実際に撮像が行われるまでに遅延(タイムラグ)が発生する可能性があるため、コンベア10の搬送速度が高い場合には、取得されるカウンタ値が本来の撮像タイミングを示すカウンタ値から乖離するため、位置決めおよびトラッキング処理において無視できない誤差になり得る。
 (1) ロボット制御装置200がエンコーダ14からのパルス信号を一旦受けた上で、撮像指示を発生するので、パルス信号の入力タイミングから実際に撮像指示が出力されるまでに、ロボット制御装置200で実行されるプログラム1サイクル分の遅延が発生する。
 (2) ロボット制御装置200と画像処理部120Aとの間がネットワーク(例えば、イーサネット(登録商標))などを介して接続されている場合には、撮像指示の伝送遅延が発生する。
 図6を参照して、より具体的な制御動作について説明する。図6に示すタイムチャートにおいては、ロボット制御装置200は、エンコーダ14から3個のパルス数が発生するたびに、撮像指示を発生するものとする。エンコーダカウンタ232が初期化(カウンタリセット)されているのであれば、まず、エンコーダカウンタ232のカウンタ値が「3」に到達すると、撮像指示が画像処理部120Aへ出力される。但し、ロボット制御装置200の演算処理部210が、カウンタ値が「3」に到達したと判断できるのは、カウンタ値が実際に「3」に到達した後のタイミングであるので、コンベア10の搬送速度が相対的に大きな場合には、次のパルスが既に入力されている可能性もある。すなわち、図6に示すように、ロボット制御装置200が撮像指示を出力するタイミングにおいては、エンコーダカウンタ232のカウンタ値が既に「4」になっている可能性もある。
 さらに、ロボット制御装置200から画像処理部120AへネットワークNWを介して撮像指示が送信される場合には、その伝送遅延が発生し、さらに、撮像部110における撮像動作および画像処理部120Aにおける計測処理が直列的に実行され、その後、再度ネットワークを介して計測結果がロボット制御装置200へ戻される。
 このような一連の処理を経るため、例えば、エンコーダカウンタ232が「3」に到達したタイミングで撮像指示を出力するように設定したとしても、実際に撮像されるのは、エンコーダカウンタ232が「5」に到達したタイミングになっている可能性がある。
 本実施の形態に係る視覚センサ100では、このような遅延(タイムラグ)による位置決め処理およびトラッキング処理に対する影響を極力無くする方法を採用する。
 なお、上述のような遅延による誤差を軽減するために、カウンタ値に対して一定量のオフセットで補正するという対処方法も考えられるが、コンベア10の移動速度が変化するたびに当該オフセットを変更する必要があるため、実用的ではない。
 <E.本実施の形態における動作>
 次に、本実施の形態1に係るコンベアトラッキングシステムについて説明する。図4(b)に示す本実施の形態に係るコンベアトラッキングシステムにおいては、コンベア10の移動量を検出するエンコーダ14からのパルス信号がロボット制御装置200に加えて、視覚センサ100へも入力される。視覚センサ100およびロボット制御装置200は、それぞれエンコーダカウンタ132および232を有している。エンコーダカウンタの各々がエンコーダ14からのパルス信号に含まれるパルスを互いに独立にカウントする。但し、これらのエンコーダカウンタ132おおび232は、動作前にいずれもカウンタリセットされるとともに、カウント動作に係るパラメータが互いに同一に設定される。そのため、エンコーダカウンタ132によりカウントされるカウンタ値およびエンコーダカウンタ232によりカウントされるカウンタ値は、互いに同期して同じ値を示すことになる。
 このように、視覚センサ100とロボット制御装置200との間でカウンタ値を同期的に保持する環境を実現するとともに、視覚センサ100において撮像が行われた際のカウンタ値がその撮像によって得られた計測結果(それぞれのワークの位置情報)とともに、ロボット制御装置200へ送信される。このように、本実施の形態に係る視覚センサ100は、実際の撮像が行われたタイミングを示すカウンタ値をその計測結果と関連付けて出力する。これにより、ロボット制御装置200で実行される位置決めおよびトラッキングシステム処理を正確に行うことができる。さらに、ロボット制御装置200において重複排除処理が実行される場合には、当該重複排除処理についても正確に実行することができる。
 図7~図9を参照して、本実施の形態に係るトラッキングシステムにおける制御動作についてより詳細に説明する。
 図7は、本発明の実施の形態1に係るトラッキングシステムにおける制御動作を示すシーケンス図である。図8は、本発明の実施の形態1に係るトラッキングシステムにおいて送信される計測結果のフォーマット例を示す図である。図9は、本発明の実施の形態1に係るトラッキングシステムにおける制御動作を示すタイムチャートである。
 図7には、上述の図5と同様に、コンベア10が所定距離だけ移動する毎に、撮像部110に対してロボット制御装置200が視覚センサ100に対して撮像指示を与える場合の処理を示す。
 図7を参照して、まず、視覚センサ100およびロボット制御装置200のいずれに対しても、互いに同一のパラメータ(カウンタ最大値、カウンタ最小値、1パルスに対する増加値など)が設定される(ステップS1およびS2)。そして、視覚センサ100およびロボット制御装置200のいずれに対しても、それぞれのエンコーダカウンタに対するリセット(カウンタリセット)が実行される(ステップS3およびS4)。このようなエンコーダカウンタについての共通パラメータの設定およびカウンタリセットが実行されて、視覚センサ100およびロボット制御装置200との間で、エンコーダ14からのパルス信号に含まれるパルスの数についてのカウント動作を同期させることができる。
 続いて、ロボット制御装置200の演算処理部210は、エンコーダ14からのパルス信号に含まれるパルス数が前回撮像したときの値から所定値以上増加したか否かを判断する(ステップS5)。すなわち、エンコーダカウンタ232での現在のカウンタ値が撮像タイミングに相当する距離以上増加したか否かが判断される。
 エンコーダ14からのパルス信号に含まれるパルス数が所定値以上に到達すれば、ロボット制御装置200の演算処理部210は、視覚センサ100に対して、撮像指示を送信する(ステップS6)。この撮像指示は、ネットワークNWを介して、視覚センサ100へ伝送される。視覚センサ100の画像処理部120は、ロボット制御装置200からの撮像指示に応答して、視覚センサ100の画像処理部120は、エンコーダカウンタ132を参照して、撮像時のカウンタ値(C0)を取得する(ステップS7)。
 続いて、視覚センサ100の画像処理部120は、撮像部110に撮像を実行させる(ステップS8)。撮像部110が撮像して得られた画像は、画像処理部120へ伝送される。画像処理部120は、撮像部110からの画像に対して計測処理を実行する(ステップS9)。さらに、画像処理部120は、ステップS9における計測処理によって得られた計測結果(それぞれのワークの位置情報(X,Y,θ))を、ステップS7において取得したカウンタ値C0とともに、ロボット制御装置200へ送信する(ステップS10)。
 ロボット制御装置200は、画像処理部120からの計測結果に基づいて、重複排除処理を実行する(ステップS11)。この重複排除処理は、上述したものと同様の処理である。
 ロボット制御装置200の演算処理部210は、新たなワークWについての位置情報が取得されたか否かを判断し(ステップS12)、新たなワークWについての位置情報が取得された場合(ステップS12においてYESの場合)には、メモリに当該新たな位置情報を格納する(ステップS13)。そして、処理はリターンする。
 図7のシーケンス図のステップS10において送信される計測結果は、図8に示すようなフォーマットに従って送信される。図8には、一例として、モデル画像と一致するワークWが3個検出された場合のデータ例を示す。
 すなわち、第1番目のアイテムには、検出されたワークWの数である「3」が格納され、続く第2番目から第10番目のアイテムには、検出された3個のワークWについての位置情報(X座標値,Y座標値,回転角度θ)が格納される。さらに、最後のアイテムには、当該検出結果を生成するために用いられた画像が撮像されたタイミングを示すカウンタ値が格納される。図8に示す例では、カウンタ値が「100」のときに撮像が行われた例を示す。
 なお、図8に示すフォーマットは、検出数に応じて拡張されることは容易に理解されるであろう。なお、予め定められたモデル画像に一致するワークWが検出されなかった場合には、検出結果として「null」を送信してもよい。
 図9を参照して、本実施の形態に係るコンベアトラッキングシステムにおけるより具体的な制御動作について説明する。図9に示すタイムチャートにおいては、ロボット制御装置200は、エンコーダ14から3個のパルス数が発生するたびに、撮像指示を発生するものとする。
 上述したように、視覚センサ100およびロボット制御装置200のいずれに対しても、エンコーダカウンタに関して共通パラメータが設定され、かつ、いずれのエンコーダカウンタも予め初期化(カウンタリセット)されるので、エンコーダ14から発生するパルス信号に応答して、それぞれのエンコーダカウンタは実質的に同期してカウントアップすることになる。
 処理開始後、まず、エンコーダカウンタ232のカウンタ値が「3」に到達すると、視覚センサ100へ撮像指示が出力される。図6に示すタイムチャートと同様に、ロボット制御装置200が撮像指示を出力するタイミングにおいては、エンコーダカウンタ232のカウンタ値が既に「4」になっている可能性もある。さらに、ロボット制御装置200から視覚センサ100へネットワークNWを介して撮像指示が送信される場合には、その伝送遅延が発生する。
 一方、視覚センサ100から見れば、何らかのタイミングで撮像指示を受けると、撮像部110を用いた撮像動作および画像処理部120Aにおける計測処理を実行する。この撮像および計測処理と並行して、視覚センサ100では撮像時のカウンタ値が取得される。そして、視覚センサ100は、この撮像時のカウンタ値とともに、計測結果をロボット制御装置200へ送信する。
 以後同様にして、ロボット制御装置200から視覚センサ100へ撮像指示が出力され、視覚センサ100では、この撮像指示に応答して、撮像および計測処理が実行される。
 上述したように、視覚センサ100における撮像タイミングを示すカウンタ値が付加されて計測結果が送信されるので、ロボット制御装置200では、各計測値に対応するカウンタ値に基づいて正確なトラッキング処理を行うことができる。
 すなわち、本実施の形態に係るコンベアトラッキングシステムにおいては、ロボット制御装置200が撮像指示を送信するタイミングを厳密に制御する必要はなく(言い換えれば、コンベアの搬送速度に応じた周期で撮像指示が送信されれば十分である)、かつ、視覚センサ100からロボット制御装置200への計測結果の送信遅延は問題にならない。
 <F.撮像時カウンタ値の決定方法の変形例>
 上述の図9に示すタイムチャートにおいては、視覚センサ100の撮像動作の前にカウンタ値を取得する例を示したが、撮像動作は、エンコーダ14がパルス信号を発生するタイミングとは独立して行われるため、撮像動作中にカウンタ値が更新される場合もある。特に、搬送速度の高いベルトコンベアであれば、その可能性はより高くなる。
 また、撮像環境によっては、エンコーダ14がパルス信号を発生する周期より長い期間を撮像に要する場合も考えられる。
 このような場合には、撮像動作中(開始前および終了後も含む)の複数のタイミングでそれぞれカウンタ値を取得し、取得した複数のカウンタ値に基づいて、撮像タイミングを示すカウンタ値として決定してもよい。
 図10は、本発明の実施の形態1の変形例に係るトラッキングシステムにおける制御動作を示すタイムチャートである。図10に示すタイムチャートにおいては、一例として、撮像動作の前後においてそれぞれカウンタ値を取得し、当該取得した2つのカウンタ値を平均することで、撮像動作におけるカウンタ値として取扱う。
 このような処理を採用することで、撮像動作に要する時間がパルス信号の発生周期よりも長い場合であっても、撮像タイミングを示すカウンタ値を正確に取得することができる。
 <G.撮像指示発生の変形例>
 上述したように、本実施の形態に係るコンベアトラッキングシステムにおいては、ロボット制御装置200が撮像指示を送信するタイミングを厳密に制御する必要はない。そのため、ロボット制御装置200が撮像指示を発生する形態に代えて、視覚センサ100自身が内部的に撮像指示を発生してもよい。
 図11は、本発明の実施の形態1の別の変形例に係るトラッキングシステムにおける制御動作を示すタイムチャートである。図11に示す例では、視覚センサ100が自身のエンコーダカウンタ132のカウンタ値を参照して、エンコーダ14から3個のパルス数が発生するたびに、内部的に撮像指示を発生する。
 ロボット制御装置200から見れば、撮像動作が行われたタイミングを示すカウンタ値を取得することができるので、このような構成を採用したとしても、ワークの位置決めおよびトラッキング処理については、何ら問題なく実現できる。さらに、ネットワークNW上を撮像指示が伝送されないので、ネットワークNW上の負荷を軽減できる利点がある。
 <H.ロボット制御装置における処理>
 次に、ロボット制御装置200における処理について説明する。
 図12は、本発明の実施の形態1に係るロボット制御装置200における処理を示すフローチャートである。図12(a)~図12(d)には、ロボット制御装置200において実行される主要な処理を例示するが、ロボット制御装置200における処理は図12に示すものに限られない。
 図12(a)は、エンコーダ14がパルス信号を発生した場合に生じる処理を示す。より具体的には、図12(a)の処理は、エンコーダ14がパルス信号を発生し、エンコーダカウンタ232がカウントアップする(ステップS50)ことをイベントとして起動される。エンコーダカウンタ232がカウントアップすると、ロボット制御装置200のメモリに格納されているそれぞれのワークの位置情報が更新される(ステップS51)。この位置情報の更新方法については、以下のとおりである。
 図2に示すように、ワークがX方向に搬送され、ロボット300のトラッキング範囲の右端をX方向の原点とする。このとき、エンコーダ14の1パルスあたりのコンベアの移動量(移動ベクトル)を(ΔMx,ΔMy)とすると、更新前の位置情報が(X0,Y0,θ0)であるワークWの位置情報は、n個のパルスが入力したとすると、更新後の位置情報は、(X0-ΔMx×n,Y0-ΔMy×n,θ0)となる。すなわち、1パルス当たりのコンベア上の単位移動量にパルスの数を乗じて得られた値がワークWの移動量(ΔMx×n,My×n)となる。そして、ワークWが原点方向に移動しているとすると、この移動量(移動ベクトル)の分だけワークの位置情報が更新される。
 そして、エンコーダカウンタ232が新たにカウントアップするまで待つ。
 図12(b)においても、エンコーダ14がパルス信号を発生した場合に生じる処理を示す。より具体的には、図12(b)の処理は、エンコーダ14がパルス信号を発生し、エンコーダカウンタ232がカウントアップする(ステップS50)ことをイベントとして起動される。エンコーダカウンタ232がカウントアップすると、撮像指示の発生条件が成立したか否かが判断される。例えば、上述の例では、エンコーダ14からのパルス信号に含まれるパルス数が前回撮像したときの値から所定値以上増加したか否かが判断される。そして、撮像指示の発生条件が成立した場合(ステップS50においてYESの場合)には、ロボット制御装置200から視覚センサ100へ撮像指示が送信される。
 図12(c)は、ロボット300による把持動作について説明するものである。図12(c)のフローは、ワークの位置情報が更新された(ステップS60)ことをイベントとして起動される。より具体的には、ワークの位置情報が更新されると、ロボット300のトラッキング範囲内にいずれかのワークWが存在しているか否かが判断される(ステップS61)。ロボット300のトラッキング範囲内にいずれかのワークWが存在している場合(ステップS61においてYESの場合)には、ロボット300によるワークWの把持動作の制御が開始される。具体的には、トラッキング範囲内にある把持対象ワークの位置情報の取得(ステップS62)、把持対象ワークとロボット300との偏差の算出(ステップS63)、ステップS63において算出された偏差に基づいて、ロボット300および移動機構400についての指示の生成(ステップS64)、および、ワークWの位置情報の更新(ステップS65)が繰り返される。そして、ロボット300がワークWを把持することができる位置まで移動すると、ロボット制御装置200は、ロボット300に対して把持動作の指示を出力する(ステップS66)。続いて、把持状態のロボット300に対して、把持しているワークWを目的の位置まで移動させるための、移動動作の指示をロボット300に対して出力する(ステップS67)。そして処理は、リターンする。
 図12(d)は、他の位置情報を受けることをイベントとして起動される。より具体的には、現在の位置情報が算出され(ステップS69)、さらに、重複排除処理が実行される(ステップS70)。その後、位置情報がメモリへ格納される(ステップS71)。
 ステップS69に示すワークWの現在の位置情報の算出方法については、撮像時のカウンタ値と各時点のカウンタ値との差分を算出し、この差分に1パルス当たりのコンベア上の単位移動量を乗じて得られた値が補正量となる。この補正量を計測結果(視覚センサ100から受信したワークの位置情報)に適用することで、現在の位置情報が算出される。
 図13は、本発明の実施の形態1に係るトラッキングシステムにおける全体の制御動作を示すタイムチャートである。図13を参照して、例えば、ロボット制御装置200のエンコーダカウンタ232のカウンタ値が「7」になったタイミングで、撮像指示が生成されたとする。この撮像指示は、視覚センサ100へ送出され、撮像および計測処理が実行される。そして、視覚センサ100のエンコーダカウンタ132の撮像時のカウンタ値である「9」とともに、その計測結果がロボット制御装置200へ送信される。
 ロボット制御装置200は、視覚センサ100から計測結果を受信すると、重複排除処理などの後、関連付けられている(撮像時の)カウンタ値(この例では「9」)と、現在のカウンタ値(この例では「12」)とを比較し、その差分であるカウンタ値「3」だけ計測結果が補正される(座標計算)。さらに、ロボット制御装置200は、エンコーダカウンタ232がカウントアップするたびに、格納している位置情報(それぞれのワークの座標位置)を更新する(座標更新)。
 その後、対象のワークWがロボット300のトラッキング範囲に入ると、ロボット制御装置200は、ロボット300に対して把持動作を指示する。ロボット300による把持動作が完了すると、ロボット制御装置200に格納されているワークの位置情報は削除さ
れる。
 以上のような処理手順によって、本実施の形態に係るコンベアトラッキングが実現される。
 <I.利点>
 本実施の形態によれば、視覚センサ100(画像処理部120)がエンコーダ14からのパルス信号の入力を直接的に受けるため、撮像動作および当該撮像動作によって得られた画像に対する計測処理が、ロボット制御装置200のプログラム実行サイクルに影響されない。
 また、ロボット制御装置200からの撮像指示がどのようなタイミングで発行されても、視覚センサ100(撮像部110)における撮像時のカウンタ値を正確に取得することができる。これにより、撮像指示と実際の撮像動作との間に無視できない遅延時間が生じるとしても、正確なトラッキング処理およびロボット300の正確な制御が可能となる。
 さらに、コンベアの速度が変化した場合でも、撮像時のカウンタ値を正確に取得することができるため、カウンタ動作に係るパラメータをコンベア速度に依存して調整する必要がない。
 [実施の形態2]
 上述した実施の形態1においては、視覚センサ100およびロボット制御装置200のいずれにもエンコーダ14からのパルス信号が入力され、それぞれの主体が同一のパラメータに設定されたエンコーダカウンタ132および232で当該パルス信号に含まれるパルスの数をカウントすることで、コンベアの移動量(カウンタ値)を同期して保持する。これに対して、実施の形態2においては、ネットワークを介して、コンベアの移動量(カウンタ値)を同期して保持する構成について例示する。
 図14は、本発明の実施の形態2に係る視覚センサを利用したコンベアトラッキングシステムにおける位置決めおよびトラッキング処理を説明するための図である。図14を参照して、実施の形態2に係る視覚センサを利用したコンベアトラッキングシステムは、エンコーダ14からのパルス信号が視覚センサ100#にのみ入力されており、かつ、視覚センサ100#とロボット制御装置200#との間にフィールドネットワークFNが設けられている点において、図2に示す実施の形態1に係る視覚センサを利用したコンベアトラッキングシステムとは異なっている。その他の構成については、実施の形態1と同様であるので、以下では、主として相違点についてのみ説明する。
 図15は、本発明の実施の形態2に係る視覚センサを利用したコンベアトラッキングシステムのハードウェア構成について示す模式図である。図15を参照して、実施の形態2に係る視覚センサ100#を構成する画像処理部120#は、図3に示す画像処理部120に比較して、フィールドネットワークインターフェイス(I/F)160をさらに備えている。また、実施の形態2に係るロボット制御装置200#は、図3に示すロボット制御装置200に比較して、エンコーダカウンタ232および入出力インターフェイス(I/F)230に代えて、フィールドネットワークインターフェイス(I/F)260が設けられている。その他の構成については、実施の形態1と同様であるので、以下では、主として相違点についてのみ説明する。
 視覚センサ100#を構成する画像処理部120#とロボット制御装置200#との間では、フィールドネットワークFNを介して、画像処理部120#内のエンコーダカウンタ132でカウントされるカウンタ値が共有される。
 フィールドネットワークFNとしては、典型的には、各種の産業用イーサネット(登録商標)を用いることができる。産業用イーサネット(登録商標)としては、例えば、EtherCAT(登録商標)、Profinet IRT、MECHATROLINK(登録商標)-III、Powerlink、SERCOS(登録商標)-III、CIP Motionなどが知られており、これらのうちのいずれを採用してもよい。さらに、産業用イーサネット(登録商標)以外のフィールドネットワークを用いてもよい。例えば、モーション制御を行わない場合であれば、DeviceNet、CompoNet/IP(登録商標)などを用いてもよい。本実施の形態においては、典型的に、産業用イーサネット(登録商標)であるEtherCAT(登録商標)をフィールドネットワークFNとして採用する。
 一般的なフィールドネットワークでは、送受信に係る遅延時間が一定になるように構成されており、この遅延時間は数ns程度に抑えることができる。そのため、上述したような、ロボット制御装置200が撮像指示を送信してから実際に撮像が行われるまでに遅延(タイムラグ)に比べれば十分に小さく、視覚センサ100#とロボット制御装置200#との間で、カウント値を実質的に同期して保持しているとみなすことができる。
 そのため、実施の形態1において説明したような共通のパラメータが設定されたエンコーダカウンタをそれぞれ設ける必要がなく、より簡素な構成で、2つの装置間でカウンタ値を同期して保持できる。すなわち、視覚センサ100とロボット制御装置200との間でコンベア10の搬送経路における移動量を同期して保持する手段としては、視覚センサ100(または、ロボット制御装置200)に設けられたパルス信号に含まれるパルス数をカウントするためのカウンタと、当該カウンタによるカウンタ値を装置間で実質的に同期して共有するフィールドネットワークFNとにより実現される。
 なお、フィールドネットワークFN内の遅延時間の大きさが無視できない場合であっても、フィールドネットワークFNにおける遅延時間は一定値に制御されるので、以下のような方法によって、カウンタ値を同期して保持することができる。
 図16は、本発明の実施の形態2に係るフィールドネットワークFNにおける遅延時間の影響を説明するための図である。図16を参照して、例えば、視覚センサ100#で更新されるカウンタ値が遅延時間ΔDだけ遅れて、ロボット制御装置200#に伝えられるとする。この遅延時間ΔDは基本的には一定(予想可能)であるので、この遅延時間ΔDを考慮して制御タイミングなどをずらすような対処が考えられる。
 例えば、視覚センサ100#がカウンタ値に基づいて開始する制御動作の開始タイミングを遅延時間ΔDだけ遅延させれば、ロボット制御装置200#との間の遅延時間ΔDを実質的に相殺できる。
 あるいは、遅延時間ΔDがカウンタ値の更新周期より長い場合には、エンコーダ14からのパルス信号に含まれるパルス周期に遅延時間ΔDを乗じて得られる補正量(カウンタ補正値)をカウンタ値に加えて、制御に用いるようにしてもよい。
 なお、上述の実施の形態2においては、視覚センサ100#がフィールドネットワークFNのホストとなり、ロボット制御装置200#がフィールドネットワークFNのスレーブとして構成される例を示したが、ホストとスレーブとの関係は逆であってもよい。この場合には、ロボット制御装置200#側にのみエンコーダ14からのパルス信号が入力するとともに、ロボット制御装置200#内にエンコーダカウンタが設けられる。
 [実施の形態3]
 次に、視覚センサ100およびロボット制御装置200とネットワークNWを介して接続されるサポート装置600について説明する。
 図17は、本発明の実施の形態3に係るサポート装置600のハードウェア構成を示す模式図である。サポート装置600は、典型的には、汎用のコンピュータで構成される。なお、メンテナンス性の観点からは、可搬性に優れたノート型のパーソナルコンピュータが好ましい。
 図17を参照して、サポート装置600は、OSを含む各種プログラムを実行するCPU61と、BIOSや各種データを格納するROM(Read Only Memory)62と、CPU61でのプログラムの実行に必要なデータを格納するための作業領域を提供するメモリRAM63と、CPU61で実行されるプログラムなどを不揮発的に格納するハードディスク(HDD)64とを含む。
 サポート装置600は、さらに、ユーザからの操作を受付けるキーボード65およびマウス66と、情報をユーザに提示するためのモニタ67とを含む。
 後述するように、サポート装置600で実行される各種プログラムは、CD-ROM69に格納されて流通する。このCD-ROM69に格納されたプログラムは、CD-ROM(Compact Disk-Read Only Memory)ドライブ68によって読取られ、ハードディスク(HDD)64などへ格納される。あるいは、上位のホストコンピュータなどからネットワークを通じてプログラムをダウンロードするように構成してもよい。
 上述したように、サポート装置600は、汎用的なコンピュータを用いて実現されるので、これ以上の詳細な説明は行わない。
 このようなサポート装置600は、視覚センサ100およびロボット制御装置200のいずれともデータ通信可能であるので、各種のデータを収集することができる。そこで、本実施の形態に係るサポート装置600は、調整時において計測処理の対象となった画像を視覚センサ100から収集するように構成される。
 この視覚センサ100から計測処理の対象となった画像を収集する場合に、対応する、カウンタ値および計測値(座標情報および角度等)と各画像とを関連付けて保存する。これらの情報は、ネットワークNWを介して、視覚センサ100からサポート装置600へ送信される。そして、サポート装置600のハードディスク64などに格納される。
 特に、対応するカウンタ値をキーとして、画像および計測結果を関連付けて保存することで、所望のタイミングに対応するカウンタ値を用いて、必要な画像および計測結果を容易に検索することができる。
 このような画像および計測結果のデータベースを用意することで、以下のような機能を提供することができる。すなわち、ロボット300において、ロボット動作(位置決めおよびトラッキング処理)をカウンタ値と関連付けて記録しておくことで、ロボット動作と対応する画像処理を関連付けることができる。これにより、例えば、把持動作が失敗した場合などに、その失敗した原因を追求するために、把持対象であったワークの画像および計測結果をサポート装置600上で再現できる。そのため、不具合原因をより容易に解析することができる。
 今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
 10 コンベア、12 駆動ローラ、14 エンコーダ、30 搬出装置、61,122 CPU、63 RAM、64 ハードディスク、65 キーボード、66 マウス、67 モニタ、68 ドライブ、69 CD-ROM、100 視覚センサ、110 撮像部、120,120A 画像処理部、124,220 メモリ、126 撮像制御部、128,228 通信インターフェイス、130,230 入出力インターフェイス、132,232 エンコーダカウンタ、134 バス、200 ロボット制御装置、210 演算処理部、240 ピッキング制御部、250 移動制御部、300 ロボット、400 移動機構、500 操作表示装置、600 サポート装置、2100 ティーチングペンダント、FN フィールドネットワーク、NW ネットワーク、W ワーク。

Claims (10)

  1.  搬送装置上を搬送されるワークを撮像するように配置された撮像部に接続される画像処理装置であって、
     前記搬送装置の搬送経路における移動量を示す信号を受付けるインターフェイスと、
     前記搬送経路において前記撮像部の撮像範囲より下流側に配置されるとともに前記ワークを取り扱う移動機械、を制御するための制御装置と通信するためのインターフェイスと、
     前記撮像部の撮像によって得られた画像に対して計測処理を行うことで、画像中の予め登録されたワークに対応する領域の位置情報を取得する手段と、
     前記制御装置との間で前記搬送経路における移動量を同期して保持する手段と、
     撮像指示に応答して前記撮像部による撮像を開始する手段と、
     前記位置情報と当該位置情報の取得に用いた画像を撮像したときの移動量とを前記制御装置へ送信する手段とを備える、画像処理装置。
  2.  前記位置情報は、前記画像中の予め登録されたワークに対応する領域を前記移動機械の座標系で表した座標値を含む、請求項1に記載の画像処理装置。
  3.  前記位置情報は、予め登録されたワークの姿勢を基準とした、前記画像中の当該ワークに対応する領域の回転角度をさらに含む、請求項2に記載の画像処理装置。
  4.  前記搬送装置の搬送経路における移動量を示す信号は、パルス信号である、請求項1~3のいずれか1項に記載の画像処理装置。
  5.  前記パルス信号は、前記画像処理装置および前記制御装置に入力されるように構成されており、
     前記同期して保持する手段は、前記パルス信号に含まれるパルス数をカウントするための第1のカウンタを含み、
     前記第1のカウンタは、前記制御装置が前記パルス信号に含まれるパルス数をカウントするための第2のカウンタとの間で、カウントに関して同一のパラメータが設定されている、請求項4に記載の画像処理装置。
  6.  前記第1のカウンタは、前記パルス信号に含まれるパルス数のカウント開始前に、前記第2のカウンタとともに、リセットされる、請求項5に記載の画像処理装置。
  7.  前記パルス信号は、前記画像処理装置に入力されるように構成されており、
     前記同期して保持する手段は、前記パルス信号に含まれるパルス数をカウントするためのカウンタを含み、
     前記制御装置へ送信する手段は、送受信に係る遅延時間が一定になるように構成されている、請求項4に記載の画像処理装置。
  8.  前記位置情報の取得に用いた画像を撮像したときの移動量は、カウンタによるカウンタ値で示される、請求項5~7のいずれか1項に記載の画像処理装置。
  9.  前記画像処理装置は、前記撮像指示を前記制御装置から受信するように構成されている、請求項1に記載の画像処理装置。
  10.  搬送装置上を搬送されるワークを撮像するように配置された撮像部と、
     前記搬送装置の搬送経路において前記撮像部の撮像範囲より下流側に配置されるとともに前記ワークを取り扱う移動機械、を制御するための制御装置と、
     前記撮像部および前記制御装置に接続される画像処理装置とを備え、
     前記画像処理装置は、
      前記搬送装置の搬送経路における移動量を示す信号を受付けるインターフェイスと、
      前記撮像部の撮像によって得られた画像に対して計測処理を行うことで、画像中の予め登録されたワークに対応する領域の位置情報を取得する手段と、
      前記制御装置との間で前記搬送経路における移動量を同期して保持する手段と、
      撮像指示に応答して前記撮像部による撮像を開始する手段と、
      前記位置情報と当該位置情報の取得に用いた画像を撮像したときの移動量とを前記制御装置へ送信する手段とを備える、画像処理システム。
PCT/JP2011/056230 2011-02-15 2011-03-16 画像処理装置および画像処理システム WO2012111173A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP11858578.5A EP2653414B1 (en) 2011-02-15 2011-03-16 Image processing apparatus and image processing system
CN201180064575.4A CN103313921B (zh) 2011-02-15 2011-03-16 图像处理装置及图像处理系统
KR1020137015181A KR101485722B1 (ko) 2011-02-15 2011-03-16 화상 처리 장치 및 화상 처리 시스템
US13/957,467 US9741108B2 (en) 2011-02-15 2013-08-02 Image processing apparatus and image processing system for conveyor tracking

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011029435A JP5316563B2 (ja) 2011-02-15 2011-02-15 画像処理装置および画像処理システム
JP2011-029435 2011-02-15

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/957,467 Continuation US9741108B2 (en) 2011-02-15 2013-08-02 Image processing apparatus and image processing system for conveyor tracking

Publications (1)

Publication Number Publication Date
WO2012111173A1 true WO2012111173A1 (ja) 2012-08-23

Family

ID=46672131

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/056230 WO2012111173A1 (ja) 2011-02-15 2011-03-16 画像処理装置および画像処理システム

Country Status (6)

Country Link
US (1) US9741108B2 (ja)
EP (1) EP2653414B1 (ja)
JP (1) JP5316563B2 (ja)
KR (1) KR101485722B1 (ja)
CN (1) CN103313921B (ja)
WO (1) WO2012111173A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104102226A (zh) * 2013-04-08 2014-10-15 欧姆龙株式会社 控制系统及控制方法
CN108778637A (zh) * 2016-04-15 2018-11-09 欧姆龙株式会社 致动器控制系统、致动器控制方法、信息处理程序及记录介质

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103569628A (zh) * 2012-07-18 2014-02-12 上海朝洋机电设备有限公司 测距数粒和定距移动的定量数粒方法及装置
US20150134099A1 (en) * 2013-11-08 2015-05-14 Startechno Co., Ltd. Workpiece machining device with calibration function and workpiece machining device
CN103792379A (zh) * 2013-11-11 2014-05-14 珠海市远光共创智能科技股份有限公司 煤样取样系统
CN105329485A (zh) * 2014-08-11 2016-02-17 达和机械(昆山)有限公司 包装物自动抓取输送装置
JP5893695B1 (ja) * 2014-09-10 2016-03-23 ファナック株式会社 物品搬送システム
CN104760453B (zh) * 2015-04-13 2017-06-06 武汉申安机电工程有限责任公司 一种刻印机自动上下料装置及其控制方法
CN106276138A (zh) * 2015-05-20 2017-01-04 陈景洪 物料进入输送机图像检控装置
CN106276137A (zh) * 2015-05-20 2017-01-04 陈景洪 采用图像技术的输送机物料数据跟踪装置
JP6637687B2 (ja) * 2015-07-01 2020-01-29 オークマ株式会社 工作機械の主軸負荷モニタ装置
CN107921639B (zh) * 2015-08-25 2021-09-21 川崎重工业株式会社 多个机器人系统间的信息共享系统及信息共享方法
MX2018005983A (es) 2015-11-13 2019-04-22 Applied Lifesciences And Systems Llc Sistema automatico y metodo para suministrar una sustancia a un animal.
JP6601179B2 (ja) * 2015-11-18 2019-11-06 オムロン株式会社 シミュレーション装置、シミュレーション方法、およびシミュレーションプログラム
JP6458713B2 (ja) 2015-11-18 2019-01-30 オムロン株式会社 シミュレーション装置、シミュレーション方法、およびシミュレーションプログラム
JP6728842B2 (ja) * 2016-03-24 2020-07-22 オムロン株式会社 光学計測装置
JP6689974B2 (ja) * 2016-07-06 2020-04-28 株式会社Fuji 撮像装置及び撮像システム
JP6737018B2 (ja) * 2016-07-08 2020-08-05 オムロン株式会社 光学計測装置
JP2018024044A (ja) 2016-08-09 2018-02-15 オムロン株式会社 情報処理システム、情報処理装置、ワークの位置特定方法、およびワークの位置特定プログラム
JP6834232B2 (ja) 2016-08-09 2021-02-24 オムロン株式会社 情報処理システム、情報処理装置、ワークの位置特定方法、およびワークの位置特定プログラム
JP6599827B2 (ja) 2016-08-29 2019-10-30 ファナック株式会社 ワーク取出システム
EP3330815B1 (en) * 2016-12-02 2019-02-06 Omron Corporation Simulator, simulation method, and simulation program
JP6457468B2 (ja) 2016-12-08 2019-01-23 ファナック株式会社 バリ取り装置
JP7047249B2 (ja) * 2017-01-10 2022-04-05 オムロン株式会社 画像処理システム、画像処理装置、ワークのピックアップ方法、および、ワークのピックアッププログラム
JP6790861B2 (ja) * 2017-01-20 2020-11-25 オムロン株式会社 検査システム、コントローラ、検査方法、および検査プログラム
JP7009751B2 (ja) * 2017-03-15 2022-01-26 オムロン株式会社 計測システム、制御装置、計測方法
JP6392922B1 (ja) * 2017-03-21 2018-09-19 ファナック株式会社 検査システムの検査対象外となる領域を算出する装置、および検査対象外となる領域を算出する方法
JP6662492B2 (ja) * 2017-05-15 2020-03-11 東芝三菱電機産業システム株式会社 プラント操業状態解析システム
JP6598820B2 (ja) * 2017-06-07 2019-10-30 株式会社Screenホールディングス 搬送装置、搬送方法および検査システム
DE102018116413A1 (de) * 2017-07-12 2019-01-17 Fanuc Corporation Robotersystem
DE102017007353A1 (de) * 2017-08-04 2019-02-07 Audi Ag Fertigungsanlage mit einem MRK-Roboter sowie Verfahren zum Betreiben einer solchen Fertigungsanlage
CN108296564A (zh) * 2018-01-25 2018-07-20 石宝聪 一种自动定位的产品水口剪切机
JP6605638B2 (ja) * 2018-02-02 2019-11-13 本田技研工業株式会社 制御処理装置
JP6859967B2 (ja) * 2018-02-16 2021-04-14 オムロン株式会社 コンベアトラッキングシステムおよびキャリブレーション方法
JP6919596B2 (ja) * 2018-03-01 2021-08-18 オムロン株式会社 計測システムおよび方法
JP6879238B2 (ja) * 2018-03-13 2021-06-02 オムロン株式会社 ワークピッキング装置及びワークピッキング方法
KR102600893B1 (ko) * 2018-04-13 2023-11-10 삼성디스플레이 주식회사 패널 이송 장치 및 패널 이송 방법
JP6901434B2 (ja) 2018-06-15 2021-07-14 ファナック株式会社 ロボットシステムおよびロボット
US10576526B2 (en) * 2018-07-03 2020-03-03 Komatsu Industries Corporation Workpiece conveying system, and workpiece conveying method
US11336831B2 (en) * 2018-07-06 2022-05-17 Canon Kabushiki Kaisha Image processing device, control method, and program storage medium
CN110356835A (zh) * 2018-08-14 2019-10-22 天津京东深拓机器人科技有限公司 包裹分配系统
JP7084841B2 (ja) * 2018-10-12 2022-06-15 住友重機械工業株式会社 制御装置、画像情報取得装置システム、撮像制御システム及び印刷システム
CN109748096A (zh) * 2018-12-11 2019-05-14 上海航天化工应用研究所 基于视觉定位系统的多自由度圆桶体危险工件抓取机构
CN109436431A (zh) * 2018-12-14 2019-03-08 贵州西南工具(集团)有限公司 一种压缩机滑片开口调整装置及调整方法
JP7056613B2 (ja) 2019-03-08 2022-04-19 オムロン株式会社 カウンタユニット、カウンタユニットの制御方法、制御装置、および制御システム
JP6898374B2 (ja) 2019-03-25 2021-07-07 ファナック株式会社 ロボット装置の動作を調整する動作調整装置およびロボット装置の動作を調整する動作調整方法
JP7363098B2 (ja) * 2019-05-24 2023-10-18 セイコーエプソン株式会社 ロボットの制御方法
CN110260666A (zh) * 2019-06-28 2019-09-20 九牧厨卫股份有限公司 一种卫生陶瓷品自动装窑装置及自动装窑方法
US11213953B2 (en) * 2019-07-26 2022-01-04 Google Llc Efficient robot control based on inputs from remote client devices
JP6788235B1 (ja) * 2019-07-30 2020-11-25 オムロン株式会社 情報管理システム、情報管理方法
WO2021035675A1 (zh) * 2019-08-30 2021-03-04 深圳市大疆创新科技有限公司 一种拍摄方法、装置及拍摄设备
CN110803481B (zh) * 2019-11-12 2021-07-23 山东大学 一种基于传感网络的智能传输装置
CN110841926A (zh) * 2019-12-05 2020-02-28 江西龙腾生物高科技有限公司 一种全自动采血管分拣机
US11584004B2 (en) * 2019-12-17 2023-02-21 X Development Llc Autonomous object learning by robots triggered by remote operators
JP6838672B2 (ja) * 2020-04-07 2021-03-03 オムロン株式会社 アクチュエータ制御システム、センサ装置、制御装置、アクチュエータ制御方法、情報処理プログラム、および記録媒体
JP7336678B2 (ja) * 2020-12-15 2023-09-01 パナソニックIpマネジメント株式会社 ピッキング装置
JP2023006307A (ja) * 2021-06-30 2023-01-18 オムロン株式会社 制御システム
CN116986218B (zh) * 2022-06-21 2024-06-04 九众九机器人有限公司 一种应用于流水线的工业用品定位方法和流水线设备
DE102022120823A1 (de) 2022-08-17 2024-02-22 Krones Aktiengesellschaft Vorrichtung und Verfahren zum Inspizieren von Behältnissen

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0972717A (ja) 1995-09-04 1997-03-18 Fanuc Ltd 画像の取得・処理方法
JPH10139146A (ja) * 1996-11-06 1998-05-26 Seiko Seiki Co Ltd トラッキングシステム
JPH10249766A (ja) * 1997-03-10 1998-09-22 Yaskawa Electric Corp ロボットの制御方法
JP2000071188A (ja) * 1998-08-28 2000-03-07 Aisin Seiki Co Ltd 部品供給装置
JP2002037441A (ja) * 2000-07-19 2002-02-06 Kawasaki Heavy Ind Ltd ランダムワークの整列方法および整列装置
JP2005063176A (ja) 2003-08-13 2005-03-10 Yaskawa Electric Corp 物体認識装置
JP2005111607A (ja) * 2003-10-07 2005-04-28 Fanuc Ltd ロボット物流トラッキング装置
JP2005262369A (ja) * 2004-03-18 2005-09-29 Yaskawa Electric Corp ロボットシステム
JP2005293567A (ja) 2004-03-12 2005-10-20 Omron Corp 計測装置
WO2006075354A1 (ja) 2005-01-11 2006-07-20 Mitsubishi Denki Kabushiki Kaisha 画像処理システム
JP2007015055A (ja) * 2005-07-07 2007-01-25 Toshiba Mach Co Ltd ハンドリング装置、作業装置及びプログラム
JP2008296330A (ja) * 2007-05-31 2008-12-11 Fanuc Ltd ロボットシミュレーション装置
JP2009297881A (ja) * 2008-06-17 2009-12-24 Toshiba Mach Co Ltd ハンドリング装置、制御装置及び制御方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4613269A (en) * 1984-02-28 1986-09-23 Object Recognition Systems, Inc. Robotic acquisition of objects by means including histogram techniques
US4876728A (en) * 1985-06-04 1989-10-24 Adept Technology, Inc. Vision system for distinguishing touching parts
US5041907A (en) * 1990-01-29 1991-08-20 Technistar Corporation Automated assembly and packaging system
JP3834088B2 (ja) * 1995-11-10 2006-10-18 ファナック株式会社 複数のロボットにトラッキング動作を行なわせるための視覚センサ・ロボットシステム
AU742980B2 (en) 1999-10-13 2002-01-17 Kawasaki Jukogyo Kabushiki Kaisha Random work arranging device
US6483935B1 (en) * 1999-10-29 2002-11-19 Cognex Corporation System and method for counting parts in multiple fields of view using machine vision
CN1832894B (zh) * 2003-09-03 2010-07-21 凤凰股份有限公司 监视输送设备的装置
JP2007033328A (ja) * 2005-07-28 2007-02-08 Nachi Fujikoshi Corp 画像処理方法および該画像処理方法を用いたピッキング動作補正方法
EP1927038A2 (en) * 2005-09-23 2008-06-04 Braintech Canada, Inc. System and method of visual tracking
JP4811644B2 (ja) * 2005-12-28 2011-11-09 株式会社ダイフク 物品状態検出装置
US20110175997A1 (en) * 2008-01-23 2011-07-21 Cyberoptics Corporation High speed optical inspection system with multiple illumination imagery
JP2010030281A (ja) * 2008-06-27 2010-02-12 Canon Inc 搬送装置及び記録装置
US9046890B2 (en) * 2008-09-05 2015-06-02 Fanuc Robotics America, Inc. Line tracking data over Ethernet
JP5509773B2 (ja) * 2009-01-21 2014-06-04 オムロン株式会社 パラメータ決定支援装置およびパラメータ決定支援プログラム

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0972717A (ja) 1995-09-04 1997-03-18 Fanuc Ltd 画像の取得・処理方法
JPH10139146A (ja) * 1996-11-06 1998-05-26 Seiko Seiki Co Ltd トラッキングシステム
JPH10249766A (ja) * 1997-03-10 1998-09-22 Yaskawa Electric Corp ロボットの制御方法
JP2000071188A (ja) * 1998-08-28 2000-03-07 Aisin Seiki Co Ltd 部品供給装置
JP2002037441A (ja) * 2000-07-19 2002-02-06 Kawasaki Heavy Ind Ltd ランダムワークの整列方法および整列装置
JP2005063176A (ja) 2003-08-13 2005-03-10 Yaskawa Electric Corp 物体認識装置
JP2005111607A (ja) * 2003-10-07 2005-04-28 Fanuc Ltd ロボット物流トラッキング装置
JP2005293567A (ja) 2004-03-12 2005-10-20 Omron Corp 計測装置
JP2005262369A (ja) * 2004-03-18 2005-09-29 Yaskawa Electric Corp ロボットシステム
WO2006075354A1 (ja) 2005-01-11 2006-07-20 Mitsubishi Denki Kabushiki Kaisha 画像処理システム
JP2007015055A (ja) * 2005-07-07 2007-01-25 Toshiba Mach Co Ltd ハンドリング装置、作業装置及びプログラム
JP2008296330A (ja) * 2007-05-31 2008-12-11 Fanuc Ltd ロボットシミュレーション装置
JP2009297881A (ja) * 2008-06-17 2009-12-24 Toshiba Mach Co Ltd ハンドリング装置、制御装置及び制御方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104102226A (zh) * 2013-04-08 2014-10-15 欧姆龙株式会社 控制系统及控制方法
CN108778637A (zh) * 2016-04-15 2018-11-09 欧姆龙株式会社 致动器控制系统、致动器控制方法、信息处理程序及记录介质
CN108778637B (zh) * 2016-04-15 2021-07-13 欧姆龙株式会社 致动器控制系统、致动器控制方法及记录介质

Also Published As

Publication number Publication date
EP2653414A4 (en) 2015-07-22
KR20130085438A (ko) 2013-07-29
CN103313921A (zh) 2013-09-18
CN103313921B (zh) 2016-06-22
KR101485722B1 (ko) 2015-01-22
JP5316563B2 (ja) 2013-10-16
EP2653414A1 (en) 2013-10-23
EP2653414B1 (en) 2019-02-27
US20130329954A1 (en) 2013-12-12
JP2012166308A (ja) 2012-09-06
US9741108B2 (en) 2017-08-22

Similar Documents

Publication Publication Date Title
JP5316563B2 (ja) 画像処理装置および画像処理システム
JP6308248B2 (ja) コンベアトラッキング等に向けられたガイダンス装置
JP2012187651A (ja) 画像処理装置および画像処理システム、ならびにそれらに向けられたガイダンス装置
US11021333B2 (en) Conveyor tracking system and calibration method
JP5810562B2 (ja) 画像処理システムに向けられたユーザ支援装置、そのプログラムおよび画像処理装置
JP4174342B2 (ja) ワーク搬送装置
US8326460B2 (en) Robot system comprising visual sensor
TWI816056B (zh) 用以於環境中校正視覺系統的方法和系統
US9604365B2 (en) Device and method of transferring articles by using robot
WO2012124139A1 (ja) 画像処理装置および画像処理プログラム
JP6208419B2 (ja) 算出装置、搬送ロボットシステム、及び算出方法
JP2019119027A (ja) ロボットシステムの制御方法、およびロボットシステム
KR102218894B1 (ko) 중복인식 물체를 처리하는 컨베이어 벨트 영상 처리장치 및 방법
JP2006224291A (ja) ロボットシステム
JP2011140084A (ja) 制御装置、ロボット、ロボットシステム及びロボットの追従方法
US10395360B2 (en) Inspection system, controller, inspection method, and inspection program
JP7213010B2 (ja) ロボットシステム及び搬送されているワークに対して作業を行う方法
JP2021045835A (ja) ロボットシステム
WO2022030405A1 (ja) 制御システム、制御装置およびプログラム
JP2020149430A (ja) 画像処理装置、画像処理方法、及びプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11858578

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 20137015181

Country of ref document: KR

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2011858578

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE