Materials testing system with customizable data parser and workflow field mapping

The materials testing system addresses inefficiencies in data import and analysis by using a customizable data parser and workflow field mapping to automate and customize data handling, improving efficiency and reducing errors.

JP2026507644APending Publication Date: 2026-03-04ILLINOIS TOOL WORKS INC
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-02-21
Publication Date
2026-03-04

AI Technical Summary

Technical Problem

Materials testing systems face inefficiencies due to manual data entry errors and delays in setting up and analyzing test methods, especially when large amounts of information need to be imported, and existing systems often require time-consuming individual importation of data.

Method used

A materials testing system with a customizable data parser and workflow field mapping that automatically imports data, separates it into smaller portions, and allows for customization of parsing configurations, enabling efficient population of input fields and test parameters.

Benefits of technology

The system enhances efficiency by reducing data entry errors and delays, allowing for robust and automated data handling in materials testing workflows.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026507644000001_ABST
    Figure 2026507644000001_ABST
Patent Text Reader

Abstract

Described herein is an example materials testing system that allows a user to select one or more customizable data parsers (from among several customizable data parsers) when configuring a workflow for test method setup, execution, and / or analysis on a materials testing machine. Then, during operation of the workflow, when a piece of data is imported by an importer, the selected data parser(s) can separate (or parse) several smaller data portions from the imported data. The several smaller data portions can be mapped to different input fields and / or used to simultaneously set several different parameters (e.g., associated with input fields) of the workflow. In this way, materials testing workflows can be made much more efficient than conventional systems that can only use imported data to set a single workflow parameter (and / or fill a single input field).
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] [CROSS-REFERENCE TO RELATED APPLICATIONS] This application claims the benefit of and priority to U.S. Provisional Patent Application No. 63 / 447,182, filed February 21, 2023, entitled "Material Testing Systems with Customizable Data Parsers and Workflow Field Mappings," the entire contents of which are incorporated herein by reference.

[0002] The present disclosure relates generally to materials testing systems, and more particularly to materials testing systems with customizable data parsers and workflow field mappings. [Background technology]

[0003] Materials testing machines are used to test various material specimens for attributes (e.g., tensile strength / compressive strength). The specific testing method (also known as test method) can vary for each material specimen. A computing device in communication with the materials testing machine can guide a user through the workflow for setting up each test method, running each test method, and analyzing the results of each test method.

[0004] By comparing such a system with the present disclosure set forth in the remainder of this application with reference to the drawings, the limitations and disadvantages of the conventional and traditional approaches will become apparent to one skilled in the art. Summary of the Invention

[0005] The present disclosure relates to a materials testing system with customizable data parser and workflow field mapping substantially as illustrated and / or described in connection with at least one of the drawings and more fully set forth in the claims.

[0006] These and other advantages, aspects, and novel features of the present disclosure, as well as details of illustrated examples of the present disclosure, will be more fully understood from the following description and drawings. [Brief explanation of the drawings]

[0007] [Figure 1] FIG. 1 illustrates an exemplary materials testing system according to aspects of the present disclosure.

[0008] [Figure 2] FIG. 2 is a block diagram of the materials testing system of FIG. 1 according to an embodiment of the present disclosure.

[0009] [Figure 3] 1 is a flowchart illustrating an exemplary state progression of a materials testing workflow, according to aspects of the present disclosure.

[0010] [Figure 4] 3 is a flowchart illustrating an example operation of a testing process of the materials testing system of FIG. 2 according to an embodiment of the present disclosure.

[0011] [Figure 5] 5 is a flowchart illustrating an example operation of a parsing configuration setup process of the testing process of FIG. 4 in accordance with an aspect of the present disclosure.

[0012] [Figure 6] 5 is a flowchart illustrating an example operation of a workflow setup process for the testing process of FIG. 4 according to an aspect of the present disclosure.

[0013] [Figure 7] 5 is a flowchart illustrating an example operation of a workflow execution process of the testing process of FIG. 4 according to an aspect of the present disclosure.

[0014] [Figure 8] 5 is a flowchart illustrating an example operation of a tag printing process of the testing process of FIG. 4 according to an aspect of the present disclosure.

[0015] [Figure 9a] 6 illustrates an example parser configuration graphical user interface (GUI) that may be output during the parser configuration setup process of FIG. 5, according to aspects of the present disclosure. [Figure 9b] 6 illustrates an example parser configuration graphical user interface (GUI) that may be output during the parser configuration setup process of FIG. 5, according to an aspect of the present disclosure.

[0016] [Figure 10] FIG. 7 illustrates an example workflow setup GUI that may be output during the workflow setup process of FIG. 6, according to aspects of the present disclosure.

[0017] [Figure 11] 8 illustrates an example workflow GUI that may be output during the workflow execution process of FIG. 7 according to aspects of the present disclosure.

[0018] [Figure 12] 9 illustrates an example tag printing GUI that may be output during the tag printing process of FIG. 8, according to an embodiment of the present disclosure. DETAILED DESCRIPTION OF THE INVENTION

[0019] The figures are not necessarily to scale. Where appropriate, the same or similar reference numbers are used in the figures to refer to similar or identical components. For example, a reference number utilizing a letter (e.g., gripper 124a, gripper 124b) refers to the same reference number without the letter (e.g., gripper 124).

[0020] Materials testing workflows sometimes require an operator to enter several pieces of information to set up a test method run, analyze test method results, and / or report test method results. However, manual entry of test method-related information carries the risk of both data entry errors and delays. While some systems automatically import information, it can be time-consuming for an operator to import each piece of information individually, especially when there is a large amount of information that needs to be imported.

[0021] The disclosed exemplary materials testing system automatically imports data using a data importer. The disclosed exemplary materials testing system also uses a data parser to separate the imported data into several smaller data portions. In this way, a single imported data item can encapsulate several different pieces of data. Once separated, the several smaller data portions can be used to populate various input fields and / or set various test parameters (e.g., variables) in a materials testing workflow. In this way, the materials testing workflow can be made much more efficient than conventional systems that can only use imported data to set a single workflow parameter (and / or fill a single input field). The exemplary materials testing system may also allow for customization of the data parser and / or the use of different data parsers for different workflows and / or input fields / parameters, making the system highly robust.

[0022] Some examples of the present disclosure include a materials testing machine including a test sensor, a test actuator, and a test controller configured to control the test actuator to perform a test method; and a non-transitory computer readable medium including machine readable instructions that, when executed by a processor, execute a materials testing workflow configured to guide a user in setting up, executing, or analyzing a test method for the materials testing machine; and, in response to executing the materials testing workflow, display on a display screen a first graphical user interface (GUI) associated with a first workflow state of the materials testing workflow, the first GUI including a first plurality of input fields; identifying one or more first input fields of the first plurality of input fields associated with at least one input field mapping; and a data import device that receives a piece of imported data from a data import device, the data import device including: a data importing device that imports a piece of imported data from a data import device; a data importing device that imports a piece of imported data from a data import device; a data importing device that imports a piece of imported data from a data import device; a data importing device that imports a piece of imported data from a data import device;

[0023] In some examples, the non-transitory computer-readable medium further includes machine-readable instructions that, when executed by the processor, cause the processor to execute a test method on the materials testing machine or analyze results of the test method executed on the materials testing machine using data entered into the one or more first input fields during execution of a materials testing workflow. In some examples, the non-transitory computer-readable medium further includes machine-readable instructions that, when executed by the processor, cause the processor to: provide, via a display screen, a second GUI that allows a user to customize the parsing configuration in response to initiating a parsing configuration setup process; receive a first signal from one or more input devices of the user interface, the first signal representing a first user interaction with the second GUI, the first user interaction defining at least one parsing rule of the one or more parsing rules; and create or modify machine-readable data in the non-transitory computer-readable medium that represents the parsing configuration and the one or more parsing rules based on the first user interaction.

[0024] In some examples, the non-transitory computer-readable medium further includes machine-readable instructions that, when executed by the processor, cause the processor to receive imported sample data from a data import device during a parsing configuration setup process; display a representation of the sample data in a second GUI on a display screen, wherein a first user interaction with the second GUI includes an interaction with the representation of the sample data displayed in the second GUI; and, in response to the first user interaction, display an annotation of the representation of the sample data in the second GUI on the display screen, wherein the annotation describes at least one parsing rule. In some examples, the non-transitory computer-readable medium further includes machine-readable instructions that, when executed by the processor, cause the processor to: provide via a display screen, in response to initiating a materials testing workflow setup process, a third GUI through which a user can set up the materials testing workflow; receive a second signal from one or more input devices, the second signal representing a second user interaction with the third GUI, the second user interaction defining at least one input field mapping associated with one or more first input fields of the materials testing workflow; and create or modify the materials testing workflow and the at least one input field mapping in the non-transitory computer-readable medium based on the second user interaction.

[0025] In some examples, the non-transitory computer-readable medium further includes machine-readable instructions that, when executed by the processor, cause the processor to receive two or more user-created data portions via one or more input devices of a user interface, combine the two or more user-created data portions into one user-created data portion using inverses of one or more parsing rules of a parsing configuration, and print, via a tag printer, a tag that encodes the one user-created data portion. In some examples, the parsing configuration includes a first parsing configuration, the first parsing configuration being associated with one or more first expected formatting criteria, and the non-transitory computer-readable medium further includes machine-readable instructions that, when executed by the processor, cause the processor to: in response to receiving a piece of data imported from a data import device, verify that the piece of data conforms to the one or more first expected formatting criteria of the first parsing configuration; in response to successful verification that the piece of data conforms to the one or more first expected formatting criteria of the first parsing configuration, separate the piece of data into two or more data portions and enter them into one or more first input fields; and in response to unsuccessful verification that the piece of data conforms to the one or more expected formatting criteria of the first parsing configuration, output a notification via a user interface or identify a second parsing configuration including second expected formatting criteria to which the piece of data conforms.

[0026] Some examples of the present disclosure include a data import device; a materials testing machine including a test sensor, a test actuator, and a test controller configured to control the test actuator to perform a test method; a user interface; and a computing device configured to communicate with the user interface, the materials testing machine, and the data import device, to execute a materials testing workflow configured to guide a user in setting up, executing, or analyzing a test method for the materials testing machine; and, in response to executing the materials testing workflow, displaying on a display screen of the user interface a first graphical user interface (GUI) associated with a first workflow state of the materials testing workflow, the first GUI including a first plurality of input fields, and one or more first input field mappings associated with at least one of the first plurality of input fields. and a computing device having processing circuitry configured to, in response to receiving a piece of imported data from a data import device, separate the piece of imported data into two or more data portions in accordance with the one or more parsing rules of the parsing configuration and populate the one or more first input fields based on the at least one input field mapping.

[0027] In some examples, the data importing device includes a barcode reader, a radio frequency identification (RFID) reader, a near field communications (NFC) reader, a short-range ultra high frequency reader, a camera, or a measurement device configured to measure dimensions of the subject. In some examples, the processing circuitry is further configured to: in response to initiating the parsing configuration setup process, provide via the display screen a second GUI that allows a user to customize the parsing configuration; receive the imported sample data from the data importing device; display on the display screen a representation of the sample data in the second GUI; receive a first signal from one or more input devices of the user interface, the first signal representing a first user interaction with the representation of the sample data displayed in the second GUI, the first user interaction defining at least one parsing rule of the one or more parsing rules; and, in response to the first user interaction, display on the display screen an annotation of the representation of the sample data in the second GUI, the annotation describing the at least one parsing rule.

[0028] In some examples, the at least one parsing rule includes a starting position and character length of a substring of two or more data portions, a specific character that appears before or after the substring, a specific string that appears before or after the substring, or a number of portions that separates one imported data. In some examples, the processing circuitry is further configured to: in response to initiating the materials testing workflow setup process, provide via the display screen a third GUI through which a user can set up the materials testing workflow; receive a second signal from the one or more input devices, the second signal representing a second user interaction with the third GUI, the second user interaction defining at least one input field mapping associated with one or more first input fields of the materials testing workflow; and create or modify the materials testing workflow and the at least one input field mapping in the memory circuitry based on the second user interaction.

[0029] In some examples, the processing circuitry is further configured to define a first workflow state of the materials testing workflow and a second workflow state of the materials testing workflow in response to receiving one or more third signals from the one or more input devices during the materials testing workflow setup process, the second workflow state being associated with the fourth GUI and the second plurality of input fields. In some examples, the system further includes a tag printer in communication with the computing device, the processing circuitry being further configured to receive two or more user-created data portions via the one or more input devices, combine the two or more user-created data portions into a single user-created data portion using inverses of one or more parsing rules of the parsing configuration, and print a tag via the tag printer that encodes the single user-created data portion.

[0030] Some examples of the present disclosure include executing, via processing circuitry of a computing device, a materials testing workflow configured to guide a user in setting up, executing, and analyzing a test method of a materials testing machine, the computing device communicating with a materials testing machine, the materials testing machine including a test sensor, a test actuator, and a test controller configured to control the test actuator to perform the test method; and displaying, upon execution of the materials testing workflow, a first graphical user interface (GUI) associated with a first workflow state of the materials testing workflow on a display screen of a user interface, the first GUI including a first plurality of input fields, the user interface communicating with the computing device; and displaying, via processing circuitry, one or more first input fields of the first plurality of input fields associated with at least one input field mapping. and identifying a plurality of input field mappings, the at least one input field mapping specifying a parsing configuration to be used with one or more first input fields from a plurality of stored parsing configurations, the parsing configuration including one or more parsing rules capable of separating an imported piece of data into two or more data portions, the at least one input field mapping further specifying which of the two or more data portions parsed according to the one or more parsing rules should be used to populate the one or more first input fields; and in response to receiving, at a computing device, imported data from a data importing device in communication with the computing device, separating the piece of data into two or more data portions according to the one or more parsing rules of the parsing configuration and populating the one or more first input fields based on the at least one input field mapping.

[0031] In some examples, the data import device includes a barcode reader, a radio frequency identification (RFID) reader, a near field communication (NFC) reader, a short-range ultra-high frequency reader, a camera, or a measurement device configured to measure dimensions of the specimen. In some examples, the method further includes, during execution of the materials testing workflow, executing a test method on the materials testing machine or analyzing results of the test method executed on the materials testing machine using the data entered in the one or more first input fields. In some examples, the method further includes, in response to initiating a parsing configuration setup process, providing a second GUI via a display screen that allows a user to customize the parsing configuration; receiving sample data imported from a data import device at the computing device; displaying a display of the sample data in the second GUI on the display screen; receiving a first signal at the computing device from one or more input devices of the user interface, the first signal representing a first user interaction with the display of the sample data displayed in the second GUI, the first user interaction defining at least one parsing rule of the one or more parsing rules; displaying an annotation of the display of the sample data in the second GUI on the display screen in response to the first user interaction, the annotation describing the at least one parsing rule; and creating or modifying the parsing configuration and the one or more parsing rules within a memory circuit unit of the computing device based on the first user interaction.

[0032] In some examples, the method further includes receiving, at the computing device via one or more input devices, two or more smaller user-created data portions; combining, via processing circuitry, the two or more smaller user-created data portions into a single larger user-created data portion using inverted one or more parsing rules of the parsing configuration; and printing, via a tag printer in communication with the communication device, a tag encoding the single larger user-created data portion. In some examples, the parsing configuration includes a first parsing configuration, the first parsing configuration being associated with one or more first expected formatting criteria, and the method further includes, in response to receiving a piece of data imported from a data import device at the computing device, verifying via processing circuitry that the piece of data conforms to the one or more first expected formatting criteria of the first parsing configuration; in response to successfully verifying that the piece of data conforms to the one or more first expected formatting criteria of the first parsing configuration, separating the piece of data into two or more data portions and entering them into one or more first input fields; and in response to unsuccessfully verifying that the piece of data conforms to the one or more expected formatting criteria of the first parsing configuration, outputting a notification via a user interface or identifying a second parsing configuration including second expected formatting criteria to which the piece of data conforms.

[0033] 1 illustrates an example materials testing system 100. As illustrated, the materials testing system 100 includes a materials testing machine 102 (also known as a universal testing machine), a computing system 104 connected to the materials testing machine 102 through a cable 106, one or more data import devices 108 connected to the computing system 104 through a cord 110, and a tag printer 150 connected to the computing system 104 through a line 152. Although illustrated as being physically connected, in some examples, the connections between the computing system 104, the materials testing machine 102, the data import devices 108, and / or the printer 150 may be wireless rather than wired.

[0034] 1, the materials testing machine 102 includes a frame 112. In some examples, the frame 112 provides rigid structural support to other components of the materials testing machine 102. As shown, the frame 112 includes a top plate 114 and a bottom base 116 connected by two posts 118. In some examples, the posts 118 of the frame 112 may house guide rails and / or a drive shaft 212 of the materials testing machine 102 (see, for example, FIG. 2).

[0035] 1, a movable crosshead 120 extends between the columns 118. In some examples, the movable crosshead 120 may be connected to guide rails and / or drive shafts 212 housed in the columns 118 and / or may be configured to move toward and / or away from the base 116 through actuation (e.g., motorized) of the drive shaft(s) 212. Although one movable crosshead 120 is shown in the example of FIG. 1, in some examples, the materials testing machine 102 may have multiple movable crossheads 120 and / or other moving members.

[0036] 1, fixtures 122 are attached to the bottom base 116 of the frame 112 and to the movable crosshead 120. As shown, the lower fixture 122a includes a gripper 124a, and the upper fixture 122b includes both a test sensor 126 and a gripper 124b. While one test sensor 126 and two grippers 124 are shown in the example of FIG. 1, in some examples, the test machine 102 may include more or fewer test sensors 126 and / or grippers 124.

[0037] In the example of FIG. 1 , grippers 124 hold test specimen 128. Test specimen 128 is illustrated as a rope (e.g., made of steel), but in some examples may be some other type of material and / or component. Grippers 124a and / or 124b are illustrated as dogbone-style grippers, but in some examples may alternatively or additionally be configured as bolt holders, wedge-style grippers, side-acting grippers, manual grippers, roller grippers, capstan-style grippers, and / or syringe holders. In some examples, one or both of grippers 124 may be replaced by a compression platen configured to compress test specimen 128.

[0038] 1, the test sensor 126 is connected to the gripper 124 so as to measure the force acting on the gripper 124 (and / or the specimen 128, the crosshead 120, etc.). In some examples, the test sensor 126 may be a load cell. In some examples, the test sensor 126 may be some other type of sensor.

[0039] In some examples, the materials testing machine 102 may be configured for static mechanical testing. For example, the materials testing machine 102 may be configured for compressive strength testing, tensile strength testing, shear strength testing, flexural strength testing, flexural strength testing, tear strength testing, peel strength testing (e.g., adhesive bond strength), torsional strength testing, and / or any other compressive and / or tensile testing. Additionally or alternatively, the materials testing machine 102 may be configured to perform dynamic testing.

[0040] In some examples, the materials testing machine 102 is configured to interface with a computing system 104 to perform the test method. In some examples, the computing system 104 can perform the test method and / or analyze the results of the test method using data imported from data import device(s) 108. Figure 1 shows some examples of data import devices 108 that can be used to import data used to perform the test method.

