控制装置、支持装置及通信系统的制作方法

文档序号:24641993发布日期:2021-04-13 12:56阅读:67来源:国知局
控制装置、支持装置及通信系统的制作方法

1.本发明涉及一种用于支持设定作业的技术,所述设定作业和控制装置与其他装置之间的通信相关。


背景技术:

2.在各种制造现场,已导入了可编程逻辑控制器(programmable logic controller,plc)等控制装置。这种控制装置为一种计算机,执行根据制造装置或制造设备等而设计的控制程序。控制装置经由中继装置与工厂内或工厂外的各种装置连接。
3.例如,日本专利第6407494号公报(专利文献1)中公开了一种控制装置,此控制装置经由作为中继装置的一例的路由器而与工厂之外的云系统可通信地连接。
4.而且,国际公开第2016/157477号(专利文献2)中公开了一种控制装置,此控制装置经由作为中继装置的一例的路由器而与其他控制装置可通信地连接。
5.现有技术文献
6.专利文献
7.专利文献1:日本专利第6407494号公报
8.专利文献2:国际公开第2016/157477号


技术实现要素:

9.发明所要解决的问题
10.但是,针对中继装置的设定复杂,需要进行设定方法的学习。即,为了设计工厂内的网络并加以运用,不仅需要对网络的设计者进行教育,而且对于在工厂内的现场所设计的网络的运用者也需要进行教育。因此,对中继装置进行的设定的复杂性成为难以在工厂内构建网络的一个重要原因。
11.本发明的目的在于解决所述问题,且其目的在于使对中继装置进行的设定容易。
12.解决问题的技术手段
13.根据本公开的一例,提供一种控制装置,可经由中继装置与其他装置通信。控制装置包含:存储部,保存有包含至少一个命令的用户程序,所述命令用于进行经由中继装置的通信相关的通信设定;以及通信设定部,基于命令的执行条件成立,而在与中继装置之间进行指令(command)的收发,进行命令所示的通信设定。
14.根据所述公开,即便是未知与中继装置之间的指令的收发方法的用户,也只要指定通信设定,控制装置便执行与所指定的设定内容相应的处理,因而可容易地进行针对中继装置的通信设定。
15.所述公开中,在与中继装置之间进行的指令收发的协议视中继装置的种类而不同。通信设定部按照与中继装置的种类相应的协议,在与中继装置之间进行指令的收发。
16.根据所述公开,可应对各种中继装置,用户可利用多种中继装置。
17.所述公开中,存储部按中继装置的种类来保存包含协议的转换信息。控制装置还
包含:转换信息确定部,基于中继装置所包括的器件信息来判断中继装置的种类,基于中继装置的种类来确定转换信息。通信设定部基于转换信息所确定的转换信息,在与中继装置之间进行指令的收发。
18.根据所述公开,用户可无需在意中继装置的种类而进行通信设定。
19.所述公开中,转换信息是按命令的内容而保存于存储部。转换信息确定部基于执行条件成立的命令及中继装置的种类来确定转换信息。
20.根据所述公开,控制装置无需预先存储与命令的内容及中继装置的种类相应的程序,因而可减少保存于存储部的数据量。
21.所述公开中,用户程序包含通信设定的命令、及优先级高于所述命令的优先命令。控制装置还包含:恒定周期任务执行部,以恒定周期反复执行优先命令。通信设定部以不妨碍所述优先命令的执行的方式来执行通信设定的命令。
22.根据所述公开,可不妨碍优先级高的命令而执行通信设定的命令。
23.所述公开中,控制装置经由中继装置可通信地连接于第一机器及第二机器,所述第一机器管理第一现场装置群,所述第二机器管理第二现场装置群。存储部保存:第一配方,包含使第一现场装置群运行的条件;以及第二配方,包含使第二现场装置群运行的条件。用户程序包含切换连接目标的机器的命令、及根据切换而切换配方的命令。
24.根据所述公开,可容易地进行流水线切换。
25.根据本公开的另一例,提供一种支持装置,用于支持控制装置用的用户程序的开发,所述控制装置可经由中继装置与其他装置通信。支持装置包含:存储部,保存至少一个命令,所述命令用于进行经由中继装置的通信相关的通信设定;以及控制部,用于将保存于存储部的至少一个命令组合而生成用户程序。控制部以在执行命令时控制装置可在与中继装置之间进行指令收发的形式来制作用户程序。
26.根据所述公开,即便是未知与中继装置之间的指令的收发方法的用户,也可制作用于容易地进行针对中继装置的通信设定的、用户程序。
27.根据本公开的另一例,提供一种通信系统,包含:中继装置;以及控制装置,可经由中继装置与其他装置通信。控制装置包含:存储部,保存有包含至少一个命令的用户程序,所述命令用于进行经由中继装置的通信相关的通信设定;以及
28.通信设定部,基于命令的执行条件成立,而在与中继装置之间进行指令的收发,进行命令所示的通信设定。
29.根据所述公开,即便是未知与中继装置之间的指令的收发方法的用户,也只要指定通信设定,控制装置便执行与所指定的设定内容相应的处理,因而可提供容易地进行针对中继装置的通信设定的、环境。
30.发明的效果
31.本发明提供一种可容易地进行对中继装置进行的设定的环境。
附图说明
32.图1为示意性地表示本实施方式的控制装置的适用场景的图。
33.图2为表示实施方式1的通信系统的系统结构的图。
34.图3为表示cpu单元的装置结构的一例的示意图。
35.图4为表示cpu单元的软件结构的示意图。
36.图5为表示支持装置的装置结构的一例的示意图。
37.图6为表示支持装置的软件结构的示意图。
38.图7为表示通过执行通信设定的程序从而实现的控制器的功能结构的图。
39.图8为表示组入了通信设定的功能块的用户程序的示例的图。
40.图9为表示组入了通信设定的功能块的用户程序的示例的图。
41.图10为表示执行图8及图9所示的用户程序时的、恒定周期任务执行部及通信设定部执行处理的时机的图。
42.图11为表示通信设定部与设定信息更新部之间的指令的互换的图。
43.图12为支持装置中准备的命令的一例。
44.图13为表示通信系统的变形例的图。
45.图14为表示实施方式2的控制装置的概略结构的图。
具体实施方式
46.以下,参照附图对本发明的各实施方式进行说明。以下的说明中,对相同的零件及结构元件标注相同符号。这些的名称及功能也相同。因此,不重复进行与这些有关的详细说明。另外,以下说明的各实施方式及各变形例可适当选择性地组合。
47.§
1适用例
48.参照图1对适用本发明的场景的一例进行说明。图1为示意性地表示本实施方式的控制装置100a的适用场景的图。控制装置100a经由中继装置200a与其他装置(装置41a、41b、41c)可通信地连接。
49.控制装置100a包括:存储部106a,保存有包含至少一个命令的用户程序1066a,所述命令用于进行与其他装置之间的通信相关的设定即通信设定;以及通信设定部160a,进行通信设定。
50.通信设定为与其他装置之间的通信相关的设定,且是指针对中继装置200a进行的设定。
51.通信设定部160a基于命令的执行条件成立,而在与中继装置之间进行指令的收发,进行所述命令所示的通信设定。
52.例如,图1所示的示例中,存储部106a保存下述用户程序1066a,即:若命令a的执行条件成立而命令a的执行完成,则命令b的执行条件成立,若命令b的执行完成则命令c的执行条件成立,若命令c的执行完成则命令d的执行条件成立。
53.所述用户程序1066a例如由支持装置30a提供的开发环境制作。支持装置30a例如是使用按照通用架构的硬件而实现。
54.如图1所示,通信设定部160a在执行命令a时,在与中继装置200a之间进行指令的互换。若命令a的执行完成,则通信设定部160a执行命令b,在执行命令b时,在与中继装置200a之间进行指令的互换。同样地,在执行命令c、命令d时,通信设定部160a也在与中继装置200a之间进行指令的互换。
55.这样,通信设定中,虽然在中继装置200a与控制装置100a之间需要进行指令的互换,但通信设定部160a伴随执行命令而进行所述指令的互换,因而用户即便不学习中继装
置200a与控制装置100a之间进行的、详细的指令互换,也可进行针对中继装置200a的通信设定。
56.§
2结构例
57.[实施方式1]
[0058]
<a.通信系统的系统结构>
[0059]
图2为表示实施方式1的通信系统1的系统结构的图。通信系统1为设置于实际进行制造作业的制造现场2的系统。通信系统1由在制造现场2工作的人员(以下也称为“用户”)所利用。通信系统1提供用于进行远程点(remote site)4与制造现场2之间的通信相关的设定(以下也称为“通信设定”)的环境,所述远程点4可对制造现场2远程进行阅览或操作。
[0060]
通信系统1包含:控制器10,对制造装置或机器人等进行控制;以及触摸屏式的人机接口(human machine interface,hmi)20,用户为了进行通信设定而操作。
[0061]
控制器10经由信息系网络nw1与hmi20可通信地连接,按照通过用户操作hmi20从而从hmi20输出的设定指示进行通信设定。
[0062]
控制器10经由控制系网络nw2与现场装置群40连接。现场装置群40包含从控制对象或者与控制有关的制造装置或生产线等(以下也统称为“现场”)收集数据的装置。作为这种收集数据的装置,设想输入继电器或各种传感器等。现场装置群40还包含基于由控制器10所生成的指令而对现场给予某些作用的装置。作为这种对现场给予某些作用的装置,设想输出继电器、连接器、伺服驱动器及伺服马达、其他任意的致动器。
[0063]
图2所示的示例中,表示下述示例,即:现场装置群40包含远程输入输出(input/output,i/o)装置41、继电器群42、伺服驱动器45及伺服马达46,这些连接于控制器10。
[0064]
控制器10包含中央处理器(central processing unit,cpu)单元100、中继单元200及电源单元300。电源单元300向cpu单元100等构成控制器10的各种装置供给电力。
[0065]
cpu单元100相当于执行与控制对象有关的控制运算的控制装置。cpu单元100经由中继单元200与远程点4的计算机4a连接。cpu单元100通过执行根据用户的控制目的而制作的用户程序,从而对控制对象进行控制。cpu单元100可将连接于cpu单元100的各种装置作为控制对象。具体而言,cpu单元100可将中继单元200作为控制对象,可变更中继单元200的状态。具体而言,cpu单元100可进行中继单元200的设定。通过进行中继单元200的设定,从而进行远程点4与制造现场2之间的通信设定。另外,实施方式1中,通信设定的用户程序是按照通过用户操作hmi20从而从hmi20输出的设定变更指示而执行。
[0066]
用户程序是由支持装置30提供的开发环境制作。cpu单元100包括用于与支持装置30连接的接口。由支持装置30所制作的用户程序从支持装置30安装于cpu单元100,并由cpu单元100执行。用户程序是以国际标准国际电工委员会(international electro technical commission,iec)61131

3中作为plc应用的编程语言所规定的程序语言来描述。具体而言,用户程序为以梯形图(ladder diagram,ld)、功能块图(function block diagram,fbd)、顺序功能图(sequential function chart,sfc)、指令表(instruction list,il)、结构文本(structured text,st)此五种中的一种或多种语言描述的程序。
[0067]
中继单元200为具有路由器功能的控制机器,且提供中介cpu单元100与其他装置之间的数据互换的中继功能。图2所示的示例中,中继单元200经由网络nw3与远程点4内的网络可通信地连接。远程点4内的网络上连接着计算机4a。即,中继单元200中介cpu单元100
与计算机4a之间的数据互换。更具体而言,中继单元200可经由网络nw3与连接有计算机4a的中继器4b通信。
[0068]
作为网络nw3,设想国际互联网(internet)、虚拟专用网络(virtual private network,vpn)、专用线路或将这些组合而成的通信线路等,可为有线的网络与无线的网络中的任一种网络。实施方式1中,网络nw3为vpn。
[0069]
在可实现cpu单元100与中继单元200之间的通信的网络中,作为一例,对cpu单元100分配“192.168.1.1/24”作为ip地址。对中继单元200分配“192.168.1.254/24”作为ip地址。
[0070]
在网络nw3中,作为一例,对中继单元200分配“10.0.0.1”作为ip地址。对中继器4b分配“20.0.0.1”作为ip地址。
[0071]
在可实现中继器4b与计算机4a之间的通信的网络中,作为一例,对中继器4b分配“192.168.2.254/24”作为ip地址。对计算机4a分配“192.168.2.1/24”作为ip地址。
[0072]
<b.cpu单元的装置结构>
[0073]
图3为表示cpu单元100的装置结构的一例的示意图。cpu单元100包括处理器102、主存储器104、贮存器106、信息系网络控制器108、控制系网络控制器110、单元间总线控制器112、本地总线控制器114、通用串行总线(universal serial bus,usb)控制器116及存储卡接口118。这些组件经由处理器总线120而连接。
[0074]
处理器102相当于执行标准控制的控制运算的运算处理部,包含cpu或图形处理器(graphics processing unit,gpu)等。作为处理器102,可采用具有多个核的结构,也可配置多个处理器102。这样,cpu单元100含有一个或多个处理器102、以和/或者具有一个或多个核的处理器102。处理器102读出保存于贮存器106的程序,在主存储器104展开并执行,由此实现与控制对象相应的控制运算、及后述那样的各种处理。
[0075]
主存储器104包含动态随机存取存储器(dynamic random access memory,dram)或静态随机存取存储器(static random access memory,sram)等易失性存储装置等。贮存器106例如包含固态驱动器(solid state drive,ssd)或硬盘驱动器(hard disk drive,hdd)等非易失性存储装置等。
[0076]
在贮存器106,保存处理器102执行的各种程序及执行程序所需要的各种数据。
[0077]
信息系网络控制器108经由信息系网络nw1(参照图2)而中介与hmi20的通信。作为信息系网络nw1,例如优选以太网工业协议(ethernet/ip,注册商标)等保证定时性的网络协议。
[0078]
控制系网络控制器110经由控制系网络nw2(参照图2)而中介与现场装置群40的通信。作为控制系网络nw2,例如优选以太网控制自动化技术(ethercat,注册商标)等保证定时性的网络协议。
[0079]
单元间总线控制器112为用于与其他单元以可进行数据通信的方式连接的器件。实施方式1中,经由cpu单元100的单元间总线控制器112而连接中继单元200及电源单元300。作为单元间总线控制器112,例如可采用按照众所周知的数据传输标准(例如外围组件快速互连(pci express))等的器件。
[0080]
本地总线控制器114经由未图示的本地总线而中介与直接安装于cpu单元100的输入输出单元之间的通信。
[0081]
usb控制器116经由usb连接而在与支持装置30等之间互换数据。
[0082]
存储卡接口118受理作为可装卸的记录介质的一例的存储卡118a。存储卡接口118可对存储卡118a写入数据,从存储卡118a读出各种数据。
[0083]
<c.cpu单元的软件结构>
[0084]
图4为表示cpu单元100的软件结构的示意图。图4中,表示用于提供实施方式1的各种功能的、软件群的一例。这些软件群所含的命令码保存于贮存器106,在适当的时机被读出,由cpu单元100的处理器102执行。
[0085]
作为由cpu单元100执行的软件,基本上包含操作系统(operating system,os)1062、系统程序1064及用户程序1066。
[0086]
os 1062是根据cpu单元100的计算机架构而设计,提供用于由处理器102执行系统程序1064及用户程序1066的、基本的执行环境。os 1062典型而言由控制器的厂商或专业的软件公司等提供。
[0087]
系统程序1064为用于提供作为控制器10的功能的软件群。具体而言,系统程序1064包含调度程序642、顺序命令程序644、输入输出处理程序646及访问处理程序648。系统程序1064所含的各程序典型而言由控制器的厂商或专业的软件公司等提供。
[0088]
用户程序1066是根据用户的控制目的而制作。实施方式1中,用户程序1066例如在支持装置30中生成。用户程序1066从支持装置30经由usb电缆转送至cpu单元100,保存于贮存器106。
[0089]
用户程序1066与顺序命令程序644协作,实现用户的控制目的。即,用户程序1066通过利用由顺序命令程序644所提供的命令、函数、功能模块等,从而实现所编程的动作。
[0090]
调度程序642按照预定的优先级使处理器102执行程序。程序包含保证执行时机的必要性高的程序、及保证执行时机的必要性低的程序。例如,用于使多个控制装置协作运行的程序的、保证执行时机的必要性高。另一方面,用于进行通信设定的程序的、保证执行时机的必要性低。保证执行时机的必要性高的程序被设定为以恒定周期反复执行的恒定周期任务。相对于此,保证执行时机的必要性低的程序是以不妨碍被设定为恒定周期任务的程序的执行的方式,在不执行恒定周期任务的、处理器102的空余时间执行。另外,此处所谓“任务”,是指成为分配计算资源(computing resource)的控制的对象的、基本单位。调度程序642针对处理器102执行的各程序,控制处理开始及处理中断、以及处理中断后的处理再次开始。
[0091]
顺序命令程序644包含命令码群,此命令码群用于伴随用户程序1066的执行而调出用户程序1066内所指定的顺序命令的实体,实现所述命令的内容。
[0092]
输入输出处理程序646为用于在与连接于控制器10的现场机器之间,管理输入数据的获取及输出数据的发送的程序。
[0093]
访问处理程序648包含命令码群,此命令码群用于伴随用户程序1066的执行而实现进行通信设定所需要的处理。
[0094]
<d.支持装置的装置结构>
[0095]
图5为表示支持装置30的装置结构的一例的示意图。作为一例,支持装置30是使用按照通用架构的硬件(例如通用个人计算机)而实现。
[0096]
支持装置30包含处理器31、主存储器32、输入部33、输出部34、贮存器35、光学驱动
器36及作为通信接口的一实施例的usb控制器37。这些组件经由处理器总线38而连接。
[0097]
处理器31包含cpu或gpu等,读出保存于贮存器35的程序,在主存储器32展开并执行,由此实现后述那样的各种处理。
[0098]
主存储器32包含dram或sram等易失性存储装置等。贮存器35例如包含hdd或ssd等非易失性存储装置等。
[0099]
在贮存器35,保存在制作用户程序1066时所利用的各种数据、及用于支持用户程序1066的开发的程序。
[0100]
输入部33包含键盘或鼠标等,受理对支持装置30的用户操作。
[0101]
输出部34包含显示器、各种指示器、打印机等,输出来自处理器31的处理结果等。实施方式1中,输出部34包含显示器。
[0102]
usb控制器37经由usb连接而进行与cpu单元100等之间的数据的互换。
[0103]
支持装置30具有光学驱动器36,从计算机可读取的非暂时性地保存程序的记录介质36a(例如数字多功能光盘(digital versatile disc,dvd)等光学记录介质)读取其中所保存的程序,并安装于贮存器35等。
[0104]
支持程序354或功能块400等也可经由计算机可读取的记录介质36a而安装于支持装置30,但也能以从网络上的服务器装置等下载的形式安装。而且,本实施方式的支持装置30提供的功能也有时以利用os提供的模块的一部分的形式实现。
[0105]
图5中表示了通过处理器31执行程序从而提供作为支持装置30所需要的功能的结构例,但也可使用专用的硬件电路(例如特殊应用集成电路(application specific integrated circuit,asic)或现场可编程门阵列(field

programmable gate array,fpga)等)来安装这些所提供的功能的一部分或全部。
[0106]
<e.支持装置30的软件结构>
[0107]
图6为表示支持装置30的软件结构的示意图。图6中表示用于提供实施方式1的各种功能的、软件群的一例。这些软件群所含的命令码在适当的时机被读出,由支持装置30的处理器31执行。
[0108]
由支持装置30执行的软件至少包含os 352及支持程序354。这些程序保存于贮存器35。而且,执行程序所利用的数据包含功能块库(以下也称为“fb库”)356及指令库358,保存于贮存器35。
[0109]
os 352提供可执行支持程序354的基本环境。支持程序354为用于实现支持装置30提供的功能的程序,且提供用于制作用户程序1066的功能。
[0110]
fb库356为功能块的库,所述功能块为针对用于生成用户程序1066的每个命令信息所规定的程序零件。fb库356包含与通信的设定所需要的命令对应的功能块400。实施方式1中,例如与将制造现场2和远程点4之间的vpn设定写入中继单元200的命令对应的功能块、与将写入至中继单元200的vpn设定读出的命令对应的功能块、及与使写入至中继单元200的设定起效的命令对应的功能块等包含于fb库356。
[0111]
用户可经由输入部33而输入执行功能块400所需要的参数,通过将输入了参数的功能块400组合从而制作用户程序1066。
[0112]
指令库358为转换信息582的库,所述转换信息582包含中继单元200与cpu单元100之间进行的指令收发的协议。更具体而言,协议为包含指令的收发顺序、及指令的种类的信
息。cpu单元100按照转换信息582所含的协议对中继单元200进行通信设定。
[0113]
转换信息582是按中继单元200支持的指令的种类,作为指令群580而保存于指令库358。例如,用于转换为a公司的指令的指令群580a及用于转换为b公司的指令的指令群580b等保存于指令库358。各指令群580分别包含将功能块400转换为对应的指令的、转换信息582。
[0114]
这些功能块400及指令库358例如以控制器的厂商或专业的软件公司等保存于记录介质36a的状态流通。用户通过将保存于记录介质36a的功能块400及指令库358安装于支持装置30,从而利用功能块400及指令库358。
[0115]
支持程序354包含编辑器541、编译器542、调试器543、图形用户接口(graphical user interface,gui)模块544、模拟器545及数据保存部550。
[0116]
编辑器541提供用于制作用户程序1066的源程序的输入及编辑等功能。更具体而言,编辑器541除了提供用户操作包含键盘或鼠标的输入部33制作用户程序1066的源程序的功能以外,还提供所制作的源程序的保存功能及编辑功能。编辑器541根据设计者的操作,使用从fb库356所选择的功能块400,制作用户程序1066的源程序。
[0117]
编译器542提供下述功能,即:对源程序进行编译,生成可由控制器10执行的程序形式的用户程序1066。
[0118]
调试器543提供用于对用户程序1066的源程序进行调试的功能。
[0119]
gui模块544具有提供用户接口画面的功能,所述用户接口画面用于由设计者输入各种数据或参数等。所述用户接口画面显示于包含显示器的输出部34。
[0120]
模拟器545构建在支持装置30内模拟控制器10中的程序执行的环境。
[0121]
在数据保存部550,保存所制作的用户程序1066。所述用户程序1066包含一个或多个功能块400。保存于数据保存部550的用户程序1066经由usb电缆被送至cpu单元100,并进行设定。此时,与用户程序1066所含的功能块400对应的转换信息582也一并被送至cpu单元100,并进行设定。另外,实施方式1中,支持装置30从各指令群580分别提取与功能块400对应的转换信息582,并将所提取的所有转换信息582送至cpu单元100。
[0122]
由此,可由工厂自动化(factory automation,fa)的领域中利用的iec程序来制作用于进行通信设定的用户程序。其结果,iec程序的设计者即便不进行用于新设定通信功能的学习,也可制作用于进行通信功能的设定的用户程序。
[0123]
另外,图6所示的示例中,fb库356及指令库358保存于支持装置30的贮存器35,但fb库356及指令库358中的至少一者也可保存于可经由网络与支持装置30连接的服务器装置。
[0124]
<f.通过执行通信设定的程序从而实现的功能结构>
[0125]
图7为表示通过执行通信设定的程序从而实现的控制器10的功能结构的图。
[0126]
图7所示的各种功能是通过下述方式实现,即:用户程序1066所含的通信设定相关的功能块400的执行条件成立,功能块400所示的命令由处理器102执行。
[0127]
cpu单元100包含恒定周期任务执行部140、通信设定部160及转换信息确定部180。中继单元200包含设定信息保存部220及设定信息更新部240。
[0128]
恒定周期任务执行部140以恒定周期反复执行恒定周期任务。恒定周期任务执行部140至少进行是否执行功能块400所示的命令的判断。若功能块400所示的命令的执行条
件成立,则恒定周期任务执行部140向通信设定部160指示功能块400所示的命令的执行。
[0129]
转换信息确定部180确定连接于cpu单元100的中继单元200可解释的指令,并确定用于转换为所确定的指令的转换信息582。更具体而言,转换信息确定部180从中继单元200获取中继单元200的器件信息260,基于器件信息260来确定转换信息582。器件信息260例如设想介质访问控制(media access control,mac)地址。
[0130]
更具体而言,在从支持装置30安装用户程序1066时,从各指令群580提取与用户程序1066所含的一个或多个功能块400各自对应的转换信息582,安装于cpu单元100。将所述转换信息582的集合作为转换信息群182。转换信息确定部180根据转换信息群182,基于通信设定部160执行的功能块400、及所确定的器件信息260来确定转换信息582。例如,在连接于cpu单元100的中继单元200解释a公司的指令,通信设定部160执行功能块a的命令的情况下,转换信息确定部180确定转换信息aa。
[0131]
通信设定部160基于转换信息确定部180所确定的转换信息582,通过在与中继单元200之间进行指令的互换从而执行功能块400所示的命令。
[0132]
恒定周期任务执行部140以恒定周期执行任务,此任务中包含获取通信设定部160的命令的执行状况的处理。即,恒定周期任务执行部140监测通信设定部160进行的命令的执行。
[0133]
中继单元200的设定信息保存部220保存着通信设定相关的信息。在中继单元200与cpu单元100之间互换指令的期间中,保存于设定信息保存部220的通信设定相关的信息(设定信息222)改变。
[0134]
中继单元200的设定信息更新部240与通信设定部160进行指令的互换,在进行指令互换的期间中,在设定信息保存部220保存设定信息222。
[0135]
在制造现场2,以cpu单元100为中心而控制现场装置群40等装置。实施方式1中,cpu单元100在转换为可与作为中继装置的中继单元200互换的指令后,与中继单元200之间进行数据的互换,进行中继单元200的通信设定。即,实施方式1的通信系统1可从作为控制现场装置群40等装置的控制装置的cpu单元100,改变作为中继通信的中继装置的中继单元200的状态。
[0136]
因此,在制造现场2工作的用户即便未掌握针对安全或通信的专业知识,也可与控制现场装置群40等的装置时同样地改变作为中继装置的中继单元200的状态。实施方式1中,cpu单元100可变更作为中继装置的状态的、通信的设定。而且,实施方式1中,作为从cpu单元100改变中继单元200的状态的方法,采用执行用户程序等方法。
[0137]
<g.程序例>
[0138]
(g1.用户程序)
[0139]
参照图8及图9,对功能块的使用例进行说明。图8及图9为表示组入了通信设定的功能块的用户程序1066的示例的图。
[0140]
图8及图9所示的用户程序1066由梯形图程序规定。所述用户程序1066规定以如下方式进行vpn的设定,即:在制造现场2产生异常而控制器10被设定为维护模式时,可从远程点4进行维护。
[0141]
用户程序1066是由输入要素in1~in6、功能块fb1~fb3、结构文本st及输出要素out1~out5规定。
[0142]
功能块fb1被称为“rc_setvpnserversetting”。功能块fb1表示将制造现场2与远程点4之间的vpn设定写入中继单元200的命令。功能块fb1包含:输入部412a~412k,受理要写入中继单元200的设定条件的输入;以及输出部414a~414d,用于输出进行写入处理的结果。
[0143]
输入部412b~412k表示vpn的设定条件,按照输入至输入部412b~412k的设定条件来规定vpn。
[0144]
以“execute”表示的输入部412a受理用于指定是否执行写入处理的设定。作为一例,输入部412a受理“真(true)”(开(on))或“假(false)”(关(off))的输入。只要在输入部412a输入“假(false)”,则不执行写入处理。图8所示的示例中,在输入要素in3的值成为“真(true)”(通(on))时执行写入处理。
[0145]
以“vpnserveraddress”表示的输入部412b受理用于指定用作vpn服务器的ip地址的输入。此ip地址为对中继单元200预先设定的一个或多个ip地址中的一个ip地址。cpu单元100按照输入至输入部412b的ip地址,确定进行通信设定的对象。图8所示的示例中,在输入部412b输入“192.168.1.254/24”,cpu单元100将对中继单元200分配的ip地址中的“192.168.1.254/24”用作vpn服务器用的地址。
[0146]
以“loginid”表示的输入部412c受理用于进行vpn的设定的用户id的输入。以“loginpassword”表示的输入部412d受理用于进行vpn的设定的密码的输入。用户id及密码为对中继单元200进行远程访问时所需要的信息。
[0147]
以“vpnseverconfigname”表示的输入部412e受理可任意设定的vpn服务器的名称的输入。
[0148]
以“vpnclientaddress”表示的输入部412f受理用于指定ip地址的输入,所述ip地址是在现场网络的外部的网络上对访问中继单元200的中继器4b所分配。图8所示的示例中,在输入部412f输入“20.0.0.1”,允许从被分配了“20.0.0.1”的ip地址的中继器4b访问中继单元200。
[0149]
以“presharedkey”表示的输入部412g受理用于指定预共享密钥的输入,所述预共享密钥用于决定是否允许远程访问。
[0150]
以“authenticationalgorithm”表示的输入部412h受理用于指定认证算法的输入,所述认证算法是在所设定的vpn中利用。认证算法例如设想消息摘要算法第五版(message digest algorithm 5,md5)、安全散列算法(secure hash algorithm,sha)

1、哈希运算消息认证码(hash

based message authentication code,hmac)等。
[0151]
以“encryptionalgorithm”表示的输入部412i受理用于指定加密算法的输入,所述加密算法是在所设定的vpn中利用。加密算法例如设想数据加密标准(data encryption standard,des)、3des、高级加密标准(advanced encryption standard,aes)等。
[0152]
以“destinationipaddress”表示的输入部412j受理用于指定机器的ip地址的输入,所述机器访问所设定的vpn。图8所示的示例中,在输入部412j输入“192.168.2.0”,中继单元200允许被分配了“192.168.2.0”的机器访问。
[0153]
以“destinationnetworkmask”表示的输入部412k受理用于指定输入至输入部412j的ip地址的网络掩码的输入。
[0154]
在正常执行写入处理的情况下,表示正常结束的信号从以“完成(done)”表示的输
出部414a输出。在写入处理的执行过程中,表示写入处理中的信号从以“忙碌(busy)”表示的输出部414b输出。在未正常写入vpn设定的情况下,表示异常结束的信号从以“错误(error)”表示的输出部414c输出。此时,还将用于识别错误内容的错误id从以“errorid”表示的输出部414d输出。
[0155]
功能块fb2被称为“rc_applyvpnserversetting”。功能块fb2表示使写入至中继单元200的vpn设定起效的命令。功能块fb2包含:输入部422a~422e,受理用于指定起效的vpn设定的输入;以及输出部424a~424d,用于输出进行起效处理的结果。
[0156]
输入部422b~424e受理的信息为用于确定起效的vpn服务器的信息。输入部422b~424e各自受理的详细信息与输入部412b~414e受理的信息相同,因而省略说明。而且,输出部424a~424d输出的信息与输出部414a~414d输出的信息相同,因而省略说明。
[0157]
功能块fb3被称为“rc_getvpnserversetting”。功能块fb3表示将写入至中继单元200的vpn设定读出的命令。功能块fb3包含:输入部432a~432e,受理用于指定读出对象的vpn设定的输入;以及输出部434a~434j,用于输出进行起效处理的结果。
[0158]
输入部432a~434e受理的信息与输入部412a~414e受理的信息相同,因而省略说明。而且,输出部434a~434d输出的信息与输出部414a~414d输出的信息相同,因而省略说明。输出部414e~414j输出的信息为输入至输入部432a~434e而指定的vpn设定的结果。伴随从输出部414e~414j全部输出信息,表示正常结束的信号从以“完成(done)”表示的输出部414a输出。
[0159]
结构文本st被称为“rc_checkvpnserversetting”。结构文本st表示用于判定写入的vpn设定的信息、与读出的vpn设定的信息是否一致的命令。将结构文本st所示的命令作为设定对照处理。更具体而言,结构文本st在输入至功能块fb1的输入部412f~输入部412k的各信息、与从功能块fb3的输出部432e~432j输出的各信息一致的情况下,将变量“checkvpndone”的值设为“真(true)”(开(on)),只要任一个不一致,则将变量“checkvpndone”的值设为“假(false)”(关(off))。
[0160]
输入要素in1~in6的值根据所分配的变量而变化。更具体而言,对输入要素in1分配变量“status_err”。变量“status_err”为布尔(bool)型,初始值为“假(false)”(=关(off))。变量“status_err”的值基于控制器10的状态成为错误状态而变化为“真(true)”(开(on))。其他情况下,变量“status_err”的值成为“假(false)”(关(off))。
[0161]
对输入要素in2分配变量“mode_maintenance”。变量“mode_maintenance”为布尔(bool)型,初始值为“假(false)”(=关(off))。变量“mode_maintenance”的值基于用户操作hmi20使控制器10变化为执行远程维护的模式,而变化为“真(true)”(开(on))。其他情况下,变量“mode_maintenance”的值成为“假(false)”(关(off))。另外,变化为执行远程维护的模式的契机不限于来自hmi20的操作,也可基于对设于控制器10的未图示的开关的操作。
[0162]
对输入要素in3分配变量“setvpnflag”。变量“setvpnflag”为布尔(bool)型,初始值为“假(false)”(=关(off))。变量“setvpnflag”的值关联于输出要素out1。基于从输出要素out1输出“真(true)”(开(on)),而变化为“真(true)”(开(on))。其他情况下,变量“setvpnflag”的值成为“假(false)”(关(off))。另外,输出要素out1在输入要素in0及输入要素in1均成为“真(true)”(开(on))时,输出“真(true)”(开(on)),其他情况下,输出“假(false)”(关(off))。
[0163]
对输入要素in4分配变量“setvpndone”。变量“setvpndone”为布尔(bool)型,初始值为“假(false)”(=关(off))。变量“setvpndone”的值关联于输出要素out2。基于从输出要素out2输出“真(true)”(开(on)),而变化为“真(true)”(开(on))。其他情况下,变量“setvpndone”的值成为“假(false)”(关(off))。另外,若从功能块fb1的输出部414a输出表示正常结束的信号,则输出要素out2从“假(false)”(=关(off))变化为“真(true)”(开(on))。
[0164]
对输入要素in5分配变量“applyvpndone”。变量“applyvpndone”为布尔(bool)型,初始值为“假(false)”(=关(off))。变量“applyvpndone”的值关联于输出要素out3。基于从输出要素out3输出“真(true)”(开(on)),而变化为“真(true)”(开(on))。其他情况下,变量“applyvpndone”的值成为“假(false)”(关(off))。另外,若从功能块fb2的输出部424a输出表示正常结束的信号,则输出要素out3从“假(false)”(=关(off))变化为“真(true)”(开(on))。
[0165]
对输入要素in6分配变量“getvpndone”。变量“getvpndone”为布尔(bool)型,初始值为“假(false)”(=关(off))。变量“getvpndone”的值关联于输出要素out4。若从输出要素out4输出“真(true)”(开(on)),则变化为“真(true)”(开(on))。其他情况下,变量“getvpndone”的值成为“假(false)”(关(off))。另外,若从功能块fb3的输出部434a输出表示正常结束的信号,则输出要素out4从“假(false)”(=关(off))变化为“真(true)”(开(on))。
[0166]
对输出要素out5分配变量“checkvpndone”。变量“checkvpndone”在结构文本st中,写入的vpn设定的信息、与读出的vpn设定的信息完全一致的情况下,成为“真(true)”(开(on)),在至少一个信息不一致的情况及未执行结构文本st的程序时,成为“假(false)”(关(off))。
[0167]
(g2.执行时机)
[0168]
图10为表示执行图8及图9所示的用户程序时的、恒定周期任务执行部140及通信设定部160执行处理的时机的图。
[0169]
恒定周期任务执行部140按照控制器10的控制周期反复执行用户程序1066。恒定周期任务执行部140中执行的一系列处理在每个控制周期t必定执行一周期。恒定周期任务执行部140执行的一系列处理(称为优先处理142)中,包含i/o刷新处理144。i/o刷新处理144中,更新变量的值。
[0170]
恒定周期任务执行部140通过执行i/o刷新处理144从而更新变量的值,在随后的处理中,判断通信设定的处理的执行条件是否成立。在通信设定的处理的执行条件成立的情况下,通信设定部160在优先处理142的执行完成后,进行执行条件成立的通信设定的处理。若下一周期开始,则通信设定部160将执行中的处理中断,然后若优先处理142的执行再次完成,则再次开始中断的处理。
[0171]
图10所示的示例中,在时机t1输出错误信号,在时机t2设定为维护模式。若将设定为维护模式的时机t2的控制周期t设为第一周期,则通过第二周期中执行的i/o刷新处理144,变量“setvpnflag”从“假(false)”(=关(off))变化为“真(true)”(开(on))。由此,图8的功能块fb1所示的写入处理的执行条件成立。
[0172]
写入处理为通信设定部160执行的处理。通信设定部160从第二周期的优先处理
142完成的时机t3起开始写入处理,在第三周期开始的时机t4中断写入处理。然后,从第三周期的优先处理142完成的时机t4起再次开始中断的写入处理。
[0173]
通信设定部160在写入处理的执行过程中输出表示处理执行中的信号,若处理正常结束,则输出表示正常结束的信号。图10所示的示例中,写入处理在时机t5结束。
[0174]
若写入处理在时机t5结束,则通过第n+1周期执行的i/o刷新处理144,变量“setvpndone”从“假(false)”(=关(off))变化为“真(true)”(开(on))。由此,图8的功能块fb2所示的起效处理的执行条件成立。
[0175]
这样,图8及图9所示的用户程序1066的处理是由通信设定部160与恒定周期任务执行部140协作进行。另外,结构文本st所示的设定对照处理完成以后,在其他执行条件成立之前,通信设定部160不进行处理。
[0176]
(g3.cpu单元与中继单元之间的指令互换)
[0177]
对执行图8及图9所示的用户程序时在cpu单元100的通信设定部160与中继单元200的设定信息更新部240之间进行的、具体的指令互换进行说明。图11为表示通信设定部160与设定信息更新部240之间的指令互换的图。图11中,作为通信设定处理的一例而对写入处理进行说明。另外,图11中,省略图10所示那样的处理的中断、再次开始的记载。而且,步骤在下文中省略为“s]。
[0178]
如上文所述,通信设定部160基于转换信息确定部180所确定的转换信息582,将功能块400所示的命令转换为可在与中继单元200之间互换的指令,在与中继单元200之间进行指令的互换,执行功能块400所示的命令。
[0179]
更具体而言,写入处理的执行条件成立(s100),通信设定部160从恒定周期任务执行部140有关写入处理的执行而接收指示(s102)。通信设定部160确定与所接收的指示、也就是执行的功能块400的种类对应的转换信息582(s104)。更具体而言,通信设定部160向转换信息确定部180指示确定转换信息582,从转换信息确定部180接收确定结果,由此确定转换信息582。
[0180]
通信设定部160按照s104中确定的转换信息582来解释功能块fb1所示的命令,决定指令的种类、及处理顺序等处理的内容(s106)。
[0181]
通信设定部160按照s106中决定的事项,进行与中继单元200之间的指令的互换。图11所示的示例中,执行s108~s128的处理。另外,s108~s128的处理为一例,此处理也有时视中继单元200的机种而不同,而且,有时进行互换时所利用的指令(语言)也不同。
[0182]
通信设定部160例如对设定信息更新部240进行能否利用新设定的用户名、密码的确认(s108)。
[0183]
设定信息更新部240基于保存于设定信息保存部220的信息来确认能否利用新设定的用户名、密码,将确认结果通知通信设定部160(s110)。
[0184]
通信设定部160基于从设定信息更新部240通知的确认结果,判定是否有异常(s112)。通信设定部160在有异常的情况下(s112中为是(yes)),更具体而言,在无法利用新设定的用户名、密码的情况下,输出表示异常结束的信号及所产生的异常(s114)。通信设定部160在无异常的情况下(s112中为否(no)),更具体而言,在可利用新设定的用户名、密码的情况下,对设定信息更新部240进行能否将所指定的ip地址用作vpn服务器的确认(s116)。
[0185]
设定信息更新部240基于保存于设定信息保存部220的信息及对中继单元200分配的端口的信息,来确认能否将所指定的ip地址用作vpn服务器,将确认结果通知通信设定部160(s118)。
[0186]
通信设定部160基于从设定信息更新部240通知的确认结果,判定是否有异常(s120)。通信设定部160在有异常的情况下(s120中为是(yes)),更具体而言,在无法新利用ip地址的情况下,输出表示异常结束的信号及所产生的异常(s122)。通信设定部160在无异常的情况下(s120中为否(no)),更具体而言,在可新利用ip地址的情况下,对设定信息更新部240进行设定内容的信息的写入指示(s124)。
[0187]
设定信息更新部240将设定内容的信息保存于设定信息保存部220,向通信设定部160通知保存完成(s126)。
[0188]
通信设定部160输出表示处理正常结束的信号(s128)。恒定周期任务执行部140收到处理正常结束,使输出要素out2从“假(false)”(=关(off))变化为“真(true)”(开(on))。
[0189]
由此,功能块fb2的执行条件成立,执行后续的处理。另外,图11中,功能块fb2以后的处理省略。
[0190]
这样,通信设定部160为了执行用户所选择的一个命令(功能块),而规定在与设定信息更新部240之间执行的处理的顺序等,按照所规定的顺序来执行处理,由此执行所选择的命令。
[0191]
<h.通信设定的具体例>
[0192]
图12为支持装置30中准备的命令的一例。实施方式1中,将向中继单元200写入vpn设定的命令、使写入至中继单元200的vpn设定起效的命令、及将写入至中继单元200的vpn设定读出的命令作为一例进行说明。作为需要在与中继单元200之间进行数据的互换的命令,设想图12所示的命令。
[0193]
图12中,针对各设定对象,以“打钩符号”表示对所述设定对象所设想的命令。而且,针对各设定对象,将所述设定对象中设定中所需要的参数示于设定参数的列。
[0194]
具体而言,作为可从cpu单元100对中继单元200进行设定的事项,可举出:ip地址、ip地址路由(通信路径)、通信端口、端口镜像、网络地址转换(network address translation,nat)或网络地址端口转换(network address port translation,napt)、虚拟局域网(virtual lan,vlan)、服务质量(quality of service,qos)、用户认证、访问控制列表(access control list,acl)、防火墙设定、电子证书、状态、日志、报告通知等。
[0195]
关于设定内容,设有获取(get)、写入(set)、反映(apply)、一览获取(getlist)、清除(clear)、及有效/无效(enable/disable)。获取(get)意指获取设定事项相关的信息。写入(set)意指写入设定事项相关的信息。反映(apply)意指反映设定事项相关的信息。一览获取(getlist)意指获取设定事项相关的信息的一览。例如,若执行一览获取(getlist)的命令,则可从连接于中继装置的所有机器获取设定事项的相关信息,或可获取设定事项相关的所有信息。清除(clear)意指删除设定事项相关的信息或回到初始值。有效/无效(enable/disable)意指所设定的事项的有效/无效。
[0196]
参数为执行命令时输入或输出的信息。ip地址相关的设定中,例如将ip地址、网络掩码、默认网关、域名系统(domain name system,dns)服务器、主机名等规定为参数。而且,
作为针对ip地址所准备的命令,例如可准备获取、写入、反映、一览获取及清除。
[0197]
ip地址路由相关的设定中,例如将ip路由器表等规定为参数。而且,作为针对ip地址路由所准备的命令,例如可准备获取、写入、反映、一览获取及清除。
[0198]
通信端口相关的设定中,将通信速度、双向通信(duplex)的方式等规定为参数。作为针对通信端口所准备的命令,例如可准备获取、写入、反映、一览获取及清除。
[0199]
端口镜像相关的设定中,例如将镜像端口、监控端口等规定为参数。作为针对端口镜像所准备的命令,例如可准备获取、写入、反映、一览获取、清除及有效/无效。
[0200]
nat或natp相关的设定中,例如将所使用的ip地址、表示转换规则的端口转换表等规定为参数。作为针对nat或natp所准备的命令,例如可准备获取、写入、反映、一览获取、清除及有效/无效。
[0201]
vlan相关的设定中,例如将vlan id、vlan的端口号(vlan portnumber)、被设定为访问端口或干道端口的端口号等规定为参数。作为针对vlan所准备的命令,例如可准备获取、写入、反映、一览获取、清除及有效/无效。
[0202]
qos相关的设定中,例如将转送帧时的优先级规定为参数。作为针对qos所准备的命令,例如可准备获取、写入、反映、一览获取、清除及有效/无效。
[0203]
用户认证相关的设定中,例如将用户名或密码等中继单元200的用户信息规定为参数。作为针对用户认证所准备的命令,例如可准备获取、写入、反映、一览获取、清除及有效/无效。
[0204]
作为针对acl所准备的命令,例如可准备获取、写入、反映、一览获取、清除及有效/无效。
[0205]
作为针对防火墙设定所准备的命令,例如可准备获取、写入、反映、一览获取、清除及有效/无效。
[0206]
电子证书相关的设定中,例如将网络机器的电子证书规定为参数。例如,输出电子证书。作为针对电子证书所准备的命令,例如可准备获取、写入、反映、一览获取、清除及有效/无效。
[0207]
状态相关的设定中,例如将中继单元200的状态规定为参数。例如,输出中继单元200的状态。作为针对状态所准备的命令,例如可准备获取、反映、一览获取及有效/无效。
[0208]
日志相关的设定中,例如将中继单元200的日志规定为参数。例如,输出中继单元200的日志。作为针对日志所准备的命令,例如可准备反映、一览获取、清除及有效/无效。
[0209]
报告通知相关的设定中,例如将作为日志的通知目标信息的地址规定为参数。作为针对报告通知所准备的命令,例如可准备获取、写入、反映、一览获取、清除及有效/无效。
[0210]
<i.变形例>
[0211]
(变形例1)
[0212]
实施方式1中,通信系统1包含中继单元200及cpu单元100。通信系统1的结构不限于图1所示的结构。图13为表示通信系统的变形例的图。实施方式1中,中继装置为与作为控制装置的cpu单元100一起构成一个控制器10的中继单元200。另外,中继装置无需构成控制器10,例如也可如图13所示为路由器那样的中继装置200a。图13中的控制器10a为不含中继单元200的结构。
[0213]
而且,也可由包括构成控制装置的功能的cpu、与构成中继装置的功能的cpu的控
制器来构成通信系统。而且,也可通过将多核cpu搭载于控制器从而构成通信系统,所述多核cpu包括构成控制装置的功能的处理器核、与构成中继装置的功能的处理器核。
[0214]
(变形例2)
[0215]
实施方式1中,通信系统1包含hmi20,但也可不包括hmi。例如,通信设定的执行条件基于从hmi20输出的信号而成立,但也可在cpu单元100设置输入部,基于此输入部所受理的搜查而成立。而且,通信设定的执行条件也可与用户的操作无关,而基于控制器10的状态、或从现场网络输出的信号而成立。另外,若变更通信设定,则通信中断,可能对制造现场2造成很大的影响,因而通信设定的执行条件也可通过用户的操作而成立。
[0216]
(变形例3)
[0217]
实施方式1中,cpu单元100包括与中继单元200的机种及命令相应的转换信息582。另外,也可不包括转换信息582,而按中继单元200的机种来准备命令。此时,也可从支持装置30向cpu单元100安装包含与连接于cpu单元100的中继单元200相应的命令的用户程序,而且,也可按中继单元200的机种来准备用户程序,并将所有用户程序安装于cpu单元100,根据所连接的中继单元200的种类来执行用户程序。
[0218]
而且,cpu单元100针对中继单元200的机种,获取中继单元200的器件信息260,并基于器件信息260而确定转换信息582,但也可由用户进行中继单元200的机种的指定。例如,也可使hmi20显示要求确定机种的画面,并基于对hmi20的输入来确定转换信息582。
[0219]
[实施方式2]
[0220]
实施方式1中,中继装置为中继远程点4的网络与cpu单元100之间的通信的装置。中继装置也可为中继制造现场2内的各控制器、与对这些控制器总括进行管理的控制器的开关。图14为表示实施方式2的控制装置的概略结构的图。
[0221]
通信系统1a包含:中继装置200b,为以太网(ethernet)开关;上位控制器100b,管理制造现场2的一个或多个线;以及机器41a~41c,为管理一个制造线的控制器,经由中继装置200b与上位控制器100b连接。上位控制器100b为本案发明的控制装置的一例。机器41a~41c为经由中继装置与控制装置连接的机器的一例。中继装置200b为本案发明的中继装置的一例。
[0222]
中继装置200b包括多个端口210a~210d。另外,中继装置200b所具有的端口数不限于四个,也可为三个以下,而且,也可为五个以上。
[0223]
在端口210a连接着上位控制器100b。在端口210b连接着机器41a,此机器41a为管理制品a用的线的控制器。在机器41a连接着制造制品a所需要的现场装置群40a。在端口210c连接着机器41b,此机器41b为管理制品b用的线的控制器。在机器41b连接着制造制品b所需要的现场装置群40b。在端口210d连接着机器41c,此机器41c为管理制品c用的线的控制器。在机器41c连接着制造制品c所需要的现场装置群40c。
[0224]
上位控制器100b在贮存器106保存将下述三个命令组合而成的结构的用户程序1066a:(1)将与所选择的一个或多个机器之间的通信切断(断线(link

off))、(2)将与所选择的一个或多个机器之间的通信接通(连接(link

on))、(3)确认所接通的通信。而且,贮存器106针对现场装置群40a~40c,分别保存配方1068a~1068c,此配方1068a~1068c包含用于使现场装置群运行的条件。所谓配方,为包含生产顺序、生产品种或适于生产的参数等条件的数据。即,配方1068a包含用于使现场装置群40a运行的条件,所谓此条件,包含用于制
造制品a的生产顺序、生产品种或适于生产的参数等条件。
[0225]
用户程序1066b例如是利用支持装置30而制作,从支持装置30安装于上位控制器100b。而且,配方1068a~1068c也可从支持装置30安装,而且也能以保存于存储卡等存储介质的状态安装于上位控制器100b。
[0226]
上位控制器100b与实施方式1同样地,包括通信设定部160b。通信设定部160b在执行用户程序1066b所含的各命令时,在与中继装置200b之间进行指令的互换。
[0227]
用户程序1066b是以依次进行(1)的命令

配方的更新

(2)的命令

(3)的命令的方式编程。此处,所谓配方,为包含生产顺序、生产品种或适于生产的参数等条件的数据。
[0228]
即,上位控制器100b在用户程序1066b的执行条件成立的情况下,通过与中继装置200b互换数据而切断与端口210b的通信,然后将配方从制品a用的配方切换为制品c用的配方。上位控制器100b切换配方后,通过与中继装置200b互换数据从而新确立与端口210d之间的通信。接着,上位控制器100b进行与机器c之间的通信是否确立的测试,若确认到通信确立,则处理正常结束。
[0229]
这样,通过利用具有通信的切换功能的中继装置200b,并在各端口预先连接机器,从而可容易地进行流水线切换。而且,通过预先将机器连接于中继装置200b,从而在流水线切换时无需将连接机器彼此的线拔掉,可防止连接线的劣化,并且可防止连接错误。
[0230]
§
3附注
[0231]
如以上那样,所述实施方式1、2以及变形例包含以下那样的公开。
[0232]
<结构1>
[0233]
控制装置(100、100a、100a、100b),可经由中继装置(200、200a、200a、200b)与其他装置(4a、41a、41b、41c、41a、41b、41c)通信,且包括:
[0234]
存储部(106、106a),保存有包含至少一个命令(fb1、fb2、fb3)的用户程序(1066、1066a、1066a),所述命令(fb1、fb2、fb3)用于进行经由所述中继装置的通信相关的通信设定;以及
[0235]
通信设定部(160、160a、160b),基于所述命令的执行条件成立,而在与所述中继装置之间进行指令的收发,进行所述命令所示的所述通信设定。
[0236]
<结构2>
[0237]
根据结构1所记载的控制装置,其中,
[0238]
在与所述中继装置之间进行的指令收发的协议视所述中继装置的种类而不同,
[0239]
所述通信设定部按照与所述中继装置的种类相应的协议,在与所述中继装置之间进行指令的收发。
[0240]
<结构3>
[0241]
根据结构2所记载的控制装置,其中,
[0242]
所述存储部按所述中继装置的种类来保存包含所述协议的转换信息(582),
[0243]
所述控制装置还包括:转换信息确定部(180),基于所述中继装置所包括的器件信息(260)来判断所述中继装置的种类,并基于所述中继装置的种类来确定所述转换信息,
[0244]
所述通信设定部基于所述转换信息所确定的所述转换信息,在与所述中继装置之间进行指令的收发。
[0245]
<结构4>
[0246]
根据结构3所记载的控制装置,其中所述转换信息是按所述命令的内容而保存于所述存储部,
[0247]
所述转换信息确定部基于执行条件成立的命令及所述中继装置的种类来确定所述转换信息。
[0248]
<结构5>
[0249]
根据结构1至结构4中任一项所记载的控制装置,其中,
[0250]
所述用户程序包含所述通信设定的命令、及优先级高于所述命令的优先命令,
[0251]
所述控制装置还包括:恒定周期任务执行部(140),以恒定周期反复执行所述优先命令,
[0252]
所述通信设定部以不妨碍所述优先命令的执行的方式来执行所述通信设定的命令。
[0253]
<结构6>
[0254]
根据结构1至结构5中任一项所记载的控制装置,
[0255]
经由所述中继装置可通信地连接于第一机器(41a)及第二机器(41c),所述第一机器(41a)管理第一现场装置群,所述第二机器(41c)管理第二现场装置群,
[0256]
所述存储部保存:第一配方(1068a),包含使所述第一现场装置群运行的条件;以及第二配方(1068c),包含使所述第二现场装置群运行的条件,
[0257]
所述用户程序包含切换连接目标的机器的命令、及根据所述切换而切换配方的命令。
[0258]
<结构7>
[0259]
一种支持装置(30、30a),用于支持控制装置(100、100a、100a、100b)用的用户程序的开发,所述控制装置(100、100a、100a、100b)可经由中继装置(200、200a、200a、200b)与其他装置(4a、40a、40b、40c、41a、41b、41c)通信,且所述支持装置(30、30a)包括:
[0260]
存储部(106、106a),保存至少一个命令(fb1、fb2、fb3),所述命令(fb1、fb2、fb3)用于进行经由所述中继装置的通信相关的通信设定;以及
[0261]
控制部(31),用于将保存于所述存储部的至少一个所述命令组合而生成所述用户程序,
[0262]
所述控制部以在执行所述命令时所述控制装置可在与所述中继装置之间进行指令收发的形式制作所述用户程序。
[0263]
<结构8>
[0264]
一种通信系统,包括:
[0265]
中继装置(200、200a、200a、200b);以及
[0266]
控制装置(100、100a、100a、100b),可经由所述中继装置与其他装置通信,
[0267]
所述控制装置包括:
[0268]
存储部(106、106a),保存有包含至少一个命令(fb1、fb2、fb3)的用户程序(1066、1066a、1066a),所述命令(fb1、fb2、fb3)用于进行经由所述中继装置的通信相关的通信设定;以及
[0269]
通信设定部(160、160a、160b),基于所述命令的执行条件成立,而在与所述中继装置之间进行指令的收发,进行所述命令所示的所述通信设定。
[0270]
应认为本次公开的实施方式在所有方面为例示而非限制性。本发明的范围由权利要求而非所述说明表示,意指包含与权利要求均等的含意及范围内的所有变更。而且意指,实施方式及各变形例中说明的发明只要有可能,则既可单独实施也可组合实施。
[0271]
符号的说明
[0272]
1、1a:通信系统
[0273]
2:制造现场
[0274]
4:远程点
[0275]
4a:计算机
[0276]
4b:中继器
[0277]
10、10a:控制器
[0278]
30、30a:支持装置
[0279]
31、102:处理器
[0280]
32、104:主存储器
[0281]
33:输入部
[0282]
34:输出部
[0283]
35、106:贮存器
[0284]
36:光学驱动器
[0285]
36a:记录介质
[0286]
38、120:处理器总线
[0287]
40、40a、40b、40c:现场装置群
[0288]
41a、41b、41c、41:装置
[0289]
41a、41b、41c、c:机器
[0290]
42:继电器群
[0291]
45:伺服驱动器
[0292]
46:伺服马达
[0293]
100:cpu单元
[0294]
100b:上位控制器
[0295]
100a:控制装置
[0296]
106a:存储部
[0297]
108:信息系网络控制器
[0298]
110:控制系网络控制器
[0299]
112:单元间总线控制器
[0300]
114:本地总线控制器
[0301]
118:存储卡接口
[0302]
118a:存储卡
[0303]
140:恒定周期任务执行部
[0304]
142:优先处理
[0305]
144:i/o刷新处理
[0306]
160、160a、160b:通信设定部
[0307]
180:转换信息确定部
[0308]
182:转换信息群
[0309]
200、200a、200b:中继装置
[0310]
210a、210b、210c、210d:端口
[0311]
220:设定信息保存部
[0312]
222:设定信息
[0313]
240:设定信息更新部
[0314]
260:器件信息
[0315]
300:电源单元
[0316]
354:支持程序
[0317]
356:fb库
[0318]
358:指令库
[0319]
400:功能块
[0320]
541:编辑器
[0321]
542:编译器
[0322]
543:调试器
[0323]
544:gui模块
[0324]
545:模拟器
[0325]
550:数据保存部
[0326]
580、580a、580b:指令群
[0327]
582:转换信息
[0328]
642:调度程序
[0329]
644:顺序命令程序
[0330]
646:输入输出处理程序
[0331]
648:访问处理程序
[0332]
1064:系统程序
[0333]
1066、1066a、1066a、1066b:用户程序
[0334]
1068a、1068b、1068c:配方
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1