CN103793346B - The method of the function of automatic control system, machine readable media and modification part - Google Patents

The method of the function of automatic control system, machine readable media and modification part Download PDF

Info

Publication number
CN103793346B
CN103793346B CN201210452565.4A CN201210452565A CN103793346B CN 103793346 B CN103793346 B CN 103793346B CN 201210452565 A CN201210452565 A CN 201210452565A CN 103793346 B CN103793346 B CN 103793346B
Authority
CN
China
Prior art keywords
chain
chain connector
data
resource
change
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210452565.4A
Other languages
Chinese (zh)
Other versions
CN103793346A (en
Inventor
道格拉斯·W·里德
约瑟夫·布罗尼科夫斯基
迈克尔·D·卡兰恩
史蒂文·约翰·科瓦尔
苏比安·戈文达拉杰
塔里尔·J·贾斯帕
肯尼斯·S·普拉赫
道格拉斯·J·赖夏德
查尔斯·M·里斯查尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Rockwell Automation Technologies Inc
Original Assignee
Rockwell Automation Technologies Inc
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
Priority claimed from US13/663,347 external-priority patent/US9606521B2/en
Application filed by Rockwell Automation Technologies Inc filed Critical Rockwell Automation Technologies Inc
Publication of CN103793346A publication Critical patent/CN103793346A/en
Application granted granted Critical
Publication of CN103793346B publication Critical patent/CN103793346B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

One kind is provided to automatically control and monitoring system, including can work in conjunction with change data or generation event can chain connector.The resource automatically controlled with monitoring system can be polymorphically defined based on common object model.Can link can chain connector to utilize and/or influence any kind of resource.

Description

The method of the function of automatic control system, machine readable media and modification part
The cross reference of related application
The application is entitled " the Chainable Plugin Business Logic submitted on November 11st, 2011 Through a Generalized Object Model " U.S. Provisional Patent Application No.61/559,020 non-provisional Shen Please, it is incorporated into herein by quoting.
Background technology
Embodiment of the disclosure relates generally to automatically control the field with monitoring system.More specifically, the reality of the disclosure Apply example and be related to automatically control and link plug-in architecture with monitoring system.
Especially in industrial setting, it is widely applied for automatically controlling to exist with monitoring system.Such application can be with Including various executing agencies, such as the power estimation of valve, motor etc. and the Data Collection via sensor.Typical case Automatically control and can include one or more parts with monitoring system, such as:Program terminal, automatic controller, input/defeated Go out (I/O) module and/or man-machine interface (HMI) terminal.
Either " HMI " is generally used for monitoring or controls various processing for man-machine interface.HMI can be read from specific register Take or write to specific register, to allow them to reflect the mode of operation of various machines, sensor, processing etc.. Interface can also write register and memory, to cause them to a certain extent can be with the function of control process.Independent Function for monitoring in, seldom or do not perform actual control.In many other settings, using similar equipment, such as In automobile, aircraft, business setting and many other applications.In numerous applications, interface can not be with remote equipment or Processing communication, but can be operated in an independent way.
In these interface equipments, with object in the interface can be from industrial automation equipment different controls, prison Depending on or any other parameter be associated.Some objects in these objects may have visual representation on interface equipment, and Other objects may not visually be represented but can be with accessible by user for configuring and program.User may expect example Such as by create new object, replicate object, edit object operates these objects, to create and self defined interface.
Automatically control with can each utilize control one or more with monitoring system in the part in monitoring system The status information of individual object (for example, the configuration of control program, label, module and HMI screen).Sometimes, part can be used for Change the status information of object.Therefore, part may need the change of state being communicated to control and monitoring system, to cause it His part can know control and the state change of the object of monitoring system.The change for lower state that actually there is something special can include Control and some objects in monitoring system are deleted in addition.For example, pass on control and the biography of the state of monitoring system object System method includes the whole state of object being supplied to control and monitoring system.It is now appreciated that such method is sometimes poorly efficient , it is provided more than description control and information necessary to the state of the change of the object in monitoring system.Object is provided Whole state may cause to pass on bandwidth inefficiency during status data and consumption low with using the processing in data procedures Effect.In addition, it is now appreciated that this method for providing total state data may increase in some cases the possibility of following situations Greatly:Override because of carelessness to being arranged on control with other state changes in monitoring system.
In addition, conventional method is by centralized Control and monitoring.For example, traditional control controls with monitoring system by description The centralized data model of system.Dependence to centralized data model may cause to handle poorly efficient and to trustship centralization number According to the increase of the dependence of the part (such as controller) of model.
The content of the invention
It outlined below some embodiments suitable with initial scope of the claimed invention.These embodiments are not meant to The scope of claimed invention is limited, these embodiments are intended merely to provide the brief of the possible form of the present invention on the contrary Summary.In fact, the present invention can include various forms that can be similar or different from embodiment set forth below.
The present embodiment offer is a kind of to automatically control the state change of conveyed object between the part in monitoring system Novel method.Because state change occurs in control with monitoring system, so the data of change only are communicated into control With the miscellaneous part in monitoring system.Controlled for example, control can include control program, label, module with monitoring system object And the figure for HMI screen.When the factor change of these objects, the key element of change can be provided to data-driven The part of the status information of mode storage object.By only providing the key element of change, a full set of key element without being to provide object can To significantly decrease the data volume for being delivered to part.In addition, when object is deleted, it may not be necessary to the total state of object.Instead And the instruction of the object of deletion can be only provided, thus reduce the data volume to be transmitted in the case where object is deleted.This Outside, providing change with data-driven version may make it that it is unknowable to pass on, or be not dependent on specific programming technique.
In addition, the present invention is provided using the enforcement engine for being distributed across control and monitoring system to apply the change of reception and registration And/or distributed command, with based on change come the novel method of asynchronous execution order.For example, control and the portion of monitoring system One or more parts (for example, dexterous I/O equipment, program terminal, PLC and HMI etc.) in part can each include Embedded enforcement engine.Enforcement engine can be stored in tangible, nonvolatile, the computer-readable medium of part On.When activated (for example, by receive change status information), control with it is embedded in the various parts of monitoring system Enforcement engine can asynchronously be responded based on trigger or predetermined execution time.For example, distributed command can be used The command script made a response in a manner of one or more of to state change that family and/or system define.By by means of embedding Enter the enforcement engine on part of the control with monitoring system to make it possible to perform control logic, more efficient place can be produced Reason.For example, this carry into execution a plan can preferably utilize more centres by the way that logic is distributed across into control with monitoring system Manage unit (CPU) core.
Brief description of the drawings
When reading following detailed description referring to the drawings, the these and other feature, aspect and advantage of the present embodiment It will be better understood when, same mark represents same part in whole figures, in the accompanying drawings:
Fig. 1 is the general overview automatically controlled with the framework of the part of monitoring system according to certain aspects of the invention Figure;
Fig. 2 is the diagram overview according to an embodiment of the invention automatically controlled with monitoring system;
Fig. 3 is the overview of some functional parts in interface according to an embodiment of the invention and program terminal;
Fig. 4 is the overview of some views or container of equipment key element according to an embodiment of the invention;
Fig. 5 is Fig. 1 control and the figure of monitoring system, it illustrates according to embodiment be used for pass on holding for state change The use of longization object model;
Fig. 6 shows that the state between the instrument of the change according to embodiment, the moderator of change and audience members becomes Change the progress passed on;
Fig. 7 shows the processing in the case where state change does not complete according to embodiment;
Fig. 8 show according to embodiment make external change during uncertain editor in the case of processing;
Fig. 9 shows the processing for being used to stop uncertain change according to embodiment;
Figure 10 shows the processing for being used to uncertain change be compressed into one group of change according to embodiment;
Figure 11 is shown performs automatically controlling and supervising for control command according to embodiment using distributed execution engine Viewing system;
Figure 12 shows the processing cycle performed by enforcement engine according to embodiment;
Figure 13 shows the processing for traffic order according to embodiment;And
Figure 14 shows that one kind automatically controls and monitoring system, the system using can chain connector change the control and prison The function of viewing system.
Embodiment
Generally, when state change is communicated, control seriously relies on automatic controller with monitoring system, such as programmable Sequence logic controller (PLC), and automatic controller program (for example, PLC is programmed) to be influenceed on control with monitoring system. Automatic controller programming seriously by task and/or logic based on event and/or based on program execution (for example, with The machine readable instructions that programming language is write, such as relay ladder logic) come to controlling the change with monitoring system to carry out shadow Ring.Automatic controller, which is often used in, consumes all input data, calculating and the change for being distributed output data, processing data Change and by data distribution to control and monitoring system part.Unfortunately, such part to by controlling with monitoring system (for example, automatic controller and automatic controller programming) influences and the heavy dependence of the centralized data model of trustship result in perhaps It is more inefficient.For example, with for the scheduling of centralized model and the task based on event number increase, due to that may lead Many additional changes of single model are caused, it may occur that the deterioration of performance.In addition, the serious use of centralized model (for example, via automatic controller) creates the method more concentrated of processing control logic, causes the poorly efficient of control logic to be held Row, Single Point of Faliure (for example, when automatic controller breaks down, whole control may break down with monitoring system), and The processing load to automatic controller may be caused.
According to the present embodiment, by using distributed data model, distributions change is passed on and distributed command Perform, control can become more flexible with monitoring system.For example, by providing increased association with monitoring system in whole control Make ability, increased data redundancy and processing load balance, embodiment shows more robust and flexibly automatically control With monitoring environment.
Robust control and monitoring system
Many aspects, part and processing will be described by following discussion.Via introduction, overall system summary purpose exists It is herein in being located at these innovations.Fig. 1 is control for interface and monitoring software framework in accordance with an embodiment of the present disclosure 10 graphic representation.Framework 10 is advantageous to by using the interconnection mechanism 12 based on module come constructing function software, interconnection mechanism 12 inherently support dynamic operation and configuration.The dynamic operation and allocative abilities are beneficial to effectively provide spy for configurable interface The abundant configuration surroundings of sign.That is, as described below, individual equipment key element is configured to the independence that can be programmed individually The code of operation, prewrite to use when in storehouse, it is self-defined they function and the outward appearance in screen, and be mutually connected Connect to supply information to user and control and function for monitoring.
Framework 10 includes may belong to two related software environments of individual system (for example, computer).Specifically, transport Environment 14 makes operator (for example, people user) to interact with the application during row, such as (for example, using interface during operation Period, generally during being interacted with the processing in operation or observation operate in processing during) processing.Environment during design 16 allow designers to configure interface and its part.For example, system can via runtime environment 14 display (for example, meter Calculation machine or interface equipment screen) on give operator by operation information is graphically present.In addition, system can include being used for Receive can via runtime environment 14 come detect and manage operator input device (for example, keypad).Environment is for example following Interaction as detailed description, provides the use of the interface greatly enhanced and programming in an innovative way.
Runtime environment 14 includes or is provided with the entrance for leading to equipment key element 18.Equipment key element 18 is software part, It can include any key element that accesses or can configure in software environment.For example, when equipment key element 18 includes passing through operation Environment 14 is come the software part that manages, such as " ActiveX " control or " .NET " part." ActiveX " and " .NET " refers to It is the concept, technology and instrument of object-oriented.Generally those skilled in the art will very familiar such Programming Methodology. Herein, such standard should be considered merely as being example, and " equipment key element " is construed as including and any can made The independent key element that is defined and the substantially similar part or self-liquidating program run, it is sometimes referred to as " object ".For Be present other standards and platform in such key element, generally supported by different companies or industrial colony.
Because such equipment key element is basic for some concepts in concept set forth herein, first press Order is slightly introduced.Equipment key element generally includes four features:Property, method, connection (or contact) and communication interface. Herein, property is the attribute that can be adjusted, such as defining expression or image of the key element in screen view, and The position of key element on screen etc..Herein, method be executable function (be referred herein as sometimes key element " feature " or Person's " state engine "), and define by performing key element the operation that carries out.Herein, connection is the link between key element, And it can be used to make (reading from memory or write-in memory) data be sent to another key element.
The specific example of equipment key element 18 can include software push buttons, timer, gauge table, plc communication server, visual Change (such as showing automatically controlling the screen with the state of the part in monitoring system) and apply.Generally, it is substantially any can The function of identification can be configured to such key element.In addition, as discussed below, such key element can communicate To carry out various displays, monitoring operation and control function.It is noted that equipment key element 18 need not be used to support design mould The special limitation of formula.Moreover, although the key element associated with image is highly useful, in particular for visualization, many will Element can not have a visual representation, but can in HMI perform function, such as calculate, or even management and at other Data exchange is carried out between key element.
Runtime environment 14 is operated usually using communication subsystem 20.Communication subsystem 20 will suitable for interconnection equipment Element 18.In fact, communication subsystem 20 can be viewed as comprising the connection of equipment key element 18.However, communication subsystem 20 can be with Including sending data to external circuit and a series of softwares, hardware and the firmware of data being received from external circuit, such as from Movement controller, other computers, network, satellite, sensor, executing agency etc..
Runtime environment 14 is operated usually using behavior subsystem 22, and behavior subsystem 22 will suitable for management equipment The behavior of element 18.For example, the responsibility of behavior subsystem 22 can include it is as follows:Place and mobile device key element, modification equipment will Element, equipment key element is gathered on interchangeable screen, preserved and recovered screen layout, management security, preservation and recovers connection row Table, and provide remote access to runtime environment 14.Equally, in fact, such behavior can be referred to as each equipment will A part for the profile (profile) (that is, " method " or " state engine ") of element.
Environment 16 includes the advance realization of behavior subsystem 22 during design, and the advance realization of behavior subsystem 22 is beneficial to not In the case of the behavior for hindering or damaging runtime environment 14, runtime environment 14 is directly or indirectly operated.Namely Say, equipment key element 18 can also be designed and reconfigure in the case that interface is by operation.Behavior subsystem 22 is via setting The long-range offer of timing environment 16 carrys out extended access runtime environment 14, such as in the browser of routine.Behavior subsystem 22 Allow designer via long-range program terminal by by design when environment 16 or design when environment 16 aspect from HMI provide to Program terminal, the aspect of HMI runtime environment 14 is interacted and changed with the aspect of HMI runtime environment 14.For example, Can be on knee by being supplied to environment 16 during specific design via network via the HMI of network-coupled to laptop computer Computer provides the user with allocative abilities.
The details and example presented below for how realizing this point.In the present example, environment 16 can be during design Dynamic content is provided with reference to Dynamic Hyper Text Makeup Language (DHTML) and Active Server Pages (ASP) server script Product to browser.ASP scripts are the codes of bespoke, are included in the page and are sent to before user in server (example Such as, Web server) on one or more scripts (that is, small embedded program) for handling.Generally, in routinely applying, this The script prompt server of sample makes a change from database access data and in database.Next, sent by the page Before requestor, script generally constructs or the self-defined page.As discussed below, such script is very different Ground is used in this framework, such as in the case of the feature of no equipment key element or the prior knowledge of their correlation Create visualization.
By promoting the change of equipment key element, environment 16 allows designer to make the special reality of behavior subsystem 22 during design Now or interchangeable set timing model.The specific example realized during the design of behavior subsystem 22 includes the design based on Web When environment 16, TCP/IP connection of the environment 16 between HMI and remote equipment is come extended access HMI during design based on Web On runtime environment 14.Environment 16 is beneficial to manage in the case where not endangering runnability or safety during design based on Web Manage equipment key element.In a special realization, behavior subsystem 22 give designer's use be able to access that relevant interface or HMI Web browser operates the ability of the aspect of runtime environment 14.As described above, and as described in detail below, this Realized by using the combination of the configuration of dynamic content, script and equipment key element property.
Fig. 2 is the control and monitoring of realizing said frame for example for industrial automation in accordance with an embodiment of the present disclosure The graphic representation of system 24.System 24 includes HMI 26, and HMI 26 is suitable to and the part of networking and configuration equipment connection.System 24 Be shown as including HMI 26, HMI 26 be suitable to by control/supervision equipment 30 (for example, remote computer, automatic controller, Such as programmable logic controller (PLC) (PLC), or other controllers) come with processing 28 part cooperation.HMI 26 can be with physics Ground is similar to existing hardware, such as panel, monitor or autonomous device.
Cooperation between HMI 26 and the part for handling 28 can be promoted by using any appropriate network strategy.It is real On border, industry standard network, such as DeviceNet can be used, enables to carry out data transfer.Such network allows Data exchange is carried out according to predefined agreement, and the ability for operating networking key element can be provided.Though as described above, Networked system and the system for combining controller and other equipments, described HMI 26 and volume are so with reference in being currently discussed Journey technology can be equally applicable to non-networked part (for example, GPS display, game display, mobile telephone display, tablet personal computer Display etc.) and suitable for the networked system outside industrial automation.For example, arrangement described below and processing can Be used for facilities management, automobile and vehicle interface, computer numerical control (CNC) machine, point of sale (POS) system, for business The control interface in market (for example, elevator, entrance system) etc., is named a few.
By corresponding behavior management subsystem and construction operation when or operating environment 14 stored and reside in HMI On 26.For example, such behavior subsystem may be adapted to from storage location loading application configuration framework (for example, 10), such as During HMI 26 initial manufacture or setting.When loaded, the application framework of storage may be adapted to create screen and Location user interface device key element in screen (corresponding with key element actual image or figure represent).These application, screens And the equipment key element that user interface key element is each type.As described below, HMI 26 includes regulation layout and equipment The application of the storage of the interaction of key element.Environment 16 is also loaded and resided in during the design based on Web of engine during based on operation On HMI 26.During design environment 16 may be adapted to for design when both environment and runtime environment handle advanced feature (example Such as, safety management).
HMI 26 may be adapted to allow user to interact with substantially any processing.For example, processing can include:Compressor station, Oil plant, the batch operation for manufacturing food item (food items), the assembly line etc. of mechanization.Therefore, processing 28 can With including various functional units, such as motor, valve, executing agency, sensor, or countless manufactures, processing, material process And other applications.In addition, processing 28 can include being used to adjust the control of processing variable by automating and/or observing Equipped with monitoring.The processing 28 shown includes sensor 34 and executing agency 36.Sensor 34 can include be adapted to provide on Many equipment of the information for the treatment of conditions.Executing agency 36, which can be similarly included, is adapted for input signal to carry out machinery Many equipment of effect.
As shown, these sensors 34 and executing agency 36 and control/supervision equipment 30 (for example, automatic controller) Communicating and can be assigned to can be by the specific address in control/supervision equipment 30 that HMI 26 is accessed.The He of sensor 34 Executing agency 36 can directly be communicated with HMI 26.These equipment can be used to operate processing equipment.In fact, they It can be used in processing cycle, the processing cycle is controlled and monitored by control/supervision equipment 30 and/or HMI 26.Can be with base In processing input (for example, input from sensor 34) or directly input (for example, the operator received by HMI 26 is defeated Enter) start such processing cycle.
Server software on interface allows to check development environment, and directly reconfigure interface (specifically equipment will Element and the outward appearance and function of their association) checked or configuration software without special.The benefit comes from following facts: Environment belongs to HMI 26 in itself when equipment key element and design, and by HMI 26 " offer " to browsing in program terminal 46 Device or other general readers.In other words, it can reduce or eliminate to outside computer workstation (for example, above-knee Type computer and desktop computer) necessary support.It is noted that " browser " of configuration for checking and changing interface Reference is not limited to Web browser or any specific browser.The reference of browser is intended that exemplary.In general, Term " browser " is used in includes the software of any generic viewer to quote herein.
By the programming of equipment key element as described below, HMI 26 may be considered that including for presentation one or more Multiple screen views or visual instruction and by reference to screen view (for example, button, touch position etc. of screen) Come the equipment key element performed in the case of being interacted with HMI 26.It can be determined by any desired software or software kit Adopted screen view and equipment key element.For example, screen view and equipment key element can be called or performed by operating system 38.As above institute State, the equipment key element according to the present embodiment can meet the object of " .NET " or " ActiveX " standard.Operating system is in itself Can be based on any appropriate platform, such as Window CE, OS-X etc..As cited herein, equipment key element and instrument branch Hold the network service or technology for sending data over a network (e.g., the internet).Therefore it is as described below, these Equipment key element follows the set of rule on information sharing.And by various scripts and programming language accommodation to make With.Such equipment key element makes it possible to be supplied to the applications, such as LAN, WAN, Intranet, extranet to be interaction content To WWW.Therefore, operating system 38 and various equipment key elements are beneficial to by means of browser 48 by allowing to browser 48 Configuration access (such as, there is provided (serving up)) dynamically configure HMI26.
For example, such configuration access includes being used for the access for illustrating equipment key element.In other words, can essentially be from clear Device 48 of looking at creates and performed new equipment key element.Further, it is noted that browser 48 does not need actual function to access.Really, one In individual embodiment, cause via the request of browser 48 based on the operation of the content of equipment key element in data functionality and container " extract out (draw) " sequence, thus actually without providing in terms of function in the case of allow that equipment key element represents show and The access of configuration to them.This allow need not to remote work station technical support in the case of enter via remote work station Row configuration.
In addition to the operating system 38 and equipment key element of (and as described in more detail below) as described above, HMI 26 Including application or application layer 40.The application that equipment key element can be included with itself is beneficial to access and wanted from HMI 26 various equipment Element obtains information.Specifically, the first order in the multilevel device key element that can be performed for and enumerate is represented using 40.In reality During border is realized, the user that XML page face form can be included using 40 applies.Then user apply with user or operator, with And interacted with designer, as described in more detail below.
Screen view and equipment key element can be described as independent executable software.In the present implementation, by using mark Note language (for example, HTML or HTML) the appropriate code write defines screen view.Therefore, Ke Yi The configuration of HMI 26 graphic interface screen is carried out in the case of without using conversion program.In addition, by being carried out to equipment key element Programming, screen view directly can be developed on HMI 26 via following resident service device softwares (being referred to as server 42), should Resident service device software makes resident development environment can be used for remotely accessing.Specifically, in one embodiment, some equipment will The expression (for example, ActiveX is controlled) of element is provided to browser 48 without providing software part in itself.Because can be via Environment when browser 48 accesses exploitation or design, therefore can eliminate and change is downloaded into screen and renewal Remote configuration software The needs of application.
As described above, equipment key element can include feature, they by the feature from generally in other equipment (but Being can also be in HMI) specific memory or storage register read or write specific memory or storage register.Example Such as, specific function can correspond to write the register 32 of control/supervision equipment 30 or posting from control/supervision equipment 30 Storage 32 is read.In simple cases, for example, object accesses one piece of data is (for example, the shape of the part such as determined by sensor State), and output signal is generated to write the value for the state for corresponding to different networked devices.As discussed in more detail below , this status information can be passed on via state increment 43.For example, in the embodiment described in fig. 2, control/monitoring Equipment 30 and HMI 26 can pass on status information with use state increment 43.In addition, program terminal 46 can also use state Increment 43 carries out the reception and registration of status information with control/supervision equipment 30 and HMI26.
Of course, it is possible to configure more complicated function.For example, in Industry Control with monitoring in environment, such equipment will Element can emulate to the operation of a series of physical part, such as momentary contact button, the button with delay output, switch Deng.The equipment key element of many pre-programmeds can use for HMI 26.Such functional module can via network access, It either may reside within HMI 26 or reside in and be directly linked in HMI 26 single equipment.In this way, HMI supplier or software vendor can provide many possible structure blocks, can be to screen and multiple according to the structure block Miscellaneous control is programmed with function for monitoring.In fact, the storehouse 44 of available equipment key element may reside within HMI 26 with Beneficial to HMI 26 is configured, as described below.Screen command can be inputted based on operator to be used to perform desired work(to call The equipment key element of energy, and these instructions can be programmed to the version of pre-programmed key element.For example, operator can pass through touch Position on touch-screen or the key on pressure keyboard provide initial input.It is then based on screen command and associated with instruction Equipment key element (for example, called with specific location triggered or perform pre-configured equipment key element), expectation can be performed Function.Therefore, operator can be interacted with processing generally to change screen view, write-in register or order generation Other outputs or control signal.Unit realization in, interaction can be simply recall or data storage, change screen Deng.
There are many such screens and the HMI of substantial amounts of equipment key element for some, can use one or more Single interface screen.Each equipment key element and then can uniquely it be programmed to consider specifically to input, perform specific work( The signal for specifically exporting and can be generated.As described below, multiple such equipment key elements can be loaded and by Trustship is in single software " container " (for example, ActiveX containers).
It can interact to configure by the screen or panel directly with HMI 26 itself (if there is one) HMI 26, but will perform configuration from long-range program terminal 46 in many cases.For example, via browser 48 or similar Application the access to being resident storehouse 44 and/or operating system 38 and application 40 is directly provided.In the present implementation, in programming eventually Hold and other special-purpose softwares are not needed at 46.In fact, the server 42 resided on HMI 26 can be provided in storehouse 44 The access of equipment key element.By the equipment key element directly on HMI 26 in thesaurus 44, version conflict is eliminate or reduced Deng risk.Therefore.HMI 26 can be directly connected to program terminal 46, or according to distribute to HMI 26 IP address (because Special fidonetFido address) access HMI 26.
Access control scheme can be used for the ability that limitation changes screen and equipment key element.For example, it may be desirable to password Or user's access state obtains such access.In addition, it is presently contemplated that embodiment in, program terminal automatically identifies HMI 26 or following terminals, HMI 26 is resident as being couple to the equipment of program terminal 46 (for example, being similar on the terminal External memory storage or driving).Therefore, it is once connected to program terminal, HMI 26 can be simply " recognized " as can be by The equipment of access (following configuration screen and instrument are provided).
Once the equipment key element then resided on HMI 26 can be programmed terminal 46 and access, then can be self-editing via coming The communication link of journey terminal 46 on HMI 26 directly in terms of changing or updating HMI 26.For example, user may want to update Specific HMI figures to provide data, such as historical data or the information to being received from the sensor 34 newly installed it is related Trend.Updated in addition, user is can be found that in the case of with offline mode (for example, not being immediately performed change) for representing this The HMI figures of the data of sample are desired or convenient.In this case, user can be linked to via program terminal 46 The storehouse 44 of available equipment key element, and make to use it to change HMI figures or function in development environment.
It is noted that additional equipment key element can be added to storehouse 44.For example, if trend equipment key element is not resident in On HMI 26, such element can be downloaded to HMI 26 by user from the repository 50 resided in program terminal 46.Or User can access trend equipment key element via network (for example, internet) from addressable resources bank 52, directly arrive HMI 26 Or pass through program terminal 46.This can be with particularly advantageous, because new and improved equipment key element can be individually and fixed HMI 26 is downloaded on the basis of phase, thus need not regularly publish new conversion program or HMI operating systems or fortune Increase new function during row or when designing in the case of environment software.Development environment can set the link in such storehouse.This Outside, (for example, operating system, server software, device object etc.) in the embodiment using embedded code, due to embedded code Reside on HMI 26, it is possible to avoid and the version conflict of embedded code and program terminal software upgrading can be eliminated Necessity.
For Tracing Control and the status information of one or more parts of monitoring system 24, control and monitoring system 24 Part can use and represent control and the distributed data model of the various aspects of monitoring system 24.For example, distributed data Model can enable the copy of multiple caches of the data model of representative control and monitoring system 24 be present in control with In monitoring system 24 (for example, one or more places in the part with monitoring system 24 is controlled).As below by more detail Ground description, distributed data model can combine increment script and distributed command processing carrys out work.Increment script can make One or more parts of control and monitoring system 24 can determine the state change of data model, and generation only includes data mould The change of type and/or the increment script of whole data model, and increment script is supplied to its of control and monitoring system 24 His part.The data that miscellaneous part can consume increment script and will be contained in increment script are applied to local data model Cache copy (for example, included in control and distributed copies of one of the part of monitoring system 24).In addition, such as with Under will be discussed in, some parts of control and monitoring system 24, which can utilize, to be allowed at distributed command The distributed execution engine of reason.Such distributed command processing enables control and the distributed elements of monitoring system 24 to be based on It is supplied to event or the scheduling of distributed elements to be performed to handle order.
By using distributed data model, distributed increment communication (for example, via increment script) and distribution Order performs, and caused control and monitoring system 24 can more robusts and flexible.It is, for example, possible to use distributed data model Copy to influence control and the change in monitoring system 24, rather than depending on the collection at centerized fusion/supervision equipment 30 Chinese style data model.For example, HMI 26 can include the copy of distributed data pattern, HMI 26 is influenceed dependent on the copy Within change, rather than rely on the centralized data model at control/supervision equipment 30 to influence HMI 26 change.This Outside, HMI 26 can receive following state increments 43 (for example, via increment script):State increment 43 is consumed by HMI 26, and And it is the local replica for the data model that HMI is applied to by HMI 26.In addition, as will be described in more detail below, HMI 26 can locally execute engine (for example, being distributed in HMI 26 enforcement engine) including following:This locally execute engine for It is useful that offer to HMI 26 order is performed at HMI 26.
In addition, this function enables synchronous data storage to exist throughout control with monitoring system 24.These synchronizations Data storage can be by enabling multiple users to will be synchronous with each data storage in other data storages What individual data storage made a change and made can be cooperated.Further, since data storage can be controlled and supervised with cache The single copy of the data of viewing system 24, it is possible to carry out off line modification.For example, even if when controller is unavailable, pass through Using the data cached in one of data storage high speed, user can modify to controlling with monitoring system 24.Work as user When recovering online (for example, can be with access process device), the modification made by user under offline condition can be with other data Storage is synchronous.Therefore, change can be supplied to control and monitoring system 24 by user with more consistent and reliable way.
For example, user can be in design software (such as the Logix of Rockwell automations limited companyTM) in Tag definitions, metadata definition are changed, the key element renaming of design can be changed alarm setting, change number According to type and/or modification data record situation.Local datastore can be made in these changes submitted by user.When online, These changes can propagate to control and other data storages in monitoring system 24, so as to throughout these changes of the application of system 24 Change.During off line, these changes can be retained in local datastore, and (for example, reconnecting to control when returning to online With the controller of monitoring system 24) then can be synchronous.By the automatic spread of change, the change typing of redundancy can be avoided, So as to save development effort.Debugging and initialization can be reduced in addition, being based on automatic renaming by system 24 and propagating.In addition, Because these changes can originate from whole system, so can allow when different user develops controller and HMI flexible Workflow.
As described above, by distributed data model, via increment script by change propagation to distributed data model, with And distributed command performs, control and monitoring system 24 can be greatly improved relative to Traditional control and monitoring system.For example, Can be by controlling with any one in the multiple copies of the data model of distribution in monitoring system 24 come Service controll and monitoring The client (for example, request control and part of the data of the data model of monitoring system 24) of system 24.Control and monitoring system Which copy system 24 can determine come service client from based on one of many decision factors.For example, it can select specific Distributed data model copy, with based on effectiveness of performance such as high-efficiency network path (for example, close to the copy of client, local Or network path etc. on network or with maximum bandwidth) provide data to client.In addition, processing considers Can be by the phoneme as such decision-making.For example, the control of this robust can enable data be carried with monitoring system 24 It is supplied to the client using load-balancing technique.In one embodiment, can from comprising it is known or may than control and prison The other part of viewing system 24 provides the parts of the distributed copies of the data model of less request to clients providing data. In one example, control can include two control/supervision equipments 30 (for example, 2 automatic controllers) with monitoring system 24. Control can predict or observe the first control/control of supervision equipment 30 to the second/supervision equipment 30 with monitoring system 24 and receive more More requests to data.Therefore, control can be determined from the service client of the second control/supervision equipment 30 with monitoring system 24 To avoid excessive use first from controlling/supervision equipment 30.Thus, control can be by based on control and monitoring with monitoring system 24 The load of part in system 24 and balancing requests, to avoid the overflow of control/supervision equipment 30.In certain embodiments, this It can include asking to provide the amount to the number of threshold values of request or data and being moved to when a threshold is reached excessive from single part Stream source.In certain embodiments, this can be included in when providing data and substantially uniformly share the load of request or the amount of data.
In addition to the load balance ability of distributed data model, increment script and enforcement engine can be provided, this A little abilities can also be beneficial to control and the data redundancy in monitoring system 24.For example, control and one in monitoring system 24 Or multiple parts can monitor one or more distributed copies of data model.Once detect that copy is unstable (such as not The copy of distributed model is represented exactly), copy that unstable copy can stablize (such as distribution is represented exactly The copy of model) replace.Control and monitoring with the copy for representing data model exactly can be confirmed as from being distributed in Any one in other copies of data model in system 24 obtains stable copy.
In certain embodiments, control can access following redundancy ponds with the part of monitoring system 24, the redundancy pond to point The control of effective copy of effective copy or distributed storage data model of cloth data model and the part of monitoring system 24 Pointer is provided.For example, when the data in client component requests data model, where it can obtain data to reception and registration Redundancy pond conduct interviews.As described above, control and one or more parts of monitoring system 24 can monitor data model Copy, to determine unstable copy.When detecting one or more unstable copies, control and monitoring system 24 Part can remove the pointer of unstable copy or store the control of unstable copy and the part of monitoring system 24.Cause This, can not access unstable copy via redundancy pond.
In certain embodiments, as described above, removing unstable copy (or the copy that storage is unstable from redundancy pond Part) after, control can use version stably replace unstable copy with the part of monitoring system 24.Unstable After copy is replaced, control and the part of monitoring system 24 can will replace stable release (or stable release replaced in storage Part) rejoin the redundancy pond for being back to and using in the future.
In order to preferably show design when environment and runtime environment between relation, Fig. 3 provide represent HMI 26 with The high level flow chart of the interphase interaction of program terminal 46.The following provide the more details on this process.Generally, use It will include operating system or configuration processor software 38, application software 40 and any in the platform of HMI 26 and program terminal 46 Communication software, microprocessor, network interface, input/output hardware, wildcard software library, data base administration, user interface software etc. (not specifically shown in Fig. 3).In the illustrated embodiment, platform interacts in HMI 26 when platform and operation during design. Platform provides following view during design, and (such as operation is suitable with environment 16 during the design for accomplishing desktop PC for the view Operating system 38 such as Windows XP, Windows Vista or Linux) and when running platform via operating system (such as Windows CE, Linux) with design when platform cooperation.Platform provides dynamic state server content 54 during design, and platform when running Show the view (if providing display screen on HMI 26) on HMI 26 itself.Environment 16 is in (the example of browser 48 during design Such as Web browser or other general browsers) in show.
Fig. 3 very high level show design when environment 16 how with operating system 38, using 40 and runtime environment 14 Interaction.Arrow 56 represents that HMI 26 exchanges with the dynamic content between program terminal 46.Environment 16 when generally, with designing Interaction is the task of following designers 58, and designer 58 initially configures HMI screens or visualization, equipment key element and their work( Can and it interact, or designer 58 reconfigures this software.Runtime environment 14 is generally by operator 60 directly in HMI Interacted on 26 with environment 16 during design.It should be noted that when when design, environment 16 has special requirement, in this implementation In example, this is largely dependent upon operating system 38, using 40 and runtime environment 14.Ring when environment 16 and operation during design Border 14 can utilize some fiducial techniques, and (such as DHTML, HTML, HTTP, dynamic state server content, JavaScript, Web are clear Look at device) platform and to be operated respectively in design in platform during operation.Although in the embodiment illustrated, runtime environment 14 Belong to the platform of difference with environment 16 during design, but in certain embodiments, runtime environment 14 can with environment 16 when designing To belong to identical platform.For example, platform and platform can be configured as or be considered as single platform during operation during design.
In one embodiment of the invention, Web is implemented when make use of design.Such as by the dynamic state server content in Fig. 3 54 is being recorded and by discussed below, and Web is implemented by using being supported with the DHTML from HMI during the design The speed of software when Web browser (for example, 48) operates in design to provide on platform and flexibility.DHTML is used to pair set Web content in timing environment 16 carries out dynamic operation.In addition, using dynamic state server content 54 with by Dynamic Web in HMI Environment 16 when content uses design.The dynamic client-server environment enables web browser to be directed to Application when in the case of about handling the software to be collected to operating in design on platform is simulated.
Fig. 4 is the figure of one or more equipment key elements in environment when showing the design according to this technology embodiment. The figure includes passing through between display 100 (for example, the screen shown for browser), attribute Editor 102 and HMI 26 Relation is come the interaction that shows.
Environment includes static content 104 and dynamic content during the design represented with configuration screen or display 100.In dynamic Holding is included with 106 corresponding image of equipment key element that is any shown or representing (for example, virtual on/off button, measuring instrument Device).In one embodiment of this technology, image is specified by the image tag in HTML, and is by being retouched as following A part for the jpeg file that the HMI stated is created.Static content 104 can be created by Active Server Pages (ASP) server Build, or it can be preexisted in html file.It should be noted that in certain embodiments, the designer only specified is Edlin can be entered to static content 104.
Environment includes static content 104 and dynamic content during the design represented by configuration screen or display 100.In dynamic Holding is included with 106 corresponding image of equipment key element that is any shown or representing (for example, virtual on/off button, measuring instrument Device).In one embodiment of this technology, image is specified by the image tag in HTML, and is by such as following institute A part for the jpeg file that the HMI of description is created.Static content 104 can be created by ASP servers, or it can be pre- Pre-exist in html file.It should be noted that in certain embodiments, the designer only specified can be to static content 104 enter edlin.
In Fig. 4 expression, equipment key element represents that 106 are included in view container 108.Such as those skilled in the art institute Understand, container typically limits the part in the processing space opened particular device key element and can used.Therefore, container 108 can be corresponding with the first view container of the key element for only including to watch in current screen.As discussed above, exist Many such screens can be set in HMI.Other screens can be provided with other view containers such as container 110 as substituted Control or interface screen.Usually, in order to accelerate HMI operation (e.g., the change between screen view), by limiting these Each equipment key element of expression associated or that equipment key element is provided with it, to predefine these view containers and incite somebody to action Its is associated with each other.The all devices key element that global container 112 can be defined to include needed for various view containers and any The other element not represented in view container.As figure 4 illustrates, therefore, view container 108 includes performing " slow-motion To (jog) " function and by the expression in the first screen come the virtual push button 106 that shows.If new container 110 includes dry part Such as START button 114, " stopping " button 116, virtual instrument 118 and digital read out 120.Global container 112 can then wrap Include all these equipment key elements for various view containers, and required for the operation of visible equipment but its own is invisible Any equipment key element 122.These equipment key elements can include performing calculating, trend analysis, communication and many other functions Key element.
Fig. 4 also show the attribute Editor 102 that user wherein can access each attribute of key element 106.As above institute Discuss, key element 106 can also include it is associated with key element 106 contact and text, its can also by user by with attribute Editing machine 102 similar editing machine configures.
In one embodiment, attribute Editor 102 can by reside in HMI 26 from browser (e.g., Fig. 2 Browser 48) interacted to the inquiry string of server 96 (e.g., HTTP server) with HMI 26.Server 96 and bag The ASP servers 98 for including the interconnection mechanism 12 based on module of such as dynamic link library (DLL) are cooperated to receive and respond Inquiry.DLL allows executable routine being stored as single file, when program needs or quotes, these single file energy Enough it is loaded.In the examples described above, when receiving calling, by the heavily loaded page of ASP servers 98 and inquiry string is entered The initial parsing of row causes to assess movement directive.Server side scripting and then the equipment key element 18 to being represented by image 106 Conduct interviews to update its position attribution.Then new attribute information is updated on the page and passes to the page Browser 48.
Pass on state change
The distributions change performed through discussing using combining by increment script and distributed command uses The benefit of distributed data model, distributions change notification will be discussed in further detail below.It is as discussed above , Fig. 2 is to be adapted in use to increment script according to this technology embodiment to provide the exemplary control of unit information and prison The outline of viewing system 24 represents.As shown, control can include one or more man-machine interfaces with monitoring system 24 (HMI) 26 and suitable for entering one or more control/supervision equipments 30 of line interface with the part of processing 28.Control/monitoring is set Standby 30 can include contributing in control with performing task (e.g., processing control, remote equipment monitoring, data in monitoring system 24 Obtain etc.) one or more processors and data storage device.In addition, program terminal 46 can cause it is one or more Individual user can configure to HMI 26 and/or control/supervision equipment 30 attribute.
In environment is controlled, control and the various objects of monitoring system 24 (e.g., control program, label, module configuration and HMI screen) state can be stored in control (e.g., program terminal 46, control/monitoring are set with all parts of monitoring system 24 Standby 30, I/O modules and/or HMI terminal 26) memory (e.g., hard disk drive, read-only storage, and/or arbitrary access are deposited Reservoir) in.Control with the part of monitoring system 24 each can by loose coupling, it is asynchronous in a manner of be operating independently.In addition, Part can be different programming technique (e.g., C++, Java, and/or C#) implement.Due to believing the state for controlling environmental objects Breath is made that change, it may be necessary to synchronizes the status information with the status information resided on miscellaneous part, to cause Part can continuously understand control and the state of the object in monitoring system 24.According to the present embodiment, in order to keep notifying shape State information, the self-winding parts of storage state information can receive the data (state e.g., changed for being referred to as state increment 43 Key element), do not change also without reception and be already present in the state stored on all parts of storage state information State key element in information.For example, state increment 43 can include because control with the effect in monitoring system 24 and changed Any data.By providing state increment 43 without providing unchanged status information, the raising of efficiency can be observed.Example Such as, can will be each in 100 state key elements in traditional control with 100 state key elements and monitoring system 24 It is supplied to each part for the status information for storing that object.By only providing state increment 43, control and monitoring system 24 Part can only transmission for the data of key element that have changed.Therefore, will if only having a state in 100 state key elements Element changes, then will not transmit other 99 key elements, so as to the network traffics reduced relative to legacy system.In addition, only provide State increment 43 can reduce the state change information that the other places generation in control with monitoring system 24 has been override because of carelessness Possibility.For example, in the case of 100 state key elements being generally noted above, if all 100 state key elements are transferred to Miscellaneous part, then 99 unchanged key elements may cause the overriding that elsewhere one of this 99 key elements are made with change.Pass through Unchanged key element (e.g., state increment 43) is only provided, it is that above-mentioned 99 unchanged key elements can not have been changed and with The influence of one key element of miscellaneous part communication.
The purposes of state increment 24 is now been discussed, Fig. 5, which is shown, to be included for control and monitoring system 24 Part between the control of persistence object model passed on of state change and monitoring system 24.For example, above-mentioned part Control/supervision equipment 30 (e.g., PLC) can be included, provide the program terminal of item file 150 and such as trustship persistence object mould The part of the control/supervision equipment 30 and client 156 of type 152 and collaboration session 154.As discussed previously, control/monitoring Equipment 30 may be adapted to enter line interface with 28 (Fig. 1) of processing part.Item file 150 can be to control and monitoring system 24 Restriction and each attribute for being stored in program terminal 46 (Fig. 1) memory (e.g., hard disk drive) be indicated Computer documents exports.Persistence object model 152 can be control with (e.g., being led in a manner of lasting in monitoring system 24 Cross and status data be stored in the non-volatile memory medium such as hard disk drive) to controlling and the status number in monitoring system 24 According to change keep tracking one or more parts status data computer model.Persistence object model 152 can All it is by persistence object for use as reception and registration authenticating party is changed to cause the change made to the state of object of all submissions Model 152 is stored and passed on.As in following be discussed in greater detail, collaboration session 154 can be control and monitoring Interactivity information Fabric Interface between the part of system 24, it (e.g., is carried for the offer environment of making of uncertain change in user's selection After handing over some to change, only these changes can be transferred in the miscellaneous part of control and monitoring system 24).Client 156 can To be control and the status information of object is preserved any other part in memory by monitoring system 24, such as, there is provided The part of the expression view of object.
In the embodiment illustrated, shown part (provide collaboration session data 154 control/supervision equipment 30, The program terminal of updated item file 150 is provided, control/prison of persistence object model 152 and collaboration session 154 is provided Depending on equipment 30 and client 156) in each included data capsule 158 (e.g., for data retain memory).Number Include the state key element 160 to controlling the state with one or more objects of monitoring system 24 to be defined according to container 158. State key element 160 can be defined such that different technology (e.g., C++, Java, and/or C#) can be with data-driven version Use the data represented by state key element 160.As discussed previously, it may be desirable to being stored in control and monitoring system 24 Status information in all parts is effectively synchronous.Because one in the state key element 160 being stored in data capsule 158 or More are changed, it may be necessary to which the Data Elements 160 being stored in miscellaneous part are synchronized.
As discussed above, persistence object model 152 can be when in control and all parts in monitoring system 24 Between application state specified authenticating party when changing.Persistence object model 152 can include being referred to as its data capsule 158 In one or more objects status information gold copy 162 thing (as shown by intersecting hachure).Gold Copy 162 includes the copy of status information, and control always considers that the copy is correct with monitoring system 24.In other words, gold pair Sheet 162 is the certified copy of status information.There is the gold copy 162 of its own per bar state information, it may or may not With residing in control together with the gold copy 162 of other status informations with monitoring system 24 (e.g., in same computer system On).If have submitted one or more state factor changes, the key element of change is provided in the form of increment script 170 To gold copy 162, increment script 170 is updated based on state factor change.Then by increment script 170 by state key element Change from gold copy and be supplied to control and the miscellaneous part in monitoring system 24.
In order to realize state change in data capsule 158, control can play the part of different from the part of monitoring system 24 Role.These roles can include change instrument 164, change moderator 166 and audient 168.Change instrument 164 (e.g., by working as Editing machine in preceding embodiment provides the client of the item file 150 of modification) to change moderator 166 send change please Ask.Change instrument can verify change by receiving asynchronous change response and/or errored response on change request Success.Change of the change moderator 166 (e.g., the server of trustship persistence object model 42) to entrance is ranked, and is passed through Perform asked change and carry out processing variation, make other side effects change based on request or abandon the change.Change arbitration Device 166 can provide to be responded to the change for changing instrument 164, when change occurs (e.g., change notification is published into audient 168 The client 156 and/or control/supervision equipment 30 being related in collaboration session 154), and/or change is write into gold copy 162.Audient 168 receives change notification and using above-mentioned notice come the data capsule 158 for being stored in them to status information In their local replica be updated.
As discussed previously, the programming technique used in all parts with monitoring system 24 are controlled may not be system One.For example, some parts can use C++, and miscellaneous part can use C# or Java.Therefore, Fig. 2 is arranged on change State increment 43 between instrument 164, change moderator 166 and audient 168 can be arranged on independent of particular technique In data-driven increment script 170.Increment script 170 can be retouched in the form of creating, updating and/or delete (CRUD) data State Obj State change.Creating data can be including contributing to some or all of data of establishment of object (e.g., for rectangle, square Locus, width and the height of shape).Default value can be used for any without the data for providing request to create.Updating the data can (e.g., for the rectangular graph with the locus that have updated, to be updated the data including the data that have updated in object New locus can only be included).Removed Obj State number can be identified and (e.g., describe its indications) by deleting data According to (e.g., for the rectangle removed, the title of rectangle to be deleted can be included by deleting data).In one example, If generate change using following C# pseudo-codes:
Data-driven increment script may be similar to following pseudo- XML examples:
In alternative embodiment, it may not be necessary to including CreatorID or ParentID.But in present example In provide these ID with to may be included in change in additional data (e.g., make the mark of the entity of change and/or at it The lower parent object for creating existing object) illustrate.Because data-driven increment script 170 is unknowable or independent of tool The programming technique of body, so increment script 170 can be consumed by controlling with any miscellaneous part of monitoring system 24, and with institute The programming technique used is unrelated.
As shown in the above example, in certain embodiments, increment script 170 can include more than one and become Change.Therefore, increment script 170 provides a kind of is handled with all or noon regular (all or nothing approach) The mode of whole change set.For example, it is as implied above go out, include in increment script visual on display Two groups of establishment data, one group is used to create rectangular image, and one group is used to create circular image.If the establishment of circular image produces Mistake, then it can cancel rectangle change, this causes all or noon regular.
Increment script 170 can also include heading message such as change revision number, submit change when timestamp, make change The identifier of the user of change, and/or unique revision identifier etc..The identifier of user potentially contributes to recognize change source Card.In addition, increment script 170 includes changing the identifier of be applied to object, the state key element 160 and state changed The changing value of key element 160.Because each key element in state key element 160 will be introduced in increment script 170 for the first time Consumer, so the total state (e.g., all state key elements 160) of object can be included by creating data acquisition system.
Fig. 6 is turned now to, shows the state change between change instrument 164, change moderator 166 and audience members 168 The progress 190 of reception and registration.In the present example, audient 168 (e.g., client 156) provides subscription request to collaboration session 154 192.The revision number of revision 194 of the status information for being stored in audience members 168 can be included by subscribing to request 192. With subscribing to the mismatch of the revision number sent in request 192, if collaboration session will be sent out the revision on collaboration session 154 The direct notice of the renewal gone out required for this group of increment script 170 with by audience members 168 with to being stored in collaboration session 154 Revision.For example, in panel A, client 156 sends the subscription request 192 for including revision 5.Collaboration session 154 is being revised On 8, therefore the increment script 170 for revision 6,7 and 8 is sent to client 156.Client 156 can be by increment script 170 Its state is applied to, therefore as shown in panel B, revision 8 is arrived in client renewal.
If change instrument 164 (such as, there is provided the client or server of the program file 150 of renewal) renewal gold copy 162, then change notification to collaboration session 154 and should be subscribed to audience members (e.g., client 156).Such as shown in panel B , when gold copy 162 is from the renewal of revision 8 to the (item for e.g., sending the renewal from change instrument 164 via passing through when revising 9 Mesh file 150 is come the change that arranges), change moderator 166 provides the increment script 170 for revision 9 to collaboration session 154. As shown in panel C, the application of collaboration session 154 is updated to revision 9 for revising 9 increment script 170.Increase Then foot-measuring sheet 170 is transmitted to audience members 168 (e.g., client 156).The application increment of client 156 script 170 simultaneously updates To revision 9.
In some scenes, audience members may need more more than the increment script 170 being stored in collaboration session 154 Increment script 170.If for example, when client 156 be in revision 2 when by send subscribe to request 192 and collaboration session 154 only With for revision 5 to 8 increment script 170, then client 156 by still need for revision 3 and 4 increment script 170. If collaboration session 154 is just lacking necessary increment script 170, it can request that gold copy 162 provides required increment Script 170.In certain embodiments, gold copy 162 can store all increasings of each revision of the status information for object Foot-measuring sheet.But in other embodiments, can only store limited quantity script (e.g., last 5 of increment script 170,10, 50 or 100 revisions).If gold copy 162 can provide required script, can by collaboration session 154 by they Propagate to client 156.But if increment script necessary to could not propagating, can notify audience members 168 (e.g., to lead to Cross unexpected message) and/or using the next heavily loaded audience members 168 of the whole elements combination associated with current state information so that Audience members 168 are newest.In addition, if audience members 168 meet with one or more mistakes using increment script 170 By mistake, then the whole elements combination associated with current state information is used to carry out heavily loaded audience members 168.In addition, in some situations Under, it is fully heavily loaded compared to application state increment if substantial amounts of increment script 170 will be needed to update audience members 168 All status informations may be more efficient or catered to the need.In certain embodiments, the increment script applied if desired Quantity has exceeded maximal increment script threshold value, then uses the whole elements combination associated with current state information to carry out heavily loaded audient Member 168.The complete heavy duty that can tend to cause status information based on the meeting perceived is than loading increased increment script Significantly more efficient increment script quantity customizes maximal increment script threshold value.
In certain embodiments, control can also include reverse increment with monitoring system 24.Reverse increment from currently to repairing Change necessary to returning back to previous revision is ordered to be described.If be employed, reverse increment script can be by the state of object Information retracts one and revised.This reversely increment script applications are compiled to including being revised with the quantity identical of reverse increment script Number data capsule (e.g., Fig. 5 data capsule 158).Reverse increment script can aid in establishment and be directed in control and monitoring Change " cancellation " function of being submitted in system 24, and can be also used for withdrawing also without the uncertain change submitted, such as submitting Those changes created before change in collaboration session 154.
Fig. 7 shows a cancellation scheme according to the present embodiment.In panel A, object 210 is initiated by the first client For revision 211 edit session.First client enter in the session edlin with by the band of object 210 into panel B Uncertain revision 214.First client disconnects, and when broken apart, the second client cancels revision 214 and 213, such as in panel Shown in C.Then, the second client can make new change 213 and 214.
In order to prevent the first client to be based only upon revision number to detect it be newest, each revision one can be assigned to Identifier is directed to the unique identifier of the revision number to cause the combination of revision number and identifier to create.If application is reverse Increment script can then retain cancelled increment script, to allow to implement " reforming " function to cancel change.If weight Do and change, then reuse the previous identifier for the revision, because the increment script had been reintroduced back to previously Removed identical change.But if making new revision, using new revision identifier, with not control with The part of monitoring system 24 obscures the revision cancelled with the new revision with identical numbering.
For example, in revision in Fig. 7 each of there is associated identifier.Revision 211 has identifier M, revises 212 have identifier R, and original revision 213 has identifier T, and original revision 214 has identifier X.If cancellation is repaiied 214 and 213 are ordered, then never periodical repair orders middle removal by them.If they are re-added to uncertain change by their quilts " cancellation " Change, regenerate the revision with identical identifier T and X.But in present exemplary, new change is made, tool is respectively created There are identifier S and Y new revision 213 and 214.Because they are entirely new revision, identified using identifier S and Y Above-mentioned revision.Once the first client recovers online and reformulate readding for renewal, then will without doubt, it is not to work as Preceding newest, because final revision is 214-X and current revision is 214-Y.In certain embodiments, can be by chasing after Track revision number and indications find edit path and correspondingly update revision information to update the first client.Other In embodiment, if it find that whole set (e.g., all shapes of inconsistent revision number identifier, then use state information State key element 160) carry out the heavily loaded part.
Can be to carrying out the gold copy of the collaboration session (e.g., the collaboration session 154 in Fig. 6) of uncertain editor outside (e.g., the gold copy 162 in Fig. 6) makes change.Fig. 8 shows following scene:Making the outside for gold copy 162 While change currently uncertain editor is being made in collaboration session 154.As shown, the revision 221-B to object 210 Using the first uncertain changes delta 1 222-J is revised to generate.In addition, respectively by the second uncertain 2 and the 3rd uncertain changes delta of changes delta 3 are used to generate revision 223-N and revision 224-D.Before uncertain changes delta 1, Δ 2 and Δ 3 is submitted, by control and monitoring system External change Δ 1 ' is applied to the gold copy 162 for being currently at revision 221-B by 24 another part.If collaboration session 154 receive that new revision 222 is existing to be notified, then collaboration session 154 withdraw uncertain changes delta 3, Δ 2 and Δ 1 (with by they Preserved as following pending forward direction increment).Then, collaboration session applies the increment script for revision 222-H, and Then revision 223-R, 224-C and 225-X uncertain changes delta 1, Δ 2 and Δ 3 is respectively created in application.In some cases, may be used To change uncertain changes delta 1, Δ 2 and Δ 3 to apply them after 222-H is revised.In certain embodiments, can notify assisting Make to make the uncertain change of audience members of uncertain change in session 154 to be applied to gold pair with covering recent external change This 162.
In some cases, user may expect to terminate in collaboration session 154 change made.Fig. 9, which is shown, to be used for Process for stopping the uncertain change in collaboration session 154.As shown in present exemplary, user is from revision 221-B Create uncertain changes delta 1, generation revision 222-J.Uncertain changes delta 2, generation revision 223-N are created from revision 222-J.In addition, Uncertain changes delta 3, generation revision 224-D are created from state 223-N.User can determine that change is not required and/or not be It is desired and change (e.g., the cancel button by selecting in the program terminal 46 in Fig. 2) can be cancelled.It is uncertain in order to withdraw Change, the part with unsettled condition change can be applied for the reverse of each uncertain change (e.g., Δ 3, Δ 2 and Δ 1) Increment is to retain original non-uncertain revision (e.g., revising 221-B).Alternately, because gold copy 162 has what is stored Newest non-uncertain revision (revision for e.g., not including change to be aborted), so part can be simply from gold copy 162 Heavily loaded whole status information.Therefore, as shown in figure 9, by reverse increment or from the heavy duty of gold copy 162, at time T1 Collaboration session is stayed in into revision 221-B.Therefore, collaboration session, which can be used to undertake from revision 221-B, carries out additional editor's (e.g., Δ 4) new revision 222-R, is generated at time T2.
In some cases, single revision is created compared to for each in uncertain change, by multiple uncertain changes It is probably beneficial that change, which is compressed into a revision,.Figure 10 shows following examples:Some uncertain changes are combined into one group of volume Volume, to generate less revision.As shown, edit session is opened at time T0.By uncertain change application to revision 221-B, generation revision 222-J, 223-N and 224-D.Uncertain change may be relevant with the change made to common state key element (e.g., each change may change the locus of rectangle over the display).For example, revision 222-J can be by rectangular arrangement In the center of screen, revision 223-N can update rectangle position in the upper left corner to screen, and revise 224-D can should Location updating is to the lower left corner of screen.Therefore, although being applied with some value changes, may only need (e.g., to repair from original value Order 221-B) to end value (for example, screen the lower left corner arrangement, as revising 224-D described in) increment.Therefore, assist Make the single revision that the middle revision in session 154 may be reduced on gold copy 162.Therefore, as at T2 shown in, not Determine changes delta 1, Δ 2 and Δ 3 to be compressed and be applied to revision 221-B, generate revision 222-R.It is configured in part when inspection When measuring the conflict mark symbol associated with revised edition number in the embodiment of fully heavily loaded all status informations, work as notifying parts When revising 222-R available (e.g., being shown at T3), part can heavily loaded all status informations for revision 222-R.Such as this Art personnel it should be appreciated that this only may be employed to combine increment compression form in one kind.There is provided Example be not intended to limit for uncertain change compress technique.
Distributed command performs
Turning now to following discussion:How change changes, Figure 11 shows once being communicated in control and the interior application of monitoring system 24 Having gone out has various parts (e.g., HMI terminal 26, control/supervision equipment 30, program terminal 46, intelligent input/output equipment 260 With mute input/output (I/O) equipment 262) control and monitoring system 24.Intelligent I/O equipment 260 can include central processing list First (CPU), to allow intelligent I/O equipment 260 based on being supplied to their data come execution logic.Mute I/O equipment 262 can Not include CPU, therefore controller is may rely on by Logic application to their input.
Enforcement engine 264 can be embedded in control and monitoring system 24 and can support in all parts of enforcement engine. In one example, the part with CPU is implemented using enforcement engine 264.Enforcement engine 264 can be by control and monitoring system Change application in 24 (e.g., state increments 43) of system is to being embedded with all parts of enforcement engine 264.Enforcement engine 264 wraps Include order (e.g., command script 266) and trigger condition 268.When trigger condition 268 is assessed as true, by enforcement engine 264 Perform command script 266.For example, trigger condition 268 can be evaluated as very in a case where:When intelligent I/O equipment 260 or mute The state of I/O equipment 262 is changed, and the data value in control/supervision equipment 30 is changed and (e.g., produced by increment script 170) And/or when user and HMI 26 interact.By by enforcement engine 264 throughout control and all parts of monitoring system 24 come Distribution, it can more efficiently handle control and the change in monitoring system 24.For example, the CPU of all parts can be utilized Disposal ability controls control logic needed for the part with monitoring system 24 to perform.In addition, compared with the controller of concentration, control Redundancy can be increased and/or provide more preferable place to perform life by being performed with the order in the various parts of monitoring system 24 Order.For example, intelligent I/O equipment 260 is enabled to perform specific to intelligent I/O equipment 260 with monitoring system 24 in response to control Logic, without dependent on control/supervision equipment 30.
As discussed above, some parts (e.g., mute I/O equipment 262) may not support embedded enforcement engine 264, Or it may support enforcement engine 264 still without embedded enforcement engine 264.These parts may rely on miscellaneous part and (e.g., control System/supervision equipment 30) come perform be directed to without be embedded in enforcement engine 264 part logic.It is for example, as shown in fig. 11 , enforcement engine 264 of the mute I/O equipment 262 without insertion.It is in addition, (e.g., terraced using the traditional logic of control/supervision equipment 30 Shape logic (LL), functional block diagram (FBD), SFC (SFC) etc.) carry out polling data.
Order (such as command script 266, the relay ladder logic as defined in user and/or system) can be storage In tangible, non-volatile, computer-readable medium (for example, hard disk drive, database, read-only storage, and/or arbitrary access Memory) in the computer-readable instruction (e.g., object) being performed when trigger condition occurs or at scheduling time.Example Such as, order can be stored in data capsule 158 in Figure 5.Order can from order base class inherited attribute and/or function Basis set.Specific attribute and behavior can be added in base class, to derive other order classes, such as be used for screen navigation and write The class of label value etc..In certain embodiments, order base class can include parameter, or the parameter number that can be used for inputting and export According to the parameter sets of name/value pair.In addition, order base class can include " completion " attribute that instruction order has performed completion. Order base class can include instruction causes order to perform the wrong community stopped because of mistake.In addition, order base class can include By control with monitoring system 24 be used for whom is determined come be responsible for order storage, clearing (e.g., what entity should after execution by Order deleted from data capsule 158) parent attribute.Order base class can include the name attribute being identified to order.Can be with Name attribute is used in expression and trigger condition 268, to allow the attribute of order to trigger additional command.Order base class can The progress attribute being in progress with the execution including instruction order, and can also have the execution of instruction order to have timed, out and (e.g., exist Be not carried out in the period distributed) timeout properties.Order base class can include order being added to appropriate execution The scheduling attributes of thread, it will be discussed in more detail further below.In addition, order base class can include referring to comprising execution The execution attribute of order.
In some embodiments it is possible to it will order compound or put together.With two kinds of basic complex forms:Order is ordered Make compound peaceful line command compound.In sequence command is compound, each order being brought together in group is every with given order Next ground performs.A compound example of useful sequence command can carry out the Management Information Base of following processing:1) write Label is filled with starting tank, and 2) specific label value is waited, and 3) change Graphic State key element.It is possible order life below Make compound pseudo-code example:
<Sequence>
<WriteTag ref=" mytank " ...>
<WaitFor trigger=" mytank.fill==100 " ...>
<SetState ref=" myTankDoneText " state=" Done "/>
</Sequence>
In parallel command is compound, it is compound in each order together performed in the same time.For example, following writes Tag command can perform in the same time started:
In certain embodiments, order is compound can include the sequentially compound and combination of parallel composition.Such as:
Turn now to Figure 12, there is provided by enforcement engine come perform frame circulation 300 embodiment.Frame circulation 300 is to close In the controlled time cycle (e.g., 30 times per second) come one group of computer-readable instruction performing.The target of frame circulation 300 is to carrying The data variation (e.g., state increment 43) for supplying Figure 11 enforcement engine 264 is made a response.As shown, frame circulation 300 can Represented with assessing at frame 302.For example, expression data (e.g., the value of data object) are provided by data acquisition thread 303, Data acquisition thread 303 can conduct interviews to controlling the status data with monitoring system 24.Frame is circulated based on the table assessed Reach and trigger condition (e.g., the trigger condition 268 in Figure 11) is assessed at frame 304.If based on the expression assessed Any one in trigger condition 268 is evaluated as very, then can couple order (e.g., the Tu11Zhong associated with trigger condition 268 Command script 266) be scheduled or perform.As being discussed in greater detail below, on Figure 13, can be circulated in frame Some orders are performed in 300, and can be in other threads or thread pool (e.g., user inputs thread 305 and thread pool 307) Other orders are scheduled and performed.Frame ordering or the scheduled order to be run in frame circulation 300 can be at frames 306 Perform.Then, any transition renewal is performed at frame 308 (e.g., how from a value changes to the computer-readable of another value Instruction).One example of transition renewal can include the graphic animations of designated state change, for example, showing the valve for opening Flowing animation arrow, or for it is figured recently state change the animation arrow to fade out.Then, frame circulation 300 The change (such as, there is provided the screen picture of renewal and/or new data value) applied by performed order can be provided.
As discussed above, frame circulation 300 can run (e.g., 30 times per second) on the controlled time cycle. In some embodiments, it can be held by the part with given time interval skipped frame circulation 300 to adjust frame circulation 300 OK.Run 30 times for example it is assumed that frame circulation 300 is per second, then frame circulation 300 can be designed to that each 3rd frame table reaches and commented Estimate (frame 302), (frame 304) can be assessed trigger at each 3rd frame since the second frame, and can be from Three frames start to provide transition renewal (frame 308) at each 3rd frame.The offer (frame 310) can continuously be held at each frame OK, or only can most preferably be run when change occurs.Therefore, each can still perform in order in frame, but saved It is made as performing with less frequency (e.g., 1/3 frequency or 10 frame per second).
Furthermore, it is possible to frame rate is changed based on the hardware of operation enforcement engine 264.For example, in certain embodiments, such as Fruit is such as based on using the processor of lower capabilitySystem, then frame circulation can run with 12 frame per second, if Using the system based on Atom, then frame circulation can be run with 30 frame per second, if using desktop computer, frame circulation can To be run with 60 frame per second, and if using the system based on browser, then frame circulation can be run with 24 frame per second.This Outside, transition option can allow less transition (e.g., every 6 frame 1 time) and/or can allow depend on used platform and compared with There is provided transition with infrequently (e.g., not being each frame).Enforcement engine 264 can be adapted to based on identified frame circulation 300 The execution time in various stages, frame circulation 300 is adjusted during operation.For example, expressing heavy screen may need The times are assessed in more expression, and the heavy screen of transition may need more transition processings/execution time.
Turn now on how discussion of the traffic order to perform, Figure 13 is shown is used for traffic order according to embodiment Processing 320.When trigger condition 268 is evaluated as into true at frame 322, start dispatch deal 320.As discussed previously, There can be one or more orders associated with trigger condition 268.Depending on the order associated with trigger condition 268 Type, processing 320 can take in two paths one.Order can be any in frame ordering 324 or order thread 326 One.Frame ordering 324 influences the data in main frame circulation 300.In order to be performed in main frame circulation 300, can incite somebody to action Frame ordering 324 is added to frame ordering list 326.Performed it is then possible to be circulated in main frame on 300 (frames 306 in Figure 12) Frame ordering 324.Generally, these orders change the data for bringing up again confession for needing data.Therefore, (the frame in Figure 12 can provided 310) these orders are performed before.
Order thread 326 is the order that the data in the memory space not performed to frame circulation 300 conduct interviews.Can be Circulated from frame and freely dispatch these orders on 300 different threads.Therefore, if trigger condition 268 is commented for order thread 326 It is true to estimate, then scheduling thread order in thread pool 307 to run.Can more efficiently it be utilized by using thread pool 307 Resource.For example, circulating 300 threads by making order thread 326 avoid frame, frame circulates 300 freely to perform more importantly Order and/or the order that must be run in frame circulation 300.
Plug-in architecture can be linked
It now been discussed control and passed on the conversion in monitoring system 24 and performed with order, is discussed below by can chain The data conversion that connector function is carried out.As discussed above, control with monitoring system 24 can be have can be in system 24 Part between the data-driven system of polytype resource passed on.Resource type can be that what number is mark resource be According to classification.The example of these resource types can be in label, object data type, visualization screen or system 24 it is any its The object that he can be defined by the user.These resources can inherit mutual function, create high dynamic type system.In other words, it is There may be the multiple resources type of the granularity with varying level in system.
It there may come a time when it is expected to controlling the part with monitoring system 24 to modify.For example, control and monitoring system 24 Design and/or the manufacturer of control software or user may expect a type of data (or the thing associated with the data Part) it is converted into another type of data or event.These modifications can be added to and limit the latent of control and monitoring system 24 In machine readable instructions, still, these modifications are likely to require to be recompilated to these machine readable instructions.So as to, The part of control and monitoring system 24 can make it that generation can be with the plug-in unit of the various resource types in processing system 24.Plug-in unit can To be following machine readable code:Separated with the machine readable code of application and enable work(that is customizable or increasing the application Energy.Figure 14 provide according to the present embodiment it is a kind of as system schematic diagram.
Similar to Fig. 1, Figure 14 system 350 includes controller 30, and it represents control and/or supervision equipment.In operation, Controller 30 is monitored and controlled to processing 28 by sensor 34 and executing agency 36.In addition, system 350 includes HMI 26, HMI 26 include being used to enable the business 352 that people is monitored and/or controlled to the various processing in system 350.System Program terminal 46 in system 350 can cause one or more users to match somebody with somebody HMI 26 and/or controller 30 attribute Put.
As discussed above, many situations below be present:It may be desirable to the function additional to the addition of system 350.For example, it is The user of system 350 may want to the machine of the disabled customization in HMI 26 and/or program terminal 46 is implemented to instruct into Row enables.In addition, the manufacturer of HMI 26 and/or program terminal 46 may want to implement new feature without re-establishing definition The a whole set of machine readable instructions of these parts of system 350.Therefore, part (e.g., HMI 26 and/or program terminal 46) can wrap The machine readable instructions for handling plug-in unit are included, these instructions can be defined to the instruction to HMI 26 and/or program terminal 46 A part for machine readable code in addition.These plug-in units can make it possible following:The feelings of part need not restarted The function of part is modified under condition.
As shown in Figure 14, HMI 26 and program terminal 46 are respectively equipped with insert management system 354 and 356.These Insert management system 354 and 356 can enable HMI 26 and program terminal 46 to be registered respectively to plug-in unit 358 and 360. It can be appreciated that by registered plug-ins 358 and 360, HMI 26 and program terminal 46 and implement pin function.For example, plug-in unit 358 can include the external security logic to be used in HMI 26.User or HMI 26 manufacturer can create plug-in unit 358 And by insert management system 354 to the registered plug-ins 358 of HMI 26.
When to HMI 26 and/or the registration of program terminal 46, plug-in unit 358 and 360 can access the part that they are registered Business 352 and 355.For example, HMI plug-in units 358 can access HMI 26 business 352 by business interface 364.Programming is eventually End plug-in unit 360 can access the business 355 of program terminal 46 by business interface 366.In one embodiment, interface 364 Can be with 366 can be from the API (API) of the reception interactive instruction of plug-in unit 358 and 360.
As discussed above, resource 162 can be passed between the part of system 350.Resource 162 can be with polymorphic chain Come the object created.Polymorphism is related to the ability with shared interface (e.g., the interface of function) of object, even if it has difference Type.In addition, polymorphic chain might mean that different types of resource from drawing each other.In simple example, have shape, The resource 162 of rectangle and square type can be appeared in system 350.Rectangle type can draw from shape type, just Square type can be drawn from rectangle type.In addition, these resources 162 can be by general object model or not by recipient The model that is made a distinction with other required parameters limits.Because these resource types are limited by general object model, The data access of resource 162 and conversion can be with expanded, without will change recipient and other associated with resource 162 Parameter distinguishes.It is thus possible to so that insert management system 354 and 356 be able to access that and using in polymorphic chain Anywhere Data.It is, for example, possible to use regulation resource 162 size plug-in unit come to rectangle and square size be adjusted.This Can be by can be by together to handling a series of plug-in units of specific resource type to carry out.For example, plug-in management System 354 and/or 356 can determine can chain connector appropriate subset, with based on limit resource 162 common object model road Footpath handles specific resource 162.In certain embodiments, plug-in unit can specify the particular type of the resource handled by them. Insert management system 354 and/or 356 can determine to implement appropriate chain (e.g., the appropriate set of plug-in unit and appropriate needed for function Sequentially).
Can by can chain connector come the quantity for the feature implemented be very big.Because plug-in unit is linkable, institute The feature of almost all of resource type in system 350 is appeared in can generate to be directed to, but regardless of which point in polymorphic chain Resource type can be found.Furthermore, it is possible to by insert design into:Before the establishment and/or deletion of resource, period and/or it After add function.It is thus possible to realize the very dynamic plug-in unit set that can handle many resource types.
Although some features of the present invention only have shown and described herein, those skilled in the art will recognize that perhaps More modifications and variations.Therefore it should be understood that appended claims are intended to cover all these fall within the true spirit of the invention Modifications and variations.

Claims (19)

1. a kind of automatic control system, including:
One or more parts, it includes being configured to relative with one or more individual part by following operation processing Answer can chain connector insert management system:
Determine it is multiple it is available can the processing of chain connector specific plug-in resource type;
Determine it is the multiple it is available can be in chain connector two or more it is available can chain connector appropriate chain, it is described two Or more it is available can chain connector when linked via it is different can chain connector resource type realize one can chain patch The function of part, wherein the appropriate chain include the multiple available can be in chain connector described two or more it is available can chain Connector, for realize for it is one can chain connector resource type function appropriate order;
Wherein, it is described can chain connector include it is polymorphic can chain connector, it is described it is polymorphic can chain connector include can handle it is polymorphic The shared interface for multiple resource types that chain defines;And
Wherein, the appropriate chain include it is described it is polymorphic can chain connector, so as to the multiple using being defined by the polymorphic chain A resource type in resource type.
2. automatic control system according to claim 1, wherein, one or more part includes man-machine interface.
3. automatic control system according to claim 2, wherein, one or more part includes program terminal.
4. automatic control system according to claim 1, wherein, the resource type includes control program, label, data It is at least one in type, module configuration or man-machine interface screen.
5. automatic control system according to claim 1, wherein, the insert management system is configured to weigh Can chain connector described in the case of newly starting one or more part.
6. automatic control system according to claim 1, wherein, the resource type is determined according to common object model Justice.
7. automatic control system according to claim 6, wherein, the insert management system is configured to:It is determined that it is based on The common object model handle required for the resource type can chain connector appropriate subset.
8. automatic control system according to claim 1, wherein, the insert management system is configured to can described in registration Chain connector.
9. automatic control system according to claim 1, wherein, it is described can chain connector be configured to:Connect by business Mouth conducts interviews to one or more business of one or more part.
10. automatic control system according to claim 9, wherein, the business interface includes API.
11. a kind of tangible nonvolatile machine-readable media, is stored thereon with for automatically controlling the part with monitoring system Can chain connector, it is described can chain connector include:
Machine readable code, it includes carrying out the instruction of following processing:
Described automatically control is conducted interviews with the business of the part of monitoring system;
Resource data or event are obtained from the business;
Automatically controlled and change data, generation event or progress both change data and generation event in monitoring system described; And
In the proper sequence can chain connector by described in based on the data, the event or both the data and the event With other can chain connector linked, with produce two or more can chain connector appropriate chain;
Wherein, the appropriate chain via it is different can chain connector resource type realize one can chain connector function, and The appropriate chain include described two or more it is available can chain connector, for realize for it is one can chain connector Resource type function appropriate order;
Wherein, it is described can chain connector include it is polymorphic can chain connector, it is described it is polymorphic can chain connector include can handle it is polymorphic The shared interface for multiple resource types that chain defines;And
Wherein, the appropriate chain include it is described it is polymorphic can chain connector, so as to the multiple using being defined by the polymorphic chain A resource type in resource type.
12. tangible nonvolatile machine-readable media according to claim 11, wherein, it is described can chain connector include The machine readable instructions created by the manufacturer of the part.
13. tangible nonvolatile machine-readable media according to claim 11, wherein, it is described can chain connector include The machine readable instructions created by the user of the part.
14. tangible nonvolatile machine-readable media according to claim 11, wherein, the instruction linked Including based on the common object model for defining the resource data or event the instruction that is linked.
15. tangible nonvolatile machine-readable media according to claim 11, including carry out the instruction of following processing:
Before establishing resource, just in establishing resource or after creating resource, change the data, generate the event or Carry out changing the data and generate both described events.
16. tangible nonvolatile machine-readable media according to claim 11, including carry out the instruction of following processing:
Before resource is deleted, when deleting resource or after deleting resource, change the data, generate the event or Carry out changing the data and generate both described events.
17. a kind of method for being used to modify to the function of the part of automatic supervision and control system, including:
Can chain connector to the component registration;
To it is described can chain connector resource data or event are provided;And
Based on it is described can chain connector come change the resource data or generation additional events;
Wherein, in the proper sequence will described in can chain connector with it is other can chain connector link can to produce two or more The appropriate chain and the conversion resource data or the generation additional events of chain connector, the appropriate chain can chain via difference The resource type of connector realize one can chain connector function, and the appropriate chain include described two or more can With can chain connector, for realize for it is one can chain connector resource type function appropriate order;
Wherein, it is described can chain connector include it is polymorphic can chain connector, it is described it is polymorphic can chain connector include can handle it is polymorphic The shared interface for multiple resource types that chain defines;And
Wherein, the appropriate chain include it is described it is polymorphic can chain connector, so as to the multiple using being defined by the polymorphic chain A resource type in resource type.
18. according to the method for claim 17, including determine to the following subset for handling other useful plug-in units:It is based on The common object model of the resource data or event is defined to change the resource data or the generation additional events.
19. according to the method for claim 18, including the subset of other plug-in units is linked, to cause State the subsets of other plug-in units with it is described can the combination of chain connector can handle any class in the common object model The resource data or event of type.
CN201210452565.4A 2012-10-29 2012-11-12 The method of the function of automatic control system, machine readable media and modification part Active CN103793346B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/663,347 US9606521B2 (en) 2011-11-11 2012-10-29 Chainable plug-ins
US13/663,347 2012-10-29

Publications (2)

Publication Number Publication Date
CN103793346A CN103793346A (en) 2014-05-14
CN103793346B true CN103793346B (en) 2018-01-19

Family

ID=50669040

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210452565.4A Active CN103793346B (en) 2012-10-29 2012-11-12 The method of the function of automatic control system, machine readable media and modification part

Country Status (1)

Country Link
CN (1) CN103793346B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI709908B (en) * 2019-05-03 2020-11-11 直得科技股份有限公司 Method, program product, and computer readable medium for operating software in plc editing environment

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101303762A (en) * 2008-06-06 2008-11-12 北京四方继保自动化股份有限公司 Method for managing primitive of automatization system based on dynamically loading and plug-in unit technique
CN102033743A (en) * 2010-09-02 2011-04-27 西安赛斐软件科技有限公司 System and method for expanding model driving development capability by applying plug-in

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7254814B1 (en) * 2001-09-28 2007-08-07 Emc Corporation Methods and apparatus for managing plug-in services
US20030120560A1 (en) * 2001-12-20 2003-06-26 John Almeida Method for creating and maintaning worldwide e-commerce
US7725877B2 (en) * 2004-01-09 2010-05-25 National Instruments Corporation Graphical program which includes an I/O node for hardware abstraction
US7644161B1 (en) * 2005-01-28 2010-01-05 Hewlett-Packard Development Company, L.P. Topology for a hierarchy of control plug-ins used in a control system
JP5618480B2 (en) * 2005-08-19 2014-11-05 グーグル インコーポレイテッド Software architecture for displaying information content from plug-in modules in the user interface

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101303762A (en) * 2008-06-06 2008-11-12 北京四方继保自动化股份有限公司 Method for managing primitive of automatization system based on dynamically loading and plug-in unit technique
CN102033743A (en) * 2010-09-02 2011-04-27 西安赛斐软件科技有限公司 System and method for expanding model driving development capability by applying plug-in

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
The PiVis Framework for Visualization of Digital Object Memories;Jens Haupert et al;《2011 Seventh International Conference on Intelligent Environments》;20110728;正文第IV部分 *

Also Published As

Publication number Publication date
CN103793346A (en) 2014-05-14

Similar Documents

Publication Publication Date Title
US10571898B2 (en) Control environment change communication
EP2592515B1 (en) Scalable automation system
US9606521B2 (en) Chainable plug-ins
US9389606B2 (en) Agile control model system and method
US20220027529A1 (en) Controls system based digital twin for supervisory control of independent cart technology tracks and lines
EP2592517B1 (en) Systems and methods for asynchronous searching and filtering of data
US8990768B2 (en) Software object property return method and system
CN112579050B (en) Industrial application development system, industrial automation project development method and medium
Hung et al. A novel implementation framework of digital twins for intelligent manufacturing based on container technology and cloud manufacturing services
US9529355B2 (en) Control environment change communication
CN1981301A (en) System and method for developing animated visualization interfaces
US11294351B2 (en) Control environment command execution
US20150045917A1 (en) Remote object data property replication method and system
Chen et al. A novel cloud manufacturing framework with auto-scaling capability for the machining industry
US11231690B2 (en) System and method for dynamic meta-data in control and visualization
CN103793346B (en) The method of the function of automatic control system, machine readable media and modification part
CN103543684B (en) Method and automatic control component for the change of the status information of conveyed object
CN103792858B (en) Flexible Controlling model system and method
CN103793200B (en) CONTEXT command is controlled to perform
CN103792873B (en) Environmental change is controlled to pass on
Schuh et al. New requirement analysis approach for cyber-physical systems in an intralogistics use case
Igelmo Context-aware augmented reality experiences using cloud-based systems
Toivo The Digital Twin as a Part of the Manufacturing Execution System and Automation Integration
CN117940891A (en) Method and system for managing applications, in particular for developing applications comprising event artifacts
Monostori et al. Novel IT solutions for increasing transparency in production and in supply chains

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information

Inventor after: DOUGLAS W. REID

Inventor after: Bronikowski Joseph

Inventor after: Kalan Michael D.

Inventor after: Kowal Steven John

Inventor after: SUBBIAN GOVINDARAJ

Inventor after: Jasper Taryl J

Inventor after: Plache Kenneth S.

Inventor after: Reichard Douglas J.

Inventor after: Izzo Joseph P

Inventor before: DOUGLAS W. REID

Inventor before: RAY J. STARON

Inventor before: Thomas David E.

Inventor before: TIMOTHY P. BOPPRE

Inventor before: Bliss Ronald E

Inventor before: GORDON DAILY

Inventor before: Bronikowski Joseph

Inventor before: Kalan Michael D.

Inventor before: Kowal Steven John

Inventor before: SUBBIAN GOVINDARAJ

Inventor before: Jasper Taryl J

Inventor before: Plache Kenneth S.

Inventor before: Reichard Douglas J.

Inventor before: Izzo Joseph P

COR Change of bibliographic data
CB02 Change of applicant information

Address after: ohio

Applicant after: Rockwell automation technologies

Address before: ohio

Applicant before: Rockwell Automation Tech Inc.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant