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

生产系统、数据发送方法、和程序与流程

2021-09-14 22:27:00 来源:中国专利 TAG:发送 公开 程序 方法 生产


1.本公开涉及生产系统、数据发送方法、和程序。


背景技术:

2.在wo 2015/068210 a1中,描述了一种系统,在该系统中,被配置为控制另一工业机器的工业机器获取与该另一工业机器的操作有关的数据,并将该数据发送到与该工业机器通信地连接的外部设备。


技术实现要素:

3.本公开的一方面要实现的目的是降低例如,外部设备上的处理负荷。
4.根据本公开的一方面,提供了一种生产系统,包括:收集模块,被配置为收集同步收集的数据,该同步收集的数据与工业机器的控制周期同步,该工业机器被配置为控制另一工业机器;执行模块,被配置为对同步收集的数据的全部或部分执行预定处理以获取输出数据;以及发送模块,被配置为将输出数据发送到外部设备。
5.根据本公开的一方面,提供了一种数据发送方法,包括:收集同步收集的数据,该同步收集的数据与工业机器的控制周期同步,该工业机器被配置为控制另一工业机器;对同步收集的数据的全部或部分执行预定处理以获取输出数据;以及将输出数据发送到外部设备。
6.根据本公开的一方面,提供了一种使得计算机用作以下模块的程序:收集模块,被配置为收集同步收集的数据,该同步收集的数据与工业机器的控制周期同步,该工业机器被配置为控制另一工业机器;执行模块,被配置为对同步收集的数据的全部或部分执行预定处理以获取输出数据;以及发送模块,被配置为将输出数据发送到外部设备。
7.根据本公开的一方面,收集模块被配置为针对每个控制周期收集同步收集的数据,执行模块被配置为针对每个控制周期执行预定处理以获取输出数据,并且发送模块被配置为将针对每个控制周期获取的输出数据发送到外部设备。
8.根据本公开的一方面,执行模块被配置为在控制周期结束前完成预定处理以获取输出数据。
9.根据本公开的一方面,执行模块被配置为对同步收集的数据的部分执行预定处理以获取输出数据,并且发送模块被配置为将同步收集的数据的尚未被执行预定处理的数据片段和输出数据发送到外部设备。
10.根据本公开的一方面,发送模块被配置为将分别具有为其分配的相同的时间信息的数据片段和输出数据发送到外部设备。
11.根据本公开的一方面,工业机器包括被配置为控制另一工业机器的控制电路,并且时间信息是记录在控制电路中的时间信息。
12.根据本公开的一方面,执行模块被配置为对同步收集的数据的、由用户指定的片段执行预定处理以获取输出数据。
13.根据本公开的一方面,工业机器包括:第一控制电路,被配置为控制另一工业机器;和第二控制电路,包括收集模块、执行模块、和发送模块,收集模块被配置为收集存储在第一控制电路中的同步收集的数据,并将收集到的同步收集的数据写入第二控制电路的同步区域中,执行模块被配置为对写入同步区域的同步收集的数据的全部或部分执行预定处理,并将获取的输出数据写入第二控制电路的缓冲区域中,并且发送模块被配置为将写入缓冲区域中的输出数据发送到外部设备。
14.根据本公开的一方面,执行模块被配置为对同步收集的数据中包括的多个数据片段执行互不相同种类的预定处理以获取多条输出数据,并且发送模块被配置为将多条输出数据发送到外部设备。
15.根据本公开的一方面,预定处理是过滤处理、缩放处理、或偏移处理。
16.根据本公开,有可能降低例如,外部设备上的处理负荷。
附图说明
17.图1是示出根据本公开的实施例的生产系统的整体配置的示例的示意图。
18.图2是示出用于收集同步收集的数据的处理流程的示意图。
19.图3是示出要在生产系统中实现的功能的功能框图。
20.图4是示出存储在同步区域中的同步收集的数据的示例的表格。
21.图5是示出要在生产系统中执行的处理的示例的流程图。
具体实施方式
22.【1.生产系统的整体配置】
23.当外部设备收集同步收集的数据(同步收集的数据与工业机器的控制周期同步,该工业机器被配置为控制另一工业机器)并且外部设备对同步收集的数据执行预定处理时,要求外部设备执行种类繁多的处理,因此会增加外部设备上的处理负荷。作为用于降低外部设备上的处理负荷的广泛研究和开发的结果,发明人已构想了新颖且原始的生产系统等。现在给出根据本公开的实施例的生产系统等的详细描述。
24.图1是示出生产系统的整体配置的示例的示意图。如图1所示,生产系统1包括数据收集设备10、控制器20、和受控设备30。在本实施例中,数据收集设备10和控制器20通过通用网络(例如,以太网(商标))彼此连接。控制器20和受控设备30通过用于工业机器的网络彼此连接。用于将机器彼此连接的网络不限于本实施例的示例,并且可以是任何网络。
25.数据收集设备10是外部设备的示例。因此,本实施例中使用的术语“数据收集设备10”可以被理解为“外部设备”。外部设备是与稍后描述的工业机器不同的设备。外部设备通过网络通信地连接到工业机器。例如,外部设备被配置为收集与工业机器的操作有关的数据。另外,例如,外部设备被配置为分析工业机器的操作并且将分析结果的反馈提供给工业机器。
26.例如,数据收集设备10是个人计算机、服务器计算机、蜂窝电话(包括智能电话)、或移动终端(包括平板终端)。数据收集设备10可以是一种工业机器。数据收集设备10包括cpu 11、存储装置12、通信器13、操作接口14、以及显示器15。本文使用的“收集”具有与“接收”或“获取”相同的含义。
27.cpu 11包括至少一个处理器。存储装置12包括ram或硬盘驱动器,并且被配置为存储各种程序和数据。cpu 11被配置为基于那些程序和数据执行各种类型的处理。通信器13包括网卡和通信接口(例如,各种类型的通信连接器),并且被配置为与其他设备进行通信。操作接口14是诸如鼠标和键盘之类的输入设备。显示器15是液晶显示器、有机el显示器等,并且被配置为根据来自cpu 11的指令显示各种类型的屏幕。
28.控制器20是工业机器的示例。因此,本实施例中使用的术语“控制器20”可以被理解为“工业机器”。工业机器是被配置为辅助或替代人类工作的机器及其外围机器的统称。例如,除控制器20外,受控设备30也对应于工业机器。例如,如下设备对应于工业机器:可编程逻辑控制器(plc)、机器人控制器、工业机器人、电动机控制器、伺服放大器、逆变器、转换器、机床、输送设备、或半导体制造装置。控制器20被配置为控制至少一个受控设备30。生产系统1可以被称为“单元格(cell)”,其是比线小的单位。在这种情况下,控制器20可以被称为“单元格控制器”。
29.控制器20包括cpu 21、物联网(iot)单元22、第三存储装置23、和第二通信器24。cpu 21、第三存储装置23、和第二通信器24中的每一者的物理配置可以分别与cpu 11、存储装置12、和通信器13的物理配置相同。cpu 21可以包括易失性存储器或非易失性存储器中的至少一者。例如,cpu 21可以包括称为“高速缓冲存储器”的存储器。cpu 21存储稍后描述的变量。
30.cpu 21是第一控制电路的示例。因此,本实施例中使用的cpu 21可以被理解为“第一控制电路”。第一控制电路被配置为控制稍后描述的另一工业机器。第一控制电路不限于通用处理器,并且可以是任何电路。例如,第一控制电路可以是称为“fpga”或“asic”的电路。第一控制电路是一种电路系统。
31.iot单元22是第二控制电路的示例。因此,本实施例中使用的iot单元22可以被理解为“第二控制电路”。第二控制电路是被配置为向外部设备发送数据的电路。第二控制电路不限于用于iot的电路,并且可以是任何电路。例如,第二控制电路可以是称为“fpga”或“asic”的电路。例如,第二控制电路可以是通用处理器。第二控制电路是一种电路系统。
32.iot单元22被配置为通过网络将数据发送到另一计算机。例如,iot单元22包括第一存储装置22a、第二存储装置22b、和第一通信器22c。第一存储装置22a和第二存储装置22b可以分别与存储装置12相同。第一通信器22c可以与通信器13相同。例如,第一通信器22c主要用于与数据收集设备10之间的通信,第二通信器24主要用于控制受控设备30。iot单元22可以包括另一配置,例如,cpu。当cpu 21被提供以数据收集功能时,可以省略iot单元22。
33.受控设备30是另一工业机器的示例。因此,本实施例中使用的控制器20可以被理解为“另一工业机器”。术语“工业机器”具有如上所述的含义。另一工业机器可以是上述任何种类的工业机器。在本实施例中,另一工业机器由控制器20控制。另一工业机器是不同于控制器20的工业机器就够了。
34.受控设备30包括cpu 31、存储装置32、和通信器33。cpu 31、存储装置32、和通信器33中的每一者的物理配置可以分别与cpu 11、存储装置12、和通信器13中的每一者的物理配置相同。受控设备30还可以包括其他物理组件。例如,受控设备30可以包括称为“fpga”或“asic”的电路。此外,例如,如下设备可以连接到受控设备30:诸如电动机之类的待控制机
器、用于检测电动机的操作的传感器、用于拍摄要处理的工件的状态的相机、输入/输出设备、或另一工业机器。由控制器20控制的受控设备30的数目可以是任意数目。例如,控制器20可以仅控制一个设备,或者可以控制两个或更多个设备。
35.可以通过网络来提供被描述为存储在数据收集设备10、控制器20、和受控设备30中的每一者中的程序和数据。此外,每个设备的硬件配置不限于上述示例,并且可以采用各种类型的硬件。例如,可以包括被配置为读取计算机可读信息存储介质的读取器(例如,光盘驱动器或存储卡插槽)和被配置为直接连接到外部设备的输入/输出设备(例如,usb终端)。在这种情况下,可以通过读取器或输入/输出设备来提供存储在信息存储介质中的程序和数据。
36.【2.生产系统的概述】
37.在本实施例中,控制器20被配置为基于多个变量中的每个变量来控制受控设备30。变量由控制程序参考,用于控制受控设备30。控制程序也可以重写变量。例如,变量指示未完成的计算的结果、或传感器检测到的物理量(例如,扭矩传感器检测到的扭矩值或电动机编码器检测到的电动机转速)。变量可以是与受控设备30的操作有关的值,并且可以是如下项的值:例如,机器臂的位置或移动速度、电动机的速度、或等待操作的等待时间。
38.例如,当受控设备30以预定顺序执行多个处理时,在控制程序中描述这些处理的执行顺序。控制器20基于控制程序将指令发送到受控设备30。变量可以用作处理的执行条件。例如,受控设备30存储用于开启处理的变量、用于中止处理的变量、或用于结束处理的变量。变量可以被称为“输入/输出变量”。控制器20可以在不专门使用变量的情况下控制受控设备30。
[0039]“处理”是由受控设备30执行的任务或操作。处理可以仅包括一个任务,或者可以包括多个任务的组合。根据受控设备30的用途,处理可以具有任何内容。例如,处理是识别工件、夹持工件、打开/关闭门、设置工件、或使用机床进行加工。受控设备30执行至少一个处理。由受控设备30执行的处理的数目可以是任意数目。受控设备30可以仅执行一个处理,或者可以执行多个处理。受控设备30基于从控制器20接收的指令和存储在受控设备30自身中的设备程序来执行处理。
[0040]
设备程序是定义受控设备30的操作的程序。在设备程序中,定义了每个处理的每个进程。可以根据受控设备30以任何语言来创建设备程序,并且可以通过使用例如,梯形语言或机器人语言来创建设备程序。在本实施例中,为每个处理准备设备程序。因此,当某个受控设备30要执行“n”个处理(“n”是自然数)时,受控设备30至少存储“n”个设备程序。
[0041]
在本实施例中,控制器20收集与控制周期同步的同步收集的数据。控制周期是用于控制受控设备30的循环周期。例如,在控制器20和受控设备30之间执行的固定循环通信的通信循环周期可以对应于控制周期。此外,例如,当变量在控制器20和受控设备30之间周期性地(定期地)彼此匹配时,执行变量的匹配的循环周期可以对应于控制周期。由控制器20或受控设备30中的至少一者周期性地执行的任何处理的循环周期对应于控制周期就够了。
[0042]
同步收集的数据是与控制器20或受控设备30中的至少一者的操作有关的数据。同步收集的数据可以是与控制器20和受控设备30两者的操作有关的数据,或者可以是与其中任何一者的操作有关的数据。在本实施例中,描述了如下情况,在该情况下,同步收集的数
据是与受控设备30的操作有关的数据。另外,描述了如下情况,在该情况下,同步收集的数据包括至少一个变量的值,但是同步收集的数据可以指示除变量之外的信息。该信息被周期性地更新。
[0043]
图2是示出收集同步收集的数据的处理流程的示意图。如图2所示,cpu 21被配置为基于多个变量中的每个变量执行控制程序,并且将控制命令发送到受控设备30。在本实施例中,描述了如下情况,在该情况下,将每个变量存储在cpu 21中的存储装置中,但是可以将每个变量存储在第三存储装置23中。受控设备30被配置为基于设备程序执行与控制命令相对应的操作,并发送指示操作结果的响应。变量也被存储在受控设备30的存储装置32中。
[0044]
在本实施例中,iot单元22也存储变量。cpu 21中的变量和iot单元22中的变量也周期性地彼此匹配。iot单元22中的变量被用来将数据发送到数据收集设备10。例如,第一存储装置22a被划分为同步区域和异步区域。变量被存储在同步区域中。
[0045]
同步区域是在cpu 21和iot单元22之间执行同步的区域。本文使用的同步是定期地(周期性地)执行数据的匹配。同步是使存储在cpu 21中的值和存储在第一存储装置22a的同步区域中的值中的任一个与另外一个彼此一致(将一个值复制到另一个值)。
[0046]
例如,对于给定变量,将存储在cpu 21中的值改变为存储在iot单元22的同步区域中的值对应于同步。此外,例如,对于给定变量,将存储在iot单元22的同步区域中的值改变为存储在cpu 21中的值对应于同步。同步可以主要由cpu 21执行或者可以主要由iot单元22执行。针对每个给定的固定循环周期,对cpu 21或iot单元22进行同步。该循环周期可以与在cpu 21和受控设备30之间执行的固定循环通信的循环周期相同或不同。
[0047]
异步区域是不是同步区域的区域。异步区域是不进行cpu 21和iot单元22之间的同步的区域。但是,异步区域可以具有不定期地(非周期性地)同步的数据。例如,cpu 21将从受控设备30收集的数据传送到iot单元22,并将该数据写入第一存储装置22a的异步区域。例如,将不定期地获取的数据写入异步区域。
[0048]
iot单元22清洗同步区域中的数据,然后将数据发送到数据收集设备10。清洗不意味着将存储在同步区域中的数据原样发送到数据收集设备10,而是处理(编辑)数据的全部或部分。可以对同步区域中的数据进行任何处理,例如,过滤处理、缩放处理、或偏移处理。稍后将描述这些种类的处理的细节。
[0049]
在本实施例中,用于清洗同步收集的数据的应用程序被存储在控制器20中。例如,数据收集设备10的用户将指示哪个变量将被输入到哪个应用程序的信息设置为收集设置。iot单元22将收集设置中指示的变量输入到收集设置中指示的应用程序。例如,iot单元22将变量a输入到应用程序1,并且执行过滤处理。应用程序1基于经过滤的变量a输出输出数据。同时,例如,iot单元22将变量b输入到应用程序2,并且执行缩放处理。应用程序2基于经缩放的变量b输出输出数据。
[0050]
iot单元22将时间戳分配给输出数据,并将输出数据写入第二存储装置22b。时间戳可以是由cpu 21管理的时间或由iot单元22管理的时间。例如,基于计时器值来管理时间。不仅是输出数据,而且是清洗之前的数据和输出数据都可以被发送到数据收集设备10。
[0051]
在本实施例中,第二存储装置22b包括至少一个缓冲区域,并且iot单元22将输出数据写入到缓冲区域中。例如,数据收集设备10将数据发送请求发送到iot单元22。数据发
送请求是对于发送存储在缓冲区域中的输出数据的请求。iot单元22响应于从数据收集设备10接收的数据发送请求,将存储在缓冲区域中的输出数据发送到数据收集设备10。当下一个控制周期来临时,以与上述相同的流程清洗同步目标数据,并且将输出数据发送到数据收集设备10。
[0052]
如上所述,生产系统1向控制器20提供清洗功能,从而降低了数据收集设备10上的处理负荷。另外,生产系统1不向cpu 21提供清洗功能,而向iot单元22提供清洗功能,从而降低了cpu 21上的处理负荷。下面详细描述该配置。
[0053]
【3.要在生产系统中实现的功能】
[0054]
图3是示出要在生产系统1中实现的功能的功能框图。在本实施例中,描述了要在数据收集设备10、控制器20、和受控设备30中的每一者中实现的功能。
[0055]
【3

1.由数据收集设备实现的功能】
[0056]
如图3所示,数据收集设备10包括数据存储装置100和收集模块101。
[0057]
【数据存储装置】
[0058]
数据存储装置100主要由存储装置12实现。数据存储装置100被配置为存储与数据收集有关的数据。例如,数据存储装置100存储从控制器20收集的输出数据。在本实施例中,定期地收集输出数据。输出数据可以存储变量在某个时间点的值,或者可以存储变量的值的按时间顺序的变化。另外,输出数据可以仅存储一个变量的值,或者可以存储多个变量的值。在另一示例中,输出数据可以存储基于多个变量的值计算得出的值。数据存储装置100可以存储清洗之前的同步收集的数据的全部或部分。
[0059]
此外,例如,数据存储装置100存储从控制器20的异步区域收集的数据。此外,例如,数据存储装置100存储用于分析控制器20或受控设备30的操作的应用程序。例如,该应用程序将输出数据或从异步区域收集的数据作为输入进行处理,并将分析结果作为输出进行处理。在该应用程序中,定义了输出数据或从异步区域收集的数据与分析结果之间的关系。可以基于分析结果将反馈提供给控制器20。
[0060]
【收集模块】
[0061]
收集模块101主要由cpu 11实现。收集模块101被配置为从控制器20收集输出数据。在本实施例中,收集模块101周期性地向控制器20发送数据发送请求。数据发送请求是对于输出数据的发送请求,并且通过发送具有预定格式的数据来发出。数据发送请求可以包括用于标识要发送的输出数据的信息。当输出数据被记录在缓冲区域中时,控制器20可以将预定的完成通知发送到数据收集设备10。当收集模块101接收到控制器20发送的完成通知时,收集模块101可以将数据发送请求发送到控制器20。
[0062]
例如,输出数据由稍后描述的发送模块206发送,并且收集模块101收集所发送的输出数据。不需要周期性地发送数据发送请求。例如,当输出数据被存储在缓冲区域中时,控制器20可以将预定通知发送到数据收集设备10,并且可以基于该通知来发送数据发送请求。此外,例如,控制器20可以自发地将输出数据发送到数据收集设备10。在这种情况下,收集模块101接收由控制器20自发发送的输出数据。
[0063]
【3

2.由控制器实现的功能】
[0064]
如图3所示,在控制器20中,实现了第一数据存储装置200、第二数据存储装置201、第三数据存储装置202、操作控制模块203、收集模块204、执行模块205、和发送模块206。
[0065]
【第一数据存储装置】
[0066]
第一数据存储装置200主要由第一存储装置22a实现。第一数据存储装置200被配置为存储将由数据收集设备10收集的数据。在本实施例中,第一数据存储装置200具有同步区域和异步区域。也就是说,第一数据存储装置200被划分为同步区域和异步区域。同步区域是第一地址区域中的区域,异步区域是第二地址区域中的区域。第一数据存储装置200可以具有多个同步区域。第一数据存储装置200可以具有多个异步区域。同步区域和异步区域中的每一者是预定地址范围中的存储区域。同步收集的数据被存储在同步区域中。
[0067]
图4是示出存储在同步区域中的同步收集的数据的示例的表格。如图4所示,同步收集的数据是指示多个变量中的每个变量的当前值的数据。例如,同步收集的数据给出了每个变量的当前值。每个变量被存储在特定的寄存器中。假定例如由控制器20的用户预先指定每个变量与每个寄存器之间的关系(哪个变量被存储在哪个寄存器中)。同步收集的数据中的变量的当前值和存储在稍后描述的第三数据存储装置202中的变量的当前值被定期地彼此匹配。可以将要同步的数据存储在同步区域中并且可以将变量以外的数据也存储在其中就够了。同步区域存储要同步的数据就够了。
[0068]
【第二数据存储装置】
[0069]
第二数据存储装置201主要由第二存储装置22b实现。第二数据存储装置201被配置为存储输出数据。在本实施例中,第二数据存储装置201具有缓冲区域。缓冲区域是用于临时存储要发送到数据收集设备10的输出数据的区域。缓冲区域也可以说是数据收集设备10要引用的区域。第二数据存储装置201可以具有多个缓冲区域。缓冲区域是预定地址范围中的存储区域。
[0070]
在本实施例中,描述了如下情况,在该情况下,第一数据存储装置200具有同步区域和异步区域并且第二数据存储装置201具有缓冲区域。但是,同步区域、异步区域、和缓冲区域可以存在于一个存储装置(实际上是一件硬件)中。在这种情况下,iot单元22可以仅包括一个存储装置而不是多个存储装置。此外,例如,同步区域和异步区域可以存在于不同的存储装置中。此外,例如,同步区域和缓冲区域可以存在于一个存储装置中,而异步区域可以存在于另一存储装置中。此外,例如,异步区域和缓冲区域可以存在于一个存储装置中,而同步区域可以存在于另一存储装置中。
[0071]
【第三数据存储装置】
[0072]
第三数据存储装置202主要由cpu 21中的存储装置或第三存储装置23中的至少一者实现。第三数据存储装置202被配置为存储控制受控设备30所需要的数据。例如,第三数据存储装置202存储多个变量中的每个变量的当前值。第三数据存储装置202存储每个变量的当前值。每个变量被存储在特定的寄存器中。假定例如由控制程序的创建者预先指定每个变量与每个寄存器之间的关系(哪个变量被存储在哪个寄存器中)。第三数据存储装置202中的变量和第一数据存储装置200中的变量彼此同步。因此,第三数据存储装置202存储具有与图4所示的同步收集的数据相同的内容的数据。
[0073]
可以将所有变量设置为收集目标,但在本实施例中,假定仅将一部分变量设置为收集目标。例如,当数据收集设备10的用户和控制器20的用户彼此不同时,可以将允许向数据收集设备10的用户公开的部分或全部变量设置为收集目标。假定在第一数据存储装置200和第三数据存储装置202之间执行允许公开的变量的匹配。
[0074]
此外,例如,第三数据存储装置202存储控制程序和参数。另外,例如,第三数据存储装置202可以存储另一程序,例如固件,或者可以存储用于将变量数据发送到数据收集设备10的程序。此外,例如,第三数据存储装置202可以存储变量定义,该变量定义指示公开给数据收集设备10的用户的变量的定义。在设置变量定义时,将对变量定义中指示的全部或部分变量进行数据收集。
[0075]
控制器20中存储的数据不限于上述示例。例如,控制器20可以存储用于清洗的应用程序。另外,例如,控制器20可以存储收集设置。此外,例如,控制器20可以存储用于定义与每个变量相对应的寄存器的数据。此外,例如,控制器20可以存储使能对将由控制器20自身控制的受控设备30的识别的信息。此外,例如,控制器20可以存储使能对数据收集设备10的识别的信息。这些数据可以被存储在第一数据存储装置200、第二数据存储装置201、和第三数据存储装置202中的任一者中。
[0076]
【操作控制模块】
[0077]
操作控制模块203主要由cpu 21实现。操作控制模块203被配置为基于控制程序来控制受控设备30的操作。例如,操作控制模块203将指令发送到受控设备30,并且受控设备30基于该指令进行操作。在本实施例中,操作控制模块203周期性地更新多个变量中的每个变量,以控制受控设备30。例如,当受控设备30基于与设备程序相关联的变量的值进行操作时,操作控制模块203向受控设备30发送指令以改变用于启动设备程序的变量的值。受控设备30通过基于指令改变变量的值来执行设备程序。当变量未被专门用于控制受控设备30的操作时,操作控制模块203可以通过发送指示将由受控设备30执行的操作的命令来控制受控设备30的操作。
[0078]
【收集模块】
[0079]
收集模块204主要由iot单元22实现。收集模块204被配置为收集同步收集的数据,该同步收集的数据与控制受控设备30的控制器20的控制周期同步。例如,收集模块204收集存储在第三数据存储装置202中的同步收集的数据,并将所收集的同步收集的数据写入第一数据存储装置200中的同步区域。
[0080]
收集模块204针对每个控制周期收集同步收集的数据。收集模块204周期性地收集同步收集的数据。例如,收集模块204执行计时处理以确定新的循环周期是否来临。当收集模块204确定新的循环周期已经来临时,收集模块204向第三数据存储装置202发送对存储在第三数据存储装置202中的同步收集的数据的读取请求,并收集同步收集的数据。同步收集的数据可以由cpu 21自发发送,而不是由收集模块204自发读取。在这种情况下,收集模块204收集由cpu 21自发发送的同步收集的数据。
[0081]
【执行模块】
[0082]
执行模块205主要由iot单元22实现。执行模块205被配置为对同步收集的数据的全部或部分执行预定处理,以获取输出数据。预定处理是用于处理数据的处理,例如,过滤处理、缩放处理、或偏移处理。预定处理也可以说是对数据的某种编辑或计算。可以将本实施例中关于清洗的描述理解为预定处理。
[0083]
过滤处理是提取满足预定条件的数据部分的处理。例如,如下处理对应于过滤处理:仅提取具有等于或低于特定频率的频率的信号的处理、仅提取具有等于或高于特定频率的频率的信号的处理、或仅提取特定频率范围内的信号的处理。缩放处理是改变数据的
规模的处理。偏移处理是改变数据的偏移的处理。过滤处理的阈值、缩放处理的缩放改变量的值、以及偏移处理的偏移量的值可以是固定值也可以是可变值。
[0084]
在本实施例中,假定在收集设置中定义了在同步收集的数据中要处理的位置和用于处理该位置的应用程序。假定在该应用程序中定义了要在该位置上执行的处理的内容。执行模块205参考收集设置来识别要处理的位置和应用程序。执行模块205将所识别的位置输入到所识别的应用程序。该应用程序执行预定处理并输出输出数据。执行模块205获取从该应用程序输出的输出数据。
[0085]
在本实施例中,针对每个控制周期收集同步收集的数据,因此执行模块205针对每个控制周期执行预定处理以获取输出数据。每当控制周期来临时,执行模块205就对新近收集的同步收集的数据执行预定处理,以获取新的输出数据。
[0086]
例如,执行模块205在控制周期结束前完成预定处理以获取输出数据。执行模块205对在给定的控制周期中收集的同步收集的数据执行预定处理。在本实施例中,给出了如下情况的描述:在收集同步收集的数据的控制周期之后的控制周期内,对给定的同步收集的数据执行预定处理。可以在收集同步收集的数据的控制周期期间执行预定处理,或者当第一数据存储装置200能够累积一定量的同步收集的数据时,可以在第二个随后的控制周期或后续的控制周期期间执行预定处理。
[0087]
执行模块205在下一控制周期结束之前(在第二个随后的控制周期来临之前)完成预定处理。因此,完成对给定的同步收集的数据的预定处理的时间点早于收集同步收集的数据的控制周期之后的控制周期结束的时间点。例如,执行模块205确定在给定的控制周期中同步收集的数据的收集是否完成。执行模块205响应于确定收集完成而立即执行预定处理。执行模块205在下一控制周期完成之前完成预定处理。
[0088]
例如,当执行模块205对同步收集的数据的部分执行预定处理以获取输出数据时,执行模块205可以通过对同步收集的数据的、由用户指定的片段执行预定处理来获取输出数据。在本实施例中,该用户是数据收集设备10的用户,但可以是其他用户,例如,控制器20或受控设备30的用户。在本实施例中,在收集设置中定义由用户指定的片段。执行模块205参考收集设置来识别要处理的片段。
[0089]
在本实施例中,执行模块205对写入在同步区域中的同步收集的数据的全部或部分执行预定处理,并将获取的输出数据写入第二数据存储装置201中的缓冲区域中。
[0090]
例如,执行模块205可以对同步收集的数据中包括的多个数据片段执行互不相同种类的预定处理,以获取多条输出数据。在这种情况下,执行模块205基于多个应用程序中的每个应用程序获取多条输出数据。执行模块205将相同的时间信息与每条输出数据相关联。
[0091]
【发送模块】
[0092]
发送模块206主要由iot单元22实现。发送模块206被配置为将输出数据发送到数据收集设备10。在本实施例中,数据收集设备10定期地向控制器20发送数据发送请求。当发送模块206接收到数据发送请求时,发送模块206将数据发送到数据收集设备10。发送模块206响应于数据发送请求的接收而发送输出数据(在已经接收到请求的情况下)。当完成用于发送输出数据的准备工作时,控制器20可以将预定的完成通知发送到数据收集设备10。当数据收集设备10接收到完成通知时,数据收集设备10可以将数据发送请求发送到控制器
20。
[0093]
例如,发送模块206将针对每个控制周期获取的输出数据发送到数据收集设备10。发送模块206可以在每次控制周期来临时将输出数据发送到数据收集设备10,或者可以同时针对多个控制周期中的每个控制周期一起发送多条输出数据。
[0094]
此外,例如,发送模块206可以将同步收集的数据的尚未被执行预定处理的数据片段及输出数据发送到数据收集设备10。尚未被执行预定处理的数据片段是除已经被执行预定处理的片段以外的片段的全部或部分。假定在收集设置中定义了要发送的片段。发送模块206参考收集设置来在同步收集的数据的尚未被执行预定处理的数据片段中识别要发送的数据片段。发送模块206发送所识别的数据片段和输出数据。在本实施例中,相同的时间信息被分配给那些数据,因此发送模块206将分别具有分配给其的相同的时间信息的数据片段和输出数据发送到数据收集设备10。例如,时间信息可以是记录在控制受控设备30的cpu 21中的时间信息。
[0095]
在本实施例中,输出数据被写入到第二数据存储装置201的缓冲区域中,因此发送模块206将写入缓冲区域的输出数据发送到数据收集设备10。发送模块206可以将多条输出数据发送到数据收集设备10。
[0096]
【3

3.由受控设备实现的功能】
[0097]
如图3所示,在受控设备30中,实现了数据存储装置300和处理执行模块301。
[0098]
【数据存储装置】
[0099]
数据存储装置300主要由存储装置32实现。数据存储装置300被配置为存储受控设备30执行处理所需要的数据。例如,数据存储装置300存储设备程序和变量的当前值。数据存储装置300中存储的变量的当前值被定期地与第三数据存储装置202中存储的变量的当前值匹配。每个变量的值都被存储在预定的寄存器中。
[0100]
【处理执行模块】
[0101]
处理执行模块301主要由cpu 31实现。处理执行模块301被配置为基于存储在数据存储装置300中的设备程序和从控制器20接收的指令来执行预定处理。例如,当控制器20要启动某个设备程序时,控制器20向受控设备30发送指令以将与该设备程序相关联的变量设置为预定值。当受控设备30接收到指令时,受控设备30将变量改变为预定值。当处理执行模块301检测到变量已改变为预定值时,处理执行模块301执行与该变量相关联的设备程序。
[0102]
当由设备程序指示的处理结束时,处理执行模块301将与设备程序相关联的变量改变为预定值,并将该事实发送给控制器20。然后,当执行另一设备程序时,控制器20向受控设备30发送指令以将与另一设备程序相关联的变量设置为预定值,并且处理执行模块301执行另一设备程序。当在受控设备30中定义了多个设备程序的执行顺序时,不需要将设备程序的结束发送给控制器20,并且处理执行模块301可以一个接一个地执行多个设备程序。
[0103]
【4.要在生产系统中执行的处理】
[0104]
图5是示出要在生产系统1中执行的处理的示例的流程图。图5中示出的处理是要由图3所示的功能块执行的处理的示例。在图5中,给出了对将由iot单元22执行以发送输出数据的处理的描述,并且省略了将由控制器20执行以控制受控设备30的处理的描述。
[0105]
如图5所示,当第一控制周期来临时,控制器20的iot单元22收集存储在cpu 21中
的每个变量的当前值作为同步收集的数据,并且将同步收集的数据写入第一存储装置22a的同步区域中(步骤s1)。在步骤s1中,iot单元22执行计时处理以确定第一控制周期是否已经来临。当iot单元22确定第一控制周期已经来临时,iot单元22将对于同步收集的数据的读取请求发送到cpu 21。当cpu 21接收到读取请求时,cpu 21发送存储在cpu 21自身中的每个变量的当前值。
[0106]
iot单元22确定下一控制周期是否已经来临(步骤s2)。在步骤s2中,以与步骤s1中相同的方式,通过计时处理来确定下一控制周期是否已经来临。当确定下一控制周期未来临时(步骤s2中为“否”),再次执行步骤s2的处理。同时,当确定下一控制周期已经来临时(步骤s2中为“是”),iot单元22对写入同步区域中的同步收集的数据执行清洗以获取输出数据(步骤s3)。在步骤s3中,iot单元22基于收集设置将同步收集的数据的一部分输入到应用程序。应用程序对输入数据片段执行清洗以输出输出数据。
[0107]
iot单元22向同步收集的数据的未被清洗的数据片段和在步骤s3中获取的输出数据中的每一者分配相同的时间信息(步骤s4)。在步骤s4中,iot单元22向cpu 21查询时间信息。当cpu 21接收到查询时,cpu 21获取存储在cpu 21自身中的时间信息,以将时间信息发送到iot单元22。可以在收集同步收集的数据时获取时间信息。
[0108]
iot单元22将分别具有在步骤s4中向其分配的时间信息的数据片段和输出数据中的每一者写入第二存储装置22b的缓冲区域(步骤s5)。当iot单元22从数据收集设备10接收到数据发送请求时(步骤s6),iot单元22将缓冲区域中的数据片段和输出数据发送到数据收集设备10(步骤s7)。数据收集设备10周期性地将数据发送请求发送到控制器20。在步骤s7中,iot单元22响应于数据发送请求的接收而发送缓冲区域中的数据片段和输出数据。
[0109]
步骤s8的后续处理与步骤s1的后续处理相同。可以在步骤s3到步骤s7的处理之前执行步骤s8的处理,或者可以并行执行那些处理步骤。通过步骤s8的处理来收集最新的同步收集的数据。在下一个控制周期中清洗最新的同步收集的数据。
[0110]
iot单元22确定是否满足预定的终止条件(步骤s9)。终止条件是用于终止该处理的自由设置的条件,例如,预定日期和时间来临的条件,满足用于结束在收集设置中定义的数据收集的条件,或控制器20断电。当确定不满足终止条件时(步骤s9为“否”),处理返回到步骤s2。当确定满足终止条件时(步骤s9中为“是”),该处理结束。
[0111]
利用上述生产系统1,通过对同步收集的数据的全部或部分执行预定处理而获取的输出数据被发送到数据收集设备10,从而消除了使数据收集设备10执行预定处理的需要,因此能够降低数据收集设备10上的处理负荷。例如,当执行过滤作为预定处理时,能够缩减要发送到数据收集设备10的数据量,因此能够降低通信负荷,或能够降低数据收集设备10的存储器消耗量。
[0112]
此外,生产系统1针对每个控制周期收集同步收集的数据以获取输出数据,并将针对每个控制周期获取的输出数据发送到数据收集设备10,从而能够显著减少将由数据收集设备10执行的处理的次数,有效降低数据收集设备10上的处理负荷。例如,当通过过滤缩减数据量时,能够有效降低通信负荷,并且能够有效降低数据收集设备10的存储器消耗量。
[0113]
此外,生产系统1在控制周期结束前完成预定处理以获取输出数据,从而能够防止针对下一控制周期的同步收集的数据被收集(尽管即使在该控制周期结束之后仍不能获取输出数据),并可靠地获取输出数据。
[0114]
此外,生产系统1将同步收集的数据的尚未被执行预定处理的片段和与已经被执行预定处理的片段相对应的输出数据发送到数据收集设备10,从而也能够将不需要被执行预定处理的数据片段发送到数据收集设备10。
[0115]
此外,生产系统1向数据片段和输出数据中的每一者分配相同的时间信息,从而即使当获取输出数据花费了一定量的时间时也能够将数据片段的时间与输出数据的时间彼此匹配。
[0116]
此外,生产系统1将记录在控制受控设备30的cpu 21中的时间信息分配给数据片段和输出数据中的每一者,从而能够使数据收集设备10例如,参考由cpu 21管理的时间来分析数据。
[0117]
此外,生产系统1对同步收集的数据的、由用户指定的片段执行预定处理以获取输出数据,从而能够对用户期望的片段执行预定处理并提高用户的便利性。另外,不对同步收集的数据的不需要的片段执行预定处理,因此能够降低生产系统1上的处理负荷。
[0118]
此外,生产系统1单独配设有用于控制受控设备30的cpu 21和用于将数据发送到数据收集设备10的iot单元22,从而能够分发处理负荷并防止在受控设备30的控制和数据发送中出现问题。因此,可以提高控制的准确性,并且可以快速而准确地发送数据。
[0119]
此外,生产系统1对包括在同步收集的数据中的多个数据片段执行互不相同种类的预定处理以获取多条输出数据,并将该多条输出数据发送到数据收集设备10,从而能够有效地降低数据收集设备10上的处理负荷。另外,从各种观点执行处理以获取输出数据,从而能够获取期望的输出数据。
[0120]
此外,生产系统1不需要使数据收集设备10执行过滤处理、缩放处理、或偏移处理,因此能够降低数据收集设备10上的处理负荷。
[0121]
【5.修改示例】
[0122]
注意,本公开不限于上述实施例。可以在不脱离本公开的要旨的情况下进行适当的修改。
[0123]
例如,iot单元22不需要针对每个控制周期收集同步收集的数据。当cpu 21或第三存储装置23可以在多个控制周期中存储变量时,iot单元22可以收集变量在多个控制周期中按时间顺序的变化作为同步收集的数据。在另一示例中,iot单元22可以针对多个控制周期中的每个控制周期一起清洗同步收集的数据,而无需针对每个控制周期执行清洗。另外,例如,iot单元22可以一次针对多个控制周期中的每个控制周期一起发送同步收集的数据,而无需针对每个控制周期发送同步收集的数据。
[0124]
此外,例如,只要可以在同步区域中累积针对多个控制周期中的每个控制周期的同步收集的数据,就不需要iot单元22在控制周期结束之前完成清洗。另外,例如,iot单元22可以发送没有专门为其分配时间信息的输出数据。在另一示例中,iot单元22可以清洗除由用户指定的片段以外的片段。此外,例如,iot单元22可以清洗同步收集的数据的单个片段而不是清洗多个片段。
[0125]
此外,例如,在本实施例中,已经描述了如下情况:在该情况中,同步收集的数据是与受控设备30的操作有关的数据,但同步收集的数据也可以是与控制器20的操作有关的数据。在这种情况下,控制器20基于来自与控制器20自身连接的传感器的检测信号和控制器20的内部信息,生成与控制器20的操作有关的同步收集的数据。在本实施例描述了将同步
收集的数据发送到数据收集设备10的处理流程。
[0126]
此外,例如,上述每个功能可以由生产系统1中包括的任何设备来实现。例如,描述为由数据收集设备10实现的功能可以由控制器20或受控设备30实现。此外,例如,描述为由控制器20实现的功能可以由数据收集设备10或受控设备30实现。此外,例如,每个功能可以由一台计算机实现,而不是由多台计算机共享。
[0127]
此外,上述实施例作为具体示例给出,并且不将本文公开的发明限于具体示例的典型构造和数据存储装置示例。本领域技术人员可以就例如物理组件的形状和数量、数据结构、处理的执行顺序来对所公开的实施例做出各种修改。应当理解,本文公开的本发明的技术范围涵盖这样的修改。
再多了解一些

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

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

相关文献

  • 日榜
  • 周榜
  • 月榜