WO2013068023A1 - Arrangement and method for distributing a control system engineering tool and/or a control application software - Google Patents

Arrangement and method for distributing a control system engineering tool and/or a control application software Download PDF

Info

Publication number
WO2013068023A1
WO2013068023A1 PCT/EP2011/005642 EP2011005642W WO2013068023A1 WO 2013068023 A1 WO2013068023 A1 WO 2013068023A1 EP 2011005642 W EP2011005642 W EP 2011005642W WO 2013068023 A1 WO2013068023 A1 WO 2013068023A1
Authority
WO
WIPO (PCT)
Prior art keywords
group
storage space
local storage
control system
application software
Prior art date
Application number
PCT/EP2011/005642
Other languages
French (fr)
Inventor
Rainer Drath
Original Assignee
Abb Technology Ag
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 Abb Technology Ag filed Critical Abb Technology Ag
Priority to PCT/EP2011/005642 priority Critical patent/WO2013068023A1/en
Publication of WO2013068023A1 publication Critical patent/WO2013068023A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Definitions

  • the invention relates to an arrangement and a method for distributing one or multiple control system engineering tools and/or control application software to a first and at least one further processing device or group of processing devices.
  • control system engineering plays a role in different industry sectors, such as process industry like pharmaceutical and chemical industry, or manufacturing industry or mineral and oil and gas industry.
  • control system engineering is used for all kinds of activities which are related to the designing, verification and validation, implementation and testing of a control system for a technical system used in these industry sectors, where the technical system may be a technical installation, an industrial plant or an industrial process.
  • the control system comprises at least one industrial control device, at least one sensor and at least one actuator, where the control device receives measurements taken by the at least one sensor from the technical system and determines based on these measurements and, if applicable, based on further information suitable actions of the at least one actuator to regulate the behaviour of the technical system.
  • Control system engineering usually requires the use of advanced control system engineering tools in the form of software products with complex functionalities, e.g. RobotStudio for programming robots, CoDeSys for programming programmable logic controllers (PLCs), Function Designer for programming ABB's AC800M controllers or Fieldbus Builder for configuring field devices. It may also involve different engineers which stepwise design and commission different domains of the industrial plant or industrial process. Hence, different engineering software may be used by different groups and persons. The development of such complex software and the distribution, installation, maintenance and service of it requires high efforts.
  • control application software being for example an executable and/or configuration data which is to be loaded onto the above described industrial control device, or being a HMI (human machine interface) related software which allows displaying control relevant data.
  • Typical industrial control devices are for example programmable logic controllers (PLC), controllers of a distributed control system (DCS), robot controllers for industrial robots, embedded controllers for manufacturing equipment, industrial PCs (IPCs), intelligent devices like field bus devices or controllers of a supervisory control and data acquisition (SCADA) system.
  • PLC programmable logic controllers
  • DCS distributed control system
  • IPCs intelligent devices like field bus devices or controllers of a supervisory control and data acquisition
  • SCADA supervisory control and data acquisition
  • a control system engineering software X containing a control system engineering tool is delivered to each of the illustrated three customers, customerl , customer2 and customer3 on a storage medium, such as the depicted CD 2.
  • a storage medium such as the depicted CD 2.
  • each customer installs the control system engineering software X on his respective computer device PC1 , PC2 or PC3.
  • individual configurations of the control system engineering software X1 , X2 and X3, respectively, are generated.
  • WSDL Web Services Description Language
  • one controller of the industrial control system acts as a master and interacts with the other controllers on the network in order to synchronize or update them based at least in part on resources maintained by the master, where the resources are memory, processor bandwidth, programs, variables or configurations.
  • the web service component maintains one or more lists of resources, such as logic programs and firmware revisions, associated with one or more controllers in the network. If a change in logic programs or firmware revisions is detected, the web service component can distribute the corresponding resources to the controllers in accordance with the lists.
  • control system engineering software requires high effort and provision of a considerable number of installation alternatives due to differing customizations.
  • software updates usually requires customer interaction. This may simply mean the basic interaction between installation program and user, but it may also mean that the installation process requires that specific configuration parameters need to be chosen repeatedly for each software update. If software bugs are detected, the distribution of a new software release follows the same procedures with the same disadvantages.
  • the vendor does not have access to the customized installation of the control system engineering tool in the customer's personal environment. In case of software installations on a remotely accessible server, a permanent, reliable and broadband online connection to the server is required.
  • control application software a direct connection between the industrial control device and the computer device which stores the output of the control system engineering tool is required.
  • the problem solved by this invention is to provide an arrangement and method for distributing a control system engineering tool and/or a control application software with which the above named drawbacks are overcome.
  • cloud based storage has become more and more popular.
  • Different vendors and their cloud storage solutions as for example DropBox, Microsoft with Live Sync, Apple with iDrive and Google with GDrive, provide cloud storage that allows storage of data, e.g.
  • cloud storage documents or photos, on one or more servers, where the storage servers are not individually visible to the user.
  • the user just sees "the cloud storage” as his storage medium and connects to it via an Internet based network connection.
  • the stored data is permanently synchronized with a local folder on the personal computer or computers of each user.
  • the principle of cloud storage is illustrated by Fig. 3.
  • Each user has access to only his personally assigned space, Spacel to Space3, in the cloud storage.
  • Specific synchronization software in the following called cloud software, is installed on each individual computer device, PC1 to PC3, to permanently perform the synchronization process in the background between one or more designated folders on the respective computer device PC1 , PC2 or PC3 and the corresponding space in the cloud storage, Spacel , Space2 or Space3, respectively.
  • the synchronization is performed whenever the respective computer device has online access via communication line 5 to the cloud storage.
  • a useful feature of cloud storage is the possibility to share files or folders to other users across different operating systems and across firewalls. Cloud storage not only works on computer devices as personal computers (PC) but also on mobile devices like tablet PCs or mobile phones.
  • cloud storage solutions provide versioning functionality for individual data files which allows to restore data from older file versions and to track changes between files.
  • DriverUpdate identifies whether a driver software on the PC needs updating or whether parts of the driver software are missing, identifies the proper executable file for the respective operating system and automatically starts downloading and installing the driver update or missing part.
  • Portable software is a type of software that is executable on a computer device without needing to be installed on the computer device.
  • Portable software contains all required code directly and does not need to merge with the operating system. It may for example be stored on a memory stick and can be executed directly from the memory stick on every computer device it is inserted into, provided the computer device has the required operating system.
  • the concept of portable software is common in operating systems like MacOS or Unix and is nowadays extended to Microsoft Windows as well.
  • the arrangement for distributing a control system engineering tool and/or a control application software to a first and at least one further processing device or group of processing devices comprises a cloud storage containing a first and at least one further virtual storage spaces.
  • the cloud storage is arranged to copy the control system engineering tool and/or the control application software into the first and the at least one further virtual storage spaces.
  • at least one synchronization unit is arranged to establish a communication link between the first virtual storage space and a first local storage space or first group of local storage spaces contained in the first processing device or first group of processing devices, respectively, as soon as a first communication connection is established between the cloud storage and the first processing device or first group of processing devices; and to establish a communication link between the at least one further virtual storage space and at least one further local storage space or at least one further group of local storage spaces contained in the at least one further processing device or at least one further group of processing devices, respectively, as soon as at least one further communication connection is established between the cloud storage and the at least one further processing device or at least one further group of processing devices.
  • the synchronization unit is arranged to compare the contents of the first local storage space or first group of local storage spaces with the contents of the first virtual storage space; and to compare the contents of the at least one further local storage space or at least one further group of local storage spaces with the contents of the at least one further virtual storage space.
  • the first and/or the at least one further virtual storage space contains additional and/or more recent data files compared to the corresponding first and/or at least one further local storage space or group of storage spaces, respectively, where the data files belong to the control system engineering tool and/or the control application software
  • the synchronization unit is arranged to automatically start a copy process of the additional and/or more recent data files to the first and/or the at least one further local storage space or group of local storage spaces, respectively.
  • the method according to the invention comprises the steps of
  • the first and/or the at least one further virtual storage space contains additional or more recent data files compared to the corresponding first and/or at least one further local storage space or group of local storage spaces, respectively, where the data files belong to the control system engineering tool and/or the control application software, to automatically starting a copy process of the additional or more recent data files to the first and/or the at least one further local storage space or group of local storage spaces, respectively.
  • the provider of a control system engineering tool and/or of a control application software distributes the respective software product via individually allocated, virtual storage spaces in a cloud storage, where each virtual storage space is allocated to a local storage space on a particular customer device or to a group of local storage spaces, with each member of the group of local storage spaces being part of one corresponding member of a group of customer devices, called processing devices.
  • Each virtual storage space is assigned to a specific customer or to a specific software user, i.e. no third party has generally access to the virtual storage spaces.
  • the provider of the control system engineering tool and/or control application software uses the virtual storage spaces as a container for providing the latest suitable version or the latest suitable update of the respective software product to a particular customer, by transferring the latest suitable version or update into the virtual storage space assigned to the particular customer.
  • a synchronization unit automatically checks whether updated and thereby more recent data files are present on the virtual storage space. If so, the more recent data files are copied into the local storage space or group of local storage spaces of the customer and are thereby available for being used and executed by the customer. This procedure can be performed individually for each customer, i.e. each virtual storage space may contain a different configuration of a specific control system engineering tool or control application software.
  • the cloud storage is arranged to copy the control system engineering tool and/or the control application software into the first and the at least one further virtual storage spaces simultaneously.
  • this solution provides the fastest way to achieve it.
  • the cloud storage is arranged to copy the control system engineering tool and/or the control application software into the first and the at least one further virtual storage spaces as soon as an updated version of the control system engineering tool and/or the control application software is available, i.e. on the side of the software provider or developer, the process for keeping the virtual storage spaces updated is automated so that always the latest and most up-to-date version of the respective software product is present.
  • the cloud storage is arranged to copy an individualized version of the control system engineering tool and/or the control application software into the corresponding first and/or at least one further virtual storage space. Combining the last two embodiments results in a solution where the customer is always automatically provided with the latest, individualized update of the control system
  • the individualized version of the control system engineering tool and/or the control application software is adapted to the operating system or specific hardware of the first and/or the at least one further processing device or group of processing devices.
  • the individualized version of the control system engineering tool and/or the control application software contains a predetermined number and type of subcomponents of the control system engineering tool and/or the control application software.
  • the at least one synchronization unit is arranged to be executed individually on the first and/or the at least one further processing device or group of processing devices.
  • the at least one synchronization unit is arranged to be executed on a system containing the cloud storage.
  • the synchronization unit can be implemented to run either locally on the individual processing devices or centrally in the same system which contains the cloud storage. In the latter case, the synchronization unit will have to be linked with the individual virtual storage spaces in order to perform the synchronization to the respective local storage space or group of storage spaces individually.
  • the first and/or the at least one further local storage space or group of storage spaces contains individual data which were generated by the respective first and/or at least one further processing device or group of processing devices in connection with the execution of the control system engineering tool and/or the control application software.
  • the at least one synchronization unit is arranged to compare the contents of the first and/or at least one further local storage space or group of local storage spaces with the contents of the corresponding first and/or at least one further virtual storage space with respect to the individual data.
  • the at least one synchronization unit automatically starts a copy process of the additional and/or more recent individual data to the first and/or the at least one further virtual storage space, respectively.
  • This mechanism allows for the customer or user of the control system engineering tool or the control application software to use the assigned virtual storage space for saving data files belonging to the control system engineering tool or control application software, respectively.
  • These data files can be input files, such as configuration files, which are to be read by the control system engineering tool or control application software during execution, or they can be output files, such as historian values or error reports, generated by the control system engineering tool or control application software during execution.
  • the customer or user always has a synchronized copy of these individual data on the corresponding virtual storage space, which he may use to distribute the data from the virtual storage space to other processing devices.
  • Certain individual data, which may be of interest for the provider of the control system engineering tool or control application software, such as error reports, may be accessed by his personnel directly on the virtual storage space, provided that the customer or user of the virtual storage space allowed the access.
  • an analysing tool is arranged to retrieve a copy of the contents of the first and/or the at least one further virtual storage space and to analyse the contents, for example for inconsistencies. In this way it is for example possible to automatically detect when a combination of certain parts of the control system engineering tool or of the control application software is incompatible due to version conflicts.
  • Fig. 1 the known process of distributing control system engineering tools via hardcopy
  • Fig. 2 the known way of providing permanent remote access to an installation of a
  • Fig. 3 the known way of using cloud storage for permanently synchronized storing of files
  • Fig. 4 a first embodiment of the arrangement and method according to the invention
  • Fig. 5 a second embodiment of the arrangement and method according to the invention.
  • Fig. 4 shows a cloud storage 9 assigned to or even operated by a developer and provider of a control application software X.
  • the control application software X is intended for industrial control devices in process automation systems.
  • Three different customers, userl , user2 and user3, have purchased the control application software X and installed individualized versions of it, X1 to X2, in their respective process automation system on several industrial control devices, i.e. on a group of processing devices, PLC1 , PLC2 and PLC3.
  • PLC1 , PLC2 and PLC3 For each customer, userl to user3, an individually assigned virtual storage space, 6a to 6c, is arranged in the cloud storage 9, where only the customer himself and the provider have access to.
  • a configuration unit 1 individualized the control application software X for each customer, userl to user3, by configuring the software depending on customer specific parameters, for example in order to take into account the operating system and/or specific hardware of the processing devices used in the respective group of processing devices, PLC1 to PLC3, and in order to deliver to each customer only those subcomponents of the software which he requires.
  • the individualized versions of the control application software, X1 to X3 are then transferred into the virtual storage spaces, 6a to 6c, corresponding to the respective customer.
  • each processing device in the respective groups of processing devices, PLC1 to PLC3, contains a synchronization unit, 8a to 8c, which has access to a corresponding local storage space, 7a to 7c, installed on each of the processing devices.
  • a communication connection 5b usually an Internet connection
  • the synchronization unit 8b in the processing device establishes a communication link between its assigned local storage space 7b and the corresponding virtual storage space 6b in the cloud space 9.
  • the synchronization unit 8b compares the contents of the two storage spaces, 7b and 6b, and recognizes that the virtual storage space 6b contains a more recent version of the individualized control application software X2. As a result, it starts to copy or download the data files belonging to the individualized control application software X2 from the virtual storage space 6b to the corresponding local storage space 7b.
  • the copy process may be performed silently or - if the customer user2 prefers to be involved in the updating process - by involving a dialogue with the customer.
  • synchronization unit 8b Further modifications and options for the operation of synchronization unit 8b are available, such as for example the possibilities to disable the automatic downloading function or to adjust the maximum bandwidth of the network load for the communication link between virtual and local storage space or to only provide time limited access to the cloud storage 9. It is possible that only updated single data files are placed by the provider on the virtual storage space for downloading, in order to minimize the traffic on the communication link, or that always the whole software package with all data files is updated.
  • the synchronization unit could be arranged to perform the comparing and downloading only once, after the communication connection to the cloud storage has newly been established, or repeatedly as long as the connection is alive.
  • the downloaded files could be used to overwrite existing files having the same names on the local storage space, or a separate copy in a separate folder could be generated.
  • Fig. 5 differs from Fig. 4 in that for each customer, userl to user3, only one processing device is allocated to a corresponding virtual storage space 6a to 6b in the cloud storage and that the processing devices are personal computers, PC1 to PC3. Further, the software to be distributed to the customers is a control system engineering tool X which is not individualized but installed in the same configuration on all processing devices, PC1 to PC3.
  • individual data, D1 to D3 are stored in each of the local storage spaces, 7a to 7c, where the individual data D1 to D3 are data files generated in connection with the execution of the control system engineering tool X on the particular processing device, PC1 to PC3, for example configuration files for configuring the way the execution of certain subcomponents of the control system engineering tool X is performed, or input files to or output files from the control system engineering tool X.
  • the individual data D1 to D3 are data files generated in connection with the execution of the control system engineering tool X on the particular processing device, PC1 to PC3, for example configuration files for configuring the way the execution of certain subcomponents of the control system engineering tool X is performed, or input files to or output files from the control system engineering tool X.
  • synchronization unit 8c starts comparing the contents of the virtual storage space 6c with the contents of the local storage space 7c and recognizes, that the virtual storage space 6c contains data files belonging to the control system engineering tool X which have a more recent date than those in the local storage space 7c and that the individual data D3 on the local storage space 7c have been updated.
  • the synchronization unit 8c downloads the more recent data files from the virtual storage space 6c to the local storage space 7c, and uploads the individual data D3 in the opposite direction.
  • the storage of individual data, D1 to D3, on the virtual storage spaces, 6a to 6c, may also be used by the respective customer, userl to user3, to share the data with third parties by giving them access to the virtual storage space, where a third party could for example be the provider's service team. If the customer user3 allowed for the provider to have access to the individual data D3 on the virtual storage space 6c, it becomes possible that in case of performance problems of the control system engineering tool, the provider uses the individual data D3 to analyze the situation by an analysing unit 10.
  • the analysing unit 10 may then either give advise to user3 for how to improve the situation or it may even initiate an adaption and optimization of the control system engineering tool to the customer's needs and replace the tool X in the virtual storage space 6c by an individualized version of the tool which is then automatically downloaded to and installed on the processing device PC3 the next time synchronization unit 8c compares the virtual and the local storage spaces.
  • synchronization unit 8c can again be configured according to different options, as explained with respect to Fig. 4.
  • a further option is that synchronization unit 8c allows for the restoration of previous versions of the control system engineering tool X and of individual data D3.
  • synchronization unit 8c may manage the simultaneous accessing to the control system engineering tool X and/or the individual data D3 by both the user3 and the provider. For example, it could be arranged for check-in and check-out functionality in order to prevent that a file which is being used by one party is simultaneously changed by another party.

Abstract

An arrangement for distributing a control system engineering tool and/or a control application software, called control software, to a first (PC1/PLC1) and at least one further (PC2/PLC2, PC3/PLC3) processing device or group of processing devices comprises a cloud storage (9) containing a first (6a) and at least one further virtual storage spaces (6b, 6c), where the cloud storage (9) is arranged to copy the control software (X) into the first (6a) and the at least one further (6b, 6c) virtual storage spaces, and at least one synchronization unit (8a, 8b, 8c), which is arranged to establish a communication link between the virtual storage spaces and individually allocated local storage spaces or groups of local storage spaces (7a, 7b, 7c) contained in the processing devices or groups of processing devices, as soon as a corresponding communication connection (5a, 5b, 5c) is established between the cloud storage (9) and the respective processing device or group of processing devices. The synchronization unit is arranged to individually compare the contents of local storage spaces or groups of local storage spaces with the contents of the corresponding virtual storage spaces. In case that any of the virtual storage spaces (6a, 6b, 6c) contains additional and/or more recent data files belonging to the control software (X), the synchronization unit automatically starts a copy process of the additional and/or more recent data files to the corresponding local storage space or group of local storage spaces (7a, 7b, 7c), respectively.

Description

Arrangement and method for distributing a control system engineering tool and/or a control application software
Description
The invention relates to an arrangement and a method for distributing one or multiple control system engineering tools and/or control application software to a first and at least one further processing device or group of processing devices.
The area of control system engineering and control system engineering applications plays a role in different industry sectors, such as process industry like pharmaceutical and chemical industry, or manufacturing industry or mineral and oil and gas industry. The term control system engineering is used for all kinds of activities which are related to the designing, verification and validation, implementation and testing of a control system for a technical system used in these industry sectors, where the technical system may be a technical installation, an industrial plant or an industrial process. The control system comprises at least one industrial control device, at least one sensor and at least one actuator, where the control device receives measurements taken by the at least one sensor from the technical system and determines based on these measurements and, if applicable, based on further information suitable actions of the at least one actuator to regulate the behaviour of the technical system.
Control system engineering usually requires the use of advanced control system engineering tools in the form of software products with complex functionalities, e.g. RobotStudio for programming robots, CoDeSys for programming programmable logic controllers (PLCs), Function Designer for programming ABB's AC800M controllers or Fieldbus Builder for configuring field devices. It may also involve different engineers which stepwise design and commission different domains of the industrial plant or industrial process. Hence, different engineering software may be used by different groups and persons. The development of such complex software and the distribution, installation, maintenance and service of it requires high efforts.
The result of the engineering process, or in other words the output of the control system engineering tools, is a control application software being for example an executable and/or configuration data which is to be loaded onto the above described industrial control device, or being a HMI (human machine interface) related software which allows displaying control relevant data. Typical industrial control devices are for example programmable logic controllers (PLC), controllers of a distributed control system (DCS), robot controllers for industrial robots, embedded controllers for manufacturing equipment, industrial PCs (IPCs), intelligent devices like field bus devices or controllers of a supervisory control and data acquisition (SCADA) system. The control application software is usually compiled by the corresponding engineering tool and afterwards downloaded to the control device by means of a connection between the engineering tool and the control device. Typically, dozens or even hundreds of such control devices are nowadays part of a modern industrial plant, where several of these may be dedicated to control one of the same type of subsystem or subprocess of the technical system. When changes or amendments are made to the corresponding control application software, all of the affected control devices have to be updated individually which may become time-consuming and error-prone.
Commonly, vendors of engineering tools for the above mentioned control devices distribute their software products via hardcopies, such as CD or DVD, or via downloadable files to the customers, as is illustrated by Fig. 1. In Fig. 1 , a control system engineering software X containing a control system engineering tool is delivered to each of the illustrated three customers, customerl , customer2 and customer3 on a storage medium, such as the depicted CD 2. From the CD 2, each customer installs the control system engineering software X on his respective computer device PC1 , PC2 or PC3. Depending on the options chosen during the installation process, on the operating system used and on other aspects which define the run-time environment of the respective computer device, individual configurations of the control system engineering software X1 , X2 and X3, respectively, are generated.
As an alternative, it is known today to preinstall the software at designated PCs or servers on a customer's request. Then, the individual customized installations exist on the respective customer site only. Another known way to distribute a software product to a customer is to provide permanent remote access to an installation of the software on a server, where the server may be located on a customer site, on vendor site or on a third party site. This situation is illustrated by Fig. 2, where different users of the software have permanent access to the installation of the software via a permanent communication line 3, which can be a wireless or a wire-bound connection to the server. This technique helps to reduce the installation and maintenance effort, and reduces illegal use of the software. However, in order to ensure the appropriate availability and usability of the server, the connection needs to be reliable and should provide the necessary bandwidth.
Due to the fact that engineering tools as well as control application software are developed and improved continuously, new releases of such software containing new functionality and bug fixes are generated continuously as well. Updates of the engineering tools are distributed from the vendor to the customer in the same way as described above with respect to Figs. 1 and 2 and require in addition customer activity, since it is in the responsibility of the customer to install the latest updates in order to profit from the latest bug fixes and features.
User activities are also required in order to update control application software on industrial control devices, since it has to be downloaded individually to each and every of the control devices. An alternative is known from US 7,151 ,966 B1 , where a system for providing virtual and remote component interactions in a networked and distributed industrial control environment is described. One or more components of an industrial control system are defined as a web service. The other components of the industrial control system
communicate with the web service via a so called Web Services Description Language (WSDL) interface, where the interface facilitates control interactions between the web service and the other components. In one particular solution it is suggested that one controller of the industrial control system acts as a master and interacts with the other controllers on the network in order to synchronize or update them based at least in part on resources maintained by the master, where the resources are memory, processor bandwidth, programs, variables or configurations. In another solution, the web service component maintains one or more lists of resources, such as logic programs and firmware revisions, associated with one or more controllers in the network. If a change in logic programs or firmware revisions is detected, the web service component can distribute the corresponding resources to the controllers in accordance with the lists. As already mentioned above, the known solutions for distributing and updating control system engineering tools and control application software have different drawbacks. In particular, the installation of control system engineering software requires high effort and provision of a considerable number of installation alternatives due to differing customizations. In addition, the installation of software updates usually requires customer interaction. This may simply mean the basic interaction between installation program and user, but it may also mean that the installation process requires that specific configuration parameters need to be chosen repeatedly for each software update. If software bugs are detected, the distribution of a new software release follows the same procedures with the same disadvantages. The vendor does not have access to the customized installation of the control system engineering tool in the customer's personal environment. In case of software installations on a remotely accessible server, a permanent, reliable and broadband online connection to the server is required. For the installation of control application software, a direct connection between the industrial control device and the computer device which stores the output of the control system engineering tool is required.
Accordingly, the problem solved by this invention is to provide an arrangement and method for distributing a control system engineering tool and/or a control application software with which the above named drawbacks are overcome.
On solving the problem, the inventor recognized different developments and facts from the field of consumer software, which form the background of the present invention. These developments and facts are presented below.
Recently, cloud based storage has become more and more popular. Different vendors and their cloud storage solutions, as for example DropBox, Microsoft with Live Sync, Apple with iDrive and Google with GDrive, provide cloud storage that allows storage of data, e.g.
documents or photos, on one or more servers, where the storage servers are not individually visible to the user. The user just sees "the cloud storage" as his storage medium and connects to it via an Internet based network connection. The stored data is permanently synchronized with a local folder on the personal computer or computers of each user. The principle of cloud storage is illustrated by Fig. 3. Each user has access to only his personally assigned space, Spacel to Space3, in the cloud storage. Specific synchronization software, in the following called cloud software, is installed on each individual computer device, PC1 to PC3, to permanently perform the synchronization process in the background between one or more designated folders on the respective computer device PC1 , PC2 or PC3 and the corresponding space in the cloud storage, Spacel , Space2 or Space3, respectively. The synchronization is performed whenever the respective computer device has online access via communication line 5 to the cloud storage. A useful feature of cloud storage is the possibility to share files or folders to other users across different operating systems and across firewalls. Cloud storage not only works on computer devices as personal computers (PC) but also on mobile devices like tablet PCs or mobile phones. In addition, cloud storage solutions provide versioning functionality for individual data files which allows to restore data from older file versions and to track changes between files.
On the base of cloud storage, first solutions have emerged on the consumer market for automatic downloading and installation of predefined software components on target computer devices, such as the automatic updating of driver software on PCs provided under the name DriverUpdate by the company SlimWare Utilities. When a PC has online access to the cloud based database of SlimWare containing the latest versions of drivers, DriverUpdate identifies whether a driver software on the PC needs updating or whether parts of the driver software are missing, identifies the proper executable file for the respective operating system and automatically starts downloading and installing the driver update or missing part.
In this context it is interesting to note that on common operating systems, such as Microsoft Windows, the process of installing software requires an installation procedure that embeds the software in the operating system and merges it with existing other software. Such software cannot be moved, removed or deleted without a dedicated de-installation software and a reinstallation at another position.
In contrast to that, so called portable software is a type of software that is executable on a computer device without needing to be installed on the computer device. Portable software contains all required code directly and does not need to merge with the operating system. It may for example be stored on a memory stick and can be executed directly from the memory stick on every computer device it is inserted into, provided the computer device has the required operating system. The concept of portable software is common in operating systems like MacOS or Unix and is nowadays extended to Microsoft Windows as well.
Based on the known cloud storage concepts and in order to solve the above named drawbacks of current methods to distribute control system engineering tools and/or control application software, the invention suggests an arrangement and a method according to the independent claims. The arrangement for distributing a control system engineering tool and/or a control application software to a first and at least one further processing device or group of processing devices comprises a cloud storage containing a first and at least one further virtual storage spaces.
According to the invention, the cloud storage is arranged to copy the control system engineering tool and/or the control application software into the first and the at least one further virtual storage spaces. Further, at least one synchronization unit is arranged to establish a communication link between the first virtual storage space and a first local storage space or first group of local storage spaces contained in the first processing device or first group of processing devices, respectively, as soon as a first communication connection is established between the cloud storage and the first processing device or first group of processing devices; and to establish a communication link between the at least one further virtual storage space and at least one further local storage space or at least one further group of local storage spaces contained in the at least one further processing device or at least one further group of processing devices, respectively, as soon as at least one further communication connection is established between the cloud storage and the at least one further processing device or at least one further group of processing devices. The synchronization unit is arranged to compare the contents of the first local storage space or first group of local storage spaces with the contents of the first virtual storage space; and to compare the contents of the at least one further local storage space or at least one further group of local storage spaces with the contents of the at least one further virtual storage space. In case that the first and/or the at least one further virtual storage space contains additional and/or more recent data files compared to the corresponding first and/or at least one further local storage space or group of storage spaces, respectively, where the data files belong to the control system engineering tool and/or the control application software, the synchronization unit is arranged to automatically start a copy process of the additional and/or more recent data files to the first and/or the at least one further local storage space or group of local storage spaces, respectively.
The method according to the invention comprises the steps of
• copying the control system engineering tool and/or the control application software into the first and/or the at least one further virtual storage spaces,
• establishing a communication link between the first virtual storage space and a first local storage space or first group of local storage spaces contained in the first processing device or first group of processing devices, respectively, as soon as a first communication connection is established between the cloud storage and the first processing device or first group of processing devices,
• establishing a communication link between the at least one further virtual storage space and at least one further local storage space or at least one further group of local storage spaces contained in the at least one further processing device or in the at least one further group of processing devices, respectively, as soon as at least one further communication connection is established between the cloud storage and the at least one further processing device or at least one further group of processing devices,
• comparing the contents of the first local storage space or first group of local storage spaces with the contents of the first virtual storage space; and comparing the contents of the at least one further local storage space or at least one further group of local storage spaces with the contents of the at least one further virtual storage space,
• in case that the first and/or the at least one further virtual storage space contains additional or more recent data files compared to the corresponding first and/or at least one further local storage space or group of local storage spaces, respectively, where the data files belong to the control system engineering tool and/or the control application software, to automatically starting a copy process of the additional or more recent data files to the first and/or the at least one further local storage space or group of local storage spaces, respectively.
Accordingly, it is the main idea behind the invention that the provider of a control system engineering tool and/or of a control application software distributes the respective software product via individually allocated, virtual storage spaces in a cloud storage, where each virtual storage space is allocated to a local storage space on a particular customer device or to a group of local storage spaces, with each member of the group of local storage spaces being part of one corresponding member of a group of customer devices, called processing devices. Each virtual storage space is assigned to a specific customer or to a specific software user, i.e. no third party has generally access to the virtual storage spaces. The provider of the control system engineering tool and/or control application software uses the virtual storage spaces as a container for providing the latest suitable version or the latest suitable update of the respective software product to a particular customer, by transferring the latest suitable version or update into the virtual storage space assigned to the particular customer. As soon as the processing device or group of processing devices of this customer "goes online" and gets connected to the cloud storage via an Internet based network connection, a synchronization unit automatically checks whether updated and thereby more recent data files are present on the virtual storage space. If so, the more recent data files are copied into the local storage space or group of local storage spaces of the customer and are thereby available for being used and executed by the customer. This procedure can be performed individually for each customer, i.e. each virtual storage space may contain a different configuration of a specific control system engineering tool or control application software.
In this way, it is ensured that each customer gets his individual update of a control system engineering tool and/or of a control application software immediately and directly to his control engineering platform or group of platforms or to his industrial control device or group of control devices, respectively, without any need for the customers interaction. As a result, the software distribution is performed rapidly and in a customized way, which simplifies any proceedings between software provider and customer or user, such as software
maintenance and service.
In an embodiment of the invention, the cloud storage is arranged to copy the control system engineering tool and/or the control application software into the first and the at least one further virtual storage spaces simultaneously. In a situation where all customers or users are supposed to be provided with the same update and configuration of a control system engineering tool or where all industrial control devices are to be updated as quickly as possible to the same version of control application software, this solution provides the fastest way to achieve it.
In another embodiment of the invention, the cloud storage is arranged to copy the control system engineering tool and/or the control application software into the first and the at least one further virtual storage spaces as soon as an updated version of the control system engineering tool and/or the control application software is available, i.e. on the side of the software provider or developer, the process for keeping the virtual storage spaces updated is automated so that always the latest and most up-to-date version of the respective software product is present.
This could be connected with a further automatic individualization and personalized configuration of new updates depending on customer specific parameters, where the parameters may also be exchanged between software provider and customer via the cloud storage. In other words, in this embodiment, the cloud storage is arranged to copy an individualized version of the control system engineering tool and/or the control application software into the corresponding first and/or at least one further virtual storage space. Combining the last two embodiments results in a solution where the customer is always automatically provided with the latest, individualized update of the control system
engineering tool or the control application software, without any particular customer interaction. This reduces the software maintenance efforts on both the customer and the provider sides considerably, since the provider can trigger an update by just replacing the respective data files in the cloud storage without needing to specifically contact each customer and without needing to distribute the files by hardcopy. The customer does not need to either perform installation steps from a CD or to have a permanent, broadband connection to any server, as in the case of a remotely installed software. Instead, it is only required that his processing device or group of processing devices connects to the cloud storage from time to time, which nowadays is less and less of a problem since all processing devices are provided with Internet connection facilities.
In a development of the previous embodiment, the individualized version of the control system engineering tool and/or the control application software is adapted to the operating system or specific hardware of the first and/or the at least one further processing device or group of processing devices.
In another development of the previous embodiment, the individualized version of the control system engineering tool and/or the control application software contains a predetermined number and type of subcomponents of the control system engineering tool and/or the control application software.
In a specific embodiment of the invention, the at least one synchronization unit is arranged to be executed individually on the first and/or the at least one further processing device or group of processing devices. In an alternative embodiment, the at least one synchronization unit is arranged to be executed on a system containing the cloud storage. In other words, the synchronization unit can be implemented to run either locally on the individual processing devices or centrally in the same system which contains the cloud storage. In the latter case, the synchronization unit will have to be linked with the individual virtual storage spaces in order to perform the synchronization to the respective local storage space or group of storage spaces individually.
In a preferred embodiment of the invention, the first and/or the at least one further local storage space or group of storage spaces contains individual data which were generated by the respective first and/or at least one further processing device or group of processing devices in connection with the execution of the control system engineering tool and/or the control application software. In that case, the at least one synchronization unit is arranged to compare the contents of the first and/or at least one further local storage space or group of local storage spaces with the contents of the corresponding first and/or at least one further virtual storage space with respect to the individual data. If the first and/or the at least one further local storage space or group of local storage spaces contains additional and/or more recent individual data compared to the corresponding first and/or at least one further virtual storage space, respectively, the at least one synchronization unit automatically starts a copy process of the additional and/or more recent individual data to the first and/or the at least one further virtual storage space, respectively. This mechanism allows for the customer or user of the control system engineering tool or the control application software to use the assigned virtual storage space for saving data files belonging to the control system engineering tool or control application software, respectively. These data files can be input files, such as configuration files, which are to be read by the control system engineering tool or control application software during execution, or they can be output files, such as historian values or error reports, generated by the control system engineering tool or control application software during execution. As a result, the customer or user always has a synchronized copy of these individual data on the corresponding virtual storage space, which he may use to distribute the data from the virtual storage space to other processing devices. Certain individual data, which may be of interest for the provider of the control system engineering tool or control application software, such as error reports, may be accessed by his personnel directly on the virtual storage space, provided that the customer or user of the virtual storage space allowed the access.
In a further development of the preferred embodiment, an analysing tool is arranged to retrieve a copy of the contents of the first and/or the at least one further virtual storage space and to analyse the contents, for example for inconsistencies. In this way it is for example possible to automatically detect when a combination of certain parts of the control system engineering tool or of the control application software is incompatible due to version conflicts.
The invention and its embodiments will become apparent from the example and its embodiments described below in connection with the appended drawings which illustrate: Fig. 1 the known process of distributing control system engineering tools via hardcopy, Fig. 2 the known way of providing permanent remote access to an installation of a
control system engineering tool on a server,
Fig. 3 the known way of using cloud storage for permanently synchronized storing of files,
Fig. 4 a first embodiment of the arrangement and method according to the invention, Fig. 5 a second embodiment of the arrangement and method according to the invention.
Fig. 4 shows a cloud storage 9 assigned to or even operated by a developer and provider of a control application software X. The control application software X is intended for industrial control devices in process automation systems. Three different customers, userl , user2 and user3, have purchased the control application software X and installed individualized versions of it, X1 to X2, in their respective process automation system on several industrial control devices, i.e. on a group of processing devices, PLC1 , PLC2 and PLC3. For each customer, userl to user3, an individually assigned virtual storage space, 6a to 6c, is arranged in the cloud storage 9, where only the customer himself and the provider have access to.
In the situation depicted in Fig. 4, an updated version of the control application software X is available, which the provider intends to distribute to the different customers. The only thing he needs to do is to initiate the distribution process on the cloud storage 9. First, a configuration unit 1 individualized the control application software X for each customer, userl to user3, by configuring the software depending on customer specific parameters, for example in order to take into account the operating system and/or specific hardware of the processing devices used in the respective group of processing devices, PLC1 to PLC3, and in order to deliver to each customer only those subcomponents of the software which he requires. The individualized versions of the control application software, X1 to X3 are then transferred into the virtual storage spaces, 6a to 6c, corresponding to the respective customer.
On the customer side, each processing device in the respective groups of processing devices, PLC1 to PLC3, contains a synchronization unit, 8a to 8c, which has access to a corresponding local storage space, 7a to 7c, installed on each of the processing devices. It is assumed that a communication connection 5b, usually an Internet connection, is established between the cloud storage 9 and one of the processing devices of the second group of processing devices, PLC2. As soon as the communication connection 5b is up and running, the synchronization unit 8b in the processing device establishes a communication link between its assigned local storage space 7b and the corresponding virtual storage space 6b in the cloud space 9. Then, the synchronization unit 8b compares the contents of the two storage spaces, 7b and 6b, and recognizes that the virtual storage space 6b contains a more recent version of the individualized control application software X2. As a result, it starts to copy or download the data files belonging to the individualized control application software X2 from the virtual storage space 6b to the corresponding local storage space 7b. The copy process may be performed silently or - if the customer user2 prefers to be involved in the updating process - by involving a dialogue with the customer.
Further modifications and options for the operation of synchronization unit 8b are available, such as for example the possibilities to disable the automatic downloading function or to adjust the maximum bandwidth of the network load for the communication link between virtual and local storage space or to only provide time limited access to the cloud storage 9. It is possible that only updated single data files are placed by the provider on the virtual storage space for downloading, in order to minimize the traffic on the communication link, or that always the whole software package with all data files is updated. The synchronization unit could be arranged to perform the comparing and downloading only once, after the communication connection to the cloud storage has newly been established, or repeatedly as long as the connection is alive. The downloaded files could be used to overwrite existing files having the same names on the local storage space, or a separate copy in a separate folder could be generated. After downloading the updated version of the individualized control application software X2, it depends on the type of software whether an installation process is required on the processing device before the updated version is executable or whether the software could be executed directly, which is the case for portable software. In case that an installation process is required, this process could be started automatically after
downloading.
Fig. 5 differs from Fig. 4 in that for each customer, userl to user3, only one processing device is allocated to a corresponding virtual storage space 6a to 6b in the cloud storage and that the processing devices are personal computers, PC1 to PC3. Further, the software to be distributed to the customers is a control system engineering tool X which is not individualized but installed in the same configuration on all processing devices, PC1 to PC3. In addition to the control system engineering tool X, individual data, D1 to D3, are stored in each of the local storage spaces, 7a to 7c, where the individual data D1 to D3 are data files generated in connection with the execution of the control system engineering tool X on the particular processing device, PC1 to PC3, for example configuration files for configuring the way the execution of certain subcomponents of the control system engineering tool X is performed, or input files to or output files from the control system engineering tool X. In the embodiment of Fig. 5, it is assumed that a new version of control system engineering tool X was placed by the provider in the virtual storage spaces 6a to 6c, that newly generated output files, individual data D3, of the control system engineering tool X executed on the processing device PC3 are placed in the local storage space 7c and that a communication connection 5c has just been established between the cloud storage 9 and the processing device PC3. Accordingly, synchronization unit 8c starts comparing the contents of the virtual storage space 6c with the contents of the local storage space 7c and recognizes, that the virtual storage space 6c contains data files belonging to the control system engineering tool X which have a more recent date than those in the local storage space 7c and that the individual data D3 on the local storage space 7c have been updated. As a result, the synchronization unit 8c downloads the more recent data files from the virtual storage space 6c to the local storage space 7c, and uploads the individual data D3 in the opposite direction.
The storage of individual data, D1 to D3, on the virtual storage spaces, 6a to 6c, may also be used by the respective customer, userl to user3, to share the data with third parties by giving them access to the virtual storage space, where a third party could for example be the provider's service team. If the customer user3 allowed for the provider to have access to the individual data D3 on the virtual storage space 6c, it becomes possible that in case of performance problems of the control system engineering tool, the provider uses the individual data D3 to analyze the situation by an analysing unit 10. The analysing unit 10 may then either give advise to user3 for how to improve the situation or it may even initiate an adaption and optimization of the control system engineering tool to the customer's needs and replace the tool X in the virtual storage space 6c by an individualized version of the tool which is then automatically downloaded to and installed on the processing device PC3 the next time synchronization unit 8c compares the virtual and the local storage spaces.
The operation of the synchronization unit 8c can again be configured according to different options, as explained with respect to Fig. 4. A further option is that synchronization unit 8c allows for the restoration of previous versions of the control system engineering tool X and of individual data D3. Even further, synchronization unit 8c may manage the simultaneous accessing to the control system engineering tool X and/or the individual data D3 by both the user3 and the provider. For example, it could be arranged for check-in and check-out functionality in order to prevent that a file which is being used by one party is simultaneously changed by another party.

Claims

Claims
1. Arrangement for distributing a control system engineering tool and/or a control
application software to a first (PC1/PLC1) and at least one further (PC2/PLC2, PC3/PLC3) processing device or group of processing devices, the arrangement comprising at least one synchronization unit (8a, 8b, 8c) and a cloud storage (9) containing a first (6a) and at least one further virtual storage spaces (6b, 6c), where
• the cloud storage (9) is arranged to copy the control system engineering tool and/or the control application software (X) into the first (6a) and the at least one further (6b, 6c) virtual storage spaces,
• the at least one synchronization unit (8a, 8b, 8c) is arranged
o to establish a communication link between the first virtual storage space (6a) and a first local storage space or first group of local storage spaces (7a) contained in the first processing device or in the first group of processing devices (PC1/PLC1), respectively, as soon as a first communication connection (5a) is established between the cloud storage (9) and the first processing device or first group of processing devices (PC1/PLC1),
o to establish at least one further communication link between the at least one further virtual storage space (6b, 6c) and at least one further local storage space or at least one further group of local storage spaces (7b, 7c) contained in the at least one further processing device or in the at least one further group of processing devices (PC2/PLC2, PC3/PLC3), respectively, as soon as at least one further communication connection (5b, 5c) is established between the cloud storage (9) and the at least one further processing device or the at least one further group of processing devices (PC2/PLC2, PC3/PLC3),
o to compare the contents of the first local storage space or first group of local storage spaces (7a) with the contents of the first virtual storage space (6a) and the contents of the at least one further local storage space or at least one further group of local storage spaces (7b, 7c) with the contents of the at least one further virtual storage space (6b, 6c), and o in case that the first and/or the at least one further virtual storage space (6a, 6b, 6c) contains additional and/or more recent data files compared to the corresponding first and/or at least one further local storage space or group of local storage spaces (7a, 7b, 7c), respectively, where the data files belong to the control system engineering tool and/or the control application software (X), to automatically start a copy process of the additional and/or more recent data files to the corresponding first and/or the at least one further local storage space or group of local storage spaces (7a, 7b, 7c), respectively.
2. Arrangement according to claim 1 , where the cloud storage (9) is arranged to copy the control system engineering tool and/or the control application software (X) into the first (6a) and the at least one further (6b, 6c) virtual storage spaces simultaneously.
3. Arrangement according to any of the previous claims, where the cloud storage (9) is arranged to copy the control system engineering tool and/or the control application software (X) into the first (6a) and the at least one further (6b, 6c) virtual storage spaces as soon as an updated version of the control system engineering tool and/or the control application software (X) is available.
4. Arrangement according to any of the previous claims, where the cloud storage (9) is arranged to copy an individualized version (X1 , X2, X3) of the control system engineering tool and/or the control application software (X) into the corresponding first (6a) and/or at least one further (6b, 6c) virtual storage space.
5. Arrangement according to claim 5, where the individualized version (X1 , X2, X3) is adapted to the operating system or specific hardware of the first and/or the at least one further processing device or group of processing devices (PC1/PLC1 , PC2/PLC2, PC3/PLC3).
6. Arrangement according to claims 5 or 6, where the individualized version (X1 , X2, X3) contains a predetermined number and type of subcomponents of the control system engineering tool and/or the control application software (X).
7. Arrangement according to any of the previous claims, where the at least one synchronization unit (8a, 8b, 8c) is arranged to be operated individually on the first and/or the at least one further processing device or group of processing devices.
8. Arrangement according to any of the previous claims 1 to 6, where the at least one synchronization unit is arranged to be operated on a system containing the cloud storage.
9. Arrangement according to any of the previous claims, where
• the first and/or the at least one further local storage space or group of storage spaces (7a, 7b, 7c) contains individual data (D1 , D2, D3) which were generated by the respective first and/or at least one further processing device or group of processing devices (PC1/PLC1 , PC2/PLC2, PC3/PLC3) in connection with the execution of the control system engineering tool and/or the control application software (X),
• the at least one synchronization unit (8a, 8b, 8c) is arranged to compare the contents of the first and/or at least one further local storage space or group of local storage spaces (7a, 7b, 7c) with the contents of the corresponding first and/or at least one further virtual storage space (6a, 6b, 6c) with respect to the individual data (D1 , D2, D3), and
• in case that the first and/or the at least one further local storage space or group of local storage spaces (7a, 7b, 7c) contains additional and/or more recent individual data compared to the corresponding first and/or at least one further virtual storage space (6a, 6b, 6c), respectively, the at least one synchronization unit (8a, 8b, 8c) automatically starts a copy process of the additional and/or more recent individual data to the first and/or the at least one further virtual storage space (6a, 6b, 6c), respectively.
10. Arrangement according to claim 9, where the individual data (D1 , D2, D3) are output data of the control system engineering tool or historian values generated by the control application software.
11. Arrangement according to any of the previous claims, where an analysing unit (10) is arranged to retrieve a copy of the contents of the first and/or the at least one further virtual storage space (6a, 6b, 6c) and to analyse the contents.
12. Arrangement according to any of the previous claims, where the at least one synchronization unit (8a, 8b, 8c) is arranged to allow for the restoration of a previous version of the control system engineering tool and/or the control application software
(X).
13. Arrangement according to any of the previous claims, where the at least one
synchronization unit (8a, 8b, 8c) is arranged to manage simultaneous accessing to the control system engineering tool and/or the control application software (X) and/or to the individual data (D1 , D2, D3).
14. Arrangement according to any of the previous claims, where the at least one
synchronization unit (8a, 8b, 8c) is arranged to adjust the maximum bandwidth of the network load for the communication links between the first and/or the at least one further virtual storage spaces (6a, 6b, 6c) and the first and/or the at least one further local storage space or group of local storage spaces (7a, 7b, 7c).
15. Arrangement according to any of the previous claims, where the at least one
synchronization unit (8a, 8b, 8c) is arranged to provide time limited access to the cloud storage (9).
16. Method for distributing a control system engineering tool and/or a control application software to a first (PC1/PLC1) and at least one further processing device or group of processing devices (PC2/PLC2, PC3/PLC3), where a cloud storage (9) contains a first (6a) and at least one further virtual storage space (6b, 6c),
characterized by the steps
• copying the control system engineering tool and/or the control application software (X) into the first (6a) and/or the at least one further (6b, 6c) virtual storage spaces,
• establishing a communication link between the first virtual storage space (6a) and a first local storage space or a first group of local storage spaces (7a) contained in the first processing device or in the first group of processing devices (PC1/PLC1), respectively, as soon as a first communication connection (5a) is established between the cloud storage (9) and the first processing device or the first group of processing devices (PC1/PLC1),
• establishing a communication link between the at least one further virtual storage space (6b, 6c) and at least one further local storage space or at least one further group of local storage spaces (7b, 7c) contained in the at least one further processing device or the at least one further group of processing devices (PC2/PLC2, PC3/PLC3), respectively, as soon as at least one further communication connection (5b, 5c) is established between the cloud storage (9) and the at least one further processing device or the at least one further group of processing devices (PC2/PLC2, PC3/PLC3),
• comparing the contents of the first local storage space or first group of local storage spaces (7a) with the contents of the first virtual storage space (6a) and the contents of the at least one further local storage space or of the at least one further group of local storage spaces (7b, 7c) with the contents of the at least one further virtual storage space (6b, 6c),
• in case that the first and/or the at least one further virtual storage space (6a, 6b, 6c) contains additional or more recent data files compared to the corresponding first and/or at least one further local storage space or group of local storage spaces (7a, 7b, 7c), respectively, where the data files belong to the control system engineering tool and/or the control application software (X), to automatically starting a copy process of the additional or more recent data files to the first and/or the at least one further local storage space or group of local storage spaces (7a, 7b, 7c), respectively.
PCT/EP2011/005642 2011-11-10 2011-11-10 Arrangement and method for distributing a control system engineering tool and/or a control application software WO2013068023A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/EP2011/005642 WO2013068023A1 (en) 2011-11-10 2011-11-10 Arrangement and method for distributing a control system engineering tool and/or a control application software

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2011/005642 WO2013068023A1 (en) 2011-11-10 2011-11-10 Arrangement and method for distributing a control system engineering tool and/or a control application software

Publications (1)

Publication Number Publication Date
WO2013068023A1 true WO2013068023A1 (en) 2013-05-16

Family

ID=44992855

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2011/005642 WO2013068023A1 (en) 2011-11-10 2011-11-10 Arrangement and method for distributing a control system engineering tool and/or a control application software

Country Status (1)

Country Link
WO (1) WO2013068023A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015026679A3 (en) * 2013-08-19 2015-12-17 Microsoft Technology Licensing, Llc Disconnected operation for systems utilizing cloud storage
US9454441B2 (en) 2010-04-19 2016-09-27 Microsoft Technology Licensing, Llc Data layout for recovery and durability
US9798631B2 (en) 2014-02-04 2017-10-24 Microsoft Technology Licensing, Llc Block storage by decoupling ordering from durability
WO2020153966A1 (en) * 2019-01-25 2020-07-30 Siemens Aktiengesellschaft Data synchronization system for device based engineering
US11360462B2 (en) * 2018-07-30 2022-06-14 Omron Corporation Support device and support program

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5155847A (en) * 1988-08-03 1992-10-13 Minicom Data Corporation Method and apparatus for updating software at remote locations
US20050010916A1 (en) * 2003-05-24 2005-01-13 Hagen David A. System for providing software application updates to multiple clients on a network
US20060026304A1 (en) * 2004-05-04 2006-02-02 Price Robert M System and method for updating software in electronic devices
US7151966B1 (en) 2002-06-04 2006-12-19 Rockwell Automation Technologies, Inc. System and methodology providing open interface and distributed processing in an industrial controller environment
US20110271278A1 (en) * 2010-04-30 2011-11-03 Sap Ag Life-cycle management of multi-tenant saas applications

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5155847A (en) * 1988-08-03 1992-10-13 Minicom Data Corporation Method and apparatus for updating software at remote locations
US7151966B1 (en) 2002-06-04 2006-12-19 Rockwell Automation Technologies, Inc. System and methodology providing open interface and distributed processing in an industrial controller environment
US20050010916A1 (en) * 2003-05-24 2005-01-13 Hagen David A. System for providing software application updates to multiple clients on a network
US20060026304A1 (en) * 2004-05-04 2006-02-02 Price Robert M System and method for updating software in electronic devices
US20110271278A1 (en) * 2010-04-30 2011-11-03 Sap Ag Life-cycle management of multi-tenant saas applications

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9454441B2 (en) 2010-04-19 2016-09-27 Microsoft Technology Licensing, Llc Data layout for recovery and durability
WO2015026679A3 (en) * 2013-08-19 2015-12-17 Microsoft Technology Licensing, Llc Disconnected operation for systems utilizing cloud storage
US11422907B2 (en) 2013-08-19 2022-08-23 Microsoft Technology Licensing, Llc Disconnected operation for systems utilizing cloud storage
US9798631B2 (en) 2014-02-04 2017-10-24 Microsoft Technology Licensing, Llc Block storage by decoupling ordering from durability
US10114709B2 (en) 2014-02-04 2018-10-30 Microsoft Technology Licensing, Llc Block storage by decoupling ordering from durability
US11360462B2 (en) * 2018-07-30 2022-06-14 Omron Corporation Support device and support program
WO2020153966A1 (en) * 2019-01-25 2020-07-30 Siemens Aktiengesellschaft Data synchronization system for device based engineering
CN113330374A (en) * 2019-01-25 2021-08-31 西门子股份公司 Data synchronization system for equipment-based engineering

Similar Documents

Publication Publication Date Title
EP2790101B1 (en) System and method for automated virtual commissioning of an industrial automation system
JP5649300B2 (en) Software deployment manager integration in process control systems
JP5525240B2 (en) Customized document creation method, apparatus, graphical user interface means, and machine accessible medium
EP1410196B1 (en) Installing supervisory process control and manufacturing software from a remote location and maintaining configuration data links in a run-time environment
US9710248B2 (en) Application install and layout syncing
AU2002320159B2 (en) Supervisory process control and manufacturing information system application having a layered architecture
US20060190624A1 (en) Control server, control terminal, control system, and recording medium storing control communication program
GB2449013A (en) A method of binding information to a runtime application
US10185600B2 (en) Multiple interface support
WO2013068023A1 (en) Arrangement and method for distributing a control system engineering tool and/or a control application software
JP2017515418A (en) A gateway that provides a logical model mapped to an independent underlying network
CN111542790B (en) Method for processing software items
CN116820493A (en) Mirror image file deployment method, system, equipment and storage medium
US10162827B2 (en) Method and system for distributed control system (DCS) process data cloning and migration through secured file system
US11314216B2 (en) Remote deployment and commissioning of workstations within a distributed control system
Hardion et al. Configuration Management of the control system
JP2018180722A (en) Data management system
US10599112B2 (en) Method for programming and configuring a device in a traceable manner
JP2023518198A (en) A method and apparatus for managing an automation program for an industrial automation platform
CN106357777A (en) Method for automatically and synchronously updating program and data based on Web server
CN110506258B (en) Method and system for device-based engineering of Programmable Logic Controllers (PLCs)
JP2016099899A (en) Control system, support device of the same, and programmable control device
US11880676B1 (en) Containerized modeling of device updates or modifications via digital twins
US11579594B2 (en) Method and engineering system for modifying a program of an industrial automation component
US11651006B2 (en) Method of visualizing screen content on a data visualization system, and data visualization system for visualizing screen content

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: 11784421

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11784421

Country of ref document: EP

Kind code of ref document: A1