A Factory Acceptance Test (FAT) is a process for evaluating equipment during and after the assembly process to verify equipment meets design specifications. The FAT ensures that the components and controls are working properly according to the functionality of the equipment itself. Any deviations or abnormalities observed during testing should be documented in a problem report and corrected prior to final installation. The FAT process typically involves a customized testing procedure for input/output (I/O) testing to validate the operation of the equipment and ensure it meets specifications as well as documentation supporting the testing and results. In the context of industrial automation, the FAT ensures that a newly manufactured control system works properly before delivery of the control cabinet to a customer.
Aspects of the present disclosure achieve strict integration with automation and testing procedures for automated I/O testing that covers automation of a wide variety of signals, including current loop, voltage loop, resistance temperature detector (RTD), thermocouples, dry contacts, monitored signals with variable resistance, and frequency/pulse.
In an aspect, a testing system for testing I/O points in an automation system comprises a testing server and a user computing device communicatively coupled to each other via a communication network. The system also comprises a meter configured to generate test signals and to acquire measurements and a plurality of software agents stored in a computer-readable storage medium of the automation system. The software agents include at least a control system agent configured to send and receive test setpoints for a control system of the automation system, which is configured to specify operating setpoints for one or more controllers of the automation system. The testing server is configured to execute computer-executable instructions for specifying the test setpoints to the control system for a plurality of I/O points to be tested and generating a web user interface presenting instructions for conducting testing of the I/O points using the specified test setpoints. The user computing device, which is associated with the I/O points to be tested, is configured to execute computer-executable instructions for receiving the web user interface and displaying the instructions to an operator conducting the testing, communicating the instructions to the meter for applying input signals to the I/O points to be tested and/or measuring output signals from the I/O points to be tested in accordance with the instructions, and communicating results of the testing of the I/O points to the testing server.
In another aspect, a method of performing automated testing of I/O points in an automation system comprises executing a control system software agent stored in a computer-readable storage medium of the automation system. The control system software agent, when executed, sends and receives test setpoints for the control system. The method also includes generating, by a testing server, a web user interface presenting instructions for conducting testing of a plurality of I/O points using the test setpoint and receiving, by a user computing device, the web user interface and displaying the instructions to an operator conducting the testing. The method further comprises communicating the instructions to a meter configured to generate test signals and to acquire measurements, applying input signals to the I/O points to be tested and/or measuring output signals from the I/O points to be tested by the meter in accordance with the instructions, and communicating results of the testing of the I/O points to the testing server.
In yet another aspect, a method for performing remote I/O point testing using an automated testing system comprises selecting one or more remote cabinets on which the I/O point testing is to be performed and initiating the I/O point testing on the selected one or more remote cabinets. In response to an output point testing being initiated on the selected one or more remote cabinets, the method includes sending measurement instructions to a Bluetooth-enabled meter via a web interface and, simultaneously with sending the measurement instructions, sending instructions to the automated testing system to generate an output signal for performing a first test case of the output point testing. The method further comprises comparing a measurement recorded by the Bluetooth-enabled meter with the output signal. If the recorded measurement is within an acceptable tolerance of the output signal, the method automatically proceeds to a next test case of the output point testing. If the recorded measurement is outside the acceptable tolerance of the output signal, the method automatically notifies an operator of a failed test status and provides an option to re-perform the first test case of the output point testing. The method also includes saving a result of the output point testing in a database.
Other objects and features of the present disclosure will be in part apparent and in part pointed out herein.
Corresponding reference numbers indicate corresponding parts throughout the drawings.
In an embodiment, an automation engineer prepares and loads the information of the points to be tested in an I/O database 110 associated with testing server 102. The I/O database 110 contains the symbolic name, or tag, for each of the I/O points to be tested, terminal block information for the operator, and scaling information. A web application running on testing server 102 may be used to assign cabinets to an operator (i.e., a tester). After an authentication has been performed, the tester can access the list of cabinets, and their I/O points, via user computing device 106. The operator can then select a cabinet and I/O point (by type, completion status, or terminal block order).
Referring now to
As shown in
In an embodiment, the control system agent 218 sends and receives setpoints to and from the control system 208 and the HMI agent 220 captures screenshots from the HMI system 210. The testing server 102 communicates with the software agents 218, 220, 222 via a Remote Procedure Call (RPC) framework. In alternative embodiments, testing system 102 also comprises firewalls and/or signal conditioners between testing server 102 and automation system 104 depending on the specific project requirements.
The smart calibrator device 202 is a flexible device for maintenance and testing of sensors and process meters. A suitable calibrator device for use with the I/O testing system 100 of the present disclosure is the MSC Multifunction Smart Calibrator available from Seneca s.r.l. The device preferably provides measurement, generation, and simulation of analog and digital signals, temperature sensors, and load cells with an accuracy of 0.05% for each type of input/output. Data visualization and parameters settings are provided via a USB cable or Bluetooth connection. It is to be understood that smart calibrator device 202 may be coupled to user computing device 106 via Bluetooth, WiFi, near-field communication (NFC), or the like or hardwired or connected via a direct connection such as Universal Serial Bus (USB). In addition to or instead of smart calibrator device 202, a basic meter 226 may be used for testing the I/O points.
As an example of output point testing, user computing device 106 sends instructions to the Bluetooth-enabled meter 202 to measure current as indicated on the web user interface. At the same time, testing server 102 sends an instruction to automation system 104 to generate the output signal (i.e., setpoint) and takes a screenshot of HMI system 210. The testing server 102 then converts the acquired measurement (e.g. current) into engineering units, and compares it to the setpoint. If the values match within tolerance, the user interface displays the next test case to the operator. Otherwise, the user interface shows a failure status together with the measured and setpoint values and the screenshot to the operator for retry. In every case, the test data is saved into database 110.
As an example of input point testing, user computing device 106 sends setpoint instructions to meter 202 acting as a generator (e.g., generate 10V) as indicated on the web user interface. At the same time, testing server 102 sends an instruction to automation system 104 to read the input signal (i.e., measure) and takes a screenshot of HMI system 210. The testing server 102 then converts the setpoint into engineering units, and compares it to the measured value. If the values match within tolerance, the user interface displays the next test case to the operator. Otherwise, the user interface shows a failure status together with the measured and setpoint values and the screenshot to the operator for retry. In every case, the test data is saved into database 110.
The executed test cases can be saved in Word/Excel format with the details of operator name, time of operation, I/O point details, expected value, measured value, test result, screenshot, meter serial number, etc.
Advantageously, testing system 102 reduces the time to perform a single test (e.g., 4 values in 12 seconds, which is a 10× improvement versus the average time), lowers the knowledge requirements for I/O testing (it allows execution by electricians, without requiring the skill to read electrical schemas, and does not require automation specialists), increases the completeness of the test documentation, reduces mobilization at the manufacturing yard of customer and automation specialists, and categorizes photos and videos taken by the operator with the table to specific equipment without manual sorting. Another benefit of testing system 102 is that it allows manufacturing personnel to start integration tests with the automation system during the internal testing phase, so that the customer testing phase is reached with documented evidence of a complete end-to-end testing (rather than Excel files or marked-up documents). This evidence facilitates customer acceptance of sample checks, rather than requiring a 100% I/O check during a Factory Acceptance Test (FAT), which delivers a drastic reduction of overall FAT duration (e.g., 50% reduction). As FAT is on the critical path of most industrial automation projects, the testing system and methods of the present disclosure reduce risks and provides capital costs benefits to the overall automation project schedule. Unlike testing system 102, conventional solutions are unable to achieve the tight integration with automation and testing procedure required for automated I/O testing.
In addition, the test data collected by the disclosed testing system can be further used in different ways:
Advantageously, system engineering is needed only for system setup, which saves time and improves productivity. For example, the system guides all steps, and provides immediate audio/video feedback to the test engineer. In addition, the test engineers do not need to know faceplates and to read the loop diagram from terminal block to the HMI SCADA. Improved automated PREFAT documentation permits remote FAT to be done efficiently by sampling rather than full I/O tests.
Embodiments of the present disclosure may comprise a special purpose computer including a variety of computer hardware, as described in greater detail herein.
For purposes of illustration, programs and other executable program components may be shown as discrete blocks. It is recognized, however, that such programs and components reside at various times in different storage components of a computing device, and are executed by a data processor(s) of the device.
Although described in connection with an example computing system environment, embodiments of the aspects of the invention are operational with other special purpose computing system environments or configurations. The computing system environment is not intended to suggest any limitation as to the scope of use or functionality of any aspect of the invention. Moreover, the computing system environment should not be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in the example operating environment. Examples of computing systems, environments, and/or configurations that may be suitable for use with aspects of the invention include, but are not limited to, personal computers, server computers, hand-held or laptop devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, mobile telephones, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, and the like.
Embodiments of the aspects of the present disclosure may be described in the general context of data and/or processor-executable instructions, such as program modules, stored one or more tangible, non-transitory storage media and executed by one or more processors or other devices. Generally, program modules include, but are not limited to, routines, programs, objects, components, and data structures that perform particular tasks or implement particular abstract data types. Aspects of the present disclosure may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote storage media including memory storage devices.
In operation, processors, computers and/or servers may execute the processor-executable instructions (e.g., software, firmware, and/or hardware) such as those illustrated herein to implement aspects of the invention.
Embodiments may be implemented with processor-executable instructions. The processor-executable instructions may be organized into one or more processor-executable components or modules on a tangible processor readable storage medium. Also, embodiments may be implemented with any number and organization of such components or modules. For example, aspects of the present disclosure are not limited to the specific processor-executable instructions or the specific components or modules illustrated in the figures and described herein. Other embodiments may include different processor-executable instructions or components having more or less functionality than illustrated and described herein.
The order of execution or performance of the operations in accordance with aspects of the present disclosure illustrated and described herein is not essential, unless otherwise specified. That is, the operations may be performed in any order, unless otherwise specified, and embodiments may include additional or fewer operations than those disclosed herein. For example, it is contemplated that executing or performing a particular operation before, contemporaneously with, or after another operation is within the scope of the invention.
When introducing elements of the invention or embodiments thereof, the articles “a,” “an,” “the,” and “said” are intended to mean that there are one or more of the elements. The terms “comprising,” “including,” and “having” are intended to be inclusive and mean that there may be additional elements other than the listed elements.
Not all of the depicted components illustrated or described may be required. In addition, some implementations and embodiments may include additional components. Variations in the arrangement and type of the components may be made without departing from the spirit or scope of the claims as set forth herein. Additional, different or fewer components may be provided and components may be combined. Alternatively, or in addition, a component may be implemented by several components.
The above description illustrates embodiments by way of example and not by way of limitation. This description enables one skilled in the art to make and use aspects of the invention, and describes several embodiments, adaptations, variations, alternatives and uses of the aspects of the invention, including what is presently believed to be the best mode of carrying out the aspects of the invention. Additionally, it is to be understood that the aspects of the invention are not limited in its application to the details of construction and the arrangement of components set forth in the following description or illustrated in the drawings. The aspects of the invention are capable of other embodiments and of being practiced or carried out in various ways. Also, it will be understood that the phraseology and terminology used herein is for the purpose of description and should not be regarded as limiting.
It will be apparent that modifications and variations are possible without departing from the scope of the invention defined in the appended claims. As various changes could be made in the above constructions and methods without departing from the scope of the invention, it is intended that all matter contained in the above description and shown in the accompanying drawings shall be interpreted as illustrative and not in a limiting sense.
In view of the above, it will be seen that several advantages of the aspects of the invention are achieved and other advantageous results attained.
The Abstract and Summary are provided to help the reader quickly ascertain the nature of the technical disclosure. They are submitted with the understanding that they will not be used to interpret or limit the scope or meaning of the claims. The Summary is provided to introduce a selection of concepts in simplified form that are further described in the Detailed Description. The Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the claimed subject matter.