支持装置、支持程序以及支持方法与流程

文档序号:31736024发布日期:2022-10-05 03:41阅读:62来源:国知局
支持装置、支持程序以及支持方法与流程

1.本公开涉及支持装置、支持程序以及支持方法。


背景技术:

2.以往,已知有对可编程控制器的程序的创建及编辑进行辅助的支持装置。例如,在日本特开平4-286002号公报(专利文献1)中,公开了用于将在可编程控制器上执行的序列程序设定于可编程控制器的编程装置。该编程装置基于作为基本构成单位的程序和与该程序中的变量名分别对应地由初始值、重复规则及重复数构成的外部输入数据,自动创建由基本构成单位的重复构成的序列程序。
3.现有技术文献
4.专利文献
5.专利文献1:日本特开平4-286002号公报


技术实现要素:

6.发明所要解决的课题
7.根据专利文献1所公开的编程装置,按照预先输入的重复规则,自动地改写重复的基本构成单位的变量名。然而,在想要在重复的基本构成单位中任意地变更变量名的情况下,无法应用专利文献1的技术。因此,用于变更变量名的输入作业耗费劳力和时间。
8.本公开是鉴于上述问题而完成的,其目的在于提供一种即使在想要任意地变更变量名的情况下,也能够减少用户的输入作业的劳力和时间的支持装置、支持程序以及支持方法。
9.用于解决课题的手段
10.根据本公开的一例,辅助开发在对控制对象进行控制的控制装置中执行的控制程序的支持装置具有受理部、提取部、生成部和复制处理部。受理部受理控制程序中作为复制对象的对象程序的选择。提取部从对象程序中提取变量名。生成部生成所提取的变量名的列表。复制处理部将复制对象程序而得到的复制程序设定在控制程序内。复制处理部基于通过列表的编辑而得到的已编辑列表,改写复制程序中的变量名。
11.根据本公开,用户通过变更列表所包含的变量名,能够任意且容易地变更复制程序中的变量名。由此,即使在想要任意地变更复制程序的变量名的情况下,也能够减少用户的输入作业的劳力和时间。
12.在上述公开中,生成部导出设定文件,所述设定文件包含上述列表,具有所指定的文件形式。复制处理部通过导入包含已编辑列表的已编辑文件,来改写复制程序中的变量名,所述已编辑文件是使用能够编辑具有上述文件形式的文件的应用对设定文件进行编辑而生成的。
13.根据本公开,用户能够使用应用所具有的各种功能,容易地变更设定文件所包含的列表内的变量名。
14.在上述公开中,生成部将与对象程序对应的第1错误检测码包含在设定文件中。复制处理部响应于第1错误检测码与已编辑文件所包含的第2错误检测码一致,允许已编辑文件的导入,响应于第1错误检测码与第2错误检测码不同,不允许已编辑文件的导入。
15.根据本公开,在错误地指定了与通过编辑设定文件而得到的已编辑文件不同的文件的情况下,能够防止继续进行使用了该文件的处理。
16.在上述公开中,生成部将上述列表显示于用户界面。支持装置还具有编辑部,所述编辑部响应于对用户界面的输入,对上述列表进行编辑而生成已编辑列表。
17.根据本公开,用户能够在不使用应用的情况下对列表进行编辑。
18.在上述公开中,提取部从对象程序中进一步提取每个变量的注释。生成部将所提取的注释包含在上述列表中。复制处理部基于已编辑列表,改写复制程序中的每个变量的注释。
19.根据本公开,用户通过变更上述列表所包含的注释,能够任意且容易地变更复制程序中的每个变量的注释。
20.在上述公开中,提取部从对象程序中进一步提取构成对象程序的每个单位程序的注释。生成部将所提取的注释包含在上述列表中。复制处理部基于已编辑列表,改写复制程序中的每个单位程序的注释。
21.根据本公开,用户通过变更上述列表所包含的注释,能够任意且容易地变更构成复制程序的每个单位程序的注释。
22.在上述公开中,文件形式是csv形式。根据本公开,用户能够使用例如microsoft excel(注册商标)那样的通用应用来容易地编辑设定文件。
23.根据本公开的一例,支持程序由能够与对控制对象进行控制的控制装置之间进行通信的计算机执行,辅助开发在控制装置中执行的控制程序。支持程序使计算机执行第1~第4步骤。第1步骤是受理控制程序中作为复制对象的对象程序的选择的步骤。第2步骤是从对象程序中提取变量名的步骤。第3步骤是生成所提取的变量名的列表的步骤。第4步骤是将复制对象程序而得到的复制程序设定在控制程序内的步骤。第4步骤包含以下步骤:基于通过上述列表的编辑而得到的已编辑列表,改写复制程序中的变量名。
24.根据本公开的一例,辅助开发在对控制对象进行控制的控制装置中执行的控制程序的支持装置中的支持方法包含上述第1~第4步骤。
25.发明的效果
26.根据本公开,即使在想要任意地变更变量名的情况下,也能够减少用户的输入作业的劳力和时间。
附图说明
27.图1是示意性地表示本实施方式的支持装置200的应用场景的图。
28.图2是表示控制系统1的结构例的示意图。
29.图3是表示plc 100的硬件结构例的示意图。
30.图4是表示支持装置200的硬件结构例的示意图。
31.图5是表示包含创建中的控制程序400的显示画面30的一例的图。
32.图6是表示用于设定复制处理的条件的设定画面40的一例的图。
33.图7是表示促使设定文件300的文件形式以及文件路径的指定的对话框55的一例的图。
34.图8是表示对象程序420的一例的图。
35.图9是表示与图8所示的对象程序420对应的设定文件300的一例的图。
36.图10是表示通过对图9所示的设定文件300进行编辑而得到的已编辑文件302的一例的图。
37.图11是表示促使已编辑文件302的文件路径指定的对话框60的一例的图。
38.图12是表示根据图11所示的已编辑文件302而改写的复制程序422的图。
39.图13是表示导出设定文件300时的支持装置200的处理流程的一例的流程图。
40.图14是表示导入已编辑文件302时的支持装置200的处理流程的一例的流程图。
41.图15是表示变形例中的设定画面40a的一例的图。
具体实施方式
42.参照附图对本发明的实施方式进行详细说明。另外,对图中的相同或相应的部分标注相同的标号并不重复其说明。以下说明的各实施方式以及各变形例也可以适当地选择性地组合。
43.§
1应用例
44.参照图1,对应用本发明的场景的一例进行说明。图1是示意性地表示本实施方式的支持装置200的应用场景的图。
45.支持装置200是提供控制程序400的开发辅助环境的装置。支持装置200作为用于辅助控制程序400的开发的功能,具有用于控制程序400的创建及编辑的编辑器功能。另外,编辑功能可包含在线编辑功能和离线编辑功能。
46.在控制程序400的多个部位,能够设定相同的程序。在这样的情况下,若在该多个部位分别创建同一程序,则控制程序400的创建所需的用户(设定者)的劳力和时间变大。因此,本实施方式的支持装置200具有将复制程序422设定在控制程序400内的功能,复制程序422通过复制控制程序400中的作为复制对象的对象程序420而得到。由此,减少控制程序400的创建所需的用户的劳力和时间。
47.图1所例示的支持装置200具有保持部20、受理部21、提取部22、生成部23及复制处理部24来作为提供控制程序400的开发辅助环境的结构。
48.支持装置200还具有编辑部28。编辑部28既可以作为提供控制程序400的开发辅助环境的结构而安装于支持装置200,也可以作为与提供开发辅助环境的结构不同的结构而安装于支持装置200。
49.保持部20保持由用户创建或编辑的控制程序400。典型地,保持部20是通过非易失性地保存在支持装置200中执行的各种程序的硬盘来实现的功能。控制程序400在作为用于对控制对象进行控制的控制装置的一例的plc(programmable logic controller:可编程逻辑控制器)100中执行。
50.受理部21受理用户操作。例如,受理部21是受理来自鼠标、键盘的输入信号的输入接口。受理部21从创建中的控制程序400中受理作为复制对象的对象程序420的选择。
51.提取部22从被选择为复制对象的对象程序420中提取变量名。即,提取部22针对在
对象程序420中使用的1个以上的变量,分别提取变量名。生成部23生成所提取的变量名的列表25。
52.编辑部28根据用户的指示,对列表25进行编辑,生成已编辑列表26。具体而言,用户将列表25中包含的变量名变更为期望的名称。
53.复制处理部24将复制对象程序420而得到的复制程序422设定在控制程序400内。
54.复制处理部24基于已编辑列表26,改写复制程序422中的变量名。即,复制处理部24使已编辑列表26中包含的变量名反映到复制程序422中。
55.复制处理部24也可以在控制程序400内以用户所指定的复制次数设定复制程序422。在该情况下,列表25以及已编辑列表26按每个复制程序422生成。
56.如上所述,支持装置200使通过列表25的编辑而得到的已编辑列表26所包含的变量名反映至复制程序422。因此,用户通过变更列表25中包含的变量名,能够任意且容易地变更复制程序422内的变量名。即,根据本实施方式的支持装置200,即便在想要任意地变更变量名的情况下,也能够减少用户的输入作业的劳力和时间。
57.§
2.具体例
58.《a.系统结构》
59.参照图2,对包含本实施方式的支持装置200的控制系统1进行说明。图2是表示控制系统1的结构例的示意图。
60.图2所例示的控制系统1包含多个plc 100-1、plc 100-2、plc 100-3、plc100-4、
……
(以下,也总称为“plc 100”。)和支持装置200。
61.plc 100分别是对继电器、传感器等现场设备即控制对象进行控制的控制装置的一例。另外,控制系统1也可以是包含1台plc 100的结构。在控制系统1中,以下,为了简化说明,对以1台plc 100为对象的开发辅助环境进行说明。
62.典型地,plc 100包含:cpu(central processing unit:中央处理器)单元10,其是执行包含控制程序400(参照图1)在内的各种程序的主体;电源单元12,其向cpu单元10等供给电力;以及i/o(input/output:输入/输出)单元14,其交换来自现场的信号。i/o单元14经由系统总线11与cpu单元10连接。
63.支持装置200可连接于plc 100,提供由plc 100执行的控制程序400的开发辅助环境。通过在支持装置200中安装支持程序来提供这样的开发辅助环境。
64.用户(设计者)能够利用支持程序来设计plc 100用的控制程序400,并将所设计的控制程序400安装到plc 100中。
65.支持程序例如保存于记录介质250而流通,并安装于支持装置200。也可以代替记录介质250而从外部的服务器装置等经由网络安装支持程序。作为一例,支持装置200经由连接线缆而与plc 100的cpu单元10连接。支持装置200典型的是由个人计算机来实现。
66.支持装置200所提供的开发辅助环境可具有程序的编辑器(编辑)、调试器、模拟器以及用于将这些输出信息输出至显示器等监视器的监视器功能等。支持装置200也可以还具有取得运转中的plc 100的状态值并输出至显示器等监视器的功能等。
67.作为开发对象的控制程序400例如遵循国际标准iec61131-3。在国际标准iec61131-3中,作为编程语言,规定梯形图(ld:ladder diagram)、功能块图(fbd:function block diagram)、序列功能图(sfc:sequential function chart)、指令列表(il:
instrution list)、结构化文本(st:structured text)这5种。本实施方式的控制程序也可利用遵循国际标准iec61131-3的任意编程语言来描述。特别是梯形图、功能块图、序列功能图是需要图形的描述、配置的程序语言,程序的描述、变量名的设定耗费劳力和时间。如上所述,根据本实施方式的支持装置200,变量名的变更容易。因此,本实施方式的支持装置200对于以梯形图、功能块图、序列功能图中的任意程序语言描述的控制程序400的开发是有效的。
68.支持装置200能够显示控制程序400的内容。具体而言,支持装置200能够显示控制程序400的源代码。支持装置200例如在控制程序400的编辑、更新作业中显示控制程序400的内容。
69.《b.plc 100的硬件结构》
70.图3是表示plc 100的硬件结构例的示意图。参照图3,plc 100通过处理器执行预先安装的程序来实现对控制对象的控制。更具体而言,plc 100包含cpu或mpu(micro-processing unit:微处理器)等处理器102、芯片组104、主存储器106、闪存108、usb(universal serial bus:通用串行总线)接口116、存储卡接口118、内部总线控制器122以及现场总线控制器124。闪存108保存系统程序110和控制程序400。
71.处理器102读出保存在闪存108中的系统程序110和控制程序400,在主存储器106中展开并执行,由此实现对控制对象的控制。
72.系统程序110包含用于提供数据的输入输出处理、执行定时控制等plc 100的基本功能的命令代码。控制程序400是根据用户的控制目的(例如,作为对象的生产线或工艺)而创建的。
73.控制程序400例如是用于执行序列控制的序列程序以及用于执行运动控制的运动程序。此外,控制程序400不限于这些程序,只要是能够安装于plc 100且由用户创建或编辑的程序即可。
74.芯片组104通过控制各组件,实现作为plc 100整体的处理。
75.内部总线控制器122是与i/o单元14之间交换数据的接口,i/o单元14通过内部总线与plc 100连接。现场总线控制器124是与i/o单元16之间交换数据的接口,i/o单元16通过未图示的现场总线与plc 100连接。内部总线控制器122和现场总线控制器124取得分别输入至i/o单元14和i/o单元16的状态值,并且将处理器102中的运算结果从i/o单元14和i/o单元16分别作为指令值输出。
76.usb接口116通过usb来控制数据的交换。支持装置200经由usb接口116与plc 100进行通信。存储卡接口118构成为能够装卸存储卡120,能够对存储卡120写入数据,并从存储卡120读出数据。
77.由用户创建或编辑的控制程序400可从支持装置200、存储卡120、或发布服务器等安装。
78.在图3中,示出了通过处理器102执行程序而提供所需的功能的结构例,但也可以使用专用的硬件电路(例如,asic(application specific integrated circuit:专用集成电路)或者fpga(field-programmable gate array:现场可编程门阵列)等)来安装这些所提供的功能的一部分或者全部。或者,也可以使用遵循通用架构的硬件(例如以通用个人计算机为基础的工业用个人计算机)来实现plc 100的主要部分。在该情况下,也可以使用虚
拟化技术并行地执行用途不同的多个os(operating system:操作系统),并且在各os上执行所需的应用。
79.《c.支持装置200的硬件结构》
80.图4是表示支持装置200的硬件结构例的示意图。参照图4,支持装置200典型的是由通用的计算机构成。此外,从配置plc 100的制造现场的维护性的观点出发,优选为便携性优异的笔记本型的个人计算机。
81.支持装置200具有存储部201、以及执行包含os在内的各种程序的cpu 202。存储部201包含:保存bios、各种数据的rom(read only memory:只读存储器)204;提供cpu 202中的程序执行所需的数据保存用的作业区域的ram(random access memory:随机存取存储器)206;以及非易失性地保存由cpu 202执行的程序等的硬盘(hdd)208。这些组件经由总线220连接。
82.hdd 208保存用于提供控制程序的开发辅助环境的支持程序230、和通用应用232。通用应用232例如是microsoft excel(注册商标)。图1所示的受理部21、提取部22、生成部23以及复制处理部24通过cpu 202执行支持程序230来实现。图1所示的编辑部28通过cpu 202执行通用应用232来实现。
83.支持装置200还包含:操作部203,其包含用户为了对支持装置200输入指示而操作的键盘210和鼠标211;以及显示器214,其用于将信息提示给用户。操作部203和显示器214构成用户界面。
84.支持装置200包含用于从记录介质250读取支持程序230及通用应用232的光学记录介质读取装置216。另外,支持程序230及通用应用232也可从存储卡、发布服务器等安装。
85.usb接口218通过usb来控制数据的交换。支持装置200经由usb接口218与plc 100进行通信。此外,支持装置200与plc 100之间的通信不限于usb,也可以是ethernet(注册商标)等。
86.在图4中,示出了通过cpu 202等处理器执行程序而提供所需的功能的结构例,但也可以使用专用的硬件电路(例如asic或fpga等)来安装这些所提供的功能的一部分或全部。在该情况下,也可以使用虚拟化技术并行地执行用途不同的多个os,并且在各os上执行所需的应用。
87.《d.对象程序的复制处理的方法》
88.参照图5~图12,对支持装置200中的对象程序420的复制处理的方法进行说明。对象程序420的复制处理由cpu 202根据对操作部203的输入和支持程序230来执行。
89.cpu 202响应于对操作部203的输入,创建控制程序400。cpu 202使显示器214显示创建中的控制程序400。
90.图5是表示包含创建中的控制程序400的显示画面30的一例的图。图5所例示的显示画面30显示于显示器214。
91.在显示画面30中,示出了以功能块图描述的控制程序400。控制程序400由每行的单位程序440构成。对各行赋予行编号450。用户能够按每个单位程序440输入注释(以下,称为“行注释”。)。cpu 202将所输入的行注释与单位程序440相对应地设定在控制程序400内。通常,行注释以表示对应的单位程序440的内容的方式被输入。
92.用户能够对在各单位程序440中使用的各变量,设定变量名460以及注释(以下,称
为“变量注释470”。)。此外,为了简化,在图5中,仅对一部分变量标注标号“460”以及“470”。对于同一变量,设定同一变量名460及同一变量注释470。也可以不对所有变量设定变量注释470。即,用户能够仅针对期望的变量输入变量注释470。通常,变量注释470以表示变量的种类、内容等的方式被输入。在图5所例示的显示画面30中,针对与变量名460_1对应的变量,未设定变量注释470。另一方面,对于与变量名460_2和460_3对应的变量,分别设定变量注释470_2和470_3。
93.作为受理部21进行动作的cpu 202在显示画面30中,从控制程序400中受理作为复制对象的对象程序420的选择。对象程序420由1个或多个单位程序440构成。
94.显示画面30包含表示复制对象范围的框线31。用户通过变更框线31的尺寸,能够变更复制对象范围。cpu 202对应于复制指示被输入到操作部203,选择由框线31内的1个或多个单位程序440构成的程序作为对象程序420。在图5所例示的显示画面30中,选择由与表示“3”及“4”的行编号450对应的2个单位程序440构成的程序作为对象程序420。
95.图6是表示用于设定复制处理的条件的设定画面40的一例的图。设定画面40包含用于输入对象程序420的复制次数的输入栏41。用户只要将复制对象程序420而得到的复制程序422的所需数量输入到输入栏41即可。
96.作为复制处理部24(参照图1)进行动作的cpu 202通过以复制次数复制对象程序420,生成与复制次数相同数量的复制程序422。此时,复制程序422中的变量名、变量注释以及行注释分别与对象程序420中的变量名460、变量注释470以及行注释相同。
97.cpu 202根据第1~第3方法中的任意方法改写复制程序422中的变量名。
98.第1方法是如下方法:将复制程序422中的变量名改写为将对象程序420中的变量名460所包含的数字中的起始数字加上偏移量而得到的名称。例如,在对象程序420中的变量名460为“sbx_u02_in00”的情况下,复制程序422中的变量名被改写为将起始数字“02”加上偏移“1”而得到的“sbx_u03_in00”。
99.另外,在输入栏41中输入了2个以上的整数的情况下,在控制程序400中设定2个以上的复制程序422。在该情况下,第k个复制程序422中的变量名被改写为将对象程序420中的变量名460的起始数字加上偏移的k倍而得到的变量名。
100.第2方法是如下方法:将复制程序422中的变量名改写为将对象程序420中的变量名460所包含的数字中的末尾数字加上偏移量而得到的名称。例如,在对象程序420中的变量名460为“sbx_u02_in00”的情况下,复制程序422中的变量名被改写为将末尾的数字“00”加上偏移“1”而得到的“sbx_u02_in01”。
101.另外,在输入栏41中输入了2个以上的整数的情况下,在控制程序400中设定2个以上的复制程序422。在该情况下,第k个复制程序422中的变量名被改写为将对象程序420中的变量名460的末尾的数字加上偏移的k倍而得到的变量名。
102.第3方法是任意改写复制程序422中的变量名的方法。关于第3方法的详细内容,将在后面叙述。
103.设定画面40包含与第1~第3方法分别对应的单选按钮43~45。在选择了单选按钮43的情况下,cpu 202按照第1方法改写复制程序422中的变量名。在选择了单选按钮44的情况下,cpu 202按照第2方法改写复制程序422中的变量名。在选择了单选按钮45的情况下,cpu 202按照第3方法改写复制程序422中的变量名。
104.设定画面40包含变量列表46。变量列表46是针对在对象程序420中使用的各变量,将变量名、数据类型以及变量注释建立了对应的列表。cpu 202通过分析对象程序420,针对各变量提取变量名、数据类型和变量注释。cpu 202创建将提取出的变量名、数据类型以及变量注释建立了对应的变量列表46,并将创建出的变量列表46包含在设定画面40中。变量列表46还包含针对各变量的复选框47和用于输入偏移的输入栏48。此外,在输入栏48中输入有默认值“1”。
105.变量列表46用于设定按照第1方法或第2方法的复制处理的条件。因此,cpu 202响应于单选按钮43或单选按钮44的选择,受理对变量列表46的复选框47及输入栏48的输入。
106.cpu 202仅针对复选框47被选中的变量,根据输入到输入栏48的偏移来改写复制程序422的变量名。因此,用户只要根据偏移仅针对想要设定变量名的变量勾选复选框47即可。另外,cpu 202仅针对变量名中包含数字的变量,受理对复选框47的勾选。
107.在第1方法和第2方法中,改写变量名,以使数字变更偏移量。用户在想要任意地变更变量名的情况下,选择与第3方法对应的单选按钮45。以下,对第3方法进行说明。
108.设定画面40包含:用于导出包含列表25(参照图1)的设定文件300的按钮49;以及用于导入包含已编辑列表26(参照图1)的已编辑文件302的按钮50。按钮49、50与第3方法相关联。因此,cpu 202根据单选按钮45被选择的情况,受理按钮49、50的操作。设定画面40还包含用于显示设定文件300的文件路径的显示栏51。此外,在初始状态下,在显示栏51中什么也没有描述。
109.根据按钮49的操作,cpu 202将促使设定文件300的文件形式以及文件路径的指定的对话框显示于显示器214。
110.图7是表示促使指定设定文件300的文件形式和文件路径的对话框55的一例的图。如图7所示,对话框55包含用于指定设定文件300的目录的输入栏56、用于指定文件名的输入栏57、以及用于指定文件形式的输入栏58。输入栏58是用于从预先确定的1个以上的文件形式中选择1个文件形式的栏。在本实施方式中,选择能够由通用应用232编辑的文件形式(例如csv形式)。
111.用户将期望的目录以及文件名分别输入到输入栏56、57。进而,用户操作输入栏58来指定文件形式。与向输入栏56、57、58的输入对应的文件路径反映于图6的显示栏51。
112.对话框55包含用于指示设定文件300的导出执行的按钮59。根据按钮59的操作,作为提取部22(参照图1)进行动作的cpu 202从对象程序420中提取变量名460。cpu 202还可以从对象程序420中提取每个变量的变量注释470、和构成对象程序420的每个单位程序440的行注释中的至少一方。
113.接着,作为生成部23(参照图1)进行动作的cpu 202生成设定文件300,设定文件300包含所提取的变量名460的列表25且具有所指定的文件名及文件形式。cpu202将所创建的设定文件300保存在指定的目录中。
114.cpu 202也可以使从对象程序420提取出的变量注释470以及行注释包含在设定文件300中。
115.cpu 202也可以使与对象程序420对应的错误检测码包含在设定文件300中。例如,cpu 202计算对象程序420的crc(cyclic redundancy check:循环冗余校验),并将该crc写入设定文件300。
116.图8是表示对象程序420的一例的图。另外,在图8中,仅示出对象程序420中的起始单位程序440。图9是表示与图8所示的对象程序420对应的设定文件300的一例的图。
117.cpu 202从图8所例示的对象程序420中提取变量名460_4~460_7。进而,cpu202在设定了变量注释的情况下,也提取该变量注释。具体地,cpu 202提取分别对变量名460_4和460_6设定的变量注释470_4和470_6。进而,cpu 202还提取与构成对象程序420的各单位程序440对应的行注释。
118.图9示出了具有csv形式的设定文件300。如图9所示,在设定文件300的第1行中描述有文件名310、文件版本320以及错误检测码330。
119.在设定文件300的第2行中,描述有识别对象程序420和指定的复制次数的复制程序422的字符串。在图9中,[template]用于识别作为复制对象的对象程序420。[k](k为1~复制次数的整数)用于识别第k个复制程序422。[template]被描述在第2行的第1列的项目(字段)中。[k]被描述在第2行的第(2k+1)列的项目中。
[0120]
在设定文件300的第3行中描述第4行以后的数据的标题。《variable》表示变量名。《comment》表示变量注释或行注释。《variable》被描述在第3行的第1列以及第(2k+1)列的项目中。《comment》被描述在第3行的第2列以及第(2k+2)列的项目中。
[0121]
在设定文件300的第4行以后描述所提取的变量名、变量注释、行注释。即,设定文件300的第4行以后的项目与从对象程序420提取出的变量名、变量注释以及行注释的列表25对应。在图9中示出了为了第1个复制程序422而生成的列表25_1和为了第2个复制程序422而生成的列表25_2的一部分。
[0122]
在第1列中,按照出现顺序描述从对象程序420提取出的变量名。另外,为了区分从构成对象程序420的各单位程序440提取出的变量名,在描述有从各单位程序440提取出的变量名的行的紧前的行中描述“//networkcomment”。在图9所例示的设定文件300中,在第1列的第4行以及第9行的项目中描述有“//networkcomment”。因此,在第1列的第5行至第8行的项目中,分别描述有从对象程序420的起始单位程序440中提取出的4个变量名、即图8所示的变量名460_4~460_7。
[0123]
在第2列的项目中描述有从对象程序420中提取出的行注释以及变量注释。行注释被描述在描述了“//networkcomment”的项目的下一个项目中。例如,与图8所示的单位程序440对应的行注释“input_e-stop01”被描述在第2列的第4行的项目中。变量注释被描述在描述有对应的变量名的项目的下一个项目中。例如,图8所示的变量注释470_4、470_6分别被描述在描述有变量名460_4、460_6的项目的下一个项目、即第2列的第5行、第7行的项目中。
[0124]
在第1列的第4行以后的项目中描述的字符串被复制到第(2k+1)列的第4行以后的项目中。在第2列的第4行以后的项目中描述的字符串被复制到第(2k+2)列的第4行以后的项目中。
[0125]
被导出的设定文件300具有能够通过通用应用232编辑的文件形式。因此,用户能够使用通用应用232来编辑设定文件300。例如,用户使用作为microsoft excel(注册商标)的通用应用232,编辑在具有csv形式的设定文件300的项目中描述的变量名、变量注释以及行注释。此时,用户能够使用通用应用232的各种功能来编辑变量名、变量注释和行注释。或者,用户也可以使用在另外准备的变量一览文件中描述的1个或多个变量名及变量注释,覆
盖在设定文件300中描述的1个或多个变量名及变量注释。这样,用户能够容易地变更变量名、变量注释以及行注释。
[0126]
用户也可以使设定文件300移动到外部的信息处理装置,使用安装在该信息处理装置中的通用应用来编辑设定文件300。
[0127]
这样,用户通过编辑设定文件300,创建包含已编辑列表26(参照图1)的已编辑文件302。已编辑文件302可以通过覆盖设定文件300来创建,也可以与设定文件300分开创建。
[0128]
图10是表示通过对图9所示的设定文件300进行编辑而得到的已编辑文件302的一例的图。
[0129]
如图10所示,在已编辑文件302的第1行中描述有文件名312、文件版本322以及错误检测码332。只要在生成已编辑文件302时不对设定文件300的文件名310、文件版本320以及错误检测码330进行编辑,文件名312、文件版本322以及错误检测码332就分别与文件名310、文件版本320以及错误检测码330一致。
[0130]
图10所示的已编辑文件302与图9所示的设定文件300相比,在以下方面不同。
[0131]
·
在第3列第5~8行的项目(字段)中描述的变量名;
[0132]
·
在第3列第10~12行的项目中描述的变量名;
[0133]
·
在第4列第4行的项目中描述的行注释;
[0134]
·
在第4列第5行的项目中描述的变量注释;
[0135]
·
在第4列第9行的项目中描述的行注释;
[0136]
·
在第4列第10行的项目中描述的变量注释。
[0137]
用户针对变量名、变量注释及行注释,可以追加、变更或删除数字,也可以追加、变更或删除数字以外的字符串。这样,用户能够任意地变更变量名、变量注释以及行注释。已编辑文件302的第(2k+1)、(2k+2)列的第4行以后的项目对应于与第k个复制程序422对应的变量名、变量注释以及行注释的已编辑列表26。在图10中示出了为了第1个复制程序422而生成的已编辑列表26_1和为了第2个复制程序422而生成的已编辑列表26_2的一部分。
[0138]
用户创建已编辑文件302后,操作图6所示的设定画面40的按钮50。根据按钮50的操作,作为复制处理部24(参照图1)进行动作的cpu 202将促使已编辑文件302的文件路径的指定的对话框显示于显示器214。
[0139]
图11是表示促使已编辑文件302的文件路径指定的对话框60的一例的图。如图11所示,对话框60包含用于指定已编辑文件302的目录的输入栏61、和用于指定文件名的输入栏62。在初始状态下,在输入栏61、62中显示与设定文件300的文件路径对应的目录和文件名。因此,在通过覆盖设定文件300来创建已编辑文件302的情况下,能够省去用户对输入栏61、62的输入的劳力和时间。
[0140]
对话框60包含用于指示已编辑文件302的导入执行的按钮63。根据按钮63的操作,cpu 202导入已编辑文件302,改写复制程序422中的变量名。在已编辑文件302中描述有变量注释以及行注释的情况下,cpu 202进一步改写复制程序422中的变量注释以及行注释。
[0141]
图12是表示根据图11所示的已编辑文件302而改写的复制程序422的图。在图12中,仅示出了构成复制程序422的起始单位程序440。
[0142]
如图12所示,复制程序422中的变量名460_8~460_11分别从图8所示的变量名460_4~460_7变更而得到。并且,复制程序422中的变量注释470_8从图8所示的变量注释
470_4变更而得到。另外,图11所示的已编辑文件302的第4列、第7行的项目的字符串与图8所示的设定文件300的第4列、第7行的项目的字符串一致。因此,复制程序422中的变量注释470_10与图8所示的变量注释470_6相同。并且,虽未图示,但按照已编辑文件302,与构成复制程序422的起始单位程序440对应的行注释从“input_e-stop01”变更为“input_e-stop03”。
[0143]
返回图6,设定画面40包含用于执行对控制程序400设定复制程序422的按钮52。根据按钮52的操作,作为复制处理部24(参照图1)进行动作的cpu 202将复制程序422设定(粘贴)于控制程序400。
[0144]
设定画面40包含用于取消复制处理的按钮53。根据按钮53的操作,cpu 202中止复制处理。
[0145]
《e.支持装置的处理流程》
[0146]
接着,对导出设定文件300时的支持装置200的处理流程、及导入已编辑文件302时的支持装置200的处理流程进行说明。在(i)在图5所示的显示画面30中选择了对象程序420、(ii)在图6所示的设定画面40中输入了复制次数且选择了单选按钮45时,执行这些处理。另外,cpu 202创建与输入到设定画面40的输入栏41的复制次数相同数量的复制程序422,并设定在控制程序400中。
[0147]
图13是表示导出设定文件300时的支持装置200的处理流程的一例的流程图。
[0148]
首先,cpu 202根据设定画面40(参照图6)的按钮49的操作,将促使设定文件300的文件路径以及文件形式的指定的画面(例如图7所示的对话框55)显示于显示器214(步骤s1)。
[0149]
cpu 202按照所指定的文件形式创建空的设定文件300,在由所指定的文件路径表示的场所保存所创建的设定文件300(步骤s2)。以下,设为创建了csv形式的设定文件300来进行说明。
[0150]
cpu 202计算作为复制对象的对象程序420的错误检测码(例如crc)(步骤s3)。
[0151]
cpu 202将文件名、文件版本以及crc临时保存在ram 206中(步骤s4)。进而,cpu 202将所保存的文件名、文件版本以及crc写入到设定文件300的第1行(步骤s5)。
[0152]
cpu 202从对象程序420中提取变量名、变量注释以及行注释(步骤s6)。
[0153]
cpu 202将提取出的变量名、变量注释以及行注释的数据集(表示列表25的数据集)作为模板用而写入到设定文件300中(步骤s7)。模板用的数据集与作为复制对象的对象程序420的变量名、变量注释以及行注释对应。
[0154]
进而,cpu 202将该数据集以复制次数写入到设定文件300中(步骤s8)。写入了复制次数的数据集对应于复制程序422的变量名、变量注释以及行注释。在步骤s8完成后,cpu 202结束设定文件300的导出处理。
[0155]
图14是表示导入已编辑文件302时的支持装置200的处理流程的一例的流程图。
[0156]
首先,cpu 202根据设定画面40(参照图6)的按钮50的操作,将促使已编辑文件302的文件路径的指定的画面(例如图9所示的对话框60)显示于显示器214(步骤s11)。
[0157]
cpu 202打开在指定的文件路径中保存的已编辑文件302(步骤s12)。进而,cpu 202从已编辑文件302中读入文件名、文件版本以及crc(步骤s13)。
[0158]
cpu 202判定读入的文件名、文件版本以及crc与在图13所示的步骤s4中临时保存
在ram 206中的文件名、文件版本以及crc(保存数据)是否一致(步骤s14)。
[0159]
在步骤s14中为“是”的情况下,cpu 202允许已编辑文件302的导入,继续步骤s15以后的处理。在步骤s14中为“否”的情况下,cpu 202不允许已编辑文件302的导入。具体地,cpu 202在显示器214上显示导入失败,结束导入处理。由此,在错误地指定了与按照图13所示的流程图导出的设定文件300的第1行所描述的文件名、文件版本以及crc不同的文件的情况下,能够防止继续使用该文件的处理。
[0160]
在步骤s15中,cpu 202确认已编辑文件302的文件格式。例如,cpu 202读入图9所示的已编辑文件302的第2行的项目、即用于识别对象程序420以及第复制次数个的复制程序422的字符串([template]、[k](k为1~复制次数的整数))。
[0161]
cpu 202判定文件格式是否正常(步骤s16)。具体而言,cpu 202根据已编辑文件302的第2行的第1列的项目所描述的字符串与“template”一致、且第2行的3列名以后的项目所描述的字符串[k]的最大值与复制次数一致,判定为文件格式正常。
[0162]
在步骤s16中为“是”的情况下,cpu 202允许已编辑文件302的导入,针对复制次数的每个复制程序422,重复步骤s17~s20的改写循环。
[0163]
在步骤s18中,cpu 202从已编辑文件302中读入与第k个复制程序422对应的已编辑列表26的字符串。具体而言,cpu 202读入在图10所示的已编辑文件302的第(2k+1)列以及第(2k+2)列的第4行以后的项目中描述的字符串。
[0164]
在步骤s19中,cpu 202按照读入的字符串,改写第k个复制程序422中的变量名、变量注释以及行注释。
[0165]
cpu 202针对k=1~复制次数分别完成步骤s18以及步骤s19的处理后,结束已编辑文件302的导入的处理。
[0166]
在步骤s16中为“否”的情况下,cpu 202不允许已编辑文件302的导入。具体地,cpu 202在显示器214上显示导入失败,结束导入处理。由此,即使在指定了具有不同文件格式的文件的情况下,也能够防止继续进行使用了该文件的处理。
[0167]
《f.变形例》
[0168]
在上述具体例中,导出包含列表25(参照图1)且具有指定的文件形式的设定文件300。然后,导入通过编辑设定文件300而生成的、包含已编辑列表26(参照图1)的已编辑文件302。由此,用户能够使用与支持程序230不同的通用应用232来编辑设定文件300,创建已编辑文件302。然而,支持程序230也可以提供编辑列表25而生成已编辑列表26的功能。由此,不需要通用应用232。
[0169]
在本变形例中,通过cpu 202执行支持程序230来实现编辑部28。
[0170]
作为生成部23进行动作的cpu 202生成从对象程序420提取出的变量名460的列表25,并将所生成的列表25显示于显示器214。作为编辑部28进行动作的cpu 202响应于对操作部203的输入,对列表25进行编辑而生成已编辑列表26。作为复制处理部24进行动作的cpu 202基于所生成的已编辑列表26,改写复制程序422的变量名。此外,cpu 202也可以从对象程序420中提取变量注释470以及行注释,并将提取出的变量注释470以及行注释包含在列表25中。在该情况下,cpu 202基于已编辑列表26,改写复制程序422的变量注释以及行注释。
[0171]
图15是表示变形例中的设定画面40a的一例的图。如图15所示,设定画面40a包含
用于任意地设定复制程序422中的变量名的按钮64。cpu 202响应于单选按钮45的选择而受理按钮64的操作。
[0172]
根据按钮64的操作,作为提取部22进行动作的cpu 202从对象程序420中提取变量名460。cpu 202还可以从对象程序420中提取每个变量的变量注释470、和构成对象程序420的每个单位程序440的行注释中的至少一方。然后,cpu 202生成所提取的变量名460、变量注释470以及行注释的列表25,并将包含所生成的列表25的窗口65显示于显示器214。cpu 202生成并显示指定的复制次数的列表25。
[0173]
操作部203受理对窗口65内的列表25的编辑指示的输入。作为编辑部28进行动作的cpu 202响应于对操作部203的输入,对列表25进行编辑而创建已编辑列表
[0174]
26(参照图1)。cpu 202根据窗口65的按钮67的操作,生成表示已编辑列表26的
[0175]
内部数据,并将所生成的内部数据记录于ram 206。
[0176]
作为复制处理部24动作的cpu 202根据设定画面40a的按钮52的操作,基于ram 206上的内部数据,改写复制程序422中的变量名、变量注释以及行注释。然后,cpu 202将复制程序422设定(粘贴)到控制程序400。
[0177]
在本变形例中,由于不需要确认设定文件300与已编辑文件302的对应关系,因此省略错误检测码的计算等处理。具体而言,省略图13所示的步骤s1~s5。此外,代替步骤s7和s8,进行以下步骤:生成所提取的变量名460、变量注释470和行注释的列表25,并在显示器214上显示所生成的列表25。
[0178]
在本变形例中,省略图14所示的步骤s11~s16。另外,代替步骤s18,进行以下步骤:从由ram 206所记录的内部数据表示的已编辑列表26(参照图1)中读入与变量名、变量注释以及行注释对应的字符串。
[0179]
《g.作用/效果》
[0180]
如上所述,支持装置200辅助开发在对控制对象进行控制的plc 100中执行的控制程序400。支持装置200具有受理部21、提取部22、生成部23及复制处理部24。受理部21受理控制程序400中作为复制对象的对象程序420的选择。提取部22从对象程序420中提取变量名。生成部23生成所提取的变量名的列表25(参照图1)。复制处理部24将复制对象程序420而得到的复制程序422设定在控制程序400内。复制处理部24基于通过列表25的编辑而得到的已编辑列表26,改写复制程序422中的变量名。
[0181]
根据上述结构,用户通过使用应用所具有的各种功能来变更列表25中包含的变量名,能够任意且容易地变更复制程序422中的变量名。由此,即使在想要任意地变更变量名的情况下,也能够减少用户的输入作业的劳力和时间。
[0182]
生成部23导出设定文件300,设定文件300包含列表25,具有所指定的文件形式。复制处理部24导入通过使用通用应用232对设定文件300进行编辑而生成的、包含已编辑列表26的已编辑文件302,由此改写复制程序422中的变量名。通用应用232是能够编辑具有所指定的文件形式的文件的应用。由此,用户能够使用通用应用232所具有的各种功能,容易地变更设定文件300所包含的列表25内的变量名。
[0183]
生成部23使与对象程序420对应的错误检测码(例如crc)包含在设定文件300中。复制处理部24响应于设定文件300中包含的错误检测码(第1错误检测码)与已编辑文件302中包含的错误检测码(第2错误检测码)一致,允许已编辑文件302的导入。复制处理部24响
应于第1错误检测码与第2错误检测码不同,不允许已编辑文件302的导入。
[0184]
根据上述结构,在错误地指定了与通过编辑设定文件300而得到的已编辑文件302不同的文件的情况下,能够防止继续进行使用了该文件的处理。
[0185]
生成部23也可以将列表25显示于作为用户界面而构成的显示器214。支持装置200还包含编辑部28,编辑部28响应于对作为用户界面而构成的操作部203的输入,对列表25进行编辑而生成已编辑列表26。由此,用户即使不使用通用应用232,也能够编辑列表25。
[0186]
提取部22也可以从对象程序420中进一步提取每个变量的变量注释。生成部23将提取出的变量注释包含在列表25中。复制处理部24基于已编辑列表26,改写复制程序422中的变量注释。由此,用户通过变更列表25中包含的变量注释,能够任意且容易地变更复制程序422中的变量注释。
[0187]
提取部22也可以从对象程序420中进一步提取构成对象程序420的每个单位程序440的行注释。生成部23将所提取的行注释包含在列表25中。复制处理部24基于已编辑列表26,改写复制程序422中的每个单位程序440的行注释。由此,用户通过变更列表25中包含的行注释,能够任意且容易地变更复制程序422中的行注释。
[0188]
文件形式例如是csv形式。由此,用户能够使用例如microsoft excel(注册商标)那样的通用应用232,容易地编辑设定文件300。
[0189]
《h.附记》
[0190]
如上所述,本实施方式包含以下的公开。
[0191]
(结构1)
[0192]
一种支持装置(200),其辅助开发在对控制对象进行控制的控制装置(100)中执行的控制程序(400),其中,该支持装置(200)具有:
[0193]
受理部(21、202),其受理所述控制程序(400)中作为复制对象的对象程序(420)的选择;
[0194]
提取部(22、202),其从所述对象程序(420)中提取变量名;
[0195]
生成部(23、202),其生成所提取的所述变量名的列表(25);以及
[0196]
复制处理部(24、202),其将复制所述对象程序(420)而得到的复制程序(422)设定在所述控制程序(400)内,
[0197]
所述复制处理部(24、202)基于通过所述列表(25)的编辑而得到的已编辑列表(26),改写所述复制程序(422)中的变量名。
[0198]
(结构2)
[0199]
在结构1所记载的支持装置(200)中,
[0200]
所述生成部(23、202)导出设定文件(300),所述设定文件(300)包含所述列表(25),具有所指定的文件形式,
[0201]
所述复制处理部(24、202)通过导入包含所述已编辑列表(26)的已编辑文件(302),来改写所述复制程序(422)中的变量名,所述已编辑文件(302)是使用能够编辑具有所述文件形式的文件的应用(232)对所述设定文件(300)进行编辑而生成的。
[0202]
(结构3)
[0203]
在结构2所记载的支持装置(200)中,
[0204]
所述生成部(23、202)将与所述对象程序(420)对应的第1错误检测码包含在所述
设定文件(300)中,
[0205]
所述复制处理部(24、202)响应于所述第1错误检测码与所述已编辑文件(302)所包含的第2错误检测码一致,允许所述已编辑文件的导入,响应于所述第1错误检测码与所述第2错误检测码不同,不允许所述已编辑文件(302)的导入。
[0206]
(结构4)
[0207]
在结构1所记载的支持装置(200)中,
[0208]
所述生成部(23、202)将所述列表(25)显示于用户界面(214),
[0209]
所述支持装置(200)还具有编辑部(28),所述编辑部(28)响应于对所述用户界面(203)的输入,对所述列表(25)进行编辑而生成所述已编辑列表(26)。
[0210]
(结构5)
[0211]
在结构1~4中的任意一项所记载的支持装置(200)中,
[0212]
所述提取部(22、202)从所述对象程序(420)中进一步提取每个变量的注释,
[0213]
所述生成部(23、202)将所提取的所述注释包含在所述列表(25)中,
[0214]
所述复制处理部(24、202)基于所述已编辑列表(26),改写所述复制程序(422)中的每个所述变量的注释。
[0215]
(结构6)
[0216]
在结构1~4中的任意一项所记载的支持装置(200)中,
[0217]
所述提取部(22、202)从所述对象程序(420)中进一步提取构成所述对象程序(420)的每个单位程序(440)的注释,
[0218]
所述生成部(23、202)将所提取的所述注释包含在所述列表(25)中,
[0219]
所述复制处理部(24、202)基于所述已编辑列表(26),改写所述复制程序(422)中的每个所述单位程序(440)的注释。
[0220]
(结构7)
[0221]
在结构2或3所记载的支持装置(200)中,
[0222]
所述文件形式是csv形式。
[0223]
(结构8)
[0224]
一种支持程序(230),其由能够与对控制对象进行控制的控制装置(100)之间进行通信的计算机执行,辅助开发在所述控制装置(100)中执行的控制程序(400),其中,
[0225]
所述支持程序(230)使所述计算机(200)执行以下步骤:
[0226]
受理所述控制程序(400)中作为复制对象的对象程序(420)的选择;
[0227]
从所述对象程序(420)中提取变量名;
[0228]
生成所提取的所述变量名的列表(25);以及
[0229]
将复制所述对象程序(420)而得到的复制程序(422)设定在所述控制程序(400)内,
[0230]
进行所述设定的步骤包含以下步骤:基于通过所述列表(25)的编辑而得到的已编辑列表(26),改写所述复制程序(422)中的变量名。
[0231]
(结构9)
[0232]
一种支持方法,其是辅助开发在对控制对象进行控制的控制装置中执行的控制程序(400)的支持装置(200)中的支持方法,其中,该支持方法具有以下步骤:
[0233]
受理所述控制程序(400)中作为复制对象的对象程序(420)的选择;
[0234]
从所述对象程序(420)中提取变量名;
[0235]
生成所提取的所述变量名的列表(25);以及
[0236]
将复制所述对象程序(420)而得到的复制程序(422)设定在所述控制程序(400)内,
[0237]
进行所述设定的步骤包含以下步骤:基于通过所述列表(25)的编辑而得到的已编辑列表(26),改写所述复制程序(422)中的变量名。
[0238]
对本发明的实施方式进行了说明,但应认为此次公开的实施方式在所有方面都是例示而不是限制性的。本发明的范围由权利要求书表示,意在包含与权利要求书等同的意思以及范围内的所有变更。
[0239]
标号说明
[0240]
1:控制系统;10:cpu单元;11:系统总线;12:电源单元;14、16:i/o单元;20:保持部;21:受理部;22:提取部;23:生成部;24:复制处理部;25:列表;26:已编辑列表;28:应用执行部;30:显示画面;31:框线;40:设定画面;41、48、56、57、58、61、62:输入栏;43~45:单选按钮;46:变量列表;47:复选框;49、50、52、53、59、63、64、67:按钮;51:显示栏;55、60:对话框;65:窗口;100:plc;102:处理器;104:芯片组;106:主存储器;108:闪存;110:系统程序;116、218:usb接口;118:存储卡接口;120:存储卡;122:内部总线控制器;124:现场总线控制器;200:支持装置;201:存储部;202:cpu;203:操作部;206:ram;210:键盘;211:鼠标;214:显示器;216:光学记录介质读取装置;220:总线;230:支持程序;232:通用应用;250:记录介质;300:设定文件;302:已编辑文件;310、312:文件名;320、322:文件版本;330、332:错误检测码;400:控制程序;420:对象程序;422:复制程序;440:单位程序;450:行编号;460:变量名;470:变量注释。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1