首页 / 调试装置

调试装置有效专利 发明

技术领域

[0001] 本发明涉及定序程序的调试所使用的调试装置。

相关背景技术

[0002] 通常在程序的开发中实施如下调试,即,进行创建出的程序是否进行所期望的动作的动作验证,在通过动作验证发现了故障的情况下对程序进行修正而使故障消除。
[0003] 将程序的动作验证的收罗率称为覆盖率,由于进行了动作验证及调试的程序被视为没有故障,因此覆盖率用作程序的品质指标。覆盖率具有若干种类,作为代表的是C0覆盖率,其表示构成程序的全部处理中的执行了大于或等于1次的处理的比率。另外,覆盖率从其含义来看,也能够用作表示程序开发中的动作验证的进展的指标。
[0004] 在实现工厂等生产现场中的作业的自动化的FA(Factory Automation)领域中使用定序程序。定序程序是将多个实施某处理的最小单位的命令组合而构成的。命令具有被称为执行条件的属性,通过执行条件和对紧之前的命令实施某计算的逻辑式(下面,称为前条件)的结果,对是否需要执行命令进行判断。此外,将前条件成立的情况称为真,将不成立的情况称为假。
[0005] 执行条件存在多个种类,存在仅在前条件为真的情况下执行命令、在前条件为假的情况下不执行的ON时执行,仅在前条件从假变化为真的情况下执行命令的上升沿执行,与前条件的真假无关地始终执行命令的始终执行等。始终执行的命令具有ON执行和OFF执行这两种执行类别,ON执行和OFF执行的执行结果不同。即,始终执行的命令在前条件为真的情况和为假的情况下执行的内容不同。ON执行在前条件为真的情况下执行,OFF执行在前条件为假的情况下执行。
[0006] 如上所述,由于在构成定序程序的命令中,存在诸如始终执行这样的在C语言等通常所使用的编程语言中没有的执行条件,因此得到覆盖率所需要的动作验证也与通常所使用的编程语言不同。例如,设想将C0覆盖率设为100%的情况。C0覆盖率是表示全部可执行的处理中的执行过的处理的比率的指标。在通常的程序中,由于在执行处理的条件为假的情况下跳过处理,因此如果仅对作为动作验证对象的命令中的、在执行处理的条件为真的情况下得到了执行的处理进行评价,则C0覆盖率为100%。另一方面,在定序程序中,需要考虑命令各自所具有的执行条件。在作为动作验证对象的命令包含有始终执行的命令的情况下,为了将C0覆盖率设为100%,需要对始终执行的ON执行及OFF执行这两者进行验证。
[0007] 在专利文献1中公开了定序控制系统,其对定序控制电路图的定义文件和寄存器的变化状态进行核对,根据核对结果对覆盖率即动作收罗率进行计算,并且对动作收罗率进行显示。
[0008] 专利文献1:日本特开2000-293208号公报

具体实施方式

[0028] 下面,基于附图对本发明的实施方式涉及的调试装置进行详细说明。此外,本发明并不由本实施方式进行限定。
[0029] 实施方式1.
[0030] 图1是表示本发明的实施方式1涉及的调试装置的结构例的图。实施方式1涉及的调试装置100包含可编程逻辑控制器(PLC:Programmable Logic Controller)1、计算机2内部的工程设计工具20而构成。工程设计工具20是通过由计算机2执行用于作为工程设计工具20进行动作的程序而实现的。计算机2具备诸如执行用于作为工程设计工具20进行动作的程序的处理器、对程序及各种数据进行保存的存储器、显示器即显示装置、鼠标及键盘即输入装置、通信接口这样的各种硬件。PLC 1和计算机2经由网络线缆3而连接。此外,关于连接路径,也可以使用无线。
[0031] PLC 1具备程序存储器11、程序执行部12及动作验证结果管理部13。动作验证结果管理部13具备动作验证状况判定部14及动作验证状况存储部15。PLC 1具有2种动作模式,具体而言,具有对被控制仪器进行控制的通常模式和进行定序程序的调试的调试模式,构成为能够通过用户对省略了图示的诸如开关这样的切换单元进行操作而对动作模式进行选择。动作验证结果管理部13在选择了调试模式的情况下进行动作。
[0032] 程序存储器11是存储对被控制仪器进行控制的定序程序的存储器,对验证对象定序程序16进行保存。验证对象定序程序16是使用调试装置100进行的调试的对象程序。程序执行部12是执行由程序存储器11保存的定序程序的执行部。程序执行部12在选择了调试模式的情况下执行验证对象定序程序16。验证对象定序程序16是用户从由程序存储器11保存的定序程序中指定出的定序程序。另外,程序执行部12具有设备存储器17。设备存储器17是对各种设备值进行保存的存储器,如果程序执行部12执行了定序程序,则该设备值按照执行内容进行更新。设备值表示PLC 1在控制对象仪器的控制中使用的控制信息的值。在FA领域中,将对控制信息进行识别的信息称为设备,设备值表示控制对象仪器的状态。
[0033] 动作验证结果管理部13的动作验证状况判定部14在调试模式中由程序执行部12执行验证对象定序程序16时,取得命令的执行类别、命令的执行的有无以及命令这一组信息作为动作验证状况而保存于动作验证状况存储部15。即,动作验证状况判定部14是对由程序执行部12执行过的验证对象定序程序16内的命令及执行过的命令的执行类别进行判定的判定部,将判定结果与执行过的命令相关联地保存于动作验证状况存储部15。命令的执行类别为上述ON执行及OFF执行这样的信息,表示通过命令执行的内容和该命令紧之前的命令的执行结果的关系。动作验证状况判定部14通过对从程序执行部12的设备存储器17读出的设备值进行解析,从而取得动作验证状况。动作验证状况判定部14通过对是否更新了设备存储器17内的特定的设备值进行监视,能够得知是否执行了与特定的设备值对应的命令。另外,对于程序执行部12试图执行定序程序中的哪个命令这一点,动作验证状况判定部14也能够通过对设备存储器17内的设备值进行监视而得知。能够通过对定序程序进行解析而得知各命令的执行类别及前条件。动作验证结果管理部13的动作验证状况存储部15是接收、存储由动作验证状况判定部14取得的动作验证状况的存储部。
[0034] 工程设计工具20具有动作验证状况显示部21、动作验证设定输入部22及动作验证设定写入部23。
[0035] 动作验证状况显示部21是基于由动作验证状况存储部15存储的动作验证状况,以用户能够视觉辨认的形式将验证对象定序程序16的动作验证的进展状况显示于计算机2的显示装置(未图示)处的显示部。动作验证状况显示部21还具有将定序程序显示于显示装置的功能。
[0036] 动作验证设定输入部22从用户接收作为动作验证对象的定序程序的设定、作为动作验证对象的定序程序的执行次数的设定、验证对象的执行类别的设定,作为动作验证设定。图2是表示在实施方式1涉及的动作验证设定输入部22接收动作验证设定时由显示装置显示的动作验证设定对话框的一个例子的图。图2所示的动作验证设定对话框构成为能够通过下拉对验证对象程序名称及验证对象执行类别进行设定,构成为能够通过向文本框的数值输入而对验证对象执行次数进行设定。在以图2所示的内容的状态按下OK按钮的情况下,动作验证设定输入部22接收将名称为MAIN的定序程序所包含的ON执行的命令作为对象,进行合计10次验证这一内容的动作验证设定。就验证对象执行类别而言,除了能够对ON执行及OFF执行单独地进行指定之外,还能够将ON执行及OFF执行这两者作为验证对象进行选择。此外,并不是将动作验证设定限定为图2所示的验证对象程序名称、验证对象执行次数及验证对象执行类别。也可以使其它信息包含于动作验证设定。另外,在本实施方式中,设为动作验证设定输入部22从用户接收动作验证设定的输入,但也可以设为工程设计工具20通过以规定的形式记述的文件的输入而取得动作验证设定的信息。
[0037] 动作验证设定写入部23将由动作验证设定输入部22接收到的表示动作验证设定的信息写入至动作验证结果管理部13的动作验证状况判定部14,对动作验证状况判定部14进行设定以使其按照写入的信息进行动作。如果动作验证设定输入部22接收图2所示的内容的动作验证设定,动作验证设定写入部23将与其对应的信息写入至动作验证状况判定部14,则动作验证状况判定部14在由程序执行部12执行了名称为MAIN的定序程序的情况下,在直至该定序程序执行10次为止的期间,对是否执行了ON执行的命令进行监视。在该情况下,动作验证状况判定部14将直至定序程序执行10次为止期间的监视结果作为动作验证状况写入至动作验证状况存储部15。
[0038] 图3是表示由实施方式1涉及的PLC 1执行的定序程序及构成定序程序的命令的一个例子的图。图3所示的定序程序由工程设计工具20的省略了图示的程序创建部进行创建。定序程序在变换为PLC 1可执行的代码后,被从工程设计工具20向PLC 1传送,写入至PLC 1的程序存储器11。此外,在图3中示出由梯形图语言创建出的定序程序的例子。图3所记载的“(0)”、“(2)”、“(4)”及“(6)”为步编号。
[0039] 图4是表示将实施方式1涉及的动作验证状况判定部14从程序执行部12收集到的动作验证状况向动作验证状况存储部15保存的形式的一个例子的图。如图4所示,动作验证状况包含表示命令的步编号(step number)、表示命令的执行条件的运行类型(run type)、ON执行完成标志及OFF执行完成标志。步编号为命令的识别信息。另外,该识别信息是用于从执行过的定序程序中对执行了哪个命令进行确定的信息。在运行类型为‘0’的情况下表示始终执行,在为‘1’的情况下表示不是始终执行的执行条件。动作验证状况判定部14通过读出在程序执行部12的设备存储器17储存的设备值,从而对执行了哪个步编号的命令及执行命令时的前条件进行确认,按照确认结果,在ON执行完成标志或OFF执行完成标志中作出勾选。图4所示的动作验证状况表示与步编号‘0’对应的命令的ON执行为已执行、与步编号‘2’对应的命令的OFF执行为已执行、与步编号‘4’对应的命令的ON执行及OFF执行为已执行、与步编号‘8’对应的命令的ON执行及OFF执行为已执行。此外,动作验证状况的保存形式并不限于图4所示的形式。只要知道在哪种执行条件下执行了哪个命令,则也可以以二进制数据或文本数据等形式进行存储。
[0040] 接下来,使用图5~图8对工程设计工具20的动作验证状况显示部21将动作验证状况显示于显示装置的形式进行说明。
[0041] 图5是表示实施方式1涉及的动作验证状况显示部21通过对定序程序的显示背景进行变更而将动作验证的状况通知给用户的情况下的显示例的图。图5示出与定序程序所包含的各命令的执行状况对应地对图3所示的定序程序的显示背景进行了变更的例子。显示背景的变更方法的代表例子为颜色的变更。例如,在执行了ON执行和OFF执行这两者的情况下设为蓝色,在仅执行了ON执行的情况下将背景颜色设为橙色,在仅执行了OFF执行的情况下将背景颜色设为黄色,在没有执行ON执行及OFF执行这两者的情况下将背景颜色设为白色。
[0042] 图6是表示实施方式1涉及的动作验证状况显示部21通过对定序程序的显示背景进行变更而将动作验证的状况通知给用户的情况下的其它显示例的图。在图6所示的例子中,构成为在背景颜色的变更的基础上,不显示执行了ON执行及OFF执行这两者的命令。通过不显示执行了ON执行及OFF执行这两者的命令,从而用户能够容易地得知还剩余多少动作验证没有完成的命令。在图6所示的例子中,由于关于步编号为4的命令,ON执行及OFF执行为已执行,因此没有显示步编号为4的命令。
[0043] 图7是表示实施方式1涉及的动作验证状况显示部21通过对与定序程序的各命令相关联地显示的标记进行变更而将动作验证的状况通知给用户的情况下的显示例的图。图7示出将图3所示的定序程序所包含的各命令的执行状况用涂黑的圆形(●)、白色圆圈(○)及双圈(◎)表示的例子。具体而言,对仅执行了ON执行的命令赋予‘●’,对仅执行了OFF执行的命令赋予‘○’,对执行了ON执行和OFF执行这两者的命令赋予‘◎’。
[0044] 图8是表示实施方式1涉及的动作验证状况显示部21通过对程序的显示进行变更而表示动作验证的状况的情况下的显示例的图。在图8中示出通过对至少进行了一次ON执行的路径及命令的显示作出变更而表示动作验证的状况的例子。作为对进行了ON执行的路径及命令的显示作出变更的方法,想到在没有进行ON执行的状态下用虚线表示,在进行了ON执行的情况下变更为用实线来显示的方法。另外,还想到在没有进行ON执行的状态和进行了ON执行的状态之间对显示颜色进行变更的方法。只要会知道进行了ON执行,则显示的变更方法可以是任意方法。
[0045] 在图5~图8中,通过颜色区分等对覆盖率的收罗率进行显示,但也可以单纯地在显示画面上显示为“实施○○%”。这样的显示也可以被一并显示于图5~图8的梯形图程序上。另外,也可以同时进行基于颜色区分等的显示和基于数值的显示。覆盖率的收罗率是动作验证状况显示部21基于由动作验证状况存储部15存储的动作验证状况计算出的。此外,动作验证状况显示部21针对执行条件为始终执行的命令,在执行了ON执行及OFF执行这两者的情况下视作该命令的动作验证完成而对覆盖率的收罗率进行计算。
[0046] 接下来,使用图9对调试装置100显示动作验证状况的动作进行说明。图9是表示实施方式1涉及的调试装置100对动作验证状况进行显示的动作的流程图。
[0047] 在调试装置100对动作验证状况进行显示的动作中,动作验证状况判定部14在程序执行部12正在执行验证对象定序程序16的状态下,针对每一步从设备存储器17对设备值进行收集,基于收集到的设备值对命令的执行的有无进行判定(步骤S11)。此外,在命令的执行的有无的判定中,能够使用现有的定序程序的监视技术。另外,关于命令的执行类别,能够根据相应的命令的执行条件的种类及前条件进行判定。动作验证状况判定部14基于收集到的设备值,对命令的执行的有无及执行类别进行判定。
[0048] 然后,动作验证状况判定部14将判定结果,即命令的执行的有无及执行类别,与步编号相关联地储存于动作验证状况存储部15(步骤S12)。将命令的执行的有无、执行类别与步编号相关联而得到的为图4所示的动作验证状况。
[0049] 然后,动作验证状况显示部21基于在动作验证状况存储部15储存的动作验证状况,将验证对象定序程序16的各命令的执行状况及执行类别显示于显示装置(步骤S13)。
[0050] 在图9所示的步骤S13中,动作验证状况显示部21显示图5~图8所示的内容例的画面。另外,在动作验证状况存储部15储存有多个动作验证状况的情况下,动作验证状况显示部21基于用户从多个动作验证状况中选择出的大于或等于1个动作验证状况而生成显示画面。通常,在程序的调试作业中,一边对程序的动作条件的设定进行变更,一边基于多个动作条件而执行程序,对有无故障进行确认。因此,得到与多个动作条件各自对应的动作验证结果。在本实施方式涉及的调试装置100的情况下,使用图2说明过的动作验证设定相当于程序的动作条件,使用图4说明过的动作验证状况相当于程序的动作验证结果。即,在动作验证状况存储部15储存有多个动作验证状况。
[0051] 图10是表示实施方式1涉及的动作验证状况显示部21基于从多个动作验证状况中选择出的大于或等于1个动作验证状况进行显示的动作的流程图。
[0052] 动作验证状况显示部21在图9所示的步骤S13中进行显示的情况下,首先,将对动作验证状况进行选择的画面显示于显示装置(步骤S21)。能够将该步骤S21中的显示设为图11所示的画面。图11是表示由实施方式1涉及的动作验证状况显示部21显示于显示装置的动作验证状况选择画面的一个例子的图。图11所示的画面显示例包含由动作验证状况存储部15存储的动作验证状况的文件名称(动作验证状况_001、动作验证状况_002、…)的列表、用于选择各文件的勾选框、显示开始按钮、取消按钮。用户通过在勾选框作出勾选而对希望显示的动作验证状况进行选择,通过按下显示开始按钮而开始动作验证状况的显示。
即,动作验证状况显示部21在执行步骤S21而使图11所示的画面显示于显示装置后,选择大于或等于1个动作验证状况的文件,等待显示开始按钮被按下。
[0053] 如果在选择出大于或等于1个动作验证状况的状态下按下显示开始按钮,则动作验证状况显示部21基于选择出的动作验证状况,将图5~图8所示者中的任意一个内容例的画面显示于显示装置(步骤S22)。在选择出多个动作验证状况的状态下执行步骤S22的情况下,动作验证状况显示部21将选择出的动作验证状况的内容合并,按照合并后的动作验证状况进行显示。
[0054] 作为一个例子,考虑下述情况,即,选择了动作验证状况_001及动作验证状况_002,动作验证状况_001为仅执行了ON执行的结果,动作验证状况_002为仅执行了OFF执行的结果。在该情况下,动作验证状况显示部21通过对动作验证状况_001及动作验证状况_002进行解析,从而掌握是否执行了某命令的ON执行及OFF执行这两者,在尚未执行的情况下,掌握是尚未执行ON执行和OFF执行的某一个还是ON执行及OFF执行这两者均尚未执行,向显示装置显示各命令的ON执行及OFF执行的执行状况可被视觉辨认的内容的画面(图
5~图8所示者中的任意一个内容例的画面)。
[0055] 另外,作为其它例子,考虑下述情况,即,选择了动作验证状况_001及动作验证状况_002,动作验证状况_001中包含表示步编号XX的始终执行的命令(下面,设为命令A)的ON执行已被执行但OFF执行尚未执行的信息,动作验证状况_002中包含表示命令A的ON执行尚未执行但OFF执行已被执行的信息。在该情况下,动作验证状况显示部21通过对动作验证状况_001及动作验证状况_002进行解析,从而知晓命令A的ON执行及OFF执行这两者已被执行,即已验证。因此,动作验证状况显示部21将针对命令A的ON执行及OFF执行能够视觉辨认出已验证这一点的内容的画面向显示装置进行显示。
[0056] 接下来,对PLC 1的硬件结构进行说明,该PLC 1构成实施方式1涉及的调试装置100。图1所示的PLC 1能够通过图12所示的处理器201、存储器202及通信接口203实现。处理器201也可以是处理装置、运算装置、微处理器、微型计算机、CPU(Central Processing Unit)、或DSP(Digital Signal Processor)等。此处,存储器202是RAM(Random Access Memory)、ROM(Read Only Memory)、闪存、EPROM(Erasable Programmable ROM)、或EEPROM(Electrically EPROM)等非易失性或易失性半导体存储器、磁盘、软盘、光盘、高密度盘、迷你盘、或DVD(Digital Versatile Disc)等。存储器202也可以是组合大于或等于2种存储装置而得到的。
[0057] PLC 1的程序存储器11是通过存储器202实现的。PLC 1的程序执行部12是通过处理器201及存储器202实现的。PLC 1的动作验证结果管理部13是通过处理器201及存储器202实现的。即,动作验证状况判定部14是通过存储器202预先对作为动作验证状况判定部
14进行动作的程序进行保存,处理器201从存储器202读出、执行该程序而实现的。另外,动作验证状况存储部15是通过存储器202实现的。此外,在与实现工程设计工具20的计算机2进行通信时利用图12所示的通信接口203。此外,如已说明过那样,工程设计工具20是通过计算机2执行用于作为工程设计工具20进行动作的程序而实现的。
[0058] 如上所述,本实施方式涉及的调试装置100具备:程序执行部12,其执行定序程序;动作验证状况判定部14,其基于储存于设备存储器17的设备值而对由程序执行部12执行过的命令、执行过的命令的执行类别及前条件进行判定;以及动作验证状况存储部15,其将动作验证状况判定部14的判定结果作为动作验证状况进行存储。由此,用户不需要确认执行过的命令的执行类别,能够使用户的作业负荷减轻。因此,能够使定序程序的调试的作业效率提高。另外,具备动作验证状况显示部21,该动作验证状况显示部21以用户能够视觉辨认的形式对定序程序的动作验证的进展状况进行显示。由此,用户能够容易地得知动作验证的进展状况,能够进一步提高调试的作业效率。
[0059] 此外,在本实施方式中,作为执行类别使用了ON执行、OFF执行,但作为执行类别并不限于此,只要是定义了程序的执行内容即可。
[0060] 实施方式2.
[0061] 在实施方式1中,对PLC 1具备动作验证结果管理部13的结构的调试装置进行了说明,但也可以是包含工程设计工具20的计算机2具备动作验证结果管理部13的结构。
[0062] 图13是表示实施方式2涉及的调试装置的结构例的图。实施方式2涉及的调试装置100a具备PLC 1a、实现实施方式1中说明过的动作验证结果管理部13、以及工程设计工具20的计算机2a。PLC 1a是从实施方式1中说明过的PLC 1删除了动作验证结果管理部13的结构的PLC。计算机2除了在实施方式1中说明过的工程设计工具20之外,还具备实施方式1中说明过的对由程序执行部12执行过的命令及执行类别进行判定而对其结果进行存储的动作验证结果管理部13。由于PLC 1a的程序存储器11及程序执行部12与实施方式1中说明过的PLC 1的程序存储器11及程序执行部12相同,因此省略说明。另外,由于计算机2a的工程设计工具20及动作验证结果管理部13与实施方式1中说明过的计算机2的工程设计工具20及PLC 1的动作验证结果管理部13相同,因此省略说明。
[0063] 此外,此前是分开地构成工程设计工具20和动作验证结果管理部13,但也可以是工程设计工具20具备动作验证结果管理部13的结构。
[0064] 以上的实施方式所示的结构表示的是本发明的内容的一个例子,还可以与其它的公知技术组合,在不脱离本发明的主旨的范围,也可以省略、变更结构的一部分。
[0065] 标号的说明
[0066] 1、1a PLC,2、2a计算机,3网络线缆,11程序存储器,12程序执行部,13动作验证结果管理部,14动作验证状况判定部,15动作验证状况存储部,16验证对象定序程序,17设备存储器,20工程设计工具,21动作验证状况显示部,22动作验证设定输入部,23动作验证设定写入部,100、100a调试装置。

当前第1页 第1页 第2页 第3页