[0041] 1 , each data import device 108 is a device configured to transmit (and / or import) data to the computing system 104. For example, a data import device 108 may be a digital caliper 130 (e.g., configured to measure one or more dimensions of an object 128, a component of the materials testing machine 102, etc.). In some examples, the digital caliper 130 may include a multiplexer that combines and / or concatenates several measurements before importing. As another example, a data import device 108 may be a camera 132. In some examples, a data import device 108 may be a tag reader 134 configured to read data from a tag 136.

[0042] In some examples, the tag 136 may be attached to the specimen 128, the packaging of the specimen 128, the crosshead 120, the fixture 122 (see, e.g., FIG. 2), and / or some other component of the materials testing machine 102. In some examples, the tag 136 may store information about the item to which the tag 136 is attached. In some examples, the tag 136 may be detached and / or may store information other than information about the item to which the tag 136 is attached.

[0043] In some examples, tag 136 may be a one-dimensional barcode tag 136a, a two-dimensional barcode tag 136b (e.g., a quick response code tag), a Bluetooth® tag 136c (e.g., a tag 136 configured to use short-range, ultra-high frequency radio frequencies in the 2.4 GHz Industrial, Scientific, and Medical (ISM) frequency band between 2.402 GHz and 2.480 GHz), a near-field communication (NFC) tag 136d, a radio frequency identification (RFID) tag 136e, and / or some other type of tag 136. In some examples, camera 132 may be configured to read and / or scan one-dimensional barcode tag 136a and / or two-dimensional barcode tag 136b. In some examples, camera 132 may be incorporated into tag reader 134.

[0044] In some examples, the data importing device 108 may capture data in response to user activation of a trigger, button, or other capture input 209 (see, e.g., FIG. 2 ) of the data importing device 108. In some examples, the data may be transmitted (and / or imported) to the computing system 104 in response to user activation of the capture input 209 of the data importing device 108 (e.g., after capture). In examples where the captured data is encoded (e.g., in the tag 136), the data importing device 108 may decode the encoded data before transmitting it to the computing system 104, or the computing system 104 may decode the encoded data after receiving it.

[0045] 1, materials testing system 100 further includes tag printer 150. In some examples, tag printer 150 is configured to print one or more tags 136 (e.g., one-dimensional barcode tag 136a, two-dimensional barcode tag 136b, etc.). In some examples, computing system 104 provides data for tag printer 150 to print one or more tags 136. In some examples, computing system 104 and / or tag printer 150 may encode the data before printing.

[0046] Figure 2 is a block diagram of a materials testing system 100. Similar to Figure 1, the example in Figure 2 shows a computing system 104 connected to a materials testing machine 102 through a cable 106. Figure 2 also shows a data import device 108 connected to the computing system 104 through a cord 108, and a tag printer 150 connected to the computing system 104 via a line 152. Figure 2 also shows further details of the materials testing machine 102 and the computing system 104.

[0047] 2 , the computing system 104 includes a computing device 202 and a user interface (UI) 204 interconnected to one another. As shown, the UI 204 includes one or more input devices 206 configured to receive input from a user and one or more output devices 208 configured to provide output to the user. In some examples, the one or more input devices 206 may include one or more touchscreens, mice, keyboards, buttons, switches, slides, knobs, microphones, dials, and / or other input devices 206. In some examples, the one or more output devices 208 may include one or more display screens / touchscreens, speakers, lights, tactile devices, and / or other output devices 208. The output device(s) 208 (e.g., a display screen) of the UI 204 may output one or more representations of a materials testing workflow 300 configured to guide a user through the setup, execution, and / or analysis of a test method performed by the materials testing machine 102.

[0048] 2, the example materials testing machine 102 includes one or more actuators 210 connected to one or more drive shafts 212. In some examples, the actuators 210 may be used to provide force to and / or induce movement of the drive shafts 212. In some examples, the actuators 210 may include electric motors, pneumatic actuators, hydraulic actuators, piezoelectric actuators, relays, and / or switches.

[0049] The drive shaft 212 is further shown connected to the movable crosshead 120 such that movement of the drive shaft(s) 212 via the actuator(s) 210 results in movement of the movable crosshead 120. Although the term drive shaft 212 is used in the example of Figure 2, in some examples the drive shaft 212 may be some other mechanical means for moving the movable crosshead 120 despite guidance from the actuator(s) 210.

[0050] The example materials testing machine 102 is further illustrated as including a controller 214 in electrical communication with the actuator(s) 210. In some examples, the controller 214 may include processing circuitry and / or memory circuitry. In some examples, the controller 214 may be configured to control the materials testing machine 102 based on one or more commands, control inputs, and / or test parameters. In some examples, the controller 214 may be configured to convert commands, control inputs, and / or test parameters (e.g., received from the computing system 104) into appropriate (e.g., electrical) signals that can be delivered to the actuator(s) 210, thereby controlling the operation of the materials testing machine 102 (e.g., via the actuator(s) 210). For example, the controller 214 may provide one or more signals instructing the actuator(s) 210 to provide more or less power, thereby increasing or decreasing the applied force.

[0051] In the example of FIG. 2 , controller 214 is also in electrical communication with fixture 122 (e.g., gripper 124 and test sensor(s) 126). In some examples, controller 214 may be configured to convert commands, control inputs, and / or test parameters (e.g., received from computing system 104) into appropriate (e.g., electrical) signals that can be delivered to gripper 124 to thereby control the operation of gripper 124 (e.g., gripping or releasing). In some examples, controller 214 may be configured to convert commands, control inputs, and / or test parameters (e.g., received from computing system 104) into appropriate (e.g., electrical) signals that can be delivered to sensor(s) 126 to thereby control the operation of sensor(s) 126. In some examples, controller 214 may be configured to convert measurement data received from sensor(s) 126 and / or transmit measurement data to computing system 104.

[0052] The example controller 214 is further illustrated as being in electrical communication with a control panel 216 of the materials testing machine 102. In some examples, the control panel 216 may include one or more input devices (e.g., buttons, switches, slides, knobs, microphones, dials, and / or other electromechanical input devices). In some examples, the control panel 216 may be used by an operator to directly control the materials testing machine 102. In some examples, the controller 214 may be configured to convert commands, control inputs, and / or test parameters received via the control panel 216 into appropriate (e.g., electrical) signals that can be delivered to the actuator(s) 210 and / or gripper(s) 124 to control the materials testing machine 102.

[0053] The controller 214 is also shown in electrical communication with a communication interface 218b of the materials testing machine 102. In some examples, the communication interface 218b includes hardware, firmware, circuitry, and / or software for connecting the materials testing machine to the computing device 104 (e.g., wirelessly and / or via cable 106). In some examples, the controller 214 may receive information (e.g., commands) from the computing device 202 through the communication interface 218b and / or send information (e.g., measurement data from the sensor(s) 126) to the computing device 202 through the communication interface 218b.

[0054] The example computing device 202 includes one or more communications interfaces 218a. In some examples, the communications interface 218a may be a network interface and / or an input / output (I / O) interface. For example, the one or more I / O interfaces 222 may include one or more universal serial bus (USB) ports, Thunderbolt ports, FireWire (IEEE 1394) ports, and / or any other type of serial and / or parallel data port. In some examples, the communications interface includes hardware, firmware, circuitry, and / or software that enables communication with external devices.

[0055] 2, one communication interface 218a communicates with a communication interface 218b of the materials testing machine 102 through a cable 106. As shown, the computing device 102 further communicates with a network 220 (e.g., the Internet), a tag printer 150, and a data import device(s) 108 through the communication interface(s) 218a. In some examples, the computing device 202 may communicate with other computing systems 104 and / or materials testing machines 102 through the communication interface(s) 218a. As shown, the communication interface 218b is electrically connected to a common electrical bus 220 of the computing device 202.

[0056] The computing device 202 further includes processing circuitry 224 connected to the common electrical bus 220. In some examples, the processing circuitry 224 may include one or more processors. In some examples, the processing circuitry 224 is configured to process information received from the UI 204, the data import device(s) 108, and / or the materials testing machine 102. In some examples, the processing circuitry 224 is configured to send commands and / or test parameters to the materials testing machine 102 (e.g., via the communication interface(s) 218a). In some examples, the processing circuitry 224 is configured to output information to an operator through the UI 204. In some examples, the computing device 202 is configured to execute machine-readable instructions stored in the memory circuitry 226.

[0057] The example computing device 202 further includes memory circuitry 226 connected to the common electrical bus 220. As shown, the memory circuitry 226 includes (and / or stores) a materials testing workflow 300, a testing process 400, and one or more parsing configurations 250. While the materials testing workflow 300, the testing process 400, and / or the parsing configuration(s) 250 are shown as part of the memory circuitry 226 in the example of FIG. 2, in some examples they may be implemented using discrete circuitry (e.g., in the processing circuitry 224).

[0058] In some examples, the materials testing workflow 300, the testing process 400, and / or the parsing configuration(s) 250 are implemented using non-transitory machine-readable instructions stored in the memory circuitry 226. In some examples, the processing circuitry 224 is configured to execute the machine-readable instructions of the materials testing workflow 300 to guide a user in the setup, execution, and analysis of a test method of the materials testing machine 102. In some examples, the computing device 202 is configured to interface with the controller 214 of the materials testing machine 102 to execute the test method during the materials testing workflow 300.

[0059] 3 is a flowchart illustrating example workflow states of materials testing workflow 300. Although a particular sequence of workflow states is illustrated, in some instances materials testing workflow 300 may be customizable such that additional and / or fewer workflow states may be implemented during operation. In addition, many alternative progressions through workflow 300 may be possible.

