一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

信息处理装置、支持程序以及支持系统的制作方法

2022-02-20 22:54:59 来源:中国专利 TAG:


1.本发明涉及一种支持由对控制对象进行控制的控制装置所执行的用户程序的开发的信息处理装置、支持用户程序的开发的支持程序、以及包括信息处理装置的支持系统。


背景技术:

2.在各种制造现场中,导入有可编程逻辑控制器(programmable logic controller,plc)等控制装置。此种控制装置是一种计算机,执行根据制造装置或制造设备等而设计的用户程序。此种用户程序是在独立于控制装置而准备的开发环境下制作。
3.在用户程序中,准备对利用频率高的运算处理进行规定的一个或多个程序,在用户程序中记述调用所述程序的调用命令,由此,程序的部件化以及再利用成为可能。程序的部件化以及再利用化虽然使得用户程序的制作变得容易,但却使得通过将程序层级化而制作的用户程序的分析变得困难。
4.日本专利特开2014-071862号公报(专利文献1)公开了一种可编程控制器的周边装置,其包括序列程序显示处理部,所述序列程序显示处理部显示子程序调用命令,并且通过子程序显示展开处理部而在子程序调用命令与其下个步骤之间展开子程序的显示。
5.现有技术文献
6.专利文献
7.专利文献1:日本专利特开2014-071862号公报


技术实现要素:

8.发明所要解决的问题
9.借助像专利文献1所公开的那样显示通过调用命令而调用的程序,用户能够确认通过调用命令而调用的程序。但是,由于可对调用源的每个调用命令指定任意的实际变量来调用程序,因此若仍以利用哑变量进行定义的状态来显示程序,则用户不得不置换为在调用时所指定的实际变量来确认所述程序。因此,难以进行用户程序的分析,所述用户程序利用了使用调用命令进行了部件化以及再利用化。
10.本发明的目的在于提供一种使得包含调用命令的用户程序的分析变得容易的技术。
11.解决问题的技术手段
12.根据本公开的一例,提供一种信息处理装置,支持由对控制对象进行控制的控制装置所执行的用户程序的开发。信息处理装置包括:受理部件,受理用户操作;保持部件,保持由用户所制作或更新的用户程序;以及显示部件,显示保持部件所保持的用户程序。用户程序包含:第一程序,使用哑变量来定义;以及第二程序,具有用于指定实际变量来调用第一程序的调用命令。显示部件在根据用户操作来将第一程序的内容关联于第二程序中的调用命令而显示的情况下,将在调用命令中经指定的实际变量反映至第一程序中的哑变量而显示。
13.根据本公开,能够以视觉方式显示第一程序在第二程序中具体利用何种自变量来执行,其结果,使得第二程序的分析变得容易。
14.所述的公开中,用户程序也可使用包含一个或多个命令的过程化编程语言而定义。显示部件也可将第一程序中的哑变量置换为在调用命令中经指定的实际变量,以作为在调用命令中经指定的实际变量的反映。
15.根据所述结构,哑变量被置换为实际变量,因此用户无须在意哑变量便能够进行第二程序的分析。
16.所述的公开中,显示部件也可紧跟在第二程序中的调用命令之后显示第一程序的内容,以作为第二程序的一部分。
17.根据所述结构,能够容易理解地显示第二程序的流程,其结果,使得用户程序的分析变得容易。
18.所述的公开中,显示部件也可与第二程序中的调用命令并排地,将第一程序的内容显示于与第二程序的显示列不同的列。
19.根据所述结构,能够容易理解地表示调用的层级结构,其结果,使得用户程序的分析变得容易。
20.所述的公开中,第一程序也可具有递归地调用第一程序的调用命令。显示部件也可在将第一程序的内容关联于第二程序中的调用命令而显示的情况下,对于通过第一程序中的调用命令而调用的第一程序的内容,显示至规定次数为止。
21.根据所述结构,反复显示第一程序的内容,从而防止难以掌握用户程序的内容,其结果,对于用户程序,能够以容易掌握其内容的形态予以显示。
22.所述的公开中,第一程序也可具有一种或多种调用命令。显示部件对于一种或多种调用命令中的预先规定的特定命令,也可不将通过调用命令而调用的程序的内容作为关联于调用命令来显示的对象。
23.根据所述结构,对于预先规定的特定命令,能够省略其内容,因此能够仅显示所需的程序的内容,其结果,使得用户程序的分析变得容易。
24.所述的公开中,第一程序以及第二程序也可使用块表达而定义,所述块表达包含表示功能块或功能的至少一个输入变量以及至少一个输出变量。显示部件也可将表示第一程序的第一块表达编入至表示第二程序中所含的调用命令的第二块表达的内部,并且以将与第二块表达的实际变量对应的端子和与第一块表达的哑变量对应的端子加以结合的形态予以显示,以作为在调用命令中经指定的实际变量的反映。
25.根据所述结构,对于使用块表达而定义的第一程序与第二程序,能够以在视觉上容易理解的形态来显示第一程序与第二程序的关系性,其结果,使得用户程序的分析变得容易。
26.所述的公开中,用户程序也可包含根据成立条件来执行不同的处理的分支程序。显示部件对于分支程序,也可根据用户操作来并列显示不同的处理各自的内容。
27.根据所述结构,能够容易理解处理如何分支,其结果,使得用户程序的分析变得容易。
28.所述的公开中,控制装置也可具有一个或多个输入端口。显示部件也可基于将实际变量与分别表示一个或多个输入端口的地址相关联的变量映射,对于用户程序的内容,
将实际变量置换为地址而予以显示。
29.根据所述结构,一眼便能够显示用户程序利用了哪个地址的输入值,其结果,使得程序的分析变得容易。
30.所述的公开中,用户程序也可包含用于与其他程序执行数据交换的第三程序。显示部件也可将第三程序与其他程序相关联地予以显示。
31.根据所述结构,即便是不同的程序,在其间进行有数据交换的情况下,通过将程序彼此相关联地显示,也能够表示各自的对应关系,其结果,使得程序的分析变得容易。
32.根据本公开的另一例,提供一种支持程序,支持由对控制对象进行控制的控制装置所执行的用户程序的开发。用户程序包含:第一程序,使用哑变量来定义;以及第二程序,具有用于指定实际变量来调用第一程序的调用命令。支持程序使计算机执行:保持步骤,保持由用户所制作或更新的用户程序;受理步骤,受理用户操作;以及显示步骤,根据所受理的操作,对于所保持的用户程序,将第一程序的内容关联于第二程序中的调用命令而显示,并且将在调用命令中经指定的实际变量反映至第一程序中的哑变量而显示。
33.根据本公开,通过显示第一程序在第二程序中具体利用何种自变量来执行,从而使得第二程序的分析变得容易。
34.根据本公开的又一例,提供一种支持系统,其包括:信息处理装置,支持由对控制对象进行控制的控制装置所执行的用户程序的开发;以及显示装置。支持系统包括:受理部件,受理用户操作;保持部件,保持由用户所制作或更新的用户程序;以及显示部件,显示保持部件所保持的用户程序。用户程序包含:第一程序,使用哑变量来定义;以及第二程序,具有用于指定实际变量来调用第一程序的调用命令。显示部件在根据用户操作而将第一程序的内容关联于第二程序中的调用命令而显示的情况下,将在调用命令中经指定的实际变量反映至第一程序中的哑变量而显示。
35.根据本公开,通过显示第一程序在第二程序中具体利用何种自变量来执行,从而使得第二程序的分析变得容易。
36.发明的效果
37.根据本发明,使得包含调用命令的用户程序的分析变得容易。
附图说明
38.图1是示意性地表示本实施方式的信息处理装置200x的适用场景的图。
39.图2是表示控制系统1的结构例的示意图。
40.图3是表示plc100的硬件结构例的示意图。
41.图4是表示支持装置200的硬件结构例的示意图。
42.图5是表示hmi300的硬件结构例的示意图。
43.图6是表示plc100的软件结构例的示意图。
44.图7是表示支持装置200的软件结构例的示意图。
45.图8是表示hmi300的软件结构例的示意图。
46.图9是表示反映显示的第一例的图。
47.图10是表示反映显示的第一例的又一显示例的图。
48.图11是表示反映显示的第二例的图。
49.图12是表示包含递归性的调用的用户程序的显示例的图。
50.图13是表示包含登记在显示省略列表470中的程序的用户程序的显示例的图。
51.图14是表示分支程序的显示例的图。
52.图15是表示将实际变量置换为地址的程序的显示例的图。
53.图16是表示构成为在各自执行的程序之间进行数据收发的程序的显示例的图。
具体实施方式
54.以下,参照附图来说明依据本发明的各实施方式。以下的说明中,对于相同的部件以及构成元件标注了相同的符号。它们的名称以及功能也相同。因此,不再重复关于它们的详细说明。另外,以下说明的各实施方式以及各变形例也可适当选择性地组合。
55.§
1.适用例
56.参照图1来说明适用本发明的场景的一例。图1是示意性地表示本实施方式的信息处理装置200x的适用场景的图。
57.信息处理装置200x是用于支持用户程序400x的开发的装置。信息处理装置200x例如具有用于对用户程序400x进行编辑或更新的编辑器功能,以作为用于支持用户程序400x的开发的功能。另外,编辑功能可包含在线编辑功能与脱机编辑功能。
58.而且,信息处理装置200x也可不具有编辑器功能,而仅具有例如对在plc100x中正在执行的用户程序400x进行显示的功能,以作为用于支持用户程序400x的开发的功能。
59.参照图1,信息处理装置200x具有保持部201x、操作受理部221x以及显示部226x。信息处理装置200x典型的是利用个人计算机来实现。
60.保持部201x保持由用户所制作或编辑的用户程序400x。典型的是,保持部201x是通过非易失地保存在信息处理装置200x中执行的各种程序的硬盘而实现的功能。
61.用户程序400x是在作为用于对控制对象进行控制的控制装置的一例的plc100x中执行。用户程序400x是将多个程序组合而结构,包含具有调用命令460x的主程序420x与通过调用命令460x来调用的子程序440x。子程序440x是使用哑变量来定义,且是将哑变量置换为由调用命令460x所指定的实际变量来执行。
62.图1所示的示例中,用户程序400x包含主程序420x-a与子程序440x。主程序420x-a中所含的调用命令460x-a是将“a”指定为实际变量而调用子程序440x来执行的命令。
63.另外,用户程序400x也可具有如下结构:子程序440x还具有调用命令460x,经调用的子程序进而调用其他的子程序。
64.操作受理部221x受理用户操作。例如,操作受理部221x是受理来自鼠标或键盘的输入信号的输入接口。
65.显示部226x将用户程序400x以视觉方式显示于显示器等。参照图1,显示部226x根据操作受理部221x所受理的用户操作,与主程序420x-a中所含的调用命令460x相关联地显示通过所述调用命令460x而调用的子程序440x的内容。
66.此时,显示部226x将在调用命令460x中经指定的实际变量反映至子程序440x的哑变量而显示。图1所示的示例中,显示“a a”。
67.对子程序440x的内容进行显示的功能例如被利用于制作了用户程序400x后的调试作业中。而且,对子程序440x的内容进行显示的功能也可被利用于在将用户程序400x安
装至plc100x而执行的期间产生了故障等时。
68.在制作用户程序400x的期间,以调用命令460x的格式来记述,从而无须在意子程序440x的内容便可利用所述子程序440x,在此方面具有便利性。
69.但是,在用户程序400x产生了故障的情况下,或者正在进行用户程序400x的测试的期间自不必说,即便在正在制作用户程序400x的期间,也会发生想要确认子程序440x的内容的状况。此种情况下,若子程序440x仍以利用哑变量进行定义的状态而显示,则用户必须一边回忆调用子程序440x时所指定的实际变量,一边确认子程序440x的内容。
70.尤其,在子程序440x还具有调用命令460x的情况等用户程序400x的结构复杂化的情况下,若仍以哑变量来显示,则会使用户程序400x的分析变得更加困难。
71.显示部226x将实际变量反映至哑变量而显示子程序440x的内容,因此能够使用户程序400x的分析变得容易。
72.§
2.具体例
73.<a.系统结构>
74.参照图2来说明包含依据本实施方式的支持装置200的控制系统1。图2是表示控制系统1的结构例的示意图。
75.参照图2,控制系统1包含多个plc100-1、plc100-2、plc100-3、plc100-4、

(以下也总称作“plc100”)、人机接口(human machine interface,hmi)300以及支持装置200。
76.plc100分别是对继电器、传感器等作为现场机器的控制对象进行控制的控制装置的一例。另外,控制系统1也可为包含一台plc100的结构。关于控制系统1,以下为了简化说明,对将一台plc100设为对象的开发环境以及执行环境进行说明。
77.典型的是,plc100包含:中央处理器(central processing unit,cpu)单元10,作为执行包含用户程序的各种程序的主体;电源单元12,对cpu单元10等供给电力;以及输入/输出(input/output,i/o)单元14,交换来自现场的信号。i/o单元14经由系统总线11而与cpu单元10连接。plc100可与支持装置200连接。
78.hmi300是提供用户程序的开发环境的信息处理装置的一例。另外,hmi300也是能够以视觉方式来显示在plc100中执行的用户程序的显示装置的一例。hmi300也可还具备下述功能,即:将通过plc100中的控制运算而获得的各种信息提示给作业员,并且依据来自作业员的操作而对plc100生成内部命令等。hmi300与plc100之间的通信协议典型的是利用ethernet/ip(注册商标)。而且,hmi300可与支持装置200连接。
79.支持装置200是提供由plc100所执行的用户程序的开发环境的信息处理装置的一例。而且,支持装置200生成用于在hmi300上显示用户程序的各种信息。此种开发环境是通过在支持装置200中安装支持程序而提供。
80.支持程序例如是欧姆龙公司制的“sysmac studio”。用户(设计者)可利用支持程序来设计plc100用的用户程序,并将设计好的用户程序安装至plc100。
81.支持程序例如保存在记录介质250中而流通,并安装至支持装置200。也可取代记录介质250而从外部的服务器装置等经由网络来安装支持程序。作为一例,支持装置200经由连接线缆而与plc100的cpu单元10或hmi300连接。支持装置200典型的是利用个人计算机来实现。
82.支持装置200所提供的开发支持环境可具有程序的编辑器(编辑)、调试器、模拟器
以及用于将这些输出信息输出至显示器等的监视器的监视器功能等。支持装置200也可具备进一步获取运转中的plc100的状态值并输出至显示器等的监视器的功能等。
83.作为开发对象的用户程序例如可包含遵循国际规格iec61131-3的程序。在国际规格iec61131-3中,作为包含用户程序的plc应用的编程语言,规定了梯形图(ladder diagram,ld)、功能块图(function block diagram,fbd)、顺序功能图(sequential function chart,sfc)、指令列表(instruction list,il)、结构文本(structured text,st)这五种。本实施方式的用户程序既可利用遵循国际规格iec61131-3的任一种编程语言来记述,而且,也可利用各厂商独有的语言或c语言等过程化编程语言来记述。
84.支持装置200以及hmi300可显示用户程序的内容。具体而言,支持装置200以及hmi300可显示用户程序的源代码。支持装置200例如可在用户程序的编辑、更新作业中显示用户程序的内容。而且,hmi300例如受理用户的操作,基于所述操作来显示用户程序的内容。例如,用户在控制系统1产生了故障等时,对hmi300进行用于显示用户程序的内容的操作。
85.尽管在图2中未示出,但hmi300可执行用于以视觉方式来显示用户程序的内容的显示程序。
86.<b.plc100的硬件结构>
87.图3是表示plc100的硬件结构例的示意图。参照图3,plc100通过处理器执行预先安装的程序,从而实现对控制对象的控制。更具体而言,plc100包含cpu或微处理器(micro-processing unit,mpu)等处理器102、芯片组104、主存储器106、快闪存储器108、通用串行总线(universal serial bus,usb)接口116、存储卡接口118、内部总线控制器122、现场总线控制器124以及外部网络控制器126。快闪存储器108保存系统程序110以及用户程序112。
88.处理器102读出保存在快闪存储器108中的系统程序110以及用户程序112,并展开到主存储器106中来执行,由此来实现对控制对象的控制。
89.系统程序110包含用于提供数据的输入/输出处理或执行时机控制等、plc100的基本功能的命令代码。用户程序112是根据用户的控制目的(例如,作为对象的线或工艺(process))来制作。
90.用户程序112例如是用于执行序列控制的序列程序以及用于执行运动控制的运动程序。另外,用户程序112并不限于这些程序,只要是能够安装于plc100且由用户来制作或编辑的程序即可。例如包含变为保存在后述的库140中的通用部件142的程序。另外,所谓用户,除了直接利用plc100的用户以外,还可包含受到来自直接利用plc100的用户的委托等来进行软件开发的用户。
91.芯片组104通过控制各组件,从而实现作为plc100整体的处理。
92.内部总线控制器122是在plc100与通过内部总线而连结的i/o单元14之间交换数据的接口。现场总线控制器124是在plc100与通过未图示的现场总线而连结的i/o单元16之间交换数据的接口。内部总线控制器122以及现场总线控制器124获取向对应的i/o单元14以及16分别输入的状态值,并且将处理器102中的运算结果作为指令值而分别输出至对应的i/o单元14以及16。
93.usb接口116通过usb来控制数据的交换。支持装置200经由usb接口116而与plc100进行通信。存储卡接口118是可装卸存储卡120地构成,可对存储卡120写入数据,并从存储
卡120读出数据。
94.外部网络控制器126对通过各种有线/无线网络的数据交换进行控制。plc100经由外部网络控制器126而与hmi300、网关、数据库服务器、分发服务器或其他的plc100进行数据交换。
95.由用户所制作或编辑的用户程序112可从支持装置200、存储卡120或者分发服务器等安装。
96.图3中表示了通过处理器102执行程序而提供所需功能的结构例,但这些提供的功能的一部分或全部也可使用专用的硬件电路(例如专用集成电路(application specific integrated circuit,asic)或现场可编程门阵列(field-programmable gate array,fpga)等)而实现。或者,plc100的主要部分也可使用遵循通用架构的硬件(例如将通用个人计算机作为基础的工业个人计算机)来实现。此时,也可使用虚拟技术来并排地执行用途不同的多个操作系统(operating system,os),并且在各os上执行所需的应用。
97.<c.支持装置200的硬件结构>
98.图4是表示支持装置200的硬件结构例的示意图。参照图4,支持装置200典型的是包含通用的计算机。另外,考虑到配置plc100的制造现场的维护性的观点,优选便携性优异的笔记型个人计算机。
99.支持装置200包括存储部201与执行包含os的各种程序的cpu202。存储部201包含:只读存储器(read only memory,rom)204,保存基本输入输出系统(basic input output system,bios)或各种数据;随机存取存储器(random access memory,ram)206,提供用于保存cpu202中的程序执行所需的数据的作业区域;以及硬盘(hard disk drive,hdd)208,非易失地保存由cpu202所执行的程序等。这些组件经由总线220而连接。
100.支持装置200还包含:操作部203,包含为了对支持装置200输入指示而由用户所操作的键盘210及鼠标211;以及显示器214,用于将信息提示给用户。
101.支持装置200包含光学记录介质读取装置216,所述光学记录介质读取装置216用于从记录介质250读取保存在其中的用于提供开发支持环境的支持程序。另外,支持程序也可从存储卡、分发服务器等安装。
102.usb接口218通过usb来控制数据的交换。支持装置200经由usb接口218来与plc100或hmi300进行通信。另外,支持装置200与plc100之间的通信以及支持装置200与hmi300之间的通信并不限于usb,也可为以太网(注册商标)等。
103.图4中表示了通过cpu202等的处理器执行程序而提供所需功能的结构例,但这些提供的功能的一部分或全部也可使用专用的硬件电路(例如asic或fpga等)来实现。此时,也可使用虚拟技术来并排地执行用途不同的多个os,并且在各os上执行所需的应用。
104.<d.hmi300的硬件结构>
105.图5是表示hmi300的硬件结构例的示意图。参照图5,hmi300典型的是包含通用的计算机。hmi300例如既可为固定型,也可在配置plc100的制造现场以便携性优异的笔记型个人计算机的形态来提供,而且,还可以平板型终端的形态来提供。另外,hmi300也可包含专用的硬件而非通用的计算机。
106.hmi300包括存储部301与执行包含os的各种程序的cpu302。存储部301包含:rom304,保存bios或各种数据;存储器ram306,提供用于保存cpu302中的程序执行所需的数
据的作业区域;以及hdd308,非易失地保存由cpu302所执行的程序等。这些组件经由总线320而连接。
107.hmi300还包含触控面板305、外部网络控制器316以及usb接口318。
108.触控面板305包括显示器314与受理用户操作的输入部303。另外,显示器314与输入部303也可独立地构成。此时,输入部303也可包含鼠标与键盘。而且,也可除了作为触控面板305的一部分而提供的输入部303以外,还包括鼠标以及键盘。
109.外部网络控制器316对与plc100之间的数据交换进行控制。
110.usb接口318通过usb来控制数据的交换。hmi300经由usb接口318而与支持装置200进行通信。
111.图5中表示了通过cpu302等的处理器执行程序而提供所需功能的结构例,但这些提供的功能的一部分或全部也可使用专用的硬件电路(例如asic或fpga等)来实现。此时,也可使用虚拟技术来并排地执行用途不同的多个os,并且在各os上执行所需的应用。
112.<e.plc100的软件结构例>
113.接下来,对plc100的软件结构例进行说明。图6是表示plc100的软件结构例的示意图。参照图6,在plc100中,作为控制程序,执行系统程序110以及用户程序112。系统程序110具有i/o模块160来作为其功能的一部分,将i/o单元14、16与现场侧交换的数据(从现场获取的数据以及向现场输出的数据)跟全局变量表150相关联。
114.在plc100中,可进行变量编程,用户程序112使用与在全局变量表150中经定义的现场数据相关联的变量来执行各种处理。另外,变量被定义为用户程序112的实际变量。而且,被定义为实际变量的变量并不限于在全局变量表150中定义的变量(全局变量),也可为在内部参照的局部变量。
115.全局变量表150是将用户程序112中可利用的变量与现实的功能单元(例如i/o单元14、16)的端口号(地址)相关联的表,对于在某功能单元的某端口收集的值,定义任意的变量名的分配。而且,对于从某功能单元的某端口输出的值,定义任意的变量名的分配。
116.plc100所包括的用户程序112是可由处理器102来执行的格式的本地代码(native code)。用户程序112包含中间代码130与库140。在库140中,保存有用于使用户程序112的记述效率化的通用部件142。中间代码130是通过对利用高级语言所记述的用户程序进行连编(build)处理而获得。本地代码(用户程序112)既可由处理器102生成,而且,也可在与plc100独立地准备的开发环境下(例如支持装置200)生成。处理器102根据中间代码130,一边参照保存在库140中的各通用部件142,一边生成用户程序112。另外,图6所示的示例中,为了方便,用户程序112包含中间代码130与库140,处理器102根据中间代码130,一边参照保存在库140中的各通用部件142,一边生成用户程序112。另外,库140的一部分或全部也可被转换为中间代码130或本地代码。
117.<f.支持装置200的软件结构>
118.图7是表示支持装置200的软件结构例的示意图。图7中,与支持装置200的软件结构相关联地表示保存在存储部201中的信息的一例。
119.(f1.保存在支持装置200中的信息)
120.保存在存储部201中的信息包含作为程序源代码的用户程序400、中间代码130、库140、全局变量表150、调用命令列表273、对象物信息274、显示省略列表470、对应列表490以
及支持程序275。
121.用户程序400包含多个程序410。在程序410中,存在具有调用其他程序的调用命令460的程序。另外,通过调用命令460而调用的程序也可进而具有调用命令。
122.通过调用命令460来调用其他程序410的程序设计是由用户任意进行。而且,在将调用命令460编入程序410中的情况下,设计成,用户指定实际变量来调用作为调用目标的程序。
123.中间代码130以及库140是通过连编器223对用户程序400进行连编处理而生成。中间代码130以及库140作为用户程序112而安装于plc100。
124.对象物信息274被用于将用户程序400的内容显示于显示器214。具体而言,对象物信息274包含用于以视觉方式显示用户程序400的内容的各部件。
125.调用命令列表273是基于所制作的用户程序400而制作的列表。调用命令列表273的详细将参照图8而后述。
126.调用命令列表273被送往hmi300。而且,尽管在图7中未示出,但支持装置200基于用户程序400以及对象物信息274,针对每个程序410而生成程序510以作为将所述程序410的内容视觉化的图像信息,并作为用户程序500而发送至hmi300。hmi300基于所发送的用户程序500以及调用命令列表273而在显示器314上显示用户程序400的内容。
127.显示省略列表470是表示程序410中的不显示而省略其内容的程序410的信息。关于显示省略列表470的详细将后述。
128.对应列表490是对分别执行的程序410的关系性进行定义的信息。关于对应列表490的详细将后述。
129.(f2.用于提供开发支持环境的模块)
130.参照图7,在存储部201中,保存有支持程序275。通过cpu202执行支持程序275,从而实现图7所示的各种功能。具体而言,支持程序275提供操作受理部221、编辑器222、连编器223、登记部224、调用命令列表生成部225以及显示部226的功能。
131.操作受理部221受理来自操作部203的操作输入。操作受理部221典型的是输入接口。
132.编辑器222依据用户操作来实施用户程序400的编辑以及制作。编辑器222可进一步提供在plc100的运转中对所执行的控制程序的一部分进行改写(编辑)的在线编辑功能。
133.连编器223对用户程序400进行连编处理(包含分析、优化、编译等)而生成plc100可执行的格式的用户程序112。
134.登记部224基于由编辑器222所制作的用户程序400,生成对程序410的关系性进行定义的对应列表490。而且,登记部224也可基于操作受理部221所受理的用户操作来生成显示省略列表470。
135.调用命令列表生成部225根据操作受理部221所受理的用户操作,由用户程序400制作调用命令列表273。
136.显示部226将用户程序400的内容显示于显示器214。而且,显示部226根据操作受理部221所受理的用户操作,显示通过调用命令460而调用的程序410的内容。关于显示方法,将参照图9~图11而后述。用户操作例如可列举对表示调用命令460的对象物的特定操作、或者对显示菜单的操作等。
137.而且,尽管将参照图12~图16而后述,但显示部226在对预先规定的特定命令进行了用户操作的情况下,能够变更显示所述命令的内容的形态。
138.<g.hmi300的软件结构例>
139.图8是表示hmi300的软件结构例的示意图。图8中,与hmi300的软件结构相关联地表示保存在存储部301中的信息的一例。
140.保存在存储部301中的信息包含用户程序500、调用命令列表273以及显示程序375。
141.用户程序500以及调用命令列表273是从支持装置200发送的信息。用户程序500包含多个程序510。各程序510作为为了将所述程序的内容显示于显示器314而经视觉化的图像信息(包含文本信息)而保存在存储部301中。用户程序500例如是由支持装置200基于保存在支持装置200中的用户程序400而生成。而且,用户程序500也可在hmi300从支持装置200安装用户程序400时由hmi300所生成。
142.调用命令列表273包含下述信息,所述信息表示保存有具有调用命令460的作为调用源的程序的文件名、调用命令460出现的位置(调用命令位置信息)、保存有通过调用命令460而调用的程序的文件名、被用于对通过调用命令460而调用的程序进行定义的哑变量、以及由调用命令460所指定的实际变量。而且,调用命令列表273包含表示被调用的文件名与保存在所述文件中的程序的信息。
143.显示程序375是用于将用户程序500显示于显示器314的程序。通过cpu302执行显示程序375,从而实现图8所示的各种功能。具体而言,显示程序375提供操作受理部321以及显示部326的功能。
144.显示部326将用户程序500中所含的各程序510显示于显示器314。而且,显示部326根据操作受理部321所受理的用户操作,基于调用命令列表273来确定通过调用命令460而调用的程序510,并显示所述程序510。用户操作例如可列举对表示调用命令460的对象物的特定操作、或者对显示菜单的操作等。
145.<h.实际变量的反映显示>
146.本实施方式中,支持装置200可根据用户操作,将通过调用命令460而调用的程序的内容关联于作为调用源的程序的调用命令460而显示。另外,以下的图9~图16中,设为支持装置200显示程序410的内容来进行说明。
147.以下,也将通过调用命令460而调用的程序称作子程序440,具有调用命令460的程序称作主程序420。另外,子程序440也可具有调用命令460,此时,若从通过子程序440的调用命令460而调用的程序来看,则所述子程序440成为主程序。即,子程序440与主程序420是以相对性的关系而定义。
148.支持装置200的cpu202在根据用户操作来将子程序440的内容关联于主程序420的调用命令460而显示的情况下,将在调用命令460中经指定的实际变量480反映至子程序440中的哑变量442,而将子程序440的内容(源代码)显示于显示器214。
149.通过像这样将在调用命令460中经指定的实际变量480反映至子程序440中的哑变量442而显示子程序440的内容,从而主程序420的分析变得容易。具体而言,若仍以哑变量442的状态来显示子程序440的内容,则用户必须一边回忆在子程序440的调用时所指定的实际变量480一边进行分析。若仍以哑变量442来显示子程序440的内容,则尤其当以子程序
440进一步包含调用其他子程序440的调用命令460的结构来记述时,调用的层级变深,分析变得更加困难。
150.通过将在调用命令460中经指定的实际变量480反映至子程序440中的哑变量442而显示子程序440的内容,从而显示通过调用命令460而调用的子程序440具体利用何种实际变量来执行,其结果,包含主程序420的用户程序的分析变得容易。
151.参照图9~图11来说明实际变量480的反映显示。图9是表示反映显示的第一例的图。图10是表示反映显示的第一例的又一显示例的图。图11是表示反映显示的第二例的图。所谓反映显示,是指将在调用命令460中经指定的实际变量480反映至子程序440中的哑变量442而显示。
152.(h1.反映显示的第一例)
153.参照图9,画面sc1表示反映显示前的程序,画面sc2表示进行了反映显示后的程序。
154.图9所示的程序410-1是使用包含多个命令的过程化编程语言而定义,包含调用程序410-2的调用命令460-2与调用程序410-3的调用命令460-3。
155.调用命令460-2将“x”指定作为实际变量480-2来调用程序410-2。调用命令460-3将“x”指定作为实际变量480-3来调用程序410-3。
156.程序410-2是使用“a”作为哑变量442-2而定义,包含“a a”这一源代码。而且,程序410-2包含将“y”指定作为实际变量480-4来调用程序410-4的调用命令460-4。程序410-3是使用“b”作为哑变量442-3而定义,包含“b*b”这一源代码。程序410-4是使用“c”作为哑变量442-4而定义,包含“c*c”这一源代码。
157.即,在程序410-1与程序410-2之间,程序410-1相当于主程序420,程序410-2相当于子程序440。在程序410-1与程序410-3之间,程序410-1相当于主程序420,程序410-3相当于子程序440。在程序410-2与程序410-4之间,程序410-2相当于主程序420,程序410-4相当于子程序440。
158.关于程序410-1中所含的调用命令460-2以及调用命令460-3的各个,若显示各自调用的程序410-2、程序410-3的内容,则以将在调用命令460中经指定的实际变量480反映至子程序440中的哑变量442的形态,将子程序440的内容关联于主程序420中的调用命令460而显示。图9所示的示例中,在显示程序410-2的内容的情况下,也显示通过程序410-2中所含的调用命令460-4而调用的程序410-4的内容。
159.具体而言,将子程序440中的哑变量442置换为在调用命令460中经指定的实际变量480而显示子程序440。参照图9,程序410-2中的“a a”被转换为“x x”而显示。程序410-3中的“b*b”被转换为“x*x”而显示。而且,程序410-4中的“c*c”被转换为“y*y”而显示。
160.通过像这样将子程序440中的哑变量442置换为在调用命令460中经指定的实际变量480,从而用户无须在意哑变量442便能够进行包含主程序420的用户程序的分析。
161.而且,程序410-2、程序410-3、程序410-4的内容分别紧跟在调用命令460之后显示,作为包含调用命令460的程序的一部分而显示。例如,程序410-2紧跟在调用命令460-2之后显示,作为程序410-1的一部分而显示。程序410-3紧跟在调用命令460-3之后显示,作为程序410-1的一部分而显示。程序410-4紧跟在调用命令460-4之后显示,作为程序410-2的一部分而显示。另外,图9所示的示例中,程序410-2作为程序410-1的一部分而显示,因此
程序410-4作为程序410-1的一部分而显示。
162.通过这样将子程序440的内容紧跟在调用命令460之后作为包含调用命令460的程序的一部分而显示,从而可容易理解地显示程序的流程,其结果,使得包含主程序420的用户程序的分析变得容易。
163.另外,显示子程序440的内容的位置并不限于图9所示那样的、紧跟在调用命令460之后。参照图10,对显示子程序440的位置的变形例进行说明。图10的画面sc2'表示反映显示了图9的画面sc1之后的程序。
164.参照图10,显示子程序440的内容的位置也可与调用命令460并排地,显示于与具有调用命令460的程序的显示列不同的列。具体而言,在第一列l1显示程序410-1的内容,在第二列l2且与调用命令460-2并排地显示程序410-2的内容。同样地,程序410-3的内容是与调用命令460-3并排地显示于第二列l2。而且,程序410-4的内容是与程序410-2内的调用命令460-4并排地显示于第三列l3。
165.通过像这样将子程序440的内容与调用命令460并排地显示于与具有调用命令460的程序的显示列不同的列,从而可容易理解地表达调用的层级结构。其结果,包含主程序420的用户程序的分析变得容易。
166.另外,关于显示各程序410-2、410-3、410-4的内容的时机,也可为执行一个操作的时机。而且,也可仅关于受到选择的调用命令460来显示通过所述调用命令460而调用的程序。例如,在调用命令460-2受到选择的状况下受理了规定的操作时,也可仅显示程序410-2的内容,而不显示程序410-3以及程序410-4的内容。
167.而且,也可通过一个操作来仅显示通过当前显示的程序的调用命令而调用的程序。例如,在画面sc1所示的状况下受理了一个操作的情况下,也可显示程序410-2的内容以及程序410-3的内容,另一方面,不显示程序410-4的内容。
168.而且,也可如图9以及图10所示,通过一个操作来显示通过调用命令460而调用的所有程序。
169.(h2.反映显示的第二例)
170.在反映显示的第一例中,表示了用户程序400是使用包含多个命令的过程化编程语言而定义时的显示例。用户程序400例如也有时使用功能块图来记述,所述功能块图是使用表示一个功能块或一个功能的块表达来定义构成用户程序400的一个程序。
171.图11所示的反映显示的第二例是构成用户程序400的一个或多个程序分别利用块表达(功能块fb)来定义时的显示例。各功能块fb是将一个程序模块化者,可视为一个程序。图11中的画面sc3表示反映显示前的功能块(程序),画面sc4表示进行了反映显示后的功能块(程序)。
172.在对功能块fb进行定义时,也可调用其他功能块fb来执行。图11所示的示例中,功能块fb1包含调用功能块fb3的调用命令460-a。功能块fb1是通过两个哑变量442(输入变量“输入1”以及输入变量“输入2”)来定义,相对于输入变量“输入1”这一哑变量442,指定有“x1”这一实际变量480,相对于输入变量“输入2”这一哑变量442,指定有“x2”这一实际变量480。
173.而且,在调用命令460-a中,相对于功能块fb3的输入变量“输入1”这一哑变量442,关联有功能块fb1的输入变量“输入1”。
174.相对于功能块fb1的输入变量“输入1”,指定有“x1”这一实际变量480,因此在图11所示的示例中,也可以说,功能块fb1具有将“x1”指定为实际变量480来调用功能块fb3的调用命令460-a。
175.同样地,也可以说,功能块fb2具有将“y2”指定为实际变量480来调用功能块fb3的调用命令460-b。
176.功能块fb通常具有下述优点,即,无须在意对功能块fb进行定义的程序的详细,便可推进程序设计。但是,在对程序进行分析时,若功能块fb的内部仍被维持为黑盒(black box)化,则会使分析变得困难。
177.本实施方式中,支持装置200根据用户操作,将通过被黑盒化的功能块fb中所含的调用命令460而调用的功能块fb关联于功能块fb而显示。由此,能够显示被黑盒化的功能块的内容的一部分,因此使分析变得容易。
178.具体而言,在作为调用源的功能块的内部,编入作为调用目标的功能块而显示。图11所示的示例中,如画面sc4所示,在功能块fb1的内部,编入功能块fb3而显示。而且,在功能块fb2的内部,编入功能块fb3而显示。
179.如图11所示,在显示通过调用命令460而调用的功能块fb的情况下,对于经调用的功能块fb(功能块fb3),也可仍保持黑盒化。由此,也能有效发挥功能块fb的下述优点,即:既能使包含调用命令460的功能块fb的结构变得明确,又能无须在意程序的详细而推进程序设计。
180.而且,在作为调用源的功能块的内部编入作为调用目标的功能块而显示的情况下,将经指定的实际变量480反映至作为调用目标的功能块的哑变量442。具体而言,以将与作为调用源的功能块的实际变量480对应的端子482和与作为调用目标的功能块的哑变量442对应的端子444予以结合的形态,来显示作为调用目标的功能块。
181.图11所示的示例中,如画面sc4所示,以将与功能块fb1的“x1”这一实际变量480对应的端子482和与功能块fb3的“输入1”这一哑变量442对应的端子444予以结合的形态来进行显示。而且,以将与功能块fb2的“y2”这一实际变量480对应的端子482和与功能块fb3的“输入1”这一哑变量442对应的端子444予以结合的形态进行显示。
182.通过像这样以将与经指定的实际变量对应的端子和与哑变量442对应的端子444予以结合的形态进行显示,以作为在调用命令中经指定的实际变量的反映,从而容易以视觉方式来理解对经调用的功能块fb3输入的实际变量,使得功能块的分析变得容易。
183.<i.其他显示例>
184.参照图12~图16来说明显示包含特定命令的程序的方法。图12~图16各自所示的各程序的显示方法可与图9~图11各自所示的反映显示任意组合。
185.(i1.包含递归性的调用的用户程序的显示例)
186.支持装置200在显示包含递归性的调用的用户程序400的情况下,也可将被递归地调用的子程序的内容显示至规定次数为止。即,支持装置200在递归地调用子程序的情况下,也可使所述子程序的内容的显示不超过规定次数。
187.图12是表示包含递归性的调用的用户程序的显示例的图。另外,图12中,省略了哑变量442以及实际变量480的显示。图12所示的程序410-5包含调用程序410-6的调用命令460-6。程序410-6具有调用程序410-7的调用命令460-7。程序410-7具有调用程序410-5的
调用命令460-5。调用命令460-5为递归性的调用。
188.即,程序410-5是包含递归地调用程序410-6及程序410-7的命令的程序。此时,在想要显示通过调用命令460而调用的子程序440的内容时,若不设置“将被递归地调用的子程序的内容显示至规定次数为止”这一限制,则如图12中的画面sc6所示的显示例那样,将会反复显示被递归地调用的子程序(程序410-6、程序410-7)的内容。其结果,用户将难以掌握程序410-5的内容。
189.通过设置“将被递归地调用的子程序的内容显示至规定次数为止”这一限制,从而如图12中的画面sc6所示的显示例那样,防止子程序的内容被反复显示,其结果,能够以容易掌握的形态来显示程序410-5的内容。另外,图12所示的示例中,作为规定次数,设定了一次。显示子程序的内容的次数只要预先规定即可,并不限于一次。例如也可为两次以上。另外,为了显示子程序的内容且容易掌握程序的内容,显示子程序的内容的次数优选为一次。
190.而且,参照图12中的画面sc6,支持装置200也可紧跟在调用命令460-5之后显示表示被递归地调用的“递归”这一文本图像450。通过紧跟在调用命令460-5之后显示表示被递归地调用的“递归”这一文本图像450,从而容易理解调用命令460-5是递归地调用的命令。另外,表示被递归地调用的图像并不限于图12所例示的文本图像450。
191.(i2.不显示规定的子程序的内容的示例)
192.支持装置200也可不显示预先指定的程序的内容。支持装置200对于作为显示省略列表470而登记的程序,也可不显示其内容。
193.显示省略列表470例如被保存在支持装置200的存储部201中。显示省略列表470既可由用户制作,而且,也可由提供支持程序的供应商来预先制作。而且,也可由用户在由供应商预先制作的显示省略列表470中进一步追加程序。
194.图13是表示包含登记在显示省略列表470中的程序的用户程序的显示例的图。另外,图13中,省略了哑变量442以及实际变量480的显示。
195.图13所示的程序410-8包含调用程序410-9的调用命令460-9。程序410-9具有调用程序410-10的调用命令460-10。在显示省略列表470中,登记有程序410-10。
196.如图13的画面sc8所示的显示例那样,支持装置200在对于程序410-8以反映出通过所含的调用命令460而调用的子程序440的内容的形态予以表示的情况下,对于登记在显示省略列表470中的程序410-10,不显示而省略其内容。
197.若对于程序410-8显示通过所含的调用命令460而调用的所有子程序440的内容,则列数会变得庞大,从而有可能导致结构变得复杂,反而使分析变得困难。
198.如图13所示,对于登记在显示省略列表470中的程序的内容予以省略,由此,能够仅显示所需的程序的内容,使分析变得容易。
199.(i3.分支程序的显示例)
200.支持装置200也可具有下述功能:在对于根据成立条件而执行不同处理的分支程序来显示其内容的情况下,根据用户操作,从串列显示各个不同处理的形态切换为并列显示的形态。
201.图14是表示分支程序的显示例的图。图14中的画面sc9是串列显示各个不同处理的显示例。图14中的画面sc10是并列显示各个不同处理的显示例。另外,图14中,省略了哑变量442以及实际变量480的显示。
202.图14所示的程序410-11包含步骤1这一处理、步骤2这一处理以及步骤3这一处理。对于步骤1~步骤3的各处理,分别规定了不同的执行条件。具体而言,步骤1是在条件1成立时所执行的处理。步骤2是在条件1不成立而条件2成立时所执行的处理。步骤3是在条件1以及条件2均不成立时所执行的处理。
203.在显示有画面sc9的状态下,当受理了用户所进行的预先规定的操作时,支持装置200显示画面sc10。另外,也可将画面sc10重叠显示于画面sc9,而且,还可从画面sc9切换为画面sc10。
204.参照画面sc9,程序410-11串列显示成立条件互不相同的多个处理步骤1~步骤3。参照画面sc10,程序410-11相互并排地显示成立条件互不相同的多个处理步骤1~步骤3。
205.这样,在对成为成立的条件互不相同而处理分支的逻辑结构的程序进行显示时,若相互并排地显示处理步骤1~步骤3的各个,则容易理解处理如何分支,从而使得程序的分析变得容易。
206.图14所示的示例中,表示了包含if文的程序,但只要是产生分支的程序,则并不限于包含if文的程序。例如,产生分支的程序可列举包含“switch~case”的程序、包含“try~catch”的程序等。
207.(i4.将实际变量置换为地址的程序的显示例)
208.支持装置200也可基于全局变量表150,将被指定为实际变量480的变量置换为与所述变量对应的功能单元(例如i/o单元14、16)的端口号(地址)而显示。
209.图15是表示将实际变量置换为地址的程序的显示例的图。画面sc11表示将实际变量置换为地址之前的程序,画面sc12表示将实际变量置换为地址之后的程序。
210.图15所示的程序410-12包含以实际变量480来定义的“y=x1;”这一源代码与调用程序410-13的调用命令460-13。调用命令460-13将“x1”及“x2”指定为实际变量来调用程序410-13。
211.程序410-13是使用“a”及“b”作为哑变量442而定义,包含“a&b”这一源代码。
212.在全局变量表150中,设备1的位0这一地址与变量“x1”相关联,设备1的位1这一地址与变量“x2”相关联,设备2的位1这一地址与变量“y”相关联。
213.在对于程序410-12中所含的调用命令460-13而显示所调用的程序410-13的内容时,也可置换为经指定的实际变量480,进而置换为与所述实际变量480对应的地址而显示。
214.具体而言,参照图15,程序410-13中的“a&b”经由“x1&x2”被置换为“设备1:位0&设备1:位1”而显示。而且,程序410-12中的“y=x1;”被置换为“设备2:位1=设备0:位0;”。
215.通过像这样将实际变量480置换为实际的设备(i/o单元14、16等)的地址而显示,从而能够容易理解地表示各实际变量480与哪个地址相关联。例如,在plc100中,也能利用直接将地址指定为实际变量480的程序,但在指定了地址的情况下,则会丧失指定地址而制作的程序的再利用性,因此多利用变量编程。但是,在对程序进行分析时,若已确定了各变量具体是与哪个地址对应的输入/输出值,则分析将变得容易。如图15所示,通过将实际变量480置换为地址来显示,从而一眼便能够掌握作为分析对象的程序利用了哪个设备的输入/输出值,从而能够使得程序的分析变得容易。
216.(i5.与其他程序进行数据交换的程序的显示例)
217.plc100可经由外部网络控制器126来与其他的plc100、hmi300等其他装置进行数
据交换。而且,plc100也可在与不同的任务关联的各个程序间进行数据的收发。
218.即,用户可制作在各自执行的程序间进行数据收发的程序。另外,各自执行的各程序既可为由一个plc100所执行的程序,而且也可为由互不相同的装置所执行的程序。
219.支持装置200对于构成为在各自执行的程序之间进行数据收发的程序,也可与作为数据收发目标的程序相关联地予以显示。
220.图16是表示构成为在各自执行的程序之间进行数据收发的程序的显示例的图。例如,程序410-14与程序410-15彼此各自执行。而且,程序410-14具有对程序410-15发送数据的发送命令462。程序410-15具有从程序410-14接收数据的接收命令464。
221.支持装置200在存储部201中保存将发送命令462与接收命令464相对应的对应列表490。
222.支持装置200在显示程序410-14时,可基于对应列表490来对应地显示程序410-14与程序410-15。
223.具体而言,如画面sc13所示,与发送命令462相关联地显示接收命令464,并且将根据接收命令464而接收的变量反映至接收命令464来显示。此时,将包含接收命令464的程序410-15的内容显示于与显示有包含发送命令462的程序410-14的内容的列不同的列。
224.这样,对于构成为在各自执行的程序之间进行数据收发的程序,将包含发送数据的命令的程序与包含接收数据的命令的程序相关联地予以显示,由此,即便是不同的程序,也能表示各自的对应关系,从而使得程序的分析变得容易。
225.<j.hmi300所进行的显示>
226.所述的实施方式中,表示了图9~图16所示的程序的显示是显示于支持装置200的显示器214的示例。另外,通过hmi300的cpu302一边参照用户程序500及调用命令列表273一边执行显示程序375,从而可执行图9~图12以及图14所示的显示。
227.另外,在hmi300可参照全局变量表150的情况下,也可在显示器314上进行图15所示的显示。而且,在hmi300可参照显示省略列表470的情况下,也可在显示器314上进行图13所示的显示。而且,在hmi300可参照对应列表490的情况下,也可在显示器314上进行图16所示的显示。
228.本实施方式中,hmi300具有调用命令列表273,因此在显示子程序440的内容的情况下,可容易地确定被调用的子程序440。其结果,不需要在对调用命令460的内容进行解释后,对通过所述调用命令460而调用的子程序440的保存场所进行检索的处理,因此能够简化用于显示子程序440的内容的处理。而且,即便将实际变量反映至哑变量,也只要依照调用命令列表273即可,因此不需要在对调用命令460的内容进行解释后确定与哑变量对应的实际变量的处理,因此能够简化处理。
229.另外,表示了hmi300利用用户程序500以及调用命令列表273来显示程序的示例,但也可与支持装置200同样地,利用用户程序400来显示程序。
230.§
3.附注
231.如上所述,所述的实施方式包含如下所述的公开。
232.<结构1>
233.一种信息处理装置(200x、200、300),支持由对控制对象进行控制的控制装置所执行的用户程序(400)的开发,所述信息处理装置包括:
234.受理部件(221x、221、321),受理用户操作;
235.保持部件(201x、201、301),保持由用户所制作或更新的用户程序;以及
236.显示部件(226x、226、326),显示所述保持部件所保持的用户程序,
237.所述用户程序包含:
238.第一程序(440),使用哑变量(442)来定义;以及
239.第二程序(460),具有用于指定实际变量(480)来调用所述第一程序的调用命令(460),
240.所述显示部件在根据用户操作而将所述第一程序的内容关联于所述第二程序中的所述调用命令而显示的情况下,将在所述调用命令中经指定的实际变量反映至所述第一程序中的哑变量而显示(sc2、sc2'、sc4)。
241.<结构2>
242.根据结构1所述的信息处理装置,其中
243.所述用户程序是使用包含一个或多个命令的过程化编程语言而定义,
244.所述显示部件将所述第一程序中的哑变量置换为在所述调用命令中经指定的实际变量,以作为在所述调用命令中经指定的实际变量的反映(sc2、sc2')。
245.<结构3>
246.根据结构2所述的信息处理装置,其中
247.所述显示部件紧跟在所述第二程序中的所述调用命令之后显示所述第一程序的内容,以作为所述第二程序的一部分(sc2)。
248.<结构4>
249.根据结构2所述的信息处理装置,其中
250.所述显示部件与所述第二程序中的所述调用命令并排地,将所述第一程序的内容显示于与所述第二程序的显示列不同的列(sc2')。
251.<结构5>
252.根据结构1至结构4中任一结构所述的信息处理装置,其中
253.所述第一程序具有递归地调用所述第一程序的调用命令(460-5),
254.所述显示部件在将所述第一程序的内容关联于所述第二程序中的所述调用命令而显示的情况下,对于通过所述第一程序中的调用命令而调用的所述第一程序的内容,显示至规定次数为止(sc6)。
255.<结构6>
256.根据结构1至结构5中任一结构所述的信息处理装置,其中
257.所述第一程序具有一种或多种调用命令,
258.所述显示部件对于所述一种或多种调用命令中的预先规定的特定命令(410-10),不将通过调用命令而调用的程序的内容作为关联于所述调用命令来显示的对象(sc8)。
259.<结构7>
260.根据结构1所述的信息处理装置,其中
261.所述第一程序以及所述第二程序是使用块表达而定义,所述块表达包含表示功能块或功能的至少一个输入变量以及至少一个输出变量,
262.所述显示部件将表示所述第一程序的第一块表达(fb3)编入至表示所述第二程序
中所含的所述调用命令的第二块表达(fb1、fb2)的内部,并且以将与所述第二块表达的所述实际变量对应的端子(482)和与所述第一块表达的所述哑变量对应的端子(444)加以结合的形态予以显示,以作为在所述调用命令(460-a)中经指定的实际变量的反映。
263.<结构8>
264.根据结构1至结构7中任一结构所述的信息处理装置,其中
265.所述用户程序包含根据成立条件来执行不同的处理的分支程序(410-11),
266.所述显示部件对于所述分支程序,根据用户操作来并列显示所述不同的处理各自的内容(sc10)。
267.<结构9>
268.根据结构1至结构8中任一结构所述的信息处理装置,其中
269.所述控制装置包含一个或多个输入端口,
270.所述显示部件基于将所述实际变量与分别表示所述一个或多个输入端口的地址相关联的变量映射(150),对于所述用户程序,将所述实际变量置换为所述地址而予以显示(sc12)。
271.<结构10>
272.根据结构1至结构9中任一结构所述的信息处理装置,其中
273.所述用户程序包含用于与其他程序(410-14)执行数据交换的第三程序(410-15),
274.所述显示部件将所述第三程序与所述其他程序相关联地予以显示(sc13)。
275.<结构11>
276.一种支持程序(275、375),支持由对控制对象进行控制的控制装置所执行的用户程序(400)的开发,其中
277.所述用户程序包含:
278.第一程序(440),使用哑变量(442)来定义;以及
279.第二程序(420),具有用于指定实际变量(480)来调用所述第一程序的调用命令(460),
280.所述支持程序使计算机执行:
281.保持步骤(201、301),保持由用户所制作或更新的用户程序;
282.受理步骤(221、321),受理用户操作;以及
283.显示步骤(226、326、sc2、sc2'、sc4),根据所受理的操作,对于所保持的所述用户程序,将所述第一程序的内容关联于所述第二程序中的所述调用命令而显示,并且将在所述调用命令中经指定的实际变量反映至所述第一程序中的哑变量而显示。
284.<结构12>
285.一种支持系统(1),包括:信息处理装置(200),支持由对控制对象进行控制的控制装置所执行的用户程序的开发;以及显示装置(300),所述支持系统包括:
286.受理部件(221、321),受理用户操作;
287.保持部件(201、301),保持由用户所制作或更新的用户程序;以及
288.显示部件(226、326),显示所述保持部件所保持的用户程序,
289.所述用户程序包含:
290.第一程序(440),使用哑变量(442)来定义;以及
291.第二程序(420),具有用于指定实际变量(480)来调用所述第一程序的调用命令(460),
292.所述显示部件在根据用户操作而将所述第一程序的内容关联于所述第二程序中的所述调用命令而显示的情况下,将在所述调用命令中经指定的实际变量反映至所述第一程序中的哑变量而显示(sc2、sc2'、sc4)。
293.应认为,此次公开的实施方式在所有方面仅为例示,并非限制者。本发明的范围是由权利要求而非所述说明所示,且意图包含与权利要求均等的含义及范围内的所有变更。而且,实施方式及各变形例中所说明的发明只要可能,则既可单独实施也可组合实施。
294.符号的说明
295.1:控制系统
296.10:cpu单元
297.11:系统总线
298.12:电源单元
299.14、16:i/o单元
300.100、100x:plc
301.102:处理器
302.104:芯片组
303.106:主存储器
304.108:快闪存储器
305.110:系统程序
306.112、400、400x、500:用户程序
307.116、218、318:usb接口
308.118:存储卡接口
309.120:存储卡
310.122:内部总线控制器
311.124:现场总线控制器
312.126、316:外部网络控制器
313.130:中间代码
314.140:库
315.142:通用部件
316.150:全局变量表
317.160:i/o模块
318.200:支持装置
319.200x:信息处理装置
320.201、301:存储部
321.201x:保持部
322.202、302:cpu
323.203:操作部
324.204、304:rom
325.206、306:ram
326.208、308:hdd
327.210:键盘
328.211:鼠标
329.214、314:显示器
330.216:光学记录介质读取装置
331.220、320:总线
332.221、221x、321:操作受理部
333.222:编辑器
334.223:连编器
335.224:登记部
336.225:调用命令列表生成部
337.226、226x、326:显示部
338.250:记录介质
339.273:调用命令列表
340.274:对象物信息
341.275:支持程序
342.303:输入部
343.305:触控面板
344.375:显示程序
345.410、510:程序
346.420、420x:主程序
347.440、440x:子程序
348.442:哑变量
349.444、482:端子
350.460、460x:调用命令
351.450:文本图像
352.462:发送命令
353.464:接收命令
354.470:显示省略列表
355.480:实际变量
356.490:对应列表
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献