System and method for merging modular control systems into a process plant - Patents.com
Patent Information
- Application Number
- JP2023133542
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2016-10-24
- Filing Date
- 2023-08-18
- Publication Date
- 2025-02-17
- Estimated Expiration
- 2037-10-24
Smart Images

Figure 0007630568000001 
Figure 0007630568000002 
Figure 0007630568000003
Abstract
Description
[Technical field]
[0001] The present disclosure relates generally to the use of modular control systems, such as skid mounted systems, with process plants, and more particularly to efficiently integrating the modular control systems into a process control system operating within the process plant. [Background technology]
[0002] Modular control systems are used today in a variety of industries and are comprehensive control systems that can provide specific functionality, such as boiling water, filtering liquids, or controlling heat exchange. Modular control systems are typically implemented as skid-mounted systems, or simply so-called "skids," because the system is enclosed within a frame and easily transported. Skids can be delivered to a factory as an integrated unit without disassembly and reassembly, and are typically pre-configured by the manufacturer. Generally, a skid includes, for example, a programmable logic controller (PLC), specialized equipment such as valves or boilers, and sensors such as pressure or temperature sensors.
[0003] Meanwhile, distributed control systems (DCS) are also used in a variety of process industries, including chemical, petroleum, refining, pharmaceutical, food and beverage, power, cement, water and wastewater, oil and gas, pulp and paper, and steel, to control batch, fed-batch, and continuous processes operating at a single site or at a remote location. A process plant typically includes one or more process controllers that are communicatively coupled to one or more field devices via an analog, digital, or combined analog / digital bus, or via a wireless communication link or network. Collectively, the various devices perform monitoring, control, and data collection functions to control processes, safety shutdown systems, fire and gas detection systems, machine health monitoring systems, maintenance systems, detection support, and other systems.
[0004] Field devices, which may be, for example, valves, valve positioners, switches, and transmitters (e.g., temperature, pressure, water level, flow rate sensors), are located within a process environment and generally perform physical or process control functions, such as opening and closing valves, measuring process parameters, etc., to control one or more processes operating within a process plant or system. Smart field devices, such as field devices conforming to the well-known Fieldbus protocol, may also perform control calculations, alarm functions, and other control functions typically implemented within controllers. Process controllers, which are also typically located within a plant environment, execute controller applications that receive signals indicative of process measurements made by the field devices and / or other information related to the field devices, such as to initiate different control modules that make process control decisions, generate control signals based on the received information, and interface with control modules or blocks implemented within the field devices, such as HART®, WirelessHART®, and FOUNDATION® Fieldbus field devices. The control modules within the controllers send control signals over communication lines or links to the field devices, thereby controlling the operation of at least a portion of the process plant or system.
[0005] Information from the field devices and controllers is typically transmitted over a data highway to one or more other hardware devices, such as operator workstations, personal computers, and the like. The data is made available to computers or computing devices, data historians, report generators, centralized databases, or other centralized management computing devices that are typically located in a control room or other location away from the harsher plant environment. Each of these hardware devices is typically centralized throughout the process plant or over a portion of the process plant. These hardware devices run applications that may enable operators to perform functions related to controlling the process and / or operating the process plant, such as changing settings of process control routines, modifying the operation of control modules within the controllers or field devices, viewing the current state of the process, viewing alerts generated by the field devices and controllers, simulating the operation of the process for purposes of training personnel or testing process control software, maintaining and updating configuration databases, etc. The data highway utilized by the hardware devices, controllers, and field devices may include wired communication paths, wireless communication paths, or a combination of wired and wireless communication paths.
[0006] As an example, the DeltaV™ control system sold by Emerson Process Management includes numerous applications stored within and executed by different devices located at a wide variety of locations within a process plant. The configuration applications reside on one or more workstations or computing devices and allow users to create or modify process control modules and download these process control modules over a data highway to dedicated distributed controllers. Typically, these control modules are composed of communicatively interconnected function blocks that are objects in an object-oriented programming protocol that perform functions within a control scheme based on inputs to them and provide outputs to other function blocks within the control scheme. The configuration applications may also allow the configuration engineer to create or modify operator interfaces that are used by a viewing application to display data to an operator and allow the operator to change settings, such as set points, within a process control routine. Each dedicated controller, and in some cases one or more field devices, stores and executes a respective controller application that is assigned to it and downloaded to operate the control modules that implement the actual process control functionality. A viewing application may execute on one or more operator workstations (or on one or more remote computing devices communicatively coupled to the operator workstations and the data highway) and receive data from the controller applications via the data highway and display this data to a process control system designer, operator, or user employing a user interface, which may provide any of a number of different views, such as an operator's view, an engineer's view, a technician's view, etc.The data historian application is typically stored on and executed by a data historian device that collects some or all of the data provided across the data highway, while the configuration database application may run on yet a further computer attached to the data highway and store the current process control routine configuration and its associated data. Alternatively, the configuration database may be located on the same workstation as the configuration application.
[0007] Devices operating in process control and industrial automation systems may be interconnected in a wired or wireless manner and communicate using industrial communication protocols such as FOUNDATION™ Fieldbus, HART®, or Profibus. Additionally, protocols such as Modbus have been developed to interconnect with PLCs. Furthermore, in addition to standard industrial automation protocols, proprietary protocols exist for interconnecting nodes within a process control system. DeltaV is one example of such a protocol. Generally, these protocols specify formats for transmitting measurements, alerts and status reports, commands that affect process variables or automation parameters, commands to start or stop equipment, etc. Typical industrial communication protocols also support device configuration via predefined commands defined for a particular device by the manufacturer following the protocol's syntax.
[0008] Using skids with PLCs is a common way to build process control plants, but PLCs today cannot be natively integrated into larger DCSs. PLCs generally rely on proprietary protocols, configurations, and security. At best, operators can use weak integration via Modbus or some other standard protocol to incorporate PLCs into the larger system. Weak integration is a manual process that cannot tolerate certain types of changes and requires manual maintenance as the system evolves.
[0009] For example, if a parameter mapping needs to be changed (i.e., an older parameter mapping needs to be removed and replaced with a new parameter mapping), not only does the mapping need to be changed, but all logic referencing the old parameters must be updated as well, and all new logic must be written for the new parameters. Also, parameter mappings have practical or demand-driven limitations (e.g., artificial limitations set for commercial reasons). As a result, if permitted or possible additional parameters need to be mapped, some of the existing parameters need to be manually unmapped. The situation is even worse for control logic that runs on skid-mounted systems. In this case, the configuration of these devices must be maintained with an entirely different set of applications. Often the process to update them requires a laptop and a visit to the field to change or modify the logic. No centralized configuration is available on the skid.
[0010] In particular, modular structures can be used to take a plant in a disassembled state and then assemble the pieces in a central repository. However, even if the software configurations and communications are compatible, merging this configuration into a single repository is a difficult and error-prone manual process. Bringing two or three configurations together involves importing, which tends to go wrong. For example, if the naming plan is inaccurate, two modular pieces may be built with redundant tags, resulting in an incorrect configuration. To solve this problem, one or both pieces need to be renamed, and all references to these pieces need to be found and updated one by one. Also, if the two pieces share a common resource, such as a name set, the resulting difficulty is even greater. One piece may be changed in other ways that are not immediately obvious. The resulting erroneous behavior may sometimes only be seen later in production. Furthermore, modular structures also create transportation problems. For example, moving pieces back onto the network is difficult because they have conflicting IP addresses. Summary of the Invention
[0011] The modular controller of the present disclosure operates in a modular control system, e.g., a skid mounted system, and similar to a PLC, executes the control logic of the modular control system independently of other controllers. When integrated into a distributed process control system, the modular controller can operate as one or many nodes of the distributed process control system. The configuration data for the modular controller is stored in the modular control system. The configuration data is imported from the system's configuration database into the distributed process control system's configuration database, which is a central repository of configuration data. In some implementations, the modular controller is built natively on the distributed control system's platform. The modular controller in this case can communicate with other nodes of the distributed process control system according to the distributed process control system's communication protocol, which in some implementations is proprietary. In other implementations, the modular controller is integrated into a third-party distributed process control system and communicates with other nodes using a standard industrial communication protocol, e.g., Modbus. The merge assistant also operates on a host, such as a personal computer or operator workstation, to facilitate merging of the configuration data. The merge assistant can automatically identify conflicting configuration items, generate strings to correct parameter names, and generate warnings about conflicting configuration items as well as configuration items that cannot be imported into the central repository but should remain in the modular control system. The merge assistant can also automatically check licenses, nodes, versions, etc.
[0012] One example embodiment of these approaches is a modular control system configured to operate as a stand-alone module in a first mode of operation or as one or more nodes of a distributed control system in a second mode of operation. The modular control system includes equipment configured to perform physical functions within a process plant, a modular controller, and a configuration database that stores configuration parameters for the modular control system. The controller is built natively on the platform of the distributed control system. In the first mode of operation, the modular controller implements the control logic of the modular control system to operate the equipment. In the second mode of operation, the modular control system operates natively as one or more nodes within the distributed control system.
[0013] In various implementations, the modular control system further includes one or more of the following features: To operate natively, the modular controller shares at least one software layer with a controller operating in the distributed control system; The modular control system implements a proprietary communication protocol of the distributed control system; The modular control system is a skid-mounted system, in which the equipment, the modular controller, and the configuration database are housed inside a frame that is transportable as a single unit; The configuration data of the modular control system includes a first subset that is imported into the centralized configuration database of the distributed control system, and a second subset that is not imported into the centralized configuration database but is used by the modular control system in a second mode of operation; The modular controller support includes a first address defined according to a scheme of the distributed control system and a second address defined according to a scheme of the modular control system, the modular controller being addressable using the first address from other nodes of the distributed control network and addressable using the second address from nodes that support the proprietary protocol of the modular control system; In this case, the proprietary protocol of the modular control system is different from the protocol of the distributed control system.
[0014] Another embodiment of these techniques is a distributed process control system including a centralized configuration database storing configuration parameters of a distributed control system, a first controller implementing at least a portion of the control logic of the distributed control system, and a second controller implementing the control logic of a modular control system, the modular control system being configured to operate as a stand-alone module independent of the distributed control system in a first mode of operation, and the modular control system corresponding to one or more nodes of the distributed control system in a second mode of operation. The controllers share a software layer that specifies one or more of: (i) configuration procedures, (ii) security mechanisms, or (iii) communication protocols.
[0015] Another embodiment of these techniques is a method of integrating a modular control system into a distributed control system, where nodes of the distributed control system communicate over a local area network, the method including: repeatedly detecting modular control systems communicatively coupled to the local area network, and for each detected modular control system, (i) retrieving configuration data from the modular control network, (ii) identifying configuration items that are in conflict with configuration items in other nodes of the distributed communication network, (iii) modifying the conflicting configuration items to resolve the conflicts with the configuration items, and (iv) updating the configuration data of the modular control network such that the modular control network is capable of operating as one or more nodes of the distributed control system.
[0016] In various implementations, the method further includes one or more of the following actions: in response to detecting the modular controller, automatically verifying at least one of a license, a node, a version, and a locale of the modular controller, executing a merge assistant on a computing device communicatively coupled to the local area network to facilitate merging the configuration data of the modular control system into the centralized configuration data of the distributed control system, generating an alphanumeric string for modifying a name of the conflicting configuration item, identifying a second configuration item that is a conflicting configuration item in another node of the distributed communications network, and in response to determining whether a type of the second configuration item corresponds to a surviving configuration item in the modular control system, generating an alert, decommissioning a node of the modular control system, downloading the modified configuration data to the modular control system, and recommissioning the modular control system.
[0017] Yet another embodiment of these techniques is a non-transitory computer-readable medium storing instructions implementing a merge assist configured to facilitate integration of a modular control system into a distributed control system. When a computing device is coupled to a communication network of the distributed control system, the merge assist is configured to detect the modular control system, retrieve configuration data from the modular control system, and generate a series of user interface screens to guide an operator during integration of the modular control system into the distributed control system, including generating at least one screen that lists a number of configuration items in the modular control system's configuration data that conflict with the distributed control system's configuration data.
[0018] Yet another embodiment of these techniques is a computing device that includes one or more processors and a non-transitory computer-readable medium storing instructions for implementing the merge assistance as described above. [Brief description of the drawings]
[0019] [Figure 1] FIG. 1 is a block diagram of a distributed process control system into which an example modular control system is integrated. [Diagram 2] FIG. 1 is a block diagram of an example of a communication scheme between a modular controller, a host running merge assist, and a host of a distributed process control system. [Diagram 3] FIG. 1 is a block diagram of an example of a node configuration for a modular system integrated into a distributed process control system. [Figure 4] FIG. 1 is a flow diagram of an example method for integrating a modular control system into a process control system. [Figure 5A] FIG. 5 is a more detailed flow diagram of the method of FIG. [Figure 5B] FIG. 5 is a more detailed flow diagram of the method of FIG. [Figure 5C] FIG. 5 is a more detailed flow diagram of the method of FIG. [Figure 6A]6A-6AI illustrate an example series of screenshots that a merge assistant may present to an operator when merging a modular control system into a distributed process control system. More specifically, FIG. 6A relates to initial operator instructions. [Figure 6B] Regarding the project selection process. [Figure 6C] Regarding the project selection process. [Figure 6D] Regarding the project selection process. [Figure 6E] Regarding the project selection process. [Figure 6F] Regarding the project selection process. [Figure 6G] Regarding the project selection process. [Figure 6H] Regarding the project selection process. [Figure 6I] This concerns conducting a check on ease of use. [Figure 6J] This concerns conducting a check on ease of use. [Figure 6K] This concerns conducting a check on ease of use. [Figure 6L] This concerns conducting a check on ease of use. [Figure 6M] This concerns conducting a check on ease of use. [Figure 6N] This concerns conducting a check on ease of use. [Figure 6O] This concerns conducting a check on ease of use. [Figure 6P] Resolving conflicting configuration items and revisiting non-conflicting configuration items. [Figure 6Q] Resolving conflicting configuration items and revisiting non-conflicting configuration items. [Figure 6R] Resolving conflicting configuration items and revisiting non-conflicting configuration items. [Figure 6S] Resolving conflicting configuration items and revisiting non-conflicting configuration items. [Figure 6T]Resolving conflicting configuration items and revisiting non-conflicting configuration items. [Figure 6U] Resolving conflicting configuration items and revisiting non-conflicting configuration items. [Figure 6V] Resolving conflicting configuration items and revisiting non-conflicting configuration items. [Figure 6W] Resolving conflicting configuration items and revisiting non-conflicting configuration items. [Figure 6X] Regarding loading selection of configuration items. [Figure 6Y] Regarding loading selection of configuration items. [Figure 6Z] Regarding loading selection of configuration items. [Figure 6AA] The present invention relates to the decommissioning and recommissioning of nodes of a modular control system that are to be merged into a larger process control network. [Figure 6AB] The present invention relates to the decommissioning and recommissioning of nodes of a modular control system that are to be merged into a larger process control network. [Figure 6AC] The present invention relates to the decommissioning and recommissioning of nodes of a modular control system that are to be merged into a larger process control network. [Figure 6A-D] The present invention relates to the decommissioning and recommissioning of nodes of a modular control system that are to be merged into a larger process control network. [Figure 6AE] The present invention relates to the decommissioning and recommissioning of nodes of a modular control system that are to be merged into a larger process control network. [Figure 6AF] The present invention relates to the decommissioning and recommissioning of nodes of a modular control system that are to be merged into a larger process control network. [Figure 6A-G] The present invention relates to the decommissioning and recommissioning of nodes of a modular control system that are to be merged into a larger process control network. [Figure 6AH] The present invention relates to the decommissioning and recommissioning of nodes of a modular control system that are to be merged into a larger process control network. [Figure 6AI] Regarding final operator orders. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0020] In general, the modular control system of the present disclosure includes a controller that can operate as a stand-alone PLC, a controller in a skid-mounted system, or as a module in a modular plant structure. The controller, hereafter referred to as a "modular controller," can be built natively on a platform such as DeltaV that supports distributed control, thereby making the modular controller's configuration, security mechanisms, and communications fully compatible with the DCS in which it is integrated. As a result, when the modular controller operates as one or more nodes in the DCS, the modular controller does not require the use of industrial communication protocols to distribute data to or receive data from the modular controller or its subnodes. Additionally, the modular controller's configuration is compatible with a similarly versioned full DCS system, which simplifies the incorporation of this configuration into the central repository of the DCS, referred to herein as "merging."
[0021] To facilitate merging, the software merge help runs as a wizard on a standalone computing device or workstation in the DCS. When connected to a modular control system, the merge help identifies within the modular controller's configuration data conflicting configuration items, non-conflicting configuration items, and configuration items that may be in conflict but should remain without attempting to resolve the conflict. The merge help can also automatically prepend a common string to configuration items imported into the central repository to resolve many simultaneous conflicts. In addition, the merge help can reduce the number of actions required to merge a modular control system into a process plant by eliminating the need to read through logs and generating grouped lists of conflicting and non-conflicting configuration items and these lists via user interface screens. The user can monitor the conflicts reflected in the log and address all conflicting configuration items in a single step during integration without having to resolve these conflicts each time. The merge help can also pre-validate node counts in addition to performing licensing and version checking.
[0022] Also, to prepend a common string to configuration items as described above, in some cases the merge assist implements an algorithm to automatically prevent conflicts. For example, the algorithm can rely on unique device identifiers for devices from the modular control systems. Alternatively, the algorithm can use a current time value to generate unique identifiers, or the algorithm can keep track of how many modular control systems have been integrated so far and assign sequential numbers to each new modular control system being merged. Also, in some cases the merge assist can determine the user's renaming intent based on previous manual renaming cases and generate automatic renaming candidates.
[0023] In some scenarios, the modular control system of the present disclosure can be integrated into a process control system built on a different, possibly proprietary, platform. In this case, the modular controller can communicate with the nodes of the process control system using a standard protocol such as the Open Platform Communication (OPC) communication protocol or Modbus. However, if the modular controller is built on the DeltaV platform, the merge assistant can communicate natively with the modular controller, for example, using the DeltaV protocol. To this end, the modular controller can support a different address inside the modular controller network in addition to the address in the scheme of the process plant.
[0024] In some implementations, the merge assist can identify one or more modular control systems coupled to a plant's local area network (LAN), create local storage (e.g., in the memory of the host on which the merge assist executes) of modular controller parameters, and sequentially merge each modular control system into the DCS. More specifically, for each modular control system, the merge assist can import configuration parameters into the local storage, facilitate modification of conflicting configuration items, and reload configuration items into the modular control system's configuration database. In this manner, the merge assist can facilitate the shutdown and subsequent recommissioning of modular control systems.
[0025] Additionally, the merge assist can, in some cases, automatically detect redundancies in configurations and consolidate or create shared classes where appropriate. In this manner, the merge assist can enable modular control systems to share logic and / or code between control algorithms and shared system resources. In this implementation, the merge assist can also automatically combine or merge redundancies such as similarly named sets or other shared resources.
[0026] Next, an example of a distributed process control system and an example of a modular control system integrated into a distributed process control system are described with reference to Figure 1. Then, examples of network address setup and node configuration are described with reference to Figures 2 and 3, respectively. An example method for integrating a modular control system into a larger process control system is described with reference to Figures 4, 5A and 5B, followed by an example of a merge-assisted user interface to facilitate integration of the modular control system.
[0027] Example System FIG. 1 illustrates an example of a process plant 10 implementing a distributed control system 22. As is typical, the distributed process control system 22 includes one or more controllers 40, each connected to one or more field or smart devices 44 and 46 via an input / output (I / O) device or card 48, which may be, for example, a Fieldbus interface, a Profibus interface, a HART interface, a standard 4-20ma interface, or the like. The controllers 40 are further coupled to one or more host or operator workstations 50, 52 via a data highway 54, which may be, for example, an Ethernet link or another suitable local area network (LAN) link. A process data database 58 is connected to the data highway 58 and is operable to collect and store parameters, status, and other data associated with the controllers and field devices within the plant 10. During operation of the process plant 10, the process data database 58 may receive process data from the controllers 40 and indirectly from the devices 44-46 via the data highway 54.
[0028] The configuration database 60 stores the current configuration of the process control system 22 in the plant 10, as downloaded to and stored within the controllers 40 and field devices 44 and 46. The configuration database 60 stores process control functions that define one or more control strategies of the process control system 22, configuration parameters of the devices 44 and 46, assignments of the devices 44 and 46 to the process control functions, and other configuration data for the process plant 10. The configuration database 60 may additionally store graphical objects to provide various graphical representations of the constituent process plant 10. Some of the stored graphical objects may correspond to process control functions (e.g., a process diagram developed for a certain PID loop) and other graphical objects may be device specific (e.g., a process diagram developed for a certain PID loop). For example, it may be a figure corresponding to a pressure sensor.
[0029] The process plant 10 may further include other databases coupled to the data highway 54, not shown in FIG. 1 , to avoid clutter. For example, a data historian may store events, warnings, comments, and courses of action taken by an operator. The events, warnings, and comments may relate to individual devices (e.g., valves, transmitters), communication links (e.g., wired Fieldbus segments, WirelessHART communication links), or process control functions (e.g., a PI control loop for maintaining a desired temperature set point). Additionally, the knowledge repository may store references, operator logbook entries, help topics, or links to these and other documents that operators and maintenance technicians may find useful when overseeing the process plant 10. Still further, a user database may store information about users, such as the operators 12 and maintenance technicians 16. For each user, the user database may store, for example, the user's organizational role, the area within the process plant 10 to which the user is associated, work group, etc.
[0030] Each of these databases can be any desired type of data storage or collection unit having any desired type of memory for storing data and any desired or known software, hardware or firmware. Of course, the databases need not reside on separate physical devices. Thus, in some embodiments, some of these databases are implemented on a shared data processor. In general, more or fewer databases can be utilized to store the data collectively stored and merged by the above databases.
[0031] The controllers 40, I / O cards 48, and field devices 44 and 46 are typically distributed throughout a sometimes harsh plant environment, while the operator workstations 50 and 52 and databases 58, 60, etc. are usually located in a control room or other less harsh environment that is easily accessible by controllers, maintenance, and various other plant personnel. In some cases, however, handheld devices may be used to perform these functions, and these handheld devices are typically carried to various locations within the plant.
[0032] As is known, each of the controllers 40, which for purposes of illustration may be a DeltaV™ controller sold by Emerson Process Management, stores and executes a controller application that implements a control strategy using any number of different independently executing control modules or blocks 70. Each of the control modules 70 may be comprised of what are generally referred to as function blocks, where each function block is a portion or subroutine of an overall control routine and cooperates with other function blocks (through communications called links) to implement a process control loop within the process plant 10. As is known, function blocks may be objects in an object oriented programming protocol and typically perform one of the following functions: an input function, such as associated with a transmitter, sensor or other process parameter measurement device; a control function, such as associated with a control routine that controls PID, fuzzy logic, etc.; or an output function that controls the operation of some device, such as a valve, to perform some physical function within the process plant 10. Of course, there are hybrid and other types of complex function blocks, such as model predictive controllers (MPCs), optimizers, etc. The Fieldbus protocol and DeltaV system protocol use control modules and function blocks that are designed and implemented in an object oriented programming protocol, however, control modules are not limited to being designed and implemented using function blocks or any other particular programming methodology, including, for example, sequential function blocks, ladder logic, etc. Each of the controllers 40 may also support AMS® Suite applications and may use predictive intelligence to improve the availability and performance of production assets, including mechanical equipment, electrical systems, process equipment, instruments, field and smart field devices 44, 46, and valves.
[0033] In the plant 10 illustrated in FIG. 1, the field devices 44 and 46 connected to the controller 12 may be standard 4-20 mA devices, may be smart field devices such as HART, Profibus, or FOUNDATION™ Fieldbus field devices that include a processor and memory, or may be any other desired type of device. Some of these devices, such as the Fieldbus field devices (labeled 46 in FIG. 1), may store and execute modules or sub-modules, such as function blocks, that are associated with a control strategy implemented in the controller 40. Function blocks 72 are illustrated in FIG. 1 as being disposed in two different ones of the Fieldbus field devices 46, and may be executed in conjunction with the execution of a control module 70 within the controller 40 to implement process control, as is well known. Of course, the field devices 44 and 46 may be any type of device, such as sensors, valves, transmitters, positioners, etc., and the I / O devices 48 may be any type of I / O devices that are compatible with any desired communication or controller protocol, such as HART, Fieldbus, Profibus, etc.
[0034] The workstations 50 and 52 may include one or more processors 82 that execute instructions stored in a memory 80. The instructions may, in part, implement a viewing application 84 that provides various displays during operation of the process plant 10 to enable the operators 12 to view and control various operations within the process plant 10 or within a section of the process plant 10 to which the corresponding operator is assigned, as is common in larger plants. The viewing application 84 may include or work in conjunction with support applications, such as control diagnostic applications, tuning applications, report generation applications, or any other control support applications that may be used to assist the operators 12 in performing control functions. Additionally, the viewing application 84 may enable a maintenance technician to oversee the maintenance needs of the plant 10, such as to view the operation or operating status of the various devices 40, 44, and 46. The viewing application may also include support applications, such as maintenance diagnostic applications, calibration applications, vibration analysis applications, report generation applications, or any other maintenance support applications that may be used to assist the maintenance technicians 14 in performing maintenance functions within the plant 10.
[0035] 1, the exemplary modular control system 100 includes a modular controller 102, a configuration database 104, and specialized equipment that may include a field device 110. The modular control system 100 may be a skid-mounted system in which the devices 102, 104, and 110-114 reside within a physical frame 120. The modular control system 100 may be configured to operate in a stand-alone mode and perform relatively complex functions within a plant, such as, for example, pumping liquid in a controlled manner, heating water in a tank to maintain a constant temperature, performing filtration functions, etc. To this end, the modular control system 100 may include valves, tanks, sensors, etc.
[0036] The modular controller 102 can be built natively on the platform of the distributed control system 22. In other words, the modular controller 102 The modular controller 102 was specifically developed for use in the distributed control system 22 while being capable of autonomous operation. To this end, the modular controller 102 may include firmware and / or software functions that do not require an intermediary (e.g., a firmware and / or software porting / adaptation layer or corresponding application programming interface (API) functions) to interact with nodes of the distributed control system 22. The modular controller 102 may share one or more software layers with other controllers of the distributed control system 22 in certain software architectures. In either case, the security mechanisms and communications of the modular controller 102 are fully compatible with the distributed control system 22 as they are inherent to the platform of the distributed control system 22 configuration.
[0037] The configuration database 104 may be stored on a non-transitory computer-readable memory, such as a hard disk or a flash drive. The computer-readable memory and the modular controller 102 may be provided separately as part of a single chipset, depending on the implementation.
[0038] A manufacturer can assemble the modular control system 100 and configure the parameters of the modular control system 100 with target values and other parameters, such as gain values for PID loops, names and tags for field devices 110, licenses, locales, etc. The manufacturer can also configure parameter security. For example, the manufacturer can make a gain value part of a limit control and require that this value be changed only if the correct key to unlock this variable is provided. In some cases, the manufacturer can fully assemble the modular control system 100 for shipping as an integrated unit.
[0039] As illustrated in FIG. 1 , the modular control system 100 can be coupled to the plant 10 and the distributed control system 22 via a data highway 54. The host 140 can be a laptop computer and can run the merge help 150, for example. Alternatively, the merge help 150 in an operator workstation 150 or 152. In operation, the merge help 150 assists the operator with efficiently and accurately merging configuration data from the configuration database 104 to the centralized configuration database 60. In some cases, the merge help 150 also generates automatic candidates for renaming or relabeling items in the configuration database 104 to resolve conflicts with items in the configuration database 60. The merge help 150 then loads the updated configuration data into the configuration database 104. In some cases, the host 140 stores the configuration data of the modular control system 100 while the configuration data is being updated.
[0040] According to another implementation, the merge assist 150 may distribute new configuration data introduced by integrating a modular control system into the distributed control system 22, thereby eliminating the need to import the new data into the configuration database 60. In particular, rather than copying the configuration data, the merge assist 150 may update the configuration database 104 with new tags in the field to ensure uniqueness for the scope of the distributed control system 22. In this manner, the merge assist 150 may reduce the time required to integrate a modular control system into the distributed control system, and in some cases may even provide an "instant import."
[0041] Although FIG. 1 depicts only one modular control system 100, multiple modular control systems may be integrated into the distributed process control system 22. In this case, the merge assist 150 is connected to the modular control systems coupled to the data highway 54. The system can detect system configurations and iteratively merge the corresponding configurations into the centralized configuration database 60.
[0042] To more clearly illustrate the addressing schemes that the modular control systems of the present disclosure may implement, Figure 2 depicts several example modular control systems 200A, 200B, and 200C coupled to a LAN communication link 202. Also coupled to the communication link 202 are a host 210, an operator workstation 212, and various nodes of a distributed control system, represented in Figure 2 by a controller 214. In some cases, the modular control systems 200A-C may be implemented similarly to the modular control 100 of Figure 1. Additionally, the components 202, 210, 212, and 214 may be implemented similarly to the components 54, 140, 50, and 40, respectively.
[0043] In this example implementation, modular systems 200A-C include two network addresses. Each of addresses 220 and 222 can be stored, for example, in a respective register. The registers can reside in modular controller 103 or in a separate memory unit depending on the implementation. Using address 220, modular control system 200 can communicate with modular systems 200B and 200C, in addition to host 210, for example. Using address 222, modular control system 200 can communicate with workstation 212 and nodes of a distributed control system, such as controller 214. Both addresses 220 and 222 can be defined according to the Internet Protocol (IP) specification. However, in some implementations, addresses 220 and 222 are used with different communication protocols, and in the example of FIG. 2, host 210 communicates with modular control systems 200A-C using a proprietary communication protocol, such as DeltaV layered on IP, and workstation 212 communicates with nodes of the distributed control system using Modbus or a similar standard.
[0044] This configuration can be particularly advantageous when the distributed control system and one or more modular control systems 200A-C are provided by different parties and the workstation 212 does not support the proprietary protocols of the modular control systems.
[0045] For further clarity, FIG. 3 illustrates a schematic example of a node configuration for a distributed control system in which several modular control systems 200A-C are integrated. As illustrated in FIG. 3, each of the modular control systems 200A-C can implement one or more nodes of the distributed control system. For example, modular control system 200A includes three nodes 250A, 250B, and 250C, modular control system 200B implements only one node, and modular control system 200C implements only one node. Once modular control systems 200A-C are integrated into the distributed control system, controllers and other devices in the distributed control system "see" the modular controllers of modular control systems 200A-C as other nodes of the distributed control system, rather than as PLCs or other types of autonomous controllers.
[0046] Example of how to integrate 4 is a flow diagram of an example method 300 for integrating a modular control system into a process control system. The method 300 may be implemented as a set of instructions stored on a computer readable memory and executable by one or more processors. Although the method 300 may be implemented in any suitable device and / or software task, as an example, the method is described below with reference to the merge assist 150 of FIG. 1.
[0047] Method 300 begins at block 302, where merge assist 150 may detect that a modular control system has been detected. To this end, merge assist 150 may broadcast certain commands over a local area network using a communication protocol supported by the modular control system and / or the distributed control system protocol. Merge assist 150 may then establish a connection to a modular controller operating in the modular control system.
[0048] Then, in block 304, merge assist 150 can retrieve the configuration data from the modular control system. Merge assist 150 can check licenses, versions, nodes, locales, etc. to determine if any compatibility issues might exist. More specifically, in block 304, merge assist 150 can identify possible issues at the modular control system level, rather than at the more specific individual item level, as described below.
[0049] Next, in block 306, the merge assist 150 may identify conflicting items. For example, a persistent graphical object "SIGlobals.fxg" in the modular control system's configuration database may correspond to a different version of the same persistent graphical object already listed in the distributed control system's configuration database. The merge assist 150 may query the distributed control's configuration database, identify the version difference as a possible conflict, generate an appropriate warning, and in some cases provide appropriate controls to resolve the conflict, for example by renaming the object. Examples of interface screens that the merge assist 150 may generate in these cases are further described below with reference to FIGS. 6A-6AI. In general, the merge assist 150 may identify items of various configuration types (graphical, logical, hardware, etc.) and various specific types (e.g., control type or equipment module) as being in conflict with other items.
[0050] Additionally, merge assist 150, in some implementations, may employ a list of item types that specifies appropriate actions to be suggested when merge assist identifies a potential conflict. The list of items and corresponding actions may be implemented as a configuration file stored in memory of a host executing merge assist 150. In one example implementation, for a first set of item types, the list specifies that merge assist 150 should automatically resolve the conflict by prepending a string to the item's specifier and generate an appropriate notification to an operator, for a second set of item types, the list specifies that merge assist 150 should automatically generate a notification without attempting to automatically resolve the conflict, and for a third set of item types, the list specifies that merge assist 150 should list the corresponding items as non-conflicting and notify the operator that the corresponding items should not be imported into the centralized configuration database.
[0051] An example of an item type that can belong to the third set mentioned above is parameter security. In one example scenario, the manufacturer of a modular control system applies a software lock on the parameter Gain Reset Rate. An operator can change the value of this parameter, for example by supplying the correct key locally via the modular control system's user interface, or by accessing the modular control system remotely via a dedicated user interface, but after the modular control system has been integrated into a distributed control system, it may be desirable to prevent this parameter from being modified via the distributed control system's workstation. In other words, the manufacturer of this parameter may be restricted by the configuration of the distributed control system. It may be desirable to maintain independence from the configuration of the distributed control system. Thus, the list of item types may indicate that this lock does not need to be imported into the centralized configuration database of the distributed control system and that this lock should not be superseded by the configuration data of the distributed control system.
[0052] Furthermore, merge assist 150, in some implementations, determines whether certain redundancies of logic can be merged and provisioned between nodes of the distributed control system. For example, if the modular control system further includes certain logic blocks that merge assist 150 places in the centralized configuration database under different names, merge assist 150, in some cases, can automatically suggest to the operator that the operator link the logic blocks to the modular control system (or perform the linking automatically, if desired).
[0053] 4, the merge assist 150 then modifies the conflicting items according to the operator input (block 308). The merge assist 150 also allows the operator to select which items should be reloaded into the modular control system once configuration is complete.
[0054] At block 310, merge assist 150 may import the selected items into a temporary repository. For example, referring back to FIG. 1, the items may be stored in the memory of host 140 or workstation 50. Merge assist 150 may also load these items into a centralized configuration database (e.g., database 60 of FIG. 1) of the distributed control system. Alternatively, merge assist 150 may load these items into the centralized configuration database only after the modular control system has been fully successfully configured.
[0055] The merge assist 150 then takes the nodes of the modular control system out of service in block 312 and re-commissions the nodes with the new configuration data in block 314. In some cases, the merge assist 150 can re-commission more nodes than were configured in the modular control system. For example, a modular control system in a standalone mode can operate as a standalone PLC with a single node, but the same modular control system can operate as multiple nodes in a distributed control system. The merge assist 150 can download the new configuration to the modular control system in block 316.
[0056] The merge assist 150 may check to see if there are other modular control systems on the local area network that require configuration. If one or more modular control systems are present, the flow returns to block 302. Otherwise, the method 300 is complete.
[0057] For further clarity, Figures 5A and 5B illustrate in more detail an approach for integrating a modular control system into a larger control network. According to these figures, merge assistant 150 can guide an operator through transfer, planning, import / copy, and recommissioning. The term "ProPlus" refers to an example of a software implementation including merge assistant 150 or a similar software module implemented on a host equipped with a storage device. In Figures 5A and 5B, boxes surrounding descriptions of various steps are labeled with people or gear icons, referring to manual and automated operations, respectively. However, Figures 5A and 5B illustrate merely an example of the division between manual and automated operations.
[0058] Example of the merge assist user interface 6A-6AI illustrate an example series of screenshots that a merge assist may present to an operator when merging a modular control system into a distributed process control system. In these figures, the term "PK controller" refers to a modular controller, such as controller 102 illustrated in FIG. 1. For clarity, the screenshots of FIGS. 6A-6AI are described with reference to merge assist 150.
[0059] The screenshot of Figure 6A illustrates an entry screen with general instructions for an operator. As illustrated in Figure 6B, the operator can choose to start a new project ("PK Project" in these figures) that integrates a modular control system into a larger control system, or can continue creating a previously started project. If multiple modular control systems are detected, the operator can select one of the detected ones of these systems for integration.
[0060] 6C illustrates a screenshot in which merge assist 150 may display receiving authentication information from an operator to access a modular controller of a detected modular control system, where the operator has chosen to retrieve a project from a standalone, authorized modular controller. Once the user has entered the authentication information (FIG. 6D), merge assist 150 may retrieve the project information from the modular control system, save the information to the desired location on the host (in this case, a laptop computer), and display a corresponding notification (FIGS. 6E-G).
[0061] 6H, the merge assist 150 can provide an operator control for performing a readiness check. Once the operator initiates this control, the merge assist 150 can check version compatibility by accessing a centralized configuration database, and possibly other nodes of the distributed control system, and comparing this configuration data to configuration data retrieved from the modular control system. The merge assist 150 can then generate an interactive list of version compatibility check results organized by category, e.g., version, locale, license, node count, etc. (FIGS. 6I, 6J).
[0062] As shown in FIG. 6K, the operator can select a version category. In this example scenario, the distributed control system and the modular control system are built on the DeltaV platform. The merge assistant 150 displays the DeltaV version of the distributed control system and provides controls to migrate the project to a different version (FIG. 6L). The operator in this scenario chooses to perform the migration (FIGS. 6M, 6N). Additionally, the operator chooses to re-display the license (FIG. 6O).
[0063] 6P, the merge assist 150 can then proceed to consider the operator input and modify the various conflicting items and notify the operator regarding the non-conflicting items. For each conflicting item, the merge assist 150 can display the conflicting item name, configuration type (e.g., graphical, logical, hardware), item type (e.g., global, control module, equipment module, controller), modification history, an indication of whether the item in the modular or distributed control system is newer, etc. The merge assist 150 can display similar information for non-conflicting items, except, of course, there is no display of conflict information for non-conflicting items. The merge assist 150 can provide interactive controls for grouping conflicting and / or non-conflicting items based on various criteria for the operator's convenience.
[0064] Merge assist 150 may also provide an interactive control to add a prefix to the names of the conflicting items to resolve all conflicts as a single action. In other implementations, merge assist 150 may allow the operator to modify the names in any suitable manner, for example by adding a postfix rather than a prefix. In response to the operator selecting this control, as illustrated in FIG. 6P, merge assist 150 allows the operator to specify specific characters to add to the names of items of the selected type (FIG. 6Q). In this case, the operator has chosen to prefix only the original names of the modules, not all items. The user may activate a control to prepend the specific name to the conflicting items (FIG. 6R). Once the renaming operation is complete, merge assist 150 moves the renamed items from the set of conflicting items to the set of non-conflicting items, as illustrated in FIG. 6S.
[0065] The operator may in some cases attempt to append a string to the original name of an item that would result in a total length exceeding a certain limit (FIG. 6T). The operator may then appropriately modify the name before initiating the download, as shown in FIG. 6U. Merge assistant 150 may display the modified name in the listing of non-conflicting items (FIG. 6V).
[0066] In some implementations, merge assist 150 automatically performs the steps described with reference to Figures 6P-S. For example, merge assist 150 may generate names based on the order in which the modular control systems are detected (e.g., "PK_1_" after detecting a first modular control system, "PK_2_" after detecting a second modular control system, etc.).
[0067] Additionally, merge assist 150 can, in some cases, analyze the prefixes supplied by the operator to recognize intent, and merge assist 150 can automatically provide renaming suggestions consistent with the operator's prior selection. For example, if an operator first uses merge assist 150 to merge three modular control systems into a larger control system and adds the prefixes "PK_1_", "PK_2_", and "PK_3_", respectively, merge assist 150 can automatically suggest "PK_4_" when the operator uses merge assist 150 to merge into another modular control system.
[0068] Now referring to 6W, the merge assistant 150 can generate a single interactive screen through which the operator can select whether conflicting and non-conflicting items should be downloaded to the modular controller. Using check boxes, the operator can select and deselect individual items, item types, or entire configuration types.
[0069] The merge assist 150 can then provide the operator with controls to initiate the download of the configuration data into the modular control system (FIG. 6X). The merge assist 150 can display the progress and results (FIGS. 6Y and 6Z).
[0070] The merge assist 150 then provides an operator control to initiate the shutdown and restart of the modular control system (FIG. 6AA). The merge assist 150 then provides a view of the nodes of the modular control system and controls to select which of those nodes should be restarted (FIGS. 6AB and 6AC). The merge assist 150 then can shut down and restart individual nodes in sequence (FIG. 6AD). and 6AE). Once the nodes are back up and running, the merge assist 150 can provide operator control for upgrading and downloading firmware (FIG. 6AF). In some implementations, the merge assist 150 allows the operator to select multiple nodes simultaneously. FIGS. 6AG and 6AH illustrate example screenshots that the merge assist 150 can display to inform the operator of the progress of downloading firmware. And the merge assist can notify the operator that the consolidation process is complete (FIG. 6AI).
[0071] In some implementations, the merge assist 150 may also provide additional functionality, such as providing a visual representation of various items to facilitate manual merging. For example, the merge assist 150 may display a visual representation of a modular control system configuration on one side and a corresponding portion of a distributed control system configuration on the other side, allowing a user to, for example, drag and drop items from one side to the other, or otherwise use the visual representations to make merging more efficient and / or accurate.
[0072] Additional comments Unless otherwise specified, references herein to words such as "processing," "computing," "calculating," "determining," "identifying," "presenting," "displaying," and the like, may refer to mechanical (e.g., computer) acts or processes that manipulate or transform data represented as physical (e.g., electronic, magnetic, or optical) quantities in one or more memories (e.g., volatile memory, nonvolatile memory, or a combination thereof), registers, or other mechanical components that receive, store, transmit, or display information.
[0073] When implemented in software, any of the applications, services, engines, routines, and modules described herein may be stored in any tangible, non-transitory computer-readable memory, such as a magnetic disk, laser disk, solid-state memory device, molecular memory storage device, optical disk, or other storage medium in the RAM or ROM of a computer or processor. It should be noted that while the exemplary systems disclosed herein are disclosed as including software and / or firmware executing on hardware, among other components, such systems are merely illustrative and should not be considered limiting. For example, it is contemplated that any or all of these hardware, software, and firmware components may be embodied exclusively in hardware, exclusively in software, or in any combination of hardware and software. Thus, one of ordinary skill in the art will readily appreciate that the examples provided are not the only way to implement such a system.
[0074] Thus, while the technique of the present disclosure has been described with reference to specific examples, these are intended to be illustrative only and not limiting, and it will be apparent to those skilled in the art that modifications, additions, or deletions may be made to the disclosed embodiments without departing from the spirit and scope of the invention.
Claims
1. 1. A non-transitory computer readable medium storing instructions for implementing a merge assist configured to facilitate integration of modular control systems into a distributed control system, the merge assist comprising: Detecting modular control systems coupled to a local area network on which the distributed control system operates; Retrieving configuration data from the modular control system; and generating a series of user interface screens for guiding an operator during integration of the modular control system into the distributed control system, the screen including generating at least one screen listing a number of configuration items in the configuration data of the modular control system that conflict with configuration data of the distributed control system.
2. Modifying the conflicting configuration items according to operator input; The computer-readable medium of claim 1 , further configured to load the modified configuration item into at least one of a configuration database of the modular control system or a configuration database of the distributed control system.
3. The merge assistance includes: In response to detecting the modular control system, (i) one or more licenses using which modular controllers of the modular control system are set up; (ii) a node configuration of the modular controller; (iii) the software version of the modular controller; and (iv) automatically identifying at least one of the locales in which the modular control system is set up; and further configured to provide a notification indicating a result of the verification.
3. The computer readable medium of claim 1 or 2.
4. 4. The computer-readable medium of claim 1, wherein the merge assist is further configured to automatically generate a suggested alphanumeric string to be appended to the configuration item to resolve a conflict with the configuration data of the distributed control system.
5. The configuration item is a first configuration item, and the merge assistance comprises: identifying a second configuration item that is in conflict with a configuration item at another node of the distributed control system; confirming an item type of the second configuration item; 5. The computer-readable medium of claim 1, further configured to generate an alert regarding the second configuration item in response to determining that a type of the second configuration item corresponds to a configuration item persisted in the modular control system.
6. 6. The computer-readable medium of claim 1, wherein the merge assist is further configured to provide, in the set of user interface screens, a screen for decommissioning a node of the modular control system and automatically recommissioning a node of the modular control system with updated configuration data.
7. one or more processors; a user interface coupled to the one or more processors; 11. A non-transitory computer-readable medium storing instructions for implementing a merge assist configured to facilitate integration of modular control systems into a distributed control system, the merge assist comprising: Detecting modular control systems coupled to a local area network on which the distributed control system operates; Retrieving configuration data from the modular control system; generating a series of user interface screens for guiding an operator during integration of the modular control system into the distributed control system, the screen including generating at least one screen listing a number of configuration items in the configuration data of the modular control system that conflict with configuration data of the distributed control system; A computer device comprising:
8. The merge assistance includes: Modifying the conflicting configuration items according to operator input; The computer apparatus of claim 7 , further configured to load the modified configuration item into at least one of a configuration database of the modular control system or a configuration database of the distributed control system.
9. The merge assistance includes: In response to detecting the modular control system, (i) one or more licenses using which modular controllers of the modular control system are set up; (ii) a node configuration of the modular controller; (iii) the software version of the modular controller; (iv) automatically identifying at least one of the locales in which the modular control system is set up; and further configured to provide a notification indicating a result of the verification.
9. Computer apparatus according to claim 7 or 8.
10. 10. The computer apparatus of claim 7, wherein the merge assistance is further configured to automatically generate a suggested alphanumeric string to be appended to the configuration item to resolve a conflict with the configuration data of the distributed control system.
11. The configuration item is a first configuration item, and the merge assistance comprises: identifying a second configuration item that is in conflict with a configuration item at another node of the distributed control system; confirming an item type of the second configuration item; 11. The computing device of claim 7, further configured to generate an alert regarding the second configuration item in response to determining that a type of the second configuration item corresponds to a configuration item persisted in the modular control system.
12. 12. The computing device of claim 7, wherein the merge assist is further configured to provide, in the set of user interface screens, a screen for decommissioning a node of the modular control system and automatically recommissioning a node of the modular control system with updated configuration data.
Citation Information
Patent Citations
Method and apparatus for controlling network devices
US6574234B1