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

控制系统、设定装置以及设定程序的制作方法

2021-10-23 04:06:00 来源:中国专利 TAG:装置 通信 控制 多个 信息


1.本发明涉及对控制装置与信息处理装置之间的通信环境设定进行辅助的功能,该信息处理装置执行利用控制装置所发送的通信数据的1个或多个应用程序。


背景技术:

2.在各种制造现场,导入有plc(programmable logic controller:可编程逻辑控制器)等控制装置。这样的控制装置是一种计算机,执行根据制造装置或制造设备等而设计的控制程序。这样的控制装置以能够通信的方式与hmi(human machine interface:人机界面)等信息处理装置连接。
3.信息处理装置例如利用来自控制装置的信息,对控制装置的控制对象的运行状况等进行图形显示,或者利用来自控制装置的信息,执行与所显示的应用程序不同的应用程序。
4.例如,日本特开2017

146803号公报(专利文献1)公开了程序显示器,作为与plc连接的信息处理装置的一例。该程序显示器在将显示画面所显示的一个画面作为一页的情况下,以页面为单位进行该页面所显示的功能部件的布局、以及功能的分配等。
5.现有技术文献
6.专利文献
7.专利文献1:日本特开2017

146803号公报


技术实现要素:

8.发明所要解决的课题
9.在专利文献1中,没有记载具体如何取得为了实现分配给各页的功能所需的信息。在用于实现该功能的应用程序中,利用作为plc的控制装置的信息(以下,称为“过程数据”。)。用户需要对控制装置进行发送设定以使其发送应用程序所利用的过程数据。
10.本发明的一个目的在于,容易地进行发送设定,使得从控制装置向信息处理装置发送应用程序的执行所需的过程数据。
11.用于解决课题的手段
12.根据本公开的一个例子,提供包含控制装置、1个或多个信息处理装置和运算单元的控制系统。控制装置执行用于对控制对象进行控制的控制程序,并且对在该控制程序中参照或更新的多个过程数据进行管理。控制装置具有用于周期性地发送预先确定的1个或多个数据集的通信处理部。通信处理部发送的各数据集包含多个过程数据中的预先确定的1个或多个过程数据的值。1个或多个信息处理装置中的每一个利用从控制装置发送的1个或多个数据集所包含的过程数据的值,执行1个或多个应用程序。运算单元决定发送设定,所述发送设定是对由控制装置的通信处理部进行的数据集的发送的设定。运算单元包含取得单元和决定单元。取得单元针对1个或多个信息处理装置中的每一个,取得在该信息处理装置中执行的1个或多个应用程序各自所需的过程数据。决定单元基于取得单元所取得的
每个应用程序所需的过程数据,按照与通信负荷相关的预先确定的评价基准,决定通信处理部发送的数据集的数量、和应包含在各数据集中的过程数据。
13.根据本公开,能够容易地进行发送设定,使得从控制装置向信息处理装置发送应用程序的执行所需的过程数据。进而,按照与通信负荷相关的评价基准,决定数据集的数量、和应包含在各数据集中的过程数据,因此根据应用程序来设计考虑了通信负荷的适当的发送设定。
14.在上述公开中,评价基准也可以包含通信负荷指标,所述通信负荷指标对由于通信处理部生成1个或多个数据集、并且周期性地发送该1个或多个数据集中的每一个而施加于控制装置的负荷进行评价。
15.根据该公开,由于评价基准中包含对施加于控制装置的负荷进行评价的通信负荷指标,因此能够设计使得施加于控制装置的负荷变小那样的发送设定。
16.在上述公开中,评价基准也可以包含通信性能指标,所述通信性能指标对信息处理装置在规定期间内能够接收的所述过程数据的种类进行评价。
17.根据本公开,能够设计可减小在过程数据的值被更新的定时与在应用程序中被利用的定时之间产生的时滞的发送设定。
18.在上述公开中,评价基准也可以包含通信效率指标,所述通信效率指标对控制装置与1个或多个信息处理装置之间的通信效率进行评价。
19.根据本公开,能够设计通信效率良好的发送设定。
20.在上述公开中,决定单元也可以具有价值决定单元,所述价值决定单元针对取得单元取得的过程数据中的每一个,决定该过程数据的价值。评价基准也可以包含对各数据集所包含的过程数据的价值进行评价的指标。
21.根据本公开,能够设计可使得优发送价值高的过程数据的发送设定。
22.在上述公开中,价值决定单元也可以根据利用过程数据的信息处理装置的重要度,决定过程数据的价值。控制系统也可以还包含受理信息处理装置的重要度的单元。
23.根据本公开,例如能够设计发送设定,使得优先发送由任意的信息处理装置执行的应用程序所利用的过程数据。
24.在上述公开中,控制系统也可以还包含管理单元,所述管理单元根据在1个或多个信息处理装置中执行的应用程序,决定通信处理部能够发送的1个或多个数据集中的使发送有效化的数据集。评价基准也可以包含管理负荷指标,所述管理负荷指标对由于管理1个或多个数据集中的每一个的有效化的决定而施加于管理单元的负荷进行评价。
25.根据本公开,能够根据所执行的应用程序来限制所发送的数据集,因此能够防止发送包含未执行的应用程序所利用的过程数据的数据集。另外,在这样的控制系统中,虽然对管理单元施加处理负担,但通过将该处理负担包含在评价基准中,能够防止不被利用的数据集的发送,并且能够减小为了防止这样的发送而施加的处理负担。其结果,能够设计可降低控制系统整体的处理负荷的发送设定。
26.在上述公开中,评价基准也可以包含多个评价指标。控制系统也可以还包含受理多个评价指标中的每一个的重要度的单元。
27.根据本公开,通过改变各个评价指标的重要度,能够设计任意的发送设定。
28.在上述公开中,控制系统也可以还包含监视通信负荷的监视装置。监视装置也可
以具有运算单元。并且,监视装置也可以具有更新单元,所述更新单元按照监视通信负荷的结果来更新评价基准。决定单元也可以按照由更新单元更新后的评价基准,决定通信处理部发送的数据集的数量、和应包含在各数据集中的过程数据。
29.根据该公开,能够将控制装置与信息处理装置之间的实际数据交换反映到发送设定中。
30.根据本公开的另一例,提供一种设定装置,该设定装置对控制装置与1个或多个信息处理装置之间的通信环境的设定进行辅助。控制装置执行用于对控制对象进行控制的控制程序,并且对在该控制程序中参照或更新的多个过程数据进行管理。控制装置具有用于周期性地发送预先确定的1个或多个数据集的通信处理部。通信处理部发送的各数据集包含多个过程数据中的预先确定的1个或多个过程数据的值。设定装置包含取得单元和决定单元。1个或多个信息处理装置中的每一个利用从控制装置发送的1个或多个数据集所包含的过程数据的值,执行1个或多个应用程序。取得单元针对1个或多个信息处理装置中的每一个,取得在该信息处理装置中执行的1个或多个应用程序各自所需的过程数据。决定单元基于取得单元所取得的每个应用程序所需的过程数据,按照与通信负荷相关的预先确定的评价基准,决定所述通信处理部发送的数据集的数量、和应包含在各数据集中的过程数据。
31.根据本公开,容易地进行发送设定,使得从控制装置向信息处理装置发送应用程序的执行所需的过程数据。进而,按照与通信负荷相关的评价基准,决定数据集的数量、和应包含在各数据集中的过程数据,因此根据应用程序来设计考虑了通信负荷的适当的发送设定。
32.根据本公开的另一例,提供一种设定程序,该设定程序对控制装置与1个或多个信息处理装置之间的通信环境的设定进行辅助。控制装置执行用于对控制对象进行控制的控制程序,并且对在该控制程序中参照或更新的多个过程数据进行管理。控制装置具有用于周期性地发送预先确定的1个或多个数据集的通信处理部。通信处理部发送的各数据集包含多个过程数据中的预先确定的1个或多个过程数据的值。设定装置包含取得单元和决定单元。1个或多个信息处理装置中的每一个利用从控制装置发送的1个或多个数据集所包含的过程数据的值,执行1个或多个应用程序。设定程序使计算机执行以下步骤:针对1个或多个信息处理装置中的每一个,取得在该信息处理装置中执行的1个或多个应用程序各自所需的过程数据;以及基于在进行所述取得的步骤中取得的每个应用程序所需的过程数据,按照与通信负荷相关的预先确定的评价基准,决定所述通信处理部发送的数据集的数量、和应包含在各数据集中的过程数据。
33.根据本公开,能够容易地进行发送设定,使得从控制装置向信息处理装置发送应用程序的执行所需的过程数据。进而,按照与通信负荷相关的评价基准,决定数据集的数量、和应包含在各数据集中的过程数据,因此根据应用程序来设计考虑了通信负荷的适当的发送设定。
34.发明的效果
35.根据本公开的一例,能够容易地进行发送设定,使得从控制装置向信息处理装置发送应用程序的执行所需的过程数据。
附图说明
36.图1是表示控制系统1的应用场景的示意图。
37.图2是表示运算单元300的功能结构的概要的图。
38.图3是用于说明pubsub通信的概要的图。
39.图4是用于说明作为订阅者发挥功能的hmi 200

1的概要的图。
40.图5是用于说明作为发布者发挥功能的控制器100的概要的图。
41.图6是表示决定单元340执行的运算的一例的图。
42.图7是表示受理hmi信息350的用户界面700的一例的图。
43.图8是表示受理优先级信息358的用户界面900的一例的图。
44.图9是用于说明运算单元300的运算结果的输出例的图。
45.图10是用于说明运算单元300的安装例的图。
46.图11是表示设定装置20的硬件结构的一例的图。
47.图12是表示包含监视装置40的控制系统1a的概要的图。
48.图13是监视装置40的硬件结构。
49.图14是表示中继装置60的功能结构的一例的图。
50.图15是表示中继装置60的硬件结构的一例的示意图。
51.图16是表示hmi 200的硬件结构的一例的示意图。
52.图17是表示控制器100的硬件结构的一例的示意图。
53.图18是表示变形例中的控制系统1c的概略的图。
具体实施方式
54.以下,参照附图说明本发明的各实施方式。在以下的说明中,对相同的部件和结构要素标注相同标号。它们的名称和功能也相同。因此,不重复对它们的详细说明。另外,以下说明的各实施方式以及各变形例也可以适当地选择性地组合。
55.<a.应用例>
56.图1是表示控制系统1的应用场景的示意图。控制系统1具有用于提供对控制器100与hmi 200之间的通信环境的设定进行辅助的功能的运算单元300。
57.控制系统1包含控制器100和hmi 200。控制器100经由信息系统网络2以能够通信的方式与hmi 200连接。信息系统网络2例如是遵循能够不依赖于供应商或os(operating system:操作系统)的种类等而实现数据交换的通信标准的网络。作为这样的通信标准,已知有例如opc ua(object linking and embedding for process control unified architecture:用于过程控制统一架构的对象链接和嵌入)等。
58.此外,信息系统网络2所采用的通信标准并不限定于opc ua。例如,信息系统网络2可以是遵循特定的供应商或os特有的通信标准的网络,另外,也可以是遵循作为在ethernet(注册商标)上安装了控制用协议的工业用开放式网络的ethernet/ip(注册商标)的网络。
59.在图1所示的例子中,hmi 200与控制器100之间的通信通过opc ua的发布/订阅(publish

subscribe)型的通信方式来进行。另外,以下,也将应用了opc ua的发布/订阅(publish

subscribe)型的通信方式的通信称为pubsub通信。
60.控制系统1也可以是包含多个控制器100的结构。另外,控制系统1也可以是包含多个hmi 200的结构。另外,控制系统1既可以是1个hmi 200以能够通信的方式与1个控制器100连接的结构,也可以是1个hmi 200以能够通信的方式与多个控制器100连接的结构,也可以是多个hmi 200以能够通信的方式与1个控制器100连接的结构,另外,还可以是多个hmi 200以能够通信的方式与多个控制器100连接的结构。在图1所示的例子中,控制系统1是相对于1个控制器100以能够通信的方式连接有2个hmi 200(hmi 200

1、200

2)的结构。以下,在相互区分多个hmi 200的情况下,称为hmi 200

1、200

2。
61.控制器100是本技术发明的控制装置的一例,执行用于对控制对象进行控制的控制程序120,在控制系统1中执行中心的处理。在图1所示的例子中,控制器100经由控制系统网络4与作为控制对象的现场设备500可通信地连接。控制系统网络4优选采用保证数据的到达时间的、进行恒定周期通信的网络。作为进行这样的恒定周期通信的网络,已知ethercat(注册商标)、ethernet/ip(注册商标)、devicenet(注册商标)、componet(注册商标)等。
62.现场设备500包含用于使生产工序自动化的各种工业用设备,包含对制造装置、生产线等(以下,也统称为“现场”。)提供某种物理性的作用的装置、和与现场之间交换信息的输入输出装置。例如,现场设备500包含控制伺服电机的伺服驱动器、控制机器人的机器人控制器、作为收集数据的装置的传感器、移动输送机的致动器或者远程i/o(input/output:输入输出)装置等。
63.控制器100通过执行控制程序120来控制现场设备500。另外,控制器100对伴随着控制程序120的执行而参照或更新的多个过程数据52进行管理。
64.在本说明书中,“过程数据”是包含控制单元(典型地作为控制器100而具体化)或者应用程序执行单元(典型地作为hmi 200而具体化)能够参照的任意的数据的用词。更具体而言,“过程数据”可包含从现场设备取得的输入数据、通过控制运算计算并提供给现场设备的输出数据(指令值)、用于执行控制运算的临时计算的数据、表示用户的操作内容的数据等。
65.过程数据52包含从现场设备500输入到控制器100的数据、从控制器100输出到现场设备500的数据、以及用于控制程序120的执行或控制器100的状态管理的数据。过程数据52伴随控制程序120的执行而周期性地被更新。
66.控制器100具有用于周期性地发送1个或多个数据集50的通信处理部80。各数据集50包含控制器100管理的多个过程数据52中的预先确定的1个或多个过程数据52的值。通信处理部80按照由运算单元300决定的发送设定400,生成数据集50并发送。
67.hmi 200是本技术发明的信息处理装置的一例,利用控制器100发送的数据集50所包含的过程数据52的值来执行应用程序220。另外,以下有时将过程数据52的值简称为“过程数据52”。hmi 200通过执行应用程序220,向操作员提示通过控制程序120的执行而得到的各种信息。
68.hmi 200可以从控制器100直接接收控制器100发送的数据集50,也可以经由中继装置等其他设备接收。
69.另外,利用控制器100所管理的过程数据52来执行应用程序220的信息处理装置不限于hmi 200。例如,信息处理装置也可以是收集从作为控制对象的现场设备500测量出的
与可追溯性相关的信息等的数据库、进行过程控制和集中监视的scada(supervisory control and data acquisition:监督控制和数据采集)装置等。
70.另外,信息处理装置不限于经由信息系统网络2与控制器100连接的装置,也可以是对经由控制系统网络4连接的机器人进行控制的机器人控制器、致动器、其他控制器等。即,应用程序220并不限定于以信息的提示为目的的应用程序,只要是以实现利用控制器100所管理的过程数据52的功能为目的的应用程序即可。此外,以下,假设应用程序是以信息的提示为目的、且作为向显示部提供显示图像的功能的程序来进行说明。
71.在应用程序220的执行阶段中,hmi 200通过利用从控制器100分发的数据集50中包含的过程数据52的值来执行应用程序220。应用程序220可以在以可安装的形式保存在存储卡或数据库中的状态下流通,此外,也可以由用户创建。
72.在图1所示的例子中,hmi 200

1执行利用过程数据52a、52b的应用程序220

1a和利用过程数据52b、52c的应用程序220

1b。hmi 200

2执行利用过程数据52c、52d的应用程序220

2a和利用过程数据52a、52d的应用程序220

2b。
73.运算单元300决定基于控制器100的通信处理部80的数据集的发送设定400。运算单元300典型的是通过提供应用程序220的开发环境的支持装置的处理器执行支持程序来实现的功能。另外,运算单元300也可以通过专用的设定设备来实现。另外,也可以在hmi 200与控制器100之间设置中继装置,通过中继装置实现运算单元300的功能。
74.图2是表示运算单元300的功能结构的概要的图。参照图2,运算单元300具有取得单元320和决定单元340。取得单元320针对hmi 200

1和hmi 200

2的每一个,取得由hmi 200执行的1个或多个应用程序220的每一个所需的过程数据52。
75.取得单元320针对每个应用程序220

1a、200

1b、200

2a、200

2b,取得每个应用程序220所需的过程数据52。
76.具体而言,取得单元320确定应该将控制器100管理的多个过程数据52中的哪些过程数据52输出到信息系统网络2上。在图1所示的例子中,取得单元320确定在应用程序220

1a、200

1b、200

2a、200

2b中利用的过程数据52是过程数据52a、52b、52c、52d。
77.决定单元340决定通信处理部80发送的数据集50的数量、以及应包含在各数据集50中的过程数据52,以从控制器100向各个hmi 200发送在各hmi 200的应用程序220中利用的各个过程数据52。决定单元340决定的“通信处理部80发送的数据集50的数量、以及应包含在各数据集50中的过程数据52”的候选可以是多个,最终的决定也可以由用户进行。
78.即,决定单元340决定以何种组合来发送在各hmi 200的各应用程序220中利用的过程数据52。具体而言,决定单元340决定以何种组合来发送在应用程序220

1a、200

1b、200

2a、200

2b中利用的过程数据52a、52b、52c、52d。
79.例如,在图2所示的例子中,决定单元340将通信处理部80发送的数据集50的数量决定为2个,将应包含在2个数据集50中的过程数据52决定为过程数据52a和过程数据52d、以及过程数据52b和过程数据52c。即,作为发送设定400,决定单元340针对过程数据52,生成如下规定的发送设定400:生成并发送保存了过程数据52a的值和过程数据52d的值的数据集50

1、以及保存了过程数据52b的值和过程数据52c的值的数据集50

2。
80.决定单元340基于与通信负荷相关的评价基准360来决定要发送的过程数据52的组合。更具体而言,决定单元340通过求解“使按照评价基准360对要发送的过程数据52的组
合进行评价而得到的结果良好”这样的优化问题,来决定要发送的过程数据52的组合。
81.用于求解优化问题的算法并不限定于此。例如,能够利用动态规划法等算法。
82.评价基准360例如包含对控制器100的通信处理部80施加的负荷、按照向各hmi 200发送过程数据52的值的周期或一次发送的数据量而规定的通信性能、或者对信息系统网络2施加的负荷、系统整体中的各过程数据52的重要性等观点。另外,评价基准360也可以构成为能够由用户指定。
[0083]“系统整体中的各过程数据52的重要性”例如是指该过程数据52在应用程序220中被利用的频度(使用频度)、执行使用了该过程数据52的应用程序220的hmi 200在系统整体中的重要度、过程数据52自身的价值。通过将“系统整体中的各过程数据52的重要性”反映到评价基准360中,例如能够以优先发送重要的过程数据52的方式设计发送设定400。
[0084]
这样,控制系统1基于与通信负荷相关的评价基准360来决定要发送的过程数据52的组合(数据集),因此能够根据应用程序220来设计考虑了通信负荷的适当的发送设定400。
[0085]
在本实施方式中,为了简化说明,假设在整个控制系统1中利用的过程数据的种类为4种。但是,在实际的生产现场,更多种类的过程数据在应用程序中被利用,用户难以手动进行考虑了控制系统1整体的通信负荷的发送设定400。如本实施方式所示,运算单元300基于与通信负荷相关的评价基准360来决定发送设定400,因此能够容易地利用考虑了控制系统1整体的通信负荷的发送设定400来进行控制器100与hmi 200之间的通信。
[0086]
<b.pubsub通信>
[0087]
图3是用于说明pubsub通信的概要的图。在以下的说明中,将分发数据的一侧称为“发布者”,将订购发布者分发的数据的一侧称为“订阅者”。在本实施方式的控制系统1中,控制器100相当于分发数据的发布者。另一方面,hmi 200相当于订购控制器100分发的数据的订阅者。
[0088]
发布者生成并分发保存有1个或多个数据的数据集。发布者不确定发送目的地,而向包含发布者和订阅者的网络发送数据集。该发送方式可以是多播,也可以是单播。根据状况,该发送方式还可以是广播。
[0089]
订阅者管理将被分发到能够由订阅者访问的网络上的数据集中的哪些数据集作为订购对象。例如,在图2所示的例子中,订阅者将数据集1~数据集3中的数据集1以及数据集3作为订购对象。因此,订阅者仅接收发布者发布的数据集1~3中的数据集1和数据集3。订阅者在变更订购对象时,变更接收对象。
[0090]
订阅者也可以接收不是订购对象的数据集,在该情况下,订阅者可以进行舍弃不是订购对象的数据集的处理。
[0091]
订阅者管理订购对象的方法不限于图3所示的方法。例如,也可以按照每个数据管理是否进行订购。作为其他方法,也可以按照与数据集不同的数据的每个集合管理是否进行订购。
[0092]
参照图4和图5,对hmi 200与控制器100之间的pubsub通信的概要进行说明。图4是用于说明作为订阅者发挥功能的hmi 200

1的概要的图。图5是用于说明作为发布者发挥功能的控制器100的概要的图。在图4中,以hmi 200

1为例进行说明,但在hmi 200

2中也具有与hmi 200

1同样的结构。
[0093]
参照图4,hmi 200

1具有显示部242、多个应用程序220(220

1a、220

1b
……
)、作为opc ua客户端的通信处理部90。各应用程序220是用于在显示部242上显示特定页面的程序。在图4中,示出了正执行用于在显示部242上显示页面1的应用程序1的例子。
[0094]
各页面包含多个对象54。例如,页面1包含对象54a~对象54d。对象54的显示根据程序所包含的变量的值而被更新。例如,对象54a的显示根据变量1的值而被更新。同样地,对象54b的显示根据变量2的值而被更新,对象54c的显示根据变量1的值而被更新,对象54d的显示根据变量2的值而被更新。
[0095]
应用程序220通过参照映射信息222来更新变量的值。映射信息222是将变量与过程数据进行了关联的信息。例如,变量1的值根据过程数据52a的值而被更新。各过程数据的值被更新的周期可以根据应用程序220的创建而由用户设定,另外,也可以根据管理过程数据的控制器100的更新周期来决定。
[0096]
通信处理部90是opc ua客户端,使hmi 200作为订阅者发挥功能。通信处理部90具有订购管理单元92和通信驱动器96。
[0097]
订购管理单元92根据正在执行的应用程序220管理订购对象。具体而言,订购管理单元92参照基于应用程序220和映射信息222生成的订购管理信息94来确定订购对象,并向通信驱动器96通知订购对象。通信驱动器96接收包含作为订购对象的过程数据52的数据集50,对在应用程序220中利用的过程数据52的值进行更新。
[0098]
订购管理信息94是将应用程序220和在该应用程序220中利用的过程数据52对应起来的信息,基于应用程序220和映射信息222生成。
[0099]
订购管理单元92例如在正在执行应用程序1的情况下,参照订购管理信息94,确定在应用程序1的执行中利用过程数据52a、52b。订购管理单元92向通信驱动器96通知过程数据52a、52b的订购开始。订购管理单元92在应用程序的执行对象切换的情况下,将停止订购的过程数据52的相关信息也与开始订购的过程数据52的相关信息一起向通信驱动器96通知。
[0100]
通信驱动器96从控制器100分发的多个数据集50中,读取包含作为订购对象的过程数据52的数据集50。更具体而言,通信驱动器96参照用于确定保存在各数据集50中的过程数据52的链接信息98,从控制器100分发的多个数据集50中,确定包含作为订购对象的过程数据52的数据集50。
[0101]
链接信息98在由运算单元300生成发送设定400的定时生成。参照链接信息98的主体不限于通信驱动器96。例如,参照链接信息98的主体也可以是订阅管理单元92。在该情况下,确定为了得到应用程序220的执行所需的过程数据52的值而需要的数据集50,并将确定的数据集50作为订购对象向通信驱动器进行通知。
[0102]
参照图5,控制器100具有控制程序120、控制系统网络接口(if)191、作为opc ua服务器的通信处理部80。
[0103]
控制器100通过执行控制程序120来控制现场设备500。例如,控制程序120利用经由控制系统网络if 191输入的现场设备500的状态值来更新过程数据52的值,并参照更新后的过程数据52的值来执行控制运算。控制程序120根据执行的控制运算的结果更新过程数据52的值,并经由控制系统网络if 191向现场设备500输出更新后的过程数据52的值作为控制值。
[0104]
通信处理部80是opc ua服务器,使控制器100作为发布者发挥功能。通信处理部80具有生成数据集50的数据集生成单元82和发送数据集50的通信驱动器84。
[0105]
数据集生成单元82参照发送设定400,生成保存有1个或多个过程数据52的数据集50。数据集50既是指过程数据52的集合,也是指成为了能够输出到信息系统网络2上的形式的数据集。
[0106]
发送设定400是对保存在一个数据集50中的过程数据52进行确定的信息。另外,在一个数据集50中,既可以规定为只保存1个过程数据52,另外,也可以规定为保存多个过程数据52。即,“数据集”这一用词是指保存在数据集50中的1个或多个过程数据52的组合。
[0107]
即,控制器100按照发送设定400生成数据集。由此,与发送设定400将特定属性的过程数据规定为一个数据集的情况相比,能够减轻控制器100的处理负担。
[0108]
发送设定400也可以包含规定生成数据集50的条件的信息。例如,也可以规定生成数据集50的条件,使得按照伴随着控制程序120的执行而对过程数据52的值进行更新的每个周期,生成数据集50。此外,在该情况下,优选考虑生成的条件来规定数据集50中包含的过程数据52的组合。
[0109]
通信驱动器84将数据集生成单元82生成的数据集50分发到信息系统网络2上。
[0110]
参照图5,对hmi 200

1的订购对象为过程数据52b及52c、hmii 200

2的订购对象为过程数据52a及52d时的hmi 200与控制器100之间的数据交换进行说明。另外,在图5中,关于过程数据52a、52b、52c、52d,省略一部分、标号等而进行记载。
[0111]
控制器100周期性地生成数据集1、2、3
……
和多个数据集50的每一个并发送到信息系统网络2上。假设在数据集1中保存有过程数据52a以及过程数据52d,在数据集2中保存有过程数据52b以及过程数据52c,在数据集3中保存有过程数据52x以及过程数据52y。
[0112]
hmi 200

1取得从控制器100分发的多个数据集50中的、保存有作为订购对象的过程数据52b及过程数据52c各自的值的数据集2。由于数据集2周期性地被发送,因此hmi 200

1周期性地取得数据集2。由此,hmi 200

1能够周期性地更新与过程数据52b以及过程数据52c对应的变量,还对应于该变量的更新来更新对象54的显示。
[0113]
hmi 200

2取得从控制器100分发的多个数据集50中的、保存有作为订购对象的过程数据52a及过程数据52d的数据集1。由于数据集1周期性地被发送,因此hmi 200

2周期性地取得数据集1。由此,hmi 200

2能够周期性地更新与过程数据52a以及过程数据52d对应的变量,还对应于该变量的更新来更新对象54的显示。
[0114]
当作为执行对象的应用程序改变时,hmi 200的通信处理部90变更订购对象,变更要读取的对象数据集50。另外,以下,也将变更订购对象称为“变更订购请求”。
[0115]
这样,即使作为执行对象的应用程序发生了变化,pubsub通信也不需要变更发布者侧的处理。因此,与命令和响应方式的通信相比,pubsub通信能够减少在发送数据侧与接收侧之间进行的交换的次数。
[0116]
另一方面,hmi 200的通信处理部90根据作为执行对象的应用程序220的变更,也变更订购请求。在想要在控制器100与hmi 200之间实现pubsub通信的情况下,控制器100(发布者)侧需要以满足对应于应用程序220的变更而变化的各订购请求的方式生成数据集50。即,用户需要设计控制器100的发送设定400,以满足按照作为订阅者的hmi 200执行的全部应用程序220的每一个而特殊化的订购请求。
[0117]
在存在多个利用控制器100所管理的过程数据52的应用程序220的情况下,考虑如下方法:按照每个应用程序220,将利用该应用程序220的过程数据52保存在一个数据集50中并发送。但是,这样的方法未考虑到通过收发数据集50而对包含控制器100和hmi 200的网络整体施加的通信负荷。因此,虽然在控制器100与hmi 200之间交换的数据的量少的情况下没有问题,但在数据的量增加的情况下,有可能无法确保数据集50的发送周期,或者由于信息系统网络2的通信性能的极限而使传输速度极端降低。
[0118]
在本实施方式中,控制系统1基于与通信负荷相关的评价基准360决定要发送的过程数据52的组合(数据集),因此能够设计考虑了包含控制器100和hmi 200的网络、以及应用程序220的适当的发送设定400。
[0119]
<c.决定单元的功能结构>
[0120]
参照图6,说明决定单元340执行的运算方法的一例。图6是表示决定单元340执行的运算的一例的图。在图6所示的例子中,决定单元340求出将用于求出过程数据52的组合的问题作为“背包问题(knapsack problem)”而发送的过程数据52的组合候选。决定单元340在存在多个所求出的候选的情况下,按照未将各候选并入“背包问题”的评价指标进行评价。
[0121]
参照图6,决定单元340具有价值决定单元342、候选计算单元344、评价单元346、判定单元348。
[0122]
价值决定单元342决定过程数据52的价值。例如,价值决定单元342将系统整体中的过程数据52的重要性转换为价值。具体而言,价值决定单元342决定取得单元320取得的每个应用程序220所需的各个过程数据的价值,生成表示各个过程数据52的价值的价值信息370。价值决定单元342例如根据过程数据52被利用的频度和利用过程数据52的hmi 200在系统中的重要性来估算过程数据52的价值。
[0123]
利用过程数据52的hmi 200在系统中的重要性例如根据hmi信息350来计算。hmi信息350例如包含能够确定哪个hmi 200作为主设备而被登记、哪个hmi 200作为辅设备而被登记的信息。hmi信息350也可以包含表示hmi 200的利用频度的运行状况。在本实施方式中,hmi信息350是表示主设备和辅设备的信息。
[0124]
本实施方式的hmi 200

1在控制系统1中是主设备(主要利用的hmi),hmi 200

2在控制系统1中是辅设备(辅助利用的hmi)。该信息被登记为hmi信息350。hmi信息350例如在向hmi 200安装应用程序220时、或者开发应用程序220时等由用户登记。
[0125]
例如,一个过程数据52的价值p由下式(1)算出。
[0126]
[数式1]
[0127][0128]
在此,i用于确定hmi 200的种类,i=1表示hmi 200

1,i=2表示hmi 200

2。α是根据hmi信息350得到的、hmi 200在系统中的重要性。n表示在由hmi 200执行的应用程序220中利用该过程数据52的频度。例如,在hmi 200能够执行5个应用程序220,在该5个应用程序220中的3个应用程序220中利用特定的过程数据52的情况下,利用该过程数据52的频度n成为3/5。此外,也可以在频度n中反映应用程序的利用频度。
[0129]
另外,价值的计算方法是一个例子,例如,也可以使上述式(1)进一步反映过程数据52自身的价值。例如,也可以对在错误的发生判定中利用的过程数据52赋予高的价值,对
登录所利用的过程数据52赋予比在错误的发生判定中利用的过程数据52低的价值。
[0130]
图6中的p
a
表示过程数据52a的价值,p
b
表示过程数据52a的价值,p
c
表示过程数据52c的价值。
[0131]
候选计算单元344将过程数据52的数据大小设为“权重”,将价值决定单元342估算出的过程数据52的价值设为“价值”,将一个分组的数据容量设为“背包的容量”,决定使保存于一个分组的过程数据52的价值之和最大化的过程数据52的组合。
[0132]
分组的数据容量作为容量信息372而得到。容量信息372可以是作为信息系统网络2的性能而预先确定的信息,另外,也可以是用户设定为临时的值的信息。此外,过程数据52的数据大小按照每个过程数据52被预先确定。
[0133]
候选计算单元344将决定的组合作为应包含在一个数据集中的过程数据52保存在候选数据374中。候选计算单元344从分组所保存的过程数据52的候选中,将保存在候选数据374中的过程数据52排除,再次决定使保存于一个分组的过程数据52的价值之和最大化的过程数据52的组合。
[0134]
即,候选计算单元344包含用于评价数据集所包含的过程数据的价值的指标,作为评价基准,来决定过程数据52的组合。其结果,例如能够设计可使得优发送价值高的过程数据52的发送设定400。
[0135]
具体而言,能够根据所决定的各数据集50所包含的过程数据52的价值来决定该数据集50的价值,并设计使得优先发送价值高的数据集50的发送设定400。
[0136]
候选计算单元344反复进行过程数据52的组合决定、向候选数据374保存所决定的组合、以及从保存于分组的过程数据52的候选中排除候选数据374所保存的过程数据52,直到保存于分组的过程数据52的候选不再存在为止。
[0137]
候选计算单元344也可以多次进行直到保存于分组的过程数据52的候选不再存在为止的一系列的处理,取得多个候选数据(第1候选数据374a、第2候选数据374b
……
)。在进行多次一系列的处理的情况下,候选计算单元344也可以每次变更算法,该算法用于决定使保存于一个分组的过程数据52的价值之和最大化的过程数据52的组合。算法并无特别限定,例如可列举动态规划法、贪心法、遗传算法等。
[0138]
另外,即使在以相同的算法执行了一系列的处理的情况下,在得到了多个解时,也能够得到多个候选数据。另外,也可以在得到一个候选数据的时刻,结束候选计算单元344的处理。以下,对得到多个候选数据374的情况进行说明。
[0139]
评价单元346基于预先确定的指标对多个候选数据374分别进行评价。在图6所示的例子中,评价单元346基于通信负荷指标352、通信性能指标354以及通信效率指标356的各个指标来分别评价多个候选数据374。
[0140]
通信负荷指标352是用于评价控制器100发送数据集50时的负荷的指标。例如,通信负荷指标352将候选数据374中包含的数据集的数量、一个数据集所保存的过程数据的数量、一个数据集的数据大小等作为指标。
[0141]
如果候选数据374中包含的数据集的数量少,则能够减少控制器100发送数据集50的次数,能够将发送数据集的间隔隔开,能够减少控制器100中的通信负荷。
[0142]
即,评价单元346在按照通信负荷指标352进行了评价的情况下,候选数据374中包含的数据集的数量、一个数据集所保存的过程数据的数量、一个数据集的数据大小各自越
小,则越提高对作为评价对象的候选数据374的评价。其结果,能够设计给控制器100带来的负荷减小的发送设定400。
[0143]
通信性能指标354是用于评价向hmi 200分发数据的性能的指标,是评价在规定期间内hmi 200能够接收的、在该hmi 200中执行的应用程序所利用的过程数据的种类的指标。例如,通信性能指标354将向hmi 200发送数据集的周期、向hmi 200分发的数据集50所包含的过程数据52中的在hmi 200中执行的应用程序所利用的过程数据52的种类等作为指标。
[0144]
评价单元346在按照通信性能指标354进行了评价的情况下,在规定期间内向hmi 200分发的数据集50所包含的过程数据52的种类越多,则越提高对作为评价对象的候选数据374的评价。其中,不是单纯地种类多,而是在hmi 200中利用的过程数据52的种类越多,对作为评价对象的候选数据374的评价越高。其结果,能够设计可减小在过程数据52的值被更新的定时与在应用程序220中被利用的定时之间产生的时滞的发送设定400。即,hmi 200能够准确地掌握控制器100的状态。
[0145]
通信效率指标356是用于评价控制器100与hmi 200之间的通信效率的指标。例如,作为施加于使控制器100和hmi 200可通信地连接的信息系统网络2的负荷,通信效率指标356将必须在规定期间发送的数据数(即,pps(packet per second:每秒分组)、bps(bit per second:每秒比特))等作为指标。
[0146]
评价单元346在按照通信效率指标356进行了评价的情况下,必须在规定期间内发送的数据数越少,则越提高对作为评价对象的候选数据374的评价。其结果,能够设计通信效率良好的发送设定400。更具体而言,能够减小通信量。
[0147]
判定单元348基于评价单元346按照多个指标对各个候选数据374进行评价后的结果和优先级信息358,判定多个候选数据374中的哪个候选数据374是适当的,并将适当的候选数据374设为决定结果。
[0148]
优先级信息358是由用户输入的信息,规定通信负荷、通信性能以及通信效率的优先级(加权)。即使在通过评价单元346按照各个指标对多个候选数据374进行了评价的情况下,也有时不存在所有指标都成为最佳的候选数据。在该情况下,通过使用优先级信息358规定各指标的优先级,即使在不存在所有指标都成为最佳的候选数据的情况下,判定单元348也能够决定被认为是最佳的候选数据。
[0149]
另外,图6所示的运算顺序是一个例子,候选计算单元344也可以考虑评价单元346参照的通信负荷指标352、通信性能指标354以及通信效率指标356中的至少一个指标来决定过程数据52的组合。即,计算多个候选数据374并评价各候选数据374来决定发送设定400的方法是一个例子,也可以不计算候选数据374而决定发送设定400。
[0150]
<d.用户界面>
[0151]
(d1.hmi信息)
[0152]
图7是表示受理hmi信息350的用户界面700的一例的图。用户界面700包含表示网络结构的网络结构区域720和受理hmi信息350的受理区域740。网络结构区域720表示与控制器100(图中的master)连接的hmi 200。
[0153]
受理区域740受理与控制器100连接的hmi 200的优先级的指定。在图7所示的例子中,能够通过操作选项卡742选择“high”和“low”中的任意一方。由此,能够规定将过程数据
52优先发送给能够显示控制器100的信息的多个hmi(hmi

1、hmi

2、hmi

3)中的哪一个hmi。例如,在多个hmi中,提高作为主设备发挥功能的hmi的优先级,并降低其他hmi的优先级,以能够区分主设备和辅设备的方式进行登记。
[0154]
这样,能够将各hmi的重要度反映到过程数据52的价值中,例如,能够设计发送设定400,使得能够优先分配在由用户指定的任意的hmi 200所执行的应用程序中利用的过程数据。
[0155]
(d2.优先级信息)
[0156]
图8是表示受理优先级信息358的用户界面900的一例的图。图8所示的用户界面900例如在评价单元346的评价结束,需要优先级信息358的情况下被提示。
[0157]
用户界面900具有:指标区域920,其表示评价指标;结果显示区域940,其表示用评价指标进行了评价的结果;优先级受理区域960,其受理评价指标的优先级输入;以及开始按钮980,其指示评价的开始。
[0158]
对优先级受理区域960的选项卡962进行操作,输入评价指标的优先级,若操作开始按钮980,则选择了判定单元348按照所输入的优先级判定为适当的候选数据374的情况下的评价结果被显示于结果显示区域940。
[0159]
即,在设置有多个评价指标的情况下,用户界面900作为受理各评价指标的重要度的单元而发挥功能。用户通过用户界面900来改变各评价指标的重要度,由此能够设计任意的发送设定400。例如,在控制器100重视执行控制程序120的处理速度的情况下,提高与控制器100中的处理负荷相关的指标的重要度即可。另一方面,在控制器100的性能足够高,从而即使不充分考虑控制器100中的处理负荷,控制器100也能够充分执行控制程序120的情况下,也可以降低与控制器100中的处理负荷相关的指标的重要度。
[0160]
虽然说明了受理各评价指标的重要度的用户界面在需要优先级信息358的情况下被提供,但也可以在任意的定时被提供。即,受理各评价指标的重要度的用户界面不限于在需要优先级信息358的情况下被提供,也可以作为用于决定发送设定400的参数之一,在开始运算单元300的运算之前被提供。
[0161]
<e.运算单元300的运算结果的输出>
[0162]
图9是用于说明运算单元300的运算结果的输出例的图。运算单元300输出作为运算结果的候选数据374的内容。例如,运算单元300将被选择为决定结果的候选数据374的内容安装于控制器100(图中的(1))。运算单元300也可以将其作为设定信息输出(图中的(2))。设定信息可以以例如(comma

separated values:逗号分隔值)形式、其他文件形式或纸件的报告形式等任意形式输出。通过作为设定信息输出,即使在无法直接安装于控制器100的情况下,也能够基于设定信息进行控制器100的发送设定。
[0163]
运算单元300可以一览显示候选数据374的内容(图中的(3)。也可以在一览显示的基础上,受理用户的修正。由此,用户能够将无法组入到运算单元300的算法中的评价指标反映到发送设定400中。
[0164]
<f.运算单元300的安装例>
[0165]
对能够搭载本实施方式的运算单元300的装置以及搭载于该装置时的使用情况进行说明。图10是用于说明运算单元300的安装例的图。
[0166]
参照图10,运算单元300被搭载于(1)用于进行发送设定的设定装置20、(2)对由控
制器100和hmi 200构成的网络进行监视的监视装置40、或者(3)对控制器100与hmi 200之间的通信进行中继的中继装置60。
[0167]
(f1.设定装置)
[0168]
设定装置20例如在开始控制器100与hmi 200的连接的定时被利用。图11是表示设定装置20的硬件结构的一例的图。设定装置20提供hmi 200执行的应用程序220的开发环境以及由控制器100执行的控制程序120的开发环境,并且提供用于设定控制器100与hmi 200之间的通信环境的环境。通过在设定装置20中安装支持程序来提供这样的开发环境及设定环境。支持程序例如是欧姆龙公司制作的“sysmac studio”。
[0169]
此外,用于开发控制程序120的程序、用于开发应用程序220的程序、用于生成发送设定400的程序无需被封装而以一个程序提供,也可以分别提供。
[0170]
作为一例,设定装置20使用遵循通用架构的硬件(例如通用个人计算机)来实现。设定装置20既可以是固定式,也可以在配置有控制器100的制造现场以便携性优异的笔记本型的个人计算机的方式提供。
[0171]
参照图11,设定装置20包含处理器21、输入部22、显示部23、易失性存储器24、非易失性存储器25、光学驱动器26以及usb(universal serial bus:通用串行总线)控制器27a、27b。这些组件经由处理器总线28连接。
[0172]
处理器21由cpu(central processing unit:中央处理单元)或gpu(graphical processing unit:图形处理单元)等构成,读出保存于非易失性存储器25的程序,并在易失性存储器24中展开执行,由此向用户提供控制程序120和应用程序220的创建、调试以及用于对控制器100与hmi 200之间的通信环境进行设定的功能。
[0173]
易失性存储器24由dram(dynamic random access memory:动态随机存取存储器)、sram(static random access memory:静态随机存取存储器)等构成。非易失性存储器25例如由hdd(hard disk drive:硬盘驱动器)、ssd(solid state drive:固态驱动器)等构成。
[0174]
输入部22例如由鼠标、键盘构成。输入部22受理hmi信息350或优先级信息358的输入等。具体而言,输入部22是用于对图7或图8所示的选项卡742、962进行操作的设备。
[0175]
显示部23是显示器,例如显示图7或图8所示的用户界面700、900或图9所示的数据集的一览。
[0176]
非易失性存储器25除了用于实现基本功能的os(省略图示)以外,还保存控制器设定程序1110、hmi设定程序1120、显示程序1140、评价信息1160、性能信息1180。另外,虽然在图11中未示出,但非易失性存储器25保存提供控制程序120的开发环境的控制程序用开发程序、和提供应用程序220的开发环境的应用程序用开发程序。
[0177]
控制器设定程序1110是用于决定发送设定的程序,通过由处理器21执行,提供图2所示的运算单元300的功能。
[0178]
hmi设定程序1120是用于决定与hmi 200的通信相关的设定的程序。具体而言,根据通过控制器设定程序1110的执行而决定的发送设定400,生成链接信息98(参照图4)。
[0179]
显示程序1140是用于将图7或图8所示的用户界面700、900或图9所示的数据集的一览显示于显示部23的程序。
[0180]
评价信息1160包含图6所示的通信负荷指标352、通信性能指标354以及通信效率
指标356。此外,评价信息1160也可以包含hmi信息350以及优先级信息358。即,评价信息1160是与决定单元340参照的评价基准360相关的信息。
[0181]
性能信息1180是包含容量信息372,且表示控制器100、连接控制器100和hmi 200的信息系统网络2以及hmi 200的性能的信息。
[0182]
另外,示出了通过处理器21执行程序而提供所需的功能的结构例,但也可以使用专用的硬件电路(例如,asic(application specific integrated circuit:专用集成电路)或fpga(field

programmable gate array:现场可编程门阵列)等)来安装这些所提供的功能的一部分或全部。另外,设定装置20所提供的功能有时也以利用os所提供的模块的一部分的形式实现。
[0183]
设定装置20具有光学驱动器26,从非易失性地保存计算机可读取的程序的记录介质26a(例如dvd(digital versatile disc:数字多功能光盘)等光学记录介质)中读取保存于其中的程序,并安装于非易失性存储器25等。
[0184]
由设定装置20执行的程序等可以经由计算机可读取的记录介质26a进行安装,也可以以从网络上的服务器装置等下载的形式进行安装。
[0185]
usb控制器27a、27b经由usb连接负责与任意的信息处理装置之间的数据交换。具体而言,usb控制器27a、27b负责与控制器100或hmi 200之间的数据交换。例如,经由usb控制器27a将发送设定400安装于控制器100,经由usb控制器27b将链接信息98安装于hmi 200。
[0186]
作为利用设定装置20的场景,例如可以举出在开始构建由hmi 200和控制器100构成的网络时、在向网络新追加hmi 200时、追加或修正应用程序220时等。
[0187]
(f2.监视装置)
[0188]
监视装置40例如在控制器100与hmi 200的连接开始后的运用时被利用。图12是表示包含监视装置40的控制系统1a的概要的图。监视装置40与信息系统网络2连接,对来自控制器100的数据集50的发送状况、各hmi 200中的应用程序220的执行状况、信息系统网络2的通信频带的利用状况进行监视。
[0189]
参照图12,监视装置40具有运算单元300、监视单元420、更新单元440。监视单元420与信息系统网络2连接,对来自控制器100的数据集50的发送状况、各hmi 200中的应用程序220的执行状况、信息系统网络2的通信频带的利用状况进行监视。
[0190]
更新单元440按照监视单元420的监视结果来更新与评价基准360相关的信息。更新单元440除了与评价基准360相关的信息以外,还可以更新控制器100、信息系统网络2以及hmi 200的性能等。
[0191]
决定单元340按照由更新单元440更新后的评价基准360,再次决定数据集50的数量以及应包含在各数据集50中的过程数据52,决定发送设定400。
[0192]
监视装置40还可以具有比较单元460。比较单元460将所决定的发送设定400与利用中的发送设定400进行比较,并将比较结果通知给用户。例如,比较单元460将通过将利用中的发送设定400变更为所决定的发送设定400而得到的效果作为比较结果进行通知。
[0193]
根据这样的结构,能够考虑控制器100与hmi 200之间的实际的数据交换来设计发送设定。即,能够改善在开始控制器100与hmi 200的连接时决定的发送设定。
[0194]
监视装置40也可以将决定的发送设定400安装于控制器100,在该情况下,也再次
生成链接信息98并安装到hmi 200。监视装置40也可以将比较结果通知给用户,发送设定400向控制器100的安装在得到了用户的许可的基础上开始。
[0195]
图13是监视装置40的硬件结构。作为一例,监视装置40使用遵循通用架构的硬件(例如,通用个人计算机)来实现。监视装置40既可以是固定式,也可以在配置有控制器100的制造现场以便携性优异的笔记本型的个人计算机的方式提供。
[0196]
参照图13,监视装置40包含处理器41、输入部42、显示部43、易失性存储器44、非易失性存储器45、光学驱动器46以及通信if 47。这些组件经由处理器总线48连接。
[0197]
处理器41由cpu或gpu等构成,读出保存于非易失性存储器45的程序,并在易失性存储器44中展开执行,由此向用户提供控制程序120和应用程序220的创建、调试以及用于对控制器100与hmi 200之间的通信环境进行设定的功能。
[0198]
易失性存储器44由dram、sram等构成。非易失性存储器45例如由hdd、ssd等构成。
[0199]
输入部42例如由鼠标、键盘构成。例如,输入部42受理发送设定400向控制器100的安装的许可。显示部43是显示器,例如显示比较结果、所决定的发送设定400的详情、与更新后的评价基准360相关的信息、以及更新后的控制器100、信息系统网络2和hmi 200的性能等。
[0200]
非易失性存储器45除了用于实现基本功能的os(省略图示)以外,还保存控制器设定程序1210、hmi设定程序1220、显示程序1240、更新程序1260、比较程序1280、监视程序1290。
[0201]
控制器设定程序1210是用于决定发送设定的程序,通过由处理器41执行来提供运算单元300的功能。
[0202]
hmi设定程序1220是用于决定与hmi 200的通信相关的设定的程序。具体而言,根据通过控制器设定程序1210的执行而决定的发送设定400,生成链接信息98(参照图4)。
[0203]
显示程序1240是用于将比较结果、所决定的发送设定400的详情、与更新后的评价基准360相关的信息、以及更新后的控制器100、信息系统网络2和hmi 200的性能等显示于显示部43的程序。
[0204]
更新程序1260是用于按照监视结果来更新与评价基准360相关的信息的程序,通过由处理器41执行来提供更新单元440的功能。例如,通过执行更新程序1260,以根据应用程序220的执行状况而使得执行频度高的应用程序的过程数据的价值变高的方式,更新hmi信息350,或者根据监视结果在hmi 200、控制器100、信息系统网络2中以不产生负荷偏差的方式更新各指标,或者更新优先级信息358。
[0205]
比较程序1280是用于比较利用中的发送设定400和所决定的发送设定400的程序,通过由处理器41执行来提供比较单元460的功能。通过执行比较程序1280,计算通过将利用中的发送设定400变更为所决定的发送设定400而得到的效果。
[0206]
监视程序1290是用于监视来自控制器100的数据集50的发送状况、各hmi 200中的应用程序220的执行状况、信息系统网络2的通信频带的利用状况的程序,通过由处理器41执行来提供监视单元420的功能。
[0207]
此外,示出了通过处理器41执行程序而提供所需的功能的结构例,但也可以使用专用的硬件电路(例如asic或fpga等)来安装这些所提供的功能的一部分或全部。另外,监视装置40所提供的功能有时也以利用os所提供的模块的一部分的形式实现。
[0208]
监视装置40具有光学驱动器46,从非易失性地保存计算机可读取的程序的记录介质46a(例如dvd等光学记录介质)中读取保存于其中的程序,并安装于非易失性存储器45等。
[0209]
由监视装置40执行的程序等可以经由计算机可读取的记录介质46a进行安装,也可以以从网络上的服务器装置等下载的形式进行安装。
[0210]
通信if 47从与信息系统网络2连接的各装置收集用于掌握从控制器100的数据集50的发送状况、各hmi 200中的应用程序220的执行状况、以及信息系统网络2的通信频带的利用状况的信息,并且负责与各装置之间的数据交换。
[0211]
作为利用监视装置40的场景,例如可以举出在测试按照利用设定装置20决定的发送设定400的通信时、由hmi 200和控制器100构成的网络的构建结束后的运用时等。
[0212]
(f3.中继装置)
[0213]
中继装置60对控制器100与hmi 200之间的通信进行中继。图14是表示中继装置60的功能结构的一例的图。中继装置60在由1个或多个hmi 200执行的应用程序220被变更而变更订购对象时,进行用于决定与在控制系统中执行的应用程序220相应的发送设定400的运算,并按照运算结果来更新发送设定400以及链接信息98。
[0214]
参照图14,中继装置60具有订购列表管理单元610、过程数据管理单元620、决定单元640、通知单元660和收发管理单元680。
[0215]
订购列表管理单元610取得由与中继装置60连接的hmi 200执行的应用程序220的信息。应用程序220的信息是能够确定该应用程序220中利用的过程数据52的信息。例如,订购列表管理单元610分析来自hmi 200的订购请求,取得由hmi 200执行的应用程序220的信息。在此,订购列表管理单元610相当于本技术发明的取得单元的一例。
[0216]
订购列表管理单元610对订购列表612进行管理,该订购列表612能够确定在控制系统中作为订购对象的过程数据52和将该过程数据作为订购对象的hmi 200。订购列表管理单元610基于来自hmi 200的订购请求,确定在hmi 200中执行的应用程序220所利用的过程数据52,并将该过程数据作为订购对象登记(更新)到订购列表612中。订购列表管理单元610在订购对象被变更的情况下,确定停止订购的过程数据,并将订购的停止反映(更新)到订购列表612中。订购列表管理单元610在更新了订购列表612的情况下,通知给决定单元640(图中的更新通知)。
[0217]
过程数据管理单元620管理规定过程数据52与分发过程数据52的控制器100之间的对应关系的过程数据列表622。过程数据管理单元620在中继装置60与控制器100的通信建立时,对控制器100请求发送表示所管理的过程数据52的信息。过程数据管理单元620接收表示过程数据52的信息(图15中的过程数据信息),确认控制器100与控制器100管理的过程数据52之间的对应关系是否登记在过程数据列表622中,如果没有登记,则将控制器100与控制器100管理的过程数据52之间的对应关系登记(更新)到过程数据列表622中。
[0218]
决定单元640接收来自订购列表管理单元610的更新通知,决定用于发送作为订购对象的过程数据52的发送设定400。决定单元640基于订购列表612来确定执行中的应用程序220所利用的过程数据52。决定单元640针对基于过程数据列表622确定的过程数据,按照管理该过程数据的每个控制器100进行分组。决定单元640针对分组而成的每一组过程数据52,决定对一组过程数据52进行管理的控制器100的发送设定400。发送设定400的决定方法
能够利用上述说明的方法,因此省略说明。
[0219]
即,通过决定单元640、订购列表管理单元610和过程数据管理单元620协作运算来决定发送设定400。即,通过决定单元640、订购列表管理单元610和过程数据管理单元620,构成用于决定发送设定400的运算单元300a。
[0220]
决定单元640基于所决定的各控制器100的发送设定400来生成各hmi 200的链接信息98。
[0221]
通知单元660将由决定单元640得到的发送设定400通知给控制器100,并将链接信息98通知给hmi 200。另外,在按每个hmi 200生成了链接信息98的情况下,向对应的hmi 200发送各链接信息98。
[0222]
通知单元660基于发送设定400和订购列表612,对规定各数据集50的发送目的地的主题列表682的信息进行更新。
[0223]
收发管理单元680参照主题列表682,将从控制器100分发的各数据集50发送到以该数据集50中包含的过程数据52为订购对象的hmi 200。
[0224]
此外,决定单元640也可以在决定发送设定400的情况下,以相比已设定的发送设定400的变更较少的方式进行决定。
[0225]
图15是表示中继装置60的硬件结构的一例的示意图。参照图15,中继装置60包含处理器61、易失性存储器64、非易失性存储器65以及通信if 67。这些组件经由处理器总线68连接。
[0226]
处理器61由cpu或gpu等构成,读出保存于非易失性存储器65的程序,并在易失性存储器64中展开执行,由此对控制器100与hmi 200之间的通信进行中继,并且提供用于决定发送设定400的功能。
[0227]
易失性存储器64由dram、sram等构成。非易失性存储器65例如由hdd、ssd等构成。
[0228]
非易失性存储器65除了用于实现基本功能的os以外,还保存有中继程序1310、订购列表612、过程数据列表622以及主题列表682。
[0229]
中继程序1310是用于对控制器100与hmi 200之间的通信进行中继并且决定发送设定400的程序,通过由处理器61执行来提供图14所示的各种单元的功能。中继程序1310包含用于决定发送设定400的控制器设定程序1312、和生成与所决定的发送设定400对应的hmi 200的链接信息98的hmi设定程序1314。在图14所示的例子中,为了简化附图,记载了决定单元640生成链接信息98以及发送设定400,但也可以分别具有生成发送设定400的功能和生成链接信息98的功能。
[0230]
此外,示出了通过处理器61执行程序而提供所需的功能的结构例,但也可以使用专用的硬件电路(例如asic或fpga等)来安装这些所提供的功能的一部分或全部。另外,中继装置60所提供的功能有时也以利用os所提供的模块的一部分的形式实现。
[0231]
保存在非易失性存储器65中的各种程序可以经由计算机可读取的记录介质安装,也可以以从网络上的服务器装置等下载的形式安装。
[0232]
通信if 67负责与连接于信息系统网络2的各装置(控制器100、hmi 200)之间的数据交换。
[0233]
如上所述,中继装置60暂时决定某个定时的最佳的发送设定400,根据在网络上执行的应用程序220的变更,变更发送设定400。另外,最佳的发送设定400是由决定单元640求
出的发送设定400,根据决定单元640参照的评价基准360,依据什么称为“最佳的发送设定400”是不同的。
[0234]
另外,换言之,中继装置60对在控制器100与执行应用程序220的hmi 200之间交换的数据集50进行调停,因此也可以说是调停单元。
[0235]
中继装置60的利用场景广泛,从hmi 200与控制器100的通信开始时起至结束时为止,中继装置60能够一直被利用。
[0236]
<f.hmi的硬件结构>
[0237]
图16是表示hmi 200的硬件结构的一例的示意图。作为一例,hmi 200使用遵循通用架构的硬件(例如,通用个人计算机)来实现。hmi 200既可以是固定式,也可以在配置有控制器100的制造现场以便携性优异的笔记本型的个人计算机的方式提供。参照图16,hmi 200具有处理器210、触摸面板240、易失性存储器250、非易失性存储器270、通信if 292以及usb控制器294。这些组件经由处理器总线296连接。
[0238]
处理器210由cpu、gpu等构成,读出保存在非易失性存储器270中的程序,在易失性存储器250中展开并执行,由此将通过控制程序120的执行而得到的各种信息输出到触摸面板240。
[0239]
易失性存储器250由dram、sram等构成。非易失性存储器270例如由hdd、ssd等构成。
[0240]
非易失性存储器270除了用于实现基本功能的os(省略图示)以外,还保存opc ua程序260、订购管理信息94、链接信息98、1个或多个应用程序220、映射信息222。
[0241]
opc ua程序260是用于使hmi 200作为订阅者发挥功能、且用于在控制器100与hmi 200之间进行遵循opc ua的通信的程序。处理器210执行opc ua程序260,由此提供图4所示的通信处理部90的功能。opc ua程序260例如从其他外部存储介质(例如存储卡、网络上的服务器装置)被安装到非易失性存储器270。
[0242]
另外,示出了通过处理器210执行程序来提供所需的功能的结构例,但也可以使用专用的硬件电路(例如asic或fpga等)来安装这些所提供的功能的一部分或全部。另外,hmi 200提供的功能也有时以利用os提供的模块的一部分的形式实现。
[0243]
触摸面板240具有作为显示器的显示部242和受理游艺者的操作的输入部244。另外,显示部242和输入部244也可以分体构成。
[0244]
通信if 292负责与控制器100的数据交换。usb控制器294经由usb连接负责与任意的信息处理装置之间的数据交换。
[0245]
<g.控制器100的硬件结构>
[0246]
图17是表示控制器100的硬件结构的一例的示意图。参照图17,控制器100包含处理器110、芯片组196、非易失性存储器170、易失性存储器150、控制系统网络if 191、信息系统网络if 192、usb控制器193、存储卡if 194和内部总线控制器195作为主要组件。
[0247]
处理器110由cpu、gpu等构成,读出保存在非易失性存储器170中的各种程序,在易失性存储器150中展开并执行,由此实现现场设备500的控制以及作为发布者的功能。芯片组196通过对处理器110与各组件之间的数据交换进行中介,来实现作为控制器100整体的处理。
[0248]
非易失性存储器170保存控制程序120、opc ua程序180以及发送设定400。
[0249]
典型地,控制程序120由用户对设定装置20进行操作设计而生成的用户程序、和提供控制器100的基本功能的系统程序构成。通过用户程序和系统程序协作来实现用户的控制目的,从而控制现场设备500。
[0250]
opc ua程序180是用于使控制器100作为发布者发挥功能、且用于在控制器100与hmi 200之间进行遵循opc ua的通信的程序。处理器110通过执行opc ua程序180,提供图5所示的通信处理部80的功能。opc ua程序180例如可以作为系统程序的一种预先安装于控制器100,另外,也可以从其他外部存储介质(例如存储卡194a、网络上的服务器装置)安装到非易失性存储器170。
[0251]
另外,示出了通过处理器110执行程序来提供所需的功能的结构例,但也可以使用专用的硬件电路(例如asic或fpga等)来安装这些所提供的功能的一部分或全部。此外,也可以使用遵循通用架构的硬件(例如以通用个人计算机为基础的工业用个人计算机)来实现控制器100的主要部分。在该情况下,也可以使用虚拟化技术并行地执行用途不同的多个os,并且在各os上执行所需的应用程序。
[0252]
控制系统网络if 191负责与现场设备500之间的数据交换。
[0253]
信息系统网络if 192负责与hmi 200之间的数据交换。
[0254]
usb控制器193经由usb连接负责与任意的信息处理装置之间的数据交换。
[0255]
存储卡if 194构成为能够装卸存储卡194a,能够对存储卡194a写入控制程序、各种设定等数据,或者从存储卡194a读出控制程序、各种设定等数据。
[0256]
内部总线控制器195是搭载于控制器100的与未图示的i/o单元等之间交换数据的接口。内部总线可以使用厂商固有的通信协议,也可以使用与任意的工业用网络协议相同或遵循任意的工业用网络协议的通信协议。
[0257]
<g.控制系统的变形例>
[0258]
在上述实施方式中,控制器100按照预先确定的发送设定400,生成并发送预先确定的组合的数据集50。另外,控制器100也可以根据利用控制器100的过程数据52来执行应用程序220的1个或多个hmi 200所执行的应用程序220,发送或不发送各数据集50。
[0259]
图18是表示变形例中的控制系统1c的概略的图。参照图18,控制系统1c与图1所示的控制系统1相比,不同点在于具有管理单元10,且代替控制器100而具有控制器100c。
[0260]
控制器100c与控制器100相比,不同点在于具有通信处理部80c来代替通信处理部80。通信处理部80c能够按照发送设定400生成并发送包含多个过程数据的值的多个数据集50。
[0261]
管理单元10根据接收来自控制器100c的数据集50的分发而执行应用程序220的多个hmi 200

1、200

2各自所执行的应用程序,决定通信处理部80c能够发送的数据集50中的、使发送有效化的数据集50。
[0262]
即,管理单元10在按照预先确定的过程数据52的组合而生成的数据集中,根据所执行的应用程序来决定执行使发送有效的数据集。
[0263]
例如,能够由控制器100发送数据集1~数据集5,如果从控制器100c通过数据集1以及数据集2的分发而向hmi 200提供正在执行的应用程序220所需的过程数据52,则管理单元10使数据集1以及数据集2的发送有效,使数据集3~5的发送无效。
[0264]
由此,能够防止发布应用程序的执行所未利用的数据集,能够减轻施加于控制器
100的处理负担。
[0265]
另外,在该情况下,在该情况下,运算单元300也可以考虑管理单元10被设置于控制系统1c的情况来决定发送设定400。即,运算单元300也可以按照包含管理负荷指标353的评价基准,决定数据集的数量和应包含在各数据集中的过程数据52,该管理负荷指标353对施加于管理单元10的负荷进行评价。
[0266]
在按照包含管理负荷指标353的评价基准来决定要保存于数据集50的过程数据52的组合的情况下,例如,以不同时执行的各应用程序220所包含的过程数据52被分别保存于不同的数据集的方式,进行决定。
[0267]
在这样的控制系统1c中,与控制系统1相比,具有管理单元10,从而用于使管理单元新发挥功能的处理负荷施加于控制系统1c。但是,通过将用于使管理单元发挥功能的处理负荷包含在评价基准中,能够防止不被利用的数据集的发送,并且也能够减小为了防止这样的发送而施加的处理负荷,其结果,能够降低对整个控制系统1c施加的处理负荷。
[0268]
<其他变形例>
[0269]
在上述实施方式中,设为hmi是订阅者、控制器是发布者的情况进行了说明。hmi和控制器各自可以具有订阅者和发布者的功能双方。
[0270]
在该情况下,控制程序构成为能够利用从hmi分发的数据。hmi的发送设定也可以由运算单元根据控制程序来决定。hmi的发送设定的决定方法能够利用以上说明的控制器100的发送设定400的决定方法。
[0271]
不需要以一个应用程序利用一个数据集50所包含的所有过程数据52的方式生成发送设定400。在该情况下,也可以在评价基准360中包含如下指标,该指标与用于从数据集50中区分应用程序220所利用的过程数据52的处理负荷相关。
[0272]
另外,在上述实施方式中,为了简化说明,假设应用程序中利用的过程数据52全部由一个控制器100发送,但应用程序220中利用的多个过程数据52也可以分别从不同的控制器100发送。
[0273]
在该情况下,运算单元300也可以按照发送取得单元320取得的多个过程数据52的每个控制器进行分组,通过决定单元340按照每个组生成发送设定。
[0274]
另外,也可以考虑过程数据52被控制器100更新的周期、以及在应用程序220中被利用的周期来生成发送设定400。
[0275]
<g.附记>
[0276]
如上所述,上述实施方式包含以下的公开。
[0277]
(结构1)
[0278]
一种控制系统(100、1a、1c),其中,
[0279]
该控制系统(100、1a、1c)具有控制装置(100、100c),所述控制装置(100、100c)用于对控制对象(500)进行控制的控制程序(120),并且对在该控制程序中参照或更新的多个过程数据(52)进行管理,所述控制装置具有用于周期性地发送预先确定的1个或多个数据集(50)的通信处理部(80、80c),各数据集包含所述多个过程数据中的预先确定的1个或多个过程数据的值,
[0280]
该控制系统具有:
[0281]
1个或多个信息处理装置(200),其利用从所述控制装置发送的所述1个或多个数
据集所包含的过程数据的值,执行1个或多个应用程序(220);以及
[0282]
运算单元(300、300a),其决定发送设定,所述发送设定是对所述控制装置的通信处理部进行的数据集的发送的设定,
[0283]
所述运算单元包含:
[0284]
取得单元(320、610),其针对所述1个或多个信息处理装置中的每一个,取得在该信息处理装置中执行的1个或多个应用程序各自所需的过程数据;以及
[0285]
决定单元(340、640),其根据所述取得单元取得的每个应用程序所需的过程数据,按照与通信负荷相关的预先确定的评价基准(360),决定所述通信处理部发送的数据集的数量、和应包含在各数据集中的过程数据。
[0286]
(结构2)
[0287]
在结构1所记载的控制系统中,
[0288]
所述评价基准包含通信负荷指标(352),所述通信负荷指标(352)对由于所述通信处理部生成所述1个或多个数据集、并且周期性地发送该1个或多个数据集中的每一个而施加于所述控制装置的负荷进行评价。
[0289]
(结构3)
[0290]
在结构1或2所记载的控制系统中,
[0291]
所述评价基准包含通信性能指标(354),所述通信性能指标(354)对所述信息处理装置在规定期间内能够接收的所述过程数据的种类进行评价。
[0292]
(结构4)
[0293]
在结构1~3中的任意一项所记载的控制系统中,
[0294]
所述评价基准包含通信效率指标(356),所述通信效率指标(356)对所述控制装置与所述1个或多个信息处理装置之间的通信效率进行评价。
[0295]
(结构5)
[0296]
在结构1~4中的任意一项所记载的控制系统中,
[0297]
所述决定单元具有价值决定单元(342),所述价值决定单元(342)针对所述取得单元所取得的过程数据中的每一个,决定该过程数据的价值,
[0298]
所述评价基准包含对各数据集所包含的所述过程数据的价值进行评价的指标。
[0299]
(结构6)
[0300]
在结构5所记载的控制系统中,
[0301]
所述价值决定单元根据利用所述过程数据的信息处理装置的重要度(350),决定所述过程数据的价值,
[0302]
该控制系统还具有受理所述信息处理装置的重要度的单元(700、740、742)。
[0303]
(结构7)
[0304]
在结构1~6中的任意一项所记载的控制系统中,
[0305]
该控制系统还具有管理单元(10),所述管理单元(10)根据在所述1个或多个信息处理装置中执行的应用程序,决定所述通信处理部能够发送的1个或多个数据集中的使发送有效化的数据集,
[0306]
所述评价基准包含管理负荷指标(353),所述管理负荷指标(353)对由于管理所述1个或多个数据集中的每一个的有效化的决定而施加于所述管理单元的负荷进行评价。
[0307]
(结构8)
[0308]
在结构1~7中的任意一项所记载的控制系统中,
[0309]
所述评价基准包含多个评价指标(352、354),
[0310]
该控制系统还具有受理所述多个评价指标中的每一个的重要度的单元(900、960、962)。
[0311]
(结构9)
[0312]
在结构1~7中的任意一项所记载的控制系统(1a)中,
[0313]
该控制系统(1a)还具有监视通信负荷的监视装置(40),
[0314]
所述监视装置具有:
[0315]
所述运算单元(300);以及
[0316]
更新单元(440),其按照监视所述通信负荷的结果,更新所述评价基准,
[0317]
所述决定单元按照由所述更新单元更新后的所述评价基准,决定所述通信处理部发送的数据集的数量、和应包含在各数据集中的过程数据。
[0318]
(结构10)
[0319]
一种设定装置(20、40、60),其对控制装置(100、100c)与1个或多个信息处理装置(200)之间的通信环境的设定进行辅助,所述控制装置(100、100c)执行用于对控制对象(500)进行控制的控制程序(120),并且对在该控制程序中参照或更新的多个过程数据(52)进行管理,所述1个或多个信息处理装置(200)利用所述多个过程数据中的指定的1个或多个过程数据的值来执行1个或多个应用程序(220),其中,
[0320]
所述控制装置具有用于周期性地发送预先确定的1个或多个数据集(50)的通信处理部(80、80c),各数据集构成为包含所述多个过程数据中的预先确定的1个或多个过程数据的值,
[0321]
该设定装置具有:
[0322]
取得单元(320、610),其针对所述1个或多个信息处理装置中的每一个,取得在该信息处理装置中执行的1个或多个应用程序各自所需的过程数据;以及
[0323]
决定单元(340、640),其基于所述取得单元取得的每个应用程序所需的过程数据,按照与通信负荷相关的预先确定的评价基准,决定所述通信处理部发送的数据集的数量、和应包含在各数据集中的过程数据。
[0324]
(结构11)
[0325]
一种设定程序(1110、1210、1312),其对控制装置(100、100c)与1个或多个信息处理装置(200)之间的通信环境的设定进行辅助,所述控制装置(100、100c)执行用于对控制对象(500)进行控制的控制程序(120),并且对在该控制程序中参照或更新的多个过程数据(52)进行管理,所述1个或多个信息处理装置(200)利用所述多个过程数据中的指定的1个或多个过程数据的值来执行1个或多个应用程序(220),其中,
[0326]
所述控制装置具有用于周期性地发送预先确定的1个或多个数据集(50)的通信处理部(80、80c),
[0327]
各数据集包含所述多个过程数据中的预先确定的1个或多个过程数据的值,
[0328]
所述设定程序使计算机(20、40、60)执行以下步骤:
[0329]
针对所述1个或多个信息处理装置中的每一个,取得在该信息处理装置中执行的1
个或多个应用程序各自所需的过程数据(320、610);以及
[0330]
基于在进行所述取得的步骤中取得的每个应用程序所需的过程数据,按照与通信负荷相关的预先确定的评价基准,决定所述通信处理部发送的数据集的数量、和应包含在各数据集中的过程数据(340、640)。
[0331]
应该认为本次公开的实施方式在所有方面都是例示而不是限制性的。本发明的范围由权利要求书、而不由上述的说明来表示,意在包含与权利要求书等同的意思以及范围内的所有变更。另外,在实施方式以及各变形例中说明的发明只要可能,可以单独也可以组合实施。
[0332]
标号说明
[0333]
1、1a、1c:控制系统;2:信息系统网络;4:控制系统网络;10:管理单元;20:设定装置;21、41、61、110、210:处理器;22、42、244:输入部;23、43、242:显示部;24、44、64、150、250:易失性存储器;25、45、65、170、270:非易失性存储器;26、46:光学驱动器;26a、46a:记录介质;27a、27b、193、294:usb控制器;28、48、68、296:处理器总线;40:监视装置;47、67、292:通信if;50:数据集;52:过程数据;54:对象;60:中继装置;80、80c、90:通信处理部;82:数据集生成单元;84、96:通信驱动器;92:订购管理单元;94:订购管理信息;98:链接信息;100、100c:控制器;120:控制程序;180、260:opc ua程序;191:控制系统网络if;192:信息系统网络if;194:存储卡if;194a:存储卡;195:内部总线控制器;196:芯片组;200:hmi;220:应用程序;222:映射信息;240:触摸面板;300、300a:运算单元;320:取得单元;340、640:决定单元;342:价值决定单元;344:候选计算单元;346:评价单元;348:判定单元;350:hmi信息;352:通信负荷指标;353:管理负荷指标;354:通信性能指标;356:通信效率指标;358:优先级信息;360:评价基准;370:价值信息;372:容量信息;374:候选数据;400:发送设定;420:监视单元;440:更新单元;460:比较单元;500:现场设备;610:订购列表管理单元;612:订购列表;620:过程数据管理单元;622:过程数据列表;660:通知单元;680:收发管理单元;682:主题列表;700、900:用户界面;720:网络结构区域;740:受理区域;742、962:选项卡;920:指标区域;940:结果显示区域;960:优先级受理区域;980:开始按钮;1110、1210、1312:控制器设定程序;1120、1220、1314:hmi设定程序;1140、1240:显示程序;1160:评价信息;1180:性能信息;1260:更新程序;1280:比较程序;1290:监视程序;1310:中继程序。
再多了解一些

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

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

相关文献

  • 日榜
  • 周榜
  • 月榜