一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

控制装置的制作方法

2022-03-19 14:46:33 来源:中国专利 TAG:


1.本发明涉及能够控制多个控制对象的控制装置。


背景技术:

2.在各种生产现场中,使用可编程逻辑控制器(programmable logic controller,plc)等控制装置的工厂自动化(factory automation,fa)技术已广泛普及。这样的控制装置不仅直接对控制对象进行控制,还存在通过对其他装置提供控制指令而间接地对控制对象进行控制的情况。另外,还产生了想要将此前使用多个专用装置实现的控制系统合并为更少数量的控制装置的需求。例如,在专利文献1所示的技术中,在plc的cpu单元中,同步地执行动作运算程序以及用户程序。
3.另外,在专利文献2中,公开了通过单一的控制装置实现按照执行形式不同的多种程序的控制运算的技术。在该技术中,例如采用如下结构:关于在每个控制周期执行程序整体的形式的程序和按照通过一部分解释而生成的中间代码逐次执行的形式的程序,进行各自的指令值运算,在每个控制周期一并输出各指令值。
4.另外,在专利文献3中,公开了使通过不同的时钟周期性地生成的多个信号在控制装置中同步的技术。在该技术中,控制装置具有:第一处理器,取得按每个第一周期生成的同步信号;以及第二处理器,生成将第一周期进行n分割(n≥1)而得到的第二周期,并且使用计时器,按将第二周期进行m分割(m≥2)而得到的每个第三周期产生控制信号,在基于控制信号的定时进行规定的处理。并且,在第一周期中产生的多个控制信号中的至少一次是应与同步信号同步的控制信号,第二处理器在检测到在同步信号和应与同步信号同步的控制信号之间在定时产生了误差的情况下,通过暂时变更下次以后开始的计时器的宽度来校正误差。
5.现有技术文献
6.专利文献
7.专利文献1:日本特开2012-194662号公报
8.专利文献2:日本特开2019-36043号公报
9.专利文献3:日本特开2019-101480号公报


技术实现要素:

10.发明所要解决的课题
11.以往,例如,在以搬运容器的装置的旋转轴的动作为主装置,以用于向容器填充内容物的喷嘴的动作为从装置而使主从的动作同步的情况下,或以搬运工件的输送机的动作为主装置,以进行对工件的操作的机器人的动作为从装置而使主从的动作同步的情况下等,用户需要校正由通信周期产生的主从中的动作的延迟。
12.本发明是鉴于这样的问题而完成的,其目的在于提供一种用于对现场设备简便地进行动作的同步控制的技术。
13.用于解决课题的手段
14.本发明所涉及的控制装置经由进行固定周期通信的网络,按照规定的程序使多个现场设备进行协调动作。另外,控制装置具备:预测部,其基于第一周期中的第一现场设备的位置,计算第一周期之后的第二周期中的、按照第一程序进行动作的第一现场设备的位置;以及处理部,其基于第一程序,决定用于使第一现场设备进行动作的第一指令值,经由用于与多个现场设备进行通信的接口部向第一现场设备发送第一指令值,并且基于由预测部计算出的位置和第二程序,决定用于使应该与第一现场设备进行协调动作的第二现场设备进行动作的第二指令值,经由接口部向第二现场设备发送第二指令值。
15.在经由进行固定周期通信的网络来控制现场设备的情况下,在现场设备接收指令值而进行动作之前,产生与处理、通信所需的周期相应的延迟。根据控制装置,预测部计算后一周期(第二周期)中的第一现场设备的位置,处理部基于该位置来决定应与第一现场设备进行协调动作的第二现场设备的动作的指令值。即,预计到指令值到达第二现场设备为止的延迟,能够以后的周期中的第一现场设备的位置为目标,指示第二现场设备的动作。因此,能够对现场设备简便地进行动作的同步控制。
16.另外,预测部也可以将对第一现场设备的动作速度乘以规定的校正系数而得到的值与第一周期中的第一现场设备的位置相加,而计算第二周期中的第一现场设备的位置。例如通过这样的计算处理,能够预测第二周期中的第一现场设备的位置。
17.另外,也可以是,第一程序和第二程序中的一方是遵循每次执行都执行整体的第一执行形式的程序,另一方是遵循逐次执行的第二执行形式的程序。而且,规定的校正系数也可以根据包含按照遵循第一执行形式的程序进行动作的种类的设备、和按照遵循第二执行形式的程序进行动作的种类的设备在内的、第一现场设备以及第二现场设备的种类的组合来决定。第一执行形式是在每次执行时执行程序整体的形式,例如是包含序列控制及动作控制的命令的iec(international electrotechnical commission:国际电工委员会)程序。第二执行形式是逐次执行的形式,例如是主要控制机器人的应用程序。在该情况下,延迟量根据成为协调动作的基准的第一现场设备以及与其协调动作的第二现场设备分别是例如按照第一执行形式进行动作的设备还是按照第二执行形式进行动作的设备而不同。因此,通过根据第一现场设备以及第二现场设备的类别的组合来决定校正系数,从而能够进行适当的预测。
18.另外,也可以是,处理部包含:第一处理部,其构成为能够按固定周期通信中的每个控制周期执行遵循第一执行形式的程序来运算用于控制现场设备的指令值;以及第二处理部,其构成为能够按照执行遵循第二执行形式的程序并由解释器解释该程序的至少一部分而生成的中间代码按每个控制周期运算用于控制现场设备的指令值,并且即使以第一处理部执行遵循第一执行形式的程序为起点,也能够运算用于控制该现场设备的该指令值,将第一处理部及第二处理部运算出的指令值经由接口部按每个控制周期发送。
19.通过按上述的固定周期通信中的每个控制周期发送第一处理部以及第二处理部运算出的指令值,例如能够统一控制动作轴和机器人,并且能够简便地进行动作的同步控制。
20.另外,也可以是,第一周期中的第一现场设备的位置是从第一现场设备反馈的反馈值、或者向第一现场设备发送的指令值,规定的校正系数根据第一周期中的第一现场设
备的位置是反馈值以及指令值中的哪一个来决定。具体而言,能够将上述那样的值用作第一周期中的第一现场设备的位置。但是,根据使用哪一个值,延迟量也不同。因此,通过根据使用哪一个值来决定校正系数,能够进行适当的预测。
21.此外,固定周期通信也可以是遵循ethercat(注册商标)标准的通信。例如,通过采用这样的标准,能够构成进行上述处理的现场网络。
22.发明效果
23.能够对现场设备简便地进行动作的同步控制。
附图说明
24.[图1]是表示包含综合控制器的控制系统的概略构成的图。
[0025]
[图2]是将综合控制器的功能图像化的功能框图。
[0026]
[图3]是表示在综合控制器中按照控制周期执行的处理的流程的图。
[0027]
[图4]是用于说明控制装置与现场设备的通信的一例的图。
[0028]
[图5]是用于说明现场设备的协调动作的一个例子的图。
[0029]
[图6]是用于说明控制装置与现场设备的通信、及现场设备的协调动作的延迟的一例的图。
[0030]
[图7]是用于说明校正系数的图。
[0031]
[图8]是表示校正处理的一例的流程图。
具体实施方式
[0032]
《应用例》
[0033]
基于图1以及图2对实施方式所涉及的控制装置的应用例进行说明。图1是应用该控制装置100的控制系统1的概略结构图,图2是将形成于控制装置100的功能部图像化的图。
[0034]
控制装置100相当于对各种设备、装置等控制对象进行控制的产业用控制器。控制装置100是执行如后所述的控制运算的一种计算机。控制装置100也可经由现场网络2而与各种现场设备连接。现场设备包含对制造装置或生产线等(以下也总称为“现场”)赋予某些物理作用的致动器、及与现场之间交换信息的输入输出装置等,在图1中,作为现场设备,例示有机器人210、伺服驱动器220及马达222。伺服驱动器220根据来自控制装置100的输出数据(例如包含位置指令或速度指令等“指令值”)来驱动马达222。另外,作为机器人210,能够例示并联机器人、scara机器人、多关节机器人。如此,控制装置100是构成为能够统一控制机器人210、伺服驱动器220及马达222的控制装置,其详细内容将后述。
[0035]
控制装置100经由现场网络2等而与1个或多个现场设备之间交换数据。通常,“现场网络”也被称为“现场总线”,但为了简化说明,在本技术中统称为“现场网络”。控制装置100进行对在各种现场设备中收集或生成的数据(以下,也称为“输入数据”)进行收集的处理(输入处理)、生成针对现场设备的指令等数据(以下,也称为“输出数据”)的处理(运算处理)、将生成的输出数据向对象的现场设备发送的处理(输出处理)等。
[0036]
在此,现场网络2优选采用保证数据的到达时间的、进行固定周期通信的总线或网络。作为进行此种固定周期通信的总线或网络,已知有ethercat(注册商标)等。而且,经由
现场网络2而在控制装置100与现场设备之间交换的数据以数100μsec量级至数10msec量级的极短的周期被更新。另外,此种交换的数据的更新处理也称为输入输出刷新处理。
[0037]
另外,控制装置100还经由上级网络6与其他装置连接。上级网络6也可采用作为一般网络协议的以太网(注册商标)或ethernet/ip(注册商标)。更具体而言,也可以在上级网络6连接1个或多个服务器装置10。作为服务器装置10,设想数据库系统、制造执行系统(mes:manufacturing execution system)等。制造执行系统取得来自控制对象的制造装置、设备的信息,监视以及管理生产整体,也能够处理订货信息、品质信息、出货信息等。不限于此,也可以将提供信息系统服务的装置与上级网络6连接。
[0038]
在此,基于图2对控制装置100的结构进行说明。控制装置100是如上所述执行规定的控制运算的一种计算机,具备该控制运算所需的处理器、存储器。该处理器由cpu(central processing unit)、mpu(micro processing unit)、gpu(graphics processing unit)等构成。作为处理器,可以采用具有多个核的结构,也可以配置多个该处理器。作为该存储器,由dram(dynamic random access memory)、sram(static random access memory)等易失性存储装置、hdd(hard disk drive)、ssd(solid state drive:)等非易失性存储装置等构成。而且,处理器通过读出并执行存储在存储器中的各种程序,实现与控制对象相应的控制及后述的各种处理。在存储器中,除了用于实现基本功能的系统程序以外,还保存有根据控制对象的制造装置或设备而制作的用户程序(iec程序51及应用程序52)。
[0039]
另外,本技术中的iec程序51是指每次执行时整体被扫描,每次执行时运算1个或多个指令值的程序,典型地包含由按照国际电工标准会议(international electrotechnical commission:iec)所规定的国际标准iec61131-3记述的1个或多个命令构成的程序。iec程序51中包含序列控制及动作控制的命令。此种iec程序51对应于在每个控制周期执行(扫描)所有程序的执行形式,适合于要求即时性及高速性的控制。另一方面,本技术中的应用程序52是用于使用机器人进行特定的加工或动作的控制程序,包含由用于实现机器人的控制应用的1个或多个命令构成的程序,基本上与iec程序51相区别。作为一例,与机器人控制相关的应用程序52采用使用机器人语言来记述且逐次执行1行的解释器方式。
[0040]
而且,如图2所示,控制装置100具有iec程序处理部40、下级网络接口60、上级网络接口20、控制应用处理部30、预测部70及公共存储器71。下级网络接口60对iec程序处理部40及控制应用处理部30与经由现场网络2而连接的现场设备之间的数据交换进行中介。上级网络接口20对iec程序处理部40及控制应用处理部30与经由上级网络6而连接的服务器装置10之间的数据交换进行中介。例如,控制装置100从经由上级网络6连接的服务器装置10接受生产的开始/结束这样的指示。服务器装置10有时也将用于使控制应用动作的应用程序及配方信息(适于生产的参数等信息)等发送至控制装置100。
[0041]
iec程序处理部40在每个预定的控制周期执行(扫描)iec程序51来运算1个或多个指令值。即,iec程序处理部40按照iec程序51,在每个控制周期运算指令值。另外,在本技术中,为了控制包含马达222而构成的规定装置,执行iec程序51。而且,动作处理部42提供根据iec程序51中所含的动作命令,在每个控制周期运算指令值的功能。即,iec程序51中所含的动作命令包含指示跨多个控制周期的行为的命令(例如,用于使由马达222构成的规定装置的输出描绘某种轨道的命令)。当执行这样的动作命令时,动作处理部42按照所执行的动
作命令的指示内容,在每个控制周期运算指令值。即,动作处理部42通过对上述的规定的装置在每个控制周期输出指令值,实现由动作命令指示的动作。另外,动作处理部42相当于本发明的“第一处理部”。
[0042]
接着,控制应用处理部30基于应用程序52以及配方信息等,运算用于对控制应用进行控制的指令值。此外,在本技术中,为了控制机器人210,由控制应用处理部30执行应用程序52。控制应用处理部30与iec程序处理部40的指令值的运算及输出同步地运算及输出用于控制应用的指令值。即,控制应用处理部30与iec程序处理部40的运算处理同步地执行指令值的运算处理。另外,关于该iec程序处理部40与控制应用处理部30的同步处理,将于后述。为了实现与iec程序处理部40的指令值的运算处理同步的指令值的运算,控制应用处理部30包含动作处理部32、缓冲器33及解释器34。
[0043]
解释器34具有逐次对应用程序52的至少一部分进行解释而生成中间代码,并且存储所生成的中间代码的缓冲器33。本技术中的中间代码是包含用于在每个控制周期运算指令值的命令的概念,也可以包含1个或多个命令、或者1个或多个函数。而且,动作处理部32按照解释器34事先生成并存储在缓冲器33中的中间代码,在每个控制周期运算指令值。一般而言,由于应用程序52中记述的命令(代码)被逐次执行,因此无法保证指令值的运算周期,但在本技术公开中,通过像这样利用中间代码,运动处理部32能够在每个控制周期运算指令值。在中间代码中记述的命令也可以使用与各控制应用相应的坐标系。另外,动作处理部32相当于本发明的“第二处理部”。另外,动作处理部32和动作处理部42相当于本发明的“处理部”。
[0044]
而且,为了在iec程序处理部40与控制应用处理部30之间共享数据,在控制装置100中设置公共存储器71。在本技术公开中,控制应用处理部30的处理结果的一部分或全部存储在公共存储器71中,iec程序处理部40能够参照公共存储器71中存储的数据。另外,也可从iec程序处理部40向公共存储器71写入数据,如此从iec程序处理部40写入的数据可由解释器34及动作处理部32参照。另外,预测部70也可以能够对公共存储器71读写数据。
[0045]
此处,如上所述,机器人210是利用由解释器34所生成的中间代码而由动作处理部32控制,但进而作为机器人210的控制的另一形态,动作处理部32也可将iec程序51的执行作为起点来控制机器人210。在该情况下,iec程序51中包含机器人210的控制指令(动作指令),首先若通过iec程序处理部40执行iec程序51,则包含于此的机器人210的控制指令被交给动作处理部32,基于该控制指令来控制机器人210。
[0046]
这样,控制装置100构成为能够按照执行形式不同的iec程序51和应用程序52这两者来控制机器人210,因此能够根据各程序的特性灵活地构建用于实现用户要求的控制系统1。
[0047]
另外,预测部70针对应协调动作的多个现场设备,进行用于校正动作的延迟的预测处理。假设在基于表示成为动作的基准的现场设备(也称为动作的主装置)的当前的位置或姿势的值来计算针对应与动作的主装置协调地进行动作的其他现场设备(也称为动作的从装置)的动作的指令值的情况下,在动作的从装置基于包含该指令值的控制指令进行动作的时刻,动作的主装置有时已进一步发生了移动或改变了姿势。这样的动作的延迟是由于通信周期的差、数据处理所需的时间而产生的。因此,预测部70预测动作的从装置进行动作的时间点的、动作的主装置的位置或姿势,运动处理部32及运动处理部42将基于预测出
的值的指令值发送至动作的从装置。这样,预测部70进行使动作的从装置的动作的定时相对于动作的主装置的动作提前的超前校正,由此使用控制装置100的用户能够简便地进行动作的同步控制。另外,控制装置100对主装置及从装置进行统一控制。尤其是,控制装置100能够按照iec程序51及应用程序52这两者来进行现场设备的控制,因此即便是各种主装置及从装置的组合,也能够统一进行控制。
[0048]
《程序的同步执行》
[0049]
在控制装置100中,实现iec程序51与应用程序52的同步执行。控制应用处理部30的解释器34按照比控制周期长的周期、例如控制周期的2倍的周期(控制应用同步周期t2)逐次执行应用程序52。但是,iec程序处理部40的动作处理部42及控制应用处理部30的动作处理部32均在相同的每个控制周期运算指令值。因此,来自控制装置100的指令值的输出均以预定的控制周期同步地进行。如此,iec程序处理部40及控制应用处理部30分别具有用于连续地控制致动器的动作的动作处理部,这些动作处理部同步地运算指令值,由此能够与控制周期同步地执行依据iec程序51的控制及依据应用程序52的控制这两者,由此实现以控制周期为单位的精密控制。
[0050]
接着,基于图3对控制装置100中的iec程序51及应用程序52的执行定时的详细情况进行说明。图3是表示控制装置100中的程序的执行定时的一例的图。此外,在控制装置100中,考虑处理器的资源,设定有优先级高的高优先级任务(图3中的上段的处理)和优先级低的低优先级任务(图3中的下段的处理)。具体而言,下级网络接口60、iec程序处理部40及其动作处理部42的执行、及控制应用处理部30的动作处理部32的执行被设定为高优先级任务,控制应用处理部30的解释器34的执行被设定为低优先级任务。
[0051]
即,与下级网络接口60关联的输入输出刷新处理b60、iec程序51的执行处理b40、按照iec程序51由动作处理部42进行的指令值的运算处理b42、按照应用程序52由动作处理部32进行的指令值的运算处理b32、以及以iec程序51为起点由动作处理部32进行的指令值的运算处理b32’作为高优先级任务被执行。另一方面,逐次解释应用程序52的处理b34作为低优先级任务被执行。另外,在1个控制周期t1中的高优先级任务中,仅进行运算处理b32和运算处理b32’中的任意一方。
[0052]
在此,高优先级任务按每个预定的控制周期t1反复执行。低优先级任务每次在各控制周期内不执行高优先级任务的期间执行。即,对每个控制周期分配高优先级任务的执行时间,在高优先级任务的执行时间以外的时间执行低优先级任务。
[0053]
首先,对高优先级任务进行说明,若各控制周期到来,则在执行输入输出刷新处理b60之后,通过iec程序处理部40来执行(扫描)iec程序51的整体,并运算关于序列控制的1个或多个指令值(执行处理b40)。并且,通过动作处理部42执行与iec程序51中所含的动作命令相关的动作处理,运算关于动作命令的1个或多个指令值(执行处理b42)。进而,通过控制应用处理部30的动作处理部32,按照存储在缓冲器33中的中间代码准备机器人210的控制用的动作指令(执行处理b32),或者从iec程序51准备其中所包含的机器人210的控制用的动作指令(执行处理b32’)。基于规定的基准来决定是进行执行处理b32还是进行执行处理b32’。以下,在每个控制周期重复同样的处理。此外,运动处理部32从缓冲器33读出中间代码的定时也可以不是各控制周期。这是因为,在所读出的中间代码包含能够跨多个控制周期t1运算指令值的命令的情况下,能够在该多个控制周期t1中进行一次中间代码的读
出。
[0054]
这样,当某个控制周期中的高优先级任务的执行完成时,准备关于与马达222等相关的序列控制的指令值以及关于其运动控制的指令值、和关于与机器人210相关的控制应用的指令值的集合。这些指令值基本上在下一个控制周期到来时反映到现场侧。即,iec程序处理部40及控制应用处理部30以同一控制周期运算与输入数据相应的指令值,因此可实现与输入同步的输出。
[0055]
另一方面,关于低优先级任务,控制应用处理部30的解释器34逐次执行应用程序52。即,解释器34以低优先级执行应用程序52的读入及分析。解释器34对应用程序52进行分析处理而生成的中间代码一边考虑缓冲器33的容量,一边逐次存储在缓冲器33中。存储在缓冲器33中的中间代码被控制应用处理部30的动作处理部32依次参照,用于运算处理b32中的指令值的生成。此时,解释器34事先多余地生成高优先级任务的运算周期即控制周期的整数倍的量的中间代码,由此可不对动作处理部32的处理造成影响,而在每个控制周期运算针对控制应用的指令值。
[0056]
另外,解释器34在预定的控制应用同步周期(控制周期的整数倍)到来之前,暂时停止应用程序52的解释。在所述暂时停止的定时,在iec程序处理部40与控制应用处理部30之间进行数据同步,由此对两者共享具有匹配性的数据。如此,解释器34在每个同步周期更新与iec程序处理部40之间共享的数据。也可以与共享数据的更新一起,对从现场侧取得的输入数据以及输出数据也进行更新(数据同步)。由此,在控制应用处理部30侧,也能够利用iec程序处理部40所获取的数据来控制机器人210。控制应用同步周期只要设定为控制周期的整数倍,则可以是任意的长度。根据控制应用所要求的控制的精度等来适当设定。
[0057]
《现场设备的同步控制》
[0058]
图4是用于说明控制装置与现场设备的通信的一例的图。通信只要进行固定周期通信即可,但在本实施方式中,设为按照ethercat的标准进行通信。控制装置100作为现场网络2的控制器发挥功能,控制机器人210或伺服驱动器220等现场设备。另外,各装置能够通过菊花链、星型、环型等连接,但在此设为通过菊花链连接。然后,在控制装置100中,在以太网帧的数据部中存储按照规定的标准的信息,依次向串联连接的现场设备发送(图4:s1、s2)。另外,以太网帧在现场设备的终端折返,向相反方向返回至控制装置100(图4:s3、s4)。由此,1个周期的输入输出处理完成。另外,各现场设备在各周期中,向收发的以太网帧以即时方式进行输入输出处理。另外,对各个现场设备预先分配该装置应输入输出数据的比特位置及比特宽度。上述的运动处理部32以及运动处理部42分别按照应用程序52以及iec程序51,将向各现场设备的指令值存储于以太网帧。此时,使用基于预测部70的预测结果校正后的指令值。
[0059]
图5是用于说明现场设备的协调动作的一个例子的图。在图5的例子中,马达222使输送机8动作。此外,在输送机8上载置有工件9,工件9根据马达222的动作而被输送。另外,机器人210对工件9进行规定的动作。
[0060]
例如,在第一周期(图5:c1)中,马达222的轴位置从伺服驱动器220反馈至控制装置100。此外,也可以一并反馈马达222的动作的速度。在比第一周期靠后的第二周期(图5:c2)中,控制装置100基于马达222的轴位置来预测比第二周期靠后的第三周期(图5:c3)中的马达222的轴位置,并且基于预测位置来决定机器人210的目标位置,将基于目标位置的
控制指令发送至机器人210。然后,在第三周期中,机器人210基于目标位置进行动作。在第三周期中,工件9被输送机8输送至比第二周期中的位置前进的预测位置,多个现场设备同步地进行动作。
[0061]
图6是用于说明控制装置与现场设备的通信、以及现场设备的协调动作的延迟的一个例子的图。图6表示控制装置以及现场设备所执行的处理。另外,图6所示的主装置及从装置均为现场设备,分别相当于动作的主装置、动作的从装置。另外,动作的主装置为控制马达222的伺服驱动器220,动作的从装置为机器人210。“i/o”表示输入输出刷新处理,例如相当于图3的b60。“upg”表示用户程序的执行。“mc”表示动作控制的运算处理,例如相当于图3的b42。“rc”表示机器人控制的运算处理,例如相当于图3的b32。“ecat”表示ethercat中的通信处理。“in”、“out”分别表示ethercat中的现场设备的输入刷新、输出刷新,相当于对图4所示的以太网帧的输入输出处理。“轨迹(trajectory)”表示机器人的轨迹计算处理。
[0062]
在周期c11中,在主装置的“in”中为了反馈而输入表示当前位置的数据。另外,在周期c12中,在主装置的“ecat”及控制装置的“i/o”中,向控制装置100反馈数据,并且在控制装置的“mc”、“rc”中,生成对现场设备的控制指令。而且,在周期c13中,在控制装置的“i/o”及从机装置的“ecat”中,发送控制指令,在从装置的“out”被读出,在“轨迹”中计算机器人210的动作的轨迹。之后,在周期c14中,机器人210按照计算出的轨迹进行动作。另外,在未说明的块中也并行地进行处理。
[0063]
如图6所示,机器人210进行动作的是周期c14,比伺服驱动器220为了反馈而写入了当前位置的周期c11、通过伺服驱动器220的运动控制的运算处理而计算出指令值的周期c12延迟。另外,虽未图示,但根据主装置是伺服驱动器还是机器人、从装置是伺服驱动器还是机器人等、主装置与从装置的类别的组合,延迟的大小也不同。换言之,动作的主装置及从装置分别是通过按照在每次执行时执行整体的执行形式的程序而动作的种类的现场设备,还是基于根据遵循逐次执行的执行形式的程序的至少一部分由解释器生成的中间代码而动作的种类的现场设备,通信周期、处理时间不同,因此延迟的大小也变化。因此,预测部70计算校正了这样的延迟的预测位置。
[0064]
预测位置能够使用马达222的轴位置(当前位置)和动作速度来计算。例如,也可以通过以下的式(1)求出预测位置。
[0065]
预测位置=当前位置 (当前速度
×
校正系数)

(1)
[0066]
当前位置既可使用从伺服驱动器220反馈的值,也可使用在对伺服驱动器220的控制指令中指示的指令值。当前速度既可从伺服驱动器220反馈,也可使用过去的周期中的当前位置的数据列而计算。校正系数是规定的值,能够根据动作的主装置以及动作的从装置的类别的组合来设定。例如,也可以与关于动作的主装置及动作的从装置的、机器人或马达之类的类别的组合建立对应地确定校正系数。另外,也可以根据是使用反馈的位置还是使用控制指令的位置作为主装置的当前位置而使用不同的校正系数。
[0067]
图7是用于说明校正系数的图。另外,“动作轴/轴组”相当于1个或多个马达,是通过遵循在每次执行时执行整体的执行形式的程序而动作的种类的现场设备的一例。另外,“机器人”是基于根据遵循逐次执行的执行形式的程序的至少一部分由解释器生成的中间代码而动作的种类的现场设备的一例。在图7的例子中,针对动作的主装置的种类与动作的从装置的种类的组合,确定了延迟的周期的量。另外,在使用反馈的位置和使用控制指令的
位置作为主装置的当前位置的情况下,也确定不同的值。此外,关于机器人,也可以进一步根据机器人放大器来决定不同的延迟周期。另外,对于按照执行形式不同的iec程序51和应用程序52来控制机器人210的情况,也可以分别确定不同的延迟周期量。通过使用如图7所示的与延迟周期相应的校正系数,能够校正通信延迟,能够进行现场设备的同步控制。例如,能够以校正系数也根据延迟周期的大小而变大的方式预先决定校正系数。
[0068]
《校正处理》
[0069]
图8是示出校正处理的示例的流程图。控制装置100在生成及发送向应协调动作的现场设备的控制指令时,进行图8所示的处理。首先,预测部70获取动作的主装置的当前位置(图8:s101)。在本步骤中,作为当前位置,可以获取从主装置反馈的值,也可以获取在对主装置的控制指令中指示的指令值。另外,在主装置为机器人的情况下,也可以获取主装置的当前姿势(机器人所具备的多个马达的位置的组合)作为当前位置。
[0070]
然后,预测部70预测主装置的到达位置(图8:s102)。在本步骤中,预测部70预测从装置的动作时间点的主装置的到达位置。到达位置例如能够使用上述的式(1)来计算。另外,在本步骤中,既可基于主装置的种类与从装置的种类的组合来变更校正量,也可根据主装置的当前位置是从主装置反馈的值、还是在对主装置的控制指令中指示的值来变更校正量。
[0071]
另外,动作处理部32或动作处理部42基于预测出的到达位置来决定对从装置的指令值,并向从装置发送(图8:s103)。在本步骤中,例如以主装置的到达位置为目标来决定指令值以使从装置动作。另一方面,接收到包含指令值的控制指令的从装置按照指令值进行动作。
[0072]
另外,控制装置100判断是否结束处理(图8:s104)。在本步骤中,例如判断按照规定的用户程序的现场设备的动作是否全部结束。在判断为不结束的情况下(s104:否),返回s1继续处理。另一方面,在判断为结束的情况下(s104:是),控制装置100结束处理。
[0073]
如上所述,控制装置100在进行固定周期通信的系统中,能够对基于当前位置的控制指令到达现场设备而动作为止的通信及动作的延迟进行校正。尤其是,控制装置100能够使应用程序52与iec程序51同步而进行处理,因此即便在动作的主装置及动作的从装置的种类例如像马达与机器人那样不同的情况下,也能够统一进行延迟的校正。
[0074]
以上,对实施方式进行了说明,但上述的控制装置是一例,本发明的控制装置并不限定于上述的结构。所说明的实施方式的结构能够在不脱离本发明的课题或技术思想的范围内尽可能地进行变更或组合。
[0075]
《附记1》
[0076]
一种控制装置(100),其经由进行固定周期通信的网络(2),按照规定的程序使多个现场设备(210、220)协调动作,所述控制装置具备:
[0077]
预测部(70),其基于第一周期中的第一现场设备的位置,计算比所述第一周期靠后的第二周期中的、按照第一程序进行动作的所述第一现场设备的位置;
[0078]
处理部(32、42),其基于所述第一程序,决定所述第一现场设备的动作的第一指令值,经由用于与所述多个现场设备进行通信的接口部将所述第一指令值发送至所述第一现场设备,并且基于预测出的位置和第二程序,决定应该与所述第一现场设备进行协调动作的第二现场设备的动作的第二指令值,经由所述接口部(60)将所述第二指令值发送至所述
第二现场设备。
[0079]
标号说明
[0080]
1:控制系统;2:现场网络;6:上级网络;10:服务器装置;30:控制应用处理部;40:iec程序处理部;51:iec程序;52:应用程序;70:预测部;210:机器人;220:伺服驱动器;222:马达。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献