控制装置、控制系统、控制方法以及存储介质与流程

文档序号:18522965发布日期:2019-08-24 09:58阅读:149来源:国知局
控制装置、控制系统、控制方法以及存储介质与流程

本发明涉及一种控制系统(system)、控制装置、控制方法以及存储介质,此控制系统包括对性能要求不同的多种控制数据(data)进行彼此通信的控制装置与各种从机(slave)装置。



背景技术:

当前,工厂自动化(factoryautomation,fa)系统已得到广泛实用。fa系统包括控制装置与多个从机装置。多个从机装置为测量器、开关(switch)或控制用驱动器(driver)等,在控制用驱动器上连接有控制对象机器。

控制装置针对多个从机装置,对控制数据进行通信。此时,控制装置针对多个从机装置,以预先设定的控制周期(循环(cyclic)周期)来对控制数据进行依序通信。由此,确保控制数据的发送的实时(realtime)性。以下,将此控制数据称作循环控制数据。

另一方面,在控制装置与多个从机装置之间,有时对与循环控制数据不同的其他信息系数据进行通信。信息系数据是未必需要如循环控制数据那样,在循环周期进行通信的数据,容量也相对较大。专利文献1所示的系统中,对所述信息系数据进行分割,分为多个循环周期来进行通信。

[现有技术文献]

[专利文献]

专利文献1:日本专利特开2004-363782号公报



技术实现要素:

[发明所要解决的问题]

但是,对机器人装置或机器人控制装置等通信的控制数据包含多个命令等,有时容量比所述以往的循环控制数据大。以下,将对所述机器人装置或机器人控制装置等通信的、容量比以往的循环控制数据大的控制数据称作准控制数据。

此处,若准控制数据的数据容量比针对循环周期的1周期而分配给准控制数据的通信上限容量大,则控制装置有时无法在循环周期内对所有的准控制数据进行通信。

此时,考虑控制装置以分配给循环周期的通信上限容量来分割准控制数据,跨及多个循环周期进行通信。并且,用户必须在控制程序中记载下述处理:将所分割的准控制数据分别分配给在各周期发送的每个数据区域。因此,对于用户而言,控制程序的制作变得繁琐。

而且,若通信方法变多,则用户在制作控制程序时,必须针对每个命令来记述通信方法的指定、选择。因此,控制程序的结构变得复杂,对于用户而言,控制程序变得难以理解。

进而,也考虑到根据通信状态而无法进行循环通信的情况。为了应对此种情况,用户必须指定利用哪种通信方法来对各命令进行通信。因此,控制程序的结构变得更加复杂,对于用户而言,控制程序变得更加难以理解。

因此,本发明的目的在于提供一种技术,即便是比以往简单的程序结构,也可根据通信状态而适当选择多个通信方法来对控制数据进行通信。

[解决问题的技术手段]

根据本发明的一例,控制装置包括循环通信部、消息通信部及通信管理部。循环通信部进行遵照预先设定的循环周期的通信。消息通信部进行不需要遵照循环周期的通信。通信管理部对针对循环通信部及消息通信部的通信调度进行管理。通信管理部在检测到通信预定的控制数据是优先选择循环通信部中的通信的数据时,检测循环通信部的通信状态。若能进行循环通信,则通信管理部将控制数据保存至循环通信部,若不能进行循环通信,则将控制数据保存至消息通信部。

所述结构中,即便不在控制程序中对控制数据的通信方法的指定、选择进行定义,也可通过与通信状态相应的适当的通信方法,来对控制数据进行通信。

根据本发明的一例,控制数据包括:第1控制数据,设定有遵照循环周期的到达保证时间;以及第2控制数据,设定有比循环周期长的到达保证时间。进行保存的选择的控制数据是第2控制数据。

所述结构中,对于设定有到达保证时间的第2控制数据,优先适用循环通信,即使无法利用循环通信,第2控制数据也可通过消息通信来进行通信。

根据本发明的一例,若第2控制数据的总数据容量比能够确保循环周期的1周期的通信上限容量大,则通信管理部根据通信上限容量而对于每个循环周期分割第2控制数据,并保存至循环通信部。

所述结构中,数据容量大的第2控制数据也可使用循环通信来切实地通信。

根据本发明的一例,通信管理部在第2控制数据的分割通信中检测到循环通信变为不可能时,将接下来的第2控制数据保存至消息通信部。

所述结构中,即使循环通信在分割通信的中途变为不可能,也能够对尚未发送的第2控制数据进行通信。

根据本发明的一例,通信管理部在第2控制数据的分割通信中检测到循环通信变为不可能时,将进行分割通信的第2控制数据的所有数据保存至消息通信部。

所述结构中,即使循环通信在分割通信的中途变为不可能,也能够用消息通信再次进行通信。

根据本发明的一例,通信管理部在第2控制数据的通信中,若所述第2控制数据的剩余容量大于切换阈值,则将剩余容量的数据保存至消息通信部。

所述结构中,能够有效活用消息通信的通信频带来对第2控制数据进行通信。

[发明的效果]

根据本发明,即便是比以往简单的程序结构,也能够根据通信状态而适当选择多个通信方法来对控制数据进行通信。由此,用户能够无须在意通信状态及多个通信方法的选择而制作、编辑控制数据。

附图说明

图1是表示控制系统中的装置的概略结构的图。

图2是表示控制装置的硬件结构的框图。

图3是控制装置的功能框图。

图4是表示利用控制网络进行通信的帧数据的概略数据结构的图。

图5是表示控制装置的基本处理的流程图。

图6是表示未适用分割通信时的数据结构的一例的图。

图7是表示控制装置的第1应用处理的流程图。

图8是表示控制装置的第2应用处理的流程图。

图9是表示适用分割通信时的数据结构的图。

图10是表示控制装置的第3应用处理的流程图。

图11是表示控制装置的第4应用处理的流程图。

符号的说明

1:控制系统

10:控制装置

30:控制用网络

60:信息通信用网络

61:个人计算机

62:工业用个人计算机

63:数据库装置

100:数据总线

101:cpu

102:存储器

103:存储介质

104:收发部

105:上位通信部

110:通信管理部

111:第1控制系通信管理

112:第2控制系通信管理

113:信息系通信管理

121:循环通信部

122:消息通信部

130:通信驱动器

141:用户应用处理部

142:其他处理部

211、212、221:从机装置

具体实施方式

以下,参照附图来说明本发明的实施方式。

·适用例

参照附图来说明本发明的实施方式的控制装置、控制系统、控制方法以及控制程序。本实施方式中,作为控制系统,以fa(工厂自动化)系统为例进行说明。

图5是表示控制装置的基本处理的流程图。

如图5所示,控制装置10的通信管理部110在获取第2控制数据时(s11),判断循环通信的通信状态(s12)。所谓第2控制数据,是指将比循环通信的循环周期的1周期长的时间设定为到达保证时间的数据。例如,在第2控制数据中,有机器人装置的命令、日志(log)获取请求等。

若能进行循环通信(s12:判断a),则控制装置10的通信管理部110将所获取的第2控制数据保存至循环通信部121(s13)。所谓循环通信,是指遵照循环周期的通信。循环通信部121对所保存的第2控制数据进行循环通信(s14)。

若不能进行循环通信(s12:判断b),则控制装置10的通信管理部110将所获取的第2控制数据保存至消息通信部122(s15)。所谓消息通信,是指不需要遵照循环通信的通信。消息通信部122对所保存的第2控制数据进行消息通信(s16)。

由此,控制装置10能够根据通信状态来以更适当的通信方法对第2控制数据进行通信。而且,由此,用户无须在控制程序中记载第2控制数据的通信方法的选择条件、选择方法。因此,可为简单的程序结构,用户的程序制作的负荷得以减轻。

·结构例

图1是表示控制系统中的装置的概略结构的图。如图1所示,控制系统1包括控制装置10、从机装置211、从机装置212、从机装置221、控制用网络30、信息通信用网络60、个人计算机(personalcomputer)61、工业用个人计算机62、及数据库(database)装置63。

(数据定义)

首先,对各数据的定义进行说明。

第1控制数据根据控制用网络30中所用的循环周期(例如10msec以下)的1周期来决定到达保证时间(第1保证时间)。第1控制数据包含1比特(bit)至数十字节(byte)的控制数据群。所谓到达保证时间,例如是指为了使对象从机装置正常动作而控制数据必须到达的最长(慢)的时间。

第2控制数据是被定义为,以比循环周期的1周期长的到达保证时间(第1保证时间)而完成通信的控制数据。第2控制数据中,存在数据容量相对于第1控制数据为大的数据,例如存在容量比能以循环周期的1周期来通信的数据容量大的数据。第2控制数据是构成的多个信息的顺序已被决定的控制数据。第2控制数据例如包含实现机器人装置的序列动作的多个命令群。

信息系数据是不同于第1控制数据及第2控制数据,未设定到达保证时间的数据。例如,信息系数据包含与控制用网络30连接的各装置的日志(log)的获取请求数据、日志、监控图像等各种数据。

第1控制数据与第2控制数据是遵照循环周期而通信的数据,信息系数据是以不需要遵照循环周期的规格而通信的数据。

(控制系统)

控制用网络30例如是遵照以太网控制自动化技术(controlautomationtechnology,ethercat(注册商标))或过程现场网(processfieldnet,profinet)等作为网络规格的网络。另外,控制用网络30并不限于这些,只要是与循环周期同步地执行数据收发的网络。控制装置10、从机装置211、从机装置212及从机装置221通过控制用网络30而连接。

信息通信用网络60例如是遵照ethernet(注册商标)作为网络规格的网络。控制装置10、个人计算机61、工业用个人计算机62及数据库装置63通过信息通信用网络60而连接。

在个人计算机61中,安装有控制程序的编辑工具等。个人计算机61进行控制装置10、从机装置211及从机装置212的控制程序的制作、编辑、输出。个人计算机61将控制程序输出至控制装置10。

在工业用个人计算机62中,例如安装有机器人用控制程序的编辑工具等。工业用个人计算机62进行从机装置221的控制程序的制作、编辑、输出。工业用个人计算机62例如将机器人用控制程序输出至控制装置10。

数据库装置63从控制装置10存储各装置的日志等。另外,执行成为信息系数据的源的数据的生成、获取的装置并不限于数据库装置63,也可为其他装置。而且,个人计算机61、工业用个人计算机62及数据库装置63是构成上位系统的装置,构成上位系统的装置并不限于这些。

具体而言,控制装置10例如通过可编程逻辑控制器(programmablelogiccontoroller,plc)而实现。控制装置10只要是经由控制用网络30来对控制数据进行通信,并经由信息通信用网络60来对各种数据进行通信的装置,则也可为其他装置。

控制装置10例如使用来自个人计算机61的控制程序,生成第1控制数据。控制装置10例如使用来自工业用个人计算机62的机器人用控制程序,生成第2控制数据。另外,控制装置10也能够使用来自个人计算机61的控制程序来生成第2控制数据。

而且,控制装置10生成信息系数据。信息系数据包含个人计算机61欲从连接于控制用网络30的从机装置211、从机装置212及从机装置221获取的信息以及所述信息的获取请求等。因此,例如,信息系数据是根据来自个人计算机61的指示而在控制装置10中生成。

具体而言,从机装置211、从机装置212例如是通过伺服驱动器(servodriver)、传感器等测量器等而实现。另外,从机装置211、从机装置212只要是以第1控制数据来动作的装置,则也可为其他装置。

具体而言,从机装置221例如是通过机器人装置或连接于机器人装置的机器人控制装置而实现。另外,从机装置221只要是以第2控制数据来动作的装置,则也可为其他装置。

控制装置10、从机装置211、从机装置212及从机装置221对第1控制数据、第2控制数据及信息系数据的收发进行调度。控制装置10、从机装置211、从机装置212及从机装置221根据所述调度,遵照循环周期来对第1控制数据、及第2控制数据进行通信。

此时,如上所述,控制装置10判断循环通信的通信状态。控制装置10根据所述通信状态的判断结果而选择循环通信或消息通信中的任一个来对第2控制数据进行通信。

概略而言,若为能够以循环通信来对第2控制数据进行通信的状态,则控制装置10选择循环通信。另一方面,若为无法以循环通信来对第2控制数据进行通信的状态,则控制装置10选择消息通信。所谓循环通信,是指遵照循环周期的通信。所谓消息通信,是指不需要遵照循环周期的通信,例如是尽力服务(besteffort)型通信。

(控制装置的硬件结构)

图2是表示控制装置的硬件结构的框图。

如图2所示,作为硬件结构,控制装置10包括中央处理器(centralprocessingunit,cpu)101、存储器(memory)102、存储介质103、收发部104及上位通信部105。控制装置10中,cpu101、存储器102、存储介质103、收发部104及上位通信部105通过数据总线(databus)100而连接。

cpu101将存储于存储介质103中的系统程序、及用户应用程序(userapplicationprogram)读出至存储器102中而执行,由此来实现后述的各功能块(block)的各处理。存储器102例如通过动态随机存取存储器(dynamicrandomaccessmemory,dram)或静态随机存取存储器(staticrandomaccessmemory,sram)等易失性存储元件而实现。而且,存储介质103例如通过磁存储介质、快闪存储器(flashmemory)等非易失性存储介质而实现。

收发部104是控制装置10中的控制用网络30的接口,执行遵照循环周期的第1控制数据及第2控制数据的收发(通信)。而且,收发部104例如使用与循环周期的1周期中的第1控制数据及第2控制数据所占用的通信频带不同的通信频带,来执行信息系数据的收发(通信)。

上位通信部105是控制装置10中的信息通信用网络60的接口,执行与所述上位系统的各装置之间的通信。

(控制装置的功能块)

图3是控制装置的功能框图。

如图3所示,控制装置10包括通信管理部110、循环通信部121、消息通信部122、通信驱动器130、用户应用处理部141及其他处理部142。

通信管理部110执行第1控制系通信管理111、第2控制系通信管理112及信息系通信管理113。而且,通信管理部110执行第1控制系通信管理111、第2控制系通信管理112及信息系通信管理113的调度,即,后述的各种数据的通信调度。此时,通信管理部110基于作为通信对象的从机装置的个数、种类,来分配相对于循环周期的1周期的、各从机装置的通信频带(参照图4)。而且,通信管理部110判断循环通信的通信状态。

例如,通信管理部110判断循环通信的通信状态。具体而言,通信管理部110检测是否能够进行通过循环通信部121的循环通信。此种通信状态的判断例如可基于下述方式来实现,即,定期地对判断能否通信的数据包数据进行通信的结果,以及相对于发送恒定的第1控制数据及第2控制数据的来自各从机装置的响应时间、响应的有无等。所述判断用的数据包数据是在不会对第1控制数据及第2控制数据的通信造成影响的时机来通信。

而且,例如,通信管理部110逐次检测与各从机装置的定时器(timer)的时刻同步精度。若时刻同步精度比规定的阈值好,则通信管理部110判断为能进行循环通信,若时刻同步精度比规定的阈值差,则判断为不能进行循环通信。

通信管理部110根据循环通信的通信状态,从循环通信或消息通信中的任一种中选择第2控制数据的通信。

如上所述,第1控制系通信管理111遵照预先设定的循环周期,执行在每个循环周期进行通信的第1控制数据的通信管理。第1控制系通信管理111将第1控制数据保存至循环通信部121。

第2控制系通信管理112执行第2控制数据的通信管理。

若是能够以循环通信来对第2控制数据进行通信的状态,则第2控制系通信管理112将第2控制数据保存至循环通信部121。另一方面,若是无法以循环通信来对第2控制数据进行通信的状态,则控制装置10将第2控制数据保存至消息通信部122。

而且,若第2控制数据的数据容量比能以循环周期的1周期来发送的第2控制数据的最大容量(通信容量)大,则第2控制系通信管理112将第2控制数据分割为多个通信用数据。并且,第2控制系通信管理112以多个通信用数据为单位来执行通信管理。

信息系通信管理113执行信息系数据的通信管理。此时,若信息系数据的数据容量比能以循环周期的1周期来通信的信息系数据的最大容量(发送容量)大,则信息系数据也分割为多个数据。并且,信息系通信管理113以经分割的多个数据为单位来执行通信管理。信息系通信管理113将信息系数据提供给消息通信部122。此时,若信息系数据已被分割为多个数据,则通信管理部110将经分割的多个数据的每个提供给消息通信部122。

循环通信部121将第1控制数据及第2控制数据转换为控制用网络30的数据格式。循环通信部121将转换后的第1控制数据及第2控制数据通过收发的调度而输出至通信驱动器130。

消息通信部122通过收发的调度,将信息系数据或第2控制数据输出至通信驱动器130。

通信驱动器130执行收发部104的控制,将第1控制数据及第2控制数据经由控制用网络30来进行通信。此时,若第2控制数据被分割为多个通信用数据,则对多个通信用数据进行依序通信。同样地,若信息系数据被分割为多个数据,则对所分割的多个数据进行依序通信。

另外,用户应用处理部141执行所述的用户应用程序。通过所述用户应用处理部141,获取来自工业用个人计算机62的第2控制数据。其他处理部142例如执行控制装置10的启动处理、或使用控制用网络30的控制的初始处理等。

(具体的通信处理)

(通信处理例1)

图4是表示利用控制网络进行通信的帧数据的概略数据结构的图。另外,图4中,表示了图1所示的系统结构的情况。而且,图4中,表示了循环通信正常动作的状态。图5是表示控制装置的基本处理的流程图。

首先,使用图4来说明帧数据的结构。如图4所示,帧数据包含从先头开始依照下述顺序排列的数据,即:控制数据用的数据头、针对从机装置211的第1控制数据d11、针对从机装置212的第1控制数据d12、针对从机装置221的第1控制数据d13、针对从机装置221的第2控制数据d23、控制数据用的数据尾、信息系数据用的数据头、信息系数据di、信息系数据用的数据尾。而且,图4中,在帧数据中,在控制数据用的数据尾与信息系数据用的数据头之间、以及信息系数据用的数据头之后,设定有与数据的冲突避免用的待机时间dt对应的空白数据区域。优选设定此待机时间dt,但也可予以省略。并且,通过包含此种结构的帧数据,执行循环周期的1周期中的通信。

另外,在不能进行循环通信的情况下,即,在不能进行第2控制数据的通信的情况下,不使用图4中的第2控制数据d23用的频带,而将此第2控制数据d23用的频带量分配给信息系数据di用的频带。

使用此种数据结构,参照图5,如上所述,控制装置10根据通信状态来对第2控制数据的通信使用循环通信或消息通信中的任一种。

如图5所示,控制装置10的通信管理部110在获取第2控制数据时(s11),判断循环通信的通信状态(s12)。所谓第2控制数据,是指将比循环通信的循环周期的1周期长的时间设定为到达保证时间的数据。例如,在第2控制数据中,有机器人装置的命令、日志获取请求等。

若能进行循环通信(s12:判断a),则控制装置10的通信管理部110将所获取的第2控制数据保存至循环通信部121(s13)。所谓循环通信,是指遵照循环周期的通信。循环通信部121对所保存的第2控制数据进行循环通信(s14)。

若不能进行循环通信(s12:判断b),则控制装置10的通信管理部110将所获取的第2控制数据保存至消息通信部122(s15)。所谓消息通信,是指不需要遵照循环通信的通信。消息通信部122对所保存的第2控制数据进行消息通信(s16)。

由此,控制装置10能够根据通信状态来以更适当的通信格式对第2控制数据进行通信。

在此种处理的情况下,例如只要以图6所示的数据结构来构成帧数据即可。图6是表示未适用分割通信时的数据结构的一例的图。另外,图6中,仅表示了针对需要第2控制数据的从机装置的频带。

如图6所示,帧数据中的相对于对第2控制数据进行通信的从机装置的数据区域包含格式识别符(identification,id)、事务(transaction)id、总数据大小及请求数据,且是从先头比特开始依此顺序排列的数据。

格式id是第2控制数据的数据格式的识别数据。通过格式id,能够识别以下所示的第2控制数据的数据格式。

事务id是表示第2控制数据的识别数据。通过对多个帧的第2控制数据的事务id进行比较,能够判定所述多个帧的第2控制数据是否基于相同的第2控制数据。即,若多个帧的第2控制数据(通信用数据)的事务id相同,则能够判定这些第2控制数据(通信用数据)是基于一个第2控制数据。另一方面,若多个帧的第2控制数据(通信用数据)的事务id不同,则可判定为这些第2控制数据(通信用数据)分别为各别的第2控制数据。

总数据大小vm表示第2控制数据的总数据容量。

请求数据包含命令类型、命令id及自变量(argument)am等,且是从先头比特开始依此顺序排列的数据。自变量am包含实际用于控制的命令群,命令类型及命令id是用于识别自变量am中记载的命令群的数据。另外,此处是以请求数据为例进行说明,但也能够适用于相对于请求数据的响应数据。并且,请求数据及响应数据并不限于所述数据结构,能够任意定义。

(通信处理例2)

图7是表示控制装置的第1应用处理的流程图。图7所示的处理表示第2控制数据的数据容量比循环周期的1周期大的情况,此点与图5所示的基本处理不同。图7所示的处理的其他处理与图5所示的处理同样,省略同样部位的说明。

若能进行循环通信,则控制装置10对第2控制数据的通信预定容量与通信上限容量进行比较。所谓通信上限容量,是指在循环周期的1周期分配给第2控制数据的上限数据容量(通信频带)。具体而言,所谓上限数据容量,是通过从在循环周期的1周期中分配给对第2控制数据进行通信的各从机装置的频带,减去第1控制数据的通信容量而算出。此时,优选的是,控制装置10将第2控制数据的性能要求考虑在内来算出通信上限容量。所谓性能要求,例如包含第2控制数据的到达保证时间。

若通信预定容量为通信上限容量以下(s21:是),则控制装置10将第2控制数据保存至循环通信部121(s22)。

另一方面,若通信预定容量比通信上限容量大(s21:否),则控制装置10根据通信上限容量来分割第2控制数据,由此而生成通信用数据(s23)。控制装置10通过从通信预定容量减去此次通信的通信用数据的数据容量,从而更新通信预定容量(s24)。控制装置10将通信用数据保存至循环通信部121(s22)。

控制装置10的循环通信部121对所保存的第2控制数据或通信用数据进行循环通信(s25)。

若已获取的所有第2控制数据的通信尚未完成(s26:否),则控制装置10返回步骤s21的处理,依序重复所述处理。另一方面,若已获取的所有第2控制数据的通信已完成(s26:是),则控制装置10结束处理。

通过执行此种处理,即使第2控制数据的数据容量比相对于循环周期的1周期而分配给第2控制数据的频带(数据容量)大,控制装置10也能够使用循环通信来切实地对第2控制数据进行通信。

(通信处理例3)

图8是表示控制装置的第2应用处理的流程图。图8所示的处理与图6所示的处理的不同之处在于,将第2控制数据的通信由循环通信切换为消息通信。图8所示的处理的其他处理与图6所示的处理同样,省略同样部位的说明。图8所示的步骤s31、s32、s33与图6所示的步骤s21、s22、s23分别相同。

控制装置10对第2控制数据进行分割而生成通信用数据(s34)。控制装置10对此通信用数据添附标记(flag)数据flgcyc(s35)。flgcyc是用于执行后述的处理的标记数据。

进而,控制装置10对通信用数据添附片段id(s36)。控制装置10进行通信预定容量的更新(s37)。

在此种处理的情况下,例如只要以图9所示的数据结构来构成帧数据即可。图9是表示适用分割通信时的数据结构的图。另外,图9中,仅表示了针对需要第2控制数据的从机装置的频带。

如图9所示,帧framen1的第2控制数据(通信用数据)d231包含格式id、事务id、总数据大小、片段id、片段数据大小及请求数据,且是从先头比特开始依此顺序排列的数据。

帧framen2的第2控制数据(通信用数据)d232也包含格式id、事务id、总数据大小、片段id、片段数据大小及请求数据,且是从先头比特开始依此顺序排列的数据。

格式id、事务id、总数据大小如上所述,省略说明。

片段id是表示经分割的第2控制数据中的顺序的识别数据。即,通过片段id,能够识别出所述帧的第2控制数据(通信用数据)是将通信前的第2控制数据分割后的第几个数据。例如,若是图9的示例,则在framen1中,片段id=0,能够识别出其为经分割的最开头的通信用数据。framen2中,片段id=1,能够识别出其为经分割的第2个通信用数据。

因此,从机装置221接收这些帧framen1、framen2的通信数据来进行分析,并依照片段id的顺序将请求数据予以排列,由此,便能够切实且准确地复原通信前,即,分割前的第2控制数据。由此,从机装置221能够进行复原而不会弄错第2控制数据中所含的命令群的顺序,从而能够切实地抑制机器人装置的误动作等。而且,从机装置221通过检测片段id的局部缺失,从而能够检测数据的缺失,并能够对控制装置10进行再发送请求。

片段大小表示所述帧内的第2控制数据(通信用数据)的数据容量。例如,若是图9的示例,则在framen1中,片段大小=vn1,能够识别出经分割的最开头的通信用数据的数据容量为vn1。在framen2中,片段大小=vn2,能够识别出经分割的第2个通信用数据的数据容量为vn2。在添附有此种片段大小的情况下,从机装置221能够算出所接收的请求数据的数据容量,通过比较片段大小,能够检测接收错误。

在第2控制数据的分割通信中,若循环通信变为不可能,则控制装置10执行以下所示的处理。

若控制装置10判断为循环通信为不可能(s12:判断b),则对紧接在前的第2控制数据的标记数据flgcyc进行检测(s41)。

若控制装置10未检测到标记数据flgcyc=真(true)(s41:否),则不对第2控制数据添附片段id而保存至消息通信部122(s42)。即,控制装置10将判断为不能进行循环通信的时机的第2控制数据判别为并非经分割的数据,并保存至消息通信部122。

若控制装置10检测到标记数据flgcyc=真(true)(s41:是),则对第2控制数据(通信用数据)添附片段id(s44)。此时,例如控制装置10对之前的通信用数据的片段id进行检测,并进行使所述片段id增加(increment)“1”的更新而添附。即,控制装置10将判断为不能进行循环通信的时机的第2控制数据判别为经分割的数据,添附片段id而保存至消息通信部122。

消息通信部122对所保存的第2控制数据或通信用数据进行消息通信(s43)。

若已获取的所有第2控制数据的通信尚未完成(s38:否),则控制装置10返回步骤s12的处理,依序重复所述处理。另一方面,若已获取的所有第2控制数据的通信已完成(s38:是),则控制装置10结束处理。

通过使用此种处理,在第2控制数据的分割通信中,即使循环通信变为不可能,也能够通过消息通信来切实地对第2控制数据的剩余数据进行通信。此时,通过使用片段id,即使第2控制数据是以循环通信与消息通信进行通信,从机装置221也能够忠实地再现原始数据的排列而切实地复原第2控制数据。

而且,通过使用此种处理,对于因循环通信中断而只能部分地通信的第2控制数据,只要通过消息通信来对未能通信的剩余数据进行通信即可。因此,能够更有效地活用消息通信用的频带。

(通信处理例4)

图10是表示控制装置的第3应用处理的流程图。图10所示的处理与图8所示的处理的不同之处在于,将中断的第2控制数据通过消息通信而全部重新通信。图10所示的处理的其他处理与图8所示的处理同样,省略同样部位的说明。

若控制装置10判断为不能进行循环通信(s12:判断b),则将中断的第2控制数据从先头开始全部保存至消息通信部122(s51)。即,控制装置10对于通信中断的第2控制数据,将已通过循环通信而通信的数据区域和未通信的数据区域汇总而保存至消息通信部122。

消息通信部122对所保存的第2控制数据进行消息通信(s52)。

使用此种处理,在第2控制数据的分割通信中,即使循环通信变为不可能,也能够通过消息通信来切实地对所有第2控制数据进行通信。而且,通过使用此处理,从机装置221无须检测片段id,便能够复原第2控制数据。

(通信处理例5)

图11是表示控制装置的第4应用处理的流程图。图11所示的处理与所述各处理的不同之处在于,根据第2控制数据的剩余容量来选择循环通信与消息通信。概略而言,第4应用处理中,在分割第2控制数据的形态中,若剩余容量比切换阈值大,且消息通信的通信频带满足性能要求,则使用所述消息通信来对第2控制数据的剩余容量进行通信。另外,以下,仅对与所述处理不同的部位进行说明,省略同样部位的说明。

控制装置10在循环通信中,对第2控制数据中的未发送量即剩余容量与切换阈值进行比较(s61)。例如,切换阈值能够根据上限数据容量来设定,所述上限数据容量在一边分割剩余容量一边继续通过循环通信来进行通信的情况下,能够满足性能要求。若剩余容量为切换阈值以下(s61:是),则控制装置10继续循环通信(s22,s25)。

若剩余容量比切换阈值大(s61:否),则控制装置10判断通过消息通信能否实现性能要求。此判断例如是根据消息通信的可利用频带、剩余容量、及性能要求来执行。

例如,若在使用消息通信的可利用频带来对剩余容量进行通信的情况下,可满足性能要求,则控制装置10判断为满足性能要求(s71:是)。此时,控制装置10对第2控制数据的剩余容量的数据进行消息通信(s15、s16)。

若控制装置10判断为即便利用消息通信的可利用频带也满足不了性能要求(s71:否),则执行错误通知(s72)。此处,若有来自用户的发送指示(s73:是),则对第2控制数据的剩余容量的数据进行消息通信(s15、s16)。此时,例如若存在消息通信中的信息系数据,则控制装置10也可将其暂时中断,而使第2控制数据的剩余容量的数据通信插入。另一方面,若无来自用户的发送指示(s73:否),则结束处理。

通过进行此种处理,既能有效即有效果或有效率地活用消息通信的通信频带,又能以满足性能要求的方式来对第2控制数据进行通信。

另外,也可采用不进行发送指示的受理而在错误通信后强制性地执行消息通信的形态、与错误通信一同结束处理的形态。而且,在通过消息通信满足不了性能要求的情况下,也可以无法发送所有数据为前提而恢复为循环通信。

另外,所述说明中,是以fa系统为例进行了说明,但即便是对使用循环周期来进行时刻保证的数据、与具有比循环周期长的时刻保证且包含比基于循环周期的数据容量大的数据容量的数据进行发送的其他系统,也能够适用所述结构及处理并获得所述作用效果。

而且,所述说明中,为了便于说明,主要记载了从控制装置10经由控制用网络30来对从机装置211、从机装置212及从机装置221发送数据的情况。但是,各数据中,也有自从机装置211、从机装置212及从机装置221发送、返回至控制装置10的数据,对于这些数据,也能够适用所述处理并获得所述作用效果。即,对于利用控制用网络30来通信的第2控制数据,能够适用所述处理并能够起到所述作用效果。例如,作为针对机器人装置的第2控制数据,包含日志数据的获取命令以作为从控制装置10发送至从机装置221的数据,且包含与所述获取命令对应的记录数据(loggingdata)(例如数十秒钟的马达的角度数据等)以作为自从机装置221发送(返回)至控制装置10的数据。

而且,所述说明中,表示了进行基于tdma方式的通信的情况,但在码分多址(codedivisionmultipleaccess,cdma)方式等中,也能够使用所述概念来实现第2控制数据的分割发送。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1