[0060] In some examples, materials testing workflow 300 progresses through workflow states to guide a user through the setup, execution, and analysis of a test method on a materials testing machine. In some examples, a particular workflow state may be associated with an output of UI 204 (e.g., a display state of workflow GUI 1100 (see FIG. 11 )). While materials testing workflow 300 may be described below for purposes of understanding as performing certain operations, it should be understood that one or more of the above-described components of materials testing system 100 (e.g., processing circuitry 224, UI 204, etc.) may undertake these operations on behalf of (and / or at the direction of) materials testing workflow 300.

[0061] 3, the first workflow state is a sample setup state 302 (and / or sample setup states 302). During the example sample setup state(s) 302, the materials testing workflow 300 prompts the operator for information regarding a set of sample specimens 128 and a set of test methods to be used to test the sample specimens 128.

[0062] The information prompted for (and / or collected) during the sample setup state(s) 302 may be information applicable to all specimens 128 and test methods of the sample, such as, for example, the date the test(s) are to be performed, the date the specimen 128 was manufactured / shipped / packaged, operator identification (e.g., number, name, etc.), fixture(s) identification (e.g., number(s), name(s), etc.), and / or other information relevant to all tests on all specimens 128. In some examples, the data prompted for (and / or collected) during the sample setup state(s) 302 may be imported, for example, by reading (and / or capturing an image of) tags 136 attached to packaged specimens 128, the materials testing machine 102, and / or components of the materials testing machine 102 (e.g., fixture 122, crosshead 120, etc.). As another example, the computing device 202 may load information based on images captured by the data import device(s) 108 (e.g., images of packaged specimens of the subject 128, the materials testing machine 102, and / or components of the materials testing machine 102) from the memory circuitry 226 or download it over the network 220.

[0063] 3, the sample setup state 302 is followed by one or more test specimen and / or test method setup states 304. During the test specimen and / or test method setup state(s) 304, the materials testing workflow 300 prompts the operator for (and / or collects) information regarding the particular specimen 128 of the sample and / or the particular test method to be used to test the particular specimen 128. For example, information prompted for (and / or collected) during the test specimen and / or test method setup state(s) 304 may include the date the test is to be performed, the date the specimen 128 was manufactured / shipped / packaged, the identification of the specimen 128 (e.g., number, name, description, etc.), the identification of the test (e.g., number, name, description, etc.), the pre-test characteristics of the specimen 128 (e.g., measurements, material type, weight, color, shape, etc.), the target parameters of the test (e.g., start / end positions of the gripper(s) 124 / crosshead 120, distance traveled by the crosshead 120, speed of travel of the crosshead 120, expected result(s) of the test (e.g., location / type of failure, distance traveled before failure, force applied before failure, post-test characteristics of the specimen, etc.), time(s) at which the sensor(s) 126 should take the measurement(s), etc.), and / or other information related to a particular test method and / or a particular specimen.

[0064] In some examples, information prompted for (and / or collected) during the test specimen and / or test method setup state(s) 304 may be imported. For example, the data import device(s) 108 may import information read from tags 136 attached to the specimen 128 (and / or associated packaging), the materials testing machine 102, and / or components of the materials testing machine 102 (e.g., fixture 122, crosshead 120, etc.). As another example, the data import device(s) 108 may import information about the specimen 128 measured by the digital caliper 130. As another example, the computing device 202 may load information about the specimen 128 based on images captured by the data import device(s) 108 from the memory circuitry 226 or download it over the network 220.

[0065] 3 , the test object and / or test method setup state 304 is followed by a test method execution state 306 (and / or test method execution states 306). During the test method execution state(s) 306, the computing device 202 communicates with the materials testing machine 102 (e.g., via the communications interface 218) and executes the test method on the test object 128 using the materials testing machine 102 according to information received during the test object and / or test method setup state(s) 304 and / or the specimen setup state(s) 302. For example, the processing circuitry 224 of the computing device 202 may determine and / or send one or more parameters and / or commands to the materials testing machine 102, and the controller 214 of the materials testing machine 102 may control the actuator(s) 210 of the materials testing machine 102 to execute the test method according to the command(s) and / or parameter(s).

[0066] 3, the run test method state 306 is followed by one or more post-test analysis setup states 308. During the post-test analysis setup state(s) 308, the materials testing workflow 300 prompts the operator for (and / or collects) information related to the analysis of the test method that was run during the run test method state 306.

[0067] For example, information prompted for (and / or collected) during post-test analyte analysis setup state(s) 308 may include post-test characteristics of the analyte 128, actual parameters of the test, actual results of the test, and / or other information related to the test method and / or analysis of the test sample. Although the post-test analyte analysis setup state(s) 308 are illustrated as separate states in Figure 3, in some examples they may be integrated into the test analyte and / or test method setup state(s) 304.

[0068] 3 , one or more post-test analyte analysis setup states 308 are followed by one or more post-test analyte analysis calculation states 310 of the materials testing workflow 300. During the post-test analyte analysis calculation state(s) 310, the processing circuitry 224 of the computing device 202 may perform one or more calculations based on information collected during the previous post-test analyte analysis setup state(s) 308. For example, the processing circuitry 224 may estimate the strength, reliability, quality, grade, resilience, and / or other properties of the analyte 128. As another example, the processing circuitry 224 may make assumptions about the structure and / or composition of the analyte 128. As another example, the processing circuitry may make assumptions about the future performance of the analyte 128.

[0069] 3, materials testing workflow 300 cycles through states 304-310 for all test methods and / or test specimens for the test sample (set up in state 302). As shown, after state 310, materials testing workflow 300 cycles through states 304-310 to the next test method and / or test specimen (if there is another test method or test specimen) at state 314 and then returns to state 304. Once states 304-310 have been completed for all test methods and / or test specimens for the test sample, materials testing workflow 300 transitions to one or more reporting states 316, where materials testing workflow 300 can provide a report on the results of the test sample as specified by the operator. After the reporting state(s) of materials testing workflow 300, materials testing workflow 300 ends.

[0070] 4 is a flowchart illustrating exemplary operations of a testing process 400 that may handle the setup and / or execution of the workflow 300. In some examples, the testing process 400 may additionally handle the setup of one or more parsing configurations 250 that may be used during execution of the workflow 300 to separate an imported piece of data into several smaller data portions. The testing process 400 may additionally handle the execution of a tag printing process 800 that uses inverses of the parsing configuration(s) 250 to combine several smaller data portions into a larger piece of data and then print an encoded tag 136 using this larger piece of data. While the testing process 400 may be described below as performing several specific operations for purposes of understanding, it should be understood that one or more of the above-mentioned components of the materials testing system 100 (e.g., processing circuitry 224, UI 204, etc.) may undertake those operations on behalf of (and / or at the command of) the testing process 400.

[0071] 4, the testing process 400 begins with a parsing configuration setup process 500. In some examples, one or more parsing configurations 250 are created and / or modified during the parsing configuration setup process 500. The parsing configuration setup process 500 is discussed further below with respect to FIG.

[0072] 4, after the parser configuration setup process 500, the testing process 400 proceeds to a workflow setup process 600. In some examples, one or more workflows 300 may be created and / or modified during the workflow setup process 600. The workflow setup process 600 is discussed further below with respect to FIG.

[0073] 4, after workflow setup process 600, testing process 400 proceeds to workflow execution process 700. In some examples, one or more workflows 300 (e.g., created and / or modified during workflow setup process 600) are executed during workflow execution process 700. In some examples, one or more of parsing configurations 250 (e.g., created and / or modified during parsing configuration setup process 500) may be used during workflow execution process 700. Workflow execution process 700 is discussed further below with respect to FIG. 7.

[0074] In the example of FIG. 4, after the workflow execution process 700, the testing process 400 proceeds to a tag printing process 800. In some examples, the tag printing process 800 uses an inverse of the parsing configuration 250 (e.g., created and / or modified during the parsing configuration setup process 500) to combine several smaller data portions into one larger piece of data, and then prints a tag 136 that encodes this combined larger piece of data. Although the tag printing process 800 is shown in the example of FIG. 4 as being performed at the end of the testing process 400, in some examples it may be performed at other points during the testing process 400. The tag printing process 800 is discussed further below with respect to FIG. 8.

[0075] FIG. 5 is a flowchart illustrating an example operation of the parser configuration setup process 500 (i.e., the first block in the testing process 400 shown in FIG. 4). In some examples, the parser configuration setup process 500 provides a parser setup GUI 900 (see, e.g., FIGS. 9a and 9b), through which a user can create and / or modify one or more parser configurations 250. More specifically, during the parser configuration setup process 500, a user may define one or more parsing rules 910 by which imported data may be separated (and / or parsed) into smaller data portions (see, e.g., FIG. 10). While the parser configuration setup process 500 may be described below as performing certain specific operations, it should be understood that one or more of the above-mentioned components of the materials testing system 100 (e.g., processing circuitry 224, UI 204, etc.) may undertake those operations on behalf of (and / or in accordance with) the parser configuration setup process 500.

[0076] 5, the parsing configuration setup process 500 begins at block 502, where the parsing configuration setup process 500 loops until input is received (e.g., via the UI 204) indicating that the user wants to add or modify the parsing configuration 250. If no such input is received, the parsing configuration setup process 500 repeats block 502. Once input is received, the parsing configuration setup process 500 proceeds to block 504.

[0077] In block 504, the parsing configuration setup process 500 selects one or more types of parsing configurations 250 to add or modify. When modifying an existing parsing configuration 250, the parsing configuration setup process 500 selects the type previously associated with the saved parsing configuration 250. When adding a new parsing configuration 250, the parsing configuration setup process 500 may select the type of the new parsing configuration 250 based on input from the user (e.g., received via the UI 204).

[0078] In some examples, the parser configuration setup process 500 may present a parser setup GUI 900 that allows selection of a parser configuration 250 in block 504. In some examples, the parser configuration setup process 500 may present (e.g., via the parser setup GUI 900) several parser configurations 250 for the user to choose from in block 504. In some examples, the type of parser configuration 250 may be associated with the type of data that the parser configuration 250 is designed to handle (and / or the type(s) of data import device(s) 108). In some examples, a particular type of parser configuration 250 may be further associated with a particular kind of parsing rule 910 that the parser configuration 250 can accommodate.

[0079] For example, one type of parsing configuration 250 may be an image-based parsing configuration 250 (e.g., designed to parse image data). In such an example, each parsing rule 910 of the parsing configuration 250 may be defined with respect to the image being parsed. Another example of a type of parsing configuration 250 may be a numeric parsing configuration 250 (e.g., designed to parse numeric data). In such an example, each parsing rule 910 of the parsing configuration 250 may be defined with respect to the numeric data that is expected to be parsed. Another example of a type of parsing configuration 250 may be a string parsing configuration 250 (e.g., designed to parse strings). In such an example, each parsing rule 910 of the parsing configuration 250 may be defined with respect to the string being parsed.

[0080] Once the type of parser configuration 250 is selected in block 504, the parser configuration setup process 500 proceeds to block 506. In block 506, sample data may be entered by a user and then displayed (e.g., via the parser setup GUI 900). In some examples, the sample data may be entered manually by a user (e.g., via the UI 204) or automatically imported (e.g., via the data import device(s) 108). Having sample data may make parsing rule setup easier, such as by providing a visual representation that a user can interact with to define the parsing rule(s) 910, although in some examples, block 506 may be omitted.

[0081] 9a illustrates an example of a parsing setup GUI 900 in which a user has selected (e.g., at block 504) a string parsing configuration 250 and is about to enter sample data. The parsing setup GUI 900 is illustrated as providing a selectable "add rule" input 902 that allows a user to add a new parsing rule 910. The parsing setup GUI 900 additionally includes a sample data input field 904a in which the user may enter sample data (e.g., via the UI 204) and / or in which sample data may be imported (e.g., via selection of a capture input 209 of the data import device(s) 108). The parsing setup GUI 900 also includes input fields 904b-904d that allow a user to select a parsing rule type, a parsing rule name, and / or a parsing rule description.

[0082] After the type of parsing configuration 250 is selected in block 504 and the sample data is (optionally) entered / imported in block 506, the parsing configuration setup process 500 proceeds to block 508. In block 508, one or more parsing rules 910 may be defined. In some examples, the one or more parsing rules may be defined based on user interaction with the parsing setup GUI 900 (e.g., via the UI 204). For example, the user interaction may be an interaction with one or more selectable inputs 902 and / or input fields 904 of the parsing setup GUI 900. As another example, the user interaction may be an interaction with sample data entered into the parsing setup GUI 900 and / or sample data displayed by the parsing setup GUI 900.

[0083] In some examples, each parsing rule 910 may specify rules according to which a piece of data (e.g., imported) may be parsed (and / or separated) into two or more smaller data portions. For example, a parsing rule 910 may indicate that the first four characters of an imported string should be separated (and / or parsed) into its own substring from the rest of the imported string. Another example of a parsing rule 910 may be that all characters of the imported string that appear after a "z" and / or before a semicolon (;) should be parsed into separate substrings. Another example of a parsing rule 910 may be that an image should be separated into x many equal portions, where x is a number specified in the imported image file's metadata (e.g., in the fifth and sixth characters of the metadata or after the "size:" string). Another example parsing rule 910 may indicate that a certain number of significant digits after the decimal point should be separated from the rest of the imported numeric data, or that characters that appear after numbers in an alphanumeric string should be separated from the rest of the string (e.g., because those characters specify units).

[0084] The parser setup GUI shown in Figures 9a and 9b includes parsing rule guidance 906 presented in a side ribbon. As shown, rule guidance 906 describes four different types of string parsing rules: fixed-length, separator, name-value pair, and custom. In some examples, fixed-length string parsing rules 910 may define substrings according to the number of characters in the substring and a start and / or end position. In some examples, separator parsing rules 910 may define substrings according to a start and / or end position, where the start and / or end position are specified by particular characters appearing at the beginning and / or end of the substring (and / or immediately before / after the start / end of the substring). In some examples, the name-value pair parsing rules 910 may define a substring according to a start position and / or an end position, where the start position and / or end position are identified by one or more specific words (or strings) that appear at the beginning and / or end of the substring (and / or immediately before / after the beginning / end of the substring), and the specific word(s) may be used to identify information in the substring (e.g., ID12345, where ID is the specific word and 12345 is the ID information). In some examples, the custom character parsing rules 910 may define a substring (e.g., a string that starts at the fifth character and ends immediately before "ID") according to some customized parameters, such as an amalgamation of one or more of the other rules.

[0085] In some examples, the smaller data portions separated / parsed according to parsing rules 910 may be non-overlapping, such that each smaller data portion does not contain data from any other smaller data portion, while in some examples, one or more smaller data portions may contain data that is shared by one or more other smaller data portions.

[0086] 5, following the definition of one or more parsing rules 910 in block 508, the parsing configuration setup process 500 annotates the provided sample data in block 510. In some examples, the annotation(s) 912 may indicate which portions of the sample data (provided in block 506) will be parsed according to the recently defined parsing rule 910. In some examples, the annotation 912 may additionally indicate (e.g., using a name, description, etc.) the particular parsing rule 910 that will parse the annotated portion.

[0087] 9b shows an example of the parsing setup GUI 900 after input / import of sample data 908 (in blocks 506-510), definition of parsing rules 910, and annotating the sample data 908 according to the parsing rules 910. Two parsing rules 910 and two annotations 912 are shown. Both parsing rules 910 are fixed-length string parsing rules 910. A first parsing rule 910a defines a first (part number) substring as starting at the first character of the sample data 908 and having a length of eight characters. A second parsing rule 910b defines a second (manufacturing date) substring as starting at the ninth character of the sample data 908 and having a length of six characters.

[0088] In the example of Figure 9b, annotation 912a indicates, via underlining and word bubble, that the first eight characters of sample data 908 are parsed according to a first parsing rule 910. Annotation 912b identifies the next six characters of sample data 908 as being parsed according to a second parsing rule 910b. For simplicity, the example of Figure 9b shows a string parsing configuration 250 with two string-specific parsing rules 910 and corresponding annotations 912, although in some examples there may be (and / or the parsing setup GUI 900 may show) different types of parsing configurations 250 with different and / or more parsing rules 910 and / or annotations 912.

[0089] 5, once the parsing rule(s) 910 are defined in block 510, the parsing configuration setup process 500 proceeds to block 512, where the parsing rule(s) 910 are saved to memory circuitry 226. Block 514 then determines whether there are more parsing rules 910 to be defined, such as by prompting the user and / or evaluating subsequent input. The parsing configuration setup process 500 loops through blocks 508-514 until all parsing rules 910 have been defined and saved, and then saves the entire parsing configuration 250 in block 516. Although the parsing configuration setup process 500 is illustrated as terminating after block 516, in some examples it may return to block 502 after block 516 rather than terminating.

[0090] 6 is a flowchart illustrating an example operation of a workflow setup process 600 (i.e., the second block in the test process 400 shown in FIG. 4). In some examples, the workflow setup process 600 provides a workflow setup GUI 1000 that allows a user to create and / or modify one or more workflows 300. More specifically, the workflow setup GUI 1000 may allow a user to configure one or more workflow states and one or more mappings / associations between the workflow state's test parameters 1004 and the parsing rules 910 of the parsing configuration 250.

[0091] 6, the workflow setup process 600 begins at block 602, where it loops until input is received (e.g., via the UI 204) indicating that a user wants to add or modify a workflow 300. Once input is received, the workflow setup process 600 proceeds to block 604, where it selects a workflow 300 to create or modify (e.g., based on input received from the UI 204). The workflow setup process 600 then proceeds to block 606, where it selects a state (e.g., one of the workflow states shown in FIG. 3) of the selected workflow 300 to add or modify (e.g., based on input from the UI 204).

[0092] In the example of FIG. 6 , after block 606, the workflow setup process 600 identifies one or more test parameters 1004 (and / or input fields) associated with the selected workflow state in block 608. In some examples, the workflow setup process 600 additionally configures one or more characteristics of the test parameters 1004 (and / or input fields). For example, the workflow setup process 600 may configure the data type (and / or data size) of the parameter (e.g., Boolean, numeric, string, image, date, phone number, zip code, etc.). In some examples, the identification(s) and / or configuration(s) may be based on input received from a user (e.g., via the UI 204). In some examples, the identification(s) and / or configuration(s) may be based on one or more previously configured workflow states and / or parameters 1004.

[0093] After block 608, the workflow setup process 600 proceeds to block 610, where one or more mappings may be defined. In some examples, the mappings may associate (and / or map) test parameters 1004 (and / or associated input fields) with parsing rules 910 of the parsing configuration 250. Thus, when imported data is received from the data import device(s) 108 for the parameters 1004 (and / or input fields), the system 100 can reference the mappings to determine which parsing configuration 250 (and / or parsing rules 910) to use to parse the imported data. The parsing rules 910 may additionally specify which particular portions of the imported data should be applied to the parameters 1004 (and / or input fields). To the extent that other portions of the imported data are mapped to other parameters 1004 (and / or input fields), the system 100 may additionally parse those other portions (according to other mapped parsing rule(s) 910) and populate those parameters 1004 (and / or input fields) as well. In some examples, the workflow setup process 600 may only allow mapping between parsing rules 910 and parameters 1004 (and / or input fields) that are configured for the same type of data (e.g., numeric data, strings, dates, images, etc.). In some examples, the mapping(s) may be defined based on user input (e.g., received via the UI 204).

[0094] After the mappings for the identified parameters 1004 of the selected workflow state are defined in block 610, the workflow setup process 600 proceeds to block 612, where the workflow state (and / or associated parameters 1004 and / or mappings) are saved to the memory circuitry 226. As shown, the workflow setup process 600 then repeats blocks 606-612 until the user indicates (e.g., via the UI 204) that they are finished creating or modifying the state for the selected materials testing workflow 300. Once the state is created / modified for the selected materials testing workflow 300, all information for the materials testing workflow 300 is saved to the memory circuitry 226 in block 616. Although the workflow setup process 600 is shown as terminating after block 616 in the example of FIG. 6, in some examples, the workflow setup process 600 may return to block 602 without terminating.

[0095] Figure 10 shows an example of a workflow setup GUI 1000 that allows a user to create mappings that associate parsing rules 910 with parameters 1004 (and / or input fields 1006) of a workflow state. In the example of Figure 10, the workflow setup GUI 1000 is shown as having a state identifier 1002 that identifies the state of the materials testing workflow 300 that is being configured by the workflow setup GUI 1000. The workflow setup GUI 1000 also shows four test parameters 1004 (corresponding to the four input fields 1006) associated with the workflow state identified by the state identifier 1002.

[0096] In the example of FIG. 10 , the workflow setup GUI 100 includes a mapping window 1008 that identifies mappings (and / or associations) between workflow state parameters 1004 (and / or input fields 1006) and parsing rules 910 of a selected parsing configuration 250. As shown, the mapping window 1008 indicates that two parameters 1004 (and / or input fields 1006) are mapped to two parsing rules 910 of two parsing configurations 250. While each of the two parameters 1004 (and / or input fields 1006) is mapped to the same parsing configuration 250 in the example of FIG. 10 , in some examples, different parameters 1004 (and / or input fields 1006) may be mapped to different parsing configurations 250. The mapping window 1008 further indicates that the other two parameters 1004 (and / or input fields 1006) are unmapped. In some examples, the remaining parameters 1004 (and / or input fields 1006) may be mapped using other parsing configurations 250 or may be entered by manual entry.

[0097] 7 is a flowchart illustrating an example operation of a workflow execution process 700 (i.e., the third block in the testing process 400 shown in diagram 400). While the workflow execution process 700 may be described below as performing certain specific operations for purposes of understanding, it should be understood that one or more of the above-mentioned components of the materials testing system 100 (e.g., processing circuitry 224, UI 204, etc.) may undertake those operations on behalf of (and / or at the direction of) the workflow execution process 700.

[0098] In some examples, one or more workflows 300 (e.g., created and / or modified during workflow setup process 600) are executed during workflow execution process 700. In some examples, one or more of parsing configurations 250 (e.g., created and / or modified during parsing configuration setup process 500) may be used during workflow execution process 700. Additionally, data portions parsed / separated from the imported data according to one or more parsing rules 910 (of parsing configuration(s) 250) may be used to populate parameters 1004 (and / or input fields 1006) of workflows 300. Workflow execution process 700 may execute and / or evaluate test methods using the input parameters 1004 according to specifications set forth in the workflows 300.

[0099] 7, the workflow execution process 700 begins at block 702, where the materials testing workflow 300 is selected and / or loaded (e.g., based on input on the UI 204). The workflow execution process 700 then identifies the next state of the materials testing workflow 300 at block 704. In some examples (e.g., when first started), the next state may be the initial state. Following block 706, the workflow execution process 700 outputs a workflow GUI 1100 (and / or other output) associated with the identified state of the materials testing workflow 300 (see, e.g., FIG. 11 ).

[0100] When the workflow GUI 1100 is output in block 706 (e.g., via the UI 204), the workflow GUI 1100 may be focused on a particular input field 1106 (e.g., the first input field 1106a) by default. In some examples, the workflow GUI 1100 may focus on a different input field 1106 in response to user interaction (e.g., via the UI 204). In some examples, when a particular input field 1106 is focused, input data received (e.g., via the UI 204 and / or the data import device(s) 108) is used to populate that particular input field 1106 (and / or set the value of the parameter 1004 associated with that input field 1106).

[0101] 7 , after block 706, the workflow execution process 700 proceeds to block 708, where the workflow execution process 700 identifies the parsing configuration 250 and / or parsing rules 910 associated with the focused input field 1106. When imported data is received from the data import device(s) 108 in block 710, the workflow execution process 700 checks to ensure that the received imported data conforms to one or more expected formatting criteria associated with the input field 1106, the parsing configuration 250, and / or the parsing rules 910. The expected formatting criteria may refer, for example, to the expected type of imported data (e.g., image, number, string, etc.), the expected size of the imported data (e.g., number of bits / bytes, number of characters, number of pixels, etc.), the source of the imported data (e.g., tag reader 134, camera 132, etc.), and / or other criteria. In some examples, the criteria may be set and / or saved during the parsing configuration setup process 500 and / or the workflow setup process 600.

[0102] In the example of FIG. 7 , if the imported data does not conform to the expected formatting criteria at block 712, the workflow execution process 700 may attempt to identify the expected formatting criteria of one or more input fields 1106 and / or mapped parsing configurations 250 with which the input data conforms at block 714. Then, at block 716, the workflow execution process 700 outputs one or more error notifications (e.g., via the UI 204). In some examples, the error notification may be a visual or audio message, alert, or alarm indicating that the imported data does not conform to the expected formatting criteria. In some examples, the notification(s) may identify the criteria that have been met and / or the criteria that have not been met. In some examples, the notification(s) may indicate whether the input data conforms (or is close to conforming) to the other input fields 1106 and / or mapped parsing configurations 250. If the input data fits (or comes close to fitting) other input fields 1106 and / or mapped parsing configurations 250, the workflow execution process 700 may provide (e.g., by moving field focus) the option to use the input data in those input field(s) 1106 and / or parsing configuration(s) 250. After the notification(s) of block 716, the workflow execution process 700 returns to block 706.

[0103] On the other hand, if the imported data conforms to the expected formatting criteria at block 712, the workflow execution process 700 proceeds to block 718, where it separates the imported data into smaller data portions according to the parsing rules 910 of the parsing configuration 250 identified at block 708. After the imported data has been separated / parsed into smaller data portions, these smaller data portions are used to populate the input field(s) 1106 (and / or set the parameter(s) 1004) of the workflow 300 at block 720 according to the mapped parsing rules 910. To the extent that one or more parsing rules 910 of the parsing configuration 250 are mapped to input fields 1106 and / or parameters 1004 associated with other states of the workflow 300, those data portions may be stored until the workflow execution process 700 executes (and / or identifies) the appropriate workflow state (e.g., at block 704).

[0104] If the workflow execution process 700 determines (at block 722) that there is another unfilled input field 1106 (and / or unset parameter 1004) associated with the workflow GUI 1100 (and / or workflow state), the workflow execution process 700 moves focus to the next unfilled input field 1106 (and / or parameter 1004) at block 724 and then returns to block 706. If there are no more unfilled input fields 1106 (and / or parameters 1004), the workflow execution process 700 determines (at block 726) whether there is another state (not currently being executed) in the materials testing workflow 300. If there is another state (not currently being executed) in the materials testing workflow 300 and the next state is not a run or analysis calculation state, the workflow execution process 700 returns to block 704, where the next state is identified. If there is another state of the materials testing workflow 300 (not currently being executed) and the next state is a run or analyze-calculate state (as determined in block 728), the workflow execution process 700 proceeds to block 730, where the run or analyze-calculate state is executed using the workflow's parameters 1004. The workflow execution process 700 then proceeds to block 704. Although the workflow execution process 700 is illustrated as terminating when there are no more unexecuted states of the workflow 300, in some examples the workflow execution process 700 may return to block 702 without terminating.

[0105] FIG. 11 illustrates an example workflow GUI 1100 after data has been imported and entered into that input field 1106 (e.g., at block 720) and focus has been moved (e.g., at block 724) to the next unfilled input field 1106. As shown, an eight-digit numeric string has been entered into the part number input field 1106a. This is the same length numeric string as shown in the example workflow setup GUI 1000 of FIG. 10. However, the actual numeric data is different, reflecting the fact that the numeric data in the workflow setup GUI 1000 of FIG. 10 was simply sample data. Similarly, the date in the production date input field 1106, unlike the sample data in FIG. 10, has been interpreted and / or converted by the system 100 from a strictly numeric format to a date (e.g., alphanumeric) format. As shown, the factory ID input field 1106c has a focus highlight 1110 indicating that focus has progressed from the part number and production date input fields 1106 after entry.

[0106] 8 is a flowchart illustrating an example operation of tag printing process 800 (i.e., the final block in testing process 400 shown in FIG. 4). In some examples, tag printing process 800 uses inverse parsing rules 910 of parsing configuration 250 (e.g., created and / or modified during parsing configuration setup process 500) to combine several smaller data portions into one larger data portion and print a tag 136 that encodes the one larger data portion. While tag printing process 800 may be described below as performing several specific operations for purposes of understanding, it should be understood that one or more of the above-mentioned components of materials testing system 100 (e.g., processing circuitry 224, UI 204, tag printer 150, etc.) may undertake those operations on behalf of (and / or under the direction of) tag printing process 800.

[0107] In the example of FIG. 8 , the tag printing process 800 begins at block 802. At block 802, a parsing configuration 250 and one or more parsing rules 910 for the parsing configuration 250 are selected. In some examples, this selection may be based on user input (e.g., received via the UI 204). For example, the user input may directly identify the parsing configuration 250 and / or the parsing rules 910. As another example, the user input may indirectly identify the parsing configuration 250 and / or the parsing rules 910, such as by identifying an input field 1106 mapped to the parsing rule 910 and / or by identifying a workflow state associated with the input field 1106. In some examples, the tag printing process 800 may be limited to parsing configurations 250 and / or parsing rules 910 that handle numeric strings or (e.g., alphanumeric) strings.

[0108] After block 802, the tag printing process 800 proceeds to block 804, where a type of tag 136 to print is selected. In some examples, this selection may be based on user input (e.g., received via the UI 204). For example, the user input may directly specify the type of tag 136 (e.g., 1D barcode tag 136a, 2D barcode tag 136b, NFC tag 136d, RFID tag 136e, etc.) via the tag printing GUI 1204 (see, e.g., FIG. 12 ). In some examples, the tag printing process 800 may automatically select the type of tag 136 to print based on, for example, the type of input and / or the type of import device 108 with which the selected parsing configuration 250 is designed to operate.

[0109] Once the parsing rule 910 and tag 136 type are selected in blocks 802 and 804, the tag printing process 800 outputs (e.g., via the tag printing GUI 1200) an input field 1206 that is mapped to the parsing rule 910 and that the user can enter (e.g., via the UI 204). In some examples, the tag printing GUI 1200 may identify that the input field 1206 corresponds to the selected parsing rule 910 and / or identify how the data entered into the input field 1206 should be combined together according to the parsing rule 910. After data is actually entered into the input field 1206 (at block 810), the tag printing process 800 may verify (at block 812) that any input data conforms to expected formatting criteria (e.g., size, length, data type, etc.) associated with the input field 1206, the parsing configuration 250, and / or the parsing rule 910. If there are any format mismatches, the tag printing process 800 may attempt in block 814 (similar to block 714) to identify the expected formatting criteria of one or more input fields 1206 and / or mapped parsing configurations 250 to which the input data conforms. The tag printing process 800 then outputs error notification(s) in block 816 (similar to that described above with respect to block 716) and then returns to block 802.

[0110] If all formats are correct, the tag printing process 800 combines the data together using the reverse of the parsing rules 910 in block 818. For example, if the parsing rules 910 define how to break a four-character piece of data into a three-character portion and a one-character portion, the tag printing process 800 may similarly combine the three-character input and the one-character input together into a single combined piece of data. Finally, the combined data is encoded and printed as a barcode by the barcode printer 150 in block 820.

[0111] 12 is an example of a tag printing GUI 1200 that may be output by the tag printing process 800. As shown, the tag printing GUI 204 specifies the parsing configuration 250 and parsing rules 910 that will be used to print the tags 136. The tag printing GUI 204 additionally specifies the tag type 1202 to be printed and shows previews 1204 of some of the tags 136 that will be printed.

[0112] The disclosed materials testing system 100 allows for the customization of different parsing configurations 250 that parse and / or separate imported data into several smaller data portions according to the parsing rules 910 of the parsing configuration 250. The system 100 further allows for different parsing configurations 250 to be used for different workflows 300 (and / or different portions of the same workflow 300). In this manner, a single imported data item can be used to set the values ​​of several different workflow parameters 1004 and / or populate several different workflow input fields 1106. Additionally, the parsing rules 910 can be reversed to combine several smaller data portions into one larger data item, and a tag 136 encoding the combined larger data item can be printed.

[0113] The methods and / or systems can be implemented in hardware, software, and / or a combination of hardware and software. The methods and / or systems can be implemented centrally in at least one computing system, or in a distributed manner where different elements are distributed across several interconnected computing or cloud systems. Any kind of computing system or other device adapted to perform the methods described herein is suitable. A typical combination of hardware and software can be a general-purpose computing system with programs or other code that, when loaded and executed, controls the computing system to perform the methods described herein. Another typical embodiment can include an application-specific integrated circuit or chip. Some embodiments can include a non-transitory machine-readable (e.g., computer-readable) medium (e.g., a flash drive, optical disk, magnetic storage disk, etc.) that stores one or more lines of machine-executable code, thereby causing the machine to perform a process as described herein.

[0114] While the present method and / or system has been described with reference to certain specific embodiments, those skilled in the art will recognize that various modifications can be made and equivalents can be substituted without departing from the scope of the present method and / or system. In addition, many modifications can be made to adapt a particular situation or material to the teachings of the disclosure without departing from the scope of the disclosure. Therefore, the present method and / or system is not limited to the particular embodiments disclosed, but it is intended that the present method and / or system include all embodiments falling within the scope of the appended claims.

[0115] As used herein, "and / or" means any one or more of the items in the list connected by "and / or." As an example, "x and / or y" means any element of the three-element set {(x), (y), (x,y)}. In other words, "x and / or y" means "one or both of x and y." As another example, "x, y and / or z" means any element of the seven-element set {(x), (y), (z), (x,y), (x,z), (y,z), (x,y,z)}. In other words, "x, y and / or z" means "one or more of x, y and z."

[0116] As used herein, the term "for example" introduces a list of one or more non-limiting examples, instances, or illustrations.

[0117] As used herein, the terms "coupled," "coupled to," and "coupled with" mean a structural and / or electrical connection, whether attached, adhered, connected, joined, fastened, coupled, and / or otherwise secured. As used herein, the term "attach" means attached, adhered, connected, joined, fastened, coupled, and / or otherwise secured. As used herein, the term "connect" means attached, adhered, connected, joined, fastened, coupled, and / or otherwise secured.

[0118] As used herein, the terms “circuitry” and “circuitry” refer to physical electronic components (i.e., hardware) and any software and / or firmware (“code”) that can comprise, be executed by, and / or be otherwise associated with the hardware. As used herein, for example, a particular processor and memory can comprise a first “circuit” when executing a first one or more lines of code, and can comprise a second “circuit” when executing a second one or more lines of code. As used herein, whenever circuitry includes the hardware and code (if either is necessary) necessary to perform a function, the circuitry is “operable” and / or “configured” to perform that function, regardless of whether performance of that function is disabled or enabled (e.g., by a user-configurable setting, factory trim, etc.).

[0119] As used herein, control circuitry can include digital and / or analog circuitry, discrete and / or integrated circuitry, microprocessors, DSPs, etc., software, hardware, and / or firmware located on one or more boards that form part or all of a controller and / or are used to control the welding process and / or equipment such as a power supply or wire feeder.

[0120] As used herein, the terms “processor” and / or “processor circuitry” refer to processing devices, apparatus, programs, circuits, components, systems, and subsystems, whether implemented in hardware, tangibly embodied software, or both, and whether programmable or not. As used herein, the terms “processor” and / or “processor circuitry” include, but are not limited to, one or more computing devices, hardwired circuits, devices and systems that modify signals, devices and machines for controlling systems, central processing units, programmable devices and systems, field programmable gate arrays, application specific integrated circuits, systems-on-chips, systems comprising discrete elements and / or circuits, state machines, virtual machines, data processors, processing facilities, and any combination of the above. The processor and / or processor circuitry may be, for example, any type of general-purpose microprocessor or general-purpose microcontroller, a digital signal processing (DSP) processor, an application specific integrated circuit (ASIC), a graphics processing unit (GPU), a reduced instruction set computer (RISC) processor with an advanced RISC machine (ARM) core, etc. The processor may be coupled to and / or integrated into the memory device.

[0121] As used herein, the terms "memory" and / or "memory circuitry" refer to computer hardware or circuitry that stores information for use by a processor and / or other digital device. The memory and / or memory circuitry can be any suitable type of computer memory or any other type of electronic storage medium, such as read-only memory (ROM), random access memory (RAM), cache memory, compact disc read-only memory (CDROM), electro-optical memory, magneto-optical memory, programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), computer-readable medium, etc. Memory may include, for example, non-transitory memory, non-transitory processor-readable medium, non-transitory computer-readable medium, non-volatile memory, dynamic RAM (DRAM), volatile memory, ferroelectric RAM (FRAM®), first-in-first-out (FIFO) memory, last-in-first-out (LIFO) memory, stacked memory, non-volatile RAM (NVRAM), static RAM (SRAM), cache, buffer, semiconductor memory, magnetic memory, optical memory, flash memory, flash card, CompactFlash® card, memory card, secure digital memory card, micro card, mini card, expansion card, smart card, memory stick, multimedia card, picture card, flash storage, subscriber identity module (SIM) card, hard drive (HDD), solid state drive (SSD), etc. Memory may be configured to store code, instructions, applications, software, firmware, and / or data and may be external, internal, or both to the processor.

Claims

1. a materials testing machine comprising a test sensor, a test actuator, and a test controller configured to control the test actuator to perform a testing method; A non-transitory computer-readable medium containing machine-readable instructions that, when executed by a processor, executing a materials testing workflow configured to guide a user in setting up, executing, or analyzing the test method on the materials testing machine; responsive to execution of the materials testing workflow, displaying on a display screen a first graphical user interface (GUI) associated with a first workflow state of the materials testing workflow, the first GUI including a first plurality of input fields; identifying one or more first input fields of the first plurality of input fields associated with at least one input field mapping; the at least one input field mapping specifies a parsing configuration from a plurality of stored parsing configurations to be used together with the one or more first input fields, the parsing configuration including one or more parsing rules capable of separating an imported piece of data into two or more data portions, and the at least one input field mapping further specifies which of the two or more data portions parsed according to the one or more parsing rules should be used to input the one or more first input fields; In response to receiving one piece of imported data from the data import device, separating the piece of data into the two or more data portions according to the one or more parsing rules of the parsing configuration; populating the one or more first input fields based on the at least one input field mapping; a non-transitory computer-readable medium that causes the processor to perform the A materials testing system comprising:

2. 2. The system of claim 1, wherein the non-transitory computer-readable medium further comprises machine-readable instructions that, when executed by the processor, cause the processor to perform the test method on the materials testing machine or analyze results of the test method performed on the materials testing machine using data entered into the one or more first input fields during execution of the materials testing workflow.

3. The non-transitory computer-readable medium, when executed by the processor, Upon starting the parsing configuration setup process, providing a second GUI via the display screen that allows a user to customize the parsing configuration; receiving a first signal from one or more input devices of a user interface, the first signal representing a first user interaction with the second GUI, the first user interaction defining at least one parsing rule of the one or more parsing rules; creating or modifying machine-readable data representing the parsing configuration and the one or more parsing rules in the non-transitory computer-readable medium based on the first user interaction; The system of claim 1 , further comprising machine-readable instructions that cause the processor to:

4. The non-transitory computer-readable medium, when executed by the processor, receiving imported sample data from the data import device during the parser configuration setup process; displaying on the display screen a representation of the sample data in the second GUI, wherein the first user interaction with the second GUI includes interaction with the representation of the sample data displayed in the second GUI; displaying, in response to the first user interaction, an annotation of the representation of the sample data in the second GUI on the display screen, the annotation describing the at least one parsing rule; The system of claim 3 , further comprising machine-readable instructions that cause the processor to:

5. The non-transitory computer-readable medium, when executed by the processor, As you begin the materials testing workflow setup process, providing a third GUI via said display screen that allows a user to set up said materials testing workflow; receiving a second signal from the one or more input devices, the second signal representing a second user interaction with the third GUI, the second user interaction defining the at least one input field mapping associated with the one or more first input fields of the materials testing workflow; creating or modifying the materials testing workflow and the at least one input field mapping in the non-transitory computer readable medium based on the second user interaction; The system of claim 4 , further comprising machine-readable instructions that cause the processor to:

6. The non-transitory computer-readable medium, when executed by the processor, receiving two or more user-generated data portions via one or more input devices of a user interface; combining the two or more user-created data portions into one user-created data portion using an inverse of the one or more parsing rules of the parsing configuration; printing, via a tag printer, a tag encoding the one user-created data portion; The system of claim 1 , further comprising machine-readable instructions that cause the processor to:

7. The parsing configuration includes a first parsing configuration, the first parsing configuration being associated with one or more first expected formatting criteria, and the non-transitory computer-readable medium, when executed by the processor, responsive to receiving the piece of imported data from the data import device, verifying that the piece of imported data conforms to the one or more first expected formatting criteria of the first parsing configuration; responsive to successful verification that the piece of data conforms to the one or more first expected formatting criteria of the first parsing configuration, separating the piece of data into the two or more data portions and inputting them into the one or more first input fields; In response to unsuccessfully verifying that the piece of data conforms to the one or more expected formatting criteria of the first parsing configuration, outputting a notification via the user interface or identifying a second parsing configuration including second expected formatting criteria to which the piece of data conforms; The system of claim 1 , further comprising machine-readable instructions that cause the processor to:

8. a data import device; A materials testing machine, a test sensor; a test actuator; and a test controller configured to control the test actuator to perform a test method; a material testing machine comprising: The user interface and a computing device configured to communicate with the user interface, the materials testing machine, and the data import device, executing a materials testing workflow configured to guide a user in setting up, executing, or analyzing the test method on the materials testing machine; displaying, in response to execution of the materials testing workflow, a first graphical user interface (GUI) associated with a first workflow state of the materials testing workflow on a display screen of the user interface, the first GUI including a first plurality of input fields; identifying one or more first input fields of the first plurality of input fields associated with at least one input field mapping; the at least one input field mapping specifies a parsing configuration from a plurality of stored parsing configurations to be used together with the one or more first input fields, the parsing configuration including one or more parsing rules capable of separating an imported piece of data into two or more data portions, and the at least one input field mapping further specifies which of the two or more data portions parsed according to the one or more parsing rules should be used to input the one or more first input fields; In response to receiving one piece of imported data from the data import device, separating the piece of data into the two or more data portions according to the one or more parsing rules of the parsing configuration; populating the one or more first input fields based on the at least one input field mapping; a computing device comprising processing circuitry configured to perform A materials testing system comprising:

9. 9. The system of claim 8, wherein the data import device comprises a barcode reader, a radio frequency identification (RFID) reader, a near field communication (NFC) reader, a short-range ultra-high frequency radio frequency reader, a camera, or a measurement device configured to measure dimensions of a subject.

10. The processing circuit unit Upon starting the parsing configuration setup process, providing a second GUI via the display screen that allows a user to customize the parsing configuration; receiving imported sample data from the data import device; displaying a representation of the sample data in the second GUI on the display screen; receiving a first signal from one or more input devices of the user interface, the first signal representing a first user interaction with the display of the sample data displayed on the second GUI, the first user interaction defining at least one parsing rule of the one or more parsing rules; displaying, in response to the first user interaction, an annotation of the representation of the sample data in the second GUI on the display screen, the annotation describing the at least one parsing rule; The system of claim 8 , further configured to:

11. 11. The system of claim 10, wherein the at least one parsing rule includes a starting position and character length of a substring of the two or more data portions, a specific character that appears before or after the substring, a specific string that appears before or after the substring, or a number of portions that separate the imported data.

12. The processing circuit unit As you begin the materials testing workflow setup process, providing a third GUI via said display screen that allows a user to set up said materials testing workflow; receiving a second signal from the one or more input devices, the second signal representing a second user interaction with the third GUI, the second user interaction defining the at least one input field mapping associated with the one or more first input fields of the materials testing workflow; creating or modifying the materials testing workflow and the at least one input field mapping within the memory circuitry based on the second user interaction; The system of claim 10 , further configured to:

13. The processing circuit unit During the materials testing workflow setup process: and defining, in response to receiving one or more third signals from the one or more input devices, the first workflow state of the materials testing workflow and a second workflow state of the materials testing workflow, the second workflow state being associated with a fourth GUI and a second plurality of input fields. The system of claim 12 further configured to:

14. further comprising a tag printer in communication with the computing device; The processing circuit unit receiving two or more user-generated data portions via the one or more input devices; combining the two or more user-created data portions into one user-created data portion using an inverse of the one or more parsing rules of the parsing configuration; printing a tag via the tag printer that encodes the one user-created data portion; The system of claim 8 , further configured to:

15. executing, via processing circuitry of a computing device, a materials testing workflow configured to guide a user in setting up, executing, and analyzing a test method for a materials testing machine, the computing device being in communication with the materials testing machine, the materials testing machine including a test sensor, a test actuator, and a test controller configured to control the test actuator to implement the test method; displaying, in response to execution of the materials testing workflow, a first graphical user interface (GUI) associated with a first workflow state of the materials testing workflow on a display screen of the user interface, the first GUI including a first plurality of input fields, the user interface in communication with the computing device; identifying, via the processing circuitry, one or more first input fields of the first plurality of input fields associated with at least one input field mapping; the at least one input field mapping specifies a parsing configuration from a plurality of stored parsing configurations to be used together with the one or more first input fields, the parsing configuration including one or more parsing rules capable of separating an imported piece of data into two or more data portions, and the at least one input field mapping further specifies which of the two or more data portions parsed according to the one or more parsing rules should be used to input the one or more first input fields; In response to receiving, at the computing device, a piece of imported data from a data importing device in communication with the computing device, separating the piece of data into the two or more data portions according to the one or more parsing rules of the parsing configuration; populating the one or more first input fields based on the at least one input field mapping; A method comprising:

16. 16. The method of claim 15, wherein the data importing device comprises a barcode reader, a radio frequency identification (RFID) reader, a near field communication (NFC) reader, a short-range ultra-high frequency radio frequency reader, a camera, or a measuring device configured to measure dimensions of a subject.

17. 16. The method of claim 15, further comprising: executing the test method on the materials testing machine or analyzing results of the test method executed on the materials testing machine using data entered into the one or more first input fields during execution of the materials testing workflow.

18. Upon starting the parsing configuration setup process, providing a second GUI via the display screen that allows a user to customize the parsing configuration; receiving at the computing device imported sample data from the data import device; displaying a representation of the sample data in the second GUI on the display screen; receiving at the computing device a first signal from one or more input devices of the user interface, the first signal representing a first user interaction with the display of the sample data displayed on the second GUI, the first user interaction defining at least one parsing rule of the one or more parsing rules; displaying, in response to the first user interaction, an annotation of the representation of the sample data in the second GUI on the display screen, the annotation describing the at least one parsing rule; creating or modifying the parsing configuration and the one or more parsing rules within memory circuitry of the computing device based on the first user interaction; 16. The method of claim 15, further comprising:

19. receiving two or more smaller portions of user-generated data at the computing device via the one or more input devices; combining, via the processing circuitry, the two or more smaller user-created data portions into a single larger user-created data portion using an inverse of the one or more parsing rules of the parsing configuration; printing, via a tag printer in communication with the communication device, a tag encoding the one larger portion of user-generated data; 16. The method of claim 15, further comprising:

20. the parsing configuration includes a first parsing configuration, the first parsing configuration associated with one or more first expected formatting criteria; The method comprises: responsive to receiving at the computing device the piece of data imported from the data import device, verifying via the processing circuitry that the piece of data conforms to the one or more first expected formatting criteria of the first parsing configuration; responsive to successful verification that the piece of data conforms to the one or more first expected formatting criteria of the first parsing configuration, separating the piece of data into the two or more data portions and inputting them into the one or more first input fields; In response to unsuccessfully verifying that the piece of data conforms to the one or more expected formatting criteria of the first parsing configuration, outputting a notification via the user interface or identifying a second parsing configuration including second expected formatting criteria to which the piece of data conforms; 16. The method of claim 15, further comprising: