CN112272802A - 支持装置以及支持程序 - Google Patents
支持装置以及支持程序 Download PDFInfo
- Publication number
- CN112272802A CN112272802A CN201980039097.8A CN201980039097A CN112272802A CN 112272802 A CN112272802 A CN 112272802A CN 201980039097 A CN201980039097 A CN 201980039097A CN 112272802 A CN112272802 A CN 112272802A
- Authority
- CN
- China
- Prior art keywords
- program
- hmi
- transfer
- transmission
- control program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012546 transfer Methods 0.000 claims abstract description 221
- 230000005540 biological transmission Effects 0.000 claims abstract description 98
- 238000012545 processing Methods 0.000 claims abstract description 70
- 238000000034 method Methods 0.000 claims abstract description 33
- 230000008569 process Effects 0.000 claims abstract description 30
- 238000011161 development Methods 0.000 claims abstract description 29
- 230000004913 activation Effects 0.000 claims description 5
- 230000003213 activating effect Effects 0.000 claims 1
- 230000008859 change Effects 0.000 description 27
- 238000010586 diagram Methods 0.000 description 22
- 230000004044 response Effects 0.000 description 20
- 230000006870 function Effects 0.000 description 16
- 238000007726 management method Methods 0.000 description 12
- 238000004519 manufacturing process Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 6
- 238000012937 correction Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
- G05B19/41835—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by programme execution
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
- G05B19/41865—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0208—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the configuration of the monitoring system
- G05B23/0216—Human interface functionality, e.g. monitoring system providing help to the user in the selection of tests or in its configuration
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0259—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
- G05B23/0267—Fault communication, e.g. human machine interface [HMI]
- G05B23/0272—Presentation of monitored results, e.g. selection of status reports to be displayed; Filtering information to the user
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/47—Retargetable compilers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Programmable Controllers (AREA)
- Stored Programmes (AREA)
Abstract
简化进行了编辑的程序的传输。支援由设于FA的对象装置所执行的程序的开发的支持装置(200)实施用于将程序传输至对象装置的传输处理。程序包含用于控制机器的控制程序(111)与对控制程序所用的变量进行处理的HMI程序(112)。当控制程序或HMI程序受到编辑时,支持装置将控制程序及HMI程序分别同时传输至控制装置(100)与HMI装置(4)。
Description
技术领域
本公开涉及一种支援工厂自动化(Factory Automation,FA)的程序开发的支持装置以及开发支援程序。
背景技术
在各种生产及制造现场,使用可编程逻辑控制器(Programmable LogicController,PLC)等控制装置的FA技术正广泛普及。此种控制装置为一种计算机(computer),执行根据制造装置或制造设备等FA机器而设计成对它们进行控制的控制程序。而且,适用于FA领域的人机接口(Human Machine Interface,HMI)装置通过执行HMI程序,从而将从PLC等获得的与FA机器相关的信息显示在画面上。而且,HMI程序也能够由生产管理者等操作员(operator)对HMI的画面进行触摸等操作,从而经由HMI的画面来设定控制程序所参照的数据。
这样,HMI程序与控制程序彼此关联,因此在关于控制程序进行变更以追加新程序或变量的情况下,为了变更画面结构以显示追加变量的值等,多要变更HMI程序。在像这样变更了程序的情况下,必须将变更后的HMI程序及变更后的控制程序分别传输至HMI装置及PLC。
一般而言,即使将HMI程序与控制程序的开发环境加以综合,但由于传输目标(HMI装置与PLC)不同,因而变更(更新)后的HMI程序及变更(更新)后的控制程序的传输仍会耗费工夫与时间。因此,存在下述期望,即,想要简化此种传输以节约工夫与时间。
专利文献1(日本专利特开平10-105147号公报)公开了对可连接PLC的程控显示装置的、操作画面数据的传输。具体而言,通过对确定各单位画面文件的数据与确定更新时期的数据进行比较,从而仅对同一项目(project)且实施了变更处理的数据文件选择性地进行数据传输。
现有技术文献
专利文献
专利文献1:日本专利特开平10-105147号公报
发明内容
发明所要解决的问题
专利文献1公开了对实施了变更处理的单位画面文件的数据文件进行传输的结构,但并未公开与画面数据文件的传输一起传输在PLC侧执行的程序。
本公开的一个目的在于提供一种程序开发的支援环境,在对HMI程序或控制程序进行了编辑的情况下,简化HMI程序或控制程序的传输。
解决问题的技术手段
本公开的一例的支持装置支援由设于FA(工厂自动化)的对象装置所执行的程序的开发,其中,对象装置包含对FA的机器进行控制的控制装置与HMI(人机接口)装置,支持装置包括:编辑部件,对程序进行编辑;以及传输管理部件,实施传输处理,所述传输处理用于将经编辑的程序传输至对象装置。
程序包含用于控制机器的控制程序与对控制程序所使用的变量进行处理的HMI程序,传输管理部件包含实施所述传输处理的部件,所述部件在通过编辑部件对控制程序或HMI程序进行了编辑的情况下,将控制程序及HMI程序分别同时传输至控制装置与HMI装置。
根据所述公开,在对HMI程序或控制程序进行了编辑的情况下,两程序被分别同时传输至对象装置。因此,在进行对HMI程序或控制程序作出修正等编辑的情况下,程序将被自动地传输至对象装置,从而能够防止程序向对象装置的传输遗漏。
所述公开中,还包括:判定部件,将经编辑部件编辑的控制程序或HMI程序的各程序与由对象装置执行中的所述程序进行比较,根据比较的结果来判定经编辑的各程序是否从执行中的所述程序进行了变更,传输管理部件还包含实施所述传输处理的部件,所述部件对经编辑部件编辑的控制程序或HMI程序的各程序中的被判定为进行了变更的其中一者或两者进行传输。
根据所述公开,通过对经编辑的程序与由对象装置执行中的所述程序进行比较,能够决定应设为传输对象的程序。
所述公开中,还包括:通知部件,使基于判定部件作出的判定结果的信息显示于显示器;以及操作受理部件,受理对支持装置的用户操作,传输管理部件包含实施所述传输处理的部件,所述部件对经编辑部件编辑的控制程序或HMI程序的各程序中的所受理的用户操作内容所表示的其中一者或两者进行传输。
根据所述公开,用户能够参照变更的判定结果来选择性地指定应传输的程序。
所述公开中,在通过传输管理部件来实施控制程序或HMI程序的传输处理时,对于对象装置发送用于使传输后的各程序启动的启动指示。
根据所述公开,能够与程序向对象装置的传输一起,对各对象装置给予用于使传输后的所述程序启动的指示。
所述公开中,启动指示包含使传输后的各程序启动的时间的信息。
根据所述公开,能够使用启动指示来对于对象装置指示使传输后的程序启动的时间。
所述公开中,在从对象装置收到程序的传输已完成的意旨的通知时,将启动指示发送至对象装置。
根据所述公开,在经确认对于对象装置完成了程序的传输时,能够对所述对象装置给予启动指示。
所述公开中,HMI程序包含UI(用户接口)组件,所述UI组件是构成所述HMI程序的程序且对变量进行处理,HMI程序的编辑包含UI组件的编辑。
根据所述公开,在对UI组件进行了编辑的情况下,能够将UI组件作为对象来实施所述传输管理部件所进行的传输处理。
所述公开中,控制程序包含变量、及表示使用变量的处理内容的程序代码,在比较的结果表示变量未被变更而程序代码已被变更的情况下,使预先规定的通知输出至HMI装置的显示器。
根据所述公开,在控制程序的程序代码经变更的情况下,HMI程序对变量的处理结果有时会发生变化,能够将此意旨的通知输出给用户。
本公开的一例的支持程序支援由设于FA(工厂自动化)的对象装置所执行的程序的开发,其中,对象装置包含对设于FA的机器进行控制的控制装置与HMI(人机接口)装置,支持程序使计算机执行下述步骤:对程序进行编辑;以及实施用于将经编辑的程序传输至对象装置的传输处理,受到编辑的程序包含用于控制机器的控制程序与对控制程序所用的变量进行处理的HMI程序,实施传输处理的步骤包含下述步骤,即,在对控制程序或HMI程序进行了编辑的情况下,实施传输处理,以将控制程序及HMI程序分别同时传输至控制装置与HMI装置。
根据所述公开,通过计算机来执行支持程序,从而在对HMI程序或控制程序进行了编辑的情况下,两程序被分别同时传输至对象装置。因此,在进行对HMI程序或控制程序作出修正等编辑的情况下,程序将被自动地传输至对象装置,从而能够防止程序向对象装置的传输遗漏。
发明的效果
根据本公开,能够提供一种程序开发的支援环境,在对HMI程序或控制程序进行了编辑的情况下,简化HMI程序或控制程序的传输。
附图说明
图1是示意性地表示本发明的实施方式的系统的结构的图。
图2是示意性地表示本发明的实施方式的PLC 100的硬件结构的一例的图。
图3是示意性地表示本发明的实施方式的支持装置200的硬件结构的一例的图。
图4是示意性地表示本发明的实施方式的HMI装置4的硬件结构的一例的图。
图5是示意性地表示本发明的实施方式的HMI程序112的利用形态的图。
图6是概略地表示本发明的实施方式的支持装置200中的程序的开发环境42的一例的图。
图7是示意性地表示本发明的实施方式的传输管理器231所进行的传输处理的一例的图。
图8是示意性地表示本发明的实施方式的传输管理器231所参照的传输次序表234的一例的图。
图9是示意性地表示本发明的实施方式的开发环境42的另一结构例的图。
图10是示意性地表示本发明的实施方式的变量校验器(checker)237所进行的处理的一例的图。
图11是表示本发明的实施方式的依据传输次序表234的传输处理的一例的流程图。
图12是表示本发明的实施方式的基于用户操作的传输处理的一例的流程图。
图13是表示本发明的实施方式的基于变量的变更的传输处理的一例的流程图。
图14是示意性地说明本发明的实施方式的启动处理的一例的图。
具体实施方式
一边参照附图,一边详细说明本发明的实施方式。另外,对于图中的相同或相当的部分,标注相同的符号并不再重复其说明。
<A.适用例>
首先,参照图1来说明适用本发明的场景的一例。图1是示意性地表示本发明的实施方式的系统结构的图。参照图1,FA的系统1对与多个机器300进行通信的一个或多个PLC(可编程控制器)100、一个或多个HMI装置4及支持装置200进行网络连接。
PLC 100为“控制装置”的一实施例。PLC 100是一种计算机,执行根据制造装置或制造设备等各机器300而设计的用于对控制对象机器进行控制的控制程序111等用户程序。
控制程序111对应于变量程序,典型的是可包含序列程序。序列程序包含所谓的IEC程序,所述IEC程序例如包含依据由国际电工委员会(InternationalElectrotechnical Commission,IEC)所规定的国际标准IEC6 1131-3而记述的一个或多个命令。在序列程序中,可含有包含序列命令及/或运动命令的各种命令。另外,作为序列程序,并不限于依据国际标准IEC61131-3而记述的命令,也可包含PLC的制造商或厂商等独立规定的命令。本实施方式中,控制程序111有时称作IEC程序。
而且,HMI装置4也是一种计算机,执行作为用户程序的HMI程序112。此种控制程序111及HMI程序112是通过在提供程序开发环境的支持装置200中执行支持程序700而开发。
支持装置200例如为通用的计算机,提供综合开发系统1的各种程序的环境,并且将所开发的各种程序传输至HMI装置4及PLC 100。机器300对成为控制对象的未图示的FA中所设的现场机器进行网络连接。控制对象例如可包含传感器、致动器等。
支持装置200依据对支持装置200的用户操作内容所示的指示,来对控制程序111或者对控制程序111所用的变量进行处理的HMI程序112进行编辑。支持装置200在控制程序111或HMI程序112经编辑的情况下,实施传输处理,以将控制程序111及HMI程序112分别同时传输至PLC 100与HMI装置4。
这样,在支持装置200中,综合有HMI程序112与控制程序111的开发环境。作为本实施方式的背景,通过执行HMI程序112,对控制程序111所用的变量进行处理。这样,两程序相互关联。作为具体例,存在下述案例(case):在程序的开发环境中,例如在对使用HMI程序112的UI组件501的画面结构进行了更新的情况下,PLC侧也追加与画面对应的新程序及变量。这样,由于HMI程序112与控制程序111彼此关联,因此存在下述期望,即,在对HMI程序112或控制程序111进行了编辑的情况下,想要将HMI程序112及控制程序111这两程序分别传输至HMI装置4及PLC 100。在支持装置200中,在对程序进行了编辑的情况下,通过同时进行HMI程序112与控制程序111的传输来响应所述期望。由此,不需要将对象装置(HMI装置4或PLC 100)重新连接于支持装置200(或者用户在开发环境上重新选择)来实施传输处理,能够节省传输所耗费的工夫与时间。
在如上所述的传输处理时,将经编辑的控制程序111或HMI程序112的各程序与由对象装置正执行的所述程序进行比较,根据比较的结果,来实施判定经编辑的各程序是否从正执行的所述程序进行了变更的比较/判定。在传输处理中,实施对经编辑的控制程序111或HMI程序112的各程序中的、通过比较/判定而判定为已被变更的其中一个或两个程序进行传输的处理。由此,能够仅将通过编辑而从由对象装置执行中的程序进行了某些变更的程序作为传输处理的对象。
如上所述的比较/判定中的程序彼此的比较基准,例如包含文件名、制作(编辑)日期时间、程序代码(例如目标代码(object code))的尺寸以及根据程序代码而算出的哈希值(Hash value)等,作为比较的基准,能够使用这些基准中的一个或多个的组合。
系统1中,支持装置200与PLC 100之间,例如采用遵照通用串行总线(UniversalSerial Bus,USB)的传输路。PLC 100与机器300的传输路优选采用例如依据时效性网络(Time-sensitive networking,TSN)规格而保证数据到达时间的总线或网络。例如可采用作为机器控制用网络的一例的EtherCAT(注册商标)。
在支持装置200中开发的用户程序从支持装置200被传输至PLC 100或HMI装置4而由PLC 100或HMI装置4的处理器予以执行。
控制程序111所进行的使用变量的控制运算包含:机器300从现场机器收集的状态值等数据或所生成的数据的处理、生成针对机器300的控制指令等数据的处理(运算处理)、将所生成的输出数据发送至对象机器300的处理(输出处理)等。
由HMI程序112所实施的HMI处理包含控制程序111所使用的变量的值的处理。此种变量的值的处理例如包含:收集被用于控制运算的变量所表示的值、利用画面来输出收集信息、以及经由画面等来受理用户操作等处理。所收集的变量的值包含控制对象的状态值(例如通过传感器的检测所得出的输出值,例如马达的转速、旋转方向、旋转角度等)等。而且,用户操作例如包含用于将对各种机器的控制指令、用于控制的设定值等设定为变量的操作。
以下,作为本发明的更具体的应用例,对通过本实施方式的支持装置200执行支持程序700而提供的程序的开发环境进行详细说明。
<B.PLC 100的硬件结构例>
图2是示意性地表示本发明的实施方式的PLC 100的硬件结构的一例的图。参照图2,PLC100包含中央处理器(Central Processing Unit,CPU)或微处理器(MicroProcessing Unit,MPU)等处理器102、芯片组(chip set)104、主存储器106、快闪存储器(flash memory)108、外部网络控制器116、存储卡接口118、内部总线控制器122以及现场总线控制器124。
在快闪存储器108中,保存有系统程序110及用户程序。系统程序110包含用于提供PLC100的基本功能例如数据的输入/输出处理或执行时机控制等的命令代码。
用户程序包含控制程序111与保存在控制程序111中调用的函数等的程序库。
处理器102读出保存在快闪存储器108中的系统程序110及用户程序,并在主存储器106中展开而执行,由此来实现对机器300或现场机器等控制对象的控制处理。
芯片组104通过控制各组件,从而实现作为PLC 100整体的处理。
内部总线控制器122是在PLC 100与通过内部总线而连结的I/O单元14之间交换数据的接口。现场总线控制器124是在PLC 100与通过未图示的现场总线而连结的I/O单元16之间交换数据的接口。内部总线控制器122及现场总线控制器124获取向对应的I/O单元14及16分别输入的状态值,并且将处理器102中的运算结果从对应的I/O单元14及16分别输出作为指令值。
外部网络控制器116对通过各种有线/无线网络的数据交换进行控制。存储卡接口118是可装卸存储卡120地构成,能够对存储卡120写入数据且从存储卡120读出数据。PLC100经由外部网络控制器116或存储卡接口118来与支持装置200交换数据。而且,PLC 100经由外部网络控制器116来与HMI装置4交换数据。
也可将通过PLC 100执行程序来提供的功能的一部分或全部作为专用的硬件电路而安装。
<C.支持装置200的硬件结构例>
接下来,对支持装置200的硬件结构例进行说明。图3是示意性地表示本发明的实施方式的支持装置200的硬件结构的一例的图。参照图3,支持装置200既可为固定型,或者也可在配置PLC 100的制造现场以便携性优异的笔记型个人计算机的形态而提供。
支持装置200包含:CPU 202,执行包含操作系统(Operating System,OS)的各种程序;只读存储器(Read Only Memory,ROM)204,保存基本输入输出系统(Basic Input/Output System,BIOS)或各种数据;随机存取存储器(Random Access Memory,RAM)206,作为提供用于保存CPU 202中的程序执行所需的数据的作业区域的存储器;以及硬盘(HardDisk Drive,HDD)208,非易失地保存包含由CPU 202所执行的支持程序700等的各种程序。通过执行支持程序700,从而实现支持装置200中的用户程序的程序开发环境,并且提供支援用户程序开发的功能。
支持装置200还包含:包含键盘210及鼠标212的输入部211,受理用户对支持装置200的操作;以及显示器214,用于将信息提示给用户。支持装置200包含通信接口218,所述通信接口218用于与包含PLC 100及HMI装置4的外部装置进行通信。输入部211也可作为与显示器214一体地构成的触控面板而提供。支持装置200的各部通过内部总线220而相互通信。
支持装置200包含记录介质读取装置217,所述记录介质读取装置217装卸自如地安装记录介质250,用于从所安装的记录介质250读取保存在其中的支持程序700。所读取的支持程序700被保存在HDD 208中。支持程序700可包含实现程序开发环境的程序。记录介质250能以保存有由支持装置200所执行的支持程序700等的状态而流通。另外,记录介质250包含紧凑式闪存卡(Compact Flash,CF)、安全数字卡(Secure Digital,SD)等通用的半导体存储器件、软盘(Flexible Disk)等磁存储介质或者只读光盘(Compact Disk Read OnlyMemory,CD-ROM)等光学存储介质等。
<D.HMI装置4的硬件结构例>
图4是示意性地表示本发明的实施方式的HMI装置4的硬件结构的一例的图。HMI装置4既可为固定型,或者也可在配置PLC 100的制造现场以便携性优异的笔记型个人计算机的形态而提供。
参照图4,HMI装置4包括CPU 411、只读存储器(Read Only Memory,ROM)412、随机存取存储器(Random Access Memory,RAM)413、用于非易失地保存各种程序及数据的快闪ROM 414、用于受理用户操作的操作键416、数据读写器(reader/writer)417、触摸屏418及通信接口419。另外,所述各部经由内部总线而彼此连接。
快闪ROM 414例如保存HMI程序112、及包含构成HMI程序112的一个或多个UI组件501的程序库113。HMI程序112及UI组件501包含可由HMI装置4执行的代码。“UI组件”包含构成HMI程序112的图像数据、文本数据、程序代码等。在执行HMI程序112而显示画面时,通过UI组件来显示图画、字符串等,并且提供通过执行程序代码而实现的功能。所提供的功能可包含:基于控制程序111所用的变量的值的图像显示、对所述变量设定值的用户操作的受理等。
触摸屏418包含作为显示部发挥功能的显示器481、用于受理用户输入的触控面板482。通信接口419与包含PLC 100及支持装置200的外部装置进行通信。
数据读写器417对CPU 411、与作为外部存储介质的一例的存储卡420之间的数据传输进行中介。而且,在HMI装置4,也可根据需要而连接有打印机等其他输出装置。
<E.HMI程序的利用形态的例示>
图5是示意性地表示本发明的实施方式的HMI程序112的利用形态的图。HMI装置4通过执行利用支持装置200而制作的HMI程序112,从而执行HMI程序112的各页面而在显示器481上显示画面。在显示画面时,通过执行构成所述画面的UI组件的程序代码,HMI装置4经由网络来发送控制程序111所用的变量的值的请求。HMI装置4接收从PLC 100请求的变量的值来作为响应,并将所接收的值关联于画面的UI组件而显示。由此,操作员(用户)能够对控制对象的状态值(图5中例如为“123”)进行监测。
而且,在操作员操作画面的UI组件而输入值时,通过执行UI程序的代码,HMI装置4经由网络来发送对控制程序111所用的变量的输入值(例如阈值、目标值等)的设定请求。PLC 100对变量设定经设定请求的值,使用设定后的值来执行控制程序111。由此,操作员能够操作HMI画面来指定用于对控制对象进行控制的值。
<F.程序的开发环境>
图6是概略地表示本发明的实施方式的支持装置200中的程序的开发环境42的一例的图。参照图6,开发环境42包括具有UI组件501及各种函数等数据的程序库213以及开发工具221。开发工具221包含HMI编辑器10A、IEC编辑器10B、HMI编译器10C及IEC编译器10D。
HMI编辑器10A依据来自输入部211的用户操作来制作(编辑)HMI程序112及程序库213的UI组件501,由此,生成用于构成HMI程序112的信息即HMI项目225。同样,IEC编辑器10B依据来自输入部211的用户操作来制作(编辑)控制程序111、用于程序库213的控制程序的各种函,由此,生成用于构成控制程序111(IEC程序)的信息即IEC项目222。
HMI项目225包含HMI程序112、表示构成HMI程序112的UI组件501所用的变量的定义(变量名、数据类型、使用所述变量的机器的标识符等)的HMI变量定义228以及HMI-IEC变量映射226等。IEC项目222包含作为IEC程序的控制程序111、以及表示在控制程序111及控制程序111中调用的函数等所用的变量的定义(变量名、数据类型、使用所述变量的机器的标识符等)的IEC变量定义227等。在HMI-IEC变量映射226中,由HMI变量定义228所定义的各HMI变量中的、与由IEC变量定义227所定义的IEC变量相关联的各HMI变量登记为与所述IEC变量相关联的组。
当编译器启动时,对项目进行编译。具体而言,HMI编译器10C对HMI项目225进行编译,并输出被转换成可执行代码的HMI对象目标229。IEC编译器10D对IEC项目222进行编译,并输出被转换成可执行代码的IEC对象目标230。本实施方式中,可执行代码例如包含二进制代码。
支持装置200将HMI对象目标229传输至HMI装置4,而且,将IEC对象目标230传输至PLC 100。
在HMI装置4中,通过使作为程序库113的可执行代码的UI组件501链接至从支持装置200接收的HMI程序112(HMI对象目标229),从而生成可由HMI装置4执行的HMI模块229-1。而且,在PLC 100中,通过使作为程序库113的可执行代码的各种函数链接至从支持装置200接收的控制程序111(IEC对象目标230),从而也生成可由PLC 100执行的IEC模块230-1。通过由PLC 100执行控制程序111(IEC模块230-1),从而控制对象机器,在HMI装置4中执行HMI程序112(HMI模块229-1)。此时,HMI装置4每当显示HMI程序112的各页面的画面时,如图5所示,向PLC 100请求构成所述页面的UI组件所用的变量的值,并将作为其响应而从PLC 100接收的值作为各所述页面的画面的UI组件予以显示。
<G.传输管理器所进行的传输的结构>
图7是示意性地说明本发明的实施方式的传输管理器231所进行的传输处理的一例的图。参照图7,开发环境42除了图6的结构以外,还包括作为“传输管理部件”的一实施例的传输管理器231、将HMI对象目标229经由通信接口419而传输至HMI装置4的HMI传输部232、以及将IEC对象目标230经由通信接口419而传输至PLC 100的控制器传输部233。传输管理器231具有后述的比较/判定部235及通知部236。
图8是示意性地表示本发明的实施方式的传输管理器231所参照的传输次序表234的一例的图。参照图8,传输次序表234登记有依据传输次序而登记的机器的信息(PLC 100或HMI装置4的标识符)、和与各机器的信息对应的传输功能。关于传输功能,若对应的机器为PLC 100,则登记控制器传输部233,若对应的机器为HMI装置4,则登记HMI传输部232。
传输管理器231从连接于HMI装置4的机器中,提取成为HMI对象目标229及IEC对象目标230的传输目标的机器(HMI装置4、PLC 100)。传输管理器231针对所提取的每个机器,决定向所述机器传输程序的次序,并依据所决定的次序来将所述机器的标识符保存到传输次序表234中。
具体而言,传输管理器231对作为传输对象的对象目标(HMI对象目标229、IEC对象目标230)的代码进行扫描,以提取执行所述对象目标的机器的标识符。所述机器的标识符例如是通过扫描HMI变量定义228或IEC变量定义227而提取。
一般而言,HMI装置4依存于PLC 100而运行,因此传输管理器231在登记所提取的机器的标识符时,以按照PLC 100→HMI装置4的次序来实施传输的方式,在传输次序表234中登记机器的标识符。进而,传输管理器231对应于登记在传输次序表234中的各机器的标识符,来登记与所述机器的种类(PLC 100或HMI装置4)相应的传输功能(HMI传输部232或控制器传输部233的标识符)。
另外,登记在传输次序表234中的连接机器的信息(标识符)包含连接机器(HMI装置4或PLC 100)的网络地址等。HMI传输部232及控制器传输部233分别将从传输管理器231输出的连接机器的信息所表示的网络地址作为接收方,以将HMI对象目标229及IEC对象目标230发送至接收方的机器。
传输管理器231经由HMI传输部232或控制器传输部233而接收来自传输对象机器的“传输完成”响应(response)。
(G1.基于变更的传输对象数据的决定)
传输管理器231决定对HMI装置4及PLC 100的传输对象数据。具体而言,传输管理器231的比较/判定部235将经IEC编辑器10B编辑的控制程序111或经HMI编辑器10A编辑的HMI程序112的各程序,与由作为对象装置的PLC 100或HMI装置4正执行的所述程序进行比较。此时,比较/判定部235从PLC 100或HMI装置4接收执行中的IEC程序或HMI程序。比较/判定部235根据比较的结果,来判定经编辑的各程序是否从由对象装置正执行的所述程序进行了变更。
所述程序彼此的比较基准不受限定,例如包含文件名、制作(编辑)日期时间、程序代码(例如目标代码)的大小以及根据程序代码而算出的哈希值等。作为比较的基准,可使用这些基准中的一个或多个的组合。
传输管理器231将经编辑的控制程序111或HMI程序112的各程序中的、由比较/判定部235判定为已被变更的其中一者或两者,依据传输次序表234而经由HMI传输部232或控制器传输部233来实施传输处理。
通知部236使基于比较/判定部235的判定结果的信息例如被判定为经变更的程序的信息及传输选项(option)等显示于显示器214。例如,若判定结果表示控制程序111及HMI程序112这两者进行了变更,则通知部236提示同时传输控制程序111及HMI程序112的意旨的选项,若表示仅控制程序111进行了变更,则提示仅传输控制程序111的意旨的选项,若表示仅HMI程序112进行了变更,则提示仅传输HMI程序112的意旨的选项,若表示控制程序111及HMI程序112这两者均未被变更,则提示不传输两程序即停止传输的意旨的选项。
用户操作输入部211来从所提示的选项中进行选择。传输管理器231依据包含经由输入部211而受理的用户操作内容所表示的被选择的选项的、程序的传输委托,来控制HMI传输部232或控制器传输部233,实施传输处理。
(G2.基于变量差异的程序传输)
在如上所述的处理中,程序彼此的比较是基于文件名、制作日期时间、大小、哈希值等基准的比较,但比较基准也可为程序中所用的变量。
图9是示意性地表示本发明的实施方式的开发环境42的另一结构例的图。图9的开发环境42是在图7的结构中追加包括变量校验器237,但其他结构与图7所示的结构同样,因此不再重复说明。图10是示意性地表示本发明的实施方式的变量校验器237所进行的处理的一例的图。变量校验器237在控制程序111与HMI程序112之间,对程序所用的变量进行比较。比较/判定部235基于变量校验器237的输出,来判定经编辑的各程序是否从由对象装置正执行的所述程序进行了变更。
本实施方式中,HMI程序112主要包含变量与HMI处理的程序代码,所述HMI处理的程序代码包含使用所述变量的、UI组件501的调用。而且,控制程序111包含变量与使用所述变量的控制运算等的程序代码。此类变量包含为了在不同的程序间交换数据而共同使用的全局变量、与仅在各程序内处理的本地变量。程序是否被变更的判定是基于变量的差异或者表示处理内容的程序代码的差异来实施。本实施方式的变量校验器237对全局变量的差异进行检测。
参照图10来说明变量校验器237所进行的变量校验处理的具体例。在变量校验处理中,首先,变量校验器237将HMI项目225的HMI变量定义228所表示的HMI变量一览,与由HMI装置4正执行的HMI程序112所用的HMI变量一览(HMI模块229-1所具有的HMI变量定义所具有的变量一览)进行比较,根据比较的结果,生成HMI追加变量一览238,所述HMI追加变量一览238表示通过本次的编辑而追加至HMI变量定义228中的变量。而且,变量校验器237将IEC项目222的IEC变量定义227所表示的IEC变量一览,与由PLC 100正执行的控制程序111所用的IEC变量一览(IEC230-1所具有的IEC变量定义所具有的变量一览)进行比较,根据比较的结果,生成IEC追加变量一览239,所述IEC追加变量一览239表示通过本次的编辑而追加至IEC变量定义227中的变量。
变量校验器237进而基于HMI追加变量一览238的变量来检索HMI-IEC变量映射226,由此,提取出通过编辑而追加的HMI变量中的、已登记在HMI-IEC变量映射226中的HMI变量。变量校验器237根据像这样提取的HMI变量来制作追加IEC参照变量一览241,并将所制作的追加IEC参照变量一览241与IEC追加变量一览239进行比较。变量校验器237输出所述比较的结果。
传输管理器231在来自变量校验器237的比较结果表示追加IEC参照变量一览241与IEC追加变量一览239的变量彼此一致的情况下,为了生成HMI对象目标229及IEC对象目标230,而启动HMI编译器10C及IEC编译器10D。随后,传输管理器231对控制器传输部233与HMI传输部232进行控制,以按照依据传输次序表234的次序来传输所生成的对象目标。
这样,在变量校验器237判定为追加至控制程序111的变量在HMI程序112中也被追加为变量的情况下,传输管理器231能够启动编译器,对基于编辑后的项目的HMI对象目标229及IEC对象目标230这两者进行传输。
此时,依据传输次序表234来实施传输,由此,传输管理器231能够在IEC对象目标230向PLC 100的传输完成后(收到来自PLC 100的传输完成响应后),开始HMI对象目标229向HMI装置4的传输。
(G3.程序代码(逻辑)变更的通知)
在如上所述的实施方式中,在通过变量校验器237检测到变量的变更时实施程序的传输,但以下说明未检测到变量变更的情况下的程序传输。
在此情况下,未通过变量校验器237检测到变量的变更,但若存在表示处理内容(逻辑)的程序代码的变更,则传输管理器231实施程序的传输,并且将预先规定的通知发送至HMI装置4并使其输出至显示器481。
具体而言,例如存在下述情况:在对控制程序111进行编辑的情况下,尽管无程序中所用的变量的变更,但因程序代码受到变更,而逻辑(控制运算逻辑)受到变更。在此情况下,若设HMI程序112所用的变量表示所述运算逻辑的执行结果的值,则基于UI组件501的所述变量的值的监测运行(例如图像的显示形态等)会发生变化。基于此种背景,传输管理器231在未从变量校验器237的输出中检测到变量的变更,且比较/判定部235检测到控制程序111的程序代码的变更的情况下,将向PLC 100的程序传输与预先规定的消息的输出指令发送至HMI装置4。预先规定的消息例如包含“由于控制程序的逻辑存在变更,因此可能对利用HMI画面的监测运行产生影响”的意旨的消息。
比较/判定部235对控制程序111的程序代码的变更检测包含基于控制程序111的程序代码彼此的对比、程序代码的校验和(check sum)的对比、如上所述的哈希值的对比等对比结果的检测。
HMI装置4在收到消息的输出指令时,使显示器481输出消息。通过在HMI画面上输出所述消息,从而能够对操作员给予应在HMI画面上实施传输后的控制程序111在PLC 100中启动时所需的功能校验的意旨的建议(advice)。
此时,传输管理器231例如像以下那样决定作为消息输出指令的发送对象的HMI装置4。即,传输管理器231收集由经网络连接的各HMI装置4所保持的作为对象的PLC 100的标识符,将所收集的各标识符与IEC对象目标230所保持的作为传输目标的PLC 100的标识符进行对比。传输管理器231基于对比结果,将具有与IEC对象目标230所保持的PLC 100的标识符一致的标识符的HMI装置4决定为消息输出指令的发送对象。
<H.支持程序所进行的处理>
依据图11~图13的流程图来说明支持程序700的处理。
(H1.基于传输次序表的传输)
图11是表示本发明的实施方式的依据传输次序表234的传输处理的一例的流程图。在HMI编辑器10A或IEC编辑器10B制作(编辑)HMI程序112或控制程序111时,CPU 202启动传输管理器231。
参照图11,传输管理器231通过对HMI对象目标229与IEC对象目标230进行扫描,从而提取出连接于HMI装置4的机器中的、成为HMI对象目标229及IEC对象目标230的传输目标的机器(HMI装置4、PLC 100)的标识符(步骤S1),使用所提取的标识符,将信息登记到传输次序表234中(步骤S3)。
传输管理器231在经由输入部211而从用户受理了选择对象目标传输的操作时(步骤S5),依据传输次序表234所指定的次序,将HMI对象目标229或IEC对象目标230传输至连接于支持装置200的机器中的、传输次序表234所指定的传输目标机器(步骤S7~S11)。
此处,传输管理器231从传输次序表234的先头依序检索而读出传输目标机器的标识符。传输管理器231判定所读出的传输目标机器的标识符是否表示“空”(步骤S9)。若判定为所读出的传输目标机器并非为“空”(步骤S9中为否),则传输管理器231经由与传输目标机器的标识符相关联的传输部(HMI传输部232或控制器传输部233),而使对象目标传输至所述标识符的接收机器(步骤S11)。随后,返回步骤S7,重复以后的处理。另一方面,传输管理器231在判定为所读出的传输目标机器的标识符表示“空”时(步骤S9中为否),结束一连串的传输处理。
由此,当实施控制程序111或HMI程序112的编辑时,传输管理器231启动,传输管理器231将IEC对象目标230(控制程序111)经由控制器传输部233而传输至PLC 100,同时,将HMI对象目标229(HMI程序112)经由HMI传输部232而传输至HMI装置4。
(H2.基于用户操作的传输委托的传输)
图12是表示本发明的实施方式的基于用户操作的传输处理的一例的流程图。参照图12,传输管理器231在被启动时,从用户受理选择数据传输的操作(步骤S21)。比较/判定部235将经IEC编辑器10B编辑的控制程序111或经HMI编辑器10A编辑的HMI程序112的各程序,与由作为对象装置的PLC 100或HMI装置4正执行的所述程序进行比较。此时,比较/判定部235例如以对象目标彼此实施比较(步骤S23)。
传输管理器231的通知部236使基于比较/判定部235所进行的比较得出的判定结果的消息显示于显示器214(步骤S25),而且,使传输选项显示于显示器214(步骤S27)。
传输管理器231依据经由输入部211的用户操作内容、即用户所选择的传输选项所表示的传输委托,来控制HMI传输部232或控制器传输部233,以实施传输处理(步骤S29~S43)。
判断传输委托是否表示控制程序111与HMI程序112向PLC 100与HMI装置4这两者的同时传输(步骤S29)。若判断为表示同时传输(步骤S29中为是),则传输管理器231依据传输次序表234来调用(启动)控制器传输部233,控制器传输部233对IEC对象目标230进行传输(步骤S41)。传输管理器231在从作为传输目标的PLC 100收到传输完成的响应时,依据传输次序表234来调用(启动)HMI传输部232,HMI传输部232对HMI对象目标229进行传输(步骤S43)。传输管理器231在从作为传输目标的HMI装置4收到传输完成的响应时,结束处理。
传输管理器231在并非判定为表示同时传输时(步骤S29中为否),传输管理器231判断传输委托是否表示控制程序111仅向PLC 100的传输(步骤S31)。若判断为表示仅向PLC100的传输(步骤S31中为是),则传输管理器231依据传输次序表234来调用(启动)控制器传输部233,控制器传输部233对IEC对象目标230进行传输(步骤S37)。传输管理器231在从作为传输目标的PLC 100收到传输完成的响应时,结束处理。
若并非判断为表示仅向PLC 100的传输(步骤S31中为否),则传输管理器231判断传输委托是否表示HMI程序112仅向HMI装置4的传输(步骤S33)。若判断为表示仅向HMI装置4的传输(步骤S33中为是),则传输管理器231依据传输次序表234来调用(启动)HMI传输部232,HMI传输部232对HMI对象目标229进行传输(步骤S39)。传输管理器231在从作为传输目标的HMI装置4收到传输完成的响应时,结束处理。
进而,若并非判断为表示仅向HMI装置4的传输(步骤S33中为否),则传输管理器231停止传输处理的实施(步骤S35),结束处理。
(H3.基于变量的变更的传输)
图13是表示本发明的实施方式的基于变量的变更的传输处理的一例的流程图。图13的处理中,通过HMI编辑器10A来编辑HMI程序112。此时,以下述情况为例来进行说明,即,构成HMI程序112的UI组件501所用的变量受到变更,所述变量是通过控制程序111的编辑而新追加的变量。
首先,IEC编辑器10B依据经由输入部211而受理的用户操作,来制作(编辑)控制程序111(步骤S51)。通过所述控制程序111的编辑而追加新变量。在此种新变量的变更中,IEC编辑器10B对IEC变量定义227进行编辑(变更),以追加新变量的定义。
而且,HMI编辑器10A依据经由输入部211而受理的用户操作,将构成HMI程序112的UI组件501所用的变量变更为所述新变量(步骤S53)。在此种变量的变更中,HMI编辑器10A对HMI变量定义228及HMI-IEC变量映射226进行编辑(变更等),以对变更后的新变量进行定义。
通过步骤S51及步骤S53的编辑处理,来制作编辑后的HMI项目225及编辑后的IEC项目222。
传输管理器231在经由输入部211而受理了传输选择的用户操作时(步骤S55),传输管理器231启动HMI编译器10C与IEC编译器10D。HMI编译器10C对编辑后的HMI项目225进行编译而生成HMI对象目标229。而且,IEC编译器10D对编辑后的控制程序111进行编译而生成IEC对象目标230(步骤S57)。
传输管理器231启动变量校验器237,基于来自变量校验器237的输出,来判断在HMI程序112与控制程序111中经变更的变量是否一致(步骤S59、步骤S61)。即,传输管理器231判断在控制程序111中追加的新变量在构成HMI程序112的UI组件中是否为新使用的。
在传输管理器231并非判断为HMI程序112与控制程序111中经变更的变量为一致(步骤S61中为否)的情况下,传输管理器231实施通常传输(步骤S69)。即,传输管理器231启动HMI传输部232及控制器传输部233,将IEC对象目标230及HMI对象目标229分别传输至用户从经网络连接的装置中预先选择的PLC 100及HMI装置4。传输管理器231在从两装置收到传输完成响应时,实施后述的步骤S79的启动处理。
返回步骤S61,当传输管理器231判断为在HMI程序112与控制程序111中经变更的变量一致时(步骤S61中为是),传输管理器231启动通知部236(步骤S63)。
通知部236在被启动时,依据来自传输管理器231的指示,使同时传输控制程序111及HMI程序112的意旨的选项的通知显示在显示器214上(步骤S65)。
传输管理器231基于经由输入部211而受理的用户操作,来判断用户是否选择了同时传输的选项(步骤S67)。传输管理器231在判断为并未选择同时传输的选项时(步骤S67中为否),移转至步骤S69的处理。另一方面,传输管理器231在判断为已选择了同时传输的选项时(步骤S67中为是),实施步骤S71以后的传输处理。
具体而言,传输管理器231依据传输次序表234的传输次序数据,将IEC对象目标230及HMI对象目标229使用对应的传输功能(控制器传输部233或HMI传输部232)而传输至机器(PLC 100或HMI装置4)。首先,传输管理器231启动控制器传输部233(步骤S71),所启动的控制器传输部233依据传输次序数据,依序将IEC对象目标230传输至各PLC 100。
传输管理器231在经由控制器传输部233而从各PLC 100收到传输完成的响应时(步骤S73),传输管理器231启动HMI传输部232(步骤S75),所启动的控制器传输部233依据传输次序数据,依序将HMI对象目标229传输至各HMI装置4。
传输管理器231在经由HMI传输部232而从各HMI装置4收到传输完成的响应时(步骤S77),发送启动指示251(步骤S79)。启动指示251被发送至作为HMI对象目标229的传输目标的各HMI装置4及作为IEC对象目标230的传输目标的各PLC 100。
<I.启动处理>
对依据启动指示251而实施的启动处理的一例进行说明。图14是示意性地说明本发明的实施方式的启动处理的一例的图。图14中,与PLC 100的快闪存储器108和HMI装置4的快闪ROM 414的存储内容相关联地表示了启动处理。
例如,PLC 100的快闪存储器108包含区域E1与E2,在区域E1中保持由PLC 100当前执行中的执行模块,在区域E2中保存从支持装置200传输的IEC对象目标230即对象目标。PLC 100的处理器102在完成了将从支持装置200接收的IEC对象目标230保存至区域E2的操作时,发送所述传输完成的响应。在发送了响应后,当从支持装置200收到启动指示251时,处理器102对区域E2的对象目标进行扫描并校验(进行必要的错误修订),并使未图示的程序库的各种函数的对象目标等链接至所述对象目标,由此生成可执行的目标代码即执行模块。执行模块被复制(覆盖)至区域E1。随后,在PLC 100中,执行被复制至区域E1中的包含对象目标的执行模块。
同样,在各HMI装置4中,CPU 411也可在完成了将从支持装置200接收的HMI对象目标229保存至快闪ROM 414的区域E2的操作时,发送传输完成的响应。在发送了响应后,当从支持装置200收到启动指示251时,CPU 411对区域E2的对象目标进行扫描并校验(进行必要的错误修订),并使程序库113的UI组件501的对象目标等链接至所述对象目标,由此生成可执行的目标代码即执行模块,将所生成的执行模块复制(覆盖)至区域E1。随后,在HMI装置4中,执行被复制至区域E1中的包含新的HMI对象目标229的执行模块。
如上所述的启动指示251也可与所传输的对象目标(IEC对象目标230及HMI对象目标229)一同被发送至各PLC 100及各HMI装置4。启动指示251可包含用于对开始启动处理的实施的时间进行计时的信息。所述时间可为相对时间或绝对时间。相对时间例如包含从发送传输完成响应计起的、预先规定的长度的经过时间。而且,绝对时间例如包含使各PLC100及各HMI装置4的计时器同步而计时器所计时的预先规定的时间(时/分/秒)等时间。
由此,支持装置200不等待从各PLC 100及各HMI装置4收到传输完成响应而发送启动指示251,且能够以同步的时机而在各PLC 100及各HMI装置4中实施启动处理。
所述实施方式中,关于HMI程序112的编辑,对HMI程序112自身的编辑进行了说明,但也可为构成HMI程序112的程序即UI组件的编辑。例如,在通过编辑来变更UI组件所用的变量的个数或变更UI组件的程序代码等的情况下,对UI组件进行编译,并将所述对象目标传输至HMI装置4。HMI装置4基于来自支持装置200的启动指示251,将程序库113的UI组件替换为从支持装置200收到的UI组件。
<J.程序>
通过执行本实施方式所示的各流程图的处理来提供程序的开发环境42的支持程序700被保存在支持装置200的存储部(ROM 204、RAM 206、HDD 208、记录介质250等)中。CPU202从存储部中读出支持程序并予以执行,由此,能够实现本实施方式中所说明的开发环境42下的各种处理。
此种支持程序700也能够记录在附属于支持装置200的软盘、只读光盘(CompactDisk-Read Only Memory,CD-ROM)、ROM、RAM及记录介质250等计算机可读取的记录介质中,而作为程序产品来提供。或者,也能够记录在内置于支持装置200的HDD 208等记录介质中来提供程序。而且,也能够通过从未图示的网络经由通信接口来下载而提供程序。
<K.附注>
如上所述的本实施方式包含如下所述的技术思想。
[结构1]
一种支持装置(200),支援由设于FA(工厂自动化)的对象装置(4、100)所执行的程序的开发,其中
所述对象装置包含对所述FA机器进行控制的控制装置(100)与HMI(人机接口)装置(4),
所述支持装置包括:
编辑部件(10A、10B),对所述程序进行编辑;以及
传输管理部件(231),实施用于将经编辑的所述程序传输至所述对象装置的传输处理,
所述程序包含用于控制所述机器的控制程序(111)与对所述控制程序所用的变量进行处理的HMI程序(112),
所述传输管理部件包含一部件,所述部件在通过所述编辑部件对所述控制程序或所述HMI程序进行了编辑的情况下,实施所述传输处理,以将所述控制程序及所述HMI程序分别同时传输至所述控制装置与所述HMI装置。
[结构2]
根据结构1所述的支持装置,还包括:
部件(235),将经所述编辑部件编辑的所述控制程序或所述HMI程序的各程序与由所述对象装置正执行的所述程序进行比较,根据比较的结果来判定所述经编辑的各程序是否从所述正执行的所述程序进行了变更,
所述传输管理部件还包含一部件,所述部件实施所述传输处理,以对经所述编辑部件编辑的所述控制程序或所述HMI程序的各程序中的、被判定为进行了所述变更的其中一者或两者进行传输。
[结构3]
根据结构2所述的支持装置,还包括:
通知部件(236),使基于所述判定部件作出的判定结果的信息显示于显示器;以及操作受理部件(211),受理对所述支持装置的用户操作,
所述传输管理部件包含一部件,所述部件实施所述传输处理,以对经所述编辑部件编辑的所述控制程序或所述HMI程序的各程序中的、所受理的用户操作内容所表示的其中一者或两者进行传输。
[结构4]
根据结构1至3中任一项所述的支持装置,其中
在通过所述传输管理部件来实施所述控制程序或所述HMI程序的传输处理时,对所述对象装置发送用于使传输后的各程序启动的启动指示(251)。
[结构5]
根据结构4所述的支持装置,其中
所述启动指示包含使传输后的各程序启动的时间的信息。
[结构6]
根据结构4所述的支持装置,其中
在从所述对象装置收到所述程序的传输已完成的意旨的通知时,将所述启动指示发送至所述对象装置。
[结构7]
根据结构1至6中任一项所述的支持装置,其中
所述HMI程序包含UI(用户接口)组件(501),所述UI组件(501)是构成所述HMI程序的程序且对所述变量进行处理,
所述HMI程序的编辑包含所述UI组件的编辑。
[结构8]
根据结构1至7中任一项所述的支持装置,其中
所述控制程序包含变量、及表示使用所述变量的处理内容的程序代码,
在所述比较的结果表示所述变量未被变更而所述程序代码已被变更的情况下,使预先规定的通知输出至所述HMI装置的显示器(481)。
[结构9]
一种支持程序(700),支援由设于FA(工厂自动化)的对象装置(100、4)所执行的程序的开发,其中
所述对象装置包含对设于所述FA的机器进行控制的控制装置(100)与HMI(人机接口)装置(4),
所述支持程序使计算机(200)执行下述步骤:
对所述程序进行编辑;以及
实施用于将经编辑的所述程序传输至所述对象装置的传输处理,
受到编辑的所述程序包含用于控制所述机器的控制程序(111)与对所述控制程序所用的变量进行处理的HMI程序(112),
实施所述传输处理的步骤包含下述步骤,即,
在对所述控制程序或所述HMI程序进行了编辑的情况下,实施所述传输处理,以将所述控制程序及所述HMI程序分别同时传输至所述控制装置与所述HMI装置。
应认为,此次公开的实施方式在所有方面仅为例示,并非限制者。本发明的范围是由权利要求而非所述说明所示,且意图包含与权利要求均等的含义及范围内的所有变更。
符号的说明
1:系统
4:HMI装置
10A:HMI编辑器
10B:IEC编辑器
42:开发环境
111:控制程序
112:HMI程序
113、213:程序库
200:支持装置
214、481:显示器
231:传输管理器
232:HMI传输部
233:控制器传输部
234:传输次序表
235:比较/判定部
236:通知部
237:变量校验器
251:启动指示
501:UI组件
700:支持程序
E1、E2:区域
Claims (9)
1.一种支持装置,支援由设于工厂自动化的对象装置所执行的程序的开发,其特征在于,
所述对象装置包含对所述工厂自动化的机器进行控制的控制装置与人机接口装置,
所述支持装置包括:
编辑部件,对所述程序进行编辑;以及
传输管理部件,实施传输处理,所述传输处理用于将经编辑的所述程序传输至所述对象装置,
所述程序包含用于控制所述机器的控制程序与对所述控制程序所使用的变量进行处理的人机接口程序,
所述传输管理部件包含实施所述传输处理的部件,所述部件在通过所述编辑部件对所述控制程序或所述人机接口程序进行了编辑的情况下,将所述控制程序及所述人机接口程序分别同时传输至所述控制装置与所述人机接口装置。
2.根据权利要求1所述的支持装置,其特征在于,还包括:
判定部件,将经所述编辑部件编辑的所述控制程序或所述人机接口程序的各程序与由所述对象装置执行中的所述程序进行比较,根据比较的结果来判定经编辑的所述各程序是否从所述执行中的所述程序进行了变更,
所述传输管理部件还包含实施所述传输处理的部件,所述部件对经所述编辑部件编辑的所述控制程序或所述人机接口程序的各程序中的被判定为进行了所述变更的其中一者或两者进行传输。
3.根据权利要求2所述的支持装置,其特征在于,还包括:
通知部件,使基于所述判定部件作出的判定结果的信息显示于显示器;以及
操作受理部件,受理对所述支持装置的用户操作,
所述传输管理部件包含实施所述传输处理的部件,所述部件对经所述编辑部件编辑的所述控制程序或所述人机接口程序的各程序中的所受理的用户操作内容所表示的其中一者或两者进行传输。
4.根据权利要求1至3中任一项所述的支持装置,其特征在于,
在通过所述传输管理部件来实施所述控制程序或所述人机接口程序的传输处理时,对所述对象装置发送用于使传输后的各程序启动的启动指示。
5.根据权利要求4所述的支持装置,其中
所述启动指示包含使传输后的各程序启动的时间的信息。
6.根据权利要求4所述的支持装置,其特征在于,
在从所述对象装置收到所述程序的传输已完成的意旨的通知时,将所述启动指示发送至所述对象装置。
7.根据权利要求1至6中任一项所述的支持装置,其特征在于,
所述人机接口程序包含用户接口组件,所述用户接口组件是构成所述人机接口程序的程序且对所述变量进行处理,
所述人机接口程序的编辑包含所述用户接口组件的编辑。
8.根据权利要求1至7中任一项所述的支持装置,其特征在于,
所述控制程序包含变量、及表示使用所述变量的处理内容的程序代码,
在所述比较的结果表示所述变量未被变更而所述程序代码已被变更的情况下,使预先规定的通知输出至所述人机接口装置的显示器。
9.一种支持程序,支援由设于工厂自动化的对象装置所执行的程序的开发,其特征在于,
所述对象装置包含对设于所述工厂自动化的机器进行控制的控制装置与人机接口装置,
所述支持程序使计算机执行下述步骤:
对所述程序进行编辑;以及
实施用于将经编辑的所述程序传输至所述对象装置的传输处理,
受到编辑的所述程序包含用于控制所述机器的控制程序与对所述控制程序所用的变量进行处理的人机接口程序,
实施所述传输处理的步骤包含下述步骤,即,
在对所述控制程序或所述人机接口程序进行了编辑的情况下,实施所述传输处理,将所述控制程序及所述人机接口程序分别同时传输至所述控制装置与所述人机接口装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018-142647 | 2018-07-30 | ||
JP2018142647A JP7052620B2 (ja) | 2018-07-30 | 2018-07-30 | サポート装置およびサポートプログラム |
PCT/JP2019/027338 WO2020026738A1 (ja) | 2018-07-30 | 2019-07-10 | サポート装置およびサポートプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112272802A true CN112272802A (zh) | 2021-01-26 |
CN112272802B CN112272802B (zh) | 2024-04-09 |
Family
ID=69231628
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980039097.8A Active CN112272802B (zh) | 2018-07-30 | 2019-07-10 | 支持装置以及记录介质 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11360462B2 (zh) |
EP (1) | EP3832411B1 (zh) |
JP (1) | JP7052620B2 (zh) |
CN (1) | CN112272802B (zh) |
WO (1) | WO2020026738A1 (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1371488A (zh) * | 1999-08-31 | 2002-09-25 | 迪吉多电子股份有限公司 | 编辑装置及用于存储编辑程序的存储介质 |
CN1734381A (zh) * | 2004-04-13 | 2006-02-15 | 欧姆龙株式会社 | 控制系统设定装置 |
JP2008033575A (ja) * | 2006-07-27 | 2008-02-14 | Digital Electronics Corp | プログラマブル表示器、プログラマブル表示器のためのプログラムおよびそれを記録した記録媒体、ならびに制御システム、制御システムのためのプログラムおよびそれを記録した記録媒体 |
US20110119605A1 (en) * | 2009-11-16 | 2011-05-19 | Microsoft Corporation | Dynamic editors for functionally composed ui |
JP2014048993A (ja) * | 2012-09-03 | 2014-03-17 | Toshiba Mitsubishi-Electric Industrial System Corp | 転送プログラム生成装置 |
KR101648144B1 (ko) * | 2016-03-04 | 2016-08-16 | (주)동국일렉콘스 | 프로그래머블 게이트웨이 제어 시스템 및 이를 이용한 프로그래머블 게이트웨이 제어방법 |
CN107132808A (zh) * | 2016-02-26 | 2017-09-05 | 欧姆龙株式会社 | 可编程控制器及其控制方法与控制程序 |
CN107615192A (zh) * | 2015-08-10 | 2018-01-19 | 欧姆龙株式会社 | 支持装置、方法以及保存有支持程序的记录介质 |
KR101837906B1 (ko) * | 2017-07-18 | 2018-03-13 | 주현수 | 스태커 및 리클라이머 장비의 자동 운전을 통한 야드 관리 시스템 |
KR20180052940A (ko) * | 2016-11-11 | 2018-05-21 | (주)위너스엔지니어링 | 계측제어 설비에서의 프로그램 구동 장치 및 계측제어 설비에서의 프로그램 구동 방법 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3449872B2 (ja) * | 1996-09-30 | 2003-09-22 | 株式会社デジタル | プログラム式表示装置用の操作画面データ転送方法 |
JP3297844B2 (ja) * | 1998-01-28 | 2002-07-02 | 株式会社デジタル | ダウンロードシステム及びダウンロードプログラムを記録したコンピュータ読み取り可能な記録媒体 |
JP3795357B2 (ja) | 2001-07-31 | 2006-07-12 | 株式会社デジタル | エディタ装置、エディタプログラムおよびそれを記録した記録媒体 |
US7657329B1 (en) * | 2006-08-28 | 2010-02-02 | Rockwell Automation Technologies, Inc. | Embedding HMI logic into control logic |
JP2009146229A (ja) | 2007-12-14 | 2009-07-02 | Fuji Electric Systems Co Ltd | プログラマブルコントローラシステム |
JP2011108008A (ja) | 2009-11-18 | 2011-06-02 | Koyo Electronics Ind Co Ltd | Hmi画面自動生成方法 |
WO2013068023A1 (en) * | 2011-11-10 | 2013-05-16 | Abb Technology Ag | Arrangement and method for distributing a control system engineering tool and/or a control application software |
US9989958B2 (en) * | 2013-05-09 | 2018-06-05 | Rockwell Automation Technologies, Inc. | Using cloud-based data for virtualization of an industrial automation environment |
WO2017064554A1 (en) * | 2015-10-13 | 2017-04-20 | Schneider Electric Industries Sas | Method for arranging workloads in a software defined automation system |
US9703546B1 (en) * | 2015-12-21 | 2017-07-11 | Schneider Electric Software, Llc | Monitoring application states for deployment during runtime operations |
JP6786984B2 (ja) | 2016-09-16 | 2020-11-18 | オムロン株式会社 | プログラム処理装置およびプログラム |
WO2018058304A1 (zh) * | 2016-09-27 | 2018-04-05 | 西门子公司 | 自动生成用户界面的工业控制器及方法 |
US10409586B1 (en) * | 2018-02-16 | 2019-09-10 | Wipro Limited | Method and system for developing and delivering an update on human machine interface (HMI) application |
US20210141628A1 (en) * | 2018-05-11 | 2021-05-13 | Siemens Industry, Inc. | Automated system and method for updating firmware on industrial devices |
-
2018
- 2018-07-30 JP JP2018142647A patent/JP7052620B2/ja active Active
-
2019
- 2019-07-10 EP EP19843879.8A patent/EP3832411B1/en active Active
- 2019-07-10 US US17/251,216 patent/US11360462B2/en active Active
- 2019-07-10 WO PCT/JP2019/027338 patent/WO2020026738A1/ja unknown
- 2019-07-10 CN CN201980039097.8A patent/CN112272802B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1371488A (zh) * | 1999-08-31 | 2002-09-25 | 迪吉多电子股份有限公司 | 编辑装置及用于存储编辑程序的存储介质 |
CN1734381A (zh) * | 2004-04-13 | 2006-02-15 | 欧姆龙株式会社 | 控制系统设定装置 |
JP2008033575A (ja) * | 2006-07-27 | 2008-02-14 | Digital Electronics Corp | プログラマブル表示器、プログラマブル表示器のためのプログラムおよびそれを記録した記録媒体、ならびに制御システム、制御システムのためのプログラムおよびそれを記録した記録媒体 |
US20110119605A1 (en) * | 2009-11-16 | 2011-05-19 | Microsoft Corporation | Dynamic editors for functionally composed ui |
JP2014048993A (ja) * | 2012-09-03 | 2014-03-17 | Toshiba Mitsubishi-Electric Industrial System Corp | 転送プログラム生成装置 |
CN107615192A (zh) * | 2015-08-10 | 2018-01-19 | 欧姆龙株式会社 | 支持装置、方法以及保存有支持程序的记录介质 |
CN107132808A (zh) * | 2016-02-26 | 2017-09-05 | 欧姆龙株式会社 | 可编程控制器及其控制方法与控制程序 |
KR101648144B1 (ko) * | 2016-03-04 | 2016-08-16 | (주)동국일렉콘스 | 프로그래머블 게이트웨이 제어 시스템 및 이를 이용한 프로그래머블 게이트웨이 제어방법 |
KR20180052940A (ko) * | 2016-11-11 | 2018-05-21 | (주)위너스엔지니어링 | 계측제어 설비에서의 프로그램 구동 장치 및 계측제어 설비에서의 프로그램 구동 방법 |
KR101837906B1 (ko) * | 2017-07-18 | 2018-03-13 | 주현수 | 스태커 및 리클라이머 장비의 자동 운전을 통한 야드 관리 시스템 |
Also Published As
Publication number | Publication date |
---|---|
EP3832411A1 (en) | 2021-06-09 |
EP3832411A4 (en) | 2022-04-20 |
EP3832411B1 (en) | 2024-03-13 |
JP7052620B2 (ja) | 2022-04-12 |
WO2020026738A1 (ja) | 2020-02-06 |
US20210247746A1 (en) | 2021-08-12 |
JP2020021157A (ja) | 2020-02-06 |
CN112272802B (zh) | 2024-04-09 |
US11360462B2 (en) | 2022-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6931288B1 (en) | User interface and system for creating function block diagrams | |
EP2889707B1 (en) | Control device and communication control method | |
JP5039428B2 (ja) | プログラマブルコントローラ及びplcシステム | |
CN102073448A (zh) | 用于动态显示与过程控制系统相关联的数据的方法和装置 | |
CN107407922B (zh) | 可编程逻辑控制器及其控制方法以及记录介质 | |
EP2902942A1 (en) | Image processing device, managing system, and managing method | |
EP3761127B1 (en) | Display device, screen generation method, and screen generation program | |
JP2007095107A (ja) | パラメータ設定装置 | |
CN107407923A (zh) | Plc控制数据生成装置、plc控制数据生成方法、以及plc控制数据生成程序 | |
CN112639636B (zh) | 开发支援装置、开发支援方法以及存储介质 | |
JP7172864B2 (ja) | サポート装置およびサポートプログラム | |
CN112272802B (zh) | 支持装置以及记录介质 | |
JP2006190202A (ja) | データ処理装置、設定データ生成装置、並びに、それらのプログラムおよび記録媒体 | |
CN111052010A (zh) | 控制系统、开发辅助装置和开发辅助程序 | |
CN112272820B (zh) | 支持装置以及支持程序的记录介质 | |
KR102553315B1 (ko) | 프로그램 생성 장치, 프로그램 생성 장치의 제어 방법, 제어 프로그램, 및 기록 매체 | |
WO2021044654A1 (ja) | 情報処理システム、プログラマブル表示器および情報処理装置 | |
EP3376374A1 (en) | Screen creation apparatus, simulation apparatus and screen creation program | |
CN114424175A (zh) | 设备管理装置以及软件生成方法 | |
US11726453B2 (en) | Program creation device, program creation method, and program | |
US20220206453A1 (en) | Program creation device, program creation method, and program | |
JP7234810B2 (ja) | サポート装置およびサポートプログラム | |
CN116917818A (zh) | 开发辅助装置、开发辅助方法以及开发辅助程序 | |
JPH10289011A (ja) | 数値制御装置及び数値制御装置におけるバックグラウンド処理のカスタマイズ方法 | |
JP5330321B2 (ja) | プログラマブル表示器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |