Automated modeling and implementation of industrial tool solutions

Through the computer-based platform, the problem of high configuration and implementation complexity in the prior art is solved, and more efficient tool solution generation and implementation is achieved.

CN120428606APending Publication Date: 2025-08-05KENNAMETAL INC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510118774.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-02-02
Filing Date
2025-01-24
Publication Date
2025-08-05

AI Technical Summary

Technical Problem

The prior art faces high challenges when configuring and implementing industrial tool solutions, and it is difficult to effectively and automatically collect, analyze and implement data related to tool solutions, resulting in excessive time and energy consumption.

Method used

A computer-based platform is provided, including a digital machining module and a solution finder module, for automatically or semi-automatically generating industrial tool solutions, identifying features by processing model data, determining machining operations, and assigning cutting tools.

Benefits of technology

The automated or semi-automated generation of industrial tool solutions is realized, which improves configuration efficiency and effectiveness, and reduces the consumption of time and energy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120428606A_ABST
    Figure CN120428606A_ABST
Patent Text Reader

Abstract

A computer-based system for automatically or semi-automatically generating an industrial tool solution is provided. The digital platform may be programmed to receive an uploaded model data file of a component to be manufactured. The digital machining module is programmed to: process the model data to identify different features of the component; processing the identified feature to identify a machining operation corresponding to the identified feature to generate a machinable feature; and generating an industrial tool solution including the identified machinable feature. The solution finder module may be programmed to: receive data associated with the machinable feature, and assign one or more cutting tools to the machinable feature. In addition, the system may generate and transmit an instruction set describing how the component is manufactured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] In various embodiments, the present invention generally relates to computer-based platforms, algorithms, tools, apparatus and methods for collecting, analyzing and processing technical data associated with industrial tool solutions, and for automatically or semi-automatically developing and implementing industrial tool solutions. Background Art

[0002] Industrial tools and machine tools are an important part of the products and services offered on the market by many different business entities, including companies that use such tools in the manufacturing sector, the construction industry, the energy industry, the aerospace industry, and the transportation industry, among others.

[0003] For example, there are a variety of metalworking tools for cutting or forming metal workpieces. One such cutting tool is a rotary cutting tool, which is typically used to form or cut metal workpiece materials. Such rotary cutting tools are typically used for machining geometries involving multiple planar surfaces, complex grooves, recesses, holes, or curved surfaces. An important part of selecting the right machine tool is understanding how the tool will collaborate and interact with different machine and workpiece features. Determining the configuration of the appropriate cutting tool assembly for a particular machining operation requires understanding the relationship between the tool, tool holder, machine, and / or multiple other intermediate components that may be incorporated into the tool assembly. In addition, industrial tool solutions must take into account the properties of the specific material to be machined and the specific geometry of the workpiece. Given the complexity of the available options for different possible industrial tool solutions, it can be extremely challenging for users to configure and implement the best solution for a particular machining operation. In addition, the time and effort required to properly develop and implement industrial tool solutions can be optimized to improve effectiveness and efficiency.

[0004] Therefore, there is a need for improved computer-implemented platforms, techniques, algorithms, and tools that can more effectively automate the process of collecting, analyzing, and implementing data associated with industrial tool solutions. Summary of the Invention

[0005] A computer-based system for generating an industrial tool solution including at least one industrial tool is provided. The system may include a digital platform comprising at least one computer processor programmed to execute at least the following modules: a module programmed to receive uploaded model data of a component to be manufactured; a digital machining module programmed to: define at least one material for the component, process at least a portion of the model data file to identify at least one feature of the component represented by the model, process the identified feature to determine at least one machining operation corresponding to the identified feature to identify at least one machinable feature, and generate an industrial tool solution including at least the identified machinable feature. The platform may further include a solution finder module programmed to: receive data associated with at least one machinable feature from the digital machining module, and assign at least one cutting tool to the machinable feature. BRIEF DESCRIPTION OF THE DRAWINGS

[0006] While various embodiments of the present invention are shown in the drawings, the particular embodiments shown should not be construed as limiting the claims, where like numerals are used for like elements throughout:

[0007] Figure 1 A computer architecture diagram is schematically depicted that includes an example of an industrial tool solution platform structured according to various embodiments of the present invention.

[0008] Figure 2 An example of a process for automatically or at least semi-automatically developing and / or implementing an industrial tool solution is shown.

[0009] Figure 3 and 4 Shown are examples of portions of a website that may be associated with the Industrial Tool Solutions Platform.

[0010] Figure 5 An example of a user interface for uploading a model of a part or assembly to be manufactured associated with an industrial tool solution is shown.

[0011] Figure 6 Shows an example of a visual representation of an uploaded model data file.

[0012] Figure 7 Included is a visual representation showing an example of creating an overview of a primitive feature, the primitive feature comprising a part or assembly, the overview including a combination of machinable features of the assembly, a determined sequence of machining operations, a machine type, a fixture, and / or aspects of an automatically generated industrial tooling solution.

[0013] Figure 8 One example of a combination of machinable features of a component, a determined sequence of machining operations, a machine type, a fixture, and / or aspects of an automatically generated industrial tool solution is shown.

[0014] Figure 9 Included are combined process flow and architecture diagrams showing examples of connections and connectivity of the platform.

[0015] Figure 10 Included is a process flow diagram illustrating one example of a user accessing a tool library to obtain metal cutting tool information associated with embedded CAM and / or CAD software.

[0016] Figure 11 Including provision Figure 2 A diagrammatic overview of the process flow described in .

[0017] Figure 12A and 12B Including shown in Figure 2 208 and 210 process flow diagram of an example of processing performed at steps 208 and 210 of the process flow described in FIG.

[0018] Figures 13A-13D Shown are aspects of an example setup of a drill for machining specific features to create a toolpath simulation.

[0019] Figure 14-18 Examples of strategies for manufacturing different features of a part or assembly are shown.

[0020] Figure 19 and 20 Examples are shown of how details can be matched to original features and processed for a variety of different CAD / CAM models.

[0021] Figure 21 An example of a component generated using PMI data is shown.

[0022] Figure 22 and 23 Included are examples of aspects of the process for setting up a CAM model from a tool path simulation and post-processing the simulation in a digital machining module.

[0023] Figure 24 shows an example of a CNC library that can be incorporated into Figure 2 Used by the processing performed in the process flow.

[0024] Figure 25 Shown in combination Figure 2 An instance of a fixture that defines the processes executed within a process flow.

[0025] Figures 26A-26CShown in Figure 2 An instance of processing performed within a process flow.

[0026] Figure 27 Shown in Figure 2 Examples of processing performed in a process flow include examples of NC programs / G-code that can be uploaded to a CNC machine to manufacture a part or assembly.

[0027] Figure 28 and 29 Shown for combining in Figure 2 The process performed in the process flow to create setups and tool paths.

[0028] Figure 30 and 31 Includes an instance of the generated simulation and associated toolpath.

[0029] Figure 32 Shown is an example of output returned when the industrial tool solution platform communicates with a web-based service to generate a list of operations and operation types.

[0030] Figure 33 An example of a template embodied as an XML file is shown.

[0031] Figure 34 Shown Figure 33 An instance of the instruction set to which a template can be mapped.

[0032] Figure 35 An example of the output resulting from sending the manipulated XML template to the client for further processing into a computer-executable format or data file including various client rules is shown.

[0033] Figure 36 An example of initiating a session with a model viewer client is shown.

[0034] Figure 37 and 38 Included are screen displays showing an example of accessing a collaboration space via the Industry Tool Solutions platform.

[0035] Figure 39 Included is an example of a GUI where a user can submit a request to the model viewer client software to return features associated with an industry tool solution.

[0036] Figure 40 An example of output generated by a web service is shown, including settings created for an industrial tool solution.

[0037] Figure 41A and 41BIncluded are process flow diagrams illustrating various examples of different aspects of the digital machining process.

[0038] Figure 42 Included are screen displays showing an example of a product details page, illustrating available options for creating solutions and configuring custom (non-standard) products.

[0039] Figure 43 Includes screen displays showing examples of performance information for various tools.

[0040] Figures 44 to 51 Includes examples of different aspects of building product assemblies into industrial tool solutions.

[0041] Figure 52 Examples are shown of how two-dimensional and three-dimensional models or drawings can be generated and downloaded to other software packages or computer systems.

[0042] Figure 53 An example is shown of how multiple industrial tool solutions generated by the platform can be stored and processed by the solution module.

[0043] Figures 54 to 57B Examples of screen displays and user interface tools that may be accessed through the platform in association with processing machine information in conjunction with machine modules of a virtual toolbox are shown.

[0044] Figure 58 and 59 Shown are examples of screen displays and user interface tools that may be accessed through the platform in association with processing project information.

[0045] Figure 60 Included are screen displays illustrating examples of user interface tools accessible through the platform in association with processing workpiece feature information.

[0046] Figures 61 to 63 Included are various screen displays that illustrate examples of confirming solution parameters and whether the solution will be implementable on a given machine.

[0047] Figure 64 and 65 Included are screen displays illustrating examples incorporating certain business transactions associated with technology solutions derived from the platform.

[0048] Figure 66 An example of a process is presented of how one or more filters applicable to a desired solution may be automatically generated and displayed to help identify another solution that is similar to the original product or solution.

[0049] Figures 67 to 68 Included are screen displays showing an example of a product search tool.

[0050] Figure 69 and 70 Included are screen displays showing examples of configuring or modifying parameters of a solution in the industrial tool solution platform.

[0051] Figures 71 to 80 Included are various screen displays illustrating examples of different aspects of the Solution Finder features accessible in conjunction with the Industrial Tool Solutions Platform.

[0052] Figures 81 to 8 2E shows various screen displays demonstrating examples of different aspects of the collaborative team features accessible in conjunction with the industrial tool solutions platform.

[0053] Figure 83 is a screen display that shows an example of features for adding widgets for items related to a particular user or client, project type, solution type, or other factors.

[0054] Figure 84 is a screen display showing examples of carts that can be generated by combining different aspects of developing and selecting industrial tooling solutions.

[0055] Figures 85 to 98 Additional examples of screen displays and computer-implemented tools configured for accessing and implementing the collaborative team features and functionality of the platform are shown.

[0056] Figures 99 to 102 Various user interface screens are included that illustrate different examples of various features and aspects of the "Similar" functionality.

[0057] Figures 103 to 131 Various user interface screens are included that illustrate different examples of various features and aspects of the Solution Finder functionality.

[0058] Figure 132 and 133 Included are user interface screens illustrating different examples of various features and aspects of notification functionality provided in accordance with certain embodiments of the platform described herein.

[0059] Figure 134 Schematically illustrates how digital assets, such as those managed by embodiments of the platform described herein, may be implemented in a variety of different applications.

[0060] Figure 135Included are schematic diagrams illustrating computer architectures and process flows for implementing examples of various tools, features, and functions for implementing the functions and features of the different technical embodiments of the platform described herein.

[0061] Figure 136 Included are schematic diagrams illustrating process flows and interconnections for implementing examples of various tools, features, and functions that implement the functions and features of different technical and operational embodiments of the various platforms described herein.

[0062] Figure 137 Included are schematic diagrams illustrating computer architectures and process flows for implementing examples of various tools, features, and functions for implementing the functions and features of different embodiments of the platform described herein. DETAILED DESCRIPTION

[0063] In developing the various embodiments of the present invention described herein, the present inventors have created basic components for a computer-based industrial tool solution platform for automating or semi-automating the overall process of collecting, analyzing, and using technical data to implement industrial tool solutions. As used herein, a "solution" may include an industrial tool, an adaptive article, an assembly of different components, a machine, or any reasonable combination thereof.

[0064] In various embodiments, reference Figure 1, the industrial tool solution platform 102 may include a solution module 104 to facilitate the generation of multiple potential configurations of different industrial tool solutions and graphical representations associated with the solutions. In some aspects, customers can access the machine module 106 to create and configure digital replicas of their own production and industrial environments within the platform (e.g., digital twins of machine dynamics and machine controls), including modeling how the machine will interact with different possible solutions to produce optimal performance results for the customer. In addition, projects can be created and managed by the project module 108 through the platform 102. The project module 108 allows collaboration involving multiple machines, different potential industrial tool solutions, and different interactions with various personnel involved in developing and implementing the solution's technical and business components. In other aspects, the workpiece feature module 110 helps specify different parameters and properties of the material to be processed associated with a given industrial tool solution. The digital machining module 132 can be programmed to automate or semi-automate the process used to develop and implement the solution, including, for example, creating parts or components from models stored in data files. The digital machining module 132 may include computer-aided design (CAD) and computer-aided machining (CAM) functionality and capabilities, redlining, and processing of different files and formats. Module 132 may utilize APIs and web services or microservices that execute logic and algorithms within the platform. Modules 104, 106, 108, 110, and 132, in combination, provide users with a virtual toolbox for generating and testing different industrial tool solutions that will meet their goals.

[0065] exist Figure 1 In the illustrated example, the platform 102 may include a computing environment comprising a computer processor or server 112 programmed to perform the tasks of the various modules 104, 106, 108, 110, and 132. Suitable electronic data storage media 114 of various types may also be provided for storing and retrieving data and other information processed by the platform 102. In certain aspects, various user access devices 116 (e.g., laptops, desktops, notebooks, smartphones, or other computing devices) may be used to access the platform 102. In one scenario, the platform 102 may be accessed through a website, for example, via a web browser 118. In other embodiments, devices 116, such as computer numerical control (CNC) controllers, cloud-based backend computing solutions, or intelligent or non-intelligent terminals with general purpose processing units (GPUs) or central processing units (CPUs), may access and communicate with the platform 102. In certain embodiments, the access device 116 may be configured with real-time or static connections to digital twins and physical data, such as a tool library or rule engine that supplies information about components to be machined and a physical digital twin.

[0066] Figure 2An example of a process for automatically or at least semi-automatically developing and / or implementing an industrial tool solution is shown. Figure 3 and 4 1. An example of portions of a website that may be associated with the platform 102 is shown. As shown, the website may provide access to various modules 104, 106, 108, 110, 132 of the platform, including a digital machining module 132.

[0067] At step 202, a user may upload a model 202A of a part or assembly to be manufactured associated with an industrial tool solution, possibly using a Figure 5 The uploaded model 202A may be formatted in various file formats, such as a PDF or computer-aided design (CAD) data file. At step 204, the model 202A may be displayed on a web viewer function associated with the platform 102. Figure 6 An example of a visual representation of an uploaded model 202A data file is shown.

[0068] The platform 102 may be programmed with the digital machining module 132, which is programmed to define the workpiece material at step 206 and then process the model file and identify features (e.g., holes, slots, or other aspects of the part or assembly) of the model 202A at step 208. The processing at step 208 may further involve querying the model 202A data file to obtain raw data that can be used to create an overview of the raw features that make up the part (see sub-step 208A). Figure 7 A visual representation is included that illustrates an example of creating an overview of a primitive feature, the primitive feature comprising a part or assembly, the overview comprising a combination of machinable features of the assembly, the determined sequence of machining operations, the machine type, the fixture, and / or aspects of the automatically generated industrial tool solution. The obtained primitive feature may then be processed to determine the corresponding machining operations (see sub-step 208B). Next, the determined machining operations may be associated with a solution finder function (see discussion below) and the machinable features of the part or assembly (see sub-step 208C). The parameters determined at step 208 may be returned to the digital machining module 132 (see sub-step 208D), for example, possibly for display to a user or customer.

[0069] At step 210, one or more of the machinable features may be processed using a solution finder function. Such processing may involve, for example, assigning a metal cutting tool (individual and / or assembly) to each identified machinable feature of the assembly. In addition, processing may include creating a unique label or identifier and applying it to the solution. In addition, processing may involve combining a sequence of machining operations and / or a cycle type with a solution. For example, a mapping of a CAD modeled part may be rendered in the original data set as a cone, cylinder, rectangle, box, line, circle, and plane (but not limited to these geometric shapes). The rendering corresponds to the machinable features and cutting tools, which may be semi-automatically and / or automatically processed and configured for machine manufacturing of the part or assembly. At step 212, the process may create a tool path simulation for one or more combinations of tools and features. In one instance, a tool path simulation software application may be used to process tool features and machining features to provide a visualization of the operations to be performed and / or how the part or assembly will be machined. Figure 8 One example of a combination of machinable features of a component, a determined sequence of machining operations, a machine type, a fixture, and / or aspects of an automatically generated industrial tool solution is shown.

[0070] At step 214, the platform 102 may create a visual simulation and tag it with a unique identifier, and the simulation may be suitable for viewing on a web viewer, such as generated by the digital machining module 132. This step 212 may also include generating a bill of materials (BOM) and setup diagram for the components (e.g., a machine). In post-processing at step 216, G-code and NC program instructions, including the BOM and setup diagram, may be generated in response to the specific CNC machine and / or fixture determined for the solution.

[0071] At step 218, different types of machines (e.g., CNC machines) may be defined for use by the digital machining module 132, including the types of operations the machines are capable of performing. At step 220, different fixture strategies and types may be defined for use by the digital machining module 132, including, for example, assigning fixtures to a machine and / or a given workpiece.

[0072] Optional aspects of the digital machining module 132 include allowing the user to manually select machining features and process a part or assembly by assigning a metal cutting tool, by directly accessing the solution finder, or by accessing other aspects of the virtual toolbox provided by the platform 102. For example, the automatic processing of features and the assignment of metal cutting tools can be performed by semi-automatic or automatic processing in conjunction with the solution finder. Another option involves providing the user or customer with the opportunity to request that an application engineer or other subject matter expert process a part or assembly using the digital machining platform 132.

[0073] Figure 9 Included are combined process flow and architecture diagrams that illustrate examples of the connection and connectivity of the platform 102 to various CAM software of different users and their ability to utilize the capabilities described herein in their own user interfaces (eg, GUIs). Figure 10 Included is a process flow diagram illustrating one example of a user accessing a tool library to obtain metal cutting tool information associated with embedded CAM and / or CAD software.

[0074] Figure 11 Including this article Figure 2 The diagram includes an example of output that may be generated by the processing performed at steps 214 and 216. Figure 12A and 12B A process flow diagram illustrating an example of the processing performed at steps 208 and 210 is included. Figure 12A depicts a manual process, whereas Figure 12B Depicts the automation process.

[0075] Figures 13A-13D Aspects of an example drill setup for creating toolpath simulations for machining specific features are shown. The simulations can be used in a post-processing phase to produce NC programs and / or G-code. Data can be automatically obtained and uploaded from the rules engine 120, including data for deriving machining strategies for each specific feature, as well as the overall part machining strategy.

[0076] Figure 14-18 Examples of strategies for manufacturing different features of a part or assembly are shown. As shown, features can be rotational and / or non-rotational, and detailed information about a particular machining operation can be displayed to the user (see Figure 18 ).

[0077] Figure 19 and 20 Examples are shown of how details can be matched to original features and processed for various different CAD / CAM models, with or without the generation of Product Manufacturing Information (PMI) data. Figure 21 An example of a component generated using PMI data is shown.

[0078] Figure 22 and 23 Included are examples of aspects of a process for setting up a CAM model from a tool path simulation and post-processing the simulation in the digital machining module 132. This may include defining setup, inventory, and post-processing configurations in conjunction with steps 206, 212, and 216.

[0079] Figure 24An example of processing that may be performed at step 218 is shown in conjunction with an example of a CNC library. Figure 25 An example of defining a fixture in conjunction with a CNC library and the process performed at step 220 is shown. Figures 26A-26C An example of the processing performed at step 216 is shown, including creating a setup diagram including detailed models and drawings of tools and tool assemblies ready for use by presetters, tool data, and inventory management. Digital twins can be created in different formats (e.g., DIN, ISO, GTC, etc.), as well as in CAD formats and using PMI data.

[0080] Figure 27 An example of the processing performed at step 212 is shown, including an example NC program / G-code that may be uploaded to, for example, a CNC machine to manufacture a part or assembly. Figure 28 and 29 A process for creating a setup and toolpath in conjunction with the processing performed at step 212 is shown. Figure 30 and 31 Includes an instance of the generated simulation and associated toolpath.

[0081] Figure 32 shows an example of the output returned when the platform 102 communicates with a network-based service to generate a list of operations and operation types (see Figure 32 (The highlighted portion is shown in the figure). This example includes key information associated with center drilling or deep hole drilling. Each of the different types of operations can be mapped to a template and instruction list. The returned output can be stored in a database or data file, as shown.

[0082] refer to Figure 33 A template can be embodied as an XML file, for example, describing the types of machining operations available, including default parameters for how each operation is initiated. Templates can be created using client-based software such as Fusion to create operations for drilling, countersinking, and many other operations. The created template can be exported as a template XML file, which can be uploaded to the platform 102 and made available for operation mapping.

[0083] Figure 34An example of an instruction set to which a template can be mapped is shown. The instructions can include a list of actions to be performed, some of which will be performed on a network server, for example, and some of which will be performed on a client (e.g., a Fusion client, a large model viewer client, or other client). The processing performed by the client software can be balanced with the processing performed on the network server, so that relatively more processing can be performed on the network server compared to the client software. The template can be edited before being transmitted to the client, and the actions can include one or more conditions that optionally contain expressions (e.g., mathematical expressions such as sine, cosine, tangent, multiplication, etc.). The expressions can be applied to variables associated with tool data, feature parameters, and / or other factors. For example, an expression can consider tool geometry, such as the ratio of total length to diameter. For example, if the ratio is greater than three, the system can modify the template in response to the calculation. With respect to machining strategies, an expression can be calculated in response to an extremely rigid fixture, using equations to determine the fixture's effect on the physical and material properties of the selected tool. In other aspects, conditions can be created in which expressions are created based on tool values, feature values can be generated, and values can be extracted from system-generated settings. For each condition, a specific field may be set in the XML data to a value which may be a fixed number, an expression, or another type of value.

[0084] Figure 35 An example of the output generated by sending the manipulated XML template to the client for further processing into a computer executable format or data file including various client rules is shown. For example, the data file includes conditions and values for creating an operation from the template, including parameters of the tool GUID and tool geometry received from the platform 102.

[0085] Figure 36 An example is shown of initiating a session with a model viewer client (eg, Fusion) and then initiating a session through a cloud-based connection to the platform 102 (eg, by accessing an add-in at kennametal.com).

[0086] Figure 37 and 38 Included are screen displays illustrating an example of accessing a collaborative space via the platform 102, including accessing items within the collaborative space. Figure 39An example of a GUI is included where a user can submit a request to, for example, Fusion software to return a hole list associated with an industrial tool solution (as shown). Next, the user can select a "Send to Fusion" button, which directs the platform 102 to collect information about the tool and information about the features to communicate with the web service. The web service can process the information associated with the features and the requested operation, then execute a mapping routine to generate and / or manipulate template data, and then send the template data to the client using a list of instructions.

[0087] Figure 40 An example of output generated by a web service is shown, reflecting that data is sent to the web service, the web service sends the data to the platform 102 for processing, and then the platform 102 returns the output to the Fusion client. As shown in the figure, a setup has been created for the solution, including a folder for the operations. In this solution, the Drill operation has been associated with the setup.

[0088] Figure 41A and 41B Included are process flow diagrams illustrating various examples of different aspects of a process that may be implemented according to various operational functions associated with computer-based platforms, algorithms, tools, devices, and methods for collecting, analyzing, and processing technical data associated with industrial tool solutions, and for automatically or semi-automatically developing and implementing industrial tool solutions, as described herein.

[0089] Figure 42 Included are screen displays showing an example of a product details page, illustrating available options for creating solutions and configuring custom (non-standard) products. Figure 43 Included are screen displays showing examples of tool performance information derived from field testing and machining. This provides comparative data on how the tool performed during machining operations and digital machining processes. This information can be used in tool design to determine how the tool to use compares to other industry tool solutions, machining operations, and strategies.

[0090] refer to Figures 44 to 51 , the solution module 104 in conjunction with the platform 102 presents examples of different aspects of building a product assembly into an industrial tool solution. Figure 42 Shows an example where the user has selected a specific machine tool, and selected an adaptive item (see Figure 45), collets or sleeves to create an assembly including the selected machine tool. It will be appreciated that the rule engine 120 may be provided as part of the platform 102 to execute one or more analysis algorithms that evaluate the suitability of different parameters of the solution configuration (e.g., geometry, size, part assembly, mating conditions, etc.). Examples of different aspects of the processing of the rule engine 120 are described in U.S. Patents Nos. 9,817,387 and 10,754,322, the entire contents of which are incorporated herein by reference. The rule engine 120 can be programmed to map raw feature data to specific machinable features according to a specific machining strategy. This mapping can be a single feature to many features and / or many operations, and can be performed in response to the most important goals of the customer and the specific operation or application: machining time, machining cost, tool life, or component quality of the part, among other factors.

[0091] Figure 46 shows an instance where a user navigates to a specific part, and Figure 47 An example of adding selected parts to an overall assembly is shown.

[0092] Among other aspects of developing industrial tooling solutions, Figure 48 Included are screen displays showing examples of setting feed rate and speed data for different aspects of the solution. Figure 49 Included are screen displays showing examples of adjusting presets for tools selected for a solution. Figure 50A and 50B Included are examples of screen displays showing a view of a tool assembly after an adapter has been added to a selected tool and an example of a transparent three-dimensional rendering of the assembly, as shown. An "add to cart" function may also be provided to order the now created industrial tool solution. In other respects, reference Figure 51 and 52 , aspects of different solutions can be shared between different entities, such as different members of the same product development team. Figure 52 Examples are shown of how two-dimensional and three-dimensional models or drawings can be generated and downloaded into other software packages or computer systems, such as for generating machine simulations, analysis tool packages, developing tool strategies, and other tasks.

[0093] In various embodiments, Figure 52 An example is shown of how multiple industrial tool solutions generated by the platform 102 can be stored and processed by the solution module 104. In this way, it can be seen how these solutions can be shared or communicated between different entities or people for various technical and business transaction purposes.

[0094] Figures 54 to 57 shows examples of screen displays and user interface tools that may be accessed through the platform 102 in association with processing machine information in conjunction with the machine module 106 of the virtual toolbox. Figure 54 A list of machines that have been added by the machine module 106 is shown. This capability allows users to configure and specify information about heavy machines, for example, for use by customers in conjunction with industrial tool solutions. Users can select from pre-configured machines provided by the platform 102, or they can customize machine information to meet specific specifications or machine parameters. Figure 55 Shows an example of creating a "Doosan Chris" machine, including customizing various specifications for the machine, including information about cost, operation, machine parameters, and the types of tools that can be used with the machine. Figure 56A and 56B , you can specify the type of spindle or turret the machine has and the associated parameters, as shown in the figure. Figure 57A and 57B , the machine module 106 can be programmed to associate certain information with each machine, including specification information (see Figure 57B ), specific solutions associated with the machine (e.g., components or assemblies), related documentation (e.g., information about the machine received from the customer), and other notes (e.g., manufacturer, model and serial number, etc.).

[0095] Figure 58 and 59 1 shows examples of screen displays and user interface tools that may be accessed through the platform 102 in association with processing project information through the project module 108 of the virtual toolbox. Figure 58 In the Projects module 108 section of the Virtual Toolbox, users can work on multiple machines, multiple solutions, and / or multiple projects. This can facilitate collaboration between customers and industrial tool solution providers, for example. Figure 59 Project information can be created and connected to different types of solutions. In some aspects, solution information can be added from a list of pre-existing solutions and / or from user-defined solutions. Project information can also include data related to component assembly and / or collision or interference detection.

[0096] Figure 60 Included is a screen display showing an example of a user interface tool that can be accessed through the platform in association with processing workpiece feature information through the workpiece feature module 110. Information about the workpiece to which the tool is to be applied can be input in conjunction with the workpiece feature module 110. Such workpiece feature information can include material type (e.g., steel or iron), geometric configuration, physical dimensions, and / or other characteristics of the workpiece.

[0097] In other embodiments of the present invention, Figures 61 to 63 Includes various screen displays that show examples of confirming solution parameters and whether the solution will be able to be implemented on a given machine. Figure 61 As shown, processing by the rules engine 120 of the platform 102 may conclude that there is a problem with the multi-tooth engagement associated with the solution. Specifically, the torque and power values associated with the solution may exceed machine limitations. Figure 62 Depicted are examples of tools that can be used to adjust the axial depth of cut parameter and which result in the elimination of power related problems (e.g. Figure 63 shown).

[0098] In certain embodiments of the present invention, Figure 64 and 65 Included are screen displays illustrating examples incorporating certain business transactions associated with technology solutions derived from the platform 102 . Figure 64 Includes a list of business aspects accessible to various users of the solution (invoice history, shipments, POS reports, sales, etc.). Figure 65 An example of a shopping cart functionality that may be used to purchase developed industrial tool solutions in certain embodiments is shown.

[0099] In other embodiments of the present invention, Figures 66 to 68 Includes screen displays showing examples of product search tools. In certain aspects, Figure 66 and 67 Provides instances that identify solutions that are similar to previously ordered solutions or solutions that may have become obsolete or are no longer manufactured. Figure 66 It demonstrates how the platform 102 can dynamically and automatically generate and display one or more filters applicable to a desired solution to aid in the process of identifying another solution that is similar to the original product or solution. Figure 67 Depicts how solutions similar to the original solution are identified and displayed. In this example, the user can modify the search results by adding or removing filter boxes to expand the search scope, narrow the search scope, or refine the search to produce search results that more closely correspond to the original solution. Figure 68 Provided are examples of graphical icons (eg, hexagonal icons) that may be associated with each solution list. Each of these graphical icons may be configured to represent an attribute or characteristic of a solution, such as the size, geometry, or other features of the solution.

[0100] Figure 69 and 70Included is a screen display showing an example of configuring or modifying parameters of a solution in the industrial tool solution platform 102. As shown, and possibly within the context of an identified "similar" solution, a user can configure the newly identified solution and make changes to the geometry, dimensions, and other parameters to customize the solution for the current application. For example, the solution can be changed from a four-flute design to another type of flute design parameters, or the length of the part can be changed.

[0101] Figures 71 to 80 Various screen displays are included that illustrate examples of different aspects of the solution finder feature that can be accessed in conjunction with the industrial tool solution platform 102. In various embodiments, the rules engine 120 can be accessed and executed to determine appropriate machining strategies, for example, for making a desired part or assembly. In this example, a user wishes to make a hole in a part, and the solution finder can be used to select a hole made in a specific material (e.g., stainless steel) made on a given machine (e.g., a Doosan machine). Parameters for the hole can then be specified, such as a hole with a diameter of one inch and a depth of two inches, as well as other details about the hole, such as other dimensions and tolerances. The rules engine 102 can then be executed to generate and display different strategies that can be selected by the user, and the engine 102 can provide results including solutions based on the selected strategies. In one aspect, for example, one or more of these generated solutions can be added to a specific project. In another aspect, for example, the workpiece features can be saved and stored in a virtual toolbox.

[0102] Figures 81 to 8 2E shows various screen displays illustrating examples of different aspects of the collaborative teams feature that may be accessed in conjunction with the industrial tool solutions platform 102. In various embodiments, collaborative teams may be used to invite customers, distributors, project engineers, application engineers, machine operators, builders, and many other team members to join a defined team to work together on a product solution. After a team has been created and established, solutions, machines, workpiece features, and other aspects of the collaborative work may be associated with the team. For example, an engineer may add notes to communicate part or component selections to other team members, such as purchasing personnel. In many ways, the collaborative teams feature creates a digital twin of the customer and technical interactions between manufacturers, distributors, and customers or users of industrial tool solutions. The interface facilitates the gathering of technical and transactional data together and then, for example, building a digital twin of the customer's plant and tools, which provides the foundation for creating projects. These projects allow for broader collaboration across multiple machines, multiple solutions, and multiple interactions with multiple people.

[0103] Figure 83This is a screen display that shows an example of the features used to add widgets to items relevant to a specific user or client, project type, solution type, or other factors. The view and features can be customized based on the user's role, such as purchasing agent, machinist, or design engineer. For example, a solution stored in the virtual toolbox can be shared with a purchasing agent, who then has the order history and can purchase the product as needed. Figure 84 is a screen display showing examples of carts that can be generated by combining different aspects of developing and selecting industrial tooling solutions.

[0104] When building a session for a user, two types of accounts may exist, and each session may be built differently. If the user is outside the company that owns or controls the platform 102, the user is identified as an external partner and has access to the corresponding user account in the platform 102 and a session is built accordingly. For example, after logging in, the external user may be directed to the WIDIA homepage, and the platform 102 may be programmed to function like a distributor account. In one embodiment, the platform 102 may establish a dedicated section for the user in the collaborative team space. When the user is an internal user (e.g., an employee of the company that owns or controls the platform 102), a placeholder may be created for the internal user, and the user may be authorized to conduct transactions within the platform 102. The account placeholder can be used to access "partner functions" for the internal user, and multiple partner functions can be assigned to the user. In certain embodiments, for example, partner functions can be used for customer search API calls. Use of partner functions may limit the number of customers an employee can access.

[0105] The user may be redirected to a "Customer Search" screen. After selecting a customer from the list, platform 102 may be configured to function substantially similarly for any other user, including external users. For example, API calls made to SAP may be programmed to pass the login session to SAP so that transactions in SAP may be performed against the logged-in user ID rather than the service account. If an internal user chooses to navigate away from the customer page without selecting a sold-to party account, platform 102 may not permit the user to conduct any transactions on the platform 102 website. For example, the "Add to Cart" functionality may be disabled, and the checkout and quote functionality may be disabled. The user may be prompted with a message stating: "You have not selected a customer. No transactions will work on the website. Do you want to continue?" along with buttons such as "Continue" and "Cancel."

[0106] Figures 85 to 98 Additional examples of screen displays and computer-implemented tools configured for accessing and implementing the collaborative team features and functionality of the platform 102 are shown. In one aspect, Figure 85 and 86Included are examples of how to create and name collaborative teams within the platform 102 . Figures 87 to 98 An example is presented of how items, components, or elements (eg, machines, projects, solutions, or artifact features) shared to a created collaboration team may be added to a dashboard of members of the created collaboration team.

[0107] In the example shown, a user can search for the names of collaboration teams that are associated with the user. Collaboration teams can be collected and displayed by modification date (e.g., the most recently modified ones are displayed first in the list), team name, creation date, and / or other team attributes. If a user selects a specific collaboration team card through the user interface, detailed information for the specific team can be displayed. The details of the collaboration team card may include: team title, team image or logo, and / or a list of components associated or linked to the collaboration team, as well as other data fields or information. Examples of such components may include members, projects, solutions, machines, and / or artifact features, and the like. Users can apply various data filters within the collaboration team dashboard, including data filters for team name, machine name, project name, solution name, member name, artifact features, creation date, and / or list modification date, and the like.

[0108] Team members can be allowed to invite other users to join the collaboration team. Member users can enter email addresses to invite new users to join the collaboration team. Notifications can also be sent to the recipient users. This notification can be found in the collaboration space navigation menu in the collaboration team management of the dashboard (see e.g. Figure 93 ) as numbered balloons in the collaboration space. Such invitations can appear as submenus of the collaboration team management menu in the collaboration space navigation menu. Invitations can appear as collaboration team cards with a call-to-action button that provides the option to "Accept" or "Decline" the invitation.

[0109] In other aspects, users can share information from their profiles with collaborative teams. This shared information can be related to projects, solutions, machines, artifact features, and / or other aspects of the collaborative team's work. The information can be conveniently organized in a card-like format for easy organization and movement in a dynamic dashboard environment. In one instance, the default sequence or layout of these information cards can be organized from top to bottom as projects, solutions, machines, and artifact features. For example, a list of a user's projects can be displayed in a list, and each project to be shared can be selected by using a checkbox. Selecting a project shares the selected project with the collaborative team and identifies the user as a user sharing the project (or multiple projects). In some embodiments, the information cards can be reorganized or rearranged in the collaborative team section, for example, depending on the user's preferences for viewing the presented information. For example, when an element has been shared with a collaborative team, a card can display a collaborative team icon on the card.

[0110] In other aspects of the collaborative team features and functionality, components and other information can be shared with multiple collaborative teams. For example, a notification can be sent in the form of an email communication in response to a user taking an action as part of a collaborative team (e.g., sharing an artifact feature with a collaborative team), and the notification can identify which user took the action. Elements shared with a collaborative team can be shared by users who have the element in their virtual toolbox. Shared projects can be configured to be editable by multiple members simultaneously. However, the editing capabilities of elements of the shared solution, machine, and artifact feature categories may be subject to access restrictions to allow multiple team members to edit simultaneously. For example, when edited by a collaborative team member, such elements or components may be grayed out or locked.

[0111] Figures 94 to 102 Various user interface screens are included that illustrate different examples of various features and aspects of the "Similars" functionality. For example, a user can choose to view products that are similar to the product they selected from the variant table or product details page (PDP). In another aspect, the user can modify or remove attributes of the original product and display search results for similar products. The user can view the original product name from the similar search results. In one embodiment, the user can navigate back to the original product PDP or variant table from the search results page. The user can open the Similars module, modify the attributes as needed, and then apply the modifications to the new search results. In another aspect, the user can choose to replace a product in a selected solution by using the "Similars" functionality in conjunction with the solution compatibility feature.

[0112] In various embodiments, the product name and default image of the selected product may be displayed, and the product may be associated with a product line. Application icons may be displayed to reference applications associated with the product. Material icons may be displayed to reference materials associated with the product. Product data may be displayed in the form of a product data sheet exported from the PDP.

[0113] Filters corresponding to the original product's attributes can be applied to the "Similar" feature. Users can remove or add individual filters or clear all filters as needed. The filter section of the user interface screen can be pre-populated with attributes from the original product. The attributes displayed in this section can be predefined as "Similar" attributes. Users can be allowed to reset individual attributes to their corresponding values for the original product. Regarding the solution compatibility feature, the platform 102 can be programmed to confirm that the user has chosen to maintain "fit" compatibility with a given solution. When the "Find Similar Items" button is selected and clicked, the user will remain in the existing tab when viewing the results and can add the selected product to the existing solution. When the "Find Similar Items" button is deselected and clicked, a new tab will be created to reproduce the results. The user can be directed to the new tab to view the results. If the selection is incompatible with the solution, the platform 102 can be programmed not to allow the result to be added to the solution.

[0114] Figures 103 to 131 Included are various user interface screens illustrating different examples of various features and aspects of the Solution Finder functionality. In various embodiments, a CPQ / FPX Solution Finder session can be created, initiated from the task-based navigation widget, from within a project, or from the left navigation menu or drop-down menu in the collaboration space. For example, the Solution Finder allows users to select available parameters for different features or sub-features selected by the user, allowing the user to enter appropriate parameter values for the workpiece feature to be machined. Each time a change is made, the parameters in the Solution Finder are returned to the user, ensuring that the displayed parameters are as accurate and up-to-date as possible. The user can specify parameter values, workpiece material, and machine / spindle to return results, as determined by the Solution Finder, that meet the requirements of the workpiece feature to be machined. Additionally, based on the provided input data, the user can select from different available machining strategies for the workpiece feature. The Solution Finder then generates and displays recommended solutions corresponding to the selected strategy. Recommended solutions can be generated and displayed for each operation and prerequisite within the selected strategy, and these recommended solutions can be ranked from most favorable to least favorable. After selecting a recommended solution, it can be added to the project, potentially associated with each operation and prerequisite required for the workpiece feature.

[0115] For example, the different stages or levels of the process performed by the Solution Finder can be graphically represented as process step cards. Each card (e.g., for function, workpiece feature, material, machine, parameter, strategy, and result) represents a step along the Solution Finder process flow. User input data and product information can be saved and sent to the CPQ / FPX module. This module can also be used to retrieve parameter information, product images, or solution-related information, as well as other types of data.

[0116] Figure 132 and 133 Included are user interface screens illustrating different examples of various features and aspects of notification functionality provided in accordance with certain embodiments of the platform 102 described herein. A notification menu may be accessed to display a user's notifications. A number on the notification bell icon indicates how many unread messages the user has in the menu. When a solution, project, machine, or artifact is shared with a user, a "new" icon may be displayed on the shared item until the user first accesses or opens the item. The "new" icon will persist until the user opens the shared item. Once the user opens the notification, the "new" icon will disappear. Once the user opens the notification on the solution, project, or machine, the notification will be updated to display the notification as read. A timestamp may be generated in response to user activity, indicating how long ago the action was performed. In certain embodiments, notifications may be generated in response to the name of the user interacting with the project, the action the user performed with the solution, and / or the project name and link to the project.

[0117] In a collaborative space, if a user shares a project, solution, machine, workpiece feature, or other element, and another user clicks a link, the user can be directed to the element's information. When an element is shared with another user, the recipient can receive a notification when the element becomes visible in their collaborative space. Users can set a timeline or date to remind them to reorder a product or saved shopping cart. Access notifications can direct users to the product's PDP page. Other notifications can advise users when a quote is available, when to adjust browser security settings to view certain content, when a drawing is ready for review or approval, or for other reasons.

[0118] Figure 134 Schematically illustrates how digital assets, such as those managed by embodiments of the platform 102 described herein, can be implemented in a variety of different applications. For example, digital assets can be used to generate personalized product catalogs, create sales presentations, or help develop industrial tool solutions accessible via a web page.

[0119] Figure 135 Included are schematic diagrams illustrating computer architectures and process flows for implementing examples of various tools, features, and functions for implementing the functions and features of the different technical embodiments of the platform 102 described herein.

[0120] Figure 136 Included are schematic diagrams illustrating process flows and interconnections for implementing examples of various tools, features, and functions that implement the functions and features of the different technical and operational embodiments of the DCX platform 102 described herein.

[0121] Figure 137Included are schematic diagrams illustrating computer architectures and process flows for implementing examples of various tools, features, and functions of the various embodiments of the DCX platform 102 described herein.

[0122] The examples presented herein are intended to illustrate potential and specific embodiments of the present invention. It will be appreciated that the examples are primarily intended to serve the purpose of illustrating the present invention for those skilled in the art. Any particular aspect or aspects of the examples are not necessarily intended to limit the scope of the present invention. For example, any particular aspect or aspects of the examples of the system architecture, user interface layout, algorithm use case, or screen display described herein are not necessarily intended to limit the scope of the present invention.

[0123] It should be understood that the figures and description of the present invention have been simplified to show those elements relevant to a clear understanding of the present invention, while other elements have been omitted for clarity. However, one of ordinary skill in the art will recognize that a full understanding of the present invention can be obtained through this disclosure, and therefore a more detailed description of such elements is not provided herein.

[0124] Any element described herein as a means for performing a specified function is intended to encompass any manner of performing that function, including, for example, a combination of elements that perform that function. Furthermore, the present invention, as defined by such means-plus-function claims, is subject to the fact that the functionality provided by the various recited components can be combined and aggregated in the manner defined by the appended claims. Therefore, any component that can provide such functionality is considered equivalent to the components illustrated herein.

[0125] In various embodiments, modules or software may be used to practice certain aspects of the present invention. For example, a Software as a Service (SaaS) model or an Application Service Provider (ASP) model may be used as a software application delivery model to deliver software applications to clients or other users. For example, such software applications may be downloaded via an Internet connection and operated independently (e.g., downloaded to a laptop or desktop computer system) or operated through a third-party service provider (e.g., accessed through a third-party website). Additionally, cloud computing technology may be used in conjunction with various embodiments of the present invention.

[0126] Furthermore, the processes associated with embodiments of the present invention may be performed by a programmable device, such as a computer. Software or other instruction sets that can be used to cause a programmable device to perform the processes may be stored in any storage device, such as a computer system (non-volatile) memory. Furthermore, some processes may be programmed when the computer system is manufactured or via a computer-readable memory storage medium.

[0127] It will also be appreciated that certain aspects of the processes described herein may be performed using instructions stored on one or more computer-readable storage media, which direct a computer or computer system to perform the process steps. Computer-readable media may include, for example, memory devices such as magnetic disks, compact discs of read-only and read / write varieties, optical drives, and hard drives. Computer-readable media may also include memory storage devices that may be physical, virtual, permanent, temporary, semi-permanent, and / or semi-temporary. The memory and / or storage components may be implemented using any computer-readable medium capable of storing data, such as volatile or non-volatile memory, removable or non-removable memory, erasable or non-erasable memory, writable or rewritable memory, and the like.

[0128] Examples of computer-readable storage media may include, but are not limited to, RAM, dynamic RAM (DRAM), double data rate DRAM (DDRAM), synchronous DRAM (SDRAM), static RAM (SRAM), read-only memory (ROM), programmable ROM (PROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory (e.g., NOR or NAND flash memory), content-addressable memory, polymer memory (e.g., ferroelectric polymer memory), phase change memory, bidirectional memory, ferroelectric memory, silicon-oxide-nitride-oxide-silicon (SONOS) memory, magnetic or optical cards, or any other type of medium suitable for storing information.

[0129] A "computer," "computer system," "computing device," "component," or "computer processor" may be, for example, but not limited to, a processor, a microcomputer, a minicomputer, a server, a mainframe, a laptop computer, a personal data assistant (PDA), a wireless email device, a smartphone, a mobile phone, an electronic tablet, a cellular phone, a pager, a processor, a fax machine, a scanner, or any other programmable device or computer device configured to transmit, process, and / or receive data. The computer systems and computer-based devices disclosed herein may include memory and / or storage components for storing certain software applications for obtaining, processing, and transmitting information. It will be understood that such memory may be internal or external to the execution of the disclosed embodiments. In various embodiments, a "host," "engine," "loader," "filter," "platform," or "component" may include various computers or computer systems, or may include a reasonable combination of software, firmware, and / or hardware. In certain embodiments, a "module" may include software, firmware, hardware, or any reasonable combination thereof.

[0130] In various embodiments of the present invention, a single component may be replaced by multiple components, and multiple components may be replaced by a single component to perform one or more given functions. Unless such replacement would not be useful in practicing an embodiment of the present invention, such replacement is within the scope of the present invention. Any server described herein may, for example, be replaced by a "server farm" or other networked server grouping (e.g., a group of server blades) that can be located and configured for collaborative functionality. It will be appreciated that a server farm can be used to distribute workloads between individual components of the farm and can accelerate computing processes by leveraging the collective and collaborative capabilities of multiple servers. Such a server farm may employ load balancing software that implements tasks such as tracking demand for processing power from different machines, prioritizing and scheduling tasks based on network demand, and / or providing backup contingencies in the event of component failure or reduced operability.

[0131] In general, it will be apparent to one of ordinary skill in the art that the various embodiments described herein, or components or portions thereof, can be implemented in many different embodiments of software, firmware, and / or hardware, or modules thereof. The software code or specialized control hardware used to implement some embodiments of the present invention does not limit the present invention. For example, the embodiments described above can be implemented in computer software using any suitable computer programming language, such as .NET or HTML, using conventional or object-oriented techniques. Prior to execution, a compiler or assembler can translate the programming language of computer software and other computer-implemented instructions into machine language, and / or can be directly translated by an interpreter at runtime. Examples of assembly languages include ARM, MIPS, and x86; examples of high-level languages include Ada, BASIC, C, C++, C#, COBOL, Fortran, Java, Lisp, Pascal, Object Pascal; and examples of scripting languages include Bourne script, JavaScript, Python, R, Ruby, PHP, and Perl. For example, various embodiments can be implemented in a Lotus Notes environment. Such software can be stored on any type of suitable computer-readable medium, such as magnetic or optical storage media.

[0132] Thus, the execution and behavior of the embodiments may be described without specific reference to the actual software code. The absence of such specific reference is feasible because it should be clearly understood that one of ordinary skill will be able to design software and control hardware to implement the embodiments of the present invention based on the description herein with only reasonable effort and without undue experimentation.

[0133] Various embodiments of the systems and methods described herein may employ one or more electronic computer networks to facilitate communication between different components, transfer data, or share resources and information. Such computer networks may be categorized based on the hardware and software technology used to interconnect devices in the network, such as fiber optics, Ethernet, wireless LAN, HomePNA, power line communication, or G.hn. A computer network may also be embodied as one or more of the following types of networks: a local area network (LAN); a metropolitan area network (MAN); a wide area network (WAN); a virtual private network (VPN); a storage area network (SAN); or a global area network (GAN), among other types of networks.

[0134] For example, a WAN computer network can cover a wide area by linking communications across city, regional, or national boundaries. The network can use routers and / or public communication links. One type of data communication network can cover a relatively wide geographic area (e.g., city to city or country to country) using transmission facilities provided by a common carrier, such as a telephone service provider. In another example, a GAN computer network can support mobile communications across multiple wireless LANs or satellite networks. In another example, a VPN computer network can include links between nodes that are carried by open connections or virtual circuits in another network (e.g., the Internet) rather than by physical lines. The link layer protocol of a VPN can be transmitted through another network tunnel. A VPN application can facilitate secure communications over the Internet. VPNs can also be used to conduct business for different user communities separately and securely over the underlying network. VPNs can provide users with a virtual experience of accessing a network through an IP address location other than the actual IP address that connects the access device to the network.

[0135] Computer networks can be characterized based on the functional relationships between the network's elements or components, such as active network, client-server, or peer-to-peer functional architecture. Computer networks can also be categorized based on network topology, such as bus, star, ring, mesh, star-bus, or hierarchical topology. Computer networks can also be categorized based on the method used for data communication, such as digital and analog networks.

[0136] Embodiments of the methods and systems described herein may employ network interconnection to connect two or more different electronic computer networks or network segments via a common routing technology. The type of internet used may depend on the management and / or participation of the internet. Non-limiting examples of the internet include intranets, extranets, and the internet. Intranets and extranets may or may not have a connection to the internet. If connected to the internet, the intranet or extranet may be protected by appropriate authentication techniques or other security measures. As used herein, an intranet may be a group of networks that employ internet protocols, web browsers, and / or file transfer applications under the common control of a management entity. For example, such a management entity may restrict access to the intranet to only authorized users or another internal network of an organization or business entity. As used herein, an extranet may include a network or internet that is typically limited to a primary organization or entity, but which also has limited connections to the networks of one or more other trusted organizations or entities (e.g., an entity's customers may be allowed access to the entity's intranet, thereby creating an extranet).

[0137] A computer network may include hardware components for interconnecting network nodes, such as network interface cards (NICs) or Ethernet cards, repeaters, bridges, hubs, switches, routers, and other similar components. For example, such components may be physically wired for communication, and / or data connections may be provided with microwave links (e.g., IEEE 802.12) or optical fibers. For example, a network card, network adapter, or NIC may be designed to provide physical access to a network and addressing system using MAC addresses, thereby allowing computers to communicate over a computer network. A repeater may be embodied as an electronic device that receives and retransmits transmitted signals at an enhanced power level to allow the signal to cover telecommunication distances with reduced degradation. A network bridge may be configured to connect multiple network segments at the data link layer of a computer network, while learning which addresses can be reached through which specific ports of the network. In a network, a bridge may associate a port with an address and then only send traffic for the address to the port. In various embodiments, local bridges may be used to directly connect local area networks (LANs), remote bridges may be used to create wide area network (WAN) links between LANs; and / or wireless bridges may be used to connect LANs and / or connect remote stations to LANs.

[0138] In various embodiments, a hub with multiple ports may be used. For example, when a data packet arrives at one port of the hub, the data packet may be copied to all ports of the hub without modification for transmission. A network switch or other device that forwards and filters OSI layer 2 datagrams between ports based on the MAC address in the data packet may also be used. A switch may have multiple ports so that most networks are connected directly to the switch, or to another switch connected to a switch. The term "switch" may also include routers and bridges, as well as other devices that distribute data traffic by application content (e.g., web URL identifiers). A switch may operate at one or more OSI model layers, including physical, data link, network, or transport (i.e., end-to-end). A device that operates at more than one of these layers simultaneously may be considered a multilayer switch. In some embodiments, a router or other similar networking device may be used to forward data packets between networks using headers and forwarding tables to determine the best path for transmitting data packets.

[0139] As used herein, an application server can be a server that hosts an API to expose business logic and business processes for use by other applications. Examples of application servers include J2EE or Java EE 5 application servers, including Websphere application servers. Other examples include Websphere application server group edition (IBM), Sybase Enterprise Application Server (Sybase), WebLogic Server (BEA), JBoss (Red Hat), JRun (Adobe Systems), Apache Geronimo (Apache Software Foundation), Oracle OC4J (Oracle), Sun Java System Application Server (Sun Microsystems), and SAP NetweaverAS (ABAP / Java). In addition, an application server can be provided according to the .NET framework, which includes Windows Communication Foundation, .NET Remoting, ADO.NET, and ASP.NET and several other components. For example, Java Server Pages (JSP) are server applet executed in a web page container that is functionally equivalent to a CGI script. JSP can be used to create an HTML page by embedding a reference to server logic within a page. Application servers may primarily serve network-based applications, while other servers may, for example, perform as Session Initiation Protocol servers or work with telephone networks. Enterprise application integration and service-oriented architecture specifications may be designed to connect many different computer network elements. Such specifications include Business Application Programming Interfaces, Web Services Interoperability, and the Java EE Connector Architecture.

[0140] Embodiments of the methods and systems described herein can divide functionality between separate CPUs, thereby creating a multi-processing configuration. For example, multi-processor and multi-core (multiple CPUs on a single integrated circuit) computer systems with co-processing capabilities can be employed. In addition, multitasking can be used as a computer processing technique to manage the simultaneous execution of multiple computer programs.

[0141] In various embodiments, the computer systems, data storage media, or modules described herein may be configured and / or programmed to include one or more of the aforementioned electronic, computer-based elements and components or computer architectures. In addition, these elements and components may be specifically configured to execute the various rules, algorithms, procedures, processes, and method steps described herein.

[0142] Various embodiments may be described herein in the general context of computer-executable instructions, such as software, program modules, and / or engines executed by a computer. Typically, software, program modules, and / or engines include any software element that is arranged to perform a specific execution or implement a specific abstract data type. Software, program modules, and / or engines may include routines, programs, objects, components, data structures, and the like that perform specific tasks or implement specific abstract data types. Implementations of software, program modules, and / or engine components and techniques may be stored on and / or transmitted across some form of computer-readable media. In this regard, computer-readable media may be any available medium that can be used to store information and that can be accessed by a computing device. Some embodiments may also be practiced in a distributed computing environment, where execution may be performed by one or more remote processing devices that may be linked via a communication network. In a distributed computing environment, software, program modules, and / or engines may be located in both local and remote computer storage media including memory storage devices.

[0143] Although some embodiments may be shown and described as including functional components, software, engines and / or modules that perform various executions, it is understood that such components or modules may be implemented by one or more hardware components, software components and / or combinations thereof. Functional components, software, engines and / or modules may, for example, be implemented by logic (e.g., instructions, data and / or code) executed by a logic device (e.g., a processor). Such logic may be stored inside or outside the logic device on one or more types of computer-readable storage media. In other embodiments, the functional components, such as software, engines and / or modules may be implemented by hardware elements, which may include processors, microprocessors, circuits, circuit elements (e.g., transistors, resistors, capacitors, inductors, etc.), integrated circuits, application specific integrated circuits (ASICs), programmable logic devices (PLDs), digital signal processors (DSPs), field programmable gate arrays (FPGAs), logic gates, registers, semiconductor devices, chips, microchips, chipsets, etc.

[0144] Examples of software, engines, and / or modules may include software components, programs, applications, computer programs, application programs, system programs, machine programs, operating system software, middleware, firmware, software modules, routines, subroutines, functions, methods, processes, software interfaces, application program interfaces (APIs), instruction sets, computing codes, computer codes, code segments, computer code segments, words, values, symbols, or any combination thereof.

[0145] Determining whether to use hardware elements and / or software elements to implement an embodiment may vary depending on any number of factors, such as: required computational rate, power level, thermal tolerance, processing cycle budget, input data rate, output data rate, memory resources, data bus speed, and other design or performance constraints.

[0146] In some cases, various embodiments may be implemented as an article of manufacture. The article of manufacture may include a computer-readable storage medium arranged to store logic, instructions, and / or data for performing various operations of one or more embodiments. In various embodiments, for example, the article of manufacture may include a magnetic disk, an optical disk, flash memory, or firmware containing computer program instructions suitable for execution by a special-purpose processor.

[0147] In addition, it should be understood that the embodiments described herein illustrate example implementation schemes, and functional element, logic block, module and circuit element can be implemented in various other ways, and the other ways can be consistent with the described embodiments. In addition, the execution performed by such functional element, logic block, module and circuit element can be combined and / or separated for a given embodiment, and can be performed by a greater number or a smaller number of components or modules. As will be apparent to those skilled in the art, when reading this disclosure, each of the individual embodiments described and shown herein has discrete components and features, and the components and features can be easily separated or combined with the features of any aspect in other several aspects without departing from the scope of this disclosure. Any narrated method can be carried out in the order of the events described or in any other order that is logically feasible.

[0148] Reference to "one embodiment" or "an embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. The appearances of the phrases "in one embodiment" or "in one aspect" in the specification are not necessarily all referring to the same embodiment.

[0149] Unless expressly stated otherwise, it is understood that terms such as "process," "compute," "calculate," "determine," or similar terms refer to the actions and / or processes of a computer or computing system or similar electronic computing device, such as a general purpose processor, DSP, ASIC, FPGA or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof, designed to perform the functions described herein that manipulate and / or transform data represented as physical quantities (e.g., electrons) within registers and / or memories into other data similarly represented as physical quantities within memories, registers, or other such information storage, transmission, or display devices.

[0150] Certain embodiments may be described using the expressions "coupled" and "connected," and their derivatives. These terms are not necessarily intended to be synonymous with each other. For example, some embodiments may be described using the terms "connected" and / or "coupled" to indicate that two or more elements may be in direct physical or electrical contact with each other. However, the term "coupled" may also mean that two or more elements may not be in direct contact with each other, but still cooperate or interact with each other. With respect to software components, for example, the term "coupled" may refer to an interface, a message interface, an application program interface (API), exchanging messages, and the like.

[0151] It will be appreciated that those skilled in the art will be able to design various arrangements which, although not explicitly described or shown herein, embody the principles of the present disclosure and may be included within its scope. In addition, all examples and conditional language described herein may be primarily intended to help the reader understand the principles described in the present disclosure and to contribute to further advancing the concepts of this art, and may be interpreted as not being limited to such specific narrated examples and conditions. In addition, all statements describing principles, aspects, and embodiments and their specific examples herein may be intended to encompass both structural and functional equivalents thereof. In addition, such equivalents are intended to include both currently known equivalents and equivalents developed in the future, i.e., any elements developed to perform the same function, regardless of structure. Therefore, the scope of the present disclosure is not intended to be limited to the exemplary aspects shown and described herein.

[0152] As discussed above, although the various systems described herein may be embodied in software or code executed by general-purpose hardware, as an alternative, the systems may also be embodied in dedicated hardware or a combination of software, hardware, and / or dedicated hardware. If embodied in dedicated hardware, each system may be implemented as a circuit or state machine employing any one or a combination of several technologies. These technologies may include, but are not limited to, discrete logic circuits having logic gates for implementing various logic functions when one or more data signals are applied, application-specific integrated circuits having appropriate logic gates, or other components. Such technologies may generally be well known to those of ordinary skill in the art and, therefore, may not be described in detail herein.

[0153] The flowcharts and methods described herein illustrate the functionality and execution of various embodiments. If embodied in software, each block, step, or action may represent a module, segment, or portion of code that includes program instructions for implementing a specified logical function. Program instructions may be embodied in source code, which includes human-readable statements written in a programming language or machine code, which includes digital instructions that can be recognized by a suitable execution system, such as a processing component in a computer system. If embodied in hardware, each block may represent a circuit or several interconnected circuits for implementing a specified logical function. Although the flowcharts and methods described herein may describe a specific execution order, it should be understood that the execution order may differ from the described execution order. For example, the execution order of two or more blocks or steps may be disrupted relative to the described order. Furthermore, two or more blocks or steps may be executed simultaneously or partially simultaneously. Furthermore, in some embodiments, one or more blocks or steps may be omitted or not executed. It should be understood that all such variations are within the scope of this disclosure.

[0154] The terms "a" and "an" and "the" and similar referents used in the context of this disclosure (especially in the context of the appended claims) are to be interpreted as encompassing both the singular and the plural, unless otherwise indicated herein or clearly contradicted by the context. The recitation of a range of values herein is intended only to serve as a shorthand method of individually referring to each individual value falling within the range. Unless otherwise indicated herein, each individual value is incorporated into this specification as if each individual value were individually cited herein. Unless otherwise indicated herein or clearly contradicted by the context, all methods described herein can be performed in any suitable order. The use of any and all examples or exemplary language (e.g., "for example," "in this case," "by way of example") provided herein is intended only to better illustrate the disclosed embodiments and does not limit the scope of otherwise claimed embodiments. No language in this specification should be construed as indicating any non-required element necessary to practice the claimed subject matter. It should be further noted that claims can be drafted to exclude any optional elements. Therefore, this statement is intended to serve as a precondition for using exclusive terms such as "alone," "only," or the use of negative limitations in conjunction with the recitation of claim elements.

[0155] The grouping of alternative elements or embodiments disclosed herein should not be construed as limiting. Each group member may be referred to and claimed individually or in any combination with other members of the group or other elements found herein. It is contemplated that one or more members of a group may be included in or deleted from a group for reasons of convenience and / or patentability.

[0156] Various embodiments of the present invention may incorporate and implement various artificial intelligence tools and techniques. Search and optimization tools, including search algorithms, mathematical optimization, and evolutionary computational methods, can be used to intelligently search for many possible solutions. For example, logical operations may involve searching for a path from a premise to a conclusion, where each step is the application of an inference rule. Planning algorithms may search goal trees and subgoal trees in a process known as means-end analysis, attempting to find a path to a goal. Furthermore, quantum computing techniques and systems may be applied to various embodiments of the present invention.

[0157] Heuristics can be used to prioritize options that are more likely to achieve a goal and do so in a shorter number of steps. In some search methods, heuristics can also be used to eliminate options that are unlikely to lead to the goal. Heuristics can provide the computer system with a best estimate of the path to the solution. Heuristics can limit the search for a solution to a smaller sample size, thereby improving overall computer system processing efficiency.

[0158] Proposal logic involving truth functions, such as "or" and "not" search terms, can be used, and first-order logic can add quantifiers and predicates and can express facts about objects, their properties, and their relationships to each other. Fuzzy logic assigns a degree of truth value (e.g., between 0 and 1) to fuzzy statements that may be too linguistically imprecise to be completely true or false. Default logic, non-monotonic logic, and bounds are forms of logic designed to facilitate default reasoning and identification problems. Several extensions of logic can be used to address specific areas of knowledge, such as descriptive logic, case calculus, event calculus, and fluent calculus (for representing events and time), causal calculus, belief calculus (belief revision); and modal logic. Logic for modeling contradictory or inconsistent statements that arise in multi-agent systems, such as pseudo-consistent logic, can also be used.

[0159] Probabilistic methods can be applied to reasoning under uncertainty, such as Bayesian networks, hidden Markov models, Kalman filters, particle filters, decision theory, and utility theory. These tools and techniques help systems execute algorithms with incomplete or uncertain information. Bayesian networks are tools that can be used for a variety of problems: reasoning (using Bayesian inference algorithms), learning (using expectation-maximization algorithms), planning (using decision networks), and perception (using dynamic Bayesian networks). Probabilistic algorithms can be used to filter, predict, smooth, and find explanations for data streams, helping perception systems analyze processes over time (for example, hidden Markov models or Kalman filters). Artificial intelligence can use the concept of utility as a measure of the value of something to an intelligent agent. Mathematical tools using decision theory, decision analysis, and information value theory can analyze how agents make choices and plans. These tools include models such as Markov decision processes, dynamic decision networks, game theory, and mechanism design.

[0160] Artificial intelligence techniques applied to embodiments of the present invention can utilize classifiers and controllers. Classifiers are functions that use pattern matching to determine the closest match. They can be tuned based on instances called observations or patterns. In supervised learning, each pattern belongs to a predefined class that represents the decision to be made. The combination of all observations and their class labels is called a dataset. When a new observation is received, it is classified based on previous experience. Classifiers can be trained in various ways; there are many statistical and machine learning methods. Decision trees are a type of symbolic machine learning algorithm. In particular, the naive Bayes classifier is a classifier that is useful due to its scalability. Neural networks can also be used for classification. Classifier performance depends in part on the characteristics of the data to be classified, such as the size of the dataset, the distribution of samples across classes, dimensionality, and noise level. Model-based classifiers perform best when the assumed model is an optimal fit for the actual data. Otherwise, if no matching model is available and if accuracy (rather than speed or scalability) is the primary concern, a discriminant classifier (e.g., SVM) can be used to improve accuracy.

[0161] A neural network is an interconnected group of nodes that can be used in conjunction with various embodiments of the present invention, such as the execution of various methods, processes, or algorithms disclosed herein. Each neuron in a neural network can accept inputs from other neurons, and each of these inputs, when activated, casts a weighted vote in favor or against whether the first neuron should activate. The learning implemented by the network involves using an algorithm to adjust these weights based on training data. For example, when the activation of one neuron triggers the successful activation of another neuron, an algorithm increases the weight between the two connected neurons. Neurons have a continuous activation spectrum and can process inputs in a nonlinear manner rather than weighing direct votes. Neural networks can model complex relationships between inputs and outputs or find patterns in data. They can learn continuous functions and even digital logic operations. Neural networks can be viewed as a type of mathematical optimization that performs gradient descent on a multidimensional topology created by training the network. Another type of algorithm is the backpropagation algorithm. Other examples of learning techniques for neural networks include Hebbian learning, group method for data handling (GMDH), or competitive learning. The main categories of networks are acyclic or feedforward neural networks (in which signals pass in only one direction) and recurrent neural networks (which allow feedback and short-term memory of previous input events). Examples of feedforward networks include perceptrons, multilayer perceptrons, and radial basis networks.

[0162] The deep learning techniques applied to various embodiments of the present invention may use several layers of neurons between the input and output of the network. Multiple layers may gradually extract higher-level features from the raw input. For example, in image processing, lower layers may identify edges, while higher layers may identify concepts related to people, such as numbers, letters, or faces. Deep learning may involve many or all layers of a convolutional neural network. In a convolutional layer, each neuron receives input only from a restricted area of the previous layer, called the neuron's receptive field. This can substantially reduce the number of weighted connections between neurons. In a recursive neural network, the signal will propagate through the layers more than once. Recursive neural networks (RNNs) are another example of deep learning techniques that can be trained, for example, by gradient descent.

[0163] Although various embodiments of the present invention have been described herein, it should be apparent that those skilled in the art may make various modifications, changes, and adaptations to those embodiments while achieving some or all of the advantages of the present invention. Therefore, the disclosed embodiments are intended to include all such modifications, changes, and adaptations without departing from the scope and spirit of the present invention as claimed herein.

Claims

1. A computer-based system for generating an industrial tool solution comprising at least one industrial tool, the system comprising: A digital platform comprising at least one computer processor programmed to execute at least the following modules: a module programmed to receive uploaded model data of a component to be manufactured; A digital machining module programmed to: defining at least one material for said component, processing at least a portion of the model data file to identify at least one feature of the component represented by the model, processing the identified features to determine at least one machining operation corresponding to the identified features to identify at least one machinable feature, and generating an industrial tool solution including at least the identified machinable features; and a solution finder module programmed to: receiving data associated with the at least one machinable feature from the digital machining module, and At least one cutting tool is assigned to the machinable feature. 2 . The system of claim 1 , further comprising the solution finder module programmed to apply a unique tag or identifier to the industrial tool solution. 3 . The system of claim 1 , further comprising the solution finder module programmed to combine the at least one machinable feature of the component with the determined sequence of machining operations.

4. The system of claim 1, further comprising the solution finder module programmed to combine the at least one machinable feature of the component with a machine type.

5. The system of claim 1, further comprising the solution finder module programmed to combine the at least one machinable feature of the component with a fixture.

6. The system of claim 1, further comprising the digital machining module being programmed to generate a bill of materials and / or setup diagram for the component.

7. The system of claim 1, further comprising the digital machining module programmed to generate at least one of G-code instructions and / or NC program instructions in association with implementing the industrial tool solution.

8. The system of claim 7, further comprising the digital machining module programmed to generate at least a portion of the G-code instructions and / or the NC program instructions in response to a type of computer numerical control (CNC) machine and / or fixture determined for the industrial tool solution.

9. The system of claim 1, further comprising the digital machining module programmed to assign a fixture to a machine associated with the generated industrial tool solution.

10. The system of claim 1, wherein the model data file comprises a portable document format (PDF) data file or a computer-aided design (CAD) data file.

11. The system of claim 1 , further comprising a machine module programmed to: receiving information associated with at least one machine associated with use of the industrial tool solution, and Display a digital replica of each machine, including a digital twin of the machine kinematics and machine controls.

12. The system of claim 1, further comprising a project module programmed to display project information, the project information comprising at least a combination of industrial tool solution information, machine information, component assembly information, and / or collision detection information.

13. The system of claim 1, further comprising a workpiece characterization module programmed to display at least one parameter or attribute of a workpiece to be processed associated with a given industrial tool solution.

14. The system of claim 1, further comprising the digital machining module programmed to create a tool path simulation for the industrial tool solution.

15. The system of claim 1, further comprising the digital machining module being programmed to automatically upload data from a rules engine.

16. The system of claim 1, further comprising the digital machining module programmed to obtain data related to at least one machining strategy for a specific feature and data related to at least one overall machining strategy.

17. The system of claim 1, further comprising the digital machining module programmed to generate product manufacturing information (PMI) related to the industrial tool solution.

Citation Information

Patent Citations

  • System and method for selecting a tool assembly

    US10754322B2

  • System and method for selecting a tool assembly

    US9817387B2