CN109581964B - 控制装置、控制装置的控制方法以及记录媒体 - Google Patents
控制装置、控制装置的控制方法以及记录媒体 Download PDFInfo
- Publication number
- CN109581964B CN109581964B CN201810601818.7A CN201810601818A CN109581964B CN 109581964 B CN109581964 B CN 109581964B CN 201810601818 A CN201810601818 A CN 201810601818A CN 109581964 B CN109581964 B CN 109581964B
- Authority
- CN
- China
- Prior art keywords
- trajectory
- corrected
- control
- control cycle
- plc
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/404—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/408—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by data handling or data format, e.g. reading, buffering or conversion of data
- G05B19/4083—Adapting programme, configuration
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01N—INVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
- G01N21/00—Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
- G01N21/84—Systems specially adapted for particular applications
- G01N21/88—Investigating the presence of flaws or contamination
- G01N21/8851—Scan or image signal processing specially adapted therefor, e.g. for scan signal adjustment, for detecting different kinds of defects, for compensating for structures, markings, edges
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/401—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for measuring, e.g. calibration and initialisation, measuring workpiece for machining purposes
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/31—From computer integrated manufacturing till monitoring
- G05B2219/31399—Station corrects nc program, sends back modified program to program generator
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/36—Nc in input of data, input key till input tape
- G05B2219/36414—Compare image detected path with stored reference, difference corrects position
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/45—Nc applications
- G05B2219/45147—Machining blade, airfoil
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Chemical & Material Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Analytical Chemistry (AREA)
- Biochemistry (AREA)
- Signal Processing (AREA)
- Immunology (AREA)
- Pathology (AREA)
- Manipulator (AREA)
- Numerical Control (AREA)
- Control Of Position Or Direction (AREA)
- Feedback Control In General (AREA)
Abstract
本发明提供一种控制装置、控制装置的控制方法以及记录媒体,使用工件的拍摄结果对目标轨迹进行修正,并且将控制对象的各控制周期的移动量维持成固定。可编程逻辑控制器是以各控制周期的修正后轨迹的长度与各控制周期的规范轨迹的长度大致一致的方式,生成各控制周期的修正后轨迹。
Description
技术领域
本发明涉及一种控制装置、控制装置的控制方法以及记录媒体,所述控制装置生成使用工件的拍摄结果对表示沿着所述工件的表面移动的控制对象的各控制周期的目标位置的目标轨迹进行修正而成的修正后轨迹。
背景技术
先前,已知有一种使用工件的拍摄结果对成为使控制对象沿着所述工件的表面移动时的基准的目标轨迹进行修正的技术。例如,在下述的专利文献1中揭示有如下的技术:根据窗口的拍摄图像来检测窗口的外形图案,并利用外形图案与基准图案的比较,对作为相对于基准图案的移动轨迹的目标轨迹进行修正。
[现有技术文献]
[专利文献]
[专利文献1]日本专利特开2002-355605号公报(2002年12月10日公开)
发明内容
[发明所要解决的问题]
但是,如上所述的现有技术存在未考虑目标轨迹的长度与使用拍摄结果对目标轨迹进行修正而成的修正后轨迹的长度之间的差这一问题。
即,当为了弥补根据工件的设计数据等所算出的工件的理想的形状与实际的工件的形状的差而使用工件的拍摄图像对目标轨迹进行修正时,存在目标轨迹的长度与修正后轨迹的长度不完全一致的情况。
但是,当虽然目标轨迹的长度与修正后轨迹的长度不一致,但维持实现两者的轨迹的控制周期的长度(时间间隔)与执行次数时,所述控制对象的各控制周期的移动量在目标轨迹与修正后轨迹中不同。而且,例如关于用于密封剂(sealer)涂布装置的控制等的轨迹,由于工件表面的各部位的密封剂的涂布量与各控制周期的分配器(dispenser)的移动量成比例,因此若修正后轨迹的各控制周期的长度变动,则在各部位中密封剂的涂布量变动。
本发明的一方式的目的在于实现一种控制装置等,所述控制装置可使用工件的拍摄结果对关于沿着所述工件的表面移动的控制对象的目标轨迹进行修正,并且将所述控制对象的各控制周期的移动量维持成固定。
[解决问题的技术手段]
为了解决所述课题,本发明的一方式的控制装置是生成使用工件的拍摄结果对关于沿着所述工件的表面移动的控制对象的目标轨迹进行修正而成的修正后轨迹的控制装置,具备取得部,取得各控制周期的所述目标轨迹;以及生成部,使所述各控制周期的所述修正后轨迹的长度与所述各控制周期的所述目标轨迹的长度大致一致,并根据所述各控制周期的所述目标轨迹,生成所述各控制周期的所述修正后轨迹。
根据所述构成,所述控制装置生成使用所述工件的拍摄结果对所述目标轨迹进行修正而成的修正后轨迹,所述各控制周期的所述修正后轨迹的长度与所述各控制周期的所述目标轨迹的长度大致一致。
因此,所述控制装置取得如下的效果:可使用工件的拍摄结果对关于沿着所述工件的表面移动的控制对象的目标轨迹进行修正,并且将所述控制对象的各控制周期的移动量维持成固定。
本发明的控制装置也可以将i、j分别设为1以上的整数,且进而具备选择部,所述选择部在根据第j个所述控制周期的所述目标轨迹而生成第i个所述控制周期的所述修正后轨迹的情况下,从第j+1个所述控制周期、及其前后的所述控制周期的所述目标轨迹中选择一个作为与第i+1个所述控制周期的所述修正后轨迹相对应的所述目标轨迹,所述生成部根据由所述选择部所选择的所述控制周期的所述目标轨迹,生成第i+1个所述控制周期的所述修正后轨迹。
根据所述构成,所述控制装置根据从第j+1个所述控制周期、及其前后的所述控制周期的所述目标轨迹中选择的一个所述目标轨迹,生成第i+1个所述控制周期的所述修正后轨迹。
此处,存在根据工件的设计数据等所设定的所述目标轨迹的总距离(长度)与根据实际的工件的形状所生成的所述修正后轨迹的总距离(长度)不一致的情况。当虽然长度在所述目标轨迹与所述修正后轨迹中不一致,但维持实现两者的轨迹的所述控制周期的长度(时间间隔)与执行次数时,所述控制对象的所述各控制周期的移动量在所述目标轨迹与所述修正后轨迹中不同。
因此,所述控制装置通过调整所述控制周期的执行次数,而维持所述控制对象的所述各控制周期的移动量及所述控制周期的长度,并弥补所述目标轨迹与所述修正后轨迹的长度的差异。
具体而言,所述控制装置根据从第j+1个所述控制周期、及其前后的所述控制周期的所述目标轨迹中选择的一个所述目标轨迹,生成第i+1个所述控制周期的所述修正后轨迹,由此调整所述控制周期的执行次数。例如,所述控制装置根据第j个、第j+1个、及第j+2个的任一个所述控制周期的所述目标轨迹,生成第i+1个所述控制周期的所述修正后轨迹,由此调整所述控制周期的执行次数。
因此,所述控制装置取得如下的效果:可使用所述工件的拍摄结果对所述目标轨迹进行修正,并且调整所述控制周期的执行次数,将所述控制对象的各控制周期的移动量维持成固定。
本发明的控制装置也可以将i设为1以上的整数,且进而具备结果取得部,所述结果取得部针对所述控制周期的k倍大于从所述拍摄结果的生成至取得所需要的时间的整数k,最迟在所述控制对象到达第i个控制周期的所述修正后轨迹的目标位置的时间点,在所述控制周期的k倍的周期内反复开始与第i+2k个控制周期的所述修正后轨迹的目标位置相对应的所述拍摄结果的取得,所述生成部使用所述结果取得部所取得的所述拍摄结果,生成从第i+k+1个至第i+2k个为止的各个控制周期的所述修正后轨迹。
根据所述构成,所述控制装置最迟在所述控制对象到达第i个控制周期的所述目标位置的时间点,在所述控制周期的k倍的周期内反复开始与第i+2k个控制周期的所述目标位置相对应的所述拍摄结果的取得。
此处,所述控制周期的k倍大于从所述拍摄结果的生成至取得所需要的时间。而且,所述控制装置最迟在所述控制对象到达第i个控制周期的所述目标位置的时间点开始“与第i+2k个控制周期的所述目标位置相对应的所述拍摄结果(即,与提前2k控制周期的控制周期相对应的所述拍摄结果)”的取得。因此,所述控制装置可最迟在第i+k个控制周期中,在所述控制周期的k倍的周期内反复取得“与提前2k控制周期的控制周期相对应的所述拍摄结果”。
另外,所述控制装置使用所述结果取得部所取得的所述拍摄结果,生成从第i+k+1个至第i+2k个为止的各个控制周期的所述修正后轨迹。即,所述控制装置最迟在第i+k个控制周期中取得所述拍摄结果,并使用所取得的所述拍摄结果,生成从第i+k+1个至第i+2k个为止的各个控制周期的所述修正后轨迹。
因此,所述控制装置取得如下的效果:可在所述控制周期的k倍的周期内反复取得所述工件的所期望的一部分的所述拍摄结果,而非针对所述工件的整体的所述拍摄结果,由此生成所述修正后轨迹。
另外,所述控制装置可使用最迟在第i+k个控制周期中取得的所述拍摄结果,生成从第i+k+1个至第i+2k个为止的各个控制周期的所述修正后轨迹。即,所述控制装置在所述控制周期的k倍的周期内反复取得与提前2k控制周期的控制周期相对应的所述拍摄结果,并最迟在第i+k个控制周期中生成从第i+k+1个至第i+2k个为止的各个控制周期的所述修正后轨迹。
因此,所述控制装置取得如下的效果:可不中断所述修正后轨迹的生成,在所述控制周期的k倍的周期内反复取得所述工件的所期望的一部分的所述拍摄结果,并生成所述修正后轨迹。
在本发明的控制装置中,所述生成部也可以事先生成从第1个至第2k个为止的各个所述控制周期的所述修正后轨迹,且所述结果取得部最迟在所述控制对象到达第k个控制周期的所述修正后轨迹的目标位置的时间点,开始与第3k个控制周期的所述修正后轨迹的目标位置相对应的所述拍摄结果的取得。
根据所述构成,所述控制装置事先生成从第1个至第2k个为止的各个所述控制周期的所述修正后轨迹。另外,所述控制装置最迟在所述控制对象到达第k个控制周期的所述修正后轨迹的目标位置的时间点,开始与第3k个控制周期的所述修正后轨迹的目标位置相对应的所述拍摄结果的取得。
即,所述控制装置在从第1个至第2k个为止的各个所述控制周期中,执行使用事先生成的从第1个至第2k个为止的各个所述控制周期的所述修正后轨迹的控制。
另外,所述控制装置最迟在所述控制对象到达第k个控制周期的所述修正后轨迹的目标位置的时间点,开始与第3k个控制周期的所述修正后轨迹的目标位置相对应的所述拍摄结果的取得。因此,所述控制装置最迟在第2k个控制周期中取得“与第3k个控制周期的所述修正后轨迹的目标位置相对应的所述拍摄结果”。而且,所述控制装置使用最迟在第2k个控制周期中取得的所述拍摄结果,生成从第2k+1个至第3k个为止的各个所述控制周期的所述修正后轨迹。即,所述控制装置在使用事先生成的从第1个至第2k个为止的各个所述控制周期的所述修正后轨迹的控制的执行过程中,生成从第2k+1个至第3k个为止的各个所述控制周期的所述修正后轨迹。
因此,所述控制装置取得如下的效果:可不中断所述修正后轨迹的生成,在所述控制周期的k倍的周期内反复取得所述工件的所期望的一部分的所述拍摄结果,并生成第1个以后的各控制周期的所述修正后轨迹。
在本发明的控制装置中,所述选择部也可以(1)使用所述生成部在所述控制周期的k倍的周期内反复生成的从第i+k+1个至第i+2k个为止的各个控制周期的所述修正后轨迹之中,第i+2k个控制周期的所述修正后轨迹,(2)从第j+3k个所述控制周期、及其前后的所述控制周期的所述目标轨迹中选择一个与第i+3k个控制周期的所述修正后轨迹相对应的所述目标轨迹。
根据所述构成,所述控制装置使用第i+2k个控制周期的所述修正后轨迹,从第j+3k个所述控制周期、及其前后的所述控制周期的所述目标轨迹中选择一个与第i+3k个控制周期的所述修正后轨迹相对应的所述目标轨迹。
如上所述,存在所述目标轨迹的总距离(长度)与所述修正后轨迹的总距离(长度)不一致的情况。另外,所述控制装置以所述各控制周期的所述修正后轨迹的长度与所述各控制周期的所述目标轨迹的长度大致一致的方式,根据所述各控制周期的所述目标轨迹,生成所述各控制周期的所述修正后轨迹。因此,某一控制周期的所述修正后轨迹的目标位置(终点)未必与此某一控制周期的所述目标轨迹的目标位置近似。
例如,存在所述控制装置所生成的某一控制周期的所述修正后轨迹的目标位置比此某一控制周期的所述目标轨迹的目标位置更靠近比此某一控制周期前一个的控制周期的所述目标轨迹的目标位置的附近的情况。在此情况下,为了使所述各控制周期的长度在所述修正后轨迹与所述目标轨迹中大致一致,并抑制两者的背离,所述控制装置理想的是如以下般生成比此某一控制周期后一个的控制周期的所述修正后轨迹。即,所述控制装置理想的是使用此某一控制周期的所述目标轨迹,生成比此某一控制周期后一个的控制周期的所述修正后轨迹。
另外,例如存在所述控制装置所生成的某一控制周期的所述修正后轨迹的目标位置比此某一控制周期的所述目标轨迹的目标位置更靠近比此某一控制周期后一个的控制周期的所述目标轨迹的目标位置的附近的情况。在此情况下,为了使所述各控制周期的长度在所述修正后轨迹与所述目标轨迹中大致一致,并抑制两者的背离,所述控制装置理想的是如以下般生成比此某一控制周期后一个的控制周期的所述修正后轨迹。即,所述控制装置理想的是使用比此某一控制周期后两个的控制周期的所述目标轨迹,生成比此某一控制周期后一个的控制周期的所述修正后轨迹。
因此,所述控制装置使用已生成的所述修正后轨迹,决定最适合于生成提前k周期的控制周期的所述修正后轨迹的控制周期的所述目标轨迹。具体而言,所述控制装置使用第i+2k个控制周期的所述修正后轨迹,从第j+3k个所述控制周期、及其前后的所述控制周期的所述目标轨迹中选择一个与第i+3k个控制周期的所述修正后轨迹相对应的所述目标轨迹。例如,所述控制装置使用第i+2k个控制周期的所述修正后轨迹,从第j+3k-1个、第j+3k个、及第j+3k+1个所述控制周期的所述目标轨迹中决定与第i+3k个控制周期的所述修正后轨迹相对应的所述目标轨迹。
因此,所述控制装置取得如下的效果:可抑制所述修正后轨迹的与所述目标轨迹的背离,并使所述各控制周期的所述修正后轨迹的长度与所述各控制周期的所述目标轨迹的长度大致一致。
在本发明的控制装置中,所述生成部也可以使用由所述结果取得部所取得的所述拍摄结果,针对表示与连续的k个所述控制周期的各者相对应的所述目标轨迹的矢量,执行旋转及平行移动的至少一者,由此在所述控制周期的k倍的周期内反复生成表示与连续的k个所述控制周期的各者相对应的所述修正后轨迹的矢量。
根据所述构成,所述控制装置使用所述拍摄结果,针对表示所述各控制周期的所述目标轨迹的矢量,执行旋转及平行移动的至少一者,由此生成表示所述各控制周期的所述修正后轨迹的矢量。
因此,所述控制装置取得如下的效果:可使用所述拍摄结果,使所述各控制周期的所述修正后轨迹的长度与所述各控制周期的所述目标轨迹的长度大致一致,并生成所述各控制周期的所述修正后轨迹。
为了解决所述课题,本发明的一方式的控制方法是生成使用工件的拍摄结果对关于沿着所述工件的表面移动的控制对象的目标轨迹进行修正而成的修正后轨迹的控制装置的控制方法,包括取得步骤,取得各控制周期的所述目标轨迹;以及生成步骤,使所述各控制周期的所述修正后轨迹的长度与所述各控制周期的所述目标轨迹的长度大致一致,并根据所述各控制周期的所述目标轨迹,生成所述各控制周期的所述修正后轨迹。
根据所述方法,所述控制方法生成使用所述工件的拍摄结果对所述目标轨迹进行修正而成的修正后轨迹,所述各控制周期的所述修正后轨迹的长度与所述各控制周期的所述目标轨迹的长度大致一致。
因此,所述控制方法取得如下的效果:可使用工件的拍摄结果对关于沿着所述工件的表面移动的控制对象的目标轨迹进行修正,并且将所述控制对象的各控制周期的移动量维持成固定。
[发明的效果]
根据本发明的一方式,取得如下的效果:可使用工件的拍摄结果对关于沿着所述工件的表面移动的控制对象的目标轨迹进行修正,并且将所述控制对象的各控制周期的移动量维持成固定。
附图说明
图1是表示本发明的实施方式1的可编程逻辑控制器(Programmable LogicController,PLC)的主要部分构成的方块图。
图2是表示包含图1的PLC的控制系统的整体概要的图。
图3是表示利用图1的PLC的修正后轨迹的生成方法的概要的图。
图4是表示利用图1的PLC的修正后轨迹的生成方法的一例的详细情况的图。
图5是表示图1的PLC所执行的处理的概要的流程图。
图6A及图6B是表示图5中的S102及S109的“修正后指令数据的生成”处理的详细情况的流程图。
图7是表示图6A及图6B中的“提前m周期的目标位置信息的取得”处理(S201及S301)的详细情况的流程图。
图8A至图8C是表示图1的PLC欲实现的目标轨迹的一例等的图。
图9A及图9B是表示图1的PLC生成修正后指令的方法的一例的图。
图10A及图10B是针对图1的PLC生成修正后指令的方法,表示图9A及图9B中所例示的方法以外的方法的图。
图11A至图11C是说明图1的PLC选择成为修正后指令的基础的规范指令的方法的一例的图。
图12A及图12B是针对图1的PLC选择成为修正后指令的基础的规范指令的方法的一例,说明图11A至图11C的后续的图。
图13是针对图1的PLC选择成为修正后指令的基础的规范指令的方法的一例,说明图12A及图12B的后续的图。
图14A至图14C是表示图1的PLC决定成为基准的规范指令后,修正所决定的规范指令来生成修正后指令的方法的一例的图。
图15A及图15B是说明使用图16A~图23所说明的控制处理的前提的图。
图16A及图16B是针对使用图17A~图23所说明的控制处理,说明规范轨迹等的图。
图17A及图17B是表示图1的PLC检测、算出生成修正后指令所需要的特征点等的方法的一例的图。
图18是表示图1的PLC使用所算出的旋转与并进来生成修正后指令的方法的一例的图。
图19A及图19B是表示图1的PLC选择成为基础的规范指令的方法、及检测用以生成修正后指令的特征点的方法的一例的图。
图20A及图20B是表示图1的PLC算出旋转与并进的方法、及通过所算出的旋转与并进来生成修正后指令C'2的方法的一例的图。
图21A及图21B是说明图1的PLC生成修正后指令C'3及修正后指令C'4的方法的一例的图。
图22A及图22B是说明图1的PLC生成修正后指令C'5及修正后指令C'6的方法的一例的图。
图23是将规范指令C0~规范指令C5与图1的PLC所生成的修正后指令C'0~修正后指令C'6进行对比来表示的图。
符号的说明
1:控制系统
10:PLC(控制装置)
20:伺服驱动器
30:伺服电机
40:分配器(控制对象)
50:图像处理装置
60:照相机
110:取得部
120:修正部(生成部)
130:修正量算出部
140:基准判定部(选择部)
150:范围指定部
160:拍摄结果取得部(结果取得部)
170:存储部
171:规范轨迹表
172:修正后轨迹表
180:输出部
A、B、C、D:点
C、C0、C1、C2、C3、C4、C5、Cb:规范轨迹(目标轨迹)
Ci:各控制周期的规范轨迹(各控制周期的目标轨迹)
C'、C'0、C'1、C'2、C'3、C'4、C'5、C'6:修正后轨迹
C'i:各控制周期的修正后轨迹
L:矢量
P0、P1、P2、P3、P4、P5、P'0、P'1、P'2、P'3、P'4、P'5、P'6:目标位置
t0、t1:时间
XY:平面
X、Y、θ:轴
S101~S110、S201~S204、S301~S303、S401~S404:步骤
具体实施方式
[实施方式1]
以下,根据图1~图23对本发明的一方式的实施方式(以下,也表述成“本实施方式”)进行说明。再者,图中对同一部分或相当部分标注同一符号且不重复其说明。在本实施方式中,将对机械及设备等控制对象进行控制的PLC(可编程逻辑控制器,ProgrammableLogic Controller)作为控制装置(控制器)的典型例来进行说明。
§1.应用例
为了使对于本发明的一方式的PLC 10(控制装置)的理解变得容易,首先,使用图2对应用本发明的场景的一例,具体而言,对包含PLC 10的控制系统1的概要进行说明。
图2是表示控制系统1的整体概要的图。控制系统1包括:PLC 10、伺服驱动器(servo driver)20、伺服电机(servo motor)30、分配器40、图像处理装置50、以及照相机60。
PLC 10例如从用户等外部接收用于涂布作业、研削作业、研磨作业等的规范指令数据(目标轨迹、指令轨迹)。在控制系统1中,PLC 10接收关于沿着工件的表面移动的分配器40的规范指令数据。而且,PLC 10根据所接收到的规范指令数据而针对各控制周期生成规范指令(指令位置),换言之,生成各控制周期的规范指令(各控制周期的目标轨迹)。
此处,规范指令数据是根据工件的设计数据等工件的理想的形状来生成·设定,因此PLC 10生成结合实际的工件(实际对象)的形状对规范指令数据进行修正而成的修正后指令数据(修正后轨迹)。具体而言,PLC 10生成使用由照相机60所得的所述工件的拍摄结果(或拍摄图像的分析结果)对各控制周期的规范指令进行修正而成的各控制周期的修正后指令。
再者,各控制周期的规范指令及各控制周期的修正后指令均是表示分配器40的各控制周期的目标位置的信息,因此以下也分别称为“规范轨迹”及“修正后轨迹”。
PLC 10在各控制周期中将所生成的修正后指令输入至伺服驱动器20中,伺服驱动器20根据所收到的修正后指令驱动伺服电机30来使作为控制对象的分配器40移动。
此处,PLC 10所生成的修正后轨迹是结合实际的工件的形状对规范轨迹进行修正而成者,因此修正后轨迹的距离可与规范轨迹的距离不同。因此,PLC 10以可将控制对象的速度保持成固定的方式,调整各控制周期的修正后目标位置(修正后轨迹)。PLC 10例如调整控制周期的执行次数,与规范轨迹的情况下的控制周期的执行次数相比,使修正后轨迹的控制周期的执行次数增减,由此以可将控制对象的速度保持成固定的方式,调整各控制周期的修正后目标位置(修正后轨迹)。
再者,所谓“控制周期”,是指PLC 10反复执行控制动作的周期,具体而言,PLC 10在各控制周期中将指令(修正后指令)输出至伺服驱动器20中,换言之,将各控制周期的修正后指令输出至伺服驱动器20中。
在以下的说明中,只要事先无特别说明,则“i”、“n”、“x”、“y”分别是指“1以上的整数”,“规范轨迹(轨迹指令)Ci-1”表示第i个控制周期的轨迹指令。同样地,“修正后轨迹(修正后指令)C'i-1”表示第i个控制周期的修正后轨迹。再者,当仅记载为“规范轨迹Ci”,而不特定“是第几个控制周期的规范轨迹”时,存在“规范轨迹Ci”是指“各控制周期的规范轨迹”的情况。同样地,当仅记载为“修正后轨迹C'i”,而不特定“是第几个控制周期的修正后轨迹”时,存在“修正后轨迹C'i”是指“各控制周期的修正后轨迹”的情况。另外,将各控制周期的规范轨迹Ci的目标位置(终点、到达点)记载为“Pi”,同样地,将各控制周期的修正后轨迹C'i的目标位置(终点)记载为“P'i”。进而,将连结所有控制周期的规范轨迹Ci的轨迹记载为“规范指令C”,同样地,将连结所有控制周期的修正后轨迹C'i的轨迹记载为“修正后轨迹C'”。
PLC 10将各控制周期的修正后轨迹C'i依次输出至伺服驱动器20中,伺服驱动器20按照从PLC 10所接收到的各控制周期的修正后轨迹C'i,连续地执行控制。具体而言,PLC10从第1个控制周期的修正后轨迹C'0起依次输出第2个控制周期的修正后轨迹C'1、第3个控制周期的修正后轨迹C'2、第4个控制周期的修正后轨迹C'3、···、第n个控制周期的修正后轨迹C'n-1。伺服驱动器20按照从PLC 10所接收到的修正后轨迹C'0、修正后轨迹C'1、修正后轨迹C'2、修正后轨迹C'3、···、修正后轨迹C'n-1,对伺服电机30连续地执行控制。伺服驱动器20按照各控制周期的修正后轨迹C'i对伺服电机30的驱动进行控制,由此分配器的各控制周期的位置变化的轨迹变得与修正后轨迹C'i大致一致。
伺服驱动器20与PLC 10连接,并且按照来自PLC 10的各控制周期的修正后轨迹C'i来驱动伺服电机30。更具体而言,伺服驱动器20在固定周期(控制周期)内从PLC 10接收修正后轨迹C'i(修正后指令、输入轨迹)。另外,伺服驱动器20从与伺服电机30的轴连接的位置传感器(旋转编码器)、扭矩传感器等检测器取得位置、速度(典型的是根据本次位置与上次位置的差来算出)、扭矩等与伺服电机30的动作相关的实测值。而且,伺服驱动器20将来自PLC 10的修正后轨迹C'i设定为目标值,并将实测值作为反馈值来进行反馈控制。即,伺服驱动器20是以实测值接近目标值的方式调整用以驱动伺服电机30的电流。再者,伺服驱动器20有时也被称为伺服电机放大器(servo motor amplifier)。
伺服电机30按照伺服驱动器20的控制来使分配器40移动,分配器40例如为密封剂的涂布用头。
图像处理装置50接收来自PLC 10的范围指定(指定照相机60的拍摄范围的信息),并使照相机60拍摄对应于所接收到的范围指定的“实际的工件(实际对象)的一部分”。图像处理装置50从照相机60取得照相机60所拍摄的与“工件的一部分”相关的拍摄图像,并对所取得的拍摄图像进行分析而生成特征点信息。关于特征点信息,详细情况将使用图3等来后述。图像处理装置50将所生成的特征点信息输出至PLC 10中。
§2.构成例
图3是表示利用PLC 10的修正后轨迹C'i的生成方法的概要的图。在图3中,由单点划线表示的轨迹是作为规范指令所提供的指令轨迹(规范轨迹C),且显示有“各控制周期的目标位置Pi(点序列数据)”。规范轨迹C是根据工件的设计数据等而事先提供的轨迹,且为“既定的规范轨迹”。
相对于此,由实线表示的轨迹表示根据实际对象(实际的工件)所要求的轨迹(要求轨迹)。实际的工件的形状有时与工件的设计数据所示的形状不完全一致。
因此,PLC 10生成使用实际对象的拍摄图像,以减少规范轨迹C与要求轨迹的差的方式对规范轨迹C进行修正而成的修正后轨迹C'。在图3中,由双点划线表示的轨迹是PLC10根据实际对象的形状对规范轨迹C进行修正而成的轨迹,即为PLC 10所生成的修正后轨迹C'。例如,PLC 10如以下所示般对“m个周期的规范轨迹Ci”进行修正,而生成“m个周期的修正后轨迹C'i”。即,PLC 10根据“与从正在动作的当前位置起提前m周期的规范轨迹Ci的目标位置Pi相对应的在工件的拍摄图像上所检测的修正目标位置(实际对象的要求位置,例如特征点)”,对规范轨迹Ci进行修正而生成修正后轨迹C'i。
再者,虽然详细情况将使用图4来后述,但“m”表示PLC 10的控制周期Tc[ms]的m倍大于从“图像的拍摄”至“所期望的位置(例如目标位置)的测量结果的取得”为止所需要的时间(图像处理周期Tp[ms])的2倍的整数。即,“m”是满足“Tc×m>2Tp”的整数。换言之,“m”也可以使用比图像处理所需要的时间Tp[ms]大的k周期,即满足“Tc×k>Tp”的整数“k”来定义为“m=2k”。
图4是表示利用PLC 10的修正后轨迹C'i的生成方法的一例的详细情况的图。通常,作为图像处理所需要的期间(处理时间)的图像处理周期Tp[ms]比轨迹控制的处理周期(即,控制周期Tc[ms])大。因此,PLC 10对大于图像处理装置的图像处理时间Tp(例如,从“图像的拍摄”至“所期望的位置的测量结果的取得”为止所需要的时间)的2倍的提前m周期的目标位置Pi进行修正。由此,PLC 10一面在各m/2周期内,即在各k周期内,进行利用拍摄图像的目标位置修正,一面在此期间内根据既定的规范轨迹(具体而言,已生成的修正后轨迹C'i)进行内插,而实现不停顿的连续的动作。
再者,在图4中,点A表示工件的“与从动作开始位置(动作开始前的时间点)起提前m/2周期,即提前k周期的修正后轨迹C'i的目标位置P'i(到达位置)相对应的部分”。换言之,点A表示工件的“从动作开始位置起提前k周期的修正后轨迹C'i的目标位置P'i的周边区域”。
再者,虽然详细情况将后述,但第i+1个控制周期的修正后轨迹C'i的目标位置P'i是对第i个、第i+1个、及第i+2个的任一个控制周期的规范轨迹Cx的目标位置Px进行修正而成者。因此,点A也可以作为“与从动作开始位置起提前k周期、或提前k+1周期、或提前k+2周期的规范轨迹Cx的目标位置Px(到达位置)相对应的部分”来定义。
另外,在图4中,点B表示工件的“与从动作开始位置(动作开始前的时间点)起m提前周期的修正后轨迹C'i的目标位置P'i相对应的部分”。换言之,点B表示工件的“与从点A(更准确而言,分配器40到达点A的控制周期)起提前m/2周期的修正后轨迹C'i的目标位置P'i 相对应的部分”。同样地,点C表示工件的“与从点A(更准确而言,分配器40到达点A的控制周期)起提前m周期的修正后轨迹C'i的目标位置P'i相对应的部分”。换言之,点C表示工件的“与从点B(更准确而言,分配器40到达点B的控制周期)起提前m/2周期的修正后轨迹C'i的目标位置P'i相对应的部分”。进而,点D表示工件的“与从点B(更准确而言,分配器40到达点B的控制周期)起提前m周期的修正后轨迹C'i的目标位置P'i相对应的部分”。换言之,点D表示工件的“与从点C(更准确而言,分配器40到达点C的控制周期)起提前m/2周期的修正后轨迹C'i的目标位置P'i相对应的部分”。
在图4所示的例中,(1)在动作开始时,PLC 10事先生成m个周期的修正后轨迹C'i。即,PLC 10在利用伺服驱动器20的分配器40的位置控制的执行开始时间点,即分配器40位于动作开始位置(低速控制动作的开始位置)的时间点,事先生成m个周期的修正后轨迹C'i。
具体而言,PLC 10使用照相机60事先拍摄的“工件的包含点B的区域”的拍摄结果,在动作开始时,事先生成m个周期的修正后轨迹C'i。在图4中,由虚线表示的曲线表示PLC10在动作开始前事先生成的m个周期的修正后轨迹C'i。
(2)在分配器40到达A点的时间点(到达A点时),PLC 10经由图像处理装置50而使照相机60拍摄“工件的包含点C(与从点A起提前m周期的修正后轨迹C'i的目标位置P'i相对应的部分)的部分·区域”。如所述定义般,“控制周期Tc的m/2倍大于图像处理周期Tp”。因此,PLC 10在比分配器40到达B点(与从点A起提前m/2周期的修正后轨迹C'i的目标位置P'i相对应的位置)的时间点(到达B点时)更早的时间点,取得在到达A点时使照相机60所拍摄的“包含点C的区域”的拍摄结果。换言之,PLC 10在比到达B点时更早的时间点取得“包含点C的区域”的拍摄结果。
此处,利用PLC 10的与“使用图像处理结果对规范轨迹进行修正的修正后轨迹的生成”相关的处理时间是十分短而可无视的程度。因此,在到达B点时,PLC 10使用“包含点C的区域”的拍摄结果,生成与到达A点时相比提前m周期的修正后轨迹C'i。
即,在到达A点时,PLC 10使照相机60拍摄“工件的包含点C的区域”,在到达B点时,PLC 10使用其拍摄结果,生成与到达A点时相比提前m周期的修正后轨迹C'i,即,生成进行从A点起提前m周期的目标位置修正的轨迹。
(3)在分配器40到达B点的时间点(到达B点时),PLC 10经由图像处理装置50而使照相机60拍摄“工件的包含点D(与从点B起提前m周期的修正后轨迹的目标位置相对应的部分)的部分·区域”。PLC 10在比分配器40到达C点(与从B点起提前m/2周期的修正后轨迹C'i的目标位置P'i相对应的位置)的时间点(到达C点时)更早的时间点,取得在到达B点时使照相机60所拍摄的“包含点D的区域”的拍摄结果。因此,在到达C点时,PLC 10使用“包含点D的区域”的拍摄结果,生成与到达B点时相比提前m周期的修正后轨迹C'i。
即,在到达B点时,PLC 10使照相机60拍摄“工件的包含点D的区域”,在到达C点时,PLC 10使用其拍摄结果,生成与到达B点时相比提前m周期的修正后轨迹C'i,即,生成进行从B点起提前m周期的目标位置修正的轨迹。
(PLC 10所执行的处理的概要)
图5是表示PLC 10所执行的处理的概要的流程图。如上所述,PLC 10在开始对于分配器40的控制之前,事先算出比图像处理所需要的时间(即,图像处理周期Tp)大的k周期。PLC 10从图像处理装置50取得照相机60的拍摄结果(特别是特征点信息)来进行修正的目标位置例如为满足m=2k的提前m周期的规范指令(规范轨迹C)的目标位置P。
PLC 10首先根据用户等所生成的规范轨迹C(NC数据等),生成成为各控制周期的规范的轨迹指令数据,即规范轨迹Ci(i=0、···、m-1)(S101)。
PLC 10使用所生成的各控制周期的规范轨迹Ci(i=0、···、m-1),生成动作开始前的各控制周期的修正后指令数据,即修正后轨迹C'i(i=0、···、m-1)(S102)。再者,S102的“动作开始前的修正后轨迹数据的生成”处理的详细情况将使用图6A来后述。
PLC 10将p设为0(S103),并将q设为0(S104),而执行修正后轨迹数据C'p+q的动作(S105)。即,PLC 10将修正后轨迹数据C'0输出至伺服驱动器20中,而使伺服驱动器20执行基于修正后轨迹数据C'0的分配器40(伺服电机30)的控制。
PLC 10判定是否已结束整个轨迹(即,用户等所生成的规范轨迹C)的控制,即整个轨迹的输出(S106)。PLC 10若判定已结束整个轨迹的输出(S106中为是(Yes)),则结束处理。
PLC 10若判定未结束整个轨迹的输出(S106中为否(No)),则使q仅加上1,即设为“q=q+1”(S107)。其后,PLC 10判定q是否为k以上,即q是否满足“q≧k”(S108)。
PLC 10若判定q未满k(S108中为否(No)),则重复从S105至S108为止的处理。PLC10若判定q为k以上(S108中为是(Yes)),则生成下一个修正后轨迹数据(C'p+m、C'p+m+1、···、C'p+m+k-1)(S109)。再者,S109的“下一个修正后轨迹数据的生成”处理的详细情况将使用图6B来后述。
在执行S109的处理后,PLC 10使p仅加上k,即设为“p=p+k”(S110),重复从S104至S109为止的处理,直到判定已结束整个轨迹的输出(S106中为是(Yes))为止。
图6A及图6B是表示图5中的S102及S109的“修正后轨迹数据的生成”处理的详细情况的流程图。图6A是表示图5中的S102的“动作开始前的修正后轨迹数据(C'0、C'1、···、C'm-1)的生成”处理的详细情况的流程图。图6B是表示图5中的S109的“下一个修正指令数据(C'p+m、C'p+m+1、···、C'p+m+k-1)的生成”处理的详细情况的流程图。
如图6A所示,在图5中的S102的“动作开始前的修正后轨迹数据的生成”处理中,PLC 10首先对图像处理装置50指示提前m周期的目标位置信息(换言之,提前m周期的特征点信息)的取得(S201)。此“提前m周期的目标位置信息的取得”处理的详细情况将使用图7来后述。
PLC 10判定利用图像测量部件(即,图像处理装置50)的测量(即,对于照相机60的拍摄图像的利用图像处理装置50的分析处理)是否已完成(S202)。PLC 10若判定利用图像测量部件的测量未完成(S202中为否(No)),则重复此判定直至判定利用图像测量部件的测量完成为止。
所谓“利用图像测量部件的测量”,例如是指“图像处理装置50对照相机60的拍摄图像进行分析,例如算出表示实际对象的所期望的一部分的形状·轮廓的信息(具体而言,表示构成所期望的一部分的缘·边的曲线等的信息等)”处理。图像处理装置50朝PLC 10中输出的特征点信息(目标位置信息)也可以包含“利用图像测量部件的测量”处理的结果(测量结果),即包含“表示构成所期望的一部分的缘·边的曲线等的信息”。
PLC 10若判定利用图像测量部件的测量已完成(S202中为是(Yes)),则从图像测量部件取得测量结果(即,与提前m周期的目标位置相对应的特征点信息),并根据所取得的测量结果,算出轨迹的位移及旋转(S203)。
然后,PLC 10使用所算出的位移及旋转来变换规范轨迹,而生成修正后轨迹(S204)。
如图6B所示,在图5中的S109的“下一个修正指令数据的生成”处理中,PLC 10首先对图像处理装置50指示提前m周期的目标位置信息(特征点信息)的取得(S301)。此“提前m周期的目标位置信息的取得”处理的详细情况将使用图7来后述。
PLC 10根据“已取得的测量结果(即,在k周期前的S301中对图像测量部件指示取得的目标位置信息(特征点信息))”,算出轨迹的位移及旋转(S302)。此处,所谓“已取得的测量结果”,是指“在k周期前指示执行的相对于实际对象的目标位置·部分(由范围指定所指定的范围)的拍摄结果的测量结果”,即是指作为在k周期前指示执行的拍摄·分析处理的结果的特征点信息。
如使用图4等所说明般,PLC 10从指示起k周期后取得对照相机60(图像处理装置50)指示拍摄的工件的“与提前m周期(2k)的目标位置Pi相对应的部分”的测量结果(即,特征点信息)。在PLC 10执行S302的处理之前,PLC 10在k周期前的S301中对图像处理装置50指示的“利用图像测量部件的测量(提前m周期的目标位置信息的取得)”已完成。而且,图像处理装置50将测量结果(目标位置信息,即特征点信息)输出至PLC 10中,PLC 10在从S301中的指示起k周期后的S302的执行前取得此测量结果。即,PLC 10在从指示起k周期后的S302之前取得PLC 10在S301中对图像处理装置50指示的“提前m周期的目标位置信息的取得”处理的结果,并在从指示起k周期后的S302中,使用所取得的测量结果执行S302。
PLC 10使用在S302中算出的位移及旋转来变换(即,修正)规范轨迹Ci,而生成修正后轨迹C'i(S303)。
图7是表示图6A及图6B中的“提前m周期的目标位置信息的取得”处理(S201及S301)的详细情况的流程图。如图7所示,PLC 10首先针对上次生成的修正后轨道C'i的目标位置P'i,算出相对于作为修正后轨道C'i的基准的规范轨迹Ci的目标位置Pi的位移方向及位移量(S401)。再者,PLC 10不在图6A的S201的“提前m周期的目标位置信息的取得”处理中执行S401的处理,换言之,在动作开始前的修正后轨迹数据生成时,PLC 10不执行S401的处理。
PLC 10使用所算出的位移方向及位移量,决定成为用以求出提前m周期的修正后轨道C'i的目标位置P'i的基准的规范轨迹Ci(S402)。再者,此“规范轨迹的决定”处理的详细情况将参照图11A~图13来后述。
PLC 10使用所决定的规范轨迹,决定特征点检测范围(S403),并将所决定的特征点检测范围作为“范围指定”,而输出至图像处理装置50中。而且,PLC 10经由图像处理装置50而使照相机60拍摄所决定的特征点检测范围,并使图像处理装置50根据照相机60的拍摄结果来检测特征点(工件的表示特征点检测范围的形状的缘·边等)。进而,PLC 10也可以使图像处理装置50测量特征点的坐标等。即,PLC 10使图像处理装置50及照相机60执行“拍摄·特征点检测·测量”处理(S404)。“拍摄·特征点检测·测量”处理是图像测量部件(图像处理装置50及照相机60)的已定义的处理。即,“拍摄·特征点检测·测量”处理可使用先前的“对拍摄对象中的特定的部分进行拍摄,并根据拍摄图像来检测表示其特定的部分的形状的缘·边等特征点,且测量所检测到的特征点的坐标等”处理来实现。
§3.动作例
为了容易理解PLC 10,使用图8A~图14C对PLC 10生成二维的圆弧轨迹的情况进行说明。另外,以下为了使说明变得简单,使用以未满1个控制周期完成从“图像的拍摄”至“特征点的提取、及测量结果的取得”为止的例子。即,针对使用图5~图7所说明的流程,设为“k=1”、“m=2”来进行以下说明。
1.准备
1.1.成为规范的轨迹数据的生成
关于使用图8A~图14C进行说明的PLC 10的控制例,将各控制周期的移动量数据(轨迹数据)设为作为规范轨迹Ci(i=0、1、2、···、m-1)的m个数据。此处,“m”无需为有限的值,只要PLC 10所执行的控制中需要的轨迹数据被确保在PLC 10的数据缓冲区(存储部170)等中,则也可以是如随时生成、更新规范轨迹般的方式。
另外,各个规范轨迹Ci(i=0、1、2、···、m-1)相对于n维的坐标系上的轨迹,具有“Ci={dx1(i)、dx2(i)、dx3(i)、···、dxn(i)}”这一n个移动量的要素。例如,在二维坐标中的圆弧的情况下,规范轨迹Ci具有二维的要素(dx(i)、dy(i))。
图8A至图8C表示PLC 10欲实现的规范轨迹C的一例(图8A),用以实现此规范轨迹C的各控制周期的规范轨迹Ci(图8B),以及针对各控制周期的规范轨迹Ci,各控制周期的速度(图8C)。如图8A至图8C所示,PLC 10通过m个定速的规范轨迹Ci(各控制周期的速度固定的规范轨迹Ci),例如实现二维的圆弧。
1.2.(动作开始前)初次、下次的修正后指令的生成
PLC 10在动作开始前,事先生成m个周期的修正后轨迹C'i,即,使用各控制周期的规范轨迹Ci(i=0、···、m-1),生成各控制周期的修正后轨迹C'i(i=0、···、m-1)。此处,如上所述,由于“m=2”,因此PLC 10在动作开始前,事先生成相对于规范轨迹C0、规范轨迹C1的各者的修正后轨迹C'0、修正后轨迹C'1的各者。PLC 10例如通过图9A及图9B中所示的方法,根据规范轨迹C0、规范轨迹C1的各者来生成修正后轨迹C'0、修正后轨迹C'1的各者。
图9A及图9B表示PLC 10根据规范轨迹C0、规范轨迹C1的各者来生成修正后轨迹C'0、修正后轨迹C'1的各者的方法的一例。如图9A及图9B所示,(1)针对在PLC 10的动作开始前(停止状态时)照相机60所拍摄的图像,图像处理装置50在规范轨迹C1的法线上检测特征点。图像处理装置50对PLC 10通知所检测到的特征点的坐标等信息(特征点信息)。
(2)PLC 10针对“将规范轨迹C0的始点与规范轨迹C1的终点(目标位置)连结的线”与“将开始位置(初始位置)与所检测到的特征点连结的线”,求出“旋转量(倾斜量)”与“并进量(位移量)”。即,PLC 10算出使“将规范轨迹C0的始点与规范轨迹C1的终点连结的线”与“将开始位置(初始位置)与所检测到的特征点连结的线”平行所需要的“旋转量(倾斜量)”。另外,PLC 10算出作为使规范轨迹C0的始点朝开始位置(初始位置)移动的量的“并进量(位移量)”(图9A)。
此处,与“规范轨迹C1的目标位置(终点)”相对应的“实际对象(实际的工件)的特征点”的检测并不限定于在规范轨迹C1的法线上的检测。例如,也可以在对实际对象的轮廓画垂线时距离变得最短的线上,决定与“规范轨迹C1的目标位置(终点)”相对应的“实际对象(实际的工件)的特征点”。另外,例如也可以在包围规范轨迹C1的目标位置的周围的特定的区域内,探索与“规范轨迹C1的目标位置”相对应的“实际对象(实际的工件)的特征点”。具体而言,也可以根据在将目标位置作为中心的圆形区域内所检测到的特定图案等,决定“实际对象(实际的工件)的特征点”。
(3)PLC 10通过(2)中所求出的旋转量与并进量,而生成将规范轨迹C0及规范轨迹C1的各者变换(即,修正)而成的修正后轨迹C'0及修正后轨迹C'1的各者。
再者,在图9A及图9B所示的例中,PLC 10通过成为规范的指令(规范轨迹Ci)、及修正后的指令(修正后轨迹C'i)的各者的相对于“将始点与终点连结的线”的旋转量(倾斜量)与并进量(位移量),而生成修正后轨迹C'i。即,“将规范轨迹C0的始点与规范轨迹C1的终点连结的线”是“将成为规范的指令(规范轨迹Ci)的始点与终点连结的线”。另外,“将开始位置(初始位置)与所检测到的特征点连结的线”是“将修正后的指令(修正后轨迹C')的始点与终点连结的线”。在图9A及图9B的例中,PLC 10通过从“将成为规范的指令的始点与终点连结的线”至“将修正后的指令的始点与终点连结的线”的旋转与并进,而生成修正后轨迹C'i。但是,PLC 10生成修正后轨迹C'0及修正后轨迹C'1的各者的方法并不限定于图9A及图9B中所示的方法。
图10A及图10B针对PLC 10根据规范轨迹C0、规范轨迹C1的各者来生成修正后轨迹C'0、修正后轨迹C'1的各者的方法,例示图9A及图9B中所例示的方法以外的方法。例如,如图10A所示,PLC 10也可以针对“穿过修正后的指令的始点(开始位置)与所检测到的特征点的线”,利用最小平方法来求出如偏差变得最小的斜度。另外,如图10B所示,PLC 10也可以在满足对于对象物的轮廓的规定的规则(间隙等)的“修正后轨迹”群中,选择由修正后轨迹与实际对象的轮廓所围成的面积变得最小的修正后轨迹。
2.根据修正后指令C'0开始动作
PLC 10将事先生成的修正后轨迹C'0输出至伺服驱动器20中,而使伺服驱动器20执行基于修正后轨迹C'0的伺服电机30(即,分配器40)的控制。
3.在修正后指令C'0的动作结束时生成修正后指令C'2
PLC 10在修正后轨迹C'0的动作结束时间点,执行以下的“3.1.”~“3.3.”的处理来生成修正后轨迹C'2。再者,所谓“修正后轨迹C'0的动作结束时间点”,是指“修正后轨迹C'1的动作开始时间点”,换言之,是指“分配器40位于作为修正后轨迹C'0的终点的P'0上的时间点”。
3.1.成为基准(参照基础)的规范指令Ci的决定(选择判定)
PLC 10如以下所示般决定“以哪个规范轨迹Cx为基准,生成下一个(具体而言,提前m周期的)控制周期的修正后轨迹C'i,即,生成从分配器40到达当前位置的控制周期起提前m周期的控制周期的修正后轨迹C'i”。即,使用“上次生成的修正后轨迹C'i的目标位置P'i(到达位置)”与“成为上次生成的修正后轨迹C'i的基准的规范轨迹Ci的目标位置Pi”来决定。再者,上次生成的修正后轨迹C'i的控制周期未必与成为修正后轨迹C'i的基准的规范轨迹Ci的控制周期相同。
例如,PLC 10在“分配器40的当前位置=P'0”的时间点,根据“修正后轨迹C'1的目标位置P'1”与“成为修正后轨迹C'1的基准的规范轨迹C1的目标位置P1”的关系,决定成为修正后轨迹C'2的基础的规范轨迹Cx。
PLC 10例如通过图11A~图13中所示的方法,根据“修正后轨迹C'1的目标位置P'1”与“规范轨迹C1的目标位置P1”的关系,生成成为修正后轨迹C'2的基础的规范轨迹Cx。
再者,在图11A~图13中,例示PLC 10通过“规范轨迹C1的目标位置P1”与“修正后轨迹C'1的目标位置P'1”的位置关系及两者之间的距离,判定(选择)成为修正后轨迹C'2的基础的规范轨迹的方法。但是,PLC 10根据“修正后轨迹C'1的目标位置P'1”与“规范轨迹C1的目标位置P1”的关系,选择成为修正后轨迹C'2的基础的规范轨迹的方法并不限定于图11A~图13中所例示的方法。PLC 10例如也可以选择“与目标位置P'1的距离最短的规范轨迹指令”作为“成为修正后轨迹C'2的基础的规范轨迹”。
图11A至图11C是说明PLC 10根据“修正后轨迹C'1的目标位置P'1”与“规范轨迹C1的目标位置P1”的关系,选择成为修正后轨迹C'2的基础的规范轨迹Cx的方法的一例的图。如图11A所示,首先,PLC 10(1)求出从目标位置P'1至目标位置P1的矢量L。继而,PLC 10(2)根据“L的朝向”,判定相对于原本的指令位置(规范轨迹C1的目标位置)P1,修正后轨迹C'1的目标位置P'1是“未到达”、还是“已超过”。
图12A及图12B是针对PLC 10根据“修正后轨迹C'1的目标位置P'1”与“规范轨迹C1的目标位置P1”的关系,选择成为修正后轨迹C'2的基础的规范轨迹Cx的方法的一例,说明图11A至图11C的后续的图。
图13是针对PLC 10根据“修正后轨迹C'1的目标位置P'1”与“规范轨迹C1的目标位置P1”的关系,选择成为修正后轨迹C'2的基础的规范轨迹Cx的方法的一例,说明图12A及图12B的后续的图。
PLC 10若(2)根据“L的朝向”,判定目标位置P'1是“未到达(已落后)”目标位置P1、还是“已超过(已超越)”目标位置P1,则进而执行以下的处理。即,PLC 10(3)除判定修正后轨迹C'i“已落后”或“已超越”的判定结果以外,使用“L的长度”,决定接下来参照的规范轨迹Cx(成为修正后轨迹C'2的基础的规范轨迹Cx)。再者,所谓修正后轨迹C'1“已落后”,是指“目标位置P'1未到达与目标位置P1相对应的位置”状态,所谓“已超越”,是指“目标位置P'1位于已超过与目标位置P1相对应的位置的位置上”状态。
首先,当“矢量L的长度为规范轨迹C1的长度的一半以下”时,PLC 10使用以下的规范轨迹作为修正后轨迹C'2的基础指令(成为基础的规范轨迹Cx)。即,PLC 10使用规范轨迹C1后的第一个规范轨迹C2作为修正后轨迹C'2的基础指令(图12A)。
其次,当“矢量L的长度比规范轨迹C1的长度的一半长”、且“目标位置P'1未到达(已落后)目标位置P1”时,PLC 10使用与上次相同的规范轨迹C1作为修正后轨迹C'2的基础指令(图12B)。
再次,当“矢量L的长度比规范轨迹C1的长度的一半长”、且“目标位置P'1已超过(已超越)目标位置P1”时,PLC 10使用规范轨迹C1后的第二个规范轨迹C3作为修正后轨迹C'2的基础指令(图13)。
PLC 10所执行的这些处理是利用实际的工件的轮廓与成为规范的轨迹指令(规范轨迹)大致一致,且此轮廓的矢量的朝向与接近的规范轨迹的矢量近似者。
3.2.拍摄触发(关于特征点信息)
PLC 10对图像测量部件(图像处理装置50)一并提供范围指定与用以生成修正后轨迹C'2的特征点的拍摄及检测的触发。一并接收到范围指定与此触发的图像处理装置50使照相机60拍摄实际对象(实际的工件)的所期望的一部分(由范围指定所指定的范围)(执行拍摄)。而且,图像处理装置50对照相机60的拍摄图像进行分析来检测特征点,并将所检测到的特征点的信息(特征点信息)输出至PLC 10中。
此处,特征点信息例如为对实际对象的所期望的一部分(从PLC 10所接收到的由范围指定所指定的范围)的拍摄图像进行分析所取得的表示其一部分的形状的信息(例如,表示构成其一部分的缘·边的曲线等的信息等)。但是,特征点信息并非必须是对实际对象的所期望的一部分的拍摄图像进行分析所取得的表示实际对象的所期望的一部分的形状的信息。图像处理装置50也可以代替PLC 10来执行法线上的特征点的测量(例如,测定特征点的坐标的处理),并将测量结果作为特征点信息而输出至PLC 10中。
在此情况下,例如PLC 10对图像处理装置50提供与在“3.1.”中所决定的成为基准的规范轨迹相关的法线信息。其后,PLC 10对图像处理装置50一并提供范围指定与拍摄、检测、及测量的触发。
接收到此触发的图像处理装置50使照相机60拍摄实际对象的所期望的一部分,并对照相机60的拍摄图像进行分析来检测其一部分的形状(例如,构成此部分的缘·边的曲线等)。而且,图像处理装置50例如算出作为所检测的曲线等与由从PLC 10所取得的法线信息表示的线段(法线)的交点的特征点,并测量所算出的特征点的坐标等。即,图像处理装置50使用照相机60的拍摄图像的分析·检测结果(表示实际对象的所期望的一部分的形状的曲线)与从PLC 10所取得的法线信息,执行对于法线上的特征点的测量。而且,图像处理装置50也可以将作为测量结果的法线上的特征点的坐标等作为特征点信息而输出至PLC 10中。
3.3.修正后指令C'2的生成
PLC 10通过与“1.2.”相同的方法,根据成为基础的规范轨迹Ci(i=1、或2、或3),生成修正后轨迹C'2。即,PLC 10通过“3.1.”的处理,决定成为修正后轨迹C'2的基准(参照基础)的规范轨迹Cb。
图14A至图14C是说明PLC 10决定成为修正后轨迹C'2的基准的规范轨迹Cb后,修正规范轨迹Cb来生成修正后轨迹C'2的方法的图。PLC 10(1)将成为修正后轨迹C'2的基准的规范轨迹Cb与目标位置P'1连接(即,以规范轨迹Cb的始点变成目标位置P'1的方式,使规范轨迹Cb并进),并在此并进后的规范轨迹Cb的法线上检测特征点(图14A)。
PLC 10(2)根据“规范轨迹Cb”与“将目标位置P'1与所检测到的特征点连结的线”,重新求出旋转(倾斜量)与并进(位移量)(图14B)。再者,当“k>1”时,PLC 10根据“将Cb-k+1的始点与Cb的目标位置(终点)连结的矢量”、及“将目标位置P'1与所检测到的特征点连结的线”,求出旋转(倾斜量)与并进(位移量)。
PLC 10(3)通过所求出的旋转与并进,而生成将规范轨迹Cb变换(即,修正)而成的修正后轨迹C'2(图14C)。再者,当“k>1”时,PLC 10将从规范轨迹Cb-k+1至规范轨迹Cb为止的各个规范轨迹变换,而生成k组的修正后轨迹组合(k个修正后轨迹)。
4.在修正后指令C'1的动作结束时,生成修正后指令C'3
PLC 10在修正后轨迹C'1的动作结束时间点,执行所述“3.”的处理,而生成修正后轨迹C'3。再者,所谓“修正后轨迹C'1的动作结束时间点”,是指“修正后轨迹C'2的动作开始时间点”,换言之,是指“分配器40位于作为修正后轨迹C'1的终点的P'1上的时间点”。以后,PLC 10反复执行“3.”的处理。
(关于控制装置的功能构成的概要)
以上,使用图2~图14C对PLC 10的概要进行了说明。继而,参照图1对PLC 10的构成及处理的内容等进行详细说明。在参照图1进行详细说明前,为了使对于PLC 10的理解变得容易,先如以下般整理以上所说明的概要。
PLC 10(控制装置)是生成使用工件的拍摄结果(具体而言,特征点信息)对关于沿着所述工件的表面移动的分配器40(控制对象)的规范指令C(目标轨迹)进行修正而成的修正后轨迹C'的控制装置,其具备:取得部110,取得各控制周期的规范轨迹Ci(各控制周期的目标轨迹);以及修正部120(生成部),使各控制周期的修正后轨迹C'i的长度与各控制周期的规范轨迹Ci的长度大致一致,并根据各控制周期的规范轨迹Ci,生成各控制周期的修正后轨迹C'i。
根据所述构成,PLC 10生成使用所述工件的拍摄结果对规范指令C进行修正而成的修正后轨迹C',各控制周期的修正后轨迹C'i的长度与各控制周期的规范轨迹Ci的长度大致一致。
因此,PLC 10取得如下的效果:可使用工件的拍摄结果对关于沿着所述工件的表面移动的分配器40的规范指令C进行修正,并且将所述分配器40的各控制周期的移动量维持成固定。
PLC 10将i、j分别设为1以上的整数,且进而具备基准判定部140(选择部),所述基准判定部140(选择部)在根据第j个控制周期的规范轨迹Cj-1而生成第i个控制周期的修正后轨迹C'i-1的情况下,从第j+1个控制周期的规范轨迹Cj、及其前后的控制周期的规范指令(例如Cj-1、Cj+1)中选择一个作为与第i+1个控制周期的修正后轨迹C'i相对应的各控制周期的规范轨迹Cx,修正部120根据由基准判定部140所选择的控制周期的规范轨迹Cx,生成第i+1个控制周期的修正后轨迹C'i。
根据所述构成,PLC 10根据从第j+1个控制周期的规范轨迹Cj、及其前后的控制周期的规范指令(例如Cj-1、Cj+1)中选择的一个规范轨迹Cx,生成第i+1个控制周期的修正后轨迹C'i。
此处,存在根据工件的设计数据等所设定的规范指令C的总距离(长度)与根据实际的工件的形状所生成的修正后轨迹C'的总距离(长度)不一致的情况。当虽然长度在规范指令C与修正后轨迹C'中不一致,但维持实现两者的轨迹的控制周期的长度(时间间隔)与执行次数时,分配器40的各控制周期的移动量在规范指令C与修正后轨迹C'中不同。
因此,PLC 10通过调整控制周期的执行次数,而维持分配器40的各控制周期的移动量及控制周期的长度,并弥补规范指令C与修正后轨迹C'的长度的差异。
具体而言,PLC 10根据从第j+1个控制周期的规范轨迹Cj、及其前后的控制周期的规范指令(例如Cj-1、Cj+1)中选择的一个规范轨迹Cx,生成第i+1个控制周期的修正后轨迹C'i,由此调整控制周期的执行次数。例如,PLC 10根据第j个、第j+1个、及第j+2个的任一个控制周期的规范轨迹Cx,生成第i+1个控制周期的修正后轨迹C'i,由此调整控制周期的执行次数。
因此,PLC 10取得如下的效果:可使用工件的拍摄结果对规范指令C进行修正,并且调整控制周期的执行次数,将分配器40的各控制周期的移动量维持成固定。
PLC 10将i设为1以上的整数,且进而具备拍摄结果取得部160(结果取得部),所述拍摄结果取得部160(结果取得部)针对控制周期的k倍大于从拍摄结果的生成至取得所需要的时间的整数k,最迟在分配器40到达第i个控制周期的修正后轨迹C'i-1的目标位置P'i-1的时间点,在控制周期的k倍的周期内反复开始与第i+2k个控制周期的修正后轨迹C'i+2k-1的目标位置P'i+2k-1相对应的拍摄结果的取得,修正部120使用拍摄结果取得部160所取得的拍摄结果,生成从第i+k+1个至第i+2k个为止的各个控制周期的修正后轨迹C'i+k~修正后轨迹C'i+2k-1。
再者,所谓“从拍摄结果的生成至取得所需要的时间”,具体而言,是指从“对于图像处理装置50的拍摄等的指示”至“特征点信息的取得”为止所需要的时间,包含“利用照相机60的工件的『由范围指定所指定的范围』的拍摄”所需要的时间。如上所述,PLC 10对图像处理装置50一并指示范围指定与拍摄·特征点检测·测量。接收到此指示的图像处理装置50使照相机60拍摄工件的“由范围指定所指定的范围”,并对由照相机60所得的“由范围指定所指定的范围”的拍摄图像执行分析等来生成特征点信息,且将所生成的特征点信息输出至PLC 10中。所谓“从拍摄结果的生成至取得所需要的时间”,是指从PLC 10的“对于图像处理装置50的拍摄等的指示”至“来自图像处理装置50的特征点信息的取得”为止所需要的时间,包含“利用照相机60的『由范围指定所指定的范围』的拍摄”所需要的时间。
根据所述构成,PLC 10最迟在分配器40到达第i个控制周期的目标位置P'i-1的时间点,在控制周期的k倍的周期内反复开始与第i+2k个控制周期的目标位置P'i+2k-1相对应的拍摄结果的取得。
此处,控制周期的k倍大于从拍摄结果的生成至取得所需要的时间。而且,PLC 10最迟在分配器40到达第i个控制周期的目标位置P'i-1的时间点开始“与第i+2k个控制周期的目标位置P'i+2k-1相对应的拍摄结果(即,与提前2k控制周期的控制周期相对应的拍摄结果)”的取得。因此,PLC 10可最迟在第i+k个控制周期中,在控制周期的k倍的周期内反复取得“与提前2k控制周期的控制周期相对应的拍摄结果”。
另外,PLC 10使用拍摄结果取得部160所取得的拍摄结果,生成从第i+k+1个至第i+2k个为止的各个控制周期的修正后轨迹C'i+k~修正后轨迹C'i+2k-1。即,PLC 10最迟在第i+k个控制周期中取得所述拍摄结果,并使用所取得的所述拍摄结果,生成从第i+k+1个至第i+2k个为止的各个控制周期的修正后轨迹C'i+k~修正后轨迹C'i+2k-1。
因此,PLC 10取得如下的效果:可在控制周期的k倍的周期内反复取得所述工件的所期望的一部分的拍摄结果,而非针对所述工件的整体的拍摄结果,由此生成修正后轨迹C'。
另外,PLC 10可使用最迟在第i+k个控制周期中取得的所述拍摄结果,生成从第i+k+1个至第i+2k个为止的各个控制周期的修正后轨迹C'i+k~修正后轨迹C'i+2k-1。即,PLC 10在控制周期的k倍的周期内反复取得与提前2k控制周期的控制周期相对应的拍摄结果,并最迟在第i+k个控制周期中生成从第i+k+1个至第i+2k个为止的各个控制周期的修正后轨迹C'i+k~修正后轨迹C'i+2k-1。
因此,PLC 10取得如下的效果:可不中断各控制周期的修正后轨迹C'i的生成,在控制周期的k倍的周期内反复取得所述工件的所期望的一部分的拍摄结果,并生成各控制周期的修正后轨迹C'i。
在PLC 10中,修正部120事先生成从第1个至第2k个为止的各个控制周期的修正后轨迹C'i(i=0、1、2、···、2k-1),且拍摄结果取得部160最迟在分配器40到达第k个控制周期的修正后轨迹C'k-1的目标位置P'k-1的时间点,开始与第3k个控制周期的修正后轨迹C'3k-1的目标位置P'3k-1相对应的拍摄结果的取得。
根据所述构成,PLC 10事先生成从第1个至第2k个为止的各个控制周期的修正后轨迹C'i(i=0、1、2、···、2k-1)。另外,PLC 10最迟在分配器40到达第k个控制周期的修正后轨迹C'k-1的目标位置P'k-1的时间点,开始与第3k个控制周期的修正后轨迹C'3k-1的目标位置P'3k-1相对应的拍摄结果的取得。
即,PLC 10在从第1个至第2k个为止的各个控制周期中,执行使用事先生成的从第1个至第2k个为止的各个控制周期的修正后轨迹C'i(i=0、1、2、···、2k-1)的控制。
另外,PLC 10最迟在分配器40到达第k个控制周期的修正后轨迹C'k-1的目标位置P'k-1的时间点,开始与第3k个控制周期的修正后轨迹C'3k-1的目标位置P'3k-1相对应的拍摄结果的取得。因此,PLC 10最迟在第2k个控制周期中取得“与第3k个控制周期的修正后轨迹C'3k-1的目标位置P'3k-1相对应的拍摄结果”。而且,PLC 10使用最迟在第2k个控制周期中取得的所述拍摄结果,生成从第2k+1个至第3k个为止的各个控制周期的修正后轨迹C'i(i=2k、2k+1、2k+2、···、3k-1)。
即,PLC 10在使用事先生成的从第1个至第2k个为止的各个控制周期的修正后轨迹C'i(i=0、1、2、···、2k-1)的控制的执行过程中,生成从第2k+1个至第3k个为止的各个控制周期的修正后轨迹C'i(i=2k、2k+1、2k+2、···、3k-1)。
因此,PLC 10取得如下的效果:可不中断各控制周期的修正后轨迹C'i的生成,在控制周期的k倍的周期内反复取得所述工件的所期望的一部分的拍摄结果,并生成第0个以后的各控制周期的修正后轨迹C'i。
在PLC 10中,基准判定部140也可以(1)使用修正部120在控制周期的k倍的周期内反复生成的从第i+k+1个至第i+2k个为止的各个控制周期的修正后轨迹C'i+k~修正后轨迹C'i+2k-1之中,第i+2k个控制周期的修正后轨迹C'i+2k-1,(2)从第j+3k个控制周期的规范轨迹Cj+3k-1、及其前后的控制周期的规范指令(例如Cj+3k-2、及Cj+3k)中选择一个与第i+3k个控制周期的修正后轨迹C'i+3k-1相对应的各控制周期的规范轨迹Cx。
根据所述构成,PLC 10使用第i+2k个控制周期的修正后轨迹C'i+2k-1,从第j+3k个控制周期的规范轨迹Cj+3k-1、及其前后的控制周期的规范指令(例如Cj+3k-2、及Cj+3k)中选择一个与第i+3k个控制周期的修正后轨迹C'i+3k-1相对应的各控制周期的规范轨迹Cx。
如上所述,存在规范指令C的总距离(长度)与修正后轨迹C'的总距离(长度)不一致的情况。另外,PLC 10以各控制周期的修正后轨迹C'i的长度与各控制周期的规范轨迹Ci的长度大致一致的方式,根据各控制周期的规范轨迹Cx,生成各控制周期的修正后轨迹C'y。因此,某一控制周期的修正后轨迹C'i的目标位置(终点)未必与此某一控制周期的规范轨迹Ci的目标位置近似。
例如,存在PLC 10所生成的某一控制周期的修正后轨迹C'i的目标位置P'i比此某一控制周期的规范轨迹Ci的目标位置Pi更靠近比此某一控制周期前一个的控制周期的规范轨迹Ci-1的目标位置Pi-1的附近的情况。在此情况下,为了使长度在各控制周期的修正后轨迹C'i与各控制周期的规范轨迹Ci中大致一致,并抑制两者的背离,PLC 10理想的是如以下般生成比此某一控制周期后一个的控制周期的修正后轨迹C'i+1。即,PLC 10理想的是使用此某一控制周期的规范轨迹Ci,生成比此某一控制周期后一个的控制周期的修正后轨迹C'i+1。
另外,例如存在PLC 10所生成的某一控制周期的修正后轨迹C'i的目标位置P'i比此某一控制周期的规范轨迹Ci的目标位置Pi更靠近比此某一控制周期后一个的控制周期的规范轨迹Ci+1的目标位置Pi+1的附近的情况。在此情况下,为了使长度在各控制周期的修正后轨迹 C'i与各控制周期的规范轨迹Ci中大致一致,并抑制两者的背离,PLC 10理想的是如以下般生成比此某一控制周期后一个的控制周期的修正后轨迹C'i+1。即,PLC 10理想的是使用比此某一控制周期后两个的控制周期的规范轨迹Ci+2,生成比此某一控制周期后一个的控制周期的修正后轨迹C'i+1。
因此,PLC 10使用已生成的修正后轨迹C'i,决定最适合于生成提前k周期的控制周期的修正后轨迹C'i+k的控制周期的规范轨迹Cx。具体而言,PLC 10使用第i+2k个控制周期的修正后轨迹C'i+2k-1,从第j+3k个控制周期的规范轨迹Cj+3k-1、及其前后的控制周期的规范指令(例如Cj+3k-2、及Cj+3k)中选择一个与第i+3k个控制周期的修正后轨迹C'i+3k-1相对应的规范轨迹Cx。再者,将修正后轨迹C'i+2k-1设为使用第j+2k个控制周期的规范轨迹Cj+2k-1所生成者。例如,PLC 10使用第i+2k个控制周期的修正后轨迹C'i+2k-1,从第j+3k-1个、第j+3k个、及第j+3k+1个控制周期的规范轨迹Cj+3k-2、规范轨迹Cj+3k-1、及规范轨迹Cj+3k中决定与第i+3k个控制周期的修正后轨迹C'i+3k-1相对应的规范轨迹Cx。
因此,PLC 10取得如下的效果:可抑制各控制周期的修正后轨迹C'i的与各控制周期的规范轨迹Ci的背离,并使各控制周期的修正后轨迹C'i的长度与各控制周期的规范轨迹Ci的长度大致一致。
在PLC 10中,修正部120使用由拍摄结果取得部160所取得的拍摄结果,针对表示与连续的k个控制周期的各者相对应的规范轨迹Ci的矢量,执行旋转及平行移动的至少一者,由此在控制周期的k倍的周期内反复生成表示与连续的k个控制周期的各者相对应的修正后轨迹C'i的矢量。
根据所述构成,PLC 10使用拍摄结果,针对表示各控制周期的规范轨迹Ci的矢量,执行旋转及平行移动的至少一者,由此生成表示各控制周期的修正后轨迹C'i的矢量。
因此,PLC 10取得如下的效果:可使用拍摄结果,使各控制周期的修正后轨迹C'i的长度与各控制周期的规范轨迹Ci的长度大致一致,并生成各控制周期的修正后轨迹C'i。
(控制装置的功能构成的详细情况)
图1是表示本发明的实施方式1的PLC 10的主要部分构成的方块图。如图1所示,PLC 10具备取得部110、修正部120、修正量算出部130、基准判定部140、范围指定部150、拍摄结果取得部160、以及输出部180作为功能块。PLC 10是控制分配器40的控制处理的执行主体。
再者,为了确保记载的简洁性,从说明及方块图中省略与本实施方式无直接关系的构成。但是,依据实施的实际情况,PLC 10也可以具备所述经省略的构成。图1中例示的取得部110、修正部120、修正量算出部130、基准判定部140、范围指定部150、拍摄结果取得部160、以及输出部180例如可通过处理器(中央处理器(Central Processing Unit,CPU))等在由随机存取存储器(Random Access Memory,RAM)等所实现的主存储器中读出并执行存储在由只读存储器(Read Only Memory,ROM)、非易失性随机存取存储器(Non-VolatileRandom Access Memory,NVRAM)等所实现的非易失性(存储部170)中的程序来实现。以下,对PLC 10中的各功能块进行说明。
(存储部以外的功能块)
取得部110参照图 1 中的 规范轨迹表171,取得各控制周期的规范轨迹(规范指令)Ci,并将所取得的规范轨迹Ci输出至修正部120中。取得部110在PLC 10的控制动作开始前,参照图 1 中的 规范轨迹表171,取得从第1个至第2k个为止的各个控制周期的规范轨迹Ci(i=0、1、2、···、2k-1),并将所取得的规范轨迹Ci输出至修正部120中。取得部110在PLC 10的控制动作的实施过程中,参照图 1 中的 规范轨迹表171而取得从基准判定部140所指示的控制周期的规范轨迹Ci,并将所取得的规范轨迹Ci输出至修正部120中。若在PLC 10的控制动作的实施过程中,从基准判定部140指示第x个规范轨迹Cx-1,则取得部110也可以将从第x-k+1个至第x个为止的各个控制周期的规范轨迹Ci(i=x-k、x-k+1、···、x-1)输出至修正部120中。
修正部120使用从修正量算出部130所通知的修正量对从取得部110所取得的规范轨迹Ci进行修正,并将经修正的规范轨迹Ci作为修正后轨迹C'i而储存在图 1 中的 修正后轨迹表172中。修正部120例如生成使用从修正量算出部130所通知的修正量对从取得部110所取得的k个规范轨迹(Cx~Cx+k-1)的各者进行修正而成的k个修正后轨迹(C'y~C'y+k-1)(x、y分别为0以上的整数)。具体而言,修正部120使规范轨迹Cx~规范轨迹Cx+k-1的各者仅平行移动从修正量算出部130所通知的位移量,并仅旋转从修正量算出部130所通知的旋转量,而生成k个修正后轨迹(C'y~C'y+k-1)。
修正量算出部130使用拍摄结果取得部160所取得的特征点信息,算出修正量(具体而言,旋转量及位移量),并对修正部120通知所算出的修正量。修正量算出部130例如通过使用图9A及图9B、图10A及图10B、以及图14A至图14C所说明的方法来算出修正量。
修正量算出部130例如使用基准判定部140所决定的作为“第i+k个控制周期的修正后轨迹C'i+k-1”的基础的规范轨迹Cx,算出用以生成规范轨迹Cx~规范轨迹C'i+k-1的旋转量及位移量。即,修正量算出部130针对“将Cx-k+1的始点与Cx的终点连结的线”与“将C'i-1的目标位置P'i-1与对应于C'i+k-1的特征点连结的线”,求出旋转(倾斜量)与并进(位移量)。
修正量算出部130例如也可以针对“穿过修正后的指令的始点(开始位置)与所检测到的特征点的线”,利用最小平方法来求出如偏差变得最小的旋转量。另外,修正量算出部130也可以算出用以在满足对于对象物的轮廓的规定的规则(间隙(clearance)等)的“修正后轨迹”群中,选择由修正后轨迹与实际对象的轮廓所围成的面积变得最小的修正后轨迹的旋转量及位移量。
基准判定部140参照修正后轨迹表172,并使用第i个控制周期的修正后轨迹C'i-1,决定成为第i+k个控制周期的修正后轨迹C'i+k-1的基础的规范轨迹Cx。基准判定部140对取得部110及范围指定部150(进而,拍摄结果取得部160)指示所决定的规范轨迹Cx。
基准判定部140例如如使用图11A~图13所说明般,使用已生成的修正后轨迹C'i-1,决定成为修正后轨迹C'i+k-1的基础的规范轨迹Cx。即,基准判定部140通过“修正后轨迹C'i-1的目标位置P'i-1”与“成为修正后轨迹C'i-1的基础的规范轨迹Cy的目标位置Py”的位置关系、及两者之间的距离来决定Cx。
基准判定部140例如也可以选择“与修正后轨迹C'i-1的目标位置P'1-1的距离最短的规范轨迹”作为规范轨迹Cx。
另外,基准判定部140针对所决定的规范轨迹Cx,通过使用图9A及图14A所说明的方法来生成法线信息。即,基准判定部140针对成为第i+k个控制周期的修正后轨迹C'i+k-1的基础的规范轨迹Cx,以规范轨迹Cx-k+1的始点变成第i个控制周期的修正后轨迹C'i-1 的目标位置P'i-1的方式,使规范轨迹Cx-k+1~规范轨迹Cx并进,并求出此并进后的规范轨迹Cx的法线。例如,在图14B所示的例中,设为k=1,基准判定部140以成为第3个控制周期的修正后轨迹C'2的基准的规范轨迹Cb的始点变成第2个控制周期的修正后轨迹C'1的目标位置P'1的方式,使规范轨迹Cb并进。而且,基准判定部140求出此并进后的规范轨迹Cb的法线。然后,基准判定部140对取得部110及范围指定部150(进而,拍摄结果取得部160)指示特定所求出的法线的法线信息。
范围指定部150指定与“基准判定部140所决定的规范轨迹Cx的目标位置Px”相对应的实际对象的一部分作为照相机60的拍摄范围,并将所指定的范围作为范围指定而输出至图像处理装置50中。图像处理装置50按照从范围指定部150所接收到的范围指定,使照相机60拍摄由范围指定所指定的范围(实际对象的一部分)。
再者,如上所述,范围指定部150也可以进而将“基准判定部140所决定的规范轨迹Cx”的法线信息输出至图像处理装置50中。更具体而言,范围指定部150也可以将表示“以Cx-k+1的始点变成修正后轨迹C'i-1的目标位置P'i-1的方式并进的规范轨迹Cx”的法线的信息输出至图像处理装置50中。而且,范围指定部150也可以使图像处理装置50根据“实际对象的由范围指定所指定的范围”,在规范轨迹Cx的法线上测量特征点。
另外,范围指定部150也可以将表示“对实际对象的轮廓画垂线时距离变得最短的线”的信息作为“基准判定部140所决定的规范轨迹Cx”的法线信息。另外,范围指定部150也可以使图像处理装置50根据在将规范轨迹Cx的目标位置Px作为中心的圆形区域内所检测到的特定图案等,测定实际对象的特征点。
拍摄结果取得部160从图像处理装置50取得作为照相机60的拍摄图像的分析结果(检测结果)的特征点信息(表示“实际对象的由范围指定所指定的范围”的形状的信息)。拍摄结果取得部160也可以从图像处理装置50取得照相机60在动作开始前(停止状态)事先拍摄的拍摄图像作为特征点信息。
拍摄结果取得部160使用所取得的表示“实际对象的由范围指定所指定的范围”的形状的信息、或“实际对象的由范围指定所指定的范围”的拍摄图像,在由基准判定部140所决定的规范轨迹Cx的法线上测量特征点。而且,拍摄结果取得部160将所测量的特征点的位置坐标等信息(特征点信息)输出至修正量算出部130中。
再者,如上所述,范围指定部150也可以将“基准判定部140所决定的规范轨迹Cx的法线信息”输出至图像处理装置50中,并使图像处理装置50根据“实际对象的由范围指定所指定的范围”,在规范轨迹Cx的法线上测量特征点。在此情况下,拍摄结果取得部160从图像处理装置50取得作为测量结果的特征点信息(图像处理装置50所测量的特征点的位置坐标等信息),并将此特征点信息输出至修正量算出部130中。
输出部180参照修正后轨迹表172,将各控制周期的修正后轨迹C'i(i为0以上的整数)依次输出至伺服驱动器20中。
(存储部的详细情况)
存储部170是保存PLC 10所使用的各种数据的存储装置。存储部170也可以非临时性地存储PLC 10所执行的(1)控制程序、(2)操作系统(Operating System,OS)程序、(3)用以执行PLC 10所具有的各种功能的应用程序、及(4)执行此应用程序时所读出的各种数据。存储部170进而保存有规范轨迹表171及修正后轨迹表172。
在规范轨迹表171中保存根据规范轨迹C(规范指令)所生成的各控制周期的规范轨迹Ci。另外,在修正后轨迹表172中保存修正部120所生成的各控制周期的修正后轨迹C'i。
(控制装置所执行的处理的概要)
图15A及图15B是用以说明使用图16A~图23所说明的PLC 10的控制处理(即,修正后轨迹C'i的生成处理)的前提的图。如图15A所示,在以下的说明中,作为成为规范的轨迹(规范轨迹C),考虑以控制周期6周期来绕一圈的XY平面上的圆形轮廓。作为由控制周期单位的微小线段所形成的轨迹,且作为指令(规范轨迹C),变成正六边形的轨迹。另外,如图15B所示,在以下的说明中,设为在伺服电机30(XY正交机器人(robot))上一并安装有作为控制对象的分配器40等、及照相机60者。照相机60安装在平行地朝向涂布轨迹的方向的用以进行所谓的“法线控制”的θ轴上。
再者,也可以将PLC 10应用于“分配器40得到固定,且工件在XY平台上移动(伺服电机30代替分配器40来进行工件的位置控制)”构成。另外,也可以将PLC 10应用于“分配器40为Y轴单轴机器人,工件在X轴平台上移动”构成。
照相机60不一定必须安装在分配器40上,例如也能够以可从分配器40等机器的上方俯瞰分配器40的方式设置,另外,也可以不进行法线控制。但是,在进行轨迹控制的修正方面,以至少可取得为了进行修正而需要的工件形状的图像的方式,设为可确保照相机60的拍摄中不产生由机器等所形成的死角者。为了防止死角的产生,也可以使用多个照相机60。另外,作为初始状态,设想(X、Y、θ)=(0、0、0),即分配器40与照相机60位于X轴、Y轴的0位置上,照相机60面向沿着X轴的方向的情况。
图16A及图16B是针对使用图17A~图23所说明的PLC 10的控制处理,说明成为规范的轨迹(规范轨迹C)、实际对象(实际的工件)的形状、以及各控制周期的规范轨迹Ci及目标位置Pi等的图。在图16A及图16B中,由双点划线表示的椭圆表示实际对象的形状。在实际的涂布等中,设想相对于实际的工件的形状,“取得成为涂抹区域的间隙”等处理,为了使对于PLC 10的理解变得容易,在以下的说明中,认为实际的工件的轮廓变成修正后的轨迹(修正后轨迹C'i)。另外,在图16A及图16B中,由单点划线表示的圆表示成为规范的轨迹(规范轨迹C),且设想修正后轨迹C'为在X轴方向上具有尺寸误差的椭圆形状的情况。
1.准备
1.1.成为规范的轨迹数据的生成
为了使对于PLC 10的理解变得容易,在以下的说明中,对PLC 10所执行的控制不进行加减速,将规范轨迹C设为在6个控制周期内经过圆形轮廓上的6个点的图16B的六边形的轨迹。即,规范轨迹C包含将经过的6个点(P0~P5)分别作为目标位置的6个指令系列(C0~C5)。
1.2.(动作开始前)初次、下次的修正后指令的生成
PLC 10的修正部120事先(即在PLC 10的动作开始前,换言之,在利用PLC 10的控制处理的执行开始前)生成相对于规范轨迹C0、规范轨迹C1的各者的修正后轨迹C'0、修正后轨迹C'1。
图17A及图17B表示PLC 10检测根据规范轨迹C0、规范轨迹C1的各者生成修正后轨迹C'0、修正后轨迹C'1的各者所需要的特征点,并算出旋转(倾斜量)与并进(位移量)的方法的一例。
如图17A所示,(1)图像处理装置50根据照相机60在动作开始前(停止状态)事先拍摄的拍摄图像,检测实际对象的所期望的一部分的形状(例如,其所期望的一部分的缘·边),并在规范轨迹C1的法线上测量特征点。而且,图像处理装置50将所检测到的特征点的位置坐标等信息(特征点信息)输出至PLC 10中。PLC 10的拍摄结果取得部160从图像处理装置50取得此特征点信息,并将所取得的特征点信息输出至修正量算出部130中。
再者,拍摄结果取得部160也可以进行规范轨迹C1的法线上的特征点的测量。即,拍摄结果取得部160也可以从图像处理装置50取得照相机60在动作开始前(停止状态)事先拍摄的拍摄图像。而且,拍摄结果取得部160也可以针对此拍摄图像,在规范轨迹C1的法线上检测特征点,并将所检测到的特征点的位置坐标等信息(特征点信息)输出至修正量算出部130中。
(2)修正量算出部130使用从拍摄结果取得部160所取得的特征点信息,针对“将规范轨迹C0的始点与规范轨迹C1的终点连结的线”与“将开始位置(初始位置)与所检测到的特征点连结的线”,求出旋转(倾斜量)与并进(位移量)。即,修正量算出部130算出作为使规范轨迹C0的始点朝开始位置(初始位置)移动的量的“并进量(位移量)”。另外,修正量算出部130算出使“将规范轨迹C0的始点与规范轨迹C1的终点连结的线”与“将开始位置(初始位置)与所检测到的特征点连结的线”平行所需要的“旋转量(倾斜量)”(图17B)。再者,为了容易理解PLC 10,在图17B所示的例中,将开始位置(初始位置)设为不存在从规范轨迹C0的始点起的并进者。
然后,修正量算出部130对修正部120通知所算出的旋转(倾斜量)与并进(位移量)。
图18表示PLC 10使用所算出的旋转(倾斜量)与并进(位移量),根据规范轨迹C0、规范轨迹C1的各者生成修正后轨迹C'0、修正后轨迹C'1的各者的方法的一例。如图18所示,(3)修正部120通过修正量算出部130所求出的旋转与并进,生成将规范轨迹C0、规范轨迹C1的各者变换而成的修正后轨迹C'0、修正后轨迹C'1的各者,并将所生成的修正后轨迹C'0、修正后轨迹C'1的各者保存在修正后轨迹表172中。
2.根据修正后指令C'0开始动作
即,输出部180将保存在修正后轨迹表172中的修正后轨迹C'0、修正后轨迹C'1的各者输出至伺服驱动器20中,而使伺服驱动器20执行实现修正后轨迹C'0、修正后轨迹C'1的的控制处理。
3.在修正后指令C'0的动作结束时,生成修正后指令C'2
PLC 10的修正部120在修正后轨迹C'0的动作结束时间点,执行以下的“3.1.”~“3.3.”的处理来进行修正后轨迹C'2的生成。修正部120在分配器40到达第i个控制周期的目标位置Pi-1的时间点,生成从第i个控制周期起提前m周期的控制周期的修正后轨迹C'i+m-1。以下的说明是设为i=1、m=2(k=1)的情况。再者,所谓“修正后轨迹C'0的动作结束时间点”,是指“修正后轨迹C'1的动作开始时间点”,换言之,是指“分配器40位于作为修正后轨迹C'0的终点的P'0上的时间点”。
图19A及图19B是说明PLC 10选择成为修正后轨迹C'2的基础的规范轨迹Cx的方法、及用以生成修正后轨迹C'2的特征点的检测方法的一例的图。图20A及图20B是说明PLC10算出用以生成修正后轨迹C'2的旋转(倾斜量)与并进(位移量)的方法、及通过所算出的旋转与并进来生成修正后轨迹C'2的方法的一例的图。
3.1.成为基准(参照基础)的规范轨迹Cx的选择判定
PLC 10的基准判定部140根据保存在修正后轨迹表172中的修正后轨迹C'1的到达位置P'1与成为其基础的规范轨迹C1的到达位置(目标位置)P1的关系,决定以哪个规范轨迹Cx为基础来生成提前m周期的修正后轨迹C'2。
基准判定部140如以下般决定成为从控制对象到达当前位置的控制周期起提前m周期的控制周期的修正后轨迹C'i+m-1的基础的规范轨迹Cx。即,基准判定部140使用“上次生成的修正后轨迹C'i-k+1的目标位置P'i-k+1”、及“成为上次生成的修正后轨迹C'i-k+1的基准的规范轨迹Cy的目标位置Py”来决定规范轨迹Cx。例如,基准判定部140最迟在“分配器40到达第i个控制周期的目标位置Pi-1的时间点”,如以下般决定成为从第i个控制周期起提前m周期的控制周期的修正后轨迹C'i+m-1的基础的规范轨迹Cx。即,基准判定部140使用从第i个控制周期起提前k周期的控制周期的修正后轨迹C'i+k-1,决定成为修正后轨迹C'i+m-1的基础的规范轨迹Cx。
基准判定部140(1)求出从“修正后轨迹C'1的目标位置P'1”至“成为修正后轨迹C'1的基准的规范轨迹C1的目标位置P1”的矢量L(图19A)。
基准判定部140(2)根据“L的朝向”,判定相对于原本的指令位置(目标位置)P1,修正后轨迹的目标位置P'1是“未到达(落后)”、还是“已超过(超越)”。基准判定部140(3)除利用“L的朝向”判定修正后轨迹的落后/超越以外,根据“L的长度”来决定接下来参照的规范轨迹。
当“矢量L的长度为规范轨迹C1的长度的一半以下”时,基准判定部140选择规范轨迹C2作为修正后轨迹C'2的基础指令(成为基础的指令)。当“矢量L的长度比规范轨迹C1的长度的一半长”、且“目标位置P'1未到达(已落后)目标位置P1”时,基准判定部140选择规范轨迹C1作为修正后轨迹C'2的基础指令。当“矢量L的长度比规范轨迹C1的长度的一半长”、且“目标位置P'1已超过(已超越)目标位置P1”时,基准判定部140选择规范轨迹C1后的第二个规范轨迹C3作为修正后轨迹C'2的基础指令。
在图19A所示的例中,L相对于原本的P1落后,L的长度变成“规范轨迹C1的长度的一半以下”,因此基准判定部140选择规范轨迹C2作为修正后轨迹C'2的基础指令。
3.2.拍摄触发
如上所述,范围指定部150对图像测量部件(图像处理装置50)一并提供范围指定、以及用以生成修正后轨迹C'2的特征点的拍摄处理及检测处理的触发。而且,PLC 10的拍摄结果取得部160例如取得表示实际对象的“由范围指定所指定的范围”的形状的信息(例如,表示构成其范围的缘·边的曲线等的信息等)作为特征点信息。
另外,范围指定部150也可以对图像处理装置50提供与在“3.1.”中所决定的成为基准的规范轨迹相关的法线信息。其后,范围指定部150对图像处理装置50一并提供范围指定与拍摄、检测、及测量的触发。而且,PLC 10的拍摄结果取得部160例如也可以取得使用表示实际对象的“由范围指定所指定的范围”的形状的信息与法线信息所测量的法线上的特征点的测量结果作为特征点信息。例如,拍摄结果取得部160也可以取得构成实际对象的“由范围指定所指定的范围”的缘·边的曲线与法线信息中所示的法线的交点的坐标等作为特征点信息。
3.3.修正后指令C'2的生成
修正部120通过与“1.2.”相同的方法,根据成为基础的规范轨迹C2来生成修正后轨迹C'2。即,(1)修正量算出部130将成为修正后轨迹C'2的生成基础的规范轨迹C2与目标位置P'1连接(即,以使规范轨迹C2的始点变成目标位置P'1的方式并进),并在此并进后的规范轨迹C2的法线上检测特征点(图19B)。
(2)修正量算出部130针对“规范轨迹C2”与“将目标位置P'1与所检测到的特征点连结的线”,重新求出旋转(倾斜量)与并进(位移量)(图20A)。修正量算出部130对修正部120通知所求出的旋转(倾斜量)与并进(位移量)。然后,(3)修正部120通过修正量算出部130所求出的旋转与并进,而生成将规范轨迹C2变换而成的修正后轨迹C'2(图20B)。
4.在修正后指令C'1的动作结束时,生成修正后指令C'3
修正部120在修正后指令C'1的动作结束时间点(即,修正后指令C'2的动作开始时间点、分配器40位于P'1上的时间点),进行修正后指令C'3的生成。
图21A及图21B是说明PLC 10生成修正后轨迹C'3及修正后轨迹C'4的方法的一例的图。另外,图22A及图22B是说明PLC 10生成修正后轨迹C'5及修正后轨迹C'6的方法的一例的图。如图21A及图21B、以及图22A及图22B所示,PLC 10以后重复“3.”的处理,并以规范轨迹C3、规范轨迹C4、规范轨迹C5的各者为基础,生成修正后轨迹C'3、修正后轨迹C'4、修正后轨迹C'5。
此处,在修正后轨迹C'5的生成时间点,P5与目标位置P'5之间的距离变成超过“规范轨迹C5的长度的一半”的长度,因此基准判定部140选择规范轨迹C5作为成为下一个修正后轨迹C'6的基础的规范轨迹。修正部120以基准判定部140所选择的规范轨迹C5为基础,生成修正后轨迹C'6。
即,修正量算出部130通过“3.3.(1)”中所示的程序,在将规范轨迹C5与目标位置P'5连接的矢量的法线上检测特征点。另外,修正量算出部130通过“3.3.(2)”中所示的程序,求出旋转(倾斜量)与并进(位移量)(图22B)。而且,修正部120通过修正量算出部130所求出的旋转与并进,而生成将规范轨迹C5变换而成的修正后轨迹C'6。
图23是将规范轨迹C0~规范轨迹C5与PLC 10所生成的修正后轨迹C'0~修正后轨迹C'6进行对比来表示的图。如图23所示,最终PLC 10针对穿过目标位置P0~目标位置P5这6点的规范轨迹C0~规范轨迹C5的轨迹指令,检测与实际的工件的差,由此生成穿过目标位置P'0~目标位置P'6这7点的修正后轨迹C'0~修正后轨迹C'6。
如以上所说明般,PLC 10所执行的控制方法是生成使用工件的拍摄结果(具体而言,特征点信息)对关于沿着所述工件的表面移动的分配器40(控制对象)的规范指令C(目标轨迹)进行修正而成的修正后轨迹C'的控制装置的控制方法,其包括:取得步骤(S402等),取得各控制周期的规范轨迹Ci(各控制周期的目标轨迹);以及修正步骤(S109等),使各控制周期的修正后轨迹C'i的长度与各控制周期的规范轨迹Ci的长度大致一致,并根据各控制周期的规范轨迹Ci,生成各控制周期的修正后轨迹C'i。
根据所述方法,所述控制方法生成使用所述工件的拍摄结果对规范指令C进行修正而成的修正后轨迹C',各控制周期的修正后轨迹C'i的长度与各控制周期的规范轨迹Ci的长度大致一致。
因此,所述控制方法取得如下的效果:可使用工件的拍摄结果对关于沿着所述工件的表面移动的分配器40的规范指令C进行修正,并且将分配器40的各控制周期的移动量维持成固定。
§4.变形例
(关于控制装置)
在以上所说明的实施方式中,作为本发明的控制装置(控制器),对PLC 10等作为序列控制装置的国际电工委员会(International Electrotechnical Commission,IEC)控制器进行了说明。但是,本发明的控制装置并不限定于IEC控制器,可应用于各种控制装置。例如,本发明的控制装置也可以是作为数值控制装置的数值控制(Numerical Control,NC)控制器。
(关于规范指令)
PLC 10无需将各控制周期的规范指令Ci(即,规范轨迹C)全部事先保存在规范轨迹表171中。例如,PLC 10也可以将规范轨迹表171设为固定尺寸的缓冲区,一面从外部的存储装置等随时读出各控制周期的规范指令Ci,一面对所读出的各控制周期的规范指令Ci进行修正,而生成各控制周期的修正后指令C'i。
[利用软件的实现例]
PLC 10的控制块(特别是取得部110、修正部120、修正量算出部130、基准判定部140、范围指定部150、拍摄结果取得部160、及输出部180)可以由形成在集成电路(集成电路芯片(Integrated Circuit chip))等中的逻辑电路(硬件)来实现,也可以由软件来实现。
在后者的情况下,PLC 10具备执行作为实现各功能的软件的程序的命令的计算机。此计算机例如具备一个以上的处理器,并且具备存储有所述程序的计算机可读取的记录媒体。而且,在所述计算机中,所述处理器从所述记录媒体中读取所述程序并加以执行,由此达成本发明的目的。作为所述处理器,例如可使用CPU(Central Processing Unit)。作为所述记录媒体,可使用“非临时性的有形的媒体”,例如除ROM(Read Only Memory)等以外,可使用磁带、光盘、存储卡、半导体存储器、可编程的逻辑电路等。另外,也可以进一步具备将所述程序展开的RAM(Random Access Memory)等。另外,所述程序也可以经由可传送此程序的任意的传送媒体(通信网络或广播波等)而供给至所述计算机中。再者,本发明的一方式也能够以所述程序通过电子式的传送而具体化的嵌入至载波中的数据信号的方式来实现。
本发明并不限定于所述各实施方式,可在权利要求中所示的范围内进行各种变更,将分别在不同的实施方式中揭示的技术手段适宜组合而获得的实施方式也包含在本发明的技术范围内。
Claims (7)
1.一种控制装置,其是生成使用工件的拍摄结果对关于沿着所述工件的表面移动的控制对象的目标轨迹进行修正而成的修正后轨迹的控制装置,其特征在于:包括
取得部,取得各控制周期的所述目标轨迹;
生成部,使各所述控制周期的所述修正后轨迹的长度与各所述控制周期的所述目标轨迹的长度大致一致,并根据各所述控制周期的所述目标轨迹,生成各所述控制周期的所述修正后轨迹;以及
结果取得部,所述结果取得部针对所述控制周期的k倍大于从所述拍摄结果的生成至取得所需要的时间的整数k,
最迟在所述控制对象到达第i个所述控制周期的所述修正后轨迹的目标位置的时间点,在所述控制周期的k倍的周期内反复开始与第i+2k个所述控制周期的所述修正后轨迹的目标位置相对应的所述拍摄结果的取得,i设为1以上的整数,
所述生成部使用所述结果取得部所取得的所述拍摄结果,生成从第i+k+1个至第i+2k个为止的各个所述控制周期的所述修正后轨迹。
2.根据权利要求1所述的控制装置,其特征在于:将i、j分别设为1以上的整数,且
更包括选择部,所述选择部在根据第j个所述控制周期的所述目标轨迹而生成第i个所述控制周期的所述修正后轨迹的情况下,从第j+1个所述控制周期、及其前后的所述控制周期的所述目标轨迹中选择一个作为与第i+1个所述控制周期的所述修正后轨迹相对应的所述目标轨迹,
所述生成部根据由所述选择部所选择的所述控制周期的所述目标轨迹,生成第i+1个所述控制周期的所述修正后轨迹。
3.根据权利要求1所述的控制装置,其特征在于:所述生成部事先生成从第1个至第2k个为止的各个所述控制周期的所述修正后轨迹,且
所述结果取得部最迟在所述控制对象到达第k个所述控制周期的所述修正后轨迹的目标位置的时间点,开始与第3k个所述控制周期的所述修正后轨迹的目标位置相对应的所述拍摄结果的取得。
4.根据权利要求2所述的控制装置,其特征在于:所述选择部使用所述生成部在所述控制周期的k倍的周期内反复生成的从第i+k+1个至第i+2k个为止的各个所述控制周期的所述修正后轨迹之中,第i+2k个所述控制周期的所述修正后轨迹,
从第j+3k个所述控制周期、及其前后的所述控制周期的所述目标轨迹中选择一个与第i+3k个所述控制周期的所述修正后轨迹相对应的所述目标轨迹。
5.根据权利要求1所述的控制装置,其特征在于:所述生成部使用由所述结果取得部所取得的所述拍摄结果,针对表示与连续的k个所述控制周期的各者相对应的所述目标轨迹的矢量,执行旋转及平行移动的至少一者,由此在所述控制周期的k倍的周期内反复生成表示与连续的k个所述控制周期的各者相对应的所述修正后轨迹的矢量。
6.一种控制方法,其是生成使用工件的拍摄结果对关于沿着所述工件的表面移动的控制对象的目标轨迹进行修正而成的修正后轨迹的控制装置的控制方法,其特征在于:包括
取得步骤,取得各控制周期的所述目标轨迹;
生成步骤,使各所述控制周期的所述修正后轨迹的长度与各所述控制周期的所述目标轨迹的长度大致一致,并根据各所述控制周期的所述目标轨迹,生成各所述控制周期的所述修正后轨迹;以及
结果取得步骤,针对所述控制周期的k倍大于从所述拍摄结果的生成至取得所需要的时间的整数k,
最迟在所述控制对象到达第i个所述控制周期的所述修正后轨迹的目标位置的时间点,在所述控制周期的k倍的周期内反复开始与第i+2k个所述控制周期的所述修正后轨迹的目标位置相对应的所述拍摄结果的取得,i设为1以上的整数,
使用所述结果取得步骤所取得的所述拍摄结果,生成从第i+k+1个至第i+2k个为止的各个所述控制周期的所述修正后轨迹。
7.一种计算机可读取的记录媒体,记录信息处理程序,其是用以使计算机作为根据权利要求1至5中任一项所述的控制装置发挥功能的信息处理程序,其用以使所述计算机作为各部发挥功能。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017-191340 | 2017-09-29 | ||
JP2017191340A JP7031204B2 (ja) | 2017-09-29 | 2017-09-29 | 制御装置、制御装置の制御方法、情報処理プログラム、および記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109581964A CN109581964A (zh) | 2019-04-05 |
CN109581964B true CN109581964B (zh) | 2021-08-03 |
Family
ID=62748687
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810601818.7A Active CN109581964B (zh) | 2017-09-29 | 2018-06-08 | 控制装置、控制装置的控制方法以及记录媒体 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10845776B2 (zh) |
EP (1) | EP3462258B1 (zh) |
JP (1) | JP7031204B2 (zh) |
CN (1) | CN109581964B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7120512B2 (ja) * | 2019-11-22 | 2022-08-17 | Smc株式会社 | 軌跡制御装置 |
CN111624944B (zh) | 2020-06-16 | 2023-09-08 | 富联裕展科技(深圳)有限公司 | 刀具控制装置及方法 |
CN114253261B (zh) * | 2021-12-08 | 2023-04-07 | 广州极飞科技股份有限公司 | 路径生成方法、作业控制方法及相关装置 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4380696A (en) * | 1980-11-12 | 1983-04-19 | Unimation, Inc. | Method and apparatus for manipulator welding apparatus with vision correction for workpiece sensing |
US4568816A (en) * | 1983-04-19 | 1986-02-04 | Unimation, Inc. | Method and apparatus for manipulator welding apparatus with improved weld path definition |
JP2600715B2 (ja) * | 1987-10-06 | 1997-04-16 | 神鋼電機株式会社 | ロボットのサーボ制御方法 |
JPH06324733A (ja) * | 1993-05-12 | 1994-11-25 | Fanuc Ltd | センサ付きロボットの制御方法及び装置 |
JP2002355605A (ja) | 2001-05-29 | 2002-12-10 | Kanto Auto Works Ltd | 自動車用ウインドウのウレタン塗布方法 |
JP5562430B2 (ja) * | 2010-10-26 | 2014-07-30 | 株式会社牧野フライス製作所 | 工具経路の生成方法および生成装置 |
JP5849403B2 (ja) * | 2011-02-15 | 2016-01-27 | セイコーエプソン株式会社 | ロボットコントローラー、ロボット、及び、ロボットシステム |
DE102011006447A1 (de) * | 2011-03-30 | 2012-10-04 | Trumpf Laser- Und Systemtechnik Gmbh | Verfahren zum Bearbeiten von Werkstücken mittels einer numerisch gesteuerten Werkstückbearbeitungsvorrichtung sowie Werkstückbearbeitungsvorrichtung |
CN105324275B (zh) * | 2013-05-31 | 2017-06-20 | 丰田自动车株式会社 | 移动轨迹预测装置和移动轨迹预测方法 |
WO2015133175A1 (ja) * | 2014-03-04 | 2015-09-11 | オムロン株式会社 | 制御システム、制御装置および制御方法 |
CN105277121A (zh) * | 2014-06-23 | 2016-01-27 | 日产螺丝股份有限公司 | 螺纹尺寸自动测定系统 |
JP6443312B2 (ja) * | 2015-09-28 | 2018-12-26 | オムロン株式会社 | 管理システム |
JP6606442B2 (ja) * | 2016-02-24 | 2019-11-13 | 本田技研工業株式会社 | 移動体の経路計画生成装置 |
JP6504081B2 (ja) * | 2016-02-26 | 2019-04-24 | オムロン株式会社 | 制御装置、制御プログラムおよび記録媒体 |
US10556347B2 (en) * | 2016-11-01 | 2020-02-11 | Brachium, Inc. | Vision guided robot path programming |
-
2017
- 2017-09-29 JP JP2017191340A patent/JP7031204B2/ja active Active
-
2018
- 2018-06-07 EP EP18176519.9A patent/EP3462258B1/en active Active
- 2018-06-08 CN CN201810601818.7A patent/CN109581964B/zh active Active
- 2018-06-12 US US16/005,685 patent/US10845776B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2019067098A (ja) | 2019-04-25 |
CN109581964A (zh) | 2019-04-05 |
EP3462258B1 (en) | 2021-09-22 |
US20190101883A1 (en) | 2019-04-04 |
EP3462258A1 (en) | 2019-04-03 |
US10845776B2 (en) | 2020-11-24 |
JP7031204B2 (ja) | 2022-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109581964B (zh) | 控制装置、控制装置的控制方法以及记录媒体 | |
CN110087828B (zh) | 信息处理装置及加工不良确定方法 | |
JP6208419B2 (ja) | 算出装置、搬送ロボットシステム、及び算出方法 | |
EP3229208B1 (en) | Camera pose estimation | |
JP7073828B2 (ja) | 外観検査システム、設定装置および検査方法 | |
US10875186B2 (en) | Robot system | |
JP2004093190A (ja) | 三次元測定装置 | |
JP2011203936A (ja) | 特徴点抽出装置及びこれを用いた動作教示装置、動作処理装置 | |
JP6253847B1 (ja) | レーザ加工装置、レーザ加工方法、及びレーザ加工プログラム | |
CN115421442A (zh) | 一种用于激光加工的位置补偿方法及设备和存储介质 | |
CN115401688A (zh) | 机械臂的控制方法、装置、机械臂系统和存储介质 | |
CN111522295B (zh) | 机械控制装置 | |
JP7059968B2 (ja) | 制御装置および位置合わせ装置 | |
JP2007094536A (ja) | 対象物追跡装置及び対象物追跡方法 | |
JP7172151B2 (ja) | 制御システム、制御装置およびプログラム | |
JP6892462B2 (ja) | 機械制御装置 | |
JP2007004829A (ja) | 画像処理装置 | |
CN111113394A (zh) | 机械手定位方法 | |
WO2022065302A1 (ja) | 撮像条件調整装置、及び撮像条件調整方法 | |
KR102349041B1 (ko) | 비접촉 방식으로 물체의 길이를 측정하기 위한 장치 및 이를 위한 방법 | |
CN116721094B (zh) | 一种复杂背景下的视觉图形识别方法、系统及激光切割机 | |
WO2023218540A1 (ja) | 産業システム制御装置、産業システムおよび画像取得方法 | |
WO2022059335A1 (ja) | 三次元モデル生成方法及び三次元モデル生成装置 | |
WO2022056823A1 (en) | Method and apparatus for tuning robot system | |
JP2002208009A (ja) | 物体検出方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |