首页 / 响应性解析装置

响应性解析装置实质审查 发明

技术领域

[0001] 本发明涉及响应性解析装置。

相关背景技术

[0002] 以往,已知有能够利用API(Application Programming Interface:应用程序编程接口)的数值控制装置(例如,参照专利文献1)。在数值控制装置对来自API的请求依次进行响应的情况下,若同时执行多个API,则会产生API的处理等待,因此数值控制装置对API的响应延迟。在该情况下,有可能无法满足需要应用程序的API的调用周期。因此,在变更现有设备的应用程序结构的情况下,需要调查由API引起的访问的增加对现有系统以及应用程序造成的影响。
[0003] 现有技术文献
[0004] 专利文献
[0005] 专利文献1:日本特开2017‑27178号公报

具体实施方式

[0018] 以下,对本发明的实施方式的一例进行说明。
[0019] 图1是表示数值控制系统1的结构例的图。如图1所示,数值控制系统1具备外部装置2和数值控制装置3。
[0020] 外部装置2例如是具备控制装置以及存储装置等的计算机装置。外部装置2经由通信接口等与数值控制装置3可通信地连接。
[0021] 另外,外部装置2具备应用程序21和应用程序编程接口(API)22。应用程序21具有对数值控制装置3执行预定的处理的多个应用程序。
[0022] 应用程序21包含新追加的应用程序21a和现有的应用程序21b。另外,API22具有与新追加的应用程序21a对应的API22a和与现有的应用程序21b对应的API22b。
[0023] 外部装置2通过从应用程序21执行API22,访问数值控制装置3的数据。例如,外部装置2通过使用API22的应用程序21监视与数值控制装置3连接的机床的运转状况。
[0024] 数值控制装置3与机床连接,控制机床的动作。数值控制装置3经由通信接口等与外部装置2可通信地连接。另外,数值控制装置3具备请求接收部31、请求存储部32、请求执行部33、CNC数据存储部34、执行履历存储部35、显示部36和响应性解析装置4。
[0025] 请求接收部31接收来自API22的请求数据,并将接收到的请求数据存储于请求存储部32。请求执行部33读出在请求存储部32中存储的请求数据。
[0026] 请求执行部33基于读出的请求数据,访问存储于CNC数据存储部34的CNC数据,执行来自API22的请求。
[0027] 执行履历存储部35存储与API22相关的履历信息。与API22相关的履历信息例如由数值控制装置3的控制部等从API22取得,并存储在执行履历存储部35中。与API22相关的履历信息例如包含与各应用程序21对应的API22的执行开始时间、执行周期、处理时间等。
[0028] 显示部36例如由液晶显示器等构成,显示由响应性解析装置4提供的各种数据。
[0029] 响应性解析装置4从执行履历存储部35取得API22的执行履历,解析API22的响应性。
[0030] 图2是表示数值控制系统1的另一结构例的图。在图2所示的数值控制系统1中,外部装置2具备响应性解析装置4来代替图1所示的数值控制装置3的响应性解析装置4。另外,外部装置2具备显示部23来代替图1所示的数值控制装置3的显示部36。显示部23具有与显示部36相同的结构。另外,图2所示的数值控制系统1的其他结构具有与图1所示的数值控制系统1相同的结构。
[0031] 图3是表示响应性解析装置4的结构的图。
[0032] 如图3所示,响应性解析装置4具备控制部41和存储部42。
[0033] 控制部41是CPU(Central Processing Unit中央处理单元)等处理器,通过执行存储于存储部42的程序来实现各种功能。
[0034] 另外,控制部41具备:执行履历取得部411、第一决定部412、第二决定部413、模拟部414、响应性解析部415、显示控制部416以及解析控制部417。
[0035] 存储部42由ROM(read only memory:只读存储器)、RAM(random access memory:随机存取存储器)、非易失性存储器、硬盘驱动器等构成,存储各种数据。另外,存储部42具备API调用存储部421。API调用存储部421存储应用程序21所需的API22的执行周期和处理时间。
[0036] 另外,控制部41以及存储部42既可以与外部装置2或者数值控制装置3共用,也可以与外部装置2或者数值控制装置3分开设置。
[0037] 执行履历取得部411取得与API22的执行时间相关的履历信息。具体而言,执行履历取得部411访问图1及图2所示的执行履历存储部35,取得与API22相关的履历信息。
[0038] 第一决定部412决定与新追加的应用程序21a对应的API22a的执行周期以及处理时间。具体而言,第一决定部412基于在API调用存储部421中存储的与应用程序21a对应的API22a的执行周期以及处理时间,决定新追加到外部装置2的应用程序21a的执行周期以及处理时间。
[0039] 第二决定部413基于由执行履历取得部411取得的履历信息来确定与现有应用程序21b对应的API22b的执行开始时间和处理时间。具体而言,第二决定部413从由执行履历取得部411取得的履历信息取得与现有的应用程序21b对应的API22b的执行开始时间以及处理时间,决定与现有的应用程序21b对应的API22b的执行开始时间以及处理时间。
[0040] 另外,第二决定部413从由执行履历取得部411取得的履历信息,取得与现有的应用程序21b对应的API22的最早的执行开始时间,将该执行开始时间作为基准时间。
[0041] 模拟部414基于与新追加的应用程序21a对应的API22a的执行周期和处理时间、以及与现有的应用程序21b对应的API22b的执行开始时间和处理时间,模拟API22的执行时间。
[0042] 图4是表示模拟API22的执行时间的处理的流程图。在步骤S1中,模拟部414在API22的执行时间的模拟中,执行多个API22中的执行开始时间最早的API22。
[0043] 在步骤S2中,模拟部414判定在未执行API22中是否存在于执行完毕的API22的结束时间之前开始的API22。在存在于执行完毕的API22的结束时间之前开始的API22的情况下(是),处理转移到步骤S3。另一方面,在没有于执行完毕的API22的结束时间之前开始的API22的情况下(否),处理转移到步骤S4。
[0044] 在步骤S3中,模拟部414在执行完毕API22的结束后立即执行未执行API22中的执行开始时间最早的API22。然后,处理转移到步骤S2。
[0045] 在步骤S4中,模拟部414判定是否没有在执行完毕的API22的结束时间之后执行的与现有的应用程序的API21b对应的API21b的履历信息。在没有履历信息的情况下(是),处理之后结束。在存在履历信息的情况下(否),处理转移到步骤S5。
[0046] 在步骤S5中,模拟部414执行在步骤S1中未执行的API22中最接近执行完毕的API22的结束时间的执行开始时间的API22。
[0047] 这样,模拟部414通过执行从步骤S1到步骤S4的处理,模拟API22的执行时间。
[0048] 返回图3,响应性解析部415基于与新追加的应用程序21a对应的API22a的执行周期及处理时间、以及与现有的应用程序21b对应的API22b的执行开始时间及处理时间,解析API22的响应性。具体而言,响应性解析部415基于模拟API22的执行时间的模拟结果,解析API22的响应性。
[0049] 另外,响应性解析部415基于对API22的执行时间进行模拟而得到的模拟结果,计算API22的延迟时间的最大值作为API22的响应性。另外,响应性解析部415基于对API22的执行时间进行模拟而得到的模拟结果,计算API22的时序图作为API22的响应性。
[0050] 图5是表示API22的时序图的一例的图。另外,在图5所示的时序图中,与新追加的应用程序21a对应的API22a的执行周期为1.5秒,处理时间为0.5秒。另外,现有的应用程序21b以及API22b存在多个。另外,基准时间是与现有的应用程序21b对应的API22的最早的执行开始时间。
[0051] 参照图4所示的流程图及图5的左侧所示的时序图,在图4的步骤S1中,模拟部414在API22的执行时间的模拟中,执行与新追加的应用程序21a对应的API22a及与现有的应用程序21b对应的API22b中的、执行开始时间最早的API22、即API22a(参照图5的T1)。
[0052] 在步骤S2中,模拟部414判定在未执行API22中是否存在于执行完毕的API22a的结束时间之前开始的API22。在该情况下,由于API22b相当于在执行完毕的API22a的结束时间之前开始的API22,因此处理转移到步骤S3。
[0053] 在步骤S3中,模拟部414在API22a结束后立即执行未执行API22、即API22b(参照图5的T2)。
[0054] 因此,模拟部414可以获得包含在API22a结束之后立即执行API22b的模拟结果。
[0055] 同样地,参照图4所示的流程图及图5的中央所示的时序图,在步骤S3结束后,在步骤S2中,模拟部414判定在未执行API22中是否存在于执行完毕的API22b的结束时间之前开始的API22。
[0056] 在该情况下,由于没有相应的API22,因此处理转移到步骤S4。然后,在步骤S4中,模拟部414由于存在与在执行完毕的API22b的结束时间之后执行的现有的应用程序21b对应的API22b的履历信息,所以转移到步骤S5。然后,在步骤S5中,模拟部414执行最接近执行完毕的API22b的结束时间的执行开始时间的API22b(参照图5的T3)。
[0057] 处理再次转移到步骤S2,模拟部414判定在未执行API22中是否存在于执行完毕的API22b的结束时间之前开始的API22。
[0058] 在该情况下,API22a相当于在执行完毕的API22b的结束时间之前开始的API22,因此处理转移到步骤S3。
[0059] 在步骤S3中,模拟部414在API22b结束后立即执行未执行API22、即API22a(参照图5的T4)。
[0060] 处理再次转移到步骤S2,模拟部414判定在未执行API22中是否存在于执行完毕的API22a的结束时间之前开始的API22。
[0061] 在该情况下,API22a相当于在执行完毕的API22a的结束时间之前开始的API22,因此处理转移到步骤S3。
[0062] 在步骤S3中,模拟部414在API22a结束后立即执行未执行API22、即API22a(参照图5的T5)。
[0063] 因此,模拟部414能够得到包括在API22b结束后,执行API22a,在API22a结束后,再次得到执行API22a的模拟结果。
[0064] 同样地,参照图4所示的流程图及图5的右侧所示的时序图,在步骤S3结束后,在步骤S2中,模拟部414判定在未执行API22中是否存在于执行完毕的API22a的结束时间之前开始的API22。
[0065] 在该情况下,由于没有相应的API22,因此处理转移到步骤S4。然后,在步骤S4中,模拟部414由于存在在执行完毕的API22a的结束时间之后执行的与现有的应用程序21b对应的API22b的履历信息,所以转移到步骤S5。然后,在步骤S5中,模拟部414执行最接近执行完毕的API22a的结束时间的执行开始时间的API22a(参照图5的T6)。
[0066] 处理再次转移到步骤S2,模拟部414判定在未执行API22中是否存在于执行完毕的API22a的结束时间之前开始的API22。
[0067] 在该情况下,由于API22b相当于在执行完毕的API22a的结束时间之前开始的API22,因此处理转移到步骤S3。
[0068] 在步骤S3中,模拟部414在API22a结束后立即执行未执行API22、即API22b(参照图5的T7)。
[0069] 因此,模拟部414可以获得包含在API22a结束之后立即执行API22b的模拟结果。
[0070] 返回图3,显示控制部416将由响应性解析部415解析出的API22的响应性显示于显示部36(参照图1)或显示部23(参照图2)。具体而言,作为API22的响应性,显示控制部416将API22的延迟时间的最大值和/或API22的时序图显示于显示部36或显示部23。
[0071] 如图5所示,延迟时间的最大值表示在先开始执行的API22结束之后开始执行的API22的结束时间与模拟结果中的API22的结束时间之差。
[0072] 具体而言,与新的应用程序21a对应的API22a的延迟时间的最大值Tb在图5的中央所示的时序图中示出,与现有的应用程序21b对应的API22b的延迟时间的最大值Tb在图5的右侧所示的时序图中示出。
[0073] 另外,如图5所示,API22的时序图包含与新追加的应用程序21a对应的API22a的执行开始时间及结束时间、与现有的应用程序21b对应的API22b的执行开始时间及结束时间、模拟结果、以及延迟时间的最大值Ta及Tb。
[0074] 解析控制部417使与新追加的应用程序21a对应的API22a的执行开始时间偏移预定的时间,执行模拟部414的模拟及响应性解析部415对API22的响应性的解析。
[0075] 具体而言,解析控制部417在通过模拟部414进行的模拟以及响应性解析部415对API22的响应性的解析之后,使与新追加的应用程序21a对应的API22a的执行开始时间偏移预定的时间。
[0076] 然后,解析控制部417在使API22a的执行开始时间偏移了预定的时间之后,再次执行模拟部414的模拟及响应性解析部415对API22的响应性的解析。
[0077] 在此,预定时间例如是将API22a的执行周期设为n分割(n=1、2、3、……)而得到的值。另外,执行开始时间的偏移例如在图4所示的时间的坐标系中朝向+方向进行。另外,解析控制部417反复执行执行开始时间的偏移、模拟部414的模拟以及响应性解析部415对API22的响应性的解析,直到使执行开始时间偏移API22a的1个执行周期量(在所述的例子中为1.5秒)为止。
[0078] 图6是表示响应性解析装置4的处理的流程图。
[0079] 在步骤S11中,执行履历取得部411访问执行履历存储部35,取得与API22的执行时间相关的履历信息。
[0080] 在步骤S12中,第一决定部412基于API调用存储部421中存储的与应用程序21a对应的API22a的执行周期以及处理时间,决定与新追加到外部装置2的应用程序21a对应的API22a的执行周期以及处理时间。
[0081] 在步骤S13中,第二决定部413从由执行履历取得部411取得的履历信息取得与现有的应用程序21b对应的API22b的执行开始时间以及处理时间,决定与现有的应用程序21b对应的API22b的执行开始时间以及处理时间。
[0082] 在步骤S14中,模拟部414基于与新追加的应用程序21a对应的API22a的执行周期和处理时间以及与现有应用程序21b对应的API22b的执行开始时间和处理时间来模拟API22的执行时间。
[0083] 在步骤S15中,响应性解析部415基于模拟了API22的执行时间的模拟结果,解析API22的响应性。具体而言,响应性解析部415基于模拟了API22的执行时间的模拟结果,解析API22的响应性。另外,响应性解析部415基于对API22的执行时间进行模拟而得到的模拟结果,计算API22的延迟时间的最大值作为API22的响应性。
[0084] 在步骤S16中,解析控制部417使与新追加的应用程序21a对应的API22a的执行开始时间偏移预定的时间。
[0085] 在步骤S17中,解析控制部417判定是否完成了将执行开始时间偏移API22a的1个执行周期的量。在完成了1个执行周期的偏移的情况下(是),处理转移到步骤S18。另一方面,在未完成1个执行周期的偏移的情况下(否),处理转移到步骤S14。
[0086] 在步骤S18中,作为API22的响应性,显示控制单元416在显示部36或显示部23上显示API22的延迟时间的最大值和/或API22的时序图。
[0087] 如以上说明的那样,根据本实施方式,响应性解析装置4具备:执行履历取得部411,其取得与API22相关的履历信息;第一决定部412,其决定与新追加的应用程序21a对应的API22a的执行周期以及处理时间;第二决定部413,其基于由执行履历取得部411取得的履历信息,决定与现有的应用程序21b对应的API22b的执行开始时间和处理时间;以及响应性解析部415,其基于与新追加的应用程序21a对应的API22a的执行周期和处理时间以及与现有的应用程序21b对应的API22b的执行开始时间和处理时间,解析API22的响应性。
[0088] 由此,响应性解析装置4例如在实际变更应用程序21的结构之前,能够得到API22的响应性。因此,响应性解析装置4在实际变更应用程序21的结构时,不需要通过试错来确认应用程序21的响应性,能够高效地确认API22的响应性。
[0089] 另外,响应性解析装置4还具备模拟部414,其基于与新追加的应用程序21a对应的API22a的执行周期和处理时间、以及与现有的应用程序21b对应的API22b的执行开始时间和处理时间,模拟API22的执行时间。响应性解析部415基于模拟了API22的执行时间的模拟结果,解析API22的响应性。
[0090] 由此,响应性解析装置4基于模拟了API22的执行时间的模拟结果,解析API22的响应性。因此,响应性解析装置4在实际变更应用程序21的结构时,不需要通过试错来确认应用程序21的响应性,能够高效地确认API22的响应性。
[0091] 另外,响应性解析部415计算API22的延迟时间的最大值作为API22的响应性。响应性解析部415可以计算API22的时序图作为API22的响应性。由此,响应性解析装置4能够得到API22的延迟时间的最大值和/或API22的时序图作为API22的响应性,能够高效地确认API22的响应性。
[0092] 另外,响应性解析装置4还具备将由响应性解析部415解析出的API22的响应性显示于显示部36或显示部23的显示控制部416。由此,操作响应性解析装置4的操作员等用户能够视觉确认显示于显示部36或显示部23的API22响应性。
[0093] 另外,响应性解析装置4还具备解析控制部417,其在通过响应性解析部415解析API22的响应性之后,使与新追加的应用程序21a对应的API22a的执行开始时间偏移预定的时间,执行模拟部414的模拟以及响应性解析部415对API22的响应性的解析。由此,响应性解析装置4通过使执行开始时间偏移,能够得到更详细的模拟结果及响应性的解析。
[0094] 以上,对本发明的实施方式进行了说明,但所述响应性解析装置4能够通过硬件、软件或者它们的组合来实现。另外,由所述响应性解析装置4进行的控制方法也能够通过硬件、软件或者它们的组合来实现。在此,通过软件实现是指通过计算机读入程序并执行来实现。
[0095] 程序可以使用各种类型的非暂时性的计算机可读介质(非暂时性的计算机可读介质)来保存,并提供给计算机。非暂时性计算机可读介质包含各种类型的有形存储介质(tangible storage medium)。非暂时性的计算机可读介质的例子包含磁记录介质(例如,硬盘驱动器)、光磁记录介质(例如,光磁盘)、CD‑ROM(Read Only Memory:只读存储器)、CD‑R、CD‑R/W、半导体存储器(例如,掩模ROM、PROM(Programmable ROM:可编程ROM)、EPROM(Erasable PROM:可擦除PROM)、闪存ROM、RAM(randomaccessmemory:随机存取存储器))。
[0096] 另外,所述的各实施方式是本发明的优选实施方式,但并非将本发明的范围仅限定为所述各实施方式。能够以在不脱离本发明的主旨的范围内实施了各种变更的方式来实施。
[0097] 附图标记的说明
[0098] 1数值控制系统
[0099] 2外部装置
[0100] 3数值控制装置
[0101] 4响应性解析装置
[0102] 41控制部
[0103] 42存储部
[0104] 411执行履历取得部
[0105] 412第一决定单元
[0106] 413第二决定单元
[0107] 414模拟部
[0108] 415响应性解析部
[0109] 416显示控制部
[0110] 417解析控制部。

当前第1页 第1页 第2页 第3页
相关技术
性解析相关技术
解析装置相关技术
五味骏一发明人的其他相关专利技术