KR20210004958A - Control system, control method and control program - Google Patents
Control system, control method and control program Download PDFInfo
- Publication number
- KR20210004958A KR20210004958A KR1020207026088A KR20207026088A KR20210004958A KR 20210004958 A KR20210004958 A KR 20210004958A KR 1020207026088 A KR1020207026088 A KR 1020207026088A KR 20207026088 A KR20207026088 A KR 20207026088A KR 20210004958 A KR20210004958 A KR 20210004958A
- Authority
- KR
- South Korea
- Prior art keywords
- target
- moving
- moving mechanism
- time
- control
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 25
- 230000033001 locomotion Effects 0.000 claims abstract description 88
- 230000000007 visual effect Effects 0.000 claims abstract description 51
- 238000003384 imaging method Methods 0.000 claims abstract description 44
- 238000004364 calculation method Methods 0.000 claims abstract description 11
- 238000012937 correction Methods 0.000 claims description 22
- 230000001133 acceleration Effects 0.000 claims description 11
- 238000001514 detection method Methods 0.000 claims description 7
- 238000005259 measurement Methods 0.000 abstract description 11
- 238000005516 engineering process Methods 0.000 abstract description 3
- 238000012545 processing Methods 0.000 description 33
- 230000006870 function Effects 0.000 description 29
- 238000004891 communication Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 14
- 238000003860 storage Methods 0.000 description 7
- 239000000872 buffer Substances 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 1
- 238000010304 firing Methods 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D3/00—Control of position or direction
- G05D3/12—Control of position or direction using feedback
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Control Of Position Or Direction (AREA)
- Manipulator (AREA)
Abstract
시각 센서(50)의 계측 위치에 기초하여 구동되는 이동 기구(400)를 보다 원활하게 구동하는 기술이 요구되고 있다. 제어 시스템(1)은, 대상물을 이동시키는 이동 기구(400)와, 제1 시간 간격마다 대상물을 촬상하여 얻어진 화상으로부터 대상물의 실제 위치를 순차 계측하는 시각 센서(50)와, 실제 위치에서 도달 목표 위치로 대상물을 이동시키기 위한 필요 이동 거리를 산출하는 산출부(250)와, 필요 이동 거리와 시각을 적어도 설명 변수로 하고, 이동 기구(400)의 목표 위치를 목적 변수로 하는 다차 함수로 나타나는 목표 궤도에 기초하여, 제1 시간 간격보다 짧은 제2 시간 간격마다, 현시각에 대응하는 목표 위치를 결정하는 위치 결정부(252)와, 그 목표 위치로 이동 기구(400)를 이동시키는 이동 제어부(254)를 구비한다.There is a demand for a technology to more smoothly drive the moving mechanism 400 driven based on the measurement position of the visual sensor 50. The control system 1 includes a moving mechanism 400 for moving an object, a visual sensor 50 for sequentially measuring the actual position of the object from an image obtained by imaging the object at each first time interval, and a target reaching the object at the actual position. A calculation unit 250 that calculates a required moving distance for moving an object to a position, and a target represented by a multi-order function with at least the required moving distance and time as explanatory variables and the target position of the moving mechanism 400 as a target variable Based on the trajectory, at every second time interval shorter than the first time interval, a positioning unit 252 that determines a target position corresponding to the current time, and a movement control unit that moves the movement mechanism 400 to the target position ( 254).
Description
본 개시는, 시각 센서에 의해 계측된 가공물의 위치에 기초하여, 가공물의 위치 결정을 행하기 위한 기술에 관한 것이다.The present disclosure relates to a technique for determining the position of a workpiece based on the position of the workpiece measured by a visual sensor.
FA(Factory Automation)에 있어서, 대상물의 위치를 목표 위치에 맞추는 기술(위치 결정 기술)이 각종 실용화되어 있다. 이 때, 대상물의 위치와 목표 위치의 편차(거리)를 계측하는 방법으로서, 시각 센서에 의해 촬상된 화상을 이용하는 방법이 있다.In FA (Factory Automation), various technologies (positioning technology) for matching the position of an object to a target position have been put into practice. At this time, as a method of measuring the deviation (distance) between the position of the object and the target position, there is a method of using an image captured by a visual sensor.
일본공개특허 2017-24134호 공보(특허문헌 1)에는, 가동대와, 가동대를 이동시키는 이동 기구와, 가동대에 놓인 가공물을 반복하여 촬상하고, 그 가공물의 위치를 반복하여 검출하는 시각 센서를 구비하는 가공물 위치 결정 장치가 개시되어 있다. 가공물 위치 결정 장치는, 시각 센서에 의해 위치가 검출될 때마다 검출된 위치와 목표 위치의 차를 산출하여, 이 차가 허용 범위 내라고 판정되었을 때에, 가동대의 이동을 정지한다. 가공물 위치 결정 장치는, 가동대의 이동 정지 후에 시각 센서에 의해 검출된 위치와 목표 위치의 차를 산출하여, 산출된 차가 허용 범위 내인지 여부를 판정한다. 차가 허용 범위 밖이라고 판정되면, 그 차를 줄이는 가동대의 이동 방향이 결정되고, 결정된 이동 방향으로 가동대를 이동시키도록 이동 기구가 제어된다.Japanese Patent Application Laid-Open No. 2017-24134 (Patent Document 1) discloses a movable table, a moving mechanism that moves the movable table, and a visual sensor that repeatedly photographs a workpiece placed on the movable table, and repeatedly detects the position of the workpiece. An apparatus for positioning a workpiece is disclosed. The workpiece positioning device calculates a difference between the detected position and the target position each time a position is detected by the visual sensor, and stops the movement of the movable table when it is determined that the difference is within an allowable range. The workpiece positioning apparatus calculates a difference between a position detected by a visual sensor and a target position after stopping the movement of the movable table, and determines whether the calculated difference is within an allowable range. When it is determined that the vehicle is outside the allowable range, the moving direction of the movable table to reduce the difference is determined, and the moving mechanism is controlled to move the movable table in the determined movement direction.
시각 센서에 의해 가공물의 실제 위치가 계측되는 간격은, 이동 기구에 지령값을 출력하는 간격보다 짧다. 그 때문에, 보다 원활하게 이동 기구를 구동하기 위해서는, 시각 센서가 가공물의 실제 위치를 계측하고 나서 다음으로 실제 위치를 계측하기까지의 동안에, 이동 기구에 출력하는 지령값을 어떠한 수단으로 보간할 필요가 있다.The interval at which the actual position of the workpiece is measured by the visual sensor is shorter than the interval at which the command value is output to the moving mechanism. Therefore, in order to drive the moving mechanism more smoothly, it is necessary to interpolate the command value output to the moving mechanism by some means while the visual sensor measures the actual position of the workpiece and then the next actual position. have.
본 개시는 상술한 바와 같은 문제점을 해결하기 위해 이루어진 것으로, 어떤 국면에서의 목적은, 시각 센서의 계측 위치에 기초하여 구동되는 이동 기구를 보다 원활하게 구동하는 것이 가능한 제어 시스템을 제공하는 것이다. 다른 국면에서의 목적은, 시각 센서의 계측 위치에 기초하여 구동되는 이동 기구를 보다 원활하게 구동하는 것이 가능한 제어 방법을 제공하는 것이다. 다른 국면에서의 목적은, 시각 센서의 계측 위치에 기초하여 구동되는 이동 기구를 보다 원활하게 구동하는 것이 가능한 제어 프로그램을 제공하는 것이다.The present disclosure has been made to solve the above-described problems, and an object in some aspects is to provide a control system capable of more smoothly driving a moving mechanism driven based on a measurement position of a visual sensor. An object in another aspect is to provide a control method capable of more smoothly driving a moving mechanism that is driven based on a measurement position of a visual sensor. An object in another aspect is to provide a control program capable of more smoothly driving a moving mechanism that is driven based on a measurement position of a visual sensor.
본 개시의 일례에서는, 제어 시스템은, 대상물을 이동시키기 위한 이동 기구와, 촬상 지시를 접수한 것에 기초하여 상기 대상물을 촬상하고, 촬상에 의해 얻어진 화상으로부터 상기 대상물의 실제 위치를 계측하기 위한 시각 센서와, 상기 실제 위치에서 소정의 도달 목표 위치로 상기 대상물을 이동시키기 위한, 상기 이동 기구의 필요 이동 거리를 산출하기 위한 산출부와, 상기 필요 이동 거리와 시각을 적어도 설명 변수로 하고, 상기 이동 기구의 목표 위치를 목적 변수로 하는 다차 함수로 나타나는 목표 궤도에 기초하여, 상기 촬상 지시가 상기 시각 센서에 출력되는 간격보다 짧은 미리 정해진 제어 주기마다, 현시각에 대응하는 목표 위치를 결정하기 위한 위치 결정부와, 상기 위치 결정부에 의해 결정되는 목표 위치로 상기 이동 기구를 이동시키기 위한 이동 제어부를 구비한다.In an example of the present disclosure, the control system includes a moving mechanism for moving the object, and a visual sensor for photographing the object based on receiving an imaging instruction, and measuring the actual position of the object from an image obtained by imaging. And, a calculation unit for moving the object from the actual position to a predetermined arrival target position and for calculating a required movement distance of the movement mechanism, and the movement mechanism having at least the required movement distance and time as explanatory variables. Position determination to determine a target position corresponding to the current time at each predetermined control period shorter than the interval in which the imaging instruction is output to the visual sensor, based on a target trajectory represented by a multi-order function using the target position of the target variable as a target variable And a movement control unit for moving the movement mechanism to a target position determined by the positioning unit.
이 개시에 의하면, 상기 제어 시스템은, 시각 센서가 대상물의 실제 위치를 계측하고 나서 다음으로 대상물의 실제 위치를 계측하기까지의 동안에, 이동 기구의 목표 위치를 보간할 수 있고, 이동 기구를 보다 원활하게 구동하는 것이 가능해진다.According to this disclosure, the control system can interpolate the target position of the moving mechanism, and make the moving mechanism more smooth from the time the visual sensor measures the actual position of the object until the next, the actual position of the object is measured. It becomes possible to drive it.
본 개시의 일례에서는, 상기 다차 함수는, 5차 이상의 함수이다.In an example of the present disclosure, the multi-order function is a function of order 5 or higher.
이 개시에 의하면, 상기 다차 함수가 5차 이상의 함수로 규정됨으로써, 이동 기구의 목표 위치가 보다 원활해진다.According to this disclosure, the target position of the moving mechanism becomes smoother by defining the multi-order function as a function of the fifth order or higher.
본 개시의 일례에서는, 상기 위치 결정부는, 상기 이동 기구의 가속도가 미리 정해진 최대 가속도를 초과하지 않도록, 상기 목표 궤도를 생성한다.In an example of the present disclosure, the positioning unit generates the target trajectory so that the acceleration of the moving mechanism does not exceed a predetermined maximum acceleration.
이 개시에 의하면, 상기 제어 시스템은, 이동 기구의 속도가 갑자기 변화하는 것을 억제할 수 있다.According to this disclosure, the control system can suppress sudden changes in the speed of the moving mechanism.
본 개시의 일례에서는, 상기 위치 결정부는, 상기 시각 센서가 상기 대상물의 실제 위치를 계측할 때마다 상기 목표 궤도를 생성하고, 새로 생성된 상기 목표 궤도로 전회에 생성된 상기 목표 궤도를 갱신한다.In an example of the present disclosure, the positioning unit generates the target trajectory each time the visual sensor measures the actual position of the object, and updates the target trajectory previously generated with the newly created target trajectory.
이 개시에 의하면, 목표 궤도의 오차는, 시각 센서의 촬상 주기마다 수정된다.According to this disclosure, the error of the target trajectory is corrected for each imaging cycle of the visual sensor.
본 개시의 일례에서는, 상기 위치 결정부는, 상기 목표 궤도의 갱신 전후에, 상기 이동 기구의 속도가 변화하지 않도록 새로운 상기 목표 궤도를 생성한다.In an example of the present disclosure, the positioning unit generates a new target trajectory so that the speed of the moving mechanism does not change before and after the target trajectory is updated.
이 개시에 의하면, 목표 궤도를 갱신하는 과정에서, 이동 기구 상에서의 대상물의 미끄러짐이나, 이동 기구의 위치 결정 후에서의 잔류 진동이 억제되고, 결과적으로 대상물의 정렬 시간이 단축된다.According to this disclosure, in the process of updating the target trajectory, slipping of the object on the moving mechanism or residual vibration after positioning the moving mechanism is suppressed, and as a result, the alignment time of the object is shortened.
본 개시의 일례에서는, 상기 제어 시스템은, 상기 제어 주기마다 상기 이동 기구의 실제 위치를 검출하기 위한 검출부와, 상기 목표 궤도의 갱신의 타이밍에서 상기 검출부에 의해 검출된 실제 위치와, 상기 타이밍에서의 상기 이동 기구의 목표 위치의 위치 편차로, 상기 필요 이동 거리를 보정하기 위한 보정부를 더 구비한다.In an example of the present disclosure, the control system includes a detection unit for detecting an actual position of the moving mechanism every control period, an actual position detected by the detection unit at a timing of updating the target trajectory, and at the timing. Further, a correction unit for correcting the required movement distance with a positional deviation of the target position of the movement mechanism is further provided.
이 개시에 의하면, 목표 궤도를 갱신하는 과정에서, 이동 기구의 위치의 오차가 흡수되어, 이동 기구의 속도가 급변하는 것이 방지된다. 그 결과, 대상물의 미끄러짐이나, 이동 기구의 위치 결정 후에서의 잔류 진동이 억제되고, 결과적으로 대상물의 정렬 시간이 단축된다.According to this disclosure, in the process of updating the target trajectory, an error in the position of the moving mechanism is absorbed, and the speed of the moving mechanism is prevented from suddenly changing. As a result, slip of the object or residual vibration after positioning of the moving mechanism is suppressed, and as a result, the alignment time of the object is shortened.
본 개시의 다른 예에서는, 대상물을 이동시키기 위한 이동 기구의 제어 방법은, 촬상 지시를 시각 센서에 출력하고, 상기 대상물을 촬상하여 얻어진 화상으로부터 상기 대상물의 실제 위치를 상기 시각 센서에 계측시키는 단계와, 상기 실제 위치에서 소정의 도달 목표 위치로 상기 대상물을 이동시키기 위한, 상기 이동 기구의 필요 이동 거리를 산출하는 단계와, 상기 필요 이동 거리와 시각을 적어도 설명 변수로 하고, 상기 이동 기구의 목표 위치를 목적 변수로 하는 다차 함수로 나타나는 목표 궤도에 기초하여, 상기 촬상 지시가 상기 시각 센서에 출력되는 간격보다 짧은 미리 정해진 제어 주기마다, 현시각에 대응하는 목표 위치를 결정하는 단계와, 상기 결정하는 단계에서 결정되는 목표 위치로 상기 이동 기구를 이동시키는 단계를 구비한다.In another example of the present disclosure, a method of controlling a movement mechanism for moving an object includes the steps of outputting an imaging instruction to a visual sensor, and measuring an actual position of the object to the visual sensor from an image obtained by imaging the object; , Calculating a required moving distance of the moving mechanism for moving the object from the actual position to a predetermined target destination position, and using the required moving distance and time as at least explanatory variables, and the target position of the moving mechanism Determining a target position corresponding to the current time, based on a target trajectory represented by a multi-order function using as a target variable, at each predetermined control period shorter than an interval in which the imaging instruction is output to the visual sensor, and the determination And moving the moving mechanism to a target position determined in step.
이 개시에 의하면, 상기 제어 시스템은, 시각 센서가 대상물의 실제 위치를 계측하고 나서 다음으로 대상물의 실제 위치를 계측하기까지의 동안에, 이동 기구의 목표 위치를 보간할 수 있고, 이동 기구를 보다 원활하게 구동하는 것이 가능해진다.According to this disclosure, the control system can interpolate the target position of the moving mechanism, and make the moving mechanism more smooth from the time the visual sensor measures the actual position of the object until the next, the actual position of the object is measured. It becomes possible to drive it.
본 개시의 다른 예에서는, 대상물을 이동시키기 위한 이동 기구의 제어 프로그램은, 상기 이동 기구를 제어하기 위한 컨트롤러로 하여금, 촬상 지시를 시각 센서에 출력하고, 상기 대상물을 촬상하여 얻어진 화상으로부터 상기 대상물의 실제 위치를 상기 시각 센서에 계측시키는 단계와, 상기 실제 위치에서 소정의 도달 목표 위치로 상기 대상물을 이동시키기 위한, 상기 이동 기구의 필요 이동 거리를 산출하는 단계와, 상기 필요 이동 거리와 시각을 적어도 설명 변수로 하고, 상기 이동 기구의 목표 위치를 목적 변수로 하는 다차 함수로 나타나는 목표 궤도에 기초하여, 상기 촬상 지시가 상기 시각 센서에 출력되는 간격보다 짧은 미리 정해진 제어 주기마다, 현시각에 대응하는 목표 위치를 결정하는 단계와, 상기 결정하는 단계에서 결정되는 목표 위치로 상기 이동 기구를 이동시키는 단계를 실행시키게 한다.In another example of the present disclosure, a control program of a movement mechanism for moving an object causes a controller for controlling the movement mechanism to output an imaging instruction to a visual sensor, and the object is Measuring an actual position by the time sensor; calculating a required movement distance of the movement mechanism for moving the object from the actual position to a predetermined target position; and at least the required movement distance and time Based on a target trajectory represented by a multi-order function that is an explanatory variable and a target position of the moving mechanism as a target variable, the imaging instruction corresponds to the current time at each predetermined control period shorter than the interval output to the visual sensor. Determining a target position, and moving the moving mechanism to the target position determined in the determining step.
이 개시에 의하면, 상기 제어 시스템은, 시각 센서가 대상물의 실제 위치를 계측하고 나서 다음으로 대상물의 실제 위치를 계측하기까지의 동안에, 이동 기구의 목표 위치를 보간할 수 있고, 이동 기구를 보다 원활하게 구동하는 것이 가능해진다.According to this disclosure, the control system can interpolate the target position of the moving mechanism, and make the moving mechanism more smooth from the time the visual sensor measures the actual position of the object until the next, the actual position of the object is measured. It becomes possible to drive it.
어떤 국면에서, 시각 센서의 계측 위치에 기초하여 구동되는 이동 기구를 보다 원활하게 구동할 수 있다.In some aspects, it is possible to more smoothly drive the moving mechanism that is driven based on the measured position of the visual sensor.
도 1은, 실시형태에 따른 제어 시스템의 개요를 나타내는 모식도이다.
도 2는, 목표 궤도의 일례를 나타내는 도면이다.
도 3은, 실시형태에 따른 제어 시스템의 장치 구성의 일례를 나타내는 도면이다.
도 4는, 실시형태에 따른 화상 처리 장치의 하드웨어 구성의 일례를 나타내는 모식도이다.
도 5는, 실시형태에 따른 컨트롤러의 하드웨어 구성을 나타내는 모식도이다.
도 6은, 도 1에 도시된 제어 시스템의 기능 구성을 더욱 구체화한 도면이다.
도 7은, 갱신 전의 목표 궤도와, 갱신 후의 목표 궤도를 나타내는 도면이다.
도 8은, 실시형태에 따른 컨트롤러가 실행하는 제어 처리의 일부를 나타내는 흐름도이다.1 is a schematic diagram showing an outline of a control system according to an embodiment.
2 is a diagram showing an example of a target trajectory.
3 is a diagram illustrating an example of a device configuration of a control system according to an embodiment.
4 is a schematic diagram showing an example of a hardware configuration of an image processing apparatus according to an embodiment.
5 is a schematic diagram showing a hardware configuration of a controller according to an embodiment.
FIG. 6 is a diagram further concretely illustrating the functional configuration of the control system shown in FIG. 1.
Fig. 7 is a diagram showing a target trajectory before update and a target trajectory after update.
8 is a flowchart showing a part of control processing executed by the controller according to the embodiment.
이하, 도면을 참조하면서, 본 발명에 따른 각 실시형태에 대해 설명한다. 이하의 설명에서는, 동일한 부품 및 구성 요소에는 동일한 부호를 부여하고 있다. 이들의 명칭 및 기능도 동일하다. 따라서, 이들에 대한 상세한 설명은 반복하지 않는다.Hereinafter, each embodiment according to the present invention will be described with reference to the drawings. In the following description, the same reference numerals are assigned to the same parts and components. Their names and functions are the same. Therefore, detailed descriptions of these are not repeated.
<A. 적용예><A. Application example>
우선, 도 1을 참조하여, 본 발명이 적용되는 장면의 일례에 대해 설명한다. 도 1은, 본 실시형태에 따른 제어 시스템(1)의 개요를 나타내는 모식도이다.First, an example of a scene to which the present invention is applied will be described with reference to FIG. 1. 1 is a schematic diagram showing an outline of a
제어 시스템(1)은, 화상 처리를 이용하여 정렬을 행한다. 정렬은, 전형적으로는, 공업 제품의 제조 과정 등에서, 대상물(이하, 「가공물(W)」라고도 함)을 생산 라인의 본래의 위치에 배치하는 처리 등을 의미한다. 이러한 정렬의 일례로서, 제어 시스템(1)은, 액정 패널의 생산 라인에서, 유리 기판에 회로 패턴의 소부 처리(노광 처리) 전에, 노광 마스크에 대한 유리 기판의 위치 결정을 행한다.The
제어 시스템(1)은, 예를 들어, 시각 센서(50)와, 컨트롤러(200)와, 서보 드라이버(300)와, 이동 기구(400)를 포함한다. 이동 기구(400)는, 예를 들어, 서보 모터(410)와 스테이지(420)로 구성되어 있다.The
시각 센서(50)는, 촬상 시야에 존재하는 피사체를 촬상하여 화상 데이터를 생성하는 촬상 처리를 행하는 것으로, 스테이지(420)에 놓이는 가공물(W)를 촬상한다. 시각 센서(50)는, 컨트롤러(200)로부터의 촬상 트리거(TR)에 따라 촬상을 행한다. 시각 센서(50)는, 촬상 트리거(TR)를 접수한 것에 기초하여 가공물(W)를 촬상하고, 촬상에 의해 얻어진 화상 데이터에 대해 화상 해석을 행함으로써 가공물(W)의 실제 위치(PVv)를 계측한다. 실제 위치(PVv)는, 계측될 때마다 컨트롤러(200)에 출력된다.The
컨트롤러(200)는, 예를 들어 PLC(Programmable Logic Controller)로서, 각종 FA 제어를 행한다. 컨트롤러(200)는, 기능 구성의 일례로서, 산출부(250)와, 위치 결정부(252)와, 이동 제어부(254)를 포함한다.The
산출부(250)는, 시각 센서(50)에 의해 검출된 가공물(W)의 실제 위치(PVv)와, 소정의 도달 목표 위치(SP)에 기초하여, 가공물(W)를 실제 위치(PVv)에서 도달 목표 위치(SP)로 이동시키기 위한 이동 기구(400)의 필요 이동 거리(L)를 산출한다. 산출된 필요 이동 거리(L)는, 위치 결정부(252)에 출력된다.The
어떤 국면에서, 도달 목표 위치(SP)는, 시각 센서(50)가 소정의 화상 처리를 행함으로써 검출된다. 이 경우, 시각 센서(50)는, 미리 정해진 마크를 화상으로부터 검출하고, 그 마크를 도달 목표 위치(SP)로서 인식한다. 다른 국면에서, 도달 목표 위치(SP)는, 생산 공정마다 미리 정해져 있다.In a certain aspect, the arrival target position SP is detected by the
위치 결정부(252)는, 필요 이동 거리(L)와 시각(t)을 적어도 설명 변수로 하고, 이동 기구(400)의 목표 위치(SP(t))를 목적 변수로 하는 다차 함수로 나타나는 목표 궤도(TG)에 기초하여, 현시각(t)에서의 목표 위치(SP(t))를 결정한다.The
도 2는, 목표 궤도(TG)의 일례를 나타내는 도면이다. 도 2에 도시된 바와 같이, 목표 궤도(TG)는, 제어 주기(Ts)마다의 이동 기구(400)의 목표 위치(SP(t))를 규정하고 있다. 도 2에 도시된 바와 같이, 목표 위치(SP(t))의 초기값은 필요 이동 거리(L)가 되고, 목표 위치(SP(t))의 최종값은 제로가 된다. 목표 위치(SP(t))는, 촬상 주기(Tb)보다 짧은 제어 주기(Ts)마다 이동 제어부(254)에 출력된다. 일례로서, 촬상 주기(Tb)는, 촬상 상황 등에 따라 변동하며, 예를 들어 약 60ms이다. 제어 주기(Ts)는 고정이며, 예를 들어 1ms이다.2 is a diagram showing an example of a target trajectory TG. As shown in Fig. 2, the target trajectory TG defines the target position SP(t) of the
이동 제어부(254)는, 제어 주기(Ts)마다, 현시각(t)에 대응하는 목표 위치(SP(t))로 이동 기구(400)를 이동시키기 위한 이동 지령(MV)을 생성하고, 그 이동 지령(MV)을 서보 드라이버(300)에 출력한다. 이동 지령(MV)은, 예를 들어, 서보 드라이버(300)에 대한 지령 위치, 지령 속도 또는 지령 토크 중 어느 하나이다.The
서보 드라이버(300)는, 제어 주기(Ts)마다 받는 이동 지령(MV)에 따라, 이동 기구(400)를 구동한다. 보다 구체적으로는, 서보 드라이버(300)는, 후술하는 인코더(412)(도 6 참조)에 의해 검출되는 인코더값(PVm)을 취득하여, 인코더값(PVm)으로부터 특정되는 스테이지(420)의 속도/위치가 목표값에 가까워지도록 이동 지령(MV)이 가까워지도록 서보 모터(410)를 피드백 제어한다. 인코더에 의해 검출된 인코더값(PVm)은, 제어 주기(Ts)와 동일한 주기로 컨트롤러(200)에 입력된다.The
이상과 같이, 본 실시형태에서는, 위치 결정부(252)는, 필요 이동 거리(L)와 시각(t)을 적어도 설명 변수로 하고, 이동 기구(400)의 목표 위치(SP(t))를 목적 변수로 하는 다차 함수로 나타나는 목표 궤도(TG)에 기초하여, 현시각(t)에 대응하는 목표 위치(SP(t))를 결정한다. 목표 위치(SP(t))는, 촬상 주기(Tb)보다 짧은 제어 주기(Ts)마다 이동 제어부(254)에 출력된다. 이에 의해, 시각 센서(50)가 가공물(W)의 실제 위치(PVv)를 계측하고 나서 다음으로 실제 위치(PVv)를 계측하기까지의 동안에, 이동 기구(400)에 출력하는 이동 지령을 보간할 수 있고, 이동 기구(400)를 보다 원활하게 구동하는 것이 가능해진다.As described above, in the present embodiment, the
<B. 제어 시스템(1)의 장치 구성><B. Device configuration of the control system (1)>
도 3은, 제어 시스템(1)의 장치 구성의 일례를 나타내는 도면이다. 도 3에 도시된 바와 같이, 제어 시스템(1)은, 시각 센서(50)와, 컨트롤러(200)와, 하나 이상의 서보 드라이버(300)(도 3의 예에서는, 서보 드라이버(300X, 300Y))와, 이동 기구(400)를 포함한다. 시각 센서(50)는, 화상 처리 장치(100)와, 하나 이상의 카메라(도 3의 예에서는, 카메라(102 및 104))를 포함한다.3 is a diagram illustrating an example of a device configuration of the
화상 처리 장치(100)는, 카메라(102, 104)가 가공물(W)를 촬영하여 얻어진 화상 데이터에 기초하여, 가공물(W)의 특징 부분(12)(예를 들어, 나사 구멍 등)을 검출한다. 화상 처리 장치(100)는, 검출한 특징 부분(12)의 위치를 가공물(W)의 실제 위치(PVv)로서 검출한다.The
컨트롤러(200)에는, 하나 이상의 서보 드라이버(300)(도 3의 예에서는, 서보 드라이버(300X, 300Y))가 접속되어 있다. 서보 드라이버(300X)는, 컨트롤러(200)로부터 받는 X방향의 이동 지령에 따라, 제어 대상의 서보 모터(410X)를 구동한다. 서보 드라이버(300Y)는, 컨트롤러(200)로부터 받는 Y방향의 이동 지령에 따라, 제어 대상의 서보 모터(410Y)를 구동한다.One or more servo drivers 300 (in the example of FIG. 3,
컨트롤러(200)는, X방향에 대해 생성된 목표 궤도(TGx)에 따라, 서보 드라이버(300X)에 대해 X방향의 목표 위치를 지령값으로서 부여한다. 또한, 컨트롤러(200)는, Y방향에 대해 생성된 목표 궤도(TGy)에 따라, 서보 드라이버(300Y)에 대해 Y방향의 목표 위치를 지령값으로서 부여한다. X, Y방향의 각각의 목표 위치가 순차 갱신됨으로써, 가공물(W)가 도달 목표 위치(SP)로 이동된다.The
컨트롤러(200) 및 서보 드라이버(300)는, 필드 네트워크를 통해 데이지 체인으로 접속되어 있다. 필드 네트워크에는, 예를 들어 EtherCAT(등록상표)이 채용된다. 단, 필드 네트워크는 EtherCAT에 한정되지 않고, 임의의 통신 수단이 채용될 수 있다. 일례로서, 컨트롤러(200) 및 서보 드라이버(300)는, 신호선으로 직접 접속되어도 된다. 또한, 컨트롤러(200) 및 서보 드라이버(300)는, 일체적으로 구성되어도 된다.The
이동 기구(400)는, 베이스 플레이트(4, 7)와, 볼 나사(6, 9)와, 스테이지(420)와, 하나 이상의 서보 모터(410)(도 3의 예에서는, 서보 모터(410X, 410Y))로 구성되어 있다.The
베이스 플레이트(4)에는, 스테이지(420)를 X방향을 따라 이동시키는 볼 나사(6)가 배치되어 있다. 볼 나사(6)는, 스테이지(420)에 포함되는 너트와 걸어맞춤되어 있다. 볼 나사(6)의 일단에 연결된 서보 모터(410X)가 회전 구동함으로써, 스테이지(420)에 포함되는 너트와 볼 나사(6)가 상대 회전하고, 그 결과, 스테이지(420)가 X방향을 따라 이동한다.A
베이스 플레이트(7)에는, 스테이지(420) 및 베이스 플레이트(4)를 Y방향을 따라 이동시키는 볼 나사(9)가 배치되어 있다. 볼 나사(9)는, 베이스 플레이트(4)에 포함되는 너트와 걸어맞춤되어 있다. 볼 나사(9)의 일단에 연결된 서보 모터(410Y)가 회전 구동함으로써, 베이스 플레이트(4)에 포함되는 너트와 볼 나사(9)가 상대 회전하고, 그 결과, 스테이지(420) 및 베이스 플레이트(4)가 Y방향을 따라 이동한다.The
또, 도 3에는, 서보 모터(410X, 410Y)에 의한 2축 구동의 이동 기구(400)가 도시되어 있지만, 이동 기구(400)는, XY 평면상의 회전 방향(θ방향)으로 스테이지(420)를 구동하는 서보 모터가 더 조립되어도 된다.In addition, although FIG. 3 shows the
<C. 하드웨어 구성><C. Hardware configuration>
도 4 및 도 5를 참조하여, 시각 센서(50)를 구성하는 화상 처리 장치(100) 및 컨트롤러(200)의 하드웨어 구성에 대해 차례대로 설명한다.With reference to FIGS. 4 and 5, hardware configurations of the
(C1. 화상 처리 장치(100)의 하드웨어 구성)(C1. Hardware configuration of the image processing apparatus 100)
도 4는, 시각 센서(50)를 구성하는 화상 처리 장치(100)의 하드웨어 구성의 일례를 나타내는 모식도이다. 도 4를 참조하여, 화상 처리 장치(100)는, 전형적으로는, 범용적인 컴퓨터 아키텍처에 따른 구조를 가지고 있고, 미리 설치된 프로그램을 프로세서가 실행함으로써, 후술하는 각종 화상 처리를 실현한다.4 is a schematic diagram showing an example of a hardware configuration of the
보다 구체적으로는, 화상 처리 장치(100)는, CPU(Central Processing Unit)나 MPU(Micro-Processing Unit) 등의 프로세서(110)와, RAM(Random Access Memory)(112)과, 표시 컨트롤러(114)와, 시스템 컨트롤러(116)와, I/O(Input Output) 컨트롤러(118)와, 하드 디스크(120)와, 카메라 인터페이스(122)와, 입력 인터페이스(124)와, 컨트롤러 인터페이스(126)와, 통신 인터페이스(128)와, 메모리 카드 인터페이스(130)를 포함한다. 이들 각 부는, 시스템 컨트롤러(116)를 중심으로 서로 데이터 통신 가능하게 접속된다.More specifically, the
프로세서(110)는, 시스템 컨트롤러(116)와의 사이에서 프로그램(코드) 등을 교환하여 이들을 소정 순서로 실행함으로써, 목적의 연산 처리를 실현한다.The
시스템 컨트롤러(116)는, 프로세서(110), RAM(112), 표시 컨트롤러(114) 및 I/O 컨트롤러(118)와 각각 버스를 통해 접속되어 있고, 각 부와의 사이에서 데이터 교환 등을 행함과 아울러, 화상 처리 장치(100) 전체의 처리를 담당한다.The
RAM(112)은, 전형적으로는, DRAM(Dynamic Random Access Memory) 등의 휘발성의 기억 장치로서, 하드 디스크(120)로부터 독출된 프로그램이나, 카메라(102 및 104)에 의해 취득된 카메라 화상(화상 데이터), 카메라 화상에 대한 처리 결과 및 가공물 데이터 등을 보유한다.The
표시 컨트롤러(114)는, 표시부(132)와 접속되어 있고, 시스템 컨트롤러(116)로부터의 내부 커맨드에 따라, 각종 정보를 표시하기 위한 신호를 표시부(132)에 출력한다.The
I/O 컨트롤러(118)는, 화상 처리 장치(100)에 접속되는 기록 매체나 외부 기기와의 사이의 데이터 교환을 제어한다. 보다 구체적으로는, I/O 컨트롤러(118)는, 하드 디스크(120)와, 카메라 인터페이스(122)와, 입력 인터페이스(124)와, 컨트롤러 인터페이스(126)와, 통신 인터페이스(128)와, 메모리 카드 인터페이스(130)와 접속된다.The I/
하드 디스크(120)는, 전형적으로는, 비휘발성의 자기 기억 장치로서, 프로세서(110)에서 실행되는 제어 프로그램(150)에 더하여, 각종 설정값 등이 저장된다. 이 하드 디스크(120)에 설치되는 제어 프로그램(150)은, 메모리 카드(136) 등에 저장된 상태로 유통한다. 또, 하드 디스크(120) 대신에, 플래시 메모리 등의 반도체 기억 장치나 DVD-RAM(Digital Versatile Disk Random Access Memory) 등의 광학 기억 장치를 채용해도 된다.The
카메라 인터페이스(122)는, 가공물을 촬영함으로써 생성된 화상 데이터를 접수하는 입력부에 상당하고, 프로세서(110)와 카메라(102, 104) 사이의 데이터 전송을 중개한다. 카메라 인터페이스(122)는, 카메라(102 및 104)로부터의 화상 데이터를 각각 일시적으로 축적하기 위한 화상 버퍼(122a 및 122b)를 포함한다. 복수의 카메라에 대해, 카메라의 사이에서 공유할 수 있는 단일 화상 버퍼를 설치해도 되지만, 처리 고속화를 위해, 각각의 카메라에 대응시켜 독립적으로 복수 배치하는 것이 바람직하다.The
입력 인터페이스(124)는, 프로세서(110)와 키보드(134), 마우스, 터치 패널, 전용 콘솔 등의 입력 장치 사이의 데이터 전송을 중개한다.The
컨트롤러 인터페이스(126)는, 프로세서(110)와 컨트롤러(200) 사이의 데이터 전송을 중개한다.The
통신 인터페이스(128)는, 프로세서(110)와 도시하지 않은 다른 퍼스널 컴퓨터나 서버 장치 등의 사이의 데이터 전송을 중개한다. 통신 인터페이스(128)는, 전형적으로는, 이더넷(등록상표)이나 USB(Universal Serial Bus) 등으로 이루어진다.The
메모리 카드 인터페이스(130)는, 프로세서(110)와 기록 매체인 메모리 카드(136) 사이의 데이터 전송을 중개한다. 메모리 카드(136)에는, 화상 처리 장치(100)에서 실행되는 제어 프로그램(150) 등이 저장된 상태로 유통하고, 메모리 카드 인터페이스(130)는, 이 메모리 카드(136)로부터 제어 프로그램을 독출한다. 메모리 카드(136)는, SD(Secure Digital) 등의 범용적인 반도체 기억 디바이스나, 플렉서블 디스크(Flexible Disk) 등의 자기 기록 매체나, CD-ROM(Compact Disk Read Only Memory) 등의 광학 기록 매체 등으로 이루어진다. 혹은, 통신 인터페이스(128)를 통해, 분배 서버 등으로부터 다운로드한 프로그램을 화상 처리 장치(100)에 설치해도 된다.The
상술한 바와 같은 범용적인 컴퓨터 아키텍처에 따른 구조를 갖는 컴퓨터를 이용하는 경우에는, 본 실시형태에 따른 기능을 제공하기 위한 어플리케이션에 더하여, 컴퓨터의 기본적인 기능을 제공하기 위한 OS(Operating System)가 설치되어 있어도 된다. 이 경우에는, 본 실시형태에 따른 제어 프로그램은, OS의 일부로서 제공되는 프로그램 모듈 중 필요한 모듈을 소정의 순서 및/또는 타이밍에 호출하여 처리를 실행하는 것이어도 된다.In the case of using a computer having a structure according to the general computer architecture as described above, in addition to the application for providing the functions according to the present embodiment, even if an OS (Operating System) for providing the basic functions of the computer is installed. do. In this case, the control program according to the present embodiment may call a necessary module among program modules provided as part of the OS in a predetermined order and/or timing to execute processing.
나아가 본 실시형태에 따른 제어 프로그램은, 다른 프로그램의 일부에 조립되어 제공되는 것이어도 된다. 그 경우에도, 프로그램 자체에는, 상기와 같은 조합되는 다른 프로그램에 포함되는 모듈을 포함하지 않고, 이러한 다른 프로그램과 협동하여 처리가 실행된다. 즉, 본 실시형태에 따른 제어 프로그램으로서는, 이러한 다른 프로그램에 조립된 형태이어도 된다.Furthermore, the control program according to the present embodiment may be provided by being assembled in a part of another program. Even in that case, the program itself does not include modules included in other programs to be combined as described above, and processes are executed in cooperation with such other programs. In other words, as the control program according to the present embodiment, it may be assembled in such other programs.
또, 대체적으로, 제어 프로그램의 실행에 의해 제공되는 기능의 일부 혹은 전부를 전용의 하드웨어 회로로서 실장해도 된다.Alternatively, a part or all of the functions provided by execution of the control program may be mounted as a dedicated hardware circuit.
(C2. 컨트롤러(200)의 하드웨어 구성)(C2. Hardware configuration of the controller 200)
도 5는, 컨트롤러(200)의 하드웨어 구성을 나타내는 모식도이다. 도 5를 참조하여, 컨트롤러(200)는, 주제어 유닛(210)을 포함한다. 도 5에는, 3축의 서보 모터(410X, 410Y, 410θ)가 도시되어 있고, 이 축수에 따른 수의 서보 드라이버(300X, 300Y, 300θ)가 설치된다.5 is a schematic diagram showing the hardware configuration of the
주제어 유닛(210)은, 칩 세트(212)와, 프로세서(214)와, 비휘발성 메모리(216)와, 주메모리(218)와, 시스템 클록(220)과, 메모리 카드 인터페이스(222)와, 통신 인터페이스(228)와, 내부 버스 컨트롤러(230)와, 필드 버스 컨트롤러(238)를 포함한다. 칩 세트(212)와 다른 컴포넌트의 사이는, 각종 버스를 통해 각각 결합되어 있다.The
프로세서(214) 및 칩 세트(212)는, 전형적으로는, 범용적인 컴퓨터 아키텍처에 따른 구성을 가지고 있다. 즉, 프로세서(214)는, 칩 세트(212)로부터 내부 클록에 따라 순차 공급되는 명령 코드를 해석하여 실행한다. 칩 세트(212)는, 접속되어 있는 각종 컴포넌트와의 사이에서 내부적인 데이터를 교환함과 아울러, 프로세서(214)에 필요한 명령 코드를 생성한다. 시스템 클록(220)은, 미리 정해진 주기의 시스템 클록을 발생하여 프로세서(214)에 제공한다. 칩 세트(212)는, 프로세서(214)에서의 연산 처리의 실행 결과 얻어진 데이터 등을 캐시하는 기능을 가진다.
주제어 유닛(210)은, 기억 수단으로서, 비휘발성 메모리(216) 및 주메모리(218)를 가진다. 비휘발성 메모리(216)는, OS, 시스템 프로그램, 사용자 프로그램, 데이터 정의 정보, 로그 정보 등을 비휘발적으로 보유한다. 주메모리(218)는, 휘발성의 기억 영역으로, 프로세서(214)에서 실행되어야 할 각종 프로그램을 보유함과 아울러, 각종 프로그램의 실행시의 작업용 메모리로서도 사용된다.The
주제어 유닛(210)은, 통신 수단으로서, 통신 인터페이스(228)와, 내부 버스 컨트롤러(230)와, 필드 버스 컨트롤러(238)를 가진다. 이들 통신 회로는, 데이터의 송신 및 수신을 행한다.The
통신 인터페이스(228)는, 화상 처리 장치(100)와의 사이에서 데이터를 교환한다.The
내부 버스 컨트롤러(230)는, 내부 버스(226)를 통한 데이터의 교환을 제어한다. 보다 구체적으로는, 내부 버스 컨트롤러(230)는, 버퍼 메모리(236)와, DMA(Dynamic Memory Access) 제어 회로(232)와, 내부 버스 제어 회로(234)를 포함한다.The
메모리 카드 인터페이스(222)는, 주제어 유닛(210)에 대해 착탈 가능한 메모리 카드(224)와 프로세서(214)를 접속한다.The
필드 버스 컨트롤러(238)는, 필드 네트워크에 접속하기 위한 통신 인터페이스이다. 컨트롤러(200)는, 필드 버스 컨트롤러(238)를 통해 서보 드라이버(300)(예를 들어, 서보 드라이버(300X, 300Y, 300θ))와 접속된다. 이러한 필드 네트워크에는, 예를 들어 EtherCAT(등록상표), EtherNet/IP(등록상표), CompoNet(등록상표) 등이 채용된다.The
<D. 목표 궤도(TG)의 갱신 처리><D. Target trajectory (TG) update processing>
상술한 위치 결정부(252)(도 1 참조)는, 시각 센서(50)의 촬상 주기(Tb)마다 목표 궤도(TG)를 생성한다. 이 때, 위치 결정부(252)는, 새로 생성된 목표 궤도(TG)로 전회에 생성된 목표 궤도(TG)를 갱신한다. 즉, 목표 궤도(TG)는, 시각 센서(50)에 의해 가공물(W)의 실제 위치가 계측될 때마다 갱신된다. 이에 의해, 목표 궤도(TG)의 오차는, 시각 센서(50)의 촬상 주기(Tb)마다 수정된다.The above-described positioning unit 252 (refer to FIG. 1) generates a target trajectory TG for every imaging period Tb of the
전형적으로는, 위치 결정부(252)는, 목표 궤도(TG)의 갱신 전후에, 이동 기구(400)의 속도가 변화하지 않도록 새로운 목표 궤도(TG)를 생성한다. 이하에서는, 도 6 및 도 7을 참조하여, 목표 궤도(TG)의 갱신 처리에 대해 설명한다.Typically, the
도 6은, 도 1에 도시된 제어 시스템(1)의 기능 구성을 더욱 구체화한 도면이다. 도 6에 도시된 바와 같이, 컨트롤러(200)는, 산출부(250)와, 보정부(251X, 251Y)와, 위치 결정부(252X, 252Y)와, 이동 제어부(254X, 254Y)를 포함한다.6 is a diagram further concretely illustrating the functional configuration of the
보정부(251X), 위치 결정부(252X) 및 이동 제어부(254X)는, X축 방향의 구동 제어를 행하는 서보 드라이버(300X)를 위한 기능 구성이다. 보정부(251Y), 위치 결정부(252Y) 및 이동 제어부(254Y)는, Y축 방향의 구동 제어를 행하는 서보 드라이버(300Y)를 위한 기능 구성이다. 그 밖의 점에 관해서는, 보정부(251X, 251Y)의 기능은 동일하고, 위치 결정부(252X, 252Y)의 기능은 동일하며, 이동 제어부(254X, 254Y)의 기능은 동일하다.The
산출부(250)는, 시각 센서(50)에 의해 검출된 가공물(W)의 실제 위치(PVv)와, 소정의 도달 목표 위치(SP)에 기초하여, 가공물(W)를 실제 위치(PVv)에서 도달 목표 위치(SP)로 이동시키기 위한 이동 기구(400)의 필요 이동 거리(L)를 산출한다. 그 후, 산출부(250)는, 이동 기구(400)의 필요 이동 거리(L)를 X축 방향의 필요 이동 거리(Lx)와 Y축 방향의 필요 이동 거리(Ly)로 분해하고, 필요 이동 거리(Lx)를 보정부(251X)에 출력함과 아울러, 필요 이동 거리(Ly)를 보정부(251Y)에 출력한다.The
보정부(251X)는, 이동 기구(400)의 실제 위치를 검출하기 위한 인코더(412X)(검출부)로부터의 인코더값(PVm)에 기초하여 이동 기구(400)의 실제 위치를 특정한다. 보다 구체적으로는, 인코더(412X)는, 서보 모터(410X)의 이동량에 따라 펄스 신호를 발생한다. 서보 모터(410X)에 포함되는 카운터는, 인코더(412X)로부터 펄스 신호를 받고, 그 펄스 신호에 포함되는 펄스수를 카운트함으로써 이동 기구(400)의 이동량을 인코더값(PVm)으로서 계측한다. 인코더값(PVm)은, 제어 주기(Ts)마다 보정부(251)에 컨트롤러(200)에 입력된다. 보정부(251)는, 이동 기구(400)의 이동량에 상당하는 인코더값(PVm)에 기초하여, X방향에서의 이동 기구(400)의 실제 위치를 특정한다.The
보정부(251X)는, 이동 기구(400)의 실제 위치와 목표 위치(SP(t))의 위치 편차(En(t))를 오차로서 산출한다. 그리고, 보정부(251X)는, 필요 이동 거리(Lx)에 위치 편차(En(t))로 보정하고, 보정 후의 필요 이동 거리(Lm)를 위치 결정부(252X)에 출력한다. 보정부(251Y)는, 보정부(251X)와 마찬가지로, 인코더(412Y)로부터의 인코더값(PVm)에 기초하여, Y방향에서의 필요 이동 거리(Lm)를 위치 결정부(252Y)에 출력한다.The
위치 결정부(252X)는, 시각 센서(50)의 촬상 주기(Tb)가 도래한 것에 기초하여, 필요 이동 거리(Lm)로부터 목표 궤도(TG)를 생성한다. 도 7은, 갱신 전의 목표 궤도(TG1)와, 갱신 후의 목표 궤도(TG2)를 나타내는 도면이다.The
도 7에 도시된 바와 같이, 시각(t5)에서, 시각 센서(50)에 의해 가공물(W)의 실제 위치(PVv)가 계측되어, 목표 궤도가 갱신되는 것으로 한다. 보정부(251X)는, 목표 궤도의 갱신의 타이밍에서 검출된 이동 기구(400)의 실제 위치와, 그 타이밍에서의 이동 기구(400)의 목표 위치의 위치 편차(En(t))로, 필요 이동 거리(L)를 보정한다. 도 7의 예에서는, 필요 이동 거리(L)에 위치 편차(En(t5))를 가산함으로써, 필요 이동 거리(L)가 필요 이동 거리(Lm)로 보정되어 있다. 그 후, 위치 결정부(252X)는, 보정 후의 필요 이동 거리(Lm)에 기초하여, 새로운 목표 궤도(TG2)를 생성한다.As shown in Fig. 7, it is assumed that at time t5, the actual position PVv of the workpiece W is measured by the
이에 의해, 목표 궤도(TG1)에서 목표 궤도(TG2)로 갱신하는 과정에서, 이동 기구(400)의 위치의 오차가 흡수되어, 이동 기구(400)의 속도가 급변하는 것이 방지된다. 그 결과, 이동 기구(400) 상에서의 가공물(W)의 미끄러짐이나, 이동 기구(400)의 위치 결정 후에서의 잔류 진동이 억제되고, 결과적으로 가공물(W)의 정렬 시간이 단축된다.Thereby, in the process of updating from the target trajectory TG1 to the target trajectory TG2, an error in the position of the moving
위치 결정부(252X)는, 갱신 후의 목표 궤도(TG2)에 기초하여, 현시각(t)에 대응하는 목표 위치(SP(t))를 결정하고, 이 목표 위치(SP(t))를 제어 주기(Ts)마다 이동 제어부(254X)에 출력한다. 이동 제어부(254X)의 기능에 대해서는, 도 1에서 설명한 이동 제어부(254)와 동일하므로, 그 설명에 대해서는 반복하지 않는다.The
<E. 컨트롤러(200)의 제어 구조><E. Control structure of the
도 8을 참조하여, 컨트롤러(200)의 제어 구조에 대해 설명한다. 도 8은, 컨트롤러(200)가 실행하는 제어 처리의 일부를 나타내는 흐름도이다. 도 8에 도시된 처리는, 컨트롤러(200)의 프로세서(214)가 프로그램을 실행함으로써 실현된다. 다른 국면에서, 처리의 일부 또는 전부가, 회로 소자 또는 그 밖의 하드웨어에 의해 실행되어도 된다.With reference to FIG. 8, the control structure of the
도 8에 도시된 처리는, 어떤 축방향에 대한 제어 흐름을 나타낸다. 즉, 실제로는, 도 8에 도시된 단계 S130, S150 이외의 처리는, 축방향만큼 병렬로 실행된다.The processing shown in Fig. 8 shows the control flow for a certain axial direction. That is, in practice, processes other than steps S130 and S150 shown in Fig. 8 are executed in parallel in the axial direction.
단계 S110에서, 프로세서(214)는, 계측 시각(t)(현시각)을 제로로 초기화한다.In step S110, the
단계 S130에서, 프로세서(214)는, 시각 센서(50)로부터 가공물(W)의 위치 계측이 완료되었음을 나타내는 정보를 접수하였는지 여부를 판단한다. 프로세서(214)는, 시각 센서(50)로부터 가공물(W)의 위치 계측이 완료되었음을 나타내는 정보를 접수하였다고 판단한 경우(단계 S130에서 YES), 제어를 단계 S131로 전환한다. 그렇지 않은 경우에는(단계 S130에서 NO), 프로세서(214)는, 제어를 단계 S138로 전환한다.In step S130, the
단계 S131에서, 프로세서(214)는, 상술한 산출부(250)(도 1 참조)로서, 시각 센서(50)에 의해 검출된 가공물(W)의 실제 위치(PVv)와, 소정의 도달 목표 위치(SP)에 기초하여, 가공물(W)를 실제 위치(PVv)에서 도달 목표 위치(SP)로 이동시키기 위한 이동 기구(400)의 필요 이동 거리(L)를 산출한다.In step S131, the
단계 S132에서, 프로세서(214)는, 상술한 보정부(251)(도 6 참조)로서, 계측 시각(t)에서의 위치 편차(En(t))를 필요 이동 거리(L)에 가산하여, 필요 이동 거리(L)를 필요 이동 거리(Lm)로 보정한다. 필요 이동 거리(L)의 보정 방법에 대해서는 도 7에서 설명한 바와 같으므로, 그 설명에 대해서는 반복하지 않는다.In step S132, the
단계 S134에서, 프로세서(214)는, 계측 시각(t)을 제로로 초기화한다.In step S134, the
단계 S136에서, 프로세서(214)는, 궤도 시간(T)을 산출한다. 궤도 시간(T)은, 목표 궤도(TG)의 개시점으로부터 종료점까지 이동 기구(400)를 이동하기 위해 필요로 하는 시간을 나타낸다. 일례로서, 궤도 시간(T)은, 하기 식(1)에 기초하여 산출된다.In step S136, the
T=max{f(Amax), Tmin} …(1)T=max{f(A max ), T min }… (One)
상기 식(1)에 나타나는 「Amax」는, 최대 가속도를 나타낸다. 「f()」는, 최대 가속도(Amax)로 필요 이동 거리(L)를 이동 기구(400)로 이동시킨 경우에 걸리는 궤도 시간(T)을 구하기 위한 함수이다. 「Tmin」은, 소정의 최소 궤도 시간이다. 「max(α, β)」는, 수치 α, β 중에서 최대값을 취득하기 위한 함수이다."A max " shown in the above formula (1) represents the maximum acceleration. "F()" is a function for obtaining the trajectory time T taken when the required movement distance L is moved by the
상기 식(1)에 의해, 궤도 시간(T)은, 최소 궤도 시간(Tmin) 미만이 되지 않도록 정해진다. 최소 궤도 시간(Tmin)이 설정되지 않으면, 필요 이동 거리(L)가 매우 짧은 경우에, 이동 기구(400)가 목표 위치에 바로 도달해 버리므로, 다음 촬상 타이밍까지의 시간을 낭비하게 된다. 그러나, 최소 궤도 시간(Tmin)이 설정됨으로써, 필요 이동 거리(L)가 매우 짧은 경우에, 이동 기구(400)는 최대 가속도보다 낮은 가속도로 이동하게 되고, 이동 기구(400)는 원활하게 이동할 수 있다. 일례로서, 궤도 시간(Tmin)은, 평균 촬상 간격에 대해 일정한 비율(예를 들어, 50%)을 곱함으로써 산출된다.According to the above equation (1), the trajectory time T is determined not to be less than the minimum trajectory time T min . If the minimum trajectory time T min is not set, when the required moving distance L is very short, the moving
단계 S138에서, 프로세서(214)는, 상술한 위치 결정부(252)(도 1 참조)로서, 단계 S132에서 얻어진 보정 후의 필요 이동 거리(Lm)와, 단계 S136에서 산출된 궤도 시간(T)에 기초하여, 현시각(t)에 대응하는 목표 위치(SP(t))를 산출한다. 일례로서, 목표 위치(SP(t))는, 하기 식(2)에 기초하여 산출된다.In step S138, the
SP(t)=Lm*[1-(t/T)3{10-15(t/T)}+6(t/T)2}] …(2)SP(t)=Lm*[1-(t/T) 3 {10-15(t/T)}+6(t/T) 2 }]… (2)
상기 식(2)의 우변은, 이동 기구(400)의 목표 궤도(TG)를 나타낸다. 식(2)에 나타나는 바와 같이, 목표 궤도(TG)는, 필요 이동 거리(Lm)와 시각(t)을 적어도 설명 변수로 하고, 이동 기구(400)의 목표 위치(SP(t))를 목적 변수로 하는 다차 함수로 나타난다.The right side of the equation (2) represents the target trajectory TG of the
또, 식(2)에서는, 목표 궤도(TG)가 시각(t)의 5차 함수로 나타나 있지만, 목표 궤도(TG)의 차수는, 6차 이상의 다차 함수로 나타나도 된다. 또한, 목표 궤도(TG)는, 스플라인 보간 함수로 나타나도 된다.Further, in Expression (2), the target trajectory TG is expressed as a 5th order function of the time t, but the order of the target trajectory TG may be expressed as a multiorder function of 6th or higher order. In addition, the target trajectory TG may be represented by a spline interpolation function.
최대 가속도(Amax)가 부여된 경우, 상기 식(2)에 나타나는 궤도 시간(T)은, 하기 식(3)~식(5)으로 계산된다.When the maximum acceleration (A max ) is given, the trajectory time (T) represented by the above equation (2) is calculated by the following equations (3) to (5).
f(Amax)=C1*Lm/Amax …(3)f(A max )=C 1 *Lm/A max … (3)
C1=60C2(2C2 2-3C2+1) …(4)C 1 =60C 2 (2C 2 2 -3C 2 +1) ... (4)
C2=0.5-31/ 2/6 …(5)C 2 =0.5-3 1/ 2 /6… (5)
단계 S140에서, 프로세서(214)는, 상술한 이동 제어부(254)(도 1 참조)로서, 단계 S138에서 얻어진 목표 위치(SP(t))로 이동 기구(400)를 이동시키기 위한 이동 지령(MV)을 생성하고, 그 이동 지령(MV)을 서보 드라이버(300)에 출력한다.In step S140, the
단계 S142에서, 프로세서(214)는, 계측 시간(t)에 제어 주기(Ts)를 가산하여, 계측 시간(t)을 갱신한다.In step S142, the
단계 S150에서, 프로세서(214)는, 목표 궤도(TG)의 갱신 처리를 종료하는지 여부를 판단한다. 일례로서, 프로세서(214)는, 목표 궤도(TG)의 갱신 처리의 정지 명령을 접수한 것에 기초하여, 도 8에 도시된 처리를 종료한다. 프로세서(214)는, 목표 궤도(TG)의 갱신 처리를 종료한다고 판단한 경우(단계 S150에서 YES), 도 8에 도시된 처리를 종료한다. 그렇지 않은 경우에는(단계 S150에서 NO), 프로세서(214)는, 제어를 단계 S130으로 되돌린다.In step S150, the
또, 상술에서는, 제어 주기(Ts)마다 목표 위치(SP(t))가 산출되는 예에 대해 설명을 하였지만, 프로세서(214)는, 이동 기구(400)가 최종적인 목표 도달 위치(SP)에 도달하기까지의 동안에서의 각 시각의 목표 위치(SP(t))를 일괄하여 산출해도 된다.In addition, in the above, an example in which the target position SP(t) is calculated for each control period Ts has been described, but the
<F. 부기><F. Bookkeeping>
이상과 같이, 본 실시형태는 이하와 같은 개시를 포함한다.As described above, this embodiment includes the following disclosure.
[구성 1][Configuration 1]
대상물을 이동시키기 위한 이동 기구(400)와,A moving
촬상 지시를 접수한 것에 기초하여 상기 대상물을 촬상하고, 촬상에 의해 얻어진 화상으로부터 상기 대상물의 실제 위치를 계측하기 위한 시각 센서(50)와,A
상기 실제 위치에서 소정의 도달 목표 위치로 상기 대상물을 이동시키기 위한, 상기 이동 기구(400)의 필요 이동 거리를 산출하기 위한 산출부(250)와,A
상기 필요 이동 거리와 시각을 적어도 설명 변수로 하고, 상기 이동 기구(400)의 목표 위치를 목적 변수로 하는 다차 함수로 나타나는 목표 궤도에 기초하여, 상기 촬상 지시가 상기 시각 센서에 출력되는 간격보다 짧은 미리 정해진 제어 주기마다, 현시각에 대응하는 목표 위치를 결정하기 위한 위치 결정부(252)와,Based on a target trajectory represented by a multi-order function using at least the required travel distance and time as explanatory variables and the target position of the moving
상기 위치 결정부(252)에 의해 결정되는 목표 위치로 상기 이동 기구(400)를 이동시키기 위한 이동 제어부를 구비하는, 제어 시스템.And a movement control unit for moving the
[구성 2][Configuration 2]
상기 다차 함수는, 5차 이상의 함수인, 구성 1에 기재된 제어 시스템.The control system according to
[구성 3][Configuration 3]
상기 위치 결정부(252)는, 상기 이동 기구(400)의 가속도가 미리 정해진 최대 가속도를 초과하지 않도록, 상기 목표 궤도를 생성하는, 구성 1에 기재된 제어 시스템.The control system according to the
[구성 4][Configuration 4]
상기 위치 결정부(252)는, 상기 시각 센서(50)가 상기 대상물의 실제 위치를 계측할 때마다 상기 목표 궤도를 생성하고, 새로 생성된 상기 목표 궤도로 전회에 생성된 상기 목표 궤도를 갱신하는, 구성 1~3 중 어느 하나에 기재된 제어 시스템.The
[구성 5][Configuration 5]
상기 위치 결정부(252)는, 상기 목표 궤도의 갱신 전후에, 상기 이동 기구(400)의 속도가 변화하지 않도록 새로운 상기 목표 궤도를 생성하는, 구성 4에 기재된 제어 시스템.The control system according to
[구성 6][Configuration 6]
상기 제어 시스템은,The control system,
상기 제어 주기마다 상기 이동 기구(400)의 실제 위치를 검출하기 위한 검출부(412)와,A
상기 목표 궤도의 갱신의 타이밍에서 상기 검출부에 의해 검출된 실제 위치와, 상기 타이밍에서의 상기 이동 기구의 목표 위치의 위치 편차로, 상기 필요 이동 거리를 보정하기 위한 보정부를 더 구비하는, 구성 5에 기재된 제어 시스템.In the configuration 5, further comprising a correction unit for correcting the required movement distance with a positional difference between the actual position detected by the detection unit at the timing of the update of the target trajectory and the target position of the movement mechanism at the timing. Described control system.
[구성 7][Configuration 7]
대상물을 이동시키기 위한 이동 기구(400)의 제어 방법으로서,As a control method of the moving
촬상 지시를 시각 센서에 출력하고, 상기 대상물을 촬상하여 얻어진 화상으로부터 상기 대상물의 실제 위치를 상기 시각 센서에 계측시키는 단계와,Outputting an imaging instruction to a visual sensor, and measuring an actual position of the object to the visual sensor from an image obtained by imaging the object;
상기 실제 위치에서 소정의 도달 목표 위치로 상기 대상물을 이동시키기 위한, 상기 이동 기구(400)의 필요 이동 거리를 산출하는 단계와,Calculating a required moving distance of the moving
상기 필요 이동 거리와 시각을 적어도 설명 변수로 하고, 상기 이동 기구(400)의 목표 위치를 목적 변수로 하는 다차 함수로 나타나는 목표 궤도에 기초하여, 상기 촬상 지시가 상기 시각 센서에 출력되는 간격보다 짧은 미리 정해진 제어 주기마다, 현시각에 대응하는 목표 위치를 결정하는 단계와,Based on a target trajectory represented by a multi-order function using at least the required travel distance and time as explanatory variables and the target position of the moving
상기 결정하는 단계에서 결정되는 목표 위치로 상기 이동 기구(400)를 이동시키는 단계를 구비하는, 제어 방법.And moving the
[구성 8][Configuration 8]
대상물을 이동시키기 위한 이동 기구(400)의 제어 프로그램으로서,As a control program of the moving
상기 제어 프로그램은, 상기 이동 기구(400)를 제어하기 위한 컨트롤러(200)로 하여금,The control program causes the
촬상 지시를 시각 센서에 출력하고, 상기 대상물을 촬상하여 얻어진 화상으로부터 상기 대상물의 실제 위치를 상기 시각 센서에 계측시키는 단계와, Outputting an imaging instruction to a visual sensor, and measuring an actual position of the object to the visual sensor from an image obtained by imaging the object;
상기 실제 위치에서 소정의 도달 목표 위치로 상기 대상물을 이동시키기 위한, 상기 이동 기구(400)의 필요 이동 거리를 산출하는 단계(S131)와,
Calculating a required moving distance of the moving
상기 필요 이동 거리와 시각을 적어도 설명 변수로 하고, 상기 이동 기구(400)의 목표 위치를 목적 변수로 하는 다차 함수로 나타나는 목표 궤도에 기초하여, 상기 촬상 지시가 상기 시각 센서에 출력되는 간격보다 짧은 미리 정해진 제어 주기마다, 현시각에 대응하는 목표 위치를 결정하는 단계와,
Based on a target trajectory represented by a multi-order function using at least the required travel distance and time as explanatory variables and the target position of the moving
상기 결정하는 단계에서 결정되는 목표 위치로 상기 이동 기구(400)를 이동시키는 단계(S140)를 실행시키게 하는, 제어 프로그램.
A control program that causes the step (S140) of moving the moving
여기에 개시된 실시형태는 모든 점에서 예시로서 제한적인 것은 아니라고 생각되어야 한다. 본 발명의 범위는 상기한 설명이 아니라 청구범위에 의해 나타나고, 청구범위와 균등한 의미 및 범위 내에서의 모든 변경이 포함되는 것이 의도된다.It should be considered that the embodiment disclosed here is an illustration in all points and is not restrictive. The scope of the present invention is indicated by the claims rather than the above description, and it is intended that the meanings equivalent to the claims and all changes within the scope are included.
1 제어 시스템, 4, 7 베이스 플레이트, 6, 9 볼 나사, 12 특징 부분, 50 시각 센서, 100 화상 처리 장치, 102, 104 카메라, 110, 214 프로세서, 112 RAM, 114 표시 컨트롤러, 116 시스템 컨트롤러, 118 I/O 컨트롤러, 120 하드 디스크, 122 카메라 인터페이스, 122a 화상 버퍼, 124 입력 인터페이스, 126 모션 컨트롤러 인터페이스, 128, 228 통신 인터페이스, 130, 222 메모리 카드 인터페이스, 132 표시부, 134 키보드, 136, 224 메모리 카드, 150 제어 프로그램, 200 컨트롤러, 210 주제어 유닛, 212 칩 세트, 216 비휘발성 메모리, 218 주메모리, 220 시스템 클록, 230 내부 버스 컨트롤러, 232 제어 회로, 234 내부 버스 제어 회로, 236 버퍼 메모리, 238 필드 버스 컨트롤러, 250 산출부, 251, 251X, 251Y 보정부, 252, 252X, 252Y 위치 결정부, 254, 254X, 254Y 이동 제어부, 300, 300X, 300Y 서보 드라이버, 400 이동 기구, 410, 410X, 410Y 서보 모터, 412, 412X, 412Y 인코더, 420 스테이지.1 control system, 4, 7 base plates, 6, 9 ball screws, 12 feature parts, 50 visual sensors, 100 image processing units, 102, 104 cameras, 110, 214 processors, 112 RAM, 114 display controllers, 116 system controllers, 118 I/O controller, 120 hard disk, 122 camera interface, 122a picture buffer, 124 input interface, 126 motion controller interface, 128, 228 communication interface, 130, 222 memory card interface, 132 display, 134 keyboard, 136, 224 memory Cards, 150 control programs, 200 controllers, 210 main control units, 212 chip sets, 216 nonvolatile memory, 218 main memory, 220 system clock, 230 internal bus controller, 232 control circuit, 234 internal bus control circuit, 236 buffer memory, 238 Field bus controller, 250 calculation unit, 251, 251X, 251Y correction unit, 252, 252X, 252Y positioning unit, 254, 254X, 254Y movement control unit, 300, 300X, 300Y servo driver, 400 movement mechanism, 410, 410X, 410Y Servo motor, 412, 412X, 412Y encoder, 420 stages.
Claims (8)
촬상 지시를 접수한 것에 기초하여 상기 대상물을 촬상하고, 촬상에 의해 얻어진 화상으로부터 상기 대상물의 실제 위치를 계측하기 위한 시각 센서와,
상기 실제 위치에서 소정의 도달 목표 위치로 상기 대상물을 이동시키기 위한, 상기 이동 기구의 필요 이동 거리를 산출하기 위한 산출부와,
상기 필요 이동 거리와 시각을 적어도 설명 변수로 하고, 상기 이동 기구의 목표 위치를 목적 변수로 하는 다차 함수로 나타나는 목표 궤도에 기초하여, 상기 촬상 지시가 상기 시각 센서에 출력되는 간격보다 짧은 미리 정해진 제어 주기마다, 현시각에 대응하는 목표 위치를 결정하기 위한 위치 결정부와,
상기 위치 결정부에 의해 결정되는 목표 위치로 상기 이동 기구를 이동시키기 위한 이동 제어부를 구비하는, 제어 시스템.A moving mechanism for moving the object,
A visual sensor for photographing the object based on receiving an imaging instruction, and measuring an actual position of the object from an image obtained by imaging;
A calculation unit for moving the object from the actual position to a predetermined arrival target position and calculating a required moving distance of the moving mechanism;
Based on a target trajectory represented by a multi-order function having at least the required travel distance and time as explanatory variables and the target position of the moving mechanism as a target variable, a predetermined control in which the imaging instruction is shorter than the interval output to the time sensor A positioning unit for determining a target position corresponding to the current time at each period,
And a movement control unit for moving the movement mechanism to a target position determined by the positioning unit.
상기 다차 함수는, 5차 이상의 함수인, 제어 시스템.The method according to claim 1,
The multi-order function is a function of 5 or more orders of magnitude.
상기 위치 결정부는, 상기 이동 기구의 가속도가 미리 정해진 최대 가속도를 초과하지 않도록, 상기 목표 궤도를 생성하는, 제어 시스템.The method according to claim 1,
The positioning unit generates the target trajectory so that the acceleration of the moving mechanism does not exceed a predetermined maximum acceleration.
상기 위치 결정부는, 상기 시각 센서가 상기 대상물의 실제 위치를 계측할 때마다 상기 목표 궤도를 생성하고, 새로 생성된 상기 목표 궤도로 전회에 생성된 상기 목표 궤도를 갱신하는, 제어 시스템.The method according to any one of claims 1 to 3,
The positioning unit generates the target trajectory each time the visual sensor measures the actual position of the object, and updates the target trajectory previously generated with the newly created target trajectory.
상기 위치 결정부는, 상기 목표 궤도의 갱신 전후에, 상기 이동 기구의 속도가 변화하지 않도록 새로운 상기 목표 궤도를 생성하는, 제어 시스템.The method of claim 4,
The positioning unit, before and after the update of the target trajectory, generates a new target trajectory so that the speed of the moving mechanism does not change.
상기 제어 시스템은,
상기 제어 주기마다 상기 이동 기구의 실제 위치를 검출하기 위한 검출부와,
상기 목표 궤도의 갱신의 타이밍에서 상기 검출부에 의해 검출된 실제 위치와, 상기 타이밍에서의 상기 이동 기구의 목표 위치의 위치 편차로, 상기 필요 이동 거리를 보정하기 위한 보정부를 더 구비하는, 제어 시스템.The method of claim 5,
The control system,
A detection unit for detecting an actual position of the moving mechanism at each of the control cycles,
The control system further comprising: a correction unit for correcting the required movement distance based on a position difference between the actual position detected by the detection unit at the timing of the update of the target trajectory and the target position of the movement mechanism at the timing.
촬상 지시를 시각 센서에 출력하고, 상기 대상물을 촬상하여 얻어진 화상으로부터 상기 대상물의 실제 위치를 상기 시각 센서에 계측시키는 단계와,
상기 실제 위치에서 소정의 도달 목표 위치로 상기 대상물을 이동시키기 위한, 상기 이동 기구의 필요 이동 거리를 산출하는 단계와,
상기 필요 이동 거리와 시각을 적어도 설명 변수로 하고, 상기 이동 기구의 목표 위치를 목적 변수로 하는 다차 함수로 나타나는 목표 궤도에 기초하여, 상기 촬상 지시가 상기 시각 센서에 출력되는 간격보다 짧은 미리 정해진 제어 주기마다, 현시각에 대응하는 목표 위치를 결정하는 단계와,
상기 결정하는 단계에서 결정되는 목표 위치로 상기 이동 기구를 이동시키는 단계를 구비하는, 제어 방법.As a control method of a moving mechanism for moving an object,
Outputting an imaging instruction to a visual sensor, and measuring an actual position of the object to the visual sensor from an image obtained by imaging the object;
Calculating a required moving distance of the moving mechanism for moving the object from the actual position to a predetermined destination position; and
Based on a target trajectory represented by a multi-order function having at least the required travel distance and time as explanatory variables and the target position of the moving mechanism as a target variable, a predetermined control in which the imaging instruction is shorter than the interval output to the time sensor For each period, determining a target position corresponding to the present time,
And moving the moving mechanism to a target position determined in the determining step.
상기 제어 프로그램은, 상기 이동 기구를 제어하기 위한 컨트롤러로 하여금,
촬상 지시를 시각 센서에 출력하고, 상기 대상물을 촬상하여 얻어진 화상으로부터 상기 대상물의 실제 위치를 상기 시각 센서에 계측시키는 단계와,
상기 실제 위치에서 소정의 도달 목표 위치로 상기 대상물을 이동시키기 위한, 상기 이동 기구의 필요 이동 거리를 산출하는 단계와,
상기 필요 이동 거리와 시각을 적어도 설명 변수로 하고, 상기 이동 기구의 목표 위치를 목적 변수로 하는 다차 함수로 나타나는 목표 궤도에 기초하여, 상기 촬상 지시가 상기 시각 센서에 출력되는 간격보다 짧은 미리 정해진 제어 주기마다, 현시각에 대응하는 목표 위치를 결정하는 단계와,
상기 결정하는 단계에서 결정되는 목표 위치로 상기 이동 기구를 이동시키는 단계를 실행시키게 하는, 제어 프로그램.As a control program of a moving mechanism for moving an object,
The control program causes a controller for controlling the moving mechanism,
Outputting an imaging instruction to a visual sensor, and measuring an actual position of the object to the visual sensor from an image obtained by imaging the object;
Calculating a required moving distance of the moving mechanism for moving the object from the actual position to a predetermined destination position; and
Based on a target trajectory represented by a multi-order function having at least the required travel distance and time as explanatory variables and the target position of the moving mechanism as a target variable, a predetermined control in which the imaging instruction is shorter than the interval output to the time sensor For each period, determining a target position corresponding to the present time,
And causing the step of moving the moving mechanism to a target position determined in the determining step to be executed.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018085121A JP6919622B2 (en) | 2018-04-26 | 2018-04-26 | Control systems, control methods, and control programs |
JPJP-P-2018-085121 | 2018-04-26 | ||
PCT/JP2019/014127 WO2019208108A1 (en) | 2018-04-26 | 2019-03-29 | Control system, control method and control program |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20210004958A true KR20210004958A (en) | 2021-01-13 |
Family
ID=68295242
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020207026088A KR20210004958A (en) | 2018-04-26 | 2019-03-29 | Control system, control method and control program |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP6919622B2 (en) |
KR (1) | KR20210004958A (en) |
WO (1) | WO2019208108A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7059968B2 (en) * | 2019-03-01 | 2022-04-26 | オムロン株式会社 | Control device and alignment device |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017024134A (en) | 2015-07-24 | 2017-02-02 | ファナック株式会社 | Workpiece positioning apparatus for positioning workpiece |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09244725A (en) * | 1996-03-05 | 1997-09-19 | Sony Corp | Method and device for track interpolation, and controller |
JPH1124718A (en) * | 1997-07-07 | 1999-01-29 | Toshiba Corp | Device and method for controlling robot |
JP2007257276A (en) * | 2006-03-23 | 2007-10-04 | Toyota Motor Corp | Traveling path preparation method, autonomous traveling object and autonomous traveling object control system |
JP2015213139A (en) * | 2014-05-07 | 2015-11-26 | 国立大学法人 東京大学 | Positioning device |
-
2018
- 2018-04-26 JP JP2018085121A patent/JP6919622B2/en active Active
-
2019
- 2019-03-29 WO PCT/JP2019/014127 patent/WO2019208108A1/en active Application Filing
- 2019-03-29 KR KR1020207026088A patent/KR20210004958A/en not_active Application Discontinuation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017024134A (en) | 2015-07-24 | 2017-02-02 | ファナック株式会社 | Workpiece positioning apparatus for positioning workpiece |
Also Published As
Publication number | Publication date |
---|---|
CN111886556A (en) | 2020-11-03 |
JP2019188549A (en) | 2019-10-31 |
JP6919622B2 (en) | 2021-08-18 |
WO2019208108A1 (en) | 2019-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6167622B2 (en) | Control system and control method | |
CN110581946B (en) | Control system, control device, image processing device, and storage medium | |
KR20200091298A (en) | Hand eye calibration method and system | |
CN110581945B (en) | Control system, control device, image processing device, and storage medium | |
US11874679B2 (en) | Using an imaging device to correct positioning errors | |
KR20210004958A (en) | Control system, control method and control program | |
WO2020003945A1 (en) | Position determination system, control method, and program | |
KR102613860B1 (en) | Control system, control method and computer readable storage medium | |
CN111886556B (en) | Control system, control method, and computer-readable storage medium | |
CN110581944B (en) | Control system, control device, and storage medium | |
JP7020262B2 (en) | Control systems, control methods and programs | |
JPH07244519A (en) | Method for controlling motion of movable target by using picture | |
JP6922829B2 (en) | Control systems, control methods, and control programs | |
US11999068B2 (en) | Control device and alignment device | |
US20220134570A1 (en) | Control device and alignment device | |
WO2024023975A1 (en) | Alignment system, alignment method, and program | |
JPS63254575A (en) | Calibration device for visual sensor | |
CN117593382A (en) | Dual-camera positioning method, device and system, controller and jet printing equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal |