控制系统、控制装置及控制方法

文档序号:10694477阅读:355来源:国知局
控制系统、控制装置及控制方法
【专利摘要】控制系统具有:主装置,其包括运算部及通信处理部;以及一个以上从属装置,经由网络与主装置连接。通信处理部管理数据流在网络上的巡回传输,数据流含有主装置及一个以上从属装置进行处理的数据。通信处理部与运算部中的输出处理的运行联动的方式,开始将含有输出数据的第一数据流巡回传输给一个以上从属装置,在比运算部纵的输入处理的运行的开始时刻提前预设期间的时刻,开始巡回传输第二数据流,第二数据流用于获取一个以上从属装置从控制对象收集来的信息。
【专利说明】
控制系统、控制装置及控制方法
技术领域
[0001 ]本发明涉及一种用于控制机械和设备等的动作的控制系统、控制装置及控制方法。
【背景技术】
[0002]典型地,在很多生产现场中使用的机械和设备被由可编程序逻辑控制器(Programmable Logic Controller;以下称为“PLC”)等构成的控制系统控制。这样的控制系统从外部的开关和传感器等收集信息,并输出通过规定的控制运算来获得的指令值。
[0003]很多时候这样的现场信息的收集及指令值的输出是通过网络进行的。例如,在JP特开2001-147905号公报(专利文献I)中公开:至少一个以上CPU模块和多个I/O模块与环型总线连接而形成的可编程序逻辑控制系统。
[0004]现有技术文献
[0005]专利文献
[0006]专利文献1:特开2001-147905号公报

【发明内容】

[0007]发明要解决的问题
[0008]如上所述,当通过网络来传输现场信息和指令值(以下,还称为“10( Input/Output:输入输出)数据”)时,需要一定的传输时间。关于控制程序的运行周期,在传输时间足够小的情况下虽不会引起大问题,但如果欲使程序运行周期变得更短,则传输时间会成为问题。然而,上述特开2001-147905号公报(专利文献I)中并没有提及这样的问题。
[0009]S卩,迫切期望一种能够以更短的周期来反复运行对控制对象进行控制所需的程序的结构。
[0010]解决问题的方法
[0011]根据本发明的一方面提供一种用于对控制对象进行控制的控制系统。控制系统具有:主装置,包括运算部及通信处理部;以及一个以上从属装置,经由网络与主装置连接。通信处理部管理数据流在网络上的巡回传输,数据流含有主装置及一个以上从属装置进行处理的数据。运算部以预设的运行周期反复运行输出处理及输入处理,并且在输出处理及输入处理的非运行期间,反复运行程序运行处理。输入处理包括根据由一个以上从属装置收集的来自控制对象的信息来更新输入数据的处理。输出处理包括生成输出数据的处理,输出数据含有程序运行处理的运行结果。通信处理部以与运算部中的输出处理的运行联动的方式,开始将含有输出数据的第一数据流巡回传输给一个以上从属装置,通信处理部在比运算部中的输入处理的运行的开始时刻提前预设期间的时刻,开始巡回传输第二数据流,第二数据流用于获取一个以上从属装置从控制对象收集的信息。
[0012]优选地,通信处理部在发送了第一数据流后,无论该第一数据流到达主装置与否,发送第二数据流。
[0013]优选地,第一数据流及第二数据流具有相同的数据结构。
[0014]优选地,第一数据流及第二数据流均含有用以从一个以上从属装置中获取信息的指令及输出数据。
[0015]优选地,第二数据流所含的输出数据无效。
[0016]或者,优选地,一个以上从属装置中的各从属装置将第二数据流所含的输出数据作废。
[0017]优选地,主装置基于事先存储的偏移值,以输入处理的运行开始时刻为基准,确定发送第二数据流的时刻。
[0018]优选地,主装置基于网络的初始结构结果,确定偏移值。
[0019]本发明的另一方面的用于对控制对象进行控制控制装置具有运算部以及结合于运算部的通信处理部。控制装置经由网络与一个以上从属装置连接。通信处理部管理数据流在网络上的巡回传输,数据流含有通信处理部本身及一个以上从属装置进行处理的数据。运算部以预设的运行周期反复运行输出处理及输入处理,并且在输出处理及输入处理的非运行期间反复运行程序运行处理。输入处理包括根据由一个以上从属装置收集的来自控制对象的信息来更新输入数据的处理,输出处理包括生成输出数据的处理,输出数据含有程序运行处理的运行结果。通信处理部以与运算部中的输出处理的运行联动的方式,开始将含有输出数据的第一数据流巡回传输给一个以上从属装置,通信处理部在比运算部中的输入处理的运行的开始时刻提前预设期间的时刻,开始巡回传输第二数据流,第二数据流用于获取一个以上从属装置从控制对象收集的信息。
[0020]本发明的另一方面的用于对控制对象进行控制的控制装置的控制方法中,控制装置经由网络与一个以上从属装置连接,对数据流在网络上的巡回传输进行管理,数据流含有该控制装置及一个以上从属装置进行处理的数据。控制方法包括:以预设的运行周期反复运行输出处理及输入处理,并且在输出处理及输入处理的非运行期间反复运行程序运行处理的步骤。输入处理包括根据由一个以上从属装置收集的来自控制对象的信息来更新输入数据的处理。输出处理包括生成输出数据的处理,输出数据含有程序运行处理的运行结果。控制方法还包括:以与输出处理的运行联动的方式,开始将含有输出数据的第一数据流巡回传输给一个以上从属装置的步骤;以及在比输入处理的运行的开始时刻提前预设期间的时刻,开始巡回传输第二数据流的步骤,第二数据流用于获取一个以上从属装置从控制对象收集的信息。
[0021]发明效果
[0022]根据本发明的某些方面的控制系统,能够以更短的周期来反复运行对控制对象进行控制所需的程序。
【附图说明】
[0023]图1是表示本实施方式的PLC系统的整体结构的示意图。
[0024]图2是表示本实施方式的PLC系统中的CPU单元的装置结构的示意图。
[0025]图3是表示本实施方式的PLC系统中的远程装置的装置结构的一例的示意图。
[0026]图4是说明在本实施方式的现场网络上传输的通信帧的图。
[0027]图5是说明本实施方式的PLC系统中的处理概要的图。
[0028]图6是表示本实施方式的PLC系统中使用的通信帧的数据结构的例子的图。
[0029]图7是表示本实施方式的CPU单元的安装例的图。
[0030]图8是表示本实施方式的变形例的PLC系统的整体结构的示意图。
【具体实施方式】
[0031]本发明
[0032]参照附图详细说明本发明的实施方式。此外,对图中相同或等同的部分采用相同的附图标记,不进行反复说明。
[0033]在本实施方式中,作为控制系统的一例,例示出以PLC为中心的系统。但是,作为这样的控制系统不仅可以采用PLC,也可采用将各种工业用计算机为中心的结构。进而,随着技术的发展,当开发出新的处理装置(运算装置)时,可以采用这样的新的处理装置。
[0034]<A.PLC系统的整体结构>
[0035]首先,对控制系统的一方式即本实施方式的PLC系统I的整体结构进行说明。图1是表示本实施方式的PLC系统I的整体结构的示意图。
[0036]参照图1,PLC系统I为用于对控制对象进行控制的控制系统,包括主处理装置2、一个以上的远程装置40_1、40_2、40_3、."、40__以下,有时称为“远程装置40”)。主处理装置2及远程装置40是构成PLC系统I的至少一部分的控制装置,经由现场网络4彼此连接。
[0037]经由现场网络4的通信,主要由主处理装置2控制。具体地,主处理装置2根据预设蚀刻或规则,发送要依次在现场网络4上传输的数据。在以下说明中,要依次在现场网络4上传输的数据称为“通信帧” ο出于这种含义,将主处理装置2称为“主装置”,将远程装置40_1、40_2、40_3、…、40_~各远程装置称为“从属装置”。
[0038]主处理装置2通过运行对控制对象进行控制所需的程序(如后所述般,包含用户程序和系统程序等)来实现以下处理:收集来自外部的开关和传感器等的输入信号(以下,还称为“现场信息”或“IN数据”)的处理;基于收集到的现场信息进行控制运算的处理;将通过控制运算算出的指令值(以下,还称为“OUT数据(输出数据)”)赋给外部继电器或运行器的处理等。
[0039]主处理装置2的装置结构包括CPU单元10、一个以上1单元20和电源单元30XPU单元10及1单元20通过未图示的内部总线以能够相互进行数据通信的方式连接。电源单元30向CPU单元10及1单元20供给恰当电压的电力。
[0040]CPU单元10包括:运算部,运行对控制对象进行控制所需的程序;以及相当于通信处理部的通信控制器110,用于对经由现场网络4与远程装置40的通信进行控制。
[0041]远程装置40接收来自外部的开关和传感器的现场信息,经由现场网络4将所接收到的现场信息值(IN数据(输入数据))发送至主处理装置2。并且,远程装置40将经由现场网络4从主处理装置2接收的指令值(OUT数据)输出至外部的继电器或运行器。或者,远程装置40也可以根据经由现场网络4接收的指令值(OUT数据)来使自身进行动作。例如,作为远程装置40假设为不具有运算功能的单纯的1单元、具有运算功能的1单元、具有如运动控制器(Mot1n controller)这样的运行器的装置等。
[0042]CPU单元10的通信控制器110管理数据流(在本实施方式中还称为“通信帧”)在现场网络4上的巡回传输,该数据流包括主处理装置2(主装置)及一个以上远程装置40(从属装置)所处理的数据。此外,图1中示意性示出所谓环形式的网络,但也可为如后所述的菊花链连接(Daisy chain connect1n)的网络。也就是,作为本实施方式的网络,只要是能够将数据流(通信帧)巡回传输的结构即可,可采用任何结构。典型地,本实施方式的通信处理还可适用于总帧(Total frame)方式的网络。
[0043]<B.CPU单元1的装置结构>
[0044]其次,对本实施方式的PLC系统I中的CPU单元10的装置结构进行说明。图2是表示本实施方式的PLC系统I中的CPU单元1的装置结构的示意图。
[0045]参照图2,CPU单元10除了具有通信处理部即通信控制器110之外,还包括作为运算部的处理器100、主存储器102、非易失性存储器104和内部总线控制器106。这些构成部分能够通过内部总线108相互进行数据通信。
[0046]处理器100运行控制相关的程序。处理器100从非易失性存储器104等中读取所需程序,并加载到主存储器102来运行。作为控制有关的程序,典型地,包括用户程序及系统程序。
[0047]内部总线控制器106通过内部总线109与1单元20连接,并且调解处理器100和1单元20之间的数据(IN数据及OUT数据)交换。
[0048]通信控制器110经由现场网络4与远程装置40连接,并调解CPU单元10与远程装置40之间的数据(IN数据及OUT数据)交换。更具体地,通信控制器110包括共有存储器112、发送缓冲器120、发送电路122、接收缓冲器130和接收电路132。
[0049]发送缓冲器120及发送电路122实现从通信控制器110向外部装置发送帧的处理,接收缓冲器130及接收电路132实现从外部装置向通信控制器110发送帧的处理。通信控制器110具有共有存储器112,处理器100直接访问共有存储器112来写入OUT数据并获取IN数据。也就是,写入共有存储器112的OUT数据被转送至发送缓冲器120,再从发送缓冲器120发送至外部装置。另外,从外部装置获取的IN数据被接收缓冲器130接收之后,再被转送至共有存储器112。
[0050]通信控制器I I O能够用软件来实现其一部分或全部。或者,也可用AS I C(Applicat1n Specific Integrated Circuit:专用集成电路)或FPGA (Field-Programmable Gate Array:现场可编程门阵列)等硬件电路来实现其一部分或全部。
[0051]<C.远程装置40的装置结构>
[0052]接着,对本实施方式的PLC系统I中的远程装置40的装置结构进行说明。图3是表示本实施方式的PLC系统I中的远程装置40的装置结构的一例的示意图。
[0053]作为本实施方式的远程装置40能够采用各种结构,图3中示出具有运算功能及1功能的结构例。参照图3,远程装置40具有运算处理部400、输入电路402、输出电路404和通信控制器410。
[0054]运算处理部400基于经由现场网络4所接收的数据运行预设处理,并将作为处理结果得到的数据经由现场网络4送出。
[0055]输入电路402将从现场侧输入的表示信号值(IN数据)的信息(数字值)输出至运算处理部400。输出电路将由运算处理部400赋给的与OUT数据对应的信号向现场侧输出。
[0056]通信控制器410经由现场网络4与CPU单元10连接,调解远程装置40与CPU单元10之间的数据(IN数据及OUT数据)交换。更具体地,通信控制器410包括共有存储器412、接收缓冲器420、接收电路422、发送缓冲器430和发送电路432。这些构成部分具有与上述共有存储器112、发送缓冲器120、发送电路122、接收缓冲器130及接收电路132(全都是图2)相同的功能,因此不反复详细说明。但是,当通过作为从属装置的一部分的通信控制器410接收通信帧时的处理及发送通信帧时的处理,与通过作为主装置的一部分的CPU单元10的通信控制器110进行的处理不同。
[0057]关于远程装置40(运算处理部400、输入电路402、输出电路404及通信控制器410),可以用软件来实现其功能的全部或一部分,但优选用ASIC或FPGA等硬件电路来实现其一部分或全部。
[0058]<D ?现场网络>
[0059]其次,对现场网络4的通信处理进行说明。
[0060]作为现场网络4中的通信方式,优选能够以预设通信周期进行数据传输的(也就是能够实时通信的)方式。作为一例,作为现场网络4可以采用各种工业用以太网(注册商标)。作为工业用以太网(注册商标)的具体例,例如有EtherCAT(注册商标),PR0FINET IRT,MECHATR0LINK(注册商标)-1II,Powerlink,SERCOS(注册商标)-1II,CIP Mot1n等。在以下说明中,作为典型例,对采用EtherCAT(注册商标)的结构例进行说明。
[0061]图4是说明在本实施方式的现场网络4上传输的通信帧的图。参照图4,通信帧50在现场网络4上巡回传输。也就是,从主装置即主处理装置2发送来的通信帧50依次转送至作为从属装置的远程装置40_1、40_2、40_3。在全部远程装置40中转送后的通信帧50返回主处理装置2。也就是,通信帧50在主处理装置2及远程装置40 j、40_2、40_3、…、40_Ν2间巡回传输。
[0062]更具体地,通信帧50包含帧头51、分配给各从属装置的数据区域52、53、54和帧脚55。帧头51中存储有该通信帧的地址和各种属性信息。数据区域52、53、54各自存储有所对应的从属装置的OUT数据及IN数据。帧脚55中存储有结束代码和校验位等信息。
[0063]主装置将要赋给各从属装置的OUT数据写入分配给对象从属装置的数据区域,生成通信帧50并发送。各从属装置在从上级侧接收通信帧50时,从所接收到的通信帧50中的分配给本地的数据区域中提取要发给本地的OUT数据,并将本地中收集的IN数据写入分配给本地的数据区域,重新生成通信帧50,然后发送至下级侧。这样,随着通信帧50被巡回转送,OUT数据及IN数据被依次更新。
[0064]也就是,本实施方式的现场网络4中,从主装置发送出通信帧50,该通信帧50存储有要发送给全部从属装置的OUT数据(指令值),并且在各从属装置中OUT数据(指令值)及IN数据(反馈值)交换后的通信帧50返回主装置。也就是,通信帧50巡回一次,完成主装置和各从属装置之间的数据交换。
[0065]<Ε ?概要 >
[0066]其次,对本实施方式的PLC系统I的处理概要进行说明。图5是说明本实施方式的PLC系统I中的处理概要的图。图5中的(a)是说明关联技术中CPU单元的程序反复运行的图,图5中的(b)是说明本实施方式的CPU单元10的程序反复运行的图。
[0067]如图5中的(a)所示,在CPU单元10中周期性地反复运行控制相关的程序。以下,将该程序的运行周期称为“PLC系统周期”。所运行的程序包括系统程序60和用户程序70。系统程序60是运行使PLC系统I恰当动作所需的处理的程序,典型地,包括输出处理62、通信处理64和输入处理66。
[0068]输出处理62包含对通过运行用户程序70等所算出的OUT数据进行汇集来生成通信帧50的处理(还称为“成帧处理”等)。通信处理64包括:将生成的通信帧50发送至从属装置的处理;以及从在所有从属装置巡回后返回的通信帧50中收集IN数据的处理。输入处理66基于从返回的通信帧50中收集到的IN数据来更新内部数据(或内部变量)的处理。
[0069]用户程序70是PLC系统I的用户根据目的或用途任意制作的程序,可以根据控制内容、控制对象、控制用途等细分为一个或多个。例如,用户程序70能够包含序列控制逻辑、动作控制逻辑及PID控制逻辑等。另外,针对细分为多个的用户程序,也可设置运行周期和运行的优先等级。此时,针对用户程序设置的运行周期有时会比PLC系统周期长(通常是PLC系统周期的整数倍),此时,该程序横跨多个PLC系统周期运行。图5中的(a)中示出的例中,用户程序70包含A处理72、B处理74和C处理76。
[0070]如图5所述,作为运算部的处理器100以预设运行周期(PLC系统周期)反复运行输出处理62及输入处理66,并在输出处理62及输入处理66的非运行期间反复运行程序运行处理(用户程序70的运行处理)。在此,输入处理66包含根据由一个以上从属装置(远程装置40)收集到的来自控制对象的信息(现场信息或IN数据)更新输入数据的处理。输出处理62包含用于生成输出数据(通信帧或OUT数据)的处理,该输出数据包含程序运行处理(用户程序70的运行处理)的运行结果。
[0071]系统程序60在每一PLC系统周期必运行一次。如图5中的(a)所示,在系统程序60的通信处理64中,如果从主装置发送通信帧50,该通信帧50没有在全部从属装置中巡回之后返回主装置,则无法完成主装置与从属装置之间的OUT数据及IN数据的更新。
[0072]也就是,各从属装置从通信帧50接收指令值(OUT数据),将反馈值(IN数据)加载在通信帧50。此时,直到通信帧50返回为止,主装置处于等待状态。到从主装置发送的通信帧50返回主装置为止所需的时间(以下,还称为“通信帧一巡回周期D”。)根据连接在现场网络4的从属装置的数量而变长。
[0073]PLC系统周期T2相当于运行系统程序60所需的时间(xl+x2+x3)和运行用户程序70所需的时间(χ4+χ5+χ6)的总和。在此,有时用户程序70还包含例如动作控制逻辑(对多轴机械手等的位置(角度)的连续控制逻辑)这样的要求高速运行(以更短的周期反复运行)的处理。因此,迫切期望使PLC系统周期Τ2尽可能短。
[0074]当考虑到这样的PLC系统周期Τ2的高速化时,如图5中的(a)所示,运行系统程序60的通信处理64所需的时间相对变长。这是因为,直到发送的通信帧50返回为止处于等待状
??τ O
[0075]本申请的发明人着眼于这样的通信处理的等待状态,想到通过使处于该等待状态的时间尽量缩短或为零,来缩短PLC系统周期Τ2的新的解决方法。参照图5中的(b)来说明该新的解決方法。
[0076]参照图5中的(b),本实施方式的CPU单元10在一个PLC系统周期内发送主要用于收集IN数据的通信帧50A和与图5中的(a)相同的通信帧50。通过恰当设置该通信帧50A的发送时刻,实际能够忽视通信处理所需时间。也就是,如果在开始运行将从各从属装置收集到的IN数据作为构成要素的输入处理66之前,使用于收集IN数据的通信帧50A返回主装置,则能够立即运行输入处理66。
[0077]在本实施方式的CPU单元10中,能够实际上使通信处理所需的时间为零,所运行的系统程序65实际上只包含输出处理62及输入处理66。也就是,在从主装置发送图5中的(a)所示的关联技术的通信帧50之前,发送用于收集IN数据(反馈值)的通信帧50A。从而,无需等待输入处理66的运行的开始,并且能够将通过输出处理62生成的通信帧50立即发送。
[0078]S卩,通信控制器110(通信处理部)与处理器100(运算部)中的输出处理62的运行联动地,开始使含有OUT数据(输出数据或指令值)的通信帧50(第一数据流)巡回传输给一个以上远程装置40(从属装置)。并且,就通信控制器110(通信处理部)而言,在比处理器100(运算部)输入处理66的运行的开始时刻提前预设期间的时刻,开始巡回传输用于取得一个以上远程装置40(从属装置)从控制对象收集的信息(现场信息或IN数据)的通信帧50A(第二数据流)。此外,发送通信帧50A的开始时刻,只要是所发送的通信帧50A从全部从属装置中收集IN数据,然后在对应的PLC系统周期的输入处理66开始之前返回主装置即可,可以是任何时刻。但是,必须要不影响通信帧50的发送,因此优选将发送之后通信帧50A返回主装置的时刻设置在输入处理66开始之前。
[0079]另外,可以在从主装置发送的通信帧50A被送出后,且返回主装置之前,从主装置发送通信帧50。相反,可以在从主装置送出通信帧50之后,且返回主装置之前,从主装置发送通信帧50A。也就是,只要通信帧50的发送期间和通信帧50A不反复即可,可以任意设置两者的发送开始时刻。
[0080]S卩,无论其中一方通信帧发送之后,该通信帧在现场网络4中巡回一次到达主装置与否,都能够发送另一方的通信帧。换言之,能够彼此独立地确定一方通信帧进行一个巡回后到达主装置的到达时刻与另一方通信帧的发送时刻。
[0081]通过这样的处理,能够使主装置的等待时间实际上变为零。比较图5中的(a)和图5中的(b)中示出的时序图可知,能够使PLC系统周期的长度缩短通信处理64所需的时间。
[0082]<F.发送时刻的确定方法>
[0083 ]接着,对确定通信帧50A的发送时刻的一些方法进行示例。
[0084](I)通过实际测量来确定通信帧一巡回周期的方法
[0085]如图5中的(b)所示,如果已知通信帧50A从主装置中送出并在全部从属装置中巡回一次之后返回主装置为止的时间,即通信帧一巡回周期D2,则能够确定通信帧50A的发送时刻。即,只要在比输入处理66的开始时刻提前通信帧一巡回周期D2的时间的时刻,发送通信帧50AS卩可。
[0086]在处理器100中,控制相关的程序(系统程序65及用户程序70)的运行时刻是已知的,因此能够事先知道输入处理66的开始时刻。因此,以与系统程序65及用户程序70的运行同步的方式,根据通信帧一巡回周期D2的长度来确定通信帧50A的发送时刻。也就是,通信帧一巡回周期D2相当于用于确定通信帧50A的发送时刻的偏移值。
[0087]典型地,通信帧一巡回周期D2是在由主装置及一个以上从属装置构成现场网络4时所运行的初始化处理中被实际测量的。也就是,为了在主装置和一个以上从属装置之间构筑网络,作为初始化处理在装置间交换所需信息,在该信息的交换中,实际测量通信帧一巡回周期D2。所实际测量到的通信帧一巡回周期D2的长度被保存在CHJ单元10内,使用该值,每次确定通信帧50A的发送时刻。也就是,通信帧一巡回周期D2的长度包含在网络初始结构结果中。
[0088]这样,主处理装置2(主装置)基于事先存储的偏移值,以输入处理66的运行开始时刻为基准,确定发送通信帧50A(第二数据流)的时刻。典型地,主处理装置2(主装置)基于网络初始结构结果确定偏移值。
[0089](2)通过仿真来确定通信帧一巡回周期的方法
[0090]如上所述,也可采用仿真等来预测算出通信帧一巡回周期,由此来代替通过实际测量来确定通信帧一巡回周期的方法。更具体地,基于连接在现场网络4的从属装置的数量及各从属装置的种类(能够推定各从属装置的处理能力及数据处理量)等,能够估算出通信帧50A在现场网络4中巡回一次所需的时间。即使不进行实际测量,也能够事先推定通信帧一巡回周期D,因此程序设计变得更容易。
[0091]此时,通信帧一巡回周期D2作为用于确定通信帧50A的发送时刻的偏移值使用。也就是,主处理装置2(主装置)基于事先存储的偏移值,以输入处理66的运行开始时刻为基准,确定发送通信帧50A(第二数据流)的时刻。如上所述,该偏移值(通信帧一巡回周期D2)可以通过仿真来确定。
[0092]此外,在现场网络4中设有通用计时器(计数器),以使主装置及各从属装置之间能够获得同步。因此,可以将发送通信帧50A(第二数据流)的时刻确定为通过该通用计时器(计数器)进行计数的时间(计数值)的绝对值,也可确定为以输入处理66的运行开始时刻为基准的相对值。
[0093]<G.通信帧的数据结构及从属装置中的处理>
[0094]接着,对通信帧50、50A以及从属装置中的处理进行说明。如上所述,基本上,通信帧50A只要能够收集IN数据即可。因此,作为通信帧50A的数据结构,可以采用根据IN数据收集进行特殊化的结构,也可采用与通信帧50相同的结构。
[0095]以下,对通信帧50、50A的一些数据结构以及与各数据结构对应的从属装置中的处理进行说明。
[0096]图6是表示本实施方式的PLC系统I中使用的通信帧的数据结构的例子的图。
[0097](I)通信帧50A采用缩短的通信帧的情况
[0098]图6中的(a)中示出作为通信帧50A的数据结构采用了与通信帧50的数据结构相比被缩短的结构的例子。更具体地,在通常的通信帧50中,在帧头及帧脚之间分别设置有分配给各从属装置的OUT数据及IN数据用数据区域。并且,帧头存储有如下的命令(IN数据刷新命令):指示各从属装置将输入本地的现场信息写入所分配的IN数据的数据区域。各从属装置根据帧头中的IN数据刷新命令,在分配给本地的IN数据的数据区域写入最新的反馈值。同时,各从属装置从分配给本地的OUT数据的数据区域中读取OUT数据(指令值)并运行处理。
[0099]与此相比,在图6中的(a)所示的被缩短的通信帧50A中,OUT数据的数据区域被删除,仅有IN数据的数据区域。帧头上存储有针对各从属装置的IN数据刷新命令,因此各从属装置根据帧头中的IN数据刷新命令,在分配给本地的IN数据的数据区域写入最新的反馈值。从而,能够利用通信帧50A来实现IN数据的收集。并且,由于不存在OUT数据的数据区域,因此可以使通信帧50A的帧长度(数据量)变短。也就是,能够使通信帧50A的通信帧一巡回周期变短,与通信帧5相比时间上的余裕变大。
[0100](2)通信帧50A的OUT数据被设为无效值的情况
[0101]下面,图6中的(b)中示出的通信帧50A表示具有与通信帧50相同的数据结构的例子。也就是,图6中的(b)中示出的例中,通信帧50(第一数据流)及通信帧50A(第二数据流)具有相同的数据结构。
[0102]在此,作为通信帧50A的OUT数据被设为无效值。在图6中的(b)所示的例子中,通信帧50A的OUT数据的各数据区域中存储有“null值(无效值)”,各从属装置即使接收到通信帧50A,也无法读取有效的OUT数据。即,通信帧50A(第二数据流)所含的OUT数据(输出数据)被无效。
[0103]此外,在OUT数据的各数据区域可以不存储“null值(无效值)”,而通过存储不能成为OUT数据的值(例如,负值等),从而被无效。
[0104]通信帧50与通信帧50A的数据结构相同,因此均包含IN数据刷新命令。也就是,通信帧50(第一数据流)及通信帧50A(第二数据流)均包含用于从从属装置获取信息的指令(IN数据刷新命令)及OUT数据(输出数据)。
[0105]这样,通过使通信帧50和通信帧50A之间共用数据结构,能够共用主装置中的通信帧制作处理,在实现本实施方式的处理时,能够避免安装方式变复杂。
[0106](3)声明通信帧50A的OUT数据为无效值的情况
[0107]图6中的(C)中示出通信帧50A具有与通信帧50相同的数据结构的例子。也就是,在图6中的(b)所示的例子中,通信帧50(第一数据流)及通信帧50A(第二数据流)具有相同的数据结构。
[0108]与通信帧50—样,在通信帧50A的OUT数据中也存储有通过对控制对象进行控制所需的程序的最近一次运行算出的指令值(OUT数据)。但是,帧头存储有如下的声明(OUT数据无效声明):表示在各从属装置的OUT数据的数据区域中存储的命令值是无效的。根据该OUT数据无效声明,各从属装置运行作废所接收的指令值(OUT数据)的处理。即,各从属装置能够作废通信帧50A(第二数据流)中含有的输出数据。在图6中的(C)中示出的例子中,通过采用OUT数据无效声明,来使通信帧50A(第二数据流)中含有的OUT数据(输出数据)实际被无效。
[0109]此外,通过OUT数据无效声明,无论OUT数据的数据区域中存储的是什么值都会被无效,因此在该数据区域中可以存储任意值。但是,从安装方面来看,优选使用最近一次运行程序算出的OUT数据。
[0110]通信帧50与通信帧50A,由于数据结构相同,因此均包含用于从从属装置获取信息的指令(IN数据刷新命令)及OUT数据(输出数据)。
[0111]这样,通信帧50和通信帧50A之间共用数据结构,能够共用主装置中的通信帧制作处理,在实现本实施方式的处理时,能够避免安装方式变复杂。
[0112](4)作为通信帧50A重新发送上次发送的通信帧50的情况
[0113]图6中的(a)?图6中的(C)中示出采用与通常的通信帧50具有不同数据结构的通信帧50A的例子,但作为通信帧50A也可米用与最近一次发送的通信帧50完全相同的通信帧。也就是,也可将前一个PLC系统周期中发送的通信帧50在当前PLC系统周期中再次发送。无论是哪个通信帧都含有最新OUT数据组,因此作为各从属装置不存在异常举动的情况。
[0114]通过采用这样的结构,可进一步简化用于实现本实施方式的通信处理的安装结构。
[0115](5)其他结构
[0116]此外,通信帧50A与通信帧50之间的数据结构不是必须相同。进而,无需使各通信帧中存储的IN数据和OUT数据的数据长度相同。为了缩短通信帧转送所需时间,也可灵活地选择所需最小限的数据长度。或者,根据网络上的通信帧的统计信息等预先推测IN数据及OUT数据的数据长度的最佳值,将通信帧确定为所推测的数据长度。
[0117]<Η.安装例>
[0118]接着,对上述通信帧的发送相关的几个安装例进行例示。
[0119]图7是表示本实施方式的CPU单元10的安装例的图。
[0120](I)在控制器110的内部触发通信帧的发送的安装例
[0121]在图7中的(a)所示的安装例中,通信控制器110包括安装有控制引擎的FPGA及安装有模拟/数字转换和存储器等的信号处理电路的ASIC。在该安装例中,安装有控制引擎FPGA发出内部信号,从而生成通信帧50A并发送。通过使用这样的FPGA,在处理器100中无需进行时刻管理等,并且能够进行更高速的控制。
[0122](2)处理器100触发通信帧的发送的安装例
[0123]在图7中的(a)所示的安装例中,在运行对控制对象进行控制所需的程序(用户程序或系统程序等)的处理器100中,可以使管理时刻的线程运行,由该线程触发通信帧50A。此时,通信帧50A的生成及发送相关的内部指令从处理器100赋给通信控制器110。
[0124](3)其他处理器触发通信帧的发送的安装例
[0125]在图7中的(b)所示的安装例中,除了运行对控制对象进行控制所需的程序(用户程序或系统程序等)的处理器100_1之外,还安装有运行对时刻进行管理的线程的其他处理器100_2。处理器100_2触发通信帧50A。
[0126](4)专用处理器触发通信帧的发送的安装例
[0127]图7中的(b)中示出设有与通信控制器110连接的专用处理器160的安装例。在该安装例中,专用处理器160对时刻进行管理,而且与处理器100相独立,向通信控制器110赋给用于发送通信帧50A的内部指令。
[0128]以上,对四个典型的安装例进行了例示,然而不限于这些安装例,可以根据所需的用途和规格等,采用任意的软件和/或硬件的组合来安装。
[0129]<1.变形例 >
[0130]在上述实施方式中,例示了所谓环形式的网络,但也可适用菊花链形式的网络。关于这样的菊花链形式的网络,参照图8来示例。
[0131 ]图8是表示本实施方式的变形例的PLC系统IA的整体结构的示意图。参照图8,PLC系统IA包括主处理装置2(主装置),一个以上远程装置40(从属装置),这些装置通过菊花链形式的现场网络连接。在现场网络中,通信帧从主装置依次转送至各从属装置(下行帧),在终端部折返后,通信帧从各从属装置依次转送至主装置(上行帧)。
[0132]当采用这样的菊花链形式时,CPU单元10具有与菊花链形式相符合的通信控制器110A。关于其他结构和处理等与上述的相同,因此不反复详细说明。
[0133]另外,虽然在上述实施方式及其变形例中例示了现场网络上的数据传输,但也适用于PLC内的连接CPU单元10与1单元20的内部总线。
[0134]<J.优点 >
[0135]根据本实施方式,在主装置与一个以上从属装置通过网络连接的结构中,先行运行主装置从一个以上从属装置经由网络收集现场信息的处理。因此,不用等待现场信息的收集结束后所运行的输入处理。也就是,将OUT数据(指令值)发送至各从属装置的处理和从各从属装置收集IN数据的处理之间不存在等待时间,因此能够使运行对控制对象进行控制所需的程序(包括用户程序及系统程序)的周期(PLC系统周期)变短。也就是,能够提供以更高速地运行用户程序的环境。由此,能够更高速地运行动作控制逻辑等,因此能够提高控制精度。
[0136]应认为本次公开的实施方式在所有方面上都是例示,而不是限制性的。本发明的保护范围不是以上述说明表示,而通过权利要求书表示,包含与权利要求书等同的含义及范围内的所有变更。
[0137]附图标记说明
[0138]UlA PLC系统,2主处理装置,
[0139]4现场网络,10 CPU单元,
[0140]20 1单元,30电源单元,
[0141]40远程装置,50、50A通信帧,
[0142]51帧头,52、53、54数据区域,
[0143]55帧脚,60、65系统程序,
[0144]62输出处理,64通信处理,
[0145]66输入处理,70用户程序,
[0146]100处理器,102主存储器,
[0147]104非易失性存储器,106内部总线控制器,
[0148]108,109内部总线,110、110A、410通信控制器,
[0149]112,412共有存储器,120,430发送缓冲器,
[0150]122,432发送电路,130、420接收缓冲器,
[0151]132,422接收电路,160专用处理器,
[0152]400运算处理部,402输入电路,
[0153]404输出电路。
【主权项】
1.一种用于对控制对象进行控制的控制系统,其中, 具有: 主装置,包括运算部及通信处理部;以及 一个以上从属装置,经由网络与所述主装置连接, 所述通信处理部管理数据流在所述网络上的巡回传输,所述数据流含有所述主装置及所述一个以上从属装置进行处理的数据, 所述运算部以预设的运行周期反复运行输出处理及输入处理,并且在所述输出处理及所述输入处理的非运行期间,反复运行程序运行处理,所述输入处理包括根据由所述一个以上从属装置收集的来自所述控制对象的信息来更新输入数据的处理,所述输出处理包括生成输出数据的处理,所述输出数据含有所述程序运行处理的运行结果, 所述通信处理部以与所述运算部中的所述输出处理的运行联动的方式,开始将含有所述输出数据的第一数据流巡回传输给所述一个以上从属装置, 所述通信处理部在比所述运算部中的所述输入处理的运行的开始时刻提前预设期间的时刻,开始巡回传输第二数据流,所述第二数据流用于获取所述一个以上从属装置从所述控制对象收集的信息。2.根据权利要求1所述的控制系统,其中,所述通信处理部在发送了所述第一数据流后,无论该第一数据流到达所述主装置与否,发送所述第二数据流。3.根据权利要求1或2所述的控制系统,其中,所述第一数据流及所述第二数据流具有相同的数据结构。4.根据权利要求1至3中任一项所述的控制系统,其中,所述第一数据流及所述第二数据流均含有用以从所述一个以上从属装置获取信息的指令及所述输出数据。5.根据权利要求4所述的控制系统,其中,所述第二数据流所含的所述输出数据无效。6.根据权利要求4所述的控制系统,其中,所述一个以上从属装置中的各从属装置将所述第二数据流所含的所述输出数据作废。7.根据权利要求1至5中任一项所述的控制系统,其中,所述主装置基于事先存储的偏移值,以所述输入处理的运行开始时刻为基准,确定发送所述第二数据流的时刻。8.根据权利要求7所述的控制系统,其中,所述主装置基于所述网络的初始结构结果,确定所述偏移值。9.一种用于对控制对象进行控制的控制装置, 具有: 运算部;以及 通信处理部,与所述运算部结合, 所述控制装置经由网络与一个以上从属装置连接, 所述通信处理部管理数据流在所述网络上的巡回传输,所述数据流含有所述通信处理部本身及所述一个以上从属装置进行处理的数据, 所述运算部以预设的运行周期反复运行输出处理及输入处理,并且在所述输出处理及所述输入处理的非运行期间,反复运行程序运行处理,所述输入处理包括根据由所述一个以上从属装置收集的来自所述控制对象的信息来更新输入数据的处理,所述输出处理包括生成输出数据的处理,所述输出数据含有所述程序运行处理的运行结果, 所述通信处理部以与所述运算部中的所述输出处理的运行联动的方式,开始将含有所述输出数据的第一数据流巡回传输给所述一个以上从属装置, 所述通信处理部在比所述运算部中的所述输入处理的运行的开始时刻提前预设期间的时刻,开始巡回传输第二数据流,所述第二数据流用于获取所述一个以上从属装置从所述控制对象收集的信息。10.—种用于对控制对象进行控制的控制装置中的控制方法, 所述控制装置经由网络与一个以上从属装置连接,对数据流在所述网络上的巡回传输进行管理,所述数据流含有该控制装置及所述一个以上从属装置进行处理的数据, 所述控制方法包括: 以预设的运行周期反复运行输出处理及输入处理,并且在所述输出处理及所述输入处理的非运行期间,反复运行程序运行处理的步骤,所述输入处理包括根据由所述一个以上从属装置收集的来自所述控制对象的信息来更新输入数据的处理,所述输出处理包括生成输出数据的处理,所述输出数据含有所述程序运行处理的运行结果; 以与所述输出处理的运行联动的方式,开始将含有所述输出数据的第一数据流巡回传输给所述一个以上从属装置的步骤;以及 在比所述输入处理的运行的开始时刻提前预设期间的时刻,开始巡回传输第二数据流的步骤,所述第二数据流用于获取所述一个以上从属装置从所述控制对象收集的信息。
【文档编号】H04L12/42GK106063197SQ201580011512
【公开日】2016年10月26日
【申请日】2015年1月15日 公开号201580011512.0, CN 106063197 A, CN 106063197A, CN 201580011512, CN-A-106063197, CN106063197 A, CN106063197A, CN201580011512, CN201580011512.0, PCT/2015/50921, PCT/JP/15/050921, PCT/JP/15/50921, PCT/JP/2015/050921, PCT/JP/2015/50921, PCT/JP15/050921, PCT/JP15/50921, PCT/JP15050921, PCT/JP1550921, PCT/JP2015/050921, PCT/JP2015/50921, PCT/JP2015050921, PCT/JP201550921
【发明人】水谷征尔, 李天兵, 米田光宏
【申请人】欧姆龙株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1