调试辅助装置以及调试辅助方法与流程

文档序号:17814184发布日期:2019-06-05 21:24阅读:328来源:国知局
调试辅助装置以及调试辅助方法与流程

本发明涉及对定序程序的调试进行辅助的调试辅助装置以及调试辅助方法,其中,该定序程序由对工业机械进行控制的控制装置执行。



背景技术:

实现工厂的生产工序的自动化的fa(factoryautomation)领域中的控制装置,反复执行在定序程序中记述的运算。伴随近年来的控制的提高,定序程序的大规模化和运算处理的复杂化变得显著。因此,有时在执行定序程序的从最初的程序步到最后的程序步为止的运算的1次扫描中,在用于定序程序的执行的存储器区域即作业区域中临时存储的运算数据被频繁地变更。

在专利文献1中,关于控制程序的调试方法,公开了以下内容,即,与控制程序中的执行位置对应地,对控制对象的输入设备以及输出设备的数据依次进行记录,对包含各程序步的数据的历史信息进行收集。

专利文献1:日本特开2003-248504号公报



技术实现要素:

但是,根据上述现有的技术,由于只记录了输入设备以及输出设备的数据,没有进行与输入设备以及输出设备无直接关系的设备的数据的记录,因此定序程序中的异常的要因即缺陷的确定需要耗费时间,难以实现调试的高效化。

本发明就是鉴于上述而提出的,其目的在于,得到能够实现调试的高效化的调试辅助装置。

为了解决上述的课题,达成目的,本发明的调试辅助装置具备记录部以及提示处理部。调试辅助装置对由控制装置执行的定序程序进行检查。记录部记录顺序信息以及运算数据。顺序信息示出构成定序程序的构成要素中的运算处理的执行顺序。运算数据是每个程序步的运算处理所处理的数据。提示处理部提示顺序信息与运算数据之间的关系。

发明的效果

本发明涉及的调试辅助装置具有能够使调试高效化的效果。

附图说明

图1是表示本发明的实施方式1涉及的调试辅助装置的基本结构的图。

图2是表示图1所示的plc的硬件结构的图。

图3是表示图1所示的计算机的硬件结构的图。

图4是表示由图1所示的计算机创建的定序程序的一个例子的说明图。

图5是表示图1所示的计算机的图表(graph)显示画面的一个例子的图。

图6是表示图5所示的图表显示画面中的图表显示所用的plc以及计算机的处理的流程的流程图。

图7是表示图1所示的计算机的调试处理的流程的流程图。

图8是表示实施方式1的在提示处理工序中进行显示的图表显示画面的例子的图。

图9是表示图1所示的计算机的编辑画面中的定序程序以及运算数据的显示例的图。

图10是表示本发明的实施方式2涉及的调试辅助装置的处理的流程的流程图。

图11是表示实施方式2的在提示处理工序中进行显示的图表显示画面的例子的图。

具体实施方式

下面,基于附图,对本发明的实施方式涉及的调试辅助装置以及调试辅助方法进行详细说明。此外,本发明不受本实施方式限定。

实施方式1.

图1是表示本发明的实施方式1涉及的调试辅助装置的基本结构的图。调试辅助装置对确定定序程序中的缺陷(bug)时所参照的数据进行提示,对定序程序的调试进行辅助。

调试辅助装置构成为具备安装了工程工具程序的计算机2以及作为控制装置的plc(programmablelogiccontroller)1。网络线缆3将plc1以及计算机2以能够通信的方式进行连接。

计算机2创建包含由plc1执行的定序程序的项目数据,向plc1发送。plc1通过执行定序程序,从而对作为控制对象的机械的驱动进行控制。

本实施方式的plc1具备:程序存储部11,其是存储定序程序的功能部;以及程序执行部12,其是执行从程序存储部11读取的定序程序的功能部。另外,本实施方式的plc1具备:数据存储部13,其是存储由定序程序实现的运算处理所处理的运算数据的功能部;以及记录部14,其是记录程序步编号和每个程序步的运算数据而创建日志数据的功能部。程序步编号是表示构成定序程序的构成要素中的运算处理的执行顺序的顺序信息。另外,本实施方式的plc1具备日志数据存储部15,该日志数据存储部15是对由记录部14生成的日志数据进行存储的功能部。控制部18是对plc1的各部分进行控制的功能部。此外,图1的plc1内所示的虚线示出各功能部与后述的图2所示的硬件结构之间的对应关系。

本实施方式的计算机2具备工程工具部10。工程工具部10通过由计算机2的硬件执行工程工具程序而实现。

工程工具部10具备图表显示处理部16,该图表显示处理部16是基于从日志数据存储部15读取的日志数据,使表示程序步编号与运算数据之间的关系的图表显示于图表显示画面的功能部。作为提示处理部的图表显示处理部16提示顺序信息与每个程序步的运算处理所处理的运算数据之间的关系。

另外,工程工具部10具备程序显示编辑部17,该程序显示编辑部17是创建包含定序程序的项目数据的功能部。程序显示编辑部17按照用户的输入操作而执行程序代码的编辑处理,并且使定序程序显示于编辑画面。另外,程序显示编辑部17具备对plc1执行定序程序时的运算数据进行监视的监视功能。控制部19是对工程工具部10的各部分进行控制的功能部。

图2是表示plc1的硬件结构的图。plc1具备cpu(centralprocessingunit)21、存储器22、通信接口23、总线接口24以及存储部25。plc1的各部分经由内部总线b1而连接。

通信接口23是与计算机2之间的连接接口。总线接口24是将内部总线b1与扩展总线b2连通的总线桥电路。作为控制对象的机械4经由扩展总线b2与pcl1连接。机械4可以是制造装置、加工装置或者设备装置,可以是fa系统所使用的任意装置。

作为外部存储装置的存储部25存储从计算机2接收到的项目数据27以及日志数据28。存储部25是ssd(solidstatedrive)或者hdd(harddiskdrive)。项目数据27包含定序程序27a、控制参数27b、存储器信息27c以及连接信息27d。程序存储部11以及日志数据存储部15的功能通过使用存储部25而实现。

控制参数27b是定序程序27a的执行中所参照的参数。存储器信息27c是记述了与存储器22内的作业区域中的每个运算数据的数据区域相关的规定的信息。连接信息27d是规定了plc1与机械4之间的连接关系的信息。

在实施方式1中,定序程序27a是由梯形图语言(ladderlanguage)记述的。定序程序27a也可以是由除梯形图语言以外的语言即结构化梯形图语言或者功能块图语言记述的。

存储器22是ram(randomaccessmemory)。定序程序27a被加载到存储器22。cpu21在存储器22内的程序存储区域将定序程序27a展开而执行各种处理。程序执行部12、记录部14以及控制部18的功能通过使用cpu21而实现。

存储器22内的数据存储区域被作为各种处理的执行时的作业区域26。在作业区域26确保由存储器信息27c规定的多个数据区域。各数据区域存储在运算处理中处理的运算数据。数据存储部13的功能通过使用存储器22而实现。

cpu21在定序程序27a的每个程序步,从作业区域26读取各运算数据,创建日志数据28。cpu21将创建出的日志数据28写入至存储部25。日志数据28包含由向机械4输入的数据、从机械4输出的数据以及机械4的内部数据构成的各运算数据。

图3是表示计算机2的硬件结构的图。计算机2具备cpu31、ram32、rom(readonlymemory)33、存储部34、输入部35、显示部36以及通信接口37。计算机2的各部分经由总线b而相互连接。

cpu31执行存储在rom33以及存储部34的程序。在作为非易失性存储器的rom33存储作为程序的bios(basicinput/outputsystem)或者uefi(unifiedextensiblefirmwareinterface)。作为外部存储装置的存储部34是ssd或者hdd。在存储部34存储操作系统程序以及工程工具程序。

存储在rom33以及存储部34的程序被加载至ram32。cpu31在ram32内的程序存储区域将程序展开而执行各种处理。ram32内的数据存储区域被作为各种处理的执行时的作业区域。图表显示处理部16、程序显示编辑部17以及控制部19的功能通过使用cpu31而实现。

输入部35接收用户的输入操作。输入部35是指点(pointing)设备以及键盘。显示部36是显示各种画面的显示器。通信接口37是与plc1之间的连接接口。

图4是表示由计算机2创建的定序程序的一个例子的说明图。在图4中示出由梯形图语言记述的梯形图程序。程序显示编辑部17使梯形图程序的一部分显示于编辑画面。

梯形图程序由多个电路块构成。电路块是将条件部和动作部组合而构成的,该条件部是触点串联或者并联连接而成的一块电路,该动作部是大于或等于1个线圈串联连接而成的一块电路。动作部表示在条件部的触点导通时所执行的运算处理即程序步的内容。程序步是定序程序的构成单位,由大于或等于1个指令构成。作为顺序信息的程序步编号示出定序程序的构成要素中的运算处理的执行顺序。对1个或者多个电路块,标注有1个程序步编号。在图4中,示出程序步编号(0)的电路块。此外,顺序信息不限于是程序步编号,可以是示出运算处理的执行顺序的任意信息。

由梯形图语言创建的程序代码包含作为基本构成要素的电路符号以及变量。电路符号包含表示plc1处的处理的触点以及线圈,变量表示由电路符号示出的处理的对象。在作业区域26的各数据区域存储每个构成要素的运算数据。运算数据包含表现on以及off的区别的位数据和表现数值的字数据。

在梯形图程序中各构成要素记述为表示构成要素的类型的字母和表示地址的数字之间的组合。在图4中,由矩形包围而示出的“sm400”、“d0”、“d10”、“d20”、“d30”、“d40”、“d50”以及“t0”都表示构成要素。

图5是表示计算机2的图表显示画面的一个例子的图。图表显示处理部16从数据存储部13读取将每个程序步的各运算数据记录于记录部14而得到的结果,执行用于图表显示的处理。

在图5所示的图表显示画面的右侧区域,梯形图程序的每个构成要素的图表在纵向上并列。各图表的纵轴表示运算数据,横轴表示程序步编号。在图表显示画面的左侧区域,通过在图表上配置光标,从而显示所指定的时刻的各运算数据。

在图5所示的图表显示画面,显示关于构成要素“d20”、“d40”、“d50”以及“d100.b”的图表以及运算数据。图表显示画面也可以以每个构成要素为单位进行颜色区分而显示图表以及运算数据。图表的横轴所示的程序步编号的范围也可以能够任意地变更。此外,图表不限于图5所例示的曲线图。图表可以是能够显示顺序信息与运算数据之间的关系的任意图表,也可以是条形图、或者其它的图表。

图6是表示图5所示的图表显示画面的图表显示所用的plc1以及计算机2的处理的流程的流程图。实施方式涉及的调试辅助方法包含从步骤s1到步骤s5的工序。在步骤s1中,plc1的记录部14在从开始定序程序的执行时起的每个程序步,读取数据存储部13内的各运算数据。在作为记录工序的步骤s2中,记录部14将梯形图程序的每个构成要素的运算数据与程序步编号相关联地进行记录,创建日志数据。在步骤s3中,日志数据存储部15存储由记录部14生成的日志数据。

如上述所示,plc1通过记录每个程序步的运算数据,从而与定序程序的执行相匹配地连续取得每个程序步的运算数据。plc1既可以取得从定序程序的最初的程序步开始到最后的程序步为止的全部的程序步的运算数据,也可以取得全部程序步中的一部分程序步的运算数据。取得一部分程序步的运算数据的情况包含取得每隔一定步数的程序步的运算数据,省略其它程序步的运算数据的取得的情况。连续取得每个程序步的运算数据的情况包含取得全部程序步的运算数据的情况和取得一部分程序步的运算数据的情况。

在步骤s4中,计算机2的图表显示处理部16从日志数据存储部15读取日志数据。在作为提示处理工序的步骤s5中,图表显示处理部16基于读取出的日志数据,使表示关于每个构成要素的程序步编号与运算数据之间的关系的图表显示于图表显示画面。由此,图表显示处理部16将顺序信息与每个程序步的运算处理所处理的运算数据之间的关系通过显示部36处的图表显示而进行提示。

图7是表示计算机2的调试处理的流程的流程图。在计算机2的调试处理的执行时,显示部36显示调试用画面即编辑画面以及图表显示画面。在调试处理中,显示部36既可以是能够将编辑画面以及图表显示画面进行切换而显示,也可以是能够同时显示编辑画面以及图表显示画面。

用户在执行定序程序时,根据由程序显示编辑部17的监视功能得到的监视结果,确定梯形图程序中的发生了异常的构成要素。用户通过向计算机2的输入操作而指定发生了异常的构成要素。图表显示处理部16在步骤s11接收用于指定发生了异常的构成要素的输入操作。

图表显示处理部16按照步骤s11的输入操作,在步骤s12中从日志数据存储部15读取日志数据。在提示处理工序中,图表显示处理部16基于读取出的日志数据,使关于每个构成要素的图表显示于图表显示画面。

图8是表示实施方式1的在提示处理工序中进行显示的图表显示画面的例子的图。这里,设为根据监视结果在“d50”发现异常。用户通过来自输入部35的输入操作而对发生了异常的“d50”进行指定。计算机2从plc1读取日志数据,在调试用画面即图表显示画面显示“d50”的图表。

用户根据关于发生了异常的构成要素的图表,对判断为发生了异常的时刻进行确定。用户通过图表上的点击操作而对上述时刻进行指定。图表显示处理部16接收用于时刻的指定的操作。在步骤s13中,图表显示处理部16通过上述操作,从而取得表示所指定的时刻的程序步编号。另外,图表显示处理部16从日志数据提取上述程序步编号中的各运算数据。

在图8所示的例子中,用户根据关于“d50”的图表,通过使用了输入部35的点击操作而对判断为发生了异常的时刻进行指定。当判断为在图8所示的图表中的由椭圆包围的部分发生了异常的情况下,用户通过点击上述部分而进行指定。计算机2的图表显示处理部16从日志数据取得表示由用户指定的时刻的程序步编号的各运算数据。

程序显示编辑部17从存储于程序存储部11的定序程序中检索由图表显示处理部16取得的程序步编号的电路块。在作为程序显示处理工序的步骤s14中,程序显示编辑部17使与从图表指定的程序步编号对应的各运算数据与定序程序一起显示于编辑画面。程序显示编辑部17对定序程序中的所取得的程序步编号的部分即电路块进行显示,并且,将由图表显示处理部16提取出的运算数据一并记述于该电路块所包含的各构成要素。用户参照编辑画面所显示的电路块和各运算数据,实施用于去除缺陷的编辑作业。

图9是表示计算机2的编辑画面中的定序程序以及运算数据的显示例的图。在作为调试用画面的编辑画面中,复原了所指定的程序步编号的电路块。在图9中标注了阴影的部分示出包含发现了异常的“d50”的指令。计算机2也可以针对编辑画面中的包含发现了异常的构成要素的指令的显示部分,实施用于强调显示的着色。

计算机2在图9所示的编辑画面中,在电路块的“d0”、“d10”、“d20”、“d30”、“d40”、“d50”以及“t0”的显示的下方,显示所指定的程序步编号中的运算数据。在发现了异常的“d50”的下方,显示“d50”的运算数据即“11186”。用户能够在编辑画面确认发生异常时的各构成要素的运算数据。用户参照编辑画面所显示的电路块和各构成要素的运算数据,实施用于去除缺陷的编辑作业。

计算机2也可以在显示出包含各运算数据的编辑画面时,在存在来自输入部35的特定的输入操作的情况下,对编辑画面的显示进行切换。程序显示编辑部17在通过输入部35即键盘而同时按下了alt键和下箭头的光标键的情况下,从日志数据存储部15读取与至今为止的显示相对的前1个程序步的各运算数据。计算机2将该前1个程序步的电路块在编辑画面进行复原,并且将读取出的运算数据显示于编辑画面。

另外,程序显示编辑部17在通过输入部35即键盘而同时按下了alt键和上箭头的光标键的情况下,从日志数据存储部15读取与至今为止的显示相对的后1个程序步的各运算数据。计算机2将该后1个程序步的电路块在编辑画面进行复原,并且将读取出的运算数据显示于编辑画面。

由此,用户能够通过简易的输入操作,参照多个程序步的运算数据而实施用于去除缺陷的编辑作业。计算机2可以通过由输入部35实现的任意输入操作而对编辑画面的显示进行切换。

根据实施方式1,调试辅助装置记录每个程序步的运算数据,即刻对在图表处指定出的程序步编号中的运算数据进行提示。用户无需另外使用用于检测异常的仿真机构,即可对发生异常时的运算数据和定序程序一起进行确认。另外,用户即使不进行发生异常时的数据的筛选,也能够通过少量作业而即刻对异常的要因进行确认。与记录以扫描为单位的运算数据的情况相比,用户能够根据细粒度的日志数据确定异常的要因。

调试辅助装置通过记录部14而连续取得每个程序步的运算数据。记录部14不仅取得输入设备以及输出设备的运算数据,也取得与输入设备以及输出设备无直接关系的内部设备的运算数据。调试辅助装置记录的并非是只包括输入设备以及输出设备的片段式的日志数据,而是除了输入设备以及输出设备以外还包含内部设备的运算数据的连续的日志数据。调试辅助装置能够基于连续且以细的粒度记录的日志数据,提示程序步编号以及运算数据的关系。用户能够通过参照程序步编号以及运算数据的关系,从而高效地确认发生了异常的时刻的运算数据,能够容易地确定定序程序的缺陷。由此,调试辅助装置能够通过缺陷的容易的确定而减少调试的工作量,能够使调试高效化。

实施方式2.

图10是表示本发明的实施方式2涉及的调试辅助装置的处理的流程的流程图。实施方式2的调试辅助装置具备与实施方式1的调试辅助装置同样的结构。

在实施方式2中,plc1的记录部14对在由定序程序实现的运算处理的执行中检测到变更时的运算数据进行记录。对于在运算处理的执行中未检测到变更的运算数据,记录部14省略记录。实施方式2的调试辅助装置在以下这一点上与实施方式1的调试辅助装置不同,即,对在定序程序的执行中检测到变更的运算数据进行记录,省略未检测到变更的运算数据的记录。根据实施方式2,调试辅助装置通过省略未检测到变更的运算数据的记录,从而能够与记录全部的运算数据的情况相比减少用于运算数据的记录的处理,降低plc1的处理负担。

在图10所示的步骤s21中,记录部14从数据存储部13读取每个程序步的各运算数据,对值的变更进行监视。如果检测到运算数据的变更,则记录部14在作为记录工序的步骤s22中将该运算数据与程序步编号相关联地进行记录,创建日志数据。在步骤s23中,日志数据存储部15存储由记录部14生成的日志数据。

作为例子,在执行图4所示的定序程序中的指令“e+e0.03125d0”时,记录部14对运算处理所使用的“d0”的运算数据有无变更进行监视。记录部14在“d0”的运算数据存在变更的情况下,对“d0”的运算数据和程序步编号一起进行记录。这里,设为执行了从程序步编号1000到6000的各程序步,其中在从程序步编号1500到3000以及从3500到4500的程序步中“d0”的运算数据存在变更,在其它程序步中“d0”的运算数据不存在变更。记录部14对从程序步编号1500到3000以及从3500到4500中的“d0”的运算数据进行记录,省略“d0”的其它运算数据的记录。日志数据存储部15对记录了从程序步编号1500到3000以及从3500到4500中的“d0”的运算数据的日志数据进行存储。

在步骤s24中,计算机2的图表显示处理部16从日志数据存储部15读取日志数据。在作为提示处理工序的步骤s25中,图表显示处理部16基于读取出的日志数据,使表示程序步编号与运算数据之间的关系的图表显示于图表显示画面。

图11是表示实施方式2的在提示处理工序中进行显示的图表显示画面的例子的图。这里,设为根据监视结果在“d0”发现异常,在作为调试用画面的图表显示画面显示出“d0”的图表。

图表显示处理部16基于记录了从程序步编号1500到3000以及从3500到4500中的“d0”的运算数据的日志数据,显示从程序步编号1500到3000以及从3500到4500的范围的“d0”的图表。对于其它程序步编号的范围,由于“d0”的运算数据未记录在日志数据,因此不显示图表。用户根据显示出的图表对判断为发生了异常的时刻进行确定。

此外,记录部14也可以对与定序程序的构成要素中的、在运算处理的执行中检测到运算数据的变更的构成要素相关的运算数据进行记录。在这种情况下,记录部14对于在运算处理的执行中未检测到运算数据的变更的构成要素,省略运算数据的记录。

在这种情况下,记录部14从数据存储部13读取每个程序步的各运算数据,对运算数据的变更进行监视。如果检测到运算数据的变更,则记录部14将存在运算数据的变更的构成要素设定为记录的对象。在作为记录工序的步骤s22中,记录部14将作为记录对象的构成要素的运算数据与程序步编号相关联地进行记录,创建日志数据。

根据实施方式2,调试辅助装置记录检测到变更时的运算数据或者检测到运算数据的变更的构成要素的运算数据。与记录与由定序程序的执行实现的运算处理相关的全部运算数据的情况相比,调试辅助装置使记录部14的处理减少。调试辅助装置能够使调试高效化,并且降低由用于运算数据的记录的处理导致的对定序程序的执行性能的影响。

以上的实施方式所示的结构表示的是本发明的内容的一个例子,也能够与其它的公知技术进行组合,在不脱离本发明的主旨的范围也能够省略、变更结构的一部分。

标号的说明

1plc,2计算机,3网络线缆,11程序存储部,12程序执行部,13数据存储部,14记录部,15日志数据存储部,16图表显示处理部,17程序显示编辑部。

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