CN110169017A - 控制装置以及通信装置 - Google Patents
控制装置以及通信装置 Download PDFInfo
- Publication number
- CN110169017A CN110169017A CN201780082635.2A CN201780082635A CN110169017A CN 110169017 A CN110169017 A CN 110169017A CN 201780082635 A CN201780082635 A CN 201780082635A CN 110169017 A CN110169017 A CN 110169017A
- Authority
- CN
- China
- Prior art keywords
- communication
- unit
- frame
- task
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40169—Flexible bus arrangements
- H04L12/40176—Flexible bus arrangements involving redundancy
- H04L12/40189—Flexible bus arrangements involving redundancy by using a plurality of bus systems
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/4155—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- G05B19/054—Input/output
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/31—From computer integrated manufacturing till monitoring
- G05B2219/31001—CIM, total factory control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Programmable Controllers (AREA)
- Small-Scale Networks (AREA)
Abstract
控制装置包括:通信单元;一个或多个功能单元;以及多条通信线,连接通信单元与一个或多个功能单元之间,且彼此独立。通信单元构成为执行第一任务与第二任务,所述第一任务是经由多条通信线中的第一通信线,以第一周期送出第一通信帧,所述第一通信帧用于执行功能单元所收集的数据向通信单元的发送及通信单元所保持的数据向功能单元的发送中的至少一者,所述第二任务是经由多条通信线中的第二通信线,以与第一周期不同的第二周期来送出第二通信帧,所述第二通信帧用于执行功能单元所收集的数据向通信单元的发送及通信单元所保持的数据向功能单元的发送中的至少一者。
Description
技术领域
本发明涉及一种包含一个或多个功能单元(unit)的控制装置、以及构成此控制装置的通信装置。
背景技术
作为用于实现各种工厂自动化(Factory Automation,FA)的主要组件(component),可编程控制器(Programmable Logic Controller,PLC)等控制装置正在普及。此种控制装置中,在被称作中央处理器(Central Processing Unit,CPU)单元的运算单元与一个或多个功能单元之间,经由通信线来交换数据。
作为此种数据交换的典型,周期性地执行下述处理(一般也称作“输入输出(InputOutput,IO)刷新(refresh)处理”),即,将功能单元所收集的数据(也称作“输入数据”)发送至运算单元,并且将由运算单元所算出的数据(也称作“输出数据”)发送至各功能单元。
例如,日本专利特开2014-120884号公报(专利文献1)公开了一种以IO刷新周期为基准来容易地决定同步时机(timing)的环境以及方法。在IO刷新处理中,通过周期性地使通信帧(frame)巡回一圈来传输输入数据及输出数据,因此,因连接于通信线的功能单元的数量增大,通信帧的传送时间增大,IO刷新处理的周期变长。
关于此种现象,日本专利特开2010-224939号公报(专利文献2)公开了一种技术:降低对控制系统中的一个以上的控制对象装置执行多个不同周期的控制处理的控制用计算机的开发工时,且防止通信性能的下降。具体而言,采用如下所述的方式(approach),即,根据各控制处理的周期,来制作及发送仅包含所需的控制指令值的发送数据。
现有技术文献
专利文献
专利文献1:日本专利特开2014-120884号公报
专利文献2:日本专利特开2010-224939号公报
发明内容
发明所要解决的问题
根据专利文献2所公开的途径,必须根据各控制处理的周期来对应包含在发送数据中的控制指令值进行调度(scheduling),因而处理复杂化,并且因所述调度处理,通信处理的更新周期也有可能下降。进而,根据专利文献2所公开的方式,会在多个控制处理之间造成影响,因此控制处理的设计等的自由度有可能下降。
本发明是将解决如上所述的问题作为一个目的,提供一种新的结构,即使所连接的功能单元的数量增大,也能够确保预定的更新周期。
解决问题的技术手段
依据本发明的一方面的控制装置包括:通信单元;一个或多个功能单元;以及多条通信线,连接通信单元与一个或多个功能单元之间,且彼此独立。通信单元构成为执行第一任务与第二任务,所述第一任务是经由多条通信线中的第一通信线,以第一周期送出第一通信帧,所述第一通信帧用于执行功能单元所收集的数据向通信单元的发送、及通信单元所保持的数据向功能单元的发送中的至少一者,所述第二任务是经由多条通信线中的第二通信线,以与第一周期独立地设定的第二周期来送出第二通信帧,所述第二通信帧用于执行功能单元所收集的数据向通信单元的发送、及通信单元所保持的数据向功能单元的发送中的至少一者。
优选的是,一个或多个功能单元的各个为了进行与通信单元之间的数据交换,而仅对任一个通信帧进行处理。
优选的是,一个或多个功能单元的各个对于为了进行与通信单元之间的数据交换而进行处理的通信帧以外的通信帧,直接予以传送。
优选的是,在第一通信帧及第二通信帧的各个中,设有与进行处理的功能单元相关联的数据区域。
优选的是,控制装置还包括提供用户接口(user interface)画面的部件,所述用户接口画面对于一个或多个功能单元的各个,指定与第一通信帧及第二通信帧中的哪个相关联。
优选的是,通信单元包括:运算处理部,包含执行第一任务及第二任务的处理器(processor)与存储器;通信电路,负责通信帧的收发;以及控制电路,连接于运算处理部及通信电路。控制电路包括:第一直接存储器存取(Direct Memory Access,DMA)核心(core),用于访问运算处理部;第二DMA核心,用于访问通信电路;以及控制器,根据来自运算处理部的触发(trigger),按照预先定义的描述符表(descriptor table),对第一DMA核心及第二DMA核心依序给予命令。
优选的是,控制电路还包括:启动部件,用于选择性地启动从预先设定有互不相同的优先级的多个描述符表中指定的描述符表;以及仲裁器(arbiter),当同时请求依据不同的描述符表的处理时,基于对各描述符表设定的优先级来进行调停。
优选的是,多个描述符表被保存在运算处理部的存储器、及控制电路的存储区域的至少一者中。
优选的是,通信单元是运算单元及中继单元中的其中任一者。
依据本发明的一方面,提供一种通信装置,其经由彼此独立的多条通信线而与一个或多个功能单元连接。通信装置包括:通信电路,负责利用多条通信线的通信帧的收发;以及运算处理部。运算处理部构成为执行第一任务与第二任务,所述第一任务是经由多条通信线中的第一通信线,以第一周期送出第一通信帧,所述第一通信帧用于执行功能单元所收集的数据向通信单元的发送、及通信单元所保持的数据向功能单元的发送中的至少一者,所述第二任务是经由多条通信线中的第二通信线,以与第一周期独立地设定的第二周期来送出第二通信帧,所述第二通信帧用于执行功能单元所收集的数据向通信单元的发送、及通信单元所保持的数据向功能单元的发送中的至少一者。
发明的效果
根据本发明,即使连接于通信单元的功能单元的数量增大,也能够确保预定的更新周期,并且能够提高由通信单元等所执行的多个处理的设计自由度。
附图说明
图1是表示实施方式1的PLC的主要部分结构的示意图。
图2是用于说明实施方式1的PLC中的IO刷新处理的概要的示意图。
图3是用于说明通过图2所示的主要(primary)固定周期任务及通常固定周期任务而送出的IO刷新帧的示意图。
图4是表示用于进行针对图2所示的功能单元的设定的、用户接口画面的一例的图。
图5是表示与图2所示的功能单元的设定对应的IO刷新帧的数据结构的一例的图。
图6是表示实施方式2的PLC的主要部分结构的示意图。
图7是表示实施方式3的PLC的主要部分结构的示意图。
图8是表示实施方式3的PLC的CPU单元的主要部分结构的示意图。
图9是表示实施方式3的PLC中的IO刷新处理的处理流程的示意图。
图10是表示实施方式3的PLC中所用的描述符表的数据结构的一例的示意图。
图11是用于对依据实施方式3的PLC中的描述符表的启动及保存进行说明的示意图。
具体实施方式
参照附图来详细说明本发明的实施方式。另外,对于附图中的相同或相当的部分,标注同一符号并不再重复其说明。
以下的说明中,作为“控制装置”的典型例,是以PLC(可编程控制器)作为具体例来进行说明,但并不限定于PLC这一名称,本说明书所公开的技术思想可适用于任意的控制装置。
[1.实施方式1]
<A.装置结构>
首先,对实施方式1的PLC的装置结构进行说明。图1是表示实施方式1的PLC的主要部分结构的示意图。参照图1,实施方式1的PLC 1典型的是包含CPU单元100与一个或多个功能单元200。CPU单元100是构成PLC 1的一元件,相当于对PLC 1整体的处理进行控制的运算单元。功能单元200提供用于实现PLC 1对各种机械或设备的控制的各种功能。CPU单元100与一个或多个功能单元200之间,经由作为通信线的一例的局域总线群2而连接。作为一例,作为局域总线群2,采用一种菊链(daisy chain)的结构。
实施方式1中,局域总线群2具有多个彼此独立的信道(channel)。作为一例,局域总线群2包含第一局域总线21及第二局域总线22。作为局域总线群2,也可采用具有多于两个的信道的结构。这样,局域总线群2相当于连接CPU单元100与一个或多个功能单元200之间且彼此独立的多条通信线。
图1所示的结构中,CPU单元100也作为通信单元或通信装置发挥功能。更具体而言,也可构成为:CPU单元100也可作为对局域总线群2中的通信整体进行管理的主机(master)通信单元发挥功能,各功能单元200作为在CPU单元100的管理下进行通信的从机(slave)通信单元发挥功能。通过采用此种主机/从机结构,从而能够容易地进行在局域总线群2上传送的通信帧的时机控制等。
CPU单元100包含运算处理部110及通信电路130。另外,也可为与CPU单元100独立地配置通信单元的结构。
运算处理部110包含处理器112、主存储器114与存贮器(storage)120。为了便于说明,在图1中,仅描绘了一个处理器112,但也可安装多个处理器。另外,各处理器也可具有多个核心。
主存储器114由动态随机存取存储器(Dynamic Random Access Memory,DRAM)或静态随机存取存储器(Static Random Access Memory,SRAM)等构成,提供处理器112执行程序所需的工作(work)区域。
存贮器120包含快闪存储器(flash memory)或硬盘(hard disk)等,保存系统程序122、用户程序124、配置(configuration)126等。系统程序122包含用于在处理器112中执行用户程序124的操作系统(Operating System,OS)及库(library)等。系统程序122包含用于周期性地执行下述处理(后述的IO刷新处理)的任务,即:将由功能单元200所收集的现场值(输入数据)发送至CPU单元100,并且将由CPU单元100所算出的控制指令值(输出数据)发送至功能单元200。用户程序124是根据作为控制对象的机械或设备而任意制作。配置126包含对CPU单元100中的程序执行所需的各种设定值或网络结构进行定义的各种设定值。
通信电路130经由作为通信线的局域总线群2,来与一个或多个功能单元200交换数据。即,通信电路130负责通信帧的收发。更具体而言,通信电路130是与局域总线群2物理连接,依据来自运算处理部110的指令来生成电信号,并发送至局域总线群2(第一局域总线21或第二局域总线22)上,并且对在局域总线群2(第一局域总线21或第二局域总线22)上产生的电信号进行解调并输出至运算处理部110。
局域总线群2具有彼此独立的信道,因此能够利用各个信道来独立地传输通信帧。通信电路130具有与各个信道对应的独立的电路(未图示),且如后所述,以对各信道独立地设定的周期来进行数据的刷新(更新)。
本说明书中,“IO刷新处理”是指如下所述的处理,即,执行功能单元200所收集的输入数据向通信单元(CPU单元100、或如后所述的通信耦合器单元300等)的发送、及通信单元所保持的输出数据向功能单元200的发送中的至少一者。即,“IO刷新处理”这一名称是为了方便,也可包含仅有输入数据及输出数据中的其中一者的更新处理。
被用于IO刷新处理的通信帧是以在局域总线群2(第一局域总线21或第二局域总线22)上巡回一圈的方式而传输。在未传输所述用于IO刷新处理的通信帧的期间,在CPU单元100与任意的功能单元200之间、或者多个功能单元200之间,也有时会对通信帧进行消息传输。
作为用于在局域总线群2上交换数据的协议(protocol),能够采用任意协议。进而,作为通信线的一例,例示了局域总线群2,但并不限于此,也可采用任意的固定周期网络。作为此种固定周期网络,也可采用EtherCAT(注册商标)、EtherNet/IP(注册商标)、DeviceNet(注册商标)、CompoNet(注册商标)等公知的网络。
图1所示的结构中,为了便于说明,描绘了区分为运算处理部110及通信电路130的结构,但并不限于此,能够采用任意的安装形态。例如,也可包含将运算处理部110的全部或一部分与通信电路130的全部或一部分安装于同一芯片上的芯片级系统(System on Chip,SoC)。对于此种安装形态,考虑所要求的性能或成本等来适当选择。
典型的是,功能单元200可包含I/O单元、通信单元、温度调整单元、标识(Identifier,ID)传感器单元等。
作为I/O单元,例如可列举数字输入(Digital Input,DI)单元、数字输出(DigitalOutput,DO)单元、模拟输出(Analog Input,AI)单元、模拟输出(Analog Output,AO)单元、脉冲捕捉(pulse catch)输入单元、及使多个种类混合而成的复合单元等。
通信单元是与其他PLC、远程(remote)I/O装置、功能单元等中介数据交换者,例如可包含与EtherCAT(注册商标)、EtherNet/IP(注册商标)、DeviceNet(注册商标)、CompoNet(注册商标)等协议相关的通信装置等。
温度调整单元是包含下述功能的控制装置,即:获取温度测量值等的模拟输入功能、输出控制指令等的模拟输出功能、及比例积分微分(Proportional IntegralDifferential,PID)控制功能。ID传感器单元是从射频识别器(Radio FrequencyIDentifier,RFID)等非接触地读出数据的装置。
功能单元200的各个包含通信处理部210、功能模块220及IO接口230。
功能模块220是执行各功能单元200的主要处理的部分,负责从作为控制对象的机械或设备等收集现场值(输入数据)、或者向作为控制对象的机械或设备等输出控制指令值(输出数据)等。
IO接口230是对与作为控制对象的机械或设备等之间的信号交换进行中介的电路。
通信处理部210对在局域总线群2(第一局域总线21或第二局域总线22)上依序传送的通信帧进行处理。更具体而言,通信处理部210在经由局域总线群2而收到某些通信帧时,根据需要来对所述收到的通信帧进行数据写入和/或数据读出后,将所述通信帧发送至局域总线群2上位于下处的功能单元200。通信处理部210提供此种帧中继器(frame relay)的功能。另外,通信处理部210对于并非发往自身单元的通信帧,也有时简单地将所述通信帧传送至位于下处的功能单元200。
更具体而言,通信处理部210包含收发端口211、212、213、214与通信电路216。收发端口211、212、213、214是与局域总线群2物理连接的接口,依据来自通信电路216的指令而生成电信号,并发送至局域总线群2上,并且将在局域总线群2上产生的电信号转换为数字信号并输出至通信电路216。在图1所示的结构中,收发端口211、213负责第一局域总线21,收发端口212、214负责第二局域总线22。
通信电路216针对在局域总线群2(第一局域总线21或第二局域总线22)上传输的通信帧进行数据写入和/或数据读出。通信电路216具有与各个信道对应的独立的电路(未图示),能够对在各信道中分别传输的通信帧独立地进行处理。
<B.多个IO刷新帧>
在实施方式1的PLC 1中,能够使用构成局域总线群2的第一局域总线21及第二局域总线22,分别独立地进行彼此独立地设定的周期(固定周期)下的IO刷新处理。
图2是用于说明实施方式1的PLC 1中的IO刷新处理的概要的示意图。参照图2,在CPU单元100中,执行系统程序122中所含的、主要固定周期任务1221(以固定周期T1反复执行)与通常固定周期任务1222(以固定周期T2(>T1)反复执行)。这些任务均为用于实现IO刷新处理的任务。
主要固定周期任务1221是在每个固定周期T1,将用于实现IO刷新的IO刷新帧1反复送出至第一局域总线21上。即,由CPU单元100所执行的主要固定周期任务1221是如下所述的任务,即,经由作为多条通信线的局域总线群2中的一条通信线(例如,第一局域总线21),以固定周期T1送出用于执行IO刷新处理的IO刷新帧1。
而且,通常固定周期任务1222是在每个固定周期T2,将用于实现IO刷新的IO刷新帧2反复送出至第二局域总线22上。这些任务基本上是彼此独立地执行。即,由CPU单元100所执行的通常固定周期任务1222是如下所述的任务,即,经由作为多条通信线的局域总线群2中的另一条通信线(例如,第二局域总线22),以固定周期T2来送出用于执行IO刷新处理的IO刷新帧2。
另外,因处理器112的资源(resource)限制,也有时较通常固定周期任务1222而优先执行主要固定周期任务1221。
各功能单元200利用IO刷新帧1及IO刷新帧2中的至少一者,来进行输入数据的发送及输出数据的获取。图2所示的示例中,CPU单元100与功能单元200-1~200-5经由局域总线群2而连接。
图3是用于说明通过图2所示的主要固定周期任务1221及通常固定周期任务1222而送出的IO刷新帧的示意图。图3(A)中表示下述状态的示例,即,在处理器112中,能够彼此独立地执行主要固定周期任务1221及通常固定周期任务1222。如图3(A)所示,在反复执行主要固定周期任务1221的每个周期T1,将IO刷新帧1从CPU单元100送出至第一局域总线21上。同样,在反复执行通常固定周期任务1222的每个周期T2,将IO刷新帧2从CPU单元100送出至第二局域总线22上。
通过各个IO刷新帧,能够分别实现周期T1及T2下的IO刷新处理。
图3(B)中表示下述状态的示例,即,在处理器112中,无法同时执行主要固定周期任务1221及通常固定周期任务1222。图3(B)所示的示例中,主要固定周期任务1221及通常固定周期任务1222是在互不重合的时段执行处理。基本上,对于主要固定周期任务1221,设定有比通常固定周期任务1222高的优先级,因此,在因周期或资源的限制而两任务的执行时机重合的情况下,也可优先执行主要固定周期任务1221。
在图3(B)所示的示例中,也能够通过各个IO刷新帧,来分别实现周期T1及T2下的IO刷新处理。
图3中,为了便于说明,表示了反复执行通常固定周期任务1222的周期T2为反复执行主要固定周期任务1221的周期T1的两倍的示例,但并不限于此,周期T1及周期T2能够彼此独立地任意设定。
<C.功能单元的设定>
再次参照图2,作为一例,功能单元200-1、200-2、200-5与主要固定周期任务1221相关联,功能单元200-3、200-4与通常固定周期任务1222相关联。
也可提供下述功能,即,提供用户接口画面,所述用户接口画面是对于功能单元200的各个,指定与使用IO刷新帧1的任务及使用IO刷新帧2的任务中的哪个相关联。
图4是表示用于进行针对图2所示的功能单元的设定的用户接口画面500的一例的图。图4所示的用户接口画面500既可以在支持装置上提供由安装于通信单元(CPU单元100、或如后所述的通信耦合器单元300等)的功能所生成的画面的形式来安装,也可将由安装于支持装置的功能所生成的画面提示给用户,并且将根据用户操作而设定的内容发送至通信单元。
参照图4,用户接口画面500包含:输入项目502,用于设定主要固定周期任务1221的执行周期;输入项目504,用于设定通常固定周期任务1222的执行周期;以及单选按钮(radio button)群506,用于进行针对经由局域总线群2而连接于CPU单元100的各功能单元200的设定。
用户进行针对用户接口画面500的输入项目502及输入项目504的操作,分别设定反复执行各固定周期任务时的周期。然后,用户选择单选按钮群506中所含的各单选按钮,由此来设定将各功能单元200关联于主要固定周期任务1221(即,IO刷新帧1)及通常固定周期任务1222(即,IO刷新帧2)中的哪个。
通过提供图4所示的用户接口画面500,从而用户能够容易地进行针对固定周期任务及各功能单元200的设定。
<D.IO刷新帧>
IO刷新帧1及IO刷新帧2依序传送至连接于局域总线群2的所有功能单元200,但功能单元200的各个也可仅对预先设定的任一IO刷新帧进行处理。另外,既可在同一IO刷新帧中保存输入数据及输出数据,也可使用输入数据及输出数据各自专用的IO刷新帧。
例如,在图2所示的设定例中,功能单元200-1、200-2、200-5各自在主要固定周期任务1221所送出的IO刷新帧1到达时,对IO刷新帧1写入所请求的输入数据,并从IO刷新帧1读出作为对象的输出数据。另一方面,功能单元200-1、200-2、200-5各自在通常固定周期任务1222所送出的IO刷新帧2到达时,将所接收的IO刷新帧2直接传送至位于下处的功能单元200。
而且,功能单元200-3、200-4各自在通常固定周期任务1222所送出的IO刷新帧2到达时,对IO刷新帧2写入所请求的输入数据,并从IO刷新帧2读出作为对象的输出数据。另一方面,功能单元200-3、200-4各自在主要固定周期任务1221所送出的IO刷新帧1到达时,将所接收的IO刷新帧1直接传送至位于下处的功能单元200。
这样,对于IO刷新帧1,仅有功能单元200-1、200-2、200-5进行数据的写入及读出,对于IO刷新帧2,仅有功能单元200-3、200-4进行数据的写入及读出。即,功能单元200的各个也可为了进行与通信单元(CPU单元100、或如后所述的通信耦合器单元300等)之间的数据交换,而仅对任一个通信帧(IO刷新帧)进行处理。此时,功能单元200的各个对于为了进行与通信单元之间的数据交换而进行处理的通信帧以外的通信帧,直接予以传送。
图5是表示与图2所示的功能单元200的设定对应的IO刷新帧的数据结构的一例的图。参照图5,IO刷新帧1及2包含:报头(header)部,保存帧种类及发送目的地;以及本体部,保存数据。
作为帧种类,使用用于确定通信帧的种类的识别信息,例如使用表示为单播(unicast)、多播(multicast)、广播(broadcast)中的哪一种的识别信息。IO刷新帧1及2是从CPU单元100送出,在局域总线群2上巡回一圈后返回CPU单元100,因此典型的是保存表示多播的识别信息。此时,在利用多播的发送时,由于不存在特定的发送目的地,因此也可保存特殊值。
在本体部中,规定有输入数据的区域及输出数据的区域,各个区域是根据通过图4所示的用户接口画面500来规定的设定值等而定。
在IO刷新帧1及IO刷新帧2的各个中,设有与进行处理的功能单元200相关联的数据区域。例如,在图5所示的IO刷新帧1中,规定有与功能单元200-1、200-2、200-5分别对应的输入数据的区域及输出数据的区域。另一方面,在IO刷新帧2中,规定有与功能单元200-3、200-4分别对应的输入数据的区域及输出数据的区域。
如上所述,在IO刷新帧1及IO刷新帧2中,只要仅确保与进行数据的写入及读出的功能单元200的数量相应的数据容量即可。因此,即使连接于CPU单元100的功能单元200的数量增大,也只要仅考虑与IO刷新帧各自相关联的功能单元200的数量即可,帧长不会不必要地冗长化。
而且,例如即使追加与IO刷新帧2相关联的功能单元200,也不会对IO刷新帧1造成影响,因此IO刷新帧1的帧长不会发生变化,从而不会对基于主要固定周期任务1221的IO刷新处理的周期等造成影响。因此,能够提高对CPU单元100追加功能单元200时的自由度。
另外,也可将单个功能单元200关联于IO刷新帧1及2这两者。此时,也可在IO刷新帧1及2这两者中,设定有相应的功能单元200的输入数据或输出数据的区域,无论哪个通信帧,均进行所指定的输入数据的写入和/或输出数据的读出。
此处,再次参照图2,对IO刷新帧到达各功能单元200的时机、与在各功能单元200中从作为控制对象的机械或设备等收集现场值(输入数据)及向作为控制对象的机械或设备等输出控制指令值(输出数据)(图2中将这些处理总称作“内部刷新”)的时机的关系进行说明。
例如,由于IO刷新帧的发送周期及发送时机是预先规定的,因此通过使各功能单元200的内部刷新的开始时机与作为对象的IO刷新帧的发送周期同步,能够在CPU单元100中,以最短的延迟时间来从各功能单元200获取输入数据。功能单元200中的此种内部刷新也有时称作输入/输出同步方式。
但是,未必需要采用输入/输出同步方式的内部刷新,也可采用其他刷新方式。例如,各功能单元200也可具有彼此同步的定时器(timer),基于各定时器所示的值(计数值)来决定时机。此种内部刷新也有时称作时戳(time stamp)方式。根据时戳方式,各功能单元200的内部刷新的时机并不与IO刷新帧同步,但对于所有功能单元200,能够在同一时机进行内部刷新,因此即使在IO刷新帧的发送周期存在多个的情况下,仍容易取得输入数据及输出数据之间的一致性。
或者,在未要求输入数据及输出数据之间的同步性等的情况下,各功能单元200也可以各自的时机或条件来进行内部刷新。此种内部刷新也有时称作自由运行(free run)方式。此时,不需要对多个功能单元200分别通知时机等,因此能够简化处理。
<E.总结>
在实施方式1的PLC 1中,通过采用具有彼此独立的信道的局域总线群2,从而能够利用各个信道来分别独立地传输IO刷新帧。由此,各功能单元200能够根据各功能单元200所处理的输入数据及输出数据的特性或用途,利用更优选的IO刷新帧来进行IO刷新处理。
通过使用利用各个信道的多个IO刷新帧,与使用单个IO刷新帧的情况相比,能够实现高效的输入数据及输出数据的传输,并且能够避免IO刷新帧的帧长度冗长化而IO刷新周期延长的事态。
[2.实施方式2]
实施方式1中,主要对下述结构进行了说明,即,在CPU单元100与经由局域总线群2而连接的一个或多个功能单元200之间交换IO刷新帧。但是,对于经由现场网络而连接的一个或多个功能单元200,也能够适用同样的方案(scheme)。
图6是表示实施方式2的PLC 1A的主要部分结构的示意图。参照图6,PLC 1A的CPU单元100A还包含控制现场网络6的网络接口150。在现场网络6,除了通信耦合器单元300以外,还可连接各种设备。
作为现场网络6,例如也可采用EtherCAT(注册商标)、EtherNet/IP(注册商标)、DeviceNet(注册商标)、CompoNet(注册商标)等公知的网络。
通信耦合器单元300是用于对一个或多个功能单元200与PLC 1A进行网络连接的中继单元。即,通信耦合器单元300也作为通信单元或通信装置发挥功能。也可构成为,通信耦合器单元300也可作为对局域总线群4中的通信整体进行管理的主机通信单元发挥功能,各功能单元200作为在通信耦合器单元300的管理下进行通信的从机通信单元发挥功能。通过采用此种主机/从机结构,从而能够容易地进行在局域总线群4上传送的通信帧的时机控制等。更具体而言,通信耦合器单元300包含控制器310、通信电路330及网络接口350。
通信电路330经由作为通信线的局域总线群4,来与一个或多个功能单元200交换数据。更具体而言,通信电路330是与局域总线群4物理连接,依据来自控制器310的指令来生成电信号,并发送至局域总线群4(第一局域总线41或第二局域总线42)上,并且对在局域总线群4(第一局域总线41或第二局域总线42)上产生的电信号进行解调并输出至控制器310。
网络接口350经由作为通信线的现场网络6,来与CPU单元100A交换数据。
控制器310执行下述处理,即,对在网络接口350中与CPU单元100A或其他设备之间交换的数据、及在通信电路330中与一个或多个功能单元200之间交换的数据进行相互传送。
此种结构中,通信耦合器单元300的控制器310也能够使用构成局域总线群4的第一局域总线41及第二局域总线42,来分别独立地进行不同周期(固定周期)下的IO刷新处理。更具体而言,从CPU单元100A对各通信耦合器单元300给予各种设定值,通信耦合器单元300的控制器310根据来自CPU单元100A的各种设定值,来决定IO刷新帧的发送周期等。
对于利用通信耦合器单元300的IO刷新处理而言,由于与所述实施方式1同样,因此不再重复详细说明。
通过采用像实施方式2的PLC 1A那样的结构,从而不仅对于连接于CPU单元100A的功能单元200,而且对于连接于通信耦合器单元300的功能单元200,也能够利用彼此独立的IO刷新帧,因此作为PLC 1A整体,能够实现高效的IO刷新处理。
[3.实施方式3]
在实施方式1的PLC 1的CPU单元100中,包含处理器112的运算处理部110对通信电路130给予指令,由此来实现经由局域总线群2的IO刷新帧的交换。为了使经由局域总线群2的IO刷新帧的交换进一步高速化,也可进一步配置控制电路,所述控制电路代理运算处理部110,而与通信电路130之间交换各种数据。通过采用此种控制电路,能够降低运算处理部110的处理器112中的运算处理,并且,即使在运算处理部110与通信电路130之间的通信线的传输容量相对较小的情况下,也能够高效且高速地实现IO刷新处理。
<A.装置结构>
图7是表示实施方式3的PLC 1B的主要部分结构的示意图。参照图7,PLC 1B的CPU单元100B还包含配置在运算处理部110与通信电路130之间的控制电路140。控制电路140连接于运算处理部110及通信电路130,具有在运算处理部110与通信电路130之间中介请求的功能,例如响应来自处理器112的通信请求,对通信电路130给予指令而进行数据的发送或接收。控制电路140如后所述,例如安装有直接存储器存取(Direct Memory Access,DMA)等用于使数据访问高速化的功能等。
也可对于控制电路140的至少主要部分具有硬接线的结构,由此来实现比处理器112更高速的处理。典型的是,控制电路140是使用硬件逻辑(hardware logic)来实现。例如,控制电路140也可使用作为可编程逻辑器件(Programmable Logic Device,PLD)的一例的现场可编程门阵列(Field Programmable Gate Array,FPGA)、或作为集成电路(Integrated Circuit,IC)的一例的专用集成电路(Application Specific IntegratedCircuit,ASIC)等来安装。进而,也可使用将运算处理部110的处理器112及控制电路140的主要功能安装于同一芯片上的SoC。
图8是表示实施方式3的PLC 1B的CPU单元100B的主要部分结构的示意图。参照图8,PLC 1B的CPU单元100B包含运算处理部110、控制电路140及通信电路130。
通过运算处理部110的处理器112执行系统程序等,从而执行IO刷新处理。通过IO刷新处理,在主存储器114中存储输入数据及输出数据,并且根据IO刷新周期来更新各值。
通信电路130包含缓冲器(buffer)132,所述缓冲器132保存在局域总线群2上使用通信帧来交换的输入数据134及输出数据135。如后所述,控制电路140将输出数据135写入至通信电路130的缓冲器132,并读出保存在通信电路130的缓冲器132中的输入数据134。在通信电路130的缓冲器132中,保存有路由表(routing table)133,所述路由表133用于进行用来将通信帧传输至所指定的发送目的地的决定。
如图8所示,必须使保存在通信电路130的缓冲器132中的输入数据及输出数据、与保存在运算处理部110的主存储器114中的输入数据及输出数据同步。实施方式3中,控制电路140使用DMA,既降低处理器112对数据访问等的处理,又使数据传送进一步高速化。
更具体而言,控制电路140包含总线仲裁器142及处理引擎(engine)1400。控制电路140可使用任意硬件来实现。
总线仲裁器142是配置在将运算处理部110的处理器112与处理引擎1400予以连接的总线上,当多个数据访问请求发生冲突时,依据使用优先级等的预定规则来调停。
处理引擎1400是提供控制电路140的主要功能的组件,提供对运算处理部110与通信电路130之间的数据交换进行代理的功能。
处理引擎1400具有设定有互不相同的优先级(也有时标记为“priority”)的多个DMA核心,通过对所述DMA核心给予包含一个或多个命令的描述符表,从而执行所指定的处理。描述符表典型的是利用汇编语言(assembler)或机器语言来记述。如后所述,通过对描述符表设定优先级,从而决定对各描述符表进行处理的DMA核心。通过使用此种按优先级分类的DMA核心及描述符表,能够使以主要固定周期任务1221反复执行的IO刷新处理、与以通常固定周期任务1222反复执行的IO刷新处理并列地执行。
对描述符表设定的优先级被用于下述访问权等的管理,即:对DMA核心1401、1402的访问权,所述DMA核心1401、1402用于对运算处理部110进行数据访问;对描述符表保存部1470、描述符启动寄存器1472、命令高速缓冲存储器(cache)1474等处理引擎1400内部的存储器的访问权;用于使通信电路130启动的访问权;以及对通信电路130的访问权。
具体而言,处理引擎1400包含:DMA核心1401、1402、1440;总线仲裁器1411、1412、1430;描述符(以下也有时标记为“Descriptor”)控制器1420_0~1420_N;描述符表保存部1470;描述符启动寄存器1472;以及命令高速缓冲存储器1474。
图8中,作为一例,表示可设定N级优先级的结构。与此N级优先级对应地,准备有N个描述符控制器1420_0~1420_N(也有时总称为“描述符控制器1420”)。将优先级设定为N级是一例,对于级数可任意设定。实施方式1中,优先级“0”(priority0)为最高优先级,优先级“N”(priority0)为最低优先级。
DMA核心1401、1402负责对运算处理部110(主要是主存储器114)的访问。对于DMA核心1401、1402,与描述符控制器1420的优先级对应地设定有三级优先级。作为一例,DMA核心1401对应于优先级为“0”~“n”的描述符控制器1420,DMA核心1402对应于优先级为“m”~“N”的描述符控制器1420。
另外,图8所示的两级优先级为一例,并不限于此,只要根据访问频率等来采用任意数量的DMA核心即可。
处理引擎1400包含仲裁器,所述仲裁器在同时请求依据不同的描述符表的处理时,基于对各描述符表所设定的优先级来调停。
更具体而言,总线仲裁器1411、1412分别调停对DMA核心1401、1402的命令输入。即,总线仲裁器1411进行调停,以免从描述符控制器1420_0~1420_n对DMA核心1401的命令输入发生冲突。总线仲裁器1412进行调停,以免从描述符控制器1420_m~1420_N对DMA核心1402的命令输入发生冲突。
DMA核心1440负责对通信电路130(主要是缓冲器132)的タ访问。总线仲裁器1430调停对DMA核心1440的命令输入。即,总线仲裁器1430基于对命令发布源的描述符控制器1420所设定的优先级等来进行调停,以免从描述符控制器1420_0~1420_N对DMA核心1440的命令输入发生冲突。
描述符表保存部1470保存对DMA核心给予的命令。即,描述符表保存部1470作为一种命令缓冲器发挥功能。
描述符启动寄存器1472是由用于设定保存在各描述符表中的各命令的优先级的寄存器组成。在描述符表保存部1470中保存某些命令的同时,在描述符启动寄存器1472中,将用于参照保存在描述符表保存部1470中的命令的地址设置于与对所述命令设定的优先级相应的寄存器。例如,当在描述符表保存部1470中保存优先级为“0”的命令A时,将用于参照所述保存的命令A的地址设置于描述符启动寄存器1472的与优先级“0”对应的区域。另一方面,当在描述符表保存部1470中保存优先级为“1”的命令B时,将用于参照所述保存的命令B的地址设置于描述符启动寄存器1472的与优先级“1”对应的区域。这样,描述符启动寄存器1472包含与各个优先级对应的寄存器。
并且,基于在描述符启动寄存器1472中设置的每个优先级的寄存器值,将保存在描述符表保存部1470中的命令依序给予至所指定的DMA核心,由此来执行描述符表中记述的处理。
这样,描述符表保存部1470及描述符启动寄存器1472被用作下述功能的一部分,所述功能用于选择性地启动从预先设定有互不相同的优先级的多个描述符表中指定的描述符表。
命令高速缓冲存储器1474暂时保存所指定的描述符表中所含的一个或多个命令。保存在命令高速缓冲存储器1474中的一个或多个命令被依序给予至指定的DMA核心,从而执行所记述的处理。
如后所述,能够将描述符表保存部1470或运算处理部110的主存储器114与描述符启动寄存器1472予以组合,对DMA核心给予任意命令。
<B.刷新处理的处理流程>
接下来,概括图8所示的CPU单元100B中的IO刷新处理的流程。图9是表示实施方式3的PLC 1B中的IO刷新处理的处理流程的示意图。另外,假设在描述符表保存部1470中保存有预先赋予有优先级的描述符表。
参照图9,当任务执行周期到来,而执行主要固定周期任务1221或通常固定周期任务1222时(图9的(1)),运算处理部110的处理器112对构成描述符启动寄存器1472的标记中的、与规定了应执行的处理的描述符表对应的标记进行设置(图9的(2))。于是,与所设置的标记对应的描述符表从描述符表保存部1470被给予至对应的描述符控制器1420(图9的(3))。
描述符控制器1420根据来自运算处理部110(处理器112)的触发,依据预先定义的描述符表,对DMA核心1401、1402、1403和/或DMA核心1440依序给予命令(图9的(4))。
在IO刷新处理中,对于DMA核心1440,给予用于指示IO刷新帧的发布等的一个或多个命令。根据这些命令,DMA核心1440启动通信电路130的通信,从通信电路130送出IO刷新帧(图9的(5))。
从通信电路130送出的IO刷新帧在局域总线(第一局域总线21或第二局域总线22)上巡回一圈,由此来执行IO刷新处理(图9的(6))。由此,对保存在通信电路130的缓冲器132中的输入数据134进行更新。
并且,通过DMA核心1401及DMA核心1440所进行的数据访问,保存在通信电路130的缓冲器132中的输入数据134被传送至运算处理部110的主存储器114,保存在运算处理部110的主存储器114中的输出数据被传送至通信电路130的缓冲器132(图9的(7))。
通过如上所述的处理流程,利用控制电路140的IO刷新处理完成。
图9中,作为一例,对使用描述符表保存部1470及描述符启动寄存器1472的结构进行了例示,但即使是在主存储器114中保存描述符表148的结构,也实施大致同样的处理流程。
<C.描述符表的数据结构>
接下来,对描述符表的数据结构的一例进行说明。
图10是表示实施方式3的PLC 1B中所用的描述符表的数据结构的一例的示意图。参照图10,在实施方式3的PLC 1B中,使用赋予有优先级的描述符表148_0~148_N(以下也总称作“描述符表148”)。描述符表148各自包含一个或多个命令1482,由DMA核心按照记述在描述符表148中的命令1482来执行处理。命令1482各自包含命令编号1483及命令1484的组合。对于命令1484,也可使用DMA核心能够解释的汇编语言或机器语言。
<D.描述符表的启动及保存>
接下来,对由DMA核心按照描述符表148来执行处理时的启动方法及描述符表148的保存方法的一例进行说明。
图11是用于对依据实施方式3的PLC 1B中的描述符表148的启动及保存进行说明的示意图。参照图11,可采用将描述符表148(1)保存至处理引擎1400的描述符表保存部1470中并传送至描述符控制器1420的方法、及(2)保存至主存储器114中并经由处理引擎1400的命令高速缓冲存储器1474而传送至描述符控制器1420的方法。
根据(1)的启动方法,能够缩短从给予启动指令直至描述符表向描述符控制器1420的传送完成为止的时间。但是,必须确保描述符表保存部1470的容量。
另一方面,根据(2)的启动方法,从给予启动指令直至描述符表向描述符控制器1420的传送完成为止需要更多的时间,但由于使用主存储器114,因此对于容量的限制少。
在采用(1)的启动方法和/或(2)的启动方法的情况下,描述符表将被保存于运算处理部110的主存储器114及控制电路的存储区域(作为一例,为描述符表保存部1470)中的至少一者。
作为一例,在图11所示的结构例中,仅将优先级高的八个描述符表148保存于描述符表保存部1470,而剩余的优先级低的八个描述符表148被保存于主存储器114。通过按照优先级来采用图11所示的两种启动方法,能够提高高优先处理的执行速度,并且抑制CPU单元100B的成本。
例如也可为:对于用于实现要求高速处理的主要固定周期任务1221的IO刷新处理的描述符表148,保存至描述符表保存部1470中,而对于用于实现要求复杂处理的通常固定周期任务1222的IO刷新处理的描述符表148,则保存至主存储器114中。
各描述符表148的启动是通过对描述符启动寄存器1472的标记写入来进行。在描述符表148中,准备与处理引擎1400可利用的描述符表148的数量(优先级的数量)相应的标记区域。
但是,并不限定于图11所示的结构,也可将所有描述符表148保存至描述符表保存部1470中,还可将所有描述符表148保存至主存储器114中。
更具体而言,根据(1)的具体的启动方法,通过处理器112执行系统程序122,从而对与保存于描述符表保存部1470的描述符表148中的指定的描述符表148对应的描述符启动寄存器1472的标记进行设置。响应描述符启动寄存器1472的标记的设置,对应的描述符表148启动,从描述符表保存部1470将描述符表148的命令传送至对应的描述符控制器1420。
在依据实施方式3的PLC 1B的处理引擎1400中,对多个描述符表148分别设定有优先级,根据分别设定的优先级,作为传送目标的描述符控制器1420已预先决定。
另一方面,根据(2)的具体的启动方法,通过处理器112执行系统程序122,对与保存于描述符表保存部1470的描述符表148中的指定的描述符表148对应的描述符启动寄存器1472的标记进行设置。响应描述符启动寄存器1472的标记的设置,将保存于主存储器114的描述符表148中的指定的描述符表148中所含的命令的全部或一部分传送至命令高速缓冲存储器1474以暂时保存。然后,从命令高速缓冲存储器1474将所述保存的命令依序传送至对应的描述符控制器1420。在无法将描述符表148中所含的所有命令一次性传送至命令高速缓冲存储器1474的情况下,也可像环形缓冲器(ring buffer)那样使用命令高速缓冲存储器1474来依序进行命令的保存及传送。
通过如上所述的方法,能够将描述符表148给予至DMA核心而使其执行所需的处理。
[4.实施方式3的变形例]
对于相当于实施方式3的PLC 1B中所含的控制电路140的结构及功能,也可安装于图6所示的通信耦合器单元300中。通过采用此种结构,通信耦合器单元300中的处理也能够高速化。
[5.总结]
本实施方式的PLC中,设置多条作为通信线的一例的局域总线,并且能够以各不相同的周期来进行IO刷新处理。这样,能够彼此独立地执行多个IO刷新处理,由此,能够解决下述问题,即:当连接于一个CPU单元的功能单元的数量增大,或者作为对象的输入数据及输出数据的数据大小变大时,通信帧的数据大小变大,通信处理所需的时间变长,IO刷新处理的周期也不得不延长。
而且,通过使IO刷新处理的周期不同,能够将可高速响应的功能单元与低速响应便足够的功能单元予以分离。由此,能够避免下述事态,即:因低速响应便足够的功能单元增大,而无法充分发挥可高速响应的功能单元的能力。
而且,根据依据本实施方式的PLC,通过使用DMA来进行存储器访问,从而即使在将包含处理器的运算处理部110与通信电路130予以连接的通信线的容量小的情况下,也能够实现高速的IO刷新处理。
应认为,此次揭示的实施方式在所有方面仅为例示而非限制者。本发明的范围是由权利要求而非所述说明所示,且意图包含与权利要求均等的含义及范围内的所有变更。
符号的说明
1、1A、1B:PLC
2、4:局域总线群
6:现场网络
21、41:第一局域总线
22、42:第二局域总线
100、100A、100B:CPU单元
110:运算处理部
112:处理器
114:主存储器
120:存贮器
122:系统程序
124:用户程序
126:配置
130、216、330:通信电路
132:缓冲器
133:路由表
134:输入数据
135:输出数据
140:控制电路
142、1411、1412、1430:总线仲裁器
147:外部接口
148:描述符表
150、350:网络接口
200:功能单元
210:通信处理部
211、212、213、214:收发端口
220:功能模块
230:IO接口
300:通信耦合器单元
310:控制器
500:用户接口画面
502、504:输入项目
506:单选按钮群
1221、1222:固定周期任务
1400:处理引擎
1401、1402、1440:DMA核心
1420:描述符控制器
1470:描述符表保存部
1472:描述符启动寄存器
1474:命令高速缓冲存储器
1482:命令
1483:命令编号
1484:命令
Claims (10)
1.一种控制装置,包括:
通信单元;
一个或多个功能单元;以及
多条通信线,连接所述通信单元与所述一个或多个功能单元之间,且彼此独立,
所述通信单元构成为执行第一任务与第二任务,
所述第一任务是经由所述多条通信线中的第一通信线,以第一周期送出第一通信帧,所述第一通信帧用于执行所述功能单元所收集的数据向所述通信单元的发送、及所述通信单元所保持的数据向所述功能单元的发送中的至少一者,
所述第二任务是经由所述多条通信线中的第二通信线,以与所述第一周期独立地设定的第二周期来送出第二通信帧,所述第二通信帧用于执行所述功能单元所收集的数据向所述通信单元的发送、及所述通信单元所保持的数据向所述功能单元的发送中的至少一者。
2.根据权利要求1所述的控制装置,其中
所述一个或多个功能单元的各个为了进行与所述通信单元之间的数据交换,而仅对任一个通信帧进行处理。
3.根据权利要求2所述的控制装置,其中
所述一个或多个功能单元的各个对于为了进行与所述通信单元之间的数据交换而进行处理的通信帧以外的通信帧,直接予以传送。
4.根据权利要求2或3所述的控制装置,其中
在所述第一通信帧及所述第二通信帧的各个中,设有与进行处理的功能单元相关联的数据区域。
5.根据权利要求1至4中任一项所述的控制装置,还包括:
提供用户接口画面的部件,所述用户接口画面对于所述一个或多个功能单元的各个,指定与所述第一通信帧及所述第二通信帧中的哪个相关联。
6.根据权利要求1至5中任一项所述的控制装置,其中
所述通信单元包括:
运算处理部,包含执行所述第一任务及所述第二任务的处理器与存储器;
通信电路,负责通信帧的收发;以及
控制电路,连接于所述运算处理部及所述通信电路,
所述控制电路包括:
第一直接存储器存取(Direct Memory Access,DMA)核心,用于访问所述运算处理部;
第二直接存储器存取核心,用于访问所述通信电路;以及
控制器,根据来自所述运算处理部的触发,按照预先定义的描述符表,对所述第一直接存储器存取核心及所述第二直接存储器存取核心依序给予命令。
7.根据权利要求6所述的控制装置,其中
所述控制电路还包括:
启动部件,用于选择性地启动从预先设定有互不相同的优先级的多个描述符表中指定的描述符表;以及
仲裁器,当同时请求依据不同的描述符表的处理时,基于对各描述符表设定的优先级来进行调停。
8.根据权利要求7所述的控制装置,其中
所述多个描述符表被保存在所述运算处理部的所述存储器、及所述控制电路的存储区域的至少一者中。
9.根据权利要求1至5中任一项所述的控制装置,其中
所述通信单元是运算单元及中继单元中的其中任一者。
10.一种通信装置,其经由彼此独立的多条通信线而与一个或多个功能单元连接,所述通信装置包括:
通信电路,负责利用所述多条通信线的通信帧的收发;以及
运算处理部,
所述运算处理部构成为执行第一任务与第二任务,
所述第一任务是经由所述多条通信线中的第一通信线,以第一周期送出第一通信帧,所述第一通信帧用于执行所述功能单元所收集的数据向所述通信单元的发送、及所述通信单元所保持的数据向所述功能单元的发送中的至少一者,
所述第二任务是经由所述多条通信线中的第二通信线,以与所述第一周期不同的第二周期来送出第二通信帧,所述第二通信帧用于执行所述功能单元所收集的数据向所述通信单元的发送、及所述通信单元所保持的数据向所述功能单元的发送中的至少一者。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017020410A JP6900690B2 (ja) | 2017-02-07 | 2017-02-07 | 制御装置 |
JP2017-020410 | 2017-02-07 | ||
PCT/JP2017/041659 WO2018146899A1 (ja) | 2017-02-07 | 2017-11-20 | 制御装置および通信装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110169017A true CN110169017A (zh) | 2019-08-23 |
CN110169017B CN110169017B (zh) | 2021-06-25 |
Family
ID=63108097
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780082635.2A Active CN110169017B (zh) | 2017-02-07 | 2017-11-20 | 控制装置以及通信装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11036205B2 (zh) |
EP (1) | EP3582445A4 (zh) |
JP (1) | JP6900690B2 (zh) |
CN (1) | CN110169017B (zh) |
WO (1) | WO2018146899A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116938631A (zh) * | 2023-09-19 | 2023-10-24 | 芯原科技(上海)有限公司 | 配置总线生成方法、系统、存储介质及电子设备 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7419889B2 (ja) * | 2020-03-09 | 2024-01-23 | オムロン株式会社 | 通信制御機器および通信制御機器の制御方法 |
CN114488988B (zh) | 2022-04-14 | 2022-07-08 | 成都秦川物联网科技股份有限公司 | 用于生产线平衡率调控的工业物联网及控制方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101315608A (zh) * | 2007-05-28 | 2008-12-03 | 三星电子株式会社 | 存储器保护方法和设备 |
CN101369241A (zh) * | 2007-09-21 | 2009-02-18 | 中国科学院计算技术研究所 | 一种机群容错系统、装置及方法 |
CN101977132A (zh) * | 2010-11-18 | 2011-02-16 | 北京航空航天大学 | 一种交换网络虚拟链路流量管制功能测试装置 |
WO2013084280A1 (ja) * | 2011-12-05 | 2013-06-13 | 三菱電機株式会社 | 通信システム |
CN103716219A (zh) * | 2013-09-25 | 2014-04-09 | 华中科技大学 | 一种基于rs485协议的现场总线通信系统 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01309445A (ja) * | 1988-06-07 | 1989-12-13 | Fujitsu Ltd | データ転送方式 |
JPH05252163A (ja) * | 1992-03-05 | 1993-09-28 | Mitsubishi Heavy Ind Ltd | リモート入出力装置 |
JPH09506219A (ja) | 1993-12-03 | 1997-06-17 | ナショナル・セミコンダクター・コーポレイション | ネットワーク・インタフェース・コントローラ |
JPH0922339A (ja) * | 1995-07-05 | 1997-01-21 | Matsushita Electric Ind Co Ltd | 遠隔操作装置 |
JP3895888B2 (ja) * | 1999-06-29 | 2007-03-22 | 株式会社日立製作所 | パケット通信方法およびノード装置 |
US7032045B2 (en) | 2001-09-18 | 2006-04-18 | Invensys Systems, Inc. | Multi-protocol bus device |
JP3970728B2 (ja) * | 2002-09-20 | 2007-09-05 | 株式会社リコー | データ通信装置 |
US20050002372A1 (en) * | 2003-06-13 | 2005-01-06 | Johan Rune | Method of and system for intra-piconet scheduling |
JP3800338B2 (ja) * | 2003-11-17 | 2006-07-26 | 横河電機株式会社 | 通信制御システム |
DE102004008910A1 (de) * | 2004-02-24 | 2005-09-08 | Robert Bosch Gmbh | Verfahren und Kommunikationssystem zur Übertragung von Informationen in einem Kraftfahrzeug |
US7293212B2 (en) * | 2005-03-22 | 2007-11-06 | Arm Limted | Memory self-test via a ring bus in a data processing apparatus |
JP2007027951A (ja) * | 2005-07-13 | 2007-02-01 | Matsushita Electric Ind Co Ltd | Dmaコントローラおよび通信処理装置 |
DE102007026457B4 (de) | 2007-06-05 | 2009-10-15 | Hanning Elektro-Werke Gmbh & Co. Kg | Vorrichtung zur Inbetriebnahme eines Feldbusteilnehmersystems sowie Inbetriebnahmeverfahren |
JP4562790B2 (ja) * | 2008-10-14 | 2010-10-13 | 三菱電機株式会社 | 時分割多重通信方式ネットワークシステム |
JP4876138B2 (ja) | 2009-03-24 | 2012-02-15 | 株式会社日立産機システム | 制御用計算機および制御システム |
JP6094196B2 (ja) | 2012-12-14 | 2017-03-15 | オムロン株式会社 | 情報処理装置、情報処理プログラムおよび情報処理方法 |
JP2015215669A (ja) * | 2014-05-08 | 2015-12-03 | 三菱電機株式会社 | 数値制御装置および制御システム |
JP6540166B2 (ja) * | 2015-03-31 | 2019-07-10 | オムロン株式会社 | 制御装置 |
-
2017
- 2017-02-07 JP JP2017020410A patent/JP6900690B2/ja active Active
- 2017-11-20 CN CN201780082635.2A patent/CN110169017B/zh active Active
- 2017-11-20 EP EP17896209.8A patent/EP3582445A4/en active Pending
- 2017-11-20 US US16/477,531 patent/US11036205B2/en active Active
- 2017-11-20 WO PCT/JP2017/041659 patent/WO2018146899A1/ja unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101315608A (zh) * | 2007-05-28 | 2008-12-03 | 三星电子株式会社 | 存储器保护方法和设备 |
CN101369241A (zh) * | 2007-09-21 | 2009-02-18 | 中国科学院计算技术研究所 | 一种机群容错系统、装置及方法 |
CN101977132A (zh) * | 2010-11-18 | 2011-02-16 | 北京航空航天大学 | 一种交换网络虚拟链路流量管制功能测试装置 |
WO2013084280A1 (ja) * | 2011-12-05 | 2013-06-13 | 三菱電機株式会社 | 通信システム |
CN103716219A (zh) * | 2013-09-25 | 2014-04-09 | 华中科技大学 | 一种基于rs485协议的现场总线通信系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116938631A (zh) * | 2023-09-19 | 2023-10-24 | 芯原科技(上海)有限公司 | 配置总线生成方法、系统、存储介质及电子设备 |
CN116938631B (zh) * | 2023-09-19 | 2023-12-29 | 芯原科技(上海)有限公司 | 配置总线生成方法、系统、存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
JP2018129613A (ja) | 2018-08-16 |
WO2018146899A1 (ja) | 2018-08-16 |
CN110169017B (zh) | 2021-06-25 |
EP3582445A4 (en) | 2021-03-03 |
EP3582445A1 (en) | 2019-12-18 |
JP6900690B2 (ja) | 2021-07-07 |
US11036205B2 (en) | 2021-06-15 |
US20190354088A1 (en) | 2019-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6307789B1 (en) | Scratchpad memory | |
CN102023890B (zh) | 一种用于设置事务优先级的数据处理装置和方法 | |
CN102571556B (zh) | 用于分配并优先化数据传输的方法和设备 | |
JP5793690B2 (ja) | インタフェース装置、およびメモリバスシステム | |
CN106648896B (zh) | 一种Zynq芯片在异构称多处理模式下双核共享输出外设的方法 | |
CN1996857B (zh) | 网络设备、用于网络设备的可编程网络元件及其实现方法 | |
CN105511387B (zh) | 一种plc分布式远程io扩展模块的扩展方法 | |
CN110169017A (zh) | 控制装置以及通信装置 | |
CN101771598B (zh) | 一种实时以太网通信调度方法 | |
CN104794076A (zh) | 处理总线架构中的请求的方法及总线架构 | |
JP2018128780A (ja) | 演算装置、制御装置および制御方法 | |
CN100430847C (zh) | 在总线系统中确定时间的方法和装置以及总线系统 | |
JP2009512259A (ja) | FlexRay通信モジュールとFlexRay加入者装置とを繋ぐ加入者インタフェース、およびFlexRay通信モジュールとFlexRay加入者装置とを繋ぐ加入者インタフェースを経由するメッセージの伝送方法 | |
US20080256320A1 (en) | Method For Storing Messages in a Message Memory and Message Memory | |
Yan et al. | Mixed time-triggered and event-triggered industrial controller in IoT environment | |
CN100361084C (zh) | 用于利用门管理器维护实体顺序的方法和装置 | |
CN110178344A (zh) | 控制装置以及通信装置 | |
CN103827836A (zh) | 存储数据的方法和装置 | |
CN1996856B (zh) | 用于处理信息的网络设备、可编程网络元件及其方法 | |
CN210780847U (zh) | 一种EtherCAT总线时钟分布系统 | |
Kang et al. | Development of CAN Network for VMS Based on XC164CS | |
Gievska et al. | Pattern-based framework for multimedia distributed applications | |
CN109101457A (zh) | 一种基于c6678的单核实现ndk通信与srio传输的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |