WO2020056585A1 - 用于程序文件编写和运行处理的方法及装置、系统 - Google Patents

用于程序文件编写和运行处理的方法及装置、系统 Download PDF

Info

Publication number
WO2020056585A1
WO2020056585A1 PCT/CN2018/106190 CN2018106190W WO2020056585A1 WO 2020056585 A1 WO2020056585 A1 WO 2020056585A1 CN 2018106190 W CN2018106190 W CN 2018106190W WO 2020056585 A1 WO2020056585 A1 WO 2020056585A1
Authority
WO
WIPO (PCT)
Prior art keywords
program
program file
processing device
file
description
Prior art date
Application number
PCT/CN2018/106190
Other languages
English (en)
French (fr)
Inventor
王同舟
张猛
王岩
张传雨
李冬
Original Assignee
西门子股份公司
王同舟
张猛
王岩
张传雨
李冬
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 西门子股份公司, 王同舟, 张猛, 王岩, 张传雨, 李冬 filed Critical 西门子股份公司
Priority to PCT/CN2018/106190 priority Critical patent/WO2020056585A1/zh
Priority to EP18934020.1A priority patent/EP3839729A4/en
Priority to US17/276,917 priority patent/US20210382454A1/en
Priority to CN201880097040.9A priority patent/CN112639730A/zh
Publication of WO2020056585A1 publication Critical patent/WO2020056585A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/056Programming the PLC
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/51Source to source
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/74Reverse engineering; Extracting design information from source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/76Adapting program code to run in a different environment; Porting
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13019Translate program in order to be used on different plc
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13022Convert source program to intermediate program

Definitions

  • the present disclosure generally relates to the field of automation systems, and more particularly, to a method and apparatus for program file writing and running processing, and a system for program file processing.
  • Automation system providers e.g. Siemens, ABB, Schneider, etc.
  • programming tools e.g., STEP 7
  • program runners e.g., Programmable Logic Controller (PLC)
  • PLC Programmable Logic Controller
  • an engineering technician may wish to migrate a program from one program runner to another, or use a new When the program runner is replaced, if the two program runners are from different providers, the engineering technician needs to rewrite the program because the program cannot be converted from one programming tool to another.
  • the IEC has released a series of standards, such as IEC-61131-3 and IEC-61499, to standardize the programming languages of different PLCs and define the TC6XML standard as a common file format for different program runner vendors. Based on this, the IEC hopes that the programming tools of all vendors will support all IEC61131 programming languages and use TC6 as a common file exchange format.
  • the present disclosure provides a program file processing method.
  • a program file written in a specific format specified by a provider is converted into a program file that can be described by a universal description language and used to represent the program file.
  • the program node description model of the reference relationship between each node is then stored in the cloud server for the program runner to download and run, and when the program runner downloads and runs, the program node describes the references between the various nodes in the model based on the program node Relationship to convert the program file executable by the program runner, thereby eliminating the need to configure a variety of different programming tools in the engineering station to write program code for the program runners from different providers, thereby making the configuration of the engineering station simple.
  • this method can also make program file migration easier and more convenient.
  • a method for writing and processing a program file comprising: determining a type of a programming tool of the program file based on a format of the program file; selecting and determining the programming from at least one program description abstraction mode A program description abstract mode of tool type matching, each of the at least one program description abstract mode corresponds to a program file format, and has the ability to extract a program node description model from the program file of the corresponding format; And using the selected program description abstraction mode to extract the program node description model from the program file, wherein the program node description model is used to describe a reference relationship between various nodes in the program file.
  • the method when the method is executed on a client, the method may further include: sending the program node description model to a cloud processing device for the cloud processing device Distributed to at least one program runner.
  • the program node description model is described using a description language suitable for describing a capability of referring relationships between nodes in a program file.
  • the description language includes one of the following: OLE's Unified Architecture (Object Linking and Embedding (OLE) for Process Control-Unified Architecture (OPC-UA) address space format Description language; description language in JS Object Notation (JSON) format; and description language in eXtensible Markup Language (XML) format.
  • OLE's Unified Architecture Object Linking and Embedding (OLE) for Process Control-Unified Architecture (OPC-UA) address space format Description language
  • description language in JS Object Notation (JSON) format description language in eXtensible Markup Language (XML) format.
  • the program file is a program file of an automatic control system
  • the program runner is a programmable logic controller
  • a method for program file operation processing including: obtaining at least one program node description model from at least one cloud server, the program node description model being used to describe each node in the program file.
  • the reference relationship between the programs and a program file conversion unit that matches the program runner that runs the program file, based on the reference relationship between the at least one program node description model and the obtained at least one program node
  • the description model is converted into a program file executable by the program runner.
  • the method may further include: loading the converted program file to the program runner.
  • the program node description model is described using a description language suitable for describing a capability of referring relationships between nodes in a program file.
  • the description language includes one of the following description languages: a description language in an OPC-UA address space format; a description language in a JSON format; and a description language in an XML format.
  • the program file is a program file of an industrial control system
  • the program runner is a programmable logic controller
  • a program file writing and processing apparatus including: a programming tool type determination unit configured to determine a programming tool type of the program file based on a format of the program file; at least one program description abstraction unit, Each program description abstract unit corresponds to a program file format, and is configured to extract a program node description model from the program file in the corresponding format, wherein the program node description model is used to describe each node in the program file.
  • a reference relationship between the selection unit is configured to select, from at least one program description abstract unit, a program description abstract unit that matches the determined programming tool type, wherein the selected program description abstract unit is used to select from the program.
  • the program node description model is extracted from the file.
  • the program file writing and processing device when the program file writing and processing device is located on a client, the program file writing and processing device may further include: a sending unit configured to describe the program node description model Sending to the cloud processing device for distribution by the cloud processing device to at least one program runner.
  • the program description abstraction unit is an open cross-language interface.
  • a program file execution processing device including: a description model acquisition unit configured to acquire at least one program node description model from at least one cloud processing device, the program node description model being used for A reference relationship between various nodes in the program file; and a program file conversion unit that matches the program runner that runs the program file and is configured to describe the reference relationship between the various nodes in the model based on the obtained at least one program node And converting the obtained at least one program node description model into a program file executable by the program runner.
  • the program file execution processing device may further include a loading unit configured to load the converted program file to the program runner.
  • the program file conversion unit may be an open cross-language interface based on C ++.
  • a system for program file processing including: at least one program file writing processing device as described above; at least one program file execution processing device as described above; and at least one cloud processing device For storing a program node information description model sent by at least one program file writing processing device, and / or distributing the stored program node information description model to a request of the at least one program file running processing device to The at least one program file runs a processing device.
  • the at least one cloud processing device may be further configured to store real-time running data and historical running data obtained after at least one program runner executes the loaded program file.
  • the system may further include: at least one program file monitoring / debugging device configured to receive the real-time running data and historical running data from the at least one cloud processing device, And based on the received real-time running data and historical running data for monitoring and / or debugging.
  • at least one program file monitoring / debugging device configured to receive the real-time running data and historical running data from the at least one cloud processing device, And based on the received real-time running data and historical running data for monitoring and / or debugging.
  • the program file writing processing device, the program file running processing device, and the program file monitoring / debugging device are respectively located in at least one local terminal device.
  • the program file writing processing device, the program file running processing device, and the program file monitoring / debugging device are respectively located on the first, second, and third clients, And said first, second and third clients are web-based clients.
  • a computing device including: at least one processor; and a memory coupled to the at least one processor, configured to store instructions, when the instructions are executed by the at least one processor When the processor is caused to execute the method for program file writing processing as described above or the method for program running processing as described above.
  • a non-transitory machine-readable storage medium stores executable instructions that, when executed, cause the machine to perform the method for program file writing processing as described above.
  • the method for program execution processing as described above is executed.
  • a computer program including computer-executable instructions that, when executed, cause at least one processor to execute the method for program file writing processing as described above or as described above.
  • the described method for program execution processing is provided, including computer-executable instructions that, when executed, cause at least one processor to execute the method for program file writing processing as described above or as described above. The described method for program execution processing.
  • a computer program product is provided that is tangibly stored on a computer-readable medium and includes computer-executable instructions that, when executed, cause at least one process
  • the processor executes the method for program file writing processing as described above or the method for program execution processing as described above.
  • a program file written in a specific format prescribed by a provider is converted into a node that can be described by a universal description language and used to represent each node in the program file.
  • the program node description model of the reference relationship between them is then stored in the cloud server for the program runner to download and run, and when the program runner downloads and runs, it is converted based on the reference relationship between the nodes in the program node description model
  • Program files executable for the program runner thereby making it unnecessary to configure a plurality of different programming tools in the engineering station to write program code for program runners from different providers, thereby making the configuration of the engineering station simple.
  • FIG. 1 shows a block diagram of a system for program file processing according to an embodiment of the present disclosure
  • FIG. 2 shows a block diagram of a program file writing and processing apparatus according to an embodiment of the present disclosure
  • FIG. 3 illustrates a flowchart of a method for a program file writing process according to an embodiment of the present disclosure
  • FIG. 4 shows a block diagram of a program file execution processing device according to an embodiment of the present disclosure
  • FIG. 5 shows a flowchart of a method for program file execution processing according to an embodiment of the present disclosure
  • FIG. 6 shows a flowchart of a method for program file monitoring and debugging according to an embodiment of the present disclosure
  • FIG. 7 illustrates a schematic diagram of an operation process of a system for program file processing in an OPC-UA environment according to an embodiment of the present disclosure
  • FIG. 8 illustrates a block diagram of a computing device for a program file writing process according to the present disclosure
  • FIG. 9 shows a block diagram of a computing device for program file execution processing according to the present disclosure.
  • FIG. 10 illustrates a block diagram of a computing device for a program file storage process according to the present disclosure.
  • At least one program describes the abstract unit
  • the program file operation processing device sends a program file operation request to at least one cloud processing device
  • At least one cloud processing device returns at least one program node description model to the program file running processing device
  • the program runner feeds back real-time running data and historical running data to at least one cloud processing device
  • At least one cloud processing device stores real-time running data and historical running data in association with corresponding nodes in a program node description model
  • At least one cloud processing device receives program file operation monitoring and debugging requests from at least one program file monitoring / debugging device
  • At least one cloud processing device sends corresponding real-time running data and historical running data to at least one program file monitoring / debugging device
  • At least one program file monitoring / debugging device monitors and debugs based on the received real-time running data and historical running data
  • the term “including” and variations thereof mean open terms, meaning “including but not limited to.”
  • the term “based on” means “based at least in part on.”
  • the terms “one embodiment” and “an embodiment” mean “at least one embodiment.”
  • the term “another embodiment” means “at least one other embodiment.”
  • the terms “first”, “second”, etc. may refer to different or the same objects. Other definitions can be included below, either explicitly or implicitly. Unless the context clearly indicates otherwise, the definition of a term is consistent throughout the specification.
  • FIG. 1 illustrates a block diagram of a system for program file processing (hereinafter referred to as a program file processing system 10) according to an embodiment of the present disclosure.
  • the program file processing system 10 includes at least one program file writing processing device 110, at least one cloud processing device 120, and at least one program file execution processing device 130.
  • the program file processing system 10 may further include at least one program file monitoring / debugging device 140.
  • at least one programmer 20 and at least one program runner 30 are also shown.
  • the at least one program file writing processing device 110 obtains the program file that has been written from the at least one programmer 20.
  • the program file may be, for example, a program file prepared in accordance with a program file format specified by the provider using a programmer provided by various providers.
  • the program file may be a program file of an automatic control system.
  • the program file format prescribed by each provider is the same or different.
  • the program file may be written using an online system or an offline system, and preferably, written using an offline system.
  • obtaining a program file from at least one programmer 20 may be actively submitted by the programmer to at least one program file writing processing device 110, or may be sent to a request in response to at least one program file writing processing device 110 At least one program file writing and processing device 110.
  • the program file may be acquired in real time, or may be acquired and stored in advance.
  • At least one program file writing processing device 110 extracts a program node description model from the program file, and the program node description model is used to describe a reference relationship between various nodes in the program file.
  • the program node description model may be described by using a description language suitable for describing the ability of a reference relationship between nodes in a program file.
  • the description language may include one of the following description languages: a description language in an OPC-UA address space format; a description language in a JSON format; and a description language in an XML format.
  • Fig. 2 shows a block diagram of a program file writing processing device 110 according to an embodiment of the present disclosure.
  • the program file writing processing device 110 includes a program file type determination unit 111, a selection unit 113, and at least one program description abstraction unit 115.
  • the programming tool type determination unit 111 determines a programming tool type of the program file based on the format of the acquired program file.
  • the type of the programming tool of the program file may include, for example, a Continuous Function Chart (CFC) programmer, a Model.sys programmer, a LabVIEW programmer, a C ++ programmer, a Python programmer, and the like.
  • the selection unit 113 selects a program description abstraction unit that matches the determined programming tool type from at least one program description abstraction unit 115.
  • the selection unit 113 may select a program description abstraction unit that matches the determined programming tool type according to a pre-configured programming tool type-program description abstraction unit correspondence table.
  • the selection unit 113 may select a program description abstraction unit that matches the determined programming tool type according to other suitable ways in the art. Then, the selected program description abstraction unit 115 is used to extract a program node description model from the program file.
  • each program description abstraction unit corresponds to a program file format for extracting a program node description model from a program file of the corresponding format.
  • the program description abstraction unit may be an open cross-language interface, for example, it may be an interface / interface of an OPC-UA client for process control.
  • the program file writing and processing device 110 may be located in a cloud server, or may be located in a local terminal device.
  • the program file writing and processing device 110 may be a hardware module or a software module in a cloud server or a local terminal device.
  • the program file writing and processing device 110 may be a software module in a first client located on the local terminal device.
  • the first client may be a web-based client, and a user may use a browser to browse or access the client to perform a corresponding operation.
  • the program file writing and processing device 110 may further include a sending unit 117 for sending the extracted program node description model to at least one cloud processing device 120 for cloud
  • the processing device 120 is distributed to at least one program runner.
  • the sending unit 117 may send the extracted program node description model to the cloud processing device 120 in a wired or wireless manner.
  • the HTTP / GET protocol is used to send the extracted program node description model to the cloud processing. ⁇ 120 ⁇ Device 120.
  • the cloud processing device 120 may refer to any storage device located in the cloud, for example, any storage device located in a cloud server.
  • the program runner may be a PLC.
  • FIG. 3 shows a flowchart of a method for a program file writing process according to an embodiment of the present disclosure. The method shown in FIG. 3 is executed by a program file writing processing apparatus located in a local terminal device.
  • At S310 at least one program file writing processing device 110 receives a program file from at least one programmer 20.
  • a programming tool type of the program file is determined based on the format of the received program file. The operation of S320 is the same as that of the programming tool type determination unit 111 described above with reference to FIG. 2.
  • a program description abstract mode matching the determined programming tool type is selected from at least one program description abstract mode, and each of the at least one program description abstract mode corresponds to a program file format. , And has the ability to extract the program node description model from the program file of the corresponding format.
  • the operation of S330 is the same as that of the selection unit 113 described above with reference to FIG. 2.
  • a program node description model is extracted from the program file by using the selected program description abstraction mode.
  • the program description abstraction manner corresponds to the program description abstraction unit described in FIG. 2.
  • the extracted program node description model is sent to at least one cloud processing device 120.
  • the cloud processing device 120 may refer to any storage device located in the cloud, for example, any storage device located in a cloud server.
  • the operation of S350 is the same as that of the transmitting unit 117 described above with reference to FIG. 2.
  • the program file writing and processing device 110 may also be implemented in a cloud server.
  • the program file writing and processing device 110 does not include a sending unit 117, and accordingly, is used for program file writing and processing
  • the method also does not include the operation of the S350.
  • At least one cloud processing device 120 in the at least one cloud server After acquiring the program node description model of the program file, at least one cloud processing device 120 in the at least one cloud server stores the obtained program node description model, and when the program file execution processing device 130 needs to execute the program file execution processing, responds to The request of the program file execution processing device 130 sends the stored program node description model to the program file execution processing device 130. Then, the program file execution processing device 130 performs a conversion process on the received program node description model to convert a program file executable by the program runner 30 based on a reference relationship between each node in the program node description model.
  • FIG. 4 shows a block diagram of a program file execution processing device 130 according to an embodiment of the present disclosure.
  • the program file execution processing device 130 includes a description model acquisition unit 131.
  • the description model obtaining unit 131 is configured to obtain at least one program node description model from at least one cloud processing device 120 (for example, in at least one cloud server).
  • the program node description model is used to describe a reference relationship between various nodes in a program file.
  • the program file execution processing device 130 further includes a program file conversion unit 133 that matches a program runner that executes the program file.
  • the program file conversion unit 133 is configured to convert the obtained at least one program node description model into a program file executable by the program runner based on a reference relationship between each node in the obtained at least one program node description model.
  • the "transformation" process refers to converting at least one program node according to the format required by the corresponding program runner executable program file according to at least one program node description model and the reference relationship between each node.
  • the description model is converted into the corresponding executable program code.
  • the program file execution processing device 130 may include only a program file conversion unit 133 that matches a program runner that executes the program file. In this case, the program file execution processing device 130 corresponds to only one program runner. In other examples of the present disclosure, the program file execution processing device 130 may include a plurality of program file conversion units 133, each of which corresponds to a program runner. In this case, the program file execution processing device 130 may correspond to a plurality of program runners. Accordingly, the program file execution processing device 13 may include a program file conversion unit selector for determining a program file conversion unit for program file conversion based on a program runner that runs the program file.
  • the program file execution processing device 130 may further include a loading unit 135.
  • the loading unit 135 is configured to load the converted program file into a processing kernel of a program runner, so that the processing kernel runs the program file, thereby obtaining running data of the program file.
  • FIG. 5 shows a flowchart of a method for program file execution processing according to an embodiment of the present disclosure.
  • the program runner 30 sends a program file acquisition request to the program file execution processing device 130.
  • the program file execution processing device 130 sends a program file description model acquisition request to at least one cloud processing device 120 in S520.
  • the program file running processing device 130 may report to Any cloud processing device 120 sends a program file description model acquisition request.
  • at least one cloud processing device 120 returns at least one program node description model to the program file execution processing device 130.
  • the program node description model is used to describe a reference relationship between various nodes in a program file.
  • the program file execution processing system 10 may further include at least one monitoring / debugging device 140.
  • At least one monitoring / debugging device 140 is configured to receive the real-time running data and historical running data from at least one cloud processing device 120, and perform monitoring and / or debugging based on the received real-time running data and historical running data.
  • the at least one cloud processing device 120 is further configured to store real-time running data and historical running data obtained after the at least one program runner 30 executes the loaded program file.
  • FIG. 6 shows a flowchart of a method for program file monitoring and debugging according to an embodiment of the present disclosure.
  • the obtained real-time running data and historical running data are sent to at least one cloud processing device 120 via a wireless or wired manner.
  • real-time running data may be sent to at least one cloud processing device 120 via HTTP to be stored in a real-time running database
  • historical running data may be sent to at least one cloud processing device 120 via FTP to be stored in a historical running database.
  • the program runner 30 may also use other suitable protocols to send real-time running data and historical running data to at least one cloud processing device 120.
  • the at least one cloud processing device 120 stores real-time running data and historical running data in association with corresponding nodes in the program node description model.
  • At least one cloud processing device receives a program file operation monitoring and debugging request from at least one program file monitoring / debugging device 140 in S630, at S640, at least one cloud processing device 120 will correspondingly The real-time operation data and historical operation data are sent to at least one program file monitoring / debugging device 140. Then, at S650, at least one program file monitoring / debugging device 140 performs monitoring and debugging based on the received real-time running data and historical running data.
  • FIG. 7 is a schematic diagram illustrating an operation process of the program file processing system 10 according to an embodiment of the present disclosure in an OPC-UA environment.
  • the program file processing system 10 includes a program file writing processing device 110, a cloud processing device 120-1, 120-2, a program file operation processing device 130-1, 130-2, and a program file monitoring / debugging device. 140.
  • the numbers of the program file writing processing device, cloud processing device, program file operation processing device, and program program file monitoring / debugging device shown in FIG. 7 are merely examples, and in other examples, the program file writing processing
  • the number of the device, the cloud processing device, the program file operation processing device, and the program file monitoring / debugging device may be other appropriate numbers.
  • the programming tool type determining unit 111 determines the programming tool type of the program file based on the format of the acquired program file.
  • the file in FIG. 7 is a program written using a CFC programmer, and the programming tool type of the program file is CFC programmer.
  • the selection unit 113 selects a program description abstraction unit 115-2 that matches the CFC programmer from at least one program description abstraction unit 115.
  • the program description abstraction unit 115 is an interface / interface of the OPC-UA client 119.
  • the program description abstraction unit 115-2 is used to extract a program node description model from the program file.
  • the OPC-UA client 119 on the program file writing processing device 110 sends the extracted program node description model to the cloud processing device 120 for storage via the HTTP / GET protocol. It is used by the program running processing device 130 for subsequent downloading.
  • the program runner 30 In the program running phase, if the program runner 30 (for example, DCRT Runtime 30-1, Forte Runtime 30-2) needs to run a program file, the program runner 30 sends a program file acquisition request to the program file running processing device 130. After receiving the program file acquisition request, the program file execution processing device 130 sends a program file description model acquisition request to at least one cloud processing device via the OPC-UA client 119. In the OPC-UA environment, since the address space of OPC-UA is shared, and multiple cloud processing devices (that is, multiple cloud servers) maintain the same address space, the program file operation processing device 130 can send the information to any one The cloud processing device sends a program file description model acquisition request.
  • the program file operation processing device 130 can send the information to any one The cloud processing device sends a program file description model acquisition request.
  • the at least one cloud processing device 120 After receiving the program file description model acquisition request, the at least one cloud processing device 120 returns at least one program node description model to the program file execution processing device 130. Then, via the program file conversion unit 133-1 / 133-2 that matches the program runner 30 running the program file, based on the reference relationship between each node in the obtained at least one program node description model, The acquired at least one program node description model is converted into program files 50-1, 50-2 executable by the program runner. Next, the converted executable program file 50-1 / 50-2 is loaded into the program runner 30, for example, a processing kernel loaded into the program runner 30 for execution by the program runner 30, thereby generating a program Operating data.
  • the at least one monitoring / debugging device 140 sends a data acquisition request to the at least one cloud processing device 120 via the OPC-UA client 119. After receiving the data acquisition request, the at least one cloud processing device 120 sends the stored real-time running data and historical running data to the at least one monitoring / debugging device 140. After receiving the real-time running data and historical running data, the data receiver 70 in the processor core 60 of the at least one monitoring / debugging device 140 uses the view model 80 to convert the corresponding view 90 to provide the user with monitoring and / or debugging.
  • program file writing processing device 110 may be implemented by hardware, or may be implemented by software or a combination of hardware and software.
  • the program file writing processing device 110 may be implemented using a computing device.
  • FIG. 8 illustrates a block diagram of a computing device 800 for a program file writing process according to the present disclosure.
  • the computing device 800 may include a processor 810 that executes at least one computer-readable instruction (i.e., implemented in software form described above) stored or encoded in a computer-readable storage medium (i.e., memory 820) element).
  • computer-executable instructions are stored in the memory 820, which when executed causes at least one processor 810: determining a programming tool type of the program file based on the format of the program file; describing an abstract manner from the at least one program A program description abstraction mode that matches the determined programming tool type is selected in the program description abstraction mode.
  • Each of the at least one program description abstraction mode corresponds to a program file format, and has a program file extracted from the corresponding format. The capability of a program node description model; and extracting the program node description model from the program file using a selected program description abstraction manner, wherein the program node description model is used to describe each of the program files Reference relationship between nodes.
  • the program file execution processing device 130 may be implemented using a computing device.
  • FIG. 9 illustrates a block diagram of a computing device 800 for program file execution processing according to the present disclosure.
  • the computing device 900 may include a processor 910 that executes at least one computer-readable instruction stored in or encoded in a computer-readable storage medium (ie, the memory 920) (i.e., the above is implemented in software form) element).
  • computer-executable instructions are stored in the memory 920, which when executed causes the at least one processor 910 to obtain at least one program node description model from at least one cloud processing device, the program node description model being used to describe A reference relationship between each node in the program file; and a reference relationship between each node in the model based on the obtained at least one program node description via a program file conversion unit that matches the program runner that runs the program file And converting the obtained at least one program node description model into a program file executable by the program runner.
  • the cloud processing apparatus 120 may be implemented using a computing device.
  • FIG. 10 illustrates a block diagram of a computing device 1000 for cloud processing according to the present disclosure.
  • the computing device 1000 may include a processor 1010 that executes at least one computer-readable instruction stored in or encoded in a computer-readable storage medium (ie, the memory 1020) (ie, the above is implemented in software form). element).
  • computer-executable instructions are stored in the memory 1020, which when executed causes at least one processor 1010: to store a program node information description model sent by the at least one program file writing processing device, and / or a response Distributing the stored program node information description model to the at least one program file execution processing device upon request of the at least one program file execution processing device.
  • a non-transitory machine-readable medium may have machine-executable instructions (ie, the above-mentioned elements implemented in software form), which when executed by a machine, cause the machine to execute the various embodiments of the present disclosure in conjunction with FIGS. 1-7 Describes various operations and functions.
  • a computer program including computer-executable instructions that, when executed, cause at least one processor to execute each of the embodiments described above in connection with FIGS. 1-7 in various embodiments of the present disclosure. Operations and functions.
  • a computer program product including computer-executable instructions that, when executed, cause at least one processor to execute the various embodiments described above in conjunction with FIGS. 1-7 in various embodiments of the present disclosure.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Stored Programmes (AREA)

Abstract

本公开提供了用于程序文件编写和运行处理的方法、装置及系统,该系统包括程序文件编写处理装置、云端处理装置和程序文件运行处理装置。程序文件编写处理装置将按照提供商所规定的特定格式编写的程序文件转换为能够利用通用描述语言描述的用于表示该程序文件中的各个节点之间的引用关系的程序节点描述模型,然后存储在云端处理装置中以供程序运行器来下载运行,并且在程序运行器下载运行时,程序文件运行处理装置基于该程序节点描述模型中的各个节点之间的引用关系来转换为该程序运行器可执行的程序文件,以便由程序运行器来执行。

Description

用于程序文件编写和运行处理的方法及装置、系统 技术领域
本公开通常涉及自动化系统领域,更具体地,涉及用于程序文件编写和运行处理的方法及装置以及用于程序文件处理的系统。
背景技术
自动化系统提供商(比如,西门子、ABB和施耐德等)通常将编程工具(例如,编程软件STEP 7)和程序运行器(例如,可编程逻辑控制器(Programmable Logic Controller,PLC))一起提供给客户。通常而言,编程工具不能与来自不同提供商的程序运行器一起使用。这意味着,尽管来自不同提供商的程序运行器之间可以经由开源协议来进行通信,工程人员仍然需要在工程站中配置多种不同的编程工具(Engineering Tool)为来自不同提供商的程序运行器编写程序代码。
由此,在现有技术条件下,为了满足能够针对各种程序运行器(Runtime)实现程序代码编写,需要在工程站中配置多种不同的编程工具,然而有些来自不同提供商的编程工具并不能安装在同一台计算机上,从而使得难以对工程站进行配置。
另外,由于针对不同程序运行器的程序分布在工程站中的不同编程工具中,并且不同的编程工具使用彼此不兼容的文件格式,从而造成工程技术人员在进行程序编写时,需要了解所有程序的全局信息(比如,整体结构和逻辑),并且分别在不同的编程工具上进行程序编写。
此外,由于工程技术人员所编写的程序代码分布在不同的编程工具中,使得在进行程序调试时,需要在不同的编程工具之间频繁切换,从而为工程技术人员的工作带来许多不便。
而且,在现有技术中,当出于某些原因(例如,性能,可靠性,部署等),工程技术人员可能希望将程序从一个程序运行器迁移到另一程序运行器,或者使用新的程序运行器进行替换时,如果两个程序运行器来自不同 的提供商,则由于不能将程序从一种编程工具转换为另一种编程工具,工程技术人员需要重新编写程序。
另外,在现有技术中,一旦发生编程工具升级而对应的程序运行器未升级,则会发生编程工具的版本与程序运行器的版本不兼容的问题。
鉴于此,IEC发布了一系列标准,如IEC-61131-3和IEC-61499,以标准化不同PLC的编程语言,并将TC6XML标准定义为不同程序运行器提供商的通用文件格式。基于此,IEC希望所有提供商的编程工具都支持所有IEC61131编程语言,并使用TC6作为通用文件交换格式。
但是,尽管许多程序运行器提供商声称它们支持IEC61131,但它们的实现之间仍然存在一些差异。其原因在于,每个提供商在自己的实现方式中都具有自己的专有技术,他们不希望这部分技术能够在其他提供商所提供的程序运行器中运行。
为了对程序运行器提供商施加更多压力以遵循标准编程语言和文件格式,开源社区和一些公司提供严格遵循IEC标准的开源或免费解决方案(包括工程工具和运行时)。例如,Beremiz/CodeSys是IEC61131的开源/免费解决方案;4DIAC是IEC61499的开源解决方案。越来越多的用户(特别是对成本敏感的用户)现在利用这些免费工具开发他们的控制系统。虽然这些标准解决方案可以更容易地相互交换程序,但是安装,部署和调试对于工程技术人员来说仍然是一项繁重的工作。
对于对开源/免费解决方案没有信心的重要应用程序的用户,他们通常使用/编写特殊的程序转换器来在不同的程序运行器之间进行程序转换。这些类型的程序转换通常首先对一个提供商所提供的程序运行器中的程序进行解析并将其匹配到某个模式,然后将此模式编码为另一个提供商的程序格式。这是与不同程序运行器提供商合作的唯一可行解决方案。但是,经过上述转换后的程序通常与原有程序不完全相同,由此,为了保持与原有程序相同,工程技术人员需要付出很大的努力来进行代码修改。
发明内容
鉴于上述,本公开提供了程序文件处理方法,利用该程序文件处理方法,通过将按照提供商所规定的特定格式编写的程序文件转换为能够利用 通用描述语言描述的用于表示该程序文件中的各个节点之间的引用关系的程序节点描述模型,然后存储在云端服务器以供程序运行器来下载运行,并且在程序运行器下载运行时,基于该程序节点描述模型中的各个节点之间的引用关系来转换为该程序运行器可执行的程序文件,由此使得不必在工程站中配置多种不同的编程工具为来自不同提供商的程序运行器编写程序代码,从而使得工程站的配置变得简单。此外,利用该方法,也可以使得程序文件迁移变得更为简单和方便。
根据本公开的一个方面,提供了用于程序文件编写处理的方法,包括:基于程序文件的格式,确定所述程序文件的编程工具类型;从至少一个程序描述抽象方式中选择与所确定的编程工具类型匹配的程序描述抽象方式,所述至少一个程序描述抽象方式中的每个程序描述抽象方式对应一种程序文件格式,并且具有从对应格式的程序文件中抽取出程序节点描述模型的能力;以及利用所选择的程序描述抽象方式来从所述程序文件中抽取出所述程序节点描述模型,其中,所述程序节点描述模型用于描述所述程序文件中的各个节点之间的引用关系。
可选地,在上述方面的一个示例中,在所述方法在客户端上执行时,所述方法还可以包括:将所述程序节点描述模型发送给云端处理装置,以供所述云端处理装置分发给至少一个程序运行器。
可选地,在上述方面的一个示例中,所述程序节点描述模型采用适用于描述程序文件中的节点之间的引用关系的能力的描述语言来进行描述。
可选地,在上述方面的一个示例中,所述描述语言包括下述中的一种:OLE的统一架构(Object Linking and Embedding(OLE)for Process Control-Unified Architecture,OPC-UA)地址空间格式的描述语言;JS对象简谱(JavaScript Object Notation,JSON)格式的描述语言;和可扩展标记语言(eXtensible Markup Language,XML)格式的描述语言。
可选地,在上述方面的一个示例中,所述程序文件是自动控制系统的程序文件,以及所述程序运行器是可编程逻辑控制器。
根据本公开的另一方面,提供了用于程序文件运行处理的方法,包括:从至少一个云端服务器获取至少一个程序节点描述模型,所述程序节点描述模型用于描述程序文件中的各个节点之间的引用关系;以及经由与运行 程序文件的程序运行器匹配的程序文件转换单元,基于所获取的至少一个程序节点描述模型中的各个节点之间的引用关系,将所获取的至少一个程序节点描述模型转换为所述程序运行器可执行的程序文件。
可选地,在上述方面的一个示例中,所述方法还可以包括:将所述转换后的程序文件加载到所述程序运行器。
可选地,在上述方面的一个示例中,所述程序节点描述模型采用适用于描述程序文件中的节点之间的引用关系的能力的描述语言来进行描述。
可选地,在上述方面的一个示例中,所述描述语言包括下述描述语言中的一种:OPC-UA地址空间格式的描述语言;JSON格式的描述语言;和XML格式的描述语言。
可选地,在上述方面的一个示例中,所述程序文件是工业控制系统的程序文件,以及所述程序运行器是可编程逻辑控制器。
根据本公开的另一方面,提供了程序文件编写处理装置,包括:编程工具类型确定单元,被配置为基于程序文件的格式,确定所述程序文件的编程工具类型;至少一个程序描述抽象单元,每个程序描述抽象单元对应一种程序文件格式,被配置为从对应格式的程序文件中抽取出程序节点描述模型,其中,所述程序节点描述模型用于描述所述程序文件中的各个节点之间的引用关系,选择单元,被配置为从至少一个程序描述抽象单元中选择与所确定的编程工具类型匹配的程序描述抽象单元,其中,所选择的程序描述抽象单元被使用来从所述程序文件中抽取出所述程序节点描述模型。
可选地,在上述方面的一个示例中,在所述程序文件编写处理装置位于客户端上时,所述程序文件编写处理装置还可以包括:发送单元,被配置为将所述程序节点描述模型发送给云端处理装置,以供所述云端处理装置分发给至少一个程序运行器。
可选地,在上述方面的一个示例中,所述程序描述抽象单元是开放型跨语言接口。
根据本公开的另一方面,提供了程序文件运行处理装置,包括:描述模型获取单元,被配置为从至少一个云端处理装置器获取至少一个程序节点描述模型,所述程序节点描述模型用于描述程序文件中的各个节点之间 的引用关系;以及程序文件转换单元,与运行程序文件的程序运行器匹配,被配置为基于所获取的至少一个程序节点描述模型中的各个节点之间的引用关系,将所获取的至少一个程序节点描述模型转换为所述程序运行器可执行的程序文件。
可选地,在上述方面的一个示例中,所述程序文件运行处理装置还可以包括:加载单元,被配置为将所述转换后的程序文件加载到所述程序运行器。
可选地,在上述方面的一个示例中,所述程序文件转换单元可以是基于C++的开放型跨语言接口。
根据本公开的另一方面,提供了用于程序文件处理的系统,包括:至少一个如上所述的程序文件编写处理装置;至少一个如上所述的程序文件运行处理装置;以及至少一个云端处理装置,用于存储至少一个所述程序文件编写处理装置所发送的程序节点信息描述模型,和/或响应于所述至少一个程序文件运行处理装置的请求而将所存储的程序节点信息描述模型分发给所述至少一个程序文件运行处理装置。
可选地,在上述方面的一个示例中,所述至少一个云端处理装置还可以被配置为:存储至少一个程序运行器执行完所加载的程序文件后得到的实时运行数据以及历史运行数据。
可选地,在上述方面的一个示例中,所述系统还可以包括:至少一个程序文件监控/调试装置,被配置为从所述至少一个云端处理装置接收所述实时运行数据和历史运行数据,并且基于所接收的实时运行数据和历史运行数据来进行监控和/或调试。
可选地,在上述方面的一个示例中,所述程序文件编写处理装置、所述程序文件运行处理装置和所述程序文件监控/调试装置分别位于至少一个本地终端设备中。
可选地,在上述方面的一个示例中,所述程序文件编写处理装置、所述程序文件运行处理装置和所述程序文件监控/调试装置分别位于第一、第二和第三客户端上,以及所述一、第二和第三客户端是基于网页的客户端。
根据本公开的另一方面,提供了计算设备,包括:至少一个处理器;以及与所述至少一个处理器耦合的存储器,被配置为存储指令,当所述指 令被所述至少一个处理器执行时,使得所述处理器执行如上所述的用于程序文件编写处理的方法或者执行如上所述的用于程序运行处理的方法。
根据本公开的另一方面,提供了非暂时性机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如上所述的用于程序文件编写处理的方法或者执行如上所述的用于程序运行处理的方法。
根据本公开的另一方面,提供了计算机程序,包括计算机可执行指令,所述计算机可执行指令在被执行时使至少一个处理器执行如上所述的用于程序文件编写处理的方法或者执行如上所述的用于程序运行处理的方法。
根据本公开的另一方面,提供了计算机程序产品,所述计算机程序产品被有形地存储在计算机可读介质上并且包括计算机可执行指令,所述计算机可执行指令在被执行时使至少一个处理器执行如上所述的用于程序文件编写处理的方法或者执行如上所述的用于程序运行处理的方法。
利用本公开的程序文件编写处理方法以及程序文件运行处理方法,通过将按照提供商所规定的特定格式编写的程序文件转换为能够利用通用描述语言描述的用于表示该程序文件中的各个节点之间的引用关系的程序节点描述模型,然后存储在云端服务器以供程序运行器来下载运行,并且在程序运行器下载运行时,基于该程序节点描述模型中的各个节点之间的引用关系来转换为该程序运行器可执行的程序文件,由此使得不必在工程站中配置多种不同的编程工具为来自不同提供商的程序运行器编写程序代码,从而使得工程站的配置变得简单。
此外,利用本公开的程序文件编写处理方法以及程序文件运行处理方法,在需要进行程序文件迁移时,仅仅需要从该程序文件所对应的云端服务器中取出程序节点描述模型,然后基于该程序节点描述模型来转换为对应的可执行文件,从而使得程序文件迁移变得更为简单和方便。
附图说明
通过参照下面的附图,可以实现对于本公开内容的本质和优点的进一步理解。在附图中,类似组件或特征可以具有相同的附图标记。
图1示出了根据本公开的实施例的用于程序文件处理的系统的方框示意图;
图2示出了根据本公开的实施例的程序文件编写处理装置的方框示意图;
图3示出了根据本公开的实施例的用于程序文件编写处理的方法的流程图;
图4示出了根据本公开的实施例的程序文件运行处理装置的方框示意图;
图5示出了根据本公开的实施例的用于程序文件运行处理的方法的流程图;
图6示出了根据本公开的实施例的用于程序文件监控及调试的方法的流程图;
图7示出了根据本公开的实施例的用于程序文件处理的系统在OPC-UA环境下的操作过程的示意图;
图8示出了根据本公开的用于程序文件编写处理的计算设备的方框图;
图9示出了根据本公开的用于程序文件运行处理的计算设备的方框图;和
图10示出了根据本公开的用于程序文件存储处理的计算设备的方框图。
附图标记
10  程序文件处理系统
20  至少一个编程器
30  至少一个程序运行器
110 至少一个程序文件编写处理装置
120 至少一个云端处理装置
130 至少一个程序文件运行处理装置
140 至少一个程序文件监控/调试装置
111 编程工具类型确定单元
113 选择单元
115 至少一个程序描述抽象单元
117 发送单元
119 OPC-UA客户端
131 描述模型获取单元
133 程序文件转换单元
135 加载单元
115-1 model.sys程序描述抽象单元
115-2 CFC程序描述抽象单元
115-N 其它类型的程序描述抽象单元
50-1 DCRT程序代码
50-2 Forte程序代码
133-1 DCRT程序文件转换单元
133-2 FORte程序文件转换单元
60  数据提供器
70  内核
80  视图模型
90  视图
S300 程序文件编写处理过程
S310 将已编写程序文件发送到程序文件编写处理装置
S320 确定该程序文件的编程工具类型
S330 选择匹配的程序描述抽象方式
S340 使用所选择的程序描述抽象方式来抽取出程序节点描述模型
S350 将所抽取出的程序节点描述模型发送到云端处理装置
S500 程序文件运行处理过程
S510 程序运行器向程序文件运行处理装置发送程序文件运行请求
S520 程序文件运行处理装置向至少一个云端处理装置发送程序文件运行请求
S530 至少一个云端处理装置向程序文件运行处理装置返回至少一个程序节点描述模型
S540 使用与该程序运行器匹配的程序文件转换单元,将所获取的至少一个程序节点描述模型转换为该程序运行器可执行的程序文件
S550 将转换后的程序文件加载到该程序运行器中
S600 程序文件监控和调试过程
S610 程序运行器将实时运行数据和历史运行数据反馈给至少一个云端处理装置
S620 至少一个云端处理装置将实时运行数据和历史运行数据与程序节点描述模型中的对应节点相关联地存储
S630 至少一个云端处理装置从至少一个程序文件监控/调试装置接收程序文件运行监控及调试请求
S640 至少一个云端处理装置将对应的实时运行数据和历史运行数据发送给至少一个程序文件监控/调试装置
S650 至少一个程序文件监控/调试装置基于所接收的实时运行数据和历史运行数据进行监控和调试
800  计算设备
810  至少一个处理器
820  存储器
900  计算设备
910  至少一个处理器
920  存储器
1000 计算设备
1010 至少一个处理器
1020 存储器
具体实施方式
现在将参考示例实施方式讨论本文描述的主题。应该理解,讨论这些实施方式只是为了使得本领域技术人员能够更好地理解从而实现本文描述的主题,并非是对权利要求书中所阐述的保护范围、适用性或者示例的限制。可以在不脱离本公开内容的保护范围的情况下,对所讨论的元素的功能和排列进行改变。各个示例可以根据需要,省略、替代或者添加各种过程或组件。例如,所描述的方法可以按照与所描述的顺序不同的顺序来执行,以及各个步骤可以被添加、省略或者组合。另外,相对一些示例所描述的特征在其它例子中也可以进行组合。
如本文中使用的,术语“包括”及其变型表示开放的术语,含义是“包括但不限于”。术语“基于”表示“至少部分地基于”。术语“一个实施例”和“一实施例”表示“至少一个实施例”。术语“另一个实施例”表示“至少一个其他实施例”。术语“第一”、“第二”等可以指代不同的或相同的对象。下面可以包括其他的定义,无论是明确的还是隐含的。除非上下文中明确地指明,否则一个术语的定义在整个说明书中是一致的。
图1示出了根据本公开的实施例的用于程序文件处理的系统(下文中称为程序文件处理系统10)的方框示意图。
如图1所示,程序文件处理系统10包括至少一个程序文件编写处理装置110、至少一个云端处理装置120和至少一个程序文件运行处理装置130。此外,可选地,程序文件处理系统10还可以包括至少一个程序文件监控/调试装置140。另外,在图1中,还示出了至少一个编程器20和至少一个程序运行器30。
至少一个程序文件编写处理装置110从至少一个编程器20获取已经编写好的程序文件。所述程序文件例如可以是利用各种提供商所提供的编程器,按照该提供商所规定的程序文件格式编写好的程序文件。例如,所述程序文件可以是自动控制系统的程序文件。这里,各个提供商所规定的程序文件格式相同或者不同。在本公开中,所述程序文件可以是利用线上系统或线下系统编写的,优选地,利用线下系统编写。
在本公开中,从至少一个编程器20获取程序文件可以是由该编程器主动提交给至少一个程序文件编写处理装置110,也可以是响应于至少一个程序文件编写处理装置110的请求而发送给至少一个程序文件编写处理装置110。另外,程序文件可以是实时获取的,也可以是预先获取并存储的。
在获取到程序文件后,至少一个程序文件编写处理装置110从该程序文件中抽取出程序节点描述模型,所述程序节点描述模型用于描述该程序文件中的各个节点之间的引用关系。所述程序节点描述模型可以采用适用于描述程序文件中的节点之间的引用关系的能力的描述语言来进行描述。例如,所述描述语言可以包括下述描述语言中的一种:OPC-UA地址空间格式的描述语言;JSON格式的描述语言;和XML格式的描述语言。
图2示出了根据本公开的实施例的程序文件编写处理装置110的方框 示意图。如图2所示,程序文件编写处理装置110包括程序文件类型确定单元111、选择单元113和至少一个程序描述抽象单元115。
在从编程器20获取程序文件后,编程工具类型确定单元111基于所获取的程序文件的格式,确定该程序文件的编程工具类型。这里,程序文件的编程工具类型例如可以包括连续功能图(Continuous Function Chart,CFC)编程器、Model.sys编程器、LabVIEW编程器、C++编程器、Python编程器等。然后,选择单元113从至少一个程序描述抽象单元115中选择与所确定的编程工具类型匹配的程序描述抽象单元。例如,在本公开的一个示例中,选择单元113可以根据预先配置的编程工具类型-程序描述抽象单元对应表来选择与所确定的编程工具类型匹配的程序描述抽象单元。在本公开的其他示例中,选择单元113可以根据本领域中的其他合适方式来选择与所确定的编程工具类型匹配的程序描述抽象单元。然后,使用所选择的程序描述抽象单元115来从该程序文件中抽取出程序节点描述模型。
在本公开中,每个程序描述抽象单元对应一种程序文件格式,用于从对应格式的程序文件中抽取出程序节点描述模型。例如,程序描述抽象单元可以是开放型跨语言接口,例如,其可以是用于过程控制的OPC-UA客户端的接口/界面。
在本公开中,程序文件编写处理装置110可以位于云端服务器中,也可以位于本地终端设备中。比如,程序文件编写处理装置110可以是云端服务器或本地终端设备中的一个硬件模块或软件模块,例如,程序文件编写处理装置可以是位于本地终端设备上的第一客户端中的一个软件模块。该第一客户端可以是基于网页的客户端,用户可以利用浏览器来浏览或访问该客户端以进行相应的操作。
在程序文件编写处理装置110位于本地终端设备中时,程序文件编写处理装置110还可以包括发送单元117,用于将所抽取出的程序节点描述模型发送给至少一个云端处理装置120,以供云端处理装置120分发给至少一个程序运行器。例如,发送单元117可以采用有线或无线的方式来将所抽取出的程序节点描述模型发送给云端处理装置120,比如,采用HTTP/GET协议来将所抽取出的程序节点描述模型发送给云端处理装置120。云端处理装置120可以是指位于云端的任何存储装置,例如,位于云端服务器中的 任何存储装置。在本公开中,程序运行器可以是PLC。
图3示出了根据本公开的实施例的用于程序文件编写处理的方法的流程图。图3中示出的方法由位于本地终端设备的程序文件编写处理装置执行。
如图3所示,在S310,至少一个程序文件编写处理装置110从至少一个编程器20接收程序文件。接着,在S320,基于所接收的程序文件的格式,确定该程序文件的编程工具类型。S320的操作与上面参照图2描述的编程工具类型确定单元111的操作相同。
然后,在S330,从至少一个程序描述抽象方式中选择与所确定的编程工具类型匹配的程序描述抽象方式,所述至少一个程序描述抽象方式中的每个程序描述抽象方式对应一种程序文件格式,并且具有从对应格式的程序文件中抽取出程序节点描述模型的能力。S330的操作与上面参照图2描述的选择单元113的操作相同。
在选择出匹配的程序描述方式后,在S340,利用所选择的程序描述抽象方式来从程序文件中抽取出程序节点描述模型。这里,程序描述抽象方式对应于图2中描述的程序描述抽象单元。然后,在S350,将所抽取出的程序节点描述模型发送给至少一个云端处理装置120。云端处理装置120可以是指位于云端的任何存储装置,例如,位于云端服务器中的任何存储装置。S350的操作与上面参照图2描述的发送单元117的操作相同。
在本公开的另一示例中,程序文件编写处理装置110也可以是在云端服务器中实现,在这种情况,程序文件编写处理装置110不包括发送单元117,相应地,用于程序文件编写处理的方法也不包括S350的操作。
在获取程序文件的程序节点描述模型后,至少一个云端服务器中的至少一个云端处理装置120存储所获取的程序节点描述模型,并且在程序文件运行处理装置130需要执行程序文件运行处理时,响应于程序文件运行处理装置130的请求,将所存储的程序节点描述模型发送给程序文件运行处理装置130。然后,程序文件运行处理装置130对所接收的程序节点描述模型执行转换处理,以基于程序节点描述模型中的各个节点之间的引用关系,转换出程序运行器30可执行的程序文件。
图4示出了根据本公开的实施例的程序文件运行处理装置130的方框 示意图。
如图4所示,程序文件运行处理装置130包括描述模型获取单元131。描述模型获取单元131用于从(例如,至少一个云端服务器中的)至少一个云端处理装置120获取至少一个程序节点描述模型。如上所述,所述程序节点描述模型用于描述程序文件中的各个节点之间的引用关系。
程序文件运行处理装置130还包括与运行程序文件的程序运行器匹配程序文件转换单元133。程序文件转换单元133用于基于所获取的至少一个程序节点描述模型中的各个节点之间的引用关系,将所获取的至少一个程序节点描述模型转换为所述程序运行器可执行的程序文件。在本文中,“转换”过程是指根据至少一个程序节点描述模型中包含的节点以及各个节点之间的引用关系,按照对应程序运行器可执行的程序文件所要求的格式,将至少一个程序节点描述模型转换为对应的可运行程序代码。在本公开的一个示例中,程序文件运行处理装置130可以仅仅包括一个与运行程序文件的程序运行器匹配的程序文件转换单元133。在这种情况下,该程序文件运行处理装置130仅仅对应一个程序运行器。在本公开的其他示例中,程序文件运行处理装置130可以包括多个程序文件转换单元133,每个程序文件转换单元133对应一种程序运行器。在这种情况下,该程序文件运行处理装置130可以对应于多个程序运行器。相应地,程序文件运行处理装置13可以包括程序文件转换单元选择器,用于基于运行程序文件的程序运行器来确定用于程序文件转换的程序文件转换单元。
可选地,程序文件运行处理装置130还可以包括加载单元135。加载单元135用于将所述转换后的程序文件加载到程序运行器的处理内核,以由处理内核来运行该程序文件,从而得到程序文件的运行数据。
图5示出了根据本公开的实施例的用于程序文件运行处理的方法的流程图。
如图5所示,首先,在S510,在程序运行器30需要运行程序文件时,程序运行器30向程序文件运行处理装置130发送程序文件获取请求。在接收到程序文件获取请求后,在S520,程序文件运行处理装置130向至少一个云端处理装置120发送程序文件描述模型获取请求。例如,在OPC-UA环境下,由于OPC-UA的地址空间是共享的,多个云端处理装置(即,多 个云端服务器)维护的是同一个地址空间,所以程序文件运行处理装置130可以向任何一个云端处理装置120发送程序文件描述模型获取请求。在接收到程序文件描述模型获取请求后,在S530,至少一个云端处理装置120向程序文件运行处理装置130返回至少一个程序节点描述模型。所述程序节点描述模型用于描述程序文件中的各个节点之间的引用关系。
然后,在S540,在程序文件运行处理装置130处,经由与运行所述程序文件的程序运行器匹配的程序文件转换单元,基于所获取的至少一个程序节点描述模型中的各个节点之间的引用关系,将所获取的至少一个程序节点描述模型转换为程序运行器可执行的程序文件。然后,在S550,将所转换出的可执行程序文件加载到程序运行器30,例如,加载到程序运行器30的处理内核,以由程序运行器30来执行,由此生成程序运行数据。
此外,程序文件运行处理系统10还可以包括至少一个监控/调试装置140。至少一个监控/调试装置140用于从至少一个云端处理装置120接收所述实时运行数据和历史运行数据,并且基于所接收的实时运行数据和历史运行数据来进行监控和/或调试。相应地,至少一个云端处理装置120还用于:存储所述至少一个程序运行器30执行完所加载的程序文件后得到的实时运行数据以及历史运行数据。
图6示出了根据本公开的实施例的用于程序文件监控及调试的方法的流程图。
如图6所示,在S610,在程序运行器30运行完程序文件后,将所得到的实时运行数据和历史运行数据经由无线或有线的方式发送给至少一个云端处理装置120。例如,可以经由HTTP来将实时运行数据发送给至少一个云端处理装置120以存储到实时运行数据库中,以及经由FTP来将历史运行数据发送给至少一个云端处理装置120以存储到历史运行数据库中。要说明的是,程序运行器30也可以采用其他合适的协议来将实时运行数据和历史运行数据发送给至少一个云端处理装置120。然后,在S620,至少一个云端处理装置120将实时运行数据和历史运行数据与程序节点描述模型中的对应节点相关联地存储。
在如上针对运行数据进行存储后,如果在S630,至少一个云端处理装置从至少一个程序文件监控/调试装置140接收程序文件运行监控及调试请 求,则在S640,至少一个云端处理装置120将对应的实时运行数据和历史运行数据发送给至少一个程序文件监控/调试装置140。然后,在S650,至少一个程序文件监控/调试装置140基于所接收的实时运行数据和历史运行数据进行监控和调试。
图7示出了根据本公开的实施例的程序文件处理系统10在OPC-UA环境下的操作过程的示意图。
如图7所示,程序文件处理系统10包括程序文件编写处理装置110、云端处理装置120-1、120-2、程序文件运行处理装置130-1、130-2以及程序程序文件监控/调试装置140。这里要说明的是,图7中示出的程序文件编写处理装置、云端处理装置、程序文件运行处理装置以及程序程序文件监控/调试装置的数量仅仅是示例,在其他示例中,程序文件编写处理装置、云端处理装置、程序文件运行处理装置以及程序程序文件监控/调试装置的数量可以是其他合适的数量。
参见图7,在程序编写阶段,在编程器20已经编写好程序文件后,发送给程序文件编写处理装置110。然后,编程工具类型确定单元111基于所获取的程序文件的格式,确定该程序文件的编程工具类型,例如图7中的文件是利用CFC编程器编写的程序,则该程序文件的编程工具类型是CFC编程器。然后,选择单元113从至少一个程序描述抽象单元115中选择与CFC编程器匹配的程序描述抽象单元115-2。这里,程序描述抽象单元115是OPC-UA客户端119的接口/界面。然后,使用程序描述抽象单元115-2来从该程序文件中抽取出程序节点描述模型。在抽取出程序节点描述模型后,由程序文件编写处理装置110上的OPC-UA客户端119,经由HTTP/GET协议来将所抽取出的程序节点描述模型发送给云端处理装置120来进行存储,以供程序运行处理装置130后续下载使用。
在程序运行阶段,如果程序运行器30(比如,DCRT Runtime 30-1,ForteRuntime 30-2)需要运行程序文件,则程序运行器30向程序文件运行处理装置130发送程序文件获取请求。在接收到程序文件获取请求后,程序文件运行处理装置130经由OPC-UA客户端119向至少一个云端处理装置发送程序文件描述模型获取请求。在OPC-UA环境下,由于OPC-UA的地址空间是共享的,多个云端处理装置(即,多个云端服务器)维护的是同一 个地址空间,所以程序文件运行处理装置130可以向任何一个云端处理装置发送程序文件描述模型获取请求。在接收到程序文件描述模型获取请求后,至少一个云端处理装置120向程序文件运行处理装置130返回至少一个程序节点描述模型。然后,经由与运行所述程序文件的程序运行器30匹配的程序文件转换单元133-1/133-2,基于所获取的至少一个程序节点描述模型中的各个节点之间的引用关系,将所获取的至少一个程序节点描述模型转换为程序运行器可执行的程序文件50-1、50-2。接着,将所转换出的可执行程序文件50-1/50-2加载到程序运行器30,例如,加载到程序运行器30的处理内核,以由程序运行器30来执行,由此生成程序运行数据。
在程序监控/调试阶段,至少一个监控/调试装置140经由OPC-UA客户端119向至少一个云端处理装置120发送数据获取请求。在接收到数据获取请求后,至少一个云端处理装置120将所存储的实时运行数据和历史运行数据发送给至少一个监控/调试装置140。至少一个监控/调试装置140的处理器内核60中的数据接收器70接收到实时运行数据和历史运行数据后,利用视图模型80来转换为相应的视图90,以提供给用户进行监控和/或调试。
如上参照图1到图7,对根据本公开的程序文件编写处理方法、装置以及程序文件运行处理方法及装置的实施例进行了描述。上面的程序文件编写处理装置110、程序文件处理装置120和程序文件运行处理装置130可以采用硬件实现,也可以采用软件或者硬件和软件的组合来实现。
在本公开中,程序文件编写处理装置110可以利用计算设备实现。图8示出了根据本公开的用于程序文件编写处理的计算设备800的方框图。根据一个实施例,计算设备800可以包括处理器810,处理器810执行在计算机可读存储介质(即,存储器820)中存储或编码的至少一个计算机可读指令(即,上述以软件形式实现的元素)。
在一个实施例中,在存储器820中存储计算机可执行指令,其当执行时使得至少一个处理器810:基于程序文件的格式,确定所述程序文件的编程工具类型;从至少一个程序描述抽象方式中选择与所确定的编程工具类型匹配的程序描述抽象方式,所述至少一个程序描述抽象方式中的每个程序描述抽象方式对应一种程序文件格式,并且具有从对应格式的程序文件 中抽取出程序节点描述模型的能力;以及利用所选择的程序描述抽象方式来从所述程序文件中抽取出所述程序节点描述模型,其中,所述程序节点描述模型用于描述所述程序文件中的各个节点之间的引用关系。
应该理解,在存储器820中存储的计算机可执行指令当执行时使得至少一个处理器810进行本公开的各个实施例中以上结合图1-3描述的各种操作和功能。
在本公开中,程序文件运行处理装置130可以利用计算设备实现。图9示出了根据本公开的用于程序文件运行处理的计算设备800的方框图。根据一个实施例,计算设备900可以包括处理器910,处理器910执行在计算机可读存储介质(即,存储器920)中存储或编码的至少一个计算机可读指令(即,上述以软件形式实现的元素)。
在一个实施例中,在存储器920中存储计算机可执行指令,其当执行时使得至少一个处理器910:从至少一个云端处理装置获取至少一个程序节点描述模型,所述程序节点描述模型用于描述程序文件中的各个节点之间的引用关系;以及经由与运行所述程序文件的程序运行器匹配的程序文件转换单元,基于所获取的至少一个程序节点描述模型中的各个节点之间的引用关系,将所获取的至少一个程序节点描述模型转换为所述程序运行器可执行的程序文件。
应该理解,在存储器920中存储的计算机可执行指令当执行时使得至少一个处理器910进行本公开的各个实施例中以上结合图1、图4-7描述的各种操作和功能。
在本公开中,云端处理装置120可以利用计算设备实现。图10示出了根据本公开的用于云端处理的计算设备1000的方框图。根据一个实施例,计算设备1000可以包括处理器1010,处理器1010执行在计算机可读存储介质(即,存储器1020)中存储或编码的至少一个计算机可读指令(即,上述以软件形式实现的元素)。
在一个实施例中,在存储器1020中存储计算机可执行指令,其当执行时使得至少一个处理器1010:存储至少一个所述程序文件编写处理装置所发送的程序节点信息描述模型,和/或响应于所述至少一个程序文件运行处理装置的请求而将所存储的程序节点信息描述模型分发给所述至少一个程 序文件运行处理装置。
根据一个实施例,提供了一种非暂时性机器可读介质。该非暂时性机器可读介质可以具有机器可执行指令(即,上述以软件形式实现的元素),该指令当被机器执行时,使得机器执行本公开的各个实施例中以上结合图1-7描述的各种操作和功能。
根据一个实施例,提供了一种计算机程序,包括计算机可执行指令,所述计算机可执行指令在被执行时使至少一个处理器执行本公开的各个实施例中以上结合图1-7描述的各种操作和功能。
根据一个实施例,提供了一种计算机程序产品,包括计算机可执行指令,所述计算机可执行指令在被执行时使至少一个处理器执行本公开的各个实施例中以上结合图1-7描述的各种操作和功能。
上面结合附图阐述的具体实施方式描述了示例性实施例,但并不表示可以实现的或者落入权利要求书的保护范围的所有实施例。在整个本说明书中使用的术语“示例性”意味着“用作示例、实例或例示”,并不意味着比其它实施例“优选”或“具有优势”。出于提供对所描述技术的理解的目的,具体实施方式包括具体细节。然而,可以在没有这些具体细节的情况下实施这些技术。在一些实例中,为了避免对所描述的实施例的概念造成难以理解,公知的结构和装置以框图形式示出。
本公开内容的上述描述被提供来使得本领域任何普通技术人员能够实现或者使用本公开内容。对于本领域普通技术人员来说,对本公开内容进行的各种修改是显而易见的,并且,也可以在不脱离本公开内容的保护范围的情况下,将本文所定义的一般性原理应用于其它变型。因此,本公开内容并不限于本文所描述的示例和设计,而是与符合本文公开的原理和新颖性特征的最广范围相一致。

Claims (22)

  1. 用于程序文件编写处理的方法(S300),包括:
    基于程序文件的格式,确定(S320)所述程序文件的编程工具类型;
    从至少一个程序描述抽象方式中选择(S330)与所确定的编程工具类型匹配的程序描述抽象方式,所述至少一个程序描述抽象方式中的每个程序描述抽象方式对应一种程序文件格式,并且具有从对应格式的程序文件中抽取出程序节点描述模型的能力;以及
    利用(S340)所选择的程序描述抽象方式来从所述程序文件中抽取出所述程序节点描述模型,
    其中,所述程序节点描述模型用于描述所述程序文件中的各个节点之间的引用关系。
  2. 如权利要求1所述的方法(S300),其中,在所述方法在客户端上执行时,所述方法还包括:
    将所述程序节点描述模型发送(S350)给云端处理装置,以供所述云端处理装置分发给至少一个程序运行器。
  3. 用于程序文件运行处理的方法(S500),包括:
    从至少一个云端处理装置获取(S530)至少一个程序节点描述模型,所述程序节点描述模型用于描述程序文件中的各个节点之间的引用关系;以及
    经由与运行所述程序文件的程序运行器匹配的程序文件转换单元,基于所获取的至少一个程序节点描述模型中的各个节点之间的引用关系,将所获取的至少一个程序节点描述模型转换(S540)为所述程序运行器可执行的程序文件。
  4. 如权利要求3所述的方法,还包括:
    将所述转换后的程序文件加载(S550)到所述程序运行器的处理内核。
  5. 如权利要求1到4中任一所述的方法,其中,所述程序节点描述模型采用适用于描述程序文件中的节点之间的引用关系的能力的描述语言来进行描述。
  6. 如权利要求5所述的方法,其中,所述描述语言包括下述描述语言中的一种:
    OPC-UA地址空间格式的描述语言;
    JSON格式的描述语言;和
    XML格式的描述语言。
  7. 如权利要求1到4中任一所述的方法,其中,所述程序文件是自动控制系统的程序文件,以及所述程序运行器是可编程逻辑控制器。
  8. 程序文件编写处理装置(110),包括:
    编程工具类型确定单元(111),被配置为基于程序文件的格式,确定所述程序文件的编程工具类型;
    至少一个程序描述抽象单元(115),每个程序描述抽象单元对应一种程序文件格式,被配置为从对应格式的程序文件中抽取出程序节点描述模型,其中,所述程序节点描述模型用于描述所述程序文件中的各个节点之间的引用关系
    选择单元(113),被配置为从至少一个程序描述抽象单元中选择与所确定的编程工具类型匹配的程序描述抽象单元,
    其中,所选择的程序描述抽象单元(115)被使用来从所述程序文件中抽取出所述程序节点描述模型。
  9. 如权利要求8所述的程序文件编写处理装置(110),其中,在所述程序文件编写处理装置位于客户端上时,所述装置还包括:
    发送单元(117),被配置为将所述程序节点描述模型发送给云端处理装置,以供所述云端处理装置分发给至少一个程序运行器。
  10. 如权利要求8或9所述的程序文件编写处理装置(110),其中,所述程序描述抽象单元(115)是开放型跨语言接口。
  11. 程序文件运行处理装置(130),包括:
    描述模型获取单元(131),被配置为从至少一个云端处理装置获取至少一个程序节点描述模型,所述程序节点描述模型用于描述程序文件中的各个节点之间的引用关系;以及
    至少一个程序文件转换单元(133),与运行程序文件的程序运行器(30)匹配,被配置为基于所获取的至少一个程序节点描述模型中的各个节点之间的引用关系,将所获取的至少一个程序节点描述模型转换为所述程序运行器(30)可执行的程序文件。
  12. 如权利要求11所述的程序文件运行处理装置(130),还包括:
    加载单元(135),被配置为将所述转换后的程序文件加载到所述程序运行器(30)。
  13. 如权利要求11或12所述的程序文件运行处理装置(130),其中,所述程序文件转换单元(133)是基于C++的开放型跨语言接口。
  14. 用于程序文件处理的系统(10),包括:
    至少一个如权利要求8到10中任一所述的程序文件编写处理装置(110);
    至少一个如权利要求11到13中任一所述的程序文件运行处理装置(130);以及
    至少一个云端处理装置(120),被配置为存储至少一个所述程序文件编写处理装置(110)所发送的程序节点信息描述模型,和/或响应于所述至少一个程序文件运行处理装置(130)的请求而将所存储的程序节点信息描述模型分发给所述至少一个程序文件运行处理装置(130)。
  15. 如权利要求14所述的系统(10),其中,所述至少一个云端处理 装置(120)还被配置为:
    存储所述至少一个程序运行器(30)执行完所加载的程序文件后得到的实时运行数据以及历史运行数据。
  16. 如权利要求15所述的系统(10),还包括:
    至少一个程序文件监控/调试装置(140),被配置为从所述至少一个云端处理装置(120)接收所述实时运行数据和历史运行数据,并且基于所接收的实时运行数据和历史运行数据来进行监控和/或调试。
  17. 如权利要求14到16中任一所述的系统(10),其中,所述程序文件编写处理装置(110)、所述程序文件运行处理装置(130)和所述程序文件监控/调试装置(140)分别位于至少一个本地终端设备中。
  18. 如权利要求17所述的系统(10),其中,所述程序文件编写处理装置(110)、所述程序文件运行处理装置(130)和所述程序文件监控/调试装置(140)分别位于第一、第二和第三客户端上,以及所述一、第二和第三客户端是基于网页的客户端。
  19. 计算设备(700,800),包括:
    至少一个处理器(710,810);以及
    与所述至少一个处理器(710,810)耦合的存储器(720,820),用于存储指令,当所述指令被所述至少一个处理器(710,810)执行时,使得所述处理器(710,810)执行如权利要求1到7中任一所述的方法。
  20. 非暂时性机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如权利要求1到7中任一所述的方法。
  21. 计算机程序,包括计算机可执行指令,所述计算机可执行指令在被执行时使至少一个处理器执行根据权利要求1至7中任一项所述的方法。
  22. 计算机程序产品,所述计算机程序产品被有形地存储在计算机可读介质上并且包括计算机可执行指令,所述计算机可执行指令在被执行时使至少一个处理器执行根据权利要求1至7中任一项所述的方法。
PCT/CN2018/106190 2018-09-18 2018-09-18 用于程序文件编写和运行处理的方法及装置、系统 WO2020056585A1 (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/CN2018/106190 WO2020056585A1 (zh) 2018-09-18 2018-09-18 用于程序文件编写和运行处理的方法及装置、系统
EP18934020.1A EP3839729A4 (en) 2018-09-18 2018-09-18 METHOD, DEVICE AND SYSTEM FOR PROGRAM FILE EXECUTION AND WRITE PROCESSING
US17/276,917 US20210382454A1 (en) 2018-09-18 2018-09-18 Program file writing and running processing method, device and system
CN201880097040.9A CN112639730A (zh) 2018-09-18 2018-09-18 用于程序文件编写和运行处理的方法及装置、系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/106190 WO2020056585A1 (zh) 2018-09-18 2018-09-18 用于程序文件编写和运行处理的方法及装置、系统

Publications (1)

Publication Number Publication Date
WO2020056585A1 true WO2020056585A1 (zh) 2020-03-26

Family

ID=69888061

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/106190 WO2020056585A1 (zh) 2018-09-18 2018-09-18 用于程序文件编写和运行处理的方法及装置、系统

Country Status (4)

Country Link
US (1) US20210382454A1 (zh)
EP (1) EP3839729A4 (zh)
CN (1) CN112639730A (zh)
WO (1) WO2020056585A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115639997B (zh) * 2022-10-19 2023-10-03 慧之安信息技术股份有限公司 Json格式描述opc ua信息模型的方法和系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1556949A (zh) * 2001-09-24 2004-12-22 Զ���� 用于合作开发可编程控制器的程序码的方法和系统
CN102193802A (zh) * 2011-05-19 2011-09-21 浙江大学 具有同基类结构模型子集的模型转换方法
CN103593173A (zh) * 2012-10-29 2014-02-19 百度在线网络技术(北京)有限公司 一种应用程序的一体化开发系统、方法及装置
CN107704382A (zh) * 2017-09-07 2018-02-16 北京信息科技大学 面向Python的函数调用路径生成方法和系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6608638B1 (en) * 2000-02-07 2003-08-19 National Instruments Corporation System and method for configuring a programmable hardware instrument to perform measurement functions utilizing estimation of the hardware implentation and management of hardware resources
DE102005034168A1 (de) * 2005-07-21 2007-02-01 Siemens Ag Verfahren zum Bedienen und Beobachten eines Steuergeräts, hiermit korrespondierendes Bedien-/Beobachtungsgerät, Steuergerät sowie Maschine mit einem solchen Steuergerät und Verwendungen des Verfahrens sowie Datenspeichermedien
CN102081545A (zh) * 2011-01-07 2011-06-01 中国电子科技集团公司第十研究所 在嵌入式平台上实现软件通信架构的方法
US9886012B2 (en) * 2014-03-26 2018-02-06 Rockwell Automation Technologies, Inc. Component factory for human-machine interface migration to a cloud platform
US20180284755A1 (en) * 2016-05-09 2018-10-04 StrongForce IoT Portfolio 2016, LLC Methods and systems for data storage in an industrial internet of things data collection environment with large data sets
US10620999B2 (en) * 2017-11-08 2020-04-14 Western Digital Technologies, Inc Task scheduling through an operating system agnostic system abstraction layer from a top of the rack switch in a hyper converged infrastructure

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1556949A (zh) * 2001-09-24 2004-12-22 Զ���� 用于合作开发可编程控制器的程序码的方法和系统
CN102193802A (zh) * 2011-05-19 2011-09-21 浙江大学 具有同基类结构模型子集的模型转换方法
CN103593173A (zh) * 2012-10-29 2014-02-19 百度在线网络技术(北京)有限公司 一种应用程序的一体化开发系统、方法及装置
CN107704382A (zh) * 2017-09-07 2018-02-16 北京信息科技大学 面向Python的函数调用路径生成方法和系统

Also Published As

Publication number Publication date
EP3839729A1 (en) 2021-06-23
EP3839729A4 (en) 2022-04-20
CN112639730A (zh) 2021-04-09
US20210382454A1 (en) 2021-12-09

Similar Documents

Publication Publication Date Title
CN110752947B (zh) 一种k8s集群部署方法及装置,一种部署平台
US8584081B2 (en) Server side application integration framework
US10705511B2 (en) Abstraction layers for automation applications
CN110114760B (zh) Rpc变换处理系统以及rpc变换方法
EP3654123B1 (en) Method of comissioning a field device in an industrial system network
CN111064626B (zh) 配置更新方法、装置、服务器及可读存储介质
US9853925B2 (en) Automatic transformation of messages between service versions
US20170262263A1 (en) Process and system for the generation of an operating program in the form of a mobile application that is capable of operating on a mobile device
WO2019027597A1 (en) WORKFLOW MANAGEMENT FRAMEWORK
WO2020056585A1 (zh) 用于程序文件编写和运行处理的方法及装置、系统
CN113419818A (zh) 基础组件部署方法、装置、服务器及存储介质
CN112463251A (zh) 一种uliweb框架配置热发布的方法和装置
EP2942711B1 (en) Dynamic generation of proxy connections
CN116095111A (zh) 数据采集设备的配置方法、装置以及物联网平台服务器
US20060265494A1 (en) Home network simulation system and method
JP2014032687A (ja) 統合管理装置、制御方法及びプログラム
KR102131669B1 (ko) 데이터 연계 시스템
Lopes et al. Development of a library for clients of ONVIF video cameras: challenges and solutions
CN109995711B (zh) 智能机器人的应用开发方法、装置、终端设备及介质
CN113791819A (zh) 接口文档生成方法和装置、存储介质、电子设备
KR102046919B1 (ko) 미들웨어 장치
CN110618814A (zh) 数据可视化方法、装置、电子设备及计算机可读存储介质
CN113608744B (zh) 一种用于执行分布式编译的环境构建单元的建立方法及分布式编译系统
CN113568755B (zh) 一种分布式编译系统及分布式编译方法
KR101888792B1 (ko) 데이터 통신 방법 및 이를 포함하는 시스템

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18934020

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2018934020

Country of ref document: EP

Effective date: 20210419