The present disclosure is directed, in general, to computer-aided design, visualization, and manufacturing systems, product lifecycle management (“PLM”) systems, and similar systems, that manage data for products and other items (collectively, “Product Data Management” systems or “PDM” systems).
PDM systems manage PLM and other data. Improved systems are desirable.
Various disclosed embodiments include systems and methods for simulation virtual models. According to disclosed embodiments, the system includes at least one processor, a memory connected to the processor, a communication network, and an external programmable controller connected to the processor via the communication network. The system is configured to generate a first data representing the virtual model and transform the first data to a feedback data using one or more mapping functions. The system is configured to generate by the programmable controller a plurality of output data responsive to the feedback data and apply the output data to effect change to the virtual model. According to disclosed embodiments, the method includes generating a first data representing the virtual model and transforming the first data to a feedback data using one or more mapping functions. The method includes generating by an external programmable controller an output data responsive to the feedback data and applying the output data to effect change to the virtual model.
The foregoing has outlined rather broadly the features and technical advantages of the present disclosure so that those skilled in the art may better understand the detailed description that follows. Additional features and advantages of the disclosure will be described hereinafter that form the subject of the claims. Those skilled in the art will appreciate that they may readily use the conception and the specific embodiment disclosed as a basis for modifying or designing other structures for carrying out the same purposes of the present disclosure. Those skilled in the art will also realize that such equivalent constructions do not depart from the spirit and scope of the disclosure in its broadest form.
Before undertaking the DETAILED DESCRIPTION below, it may be advantageous to set forth definitions of certain words or phrases used throughout this patent document: the terms “include” and “comprise,” as well as derivatives thereof, mean inclusion without limitation; the term “or” is inclusive, meaning and/or; the phrases “associated with” and “associated therewith,” as well as derivatives thereof, may mean to include, be included within, interconnect with, contain, be contained within, connect to or with, couple to or with, be communicable with, cooperate with, interleave, juxtapose, be proximate to, be bound to or with, have, have a property of, or the like; and the term “controller” means any device, system or part thereof that controls at least one operation, whether such a device is implemented in hardware, firmware, software or some combination of at least two of the same. It should be noted that the functionality associated with any particular controller may be centralized or distributed, whether locally or remotely. Definitions for certain words and phrases are provided throughout this patent document, and those of ordinary skill in the art will understand that such definitions apply in many, if not most, instances to prior as well as future uses of such defined words and phrases. While some terms may include a wide variety of embodiments, the appended claims may expressly limit these terms to specific embodiments.
For a more complete understanding of the present disclosure, and the advantages thereof, reference is now made to the following descriptions taken in conjunction with the accompanying drawings, wherein like numbers designate like objects, and in which:
PDM systems are widely used in design, development and modification of products and systems. PDM systems allow designers and engineers to develop and test products in a virtual environment prior to building actual prototypes. Advances in PDM technology enable virtual validation of products by creating and testing computer-implemented models. Virtual validation of products allows designers and engineers to verify functionalities and identify potential defects in the products.
Currently available PDM systems, for example, allow users to define and assemble virtual devices into a virtual system. The virtual system may be connected to an external programmable logic controller. A user utilizes a virtual control panel or a virtual switchboard in a workstation to access the virtual devices from a device library. There are drawbacks associated with currently available systems. A user, for example, typically must use a virtual control panel to assemble a model and also to modify the model.
Various disclosed embodiments provide systems and methods for interactive simulation of a computer-implemented virtual model. The disclosed embodiments allow a user to directly make modifications to a virtual model without the aid of a virtual control panel and to simulate the response of the model. Consequently, potential defects in a product may be identified and the product may be validated in less time, thus decreasing the product's development time.
Other peripherals, such as local area network (LAN)/Wide Area Network/Wireless (e.g. WiFi) adapter 112, may also be connected to local system bus 106. Expansion bus interface 114 connects local system bus 106 to input/output (I/O) bus 116. I/O bus 116 is connected to keyboard/mouse adapter 118, disk controller 120, and I/O adapter 122. Disk controller 120 can be connected to storage 126, which can be any suitable machine usable or machine readable storage medium, including but not limited to nonvolatile, hard-coded type mediums such as read only memories (ROMs) or erasable, electrically programmable read only memories (EEPROMs), magnetic tape storage, and user-recordable type mediums such as floppy disks, hard disk drives and compact disk read only memories (CD-ROMs) or digital versatile disks (DVDs), and other known optical, electrical, or magnetic storage devices.
Also connected to I/O bus 116 in the example shown is audio adapter 124, to which speakers (not shown) may be connected for playing sounds. Keyboard/mouse adapter 118 provides a connection for a pointing device (not shown), such as a mouse, trackball, trackpointer, etc.
Those of ordinary skill in the art will appreciate that the hardware depicted in
The data processing system 100 in accordance with an embodiment of the present disclosure includes an operating system employing a graphical user interface. The operating system permits multiple display windows to be presented in the graphical user interface simultaneously, with each display window providing an interface to a different application or to a different instance of the same application. A cursor in the graphical user interface may be manipulated by a user through the pointing device. The position of the cursor may be changed and/or an event, such as clicking a mouse button, generated to actuate a desired response.
One of various commercial operating systems, such as a version of Microsoft Windows™, a product of Microsoft Corporation located in Redmond, Wash. may be employed if suitably modified. The operating system is modified or created in accordance with the present disclosure as described.
LAN/WAN/Wireless adapter 112 can be connected to network 130 (not a part of data processing system 100), which can be any public or private data processing system network or combination of networks, as known to those of skill in the art, including the Internet. Data processing system 100 can communicate over network 130 with server system 140, which is also not part of data processing system 100, but can be implemented, for example, as a separate data processing system 100. Data processing system 100 may be configured as a workstation, and a plurality of similar workstations may be linked via a communication network to form a distributed system in accordance with embodiments of the disclosure.
According to disclosed embodiments, the user may directly make changes to model 212 without the aid of a virtual control panel and simulate the response of controller 220. The user may, for example, inject error signals to model 212 to simulate the controller's response.
Referring to
According to disclosed embodiments, PDM system 300 enables a user to directly interact with virtual model 312 without the aid of a virtual control panel. The user, for example, may inject error signals into the virtual model to simulate the response of controller 320.
According to disclosed embodiments, a user may test and validate a virtual model by connecting controller 320 to OPC layer 324. Controller 320 may be a physical or a virtual programmable logic controller (PLC) with a human machine interface (HMI). The user may configure signals in the virtual model to enable signals/data flow between the OPC layer and the CAD system. By way of example, signals representing a sensor trigger and start/stop time of a motor may be configured. The flow of signals/data may be bi-directional (e.g., transfer position of the door to one OPC signal, and transfer one OPC signal to the speed of motor).
Next, the user may start controller 320, which runs the virtual model to simulate a closed-loop system. The user may interact with the virtual model by adding control logic and triggers or by injecting errors. The injected errors are transferred to controller 320 via OPC layer 324 to simulate the controller's response. The interactive error injection mechanism allows the user to inject errors dynamically during execution. The injected errors can be correctable, uncorrectable, or fatal errors.
Consider, for example, a virtual model of a closed-loop control system featuring a mechanical contactor. If a controller sends a command to close the contactor, under normal operating conditions, the contactor returns a feedback signal to indicate that the contactor has been closed. If the contactor fails to return a feedback signal within a specified time period, the controller sends a warning signal.
According to disclosed embodiments, a user may implement PDM system 300 to validate a virtual model of a closed-loop system featuring a mechanical contactor. In the virtual model, a sensor may be attached to an auxiliary contactor to sense the status of the contactor and to return a feedback signal. The user may disconnect or disable the sensor, or drag the sensor to a new position, thus injecting errors into the virtual model to determine whether the controller is responding properly by generating a warning signal and correcting the error. According to disclosed embodiments, various properties of the virtual model may be defined. For example, a rotation speed of a motor may be defined by a floating point number while the motor's start, end, and direction of rotation (e.g., forward, reverse) may be defined by Boolean logic. According to disclosed embodiments, the closed-loop system may be simulated to operate at a high frequency (e.g., 2 milliseconds per simulation step).
According to disclosed embodiments, PDM system 300 provides an interactive simulation environment capable of responding to dynamic situations. A user can visualize system response to injected errors, thus detecting design problems. The errors may be injected using a user-friendly interface during execution. For example, the user may drag a movable object by holding the cursor over it. The drag action is identified and converted to a signal whose value is determined by the distance traversed by the cursor. The user may also modify the speed of a motor or position of an object by, for example, dragging a block to a light-barrier.
According to disclosed embodiments, objects in the virtual model may be modified and controls may be activated or deactivated. Also, a connection of a signal between any object and the controller can be broken, thus injecting an error.
In block 1004, system 300 receives first data representing a virtual model. According to disclosed embodiments, the first data may be provided by a device library.
In block 1008, one or more mapping functions transform the first data into feedback data. According to embodiments, a mapping table including mapping functions may be used to transform the first data into the feedback data.
In block 1012, an external programmable logic controller generates output data responsive to the feedback data. The external programmable logic controller may be implemented in software or hardware. As described before, an OPC layer may be implemented to facilitate data flow between system 300 and the external programmable logic controller.
In block 1016, system 300 applies output data to the virtual model to effect change. As described before, the modification of the virtual model causes modification of the first data representing the model. The modified first data may be stored in a workstation and the modified virtual model may be displayed on a monitor.
In block 1108, system 300 receives first data representing the modified virtual model. As described before, the first data may be provided by a device library.
In block 1112, one or more mapping functions transform the first data into feedback data. According to embodiments, a mapping table including mapping functions may be utilized to transform the first data into the feedback data.
In block 1116, an external programmable controller generates output data responsive to the feedback data. The external programmable logic controller may be implemented in software or hardware. As described before, an OPC layer may be implemented to facilitate data flow between system 300 and the external programmable controller.
In block 1120, system 300 applies the output data to effect change in the virtual model. The modified virtual model may be stored in a workstation.
According to embodiments, a non-transitory computer-readable medium is encoded with computer-executable instructions for interactive simulation of a virtual model. The computer-readable medium includes instructions for generating first data representing the virtual model and for transforming the first data to a feedback data using one or more mapping functions. The computer-readable medium includes instructions for generating output data responsive to the feedback data and for applying the output data to effect change to the virtual model.
Those skilled in the art will recognize that, for simplicity and clarity, the full structure and operation of all systems suitable for use with the present disclosure is not being depicted or described herein. Instead, only so much of a system as is unique to the present disclosure or necessary for an understanding of the present disclosure is depicted and described. The remainder of the construction and operation of the disclosed systems may conform to any of the various current implementations and practices known in the art.
Of course, those of skill in the art will recognize that, unless specifically indicated or required by the sequence of operations, certain steps in the processes described above may be omitted, performed concurrently or sequentially, or performed in a different order. Further, no component, element, or process should be considered essential to any specific claimed embodiment, and each of the components, elements, or processes can be combined in still other embodiments.
It is important to note that while the disclosure includes a description in the context of a fully functional system, those skilled in the art will appreciate that at least portions of the mechanism of the present disclosure are capable of being distributed in the form of instructions contained within a machine-usable, computer-usable, or computer-readable medium in any of a variety of forms, and that the present disclosure applies equally regardless of the particular type of instruction or signal bearing medium or storage medium utilized to actually carry out the distribution. Examples of machine usable/readable or computer usable/readable mediums include: nonvolatile, hard-coded type mediums such as read only memories (ROMs) or erasable, electrically programmable read only memories (EEPROMs), and user-recordable type mediums such as floppy disks, hard disk drives and compact disk read only memories (CD-ROMs) or digital versatile disks (DVDs).
Although an exemplary embodiment of the present disclosure has been described in detail, those skilled in the art will understand that various changes, substitutions, variations, and improvements disclosed herein may be made without departing from the spirit and scope of the disclosure in its broadest form.
None of the description in the present application should be read as implying that any particular element, step, or function is an essential element which must be included in the claim scope: the scope of patented subject matter is defined only by the allowed claims. Moreover, none of these claims are intended to invoke paragraph six of 35 USC §112 unless the exact words “means for” are followed by a participle.