Patent Description:
A document in the art is exemplified by <CIT> which discloses a method of removing excess material from a dental appliance, wherein a CNC machine and a computing system is provided, the CNC machine including an automated tool. A three-dimensional virtual representation of the dental appliance managed by the computing system is provided. The dental appliance is machined along a trim line with the automated tool according to the virtual representation and then unloaded as a finished product from the CNC machine.

Conventional methods used to produce dental appliances include a dental impression method and a cast model method which are very cumbersome and imprecise methods. In addition, 3D CAD data required for the trimming process was developed by the use of intraoral and 3D desktop scanners. Further, the removal of excess material from a dental appliance was performed manually by human hands.

Existing techniques for the removal of excess material from a dental appliance are deficient with regard to several aspects. For instance, current technologies do not allow an automated trimming of the dental appliance. Furthermore, current technologies do not involve identification techniques to identify a trim line for the dental appliance. Moreover, current technologies do not allow a cost-effective and high-speed trimming of the dental appliance.

Therefore, there is a need for improved methods to facilitate the removal of excess material from a dental appliance that may overcome one or more of the above-mentioned problems and/or limitations.

The invention related to a method to facilitate the removal of excess material from a dental appliance.

All illustrations of the drawings are for the purpose of describing selected versions of the present invention and are not intended to limit the scope of the present invention.

The present invention is a method of removing excess material from a dental appliance. As can be seen in <FIG>, a system for implementing the method of the present invention is provided with at least one <NUM>-axis computer numerical control (CNC) machine (<NUM>) and at least one administrator computing system (<NUM>) (Step A) [<NUM>]. The <NUM>-axis CNC machine includes an automated tool (<NUM>). The administrator computing system manages at least one three-dimensional (3D) model (Step B) [<NUM>], which is a virtual representation of at least one dental appliance. An example of the dental appliance is an aligner tray that is used for orthodontal purposes.

As can be seen in <FIG>, an overall process for the method of the present invention allows a user to effectively and efficiently transform the dental appliance into a final product. The overall process begins by executing a line assessment process with the administrator computing system by outputting a trim line with the line assessment process (Step C) [<NUM>]. The 3D model and the dental appliance are each delineated into a useful portion and at least one excess portion by the trim line. A tool path for the automated tool is generated in accordance to the trim line and the 3D model with administrator computing system (Step D) [<NUM>]. Thereafter, the tool path is relayed from the administrator computing system to the <NUM>-axis CNC machine (Step E) [<NUM>]. The overall process continues by loading the dental appliance into the <NUM>-axis CNC machine (Step F) [<NUM>]. The dental appliance is next machined along the trim line with the automated tool, while guiding the automated tool along the tool path with the <NUM>-axis CNC machine (Step G) [<NUM>]. The overall process concludes by unloading the useful portion of the dental appliance as a finished product from the <NUM>-axis CNC machine (Step H) [<NUM>]. After Step H, a laser etching machine can be used to mark the final product with an identifier (e.g., a batch number).

As can be seen in <FIG>, one subprocess for the method of the present invention provides a plastic sheet and a 3D printer [<NUM>]. Thus, the plastic sheet is vacuumthermoformed into the dental appliance in accordance to the 3D model with the 3D printer during Step B [<NUM>]. More specifically, this subprocess can provide a virtual orientation feature for the 3D model [<NUM>] and a physical orientation feature for the dental appliance [<NUM>], which is shown in <FIG>. Thus, the plastic sheet can be further vacuumthermoformed into the physical orientation feature in accordance to the virtual orientation feature with the 3D printer during Step B [<NUM>]. This subprocess consequently allows the dental appliance to be properly oriented in accordance to the physical orientation feature with the <NUM>-axis CNC machine during Step G [<NUM>].

As can be seen in <FIG>, another subprocess for the method of the present invention provides the trim line as a predefined trim line for the 3D model [<NUM>]. The predefined trim line is typically retrieved from a third-party computer aided design (CAD) provider. Thus, the line assessment process is executed with the administrator computing system before Step C by inputting the predefined trim line into the line assessment process [<NUM>].

As can be seen in <FIG>, another subprocess for the method of the present invention provides a virtual gums portion and a virtual teeth portion for the 3D model [<NUM>]. Thus, the 3D model is scanned for an intersection line between the virtual gums portion and the virtual teeth portion with the administrator computing system [<NUM>]. Topological data of the 3D model may be used to scan for the intersection line. The line assessment process is then executed with the administrator computing system before Step C by inputting the intersection line into the line assessment process [<NUM>]. More specifically, this subprocess can provide an offset distance for the intersection line [<NUM>], which is shown in <FIG>. The line assessment process can be further executed with the administrator computing system before Step C by inputting the offset distance into the line assessment process [<NUM>].

As can be seen in <FIG>, another subprocess similarly provides a virtual gums portion and a virtual teeth portion for the 3D model [<NUM>]. Thus, a statistical average for an intersection line is calculated between the virtual gums portion and the virtual teeth portion with the administrator computing system [<NUM>]. The line assessment process is then executed with the administrator computing system before Step C by inputting the statistical average of the intersection line into the line assessment process [<NUM>].

As can be seen in <FIG>, another subprocess for the method of the present invention provides a number of computational nodes along the trim line during Step C [<NUM>]. Moreover, the line assessment process includes a desired low node threshold and a desired high node threshold. Thus, the number of computational nodes is increased with the administrator computing system, if the number of computational nodes is less than or equal to the desired low node threshold [<NUM>]. Alternatively, the number of computational nodes is decreased with the administrator computing system, if the number of computational nodes is greater than or equal to the desired high node threshold [<NUM>]. For example, this subprocess allows the administrator computing system to smooth out a trim line that was initially derived as a jagged line, which allows for a better quality of trim line.

As can be seen in <FIG>, another subprocess for the method of the present invention begins by prompting to enter at least one manual user input for the trim line with the administrator computing system [<NUM>]. An example of a manual user input is to have the trim line cut over a specific molar. The line assessment process is then executed with the administrator computing system before Step C by inputting the manual user input into the line assessment process, if the manual user input is entered for the trim line with the administrator computing system [<NUM>].

As can be seen in <FIG>, another subprocess for the method of the present invention begins by displaying the trim line with the 3D model with the administrator computing system after Step C [<NUM>]. Thereafter, at least one manual user edit is prompted to be entered for the trim line with the administrator computing system [<NUM>]. Consequently, the manual user edit is applied to the trim line with the administrator computing system, if the manual user edit is entered for the trim line with the administrator computing system [<NUM>]. This subprocess allows for an interactive platform that allows a user to easily view and adjust the trim line.

As can be seen in <FIG>, another subprocess for the method of the present invention provides at least one robotic arm [<NUM>]. Thus, the dental appliance is loaded into the <NUM>-axis CNC machine with the robotic arm during Step F [<NUM>]. Thereafter, the finished product is unloaded from the <NUM>-axis CNC machine with the robotic arm during Step H [<NUM>].

As can be seen in <FIG>, another subprocess for the method of the present invention provides a plurality of spatial-positioning points managed by the administrator computing system during Step D [<NUM>]. In addition, the spatial-positioning points are occupied by the dental appliance. Thus, the tool path is primarily mapped with the administrator computing system by positioning the tool path along the trim line [<NUM>]. The tool path is further mapped with the administrator computing system by preventing intersection between the tool path and the spatial-positioning points [<NUM>]. The tool path is further mapped with the administrator computing system by referencing a material thickness of the dental appliance [<NUM>]. The tool path is further mapped with the administrator computing system by referencing at least one kinematic limitation of the automated tool [<NUM>].

As can be seen in <FIG>, another subprocess for the method of the present invention begins by simulating Step G with the administrator computing system after Step D in order to identify at least one potential collision between the automated tool and the dental appliance [<NUM>]. Consequently, at least one error notification for the tool path is outputted with the administrator computing system, if the potential collision is identified between the automated tool and the dental tool [<NUM>].

As can be seen in <FIG>, another subprocess for the method of the present invention provides the automated tool as a waterjet tool [<NUM>]. Thus, the excess portion of the dental appliance is machined off the useful portion of the dental appliance with the milling tool during Step G [<NUM>].

As can be seen in <FIG>, another subprocess for the method of the present invention provides the automated tool as a milling tool [<NUM>]. Thus, the excess portion of the dental appliance is machined off the useful portion of the dental appliance with the milling tool during Step G [<NUM>].

As can be seen in <FIG>, a larger process for the method of the present invention provides the at least one 3D model as a plurality of 3D models [<NUM>] and the at least one dental appliance as a plurality of dental appliances [<NUM>]. Moreover, each of the plurality of 3D models is associated with a corresponding appliance from the plurality of dental appliances. This larger process is executed as a plurality of iterations for Steps C through H [<NUM>]. Thus, each iteration is executed with a specific model and the corresponding appliance, and the specific model is from the plurality of 3D models. More specifically, this larger process can provide a virtual identification for each 3D model [<NUM>] and a physical identification for each dental appliance [<NUM>], which is shown in <FIG>. As a result, the virtual identification of the specific model can be further relayed from the administrator computing system to the <NUM>-axis CNC machine during Step E of each iteration [<NUM>]. As another result, the physical identification of the corresponding appliance can be scanned with the <NUM>-axis CNC machine after Step E [<NUM>]. Finally, Step G of each iteration can be executed by the <NUM>-axis CNC machine, if the virtual identification of the specific model matches the physical identification of the corresponding appliance [<NUM>].

As can be seen in <FIG>, another subprocess for the method of the present invention provides a radiator for the <NUM>-axis CNC machine [<NUM>]. Thus, at least one sharp edge of the final product is dulled with the <NUM>-axis CNC machine after Step H by concentrating heat towards the sharp edge with the radiator [<NUM>]. An alternative to this subprocess is to dull the sharp edges of the final product with a technique known as tumbling.

In general, the method disclosed herein may be performed by one or more computing devices. For example, in some embodiments, the method may be performed by a server computer in communication with one or more client devices over a communication network such as, for example, the Internet. In some other embodiments, the method may be performed by one or more of at least one server computer, at least one client device, at least one network device, at least one sensor, and at least one actuator. Examples of the one or more client devices and/or the server computer may include, a desktop computer, a laptop computer, a tablet computer, a personal digital assistant, a portable electronic device, a wearable computer, a smartphone, an Internet of Things (IoT) device, a smart electrical appliance, a video game console, a rack server, a supercomputer, a mainframe computer, mini-computer, micro-computer, a storage server, an application server (e.g., a mail server, a web server, a real-time communication server, an FTP server, a virtual server, a proxy server, a DNS server, etc.), a quantum computer, and so on. Further, one or more client devices and/or the server computer may be configured for executing a software application such as, for example, but not limited to, an operating system (e.g., Windows, Mac OS, Unix, Linux, Android, etc.) in order to provide a user interface (e.g., GUI, touch-screen based interface, voice-based interface, gesture-based interface, etc.) for use by the one or more users and/or a network interface for communicating with other devices over a communication network. Accordingly, the server computer may include a processing device configured for performing data processing tasks such as, for example, but not limited to, analyzing, identifying, determining, generating, transforming, calculating, computing, compressing, decompressing, encrypting, decrypting, scrambling, splitting, merging, interpolating, extrapolating, redacting, anonymizing, encoding and decoding. Further, the server computer may include a communication device configured for communicating with one or more external devices. The one or more external devices may include, for example, but are not limited to, a client device, a third-party database, public database, a private database and so on. Further, the communication device may be configured for communicating with the one or more external devices over one or more communication channels. Further, the one or more communication channels may include a wireless communication channel and/or a wired communication channel. Accordingly, the communication device may be configured for performing one or more of transmitting and receiving of information in electronic form. Further, the server computer may include a storage device configured for performing data storage and/or data retrieval operations. In general, the storage device may be configured for providing reliable storage of digital information. Accordingly, in some embodiments, the storage device may be based on technologies such as, but not limited to, data compression, data backup, data redundancy, deduplication, error correction, data finger-printing, role-based access control, and so on.

Further, one or more steps of the method disclosed herein may be initiated, maintained, controlled and/or terminated based on a control input received from one or more devices operated by one or more users such as, for example, but not limited to, an end-user, an admin, a service provider, a service consumer, an agent, a broker and a representative thereof. Further, the user as defined herein may refer to a human, an animal or an artificially intelligent being in any state of existence, unless stated otherwise, elsewhere in the present disclosure. Further, in some embodiments, the one or more users may be required to successfully perform authentication in order for the control input to be effective. In general, a user of the one or more users may perform authentication based on the possession of a secret human-readable secret data (e.g., username, password, passphrase, PIN, secret question, secret answer, etc.) and/or possession of a machine-readable secret data (e.g., encryption key, decryption key, bar codes, etc.) and/or possession of one or more embodied characteristics unique to the user (e.g., biometric variables such as, but not limited to, fingerprint, palm-print, voice characteristics, behavioral characteristics, facial features, iris pattern, heart rate variability, evoked potentials, brain waves, and so on) and/or possession of a unique device (e.g., a device with a unique physical and/or chemical and/or biological characteristic, a hardware device with a unique serial number, a network device with a unique IP/MAC address, a telephone with a unique phone number, a smartcard with an authentication token stored thereupon, etc.). Accordingly, the one or more steps of the method may include communicating (e.g., transmitting and/or receiving) with one or more sensor devices and/or one or more actuators in order to perform authentication. For example, the one or more steps may include receiving, using the communication device, the secret human-readable data from an input device such as, for example, a keyboard, a keypad, a touch-screen, a microphone, a camera and so on. Likewise, the one or more steps may include receiving, using the communication device, the one or more embodied characteristics from one or more biometric sensors.

Further, one or more steps of the method may be automatically initiated, maintained and/or terminated based on one or more predefined conditions. In an instance, the one or more predefined conditions may be based on one or more contextual variables. In general, the one or more contextual variables may represent a condition relevant to the performance of the one or more steps of the method. The one or more contextual variables may include, for example, but are not limited to, location, time, identity of a user associated with a device (e.g., the server computer, a client device, etc.) corresponding to the performance of the one or more steps, environmental variables (e.g., temperature, humidity, pressure, wind speed, lighting, sound, etc.) associated with a device corresponding to the performance of the one or more steps, physical state and/or physiological state and/or psychological state of the user, physical state (e.g., motion, direction of motion, orientation, speed, velocity, acceleration, trajectory, etc.) of the device corresponding to the performance of the one or more steps and/or semantic content of data associated with the one or more users. Accordingly, the one or more steps may include communicating with one or more sensors and/or one or more actuators associated with the one or more contextual variables. For example, the one or more sensors may include, but are not limited to, a timing device (e.g., a real-time clock), a location sensor (e.g., a GPS receiver, a GLONASS receiver, an indoor location sensor, etc.), a biometric sensor (e.g., a fingerprint sensor), an environmental variable sensor (e.g., temperature sensor, humidity sensor, pressure sensor, etc.) and a device state sensor (e.g., a power sensor, a voltage/current sensor, a switch-state sensor, a usage sensor, etc. associated with the device corresponding to performance of the or more steps).

Further, the one or more steps of the method may be performed one or more number of times. Additionally, the one or more steps may be performed in any order other than as exemplarily disclosed herein, unless explicitly stated otherwise, elsewhere in the present disclosure. Further, two or more steps of the one or more steps may, in some embodiments, be simultaneously performed, at least in part. Further, in some embodiments, there may be one or more time gaps between performance of any two steps of the one or more steps.

Further, in some embodiments, the one or more predefined conditions may be specified by the one or more users. Accordingly, the one or more steps may include receiving, using the communication device, the one or more predefined conditions from one or more and devices operated by the one or more users. Further, the one or more predefined conditions may be stored in the storage device. Alternatively, and/or additionally, in some embodiments, the one or more predefined conditions may be automatically determined, using the processing device, based on historical data corresponding to performance of the one or more steps. For example, the historical data may be collected, using the storage device, from a plurality of instances of performance of the method. Such historical data may include performance actions (e.g., initiating, maintaining, interrupting, terminating, etc.) of the one or more steps and/or the one or more contextual variables associated therewith. Further, machine learning may be performed on the historical data in order to determine the one or more predefined conditions. For instance, machine learning on the historical data may determine a correlation between one or more contextual variables and performance of the one or more steps of the method. Accordingly, the one or more predefined conditions may be generated, using the processing device, based on the correlation.

Further, one or more steps of the method may be performed at one or more spatial locations. For instance, the method may be performed by a plurality of devices interconnected through a communication network. Accordingly, in an example, one or more steps of the method may be performed by a server computer. Similarly, one or more steps of the method may be performed by a client computer. Likewise, one or more steps of the method may be performed by an intermediate entity such as, for example, a proxy server. For instance, one or more steps of the method may be performed in a distributed fashion across the plurality of devices in order to meet one or more objectives. For example, one objective may be to provide load balancing between two or more devices. Another objective may be to restrict a location of one or more of an input data, an output data and any intermediate data therebetween corresponding to one or more steps of the method. For example, in a client-server environment, sensitive data corresponding to a user may not be allowed to be transmitted to the server computer. Accordingly, one or more steps of the method operating on the sensitive data and/or a derivative thereof may be performed at the client device.

As an overview, the present disclosure describes systems and methods to facilitate the removal of excess material from a dental appliance. Further, the present disclosure may include a method by which the excess material remaining on a thermoformed aligner is trimmed to comply with patient anatomy. Further, the disclosed method utilizes a <NUM>-axis CNC machine to trim the excess material and using a milling or waterjet machining method of material removal.

There have been developed methods of correcting the position of misaligned teeth using dental trays fabricated in a manner that a given tray will itself exert a force upon the misaligned teeth to cause movement. Often these alignment trays are fabricated from a clear plastic material and are provided in a series such that each succeeding tray moves the teeth more or differently than the previous tray, in an incremental fashion so as to affect the prescribed treatment plan. Each tray, therefore, will move certain teeth from a starting or "before" position to a selected ending or "after" position. The "after" position is based solely upon the nature of the immediately previous "before" position. Further, the shape and force exerted by each successive aligner tray in the treatment process of the conventional system is based only upon the nature of where the previous tray left off in the moving of the teeth. There may be some target goal in mind as to where a dental professional wants to ultimately move the teeth, but until the very end of the patient's treatment procedure, this final position and the initial starting position do not affect the incremental or intermediate treatment steps.

A 3D CAD treatment planning software may be used to output a 3D CAD model of the lower and upper mandible for each phase of the treatment which includes initial position, final position and any number of intermediary teeth required specifically for the patient.

Further, the disclosed method may involve the identification of patient cases and all associated 3D CAD models. Identification methods can include the use of bar code, RFID code or other methods to identify the 3D CAD model and associated trim line for each aligner in the patient treatment plan.

Further, the disclosed method may allow for use of the pre-defined aligner trim line or in cases where the trim line is not defined, it can optionally be generated by special application software available within a system of the <NUM>-axis CNC machine.

Further, the system then may generate the <NUM>-axis CNC machining code (toolpath) necessary to drive a milling tool or waterjet head along the trim line, thereby removing the excess material that existed as part of the thermoforming operation. The <NUM>-axis toolpath contains X, Y, and Z linear positional points as well as A and B rotational angles to assure optimum machining angles and adherence to the <NUM>-axis CNC machines linear and rotational limits.

In addition to optionally generating the required trim line for the aligner and associated CNC machining code, the system also may verify the calculated CNC machine toolpath for potential collisions between any combination of machine components, model/aligner to be trimmed, cutting tool/waterjet assembly and fixture. The output motion commands also include determination and setting of appropriate spindle speeds, motion feed rates for linear and rotary motion as well as instructions for control of the waterjet machining parameters.

A special vacuum fixture is created to secure the model/aligner within the <NUM>-axis CNC machine and is automatically operated with the system. This fixture has specific "artifacts" to accurately locate the model/aligner in the <NUM>-axis CNC machine. Additionally, each 3D printed model may include identical "artifacts" in terms of size and position, to assure proper location on the machine vacuum fixture.

A System Operational Workflow can be either semi-automatic or automatic. All associated CAD models and trim line data files are identified and retrieved from a center depository/server in keeping with end-users' IT and network environment and infrastructure. An operator then loads the first model/aligner onto the machine fixture (utilizing alignment artifacts), manually starts the process by utilizing the machines cycle-start function. The associated toolpath is either calculated and verified in real-time or is retrieved from a server. The machine then machines the aligner, trimming the excess plastic. Once completed the machine stops allowing the operator to open the machine access door, remove the completed and trimmed model/aligner, replaces it with the next "model"/aligner in the case, closes the machine door, then starts the machine cycle-start function, wherein the vacuum system starts to secure the model/aligner, toolpath transferred, generated and verified run as with the first mode/aligner. This process is repeated for all models/aligners in the patients' plan.

Further, the system may also accommodate the use of a robot and a rail system to automatically load and unload the model/aligner and transfer it to a <NUM>-axis CNC machining cell, thereby eliminating the need for an operator to start and stop a cycle.

<FIG> is an illustration of an online platform <NUM> consistent with various embodiments of the present disclosure. By way of non-limiting example, the online platform <NUM> to facilitate the removal of excess material from a dental appliance may be hosted on a centralized server <NUM>, such as, for example, a cloud computing service. The centralized server <NUM> may communicate with other network entities, such as, for example, a mobile device <NUM> (such as a smartphone, a laptop, a tablet computer, etc.), other electronic devices <NUM> (such as desktop computers, server computers, etc.), databases <NUM>, sensors <NUM>, a CAM system <NUM>, and a multi-axis machine <NUM> (such as a <NUM>-axis CNC machine) over a communication network <NUM>, such as, but not limited to, the Internet. Further, users of the online platform <NUM> may include relevant parties such as, but not limited to, end-users and administrators. Accordingly, in some instances, electronic devices operated by the one or more relevant parties may be in communication with the online platform <NUM>.

A user <NUM>, such as the one or more relevant parties, may access the online platform <NUM> through a web-based software application or browser. The web-based software application may be embodied as, for example, but not be limited to, a website, a web application, a desktop application, and a mobile application compatible with a computing device <NUM>.

<FIG> is a flowchart of a method <NUM> to facilitate the removal of excess material from a dental appliance, in accordance with some embodiments. Accordingly, at <NUM>, the method <NUM> may include a step of printing a part model with a model identifier. Further, the part model may include a physical model that may be produced by utilizing a 3D printer. Further, the 3D printer may utilize a variety of 3D printing techniques and technologies.

Further, at <NUM>, the method <NUM> may include a step of transferring the part model to a vacuum station, and an aligner material may be formed over the part model. Further, the vacuum station may include a vacuum forming machine. Further, the aligner material may include an aligner tray. Further, the aligner tray may be created by vacuum thermoforming over the part model using a plastic thermoforming sheet and the vacuum forming machine. Further, the aligner tray may be removed from the part model.

Further, at <NUM>, the method <NUM> may include a step of transferring the aligner tray to a laser etching station. Further, the laser etching station may include a laser etching machine. Further, the aligner tray may be etched by an etching process.

Further, at <NUM>, the method <NUM> may include a step of identifying whether an NC code exists for the aligner tray. Further, if the NC code does not exist for the aligner tray, then the NC code is not processed further. Further, if the NC code exists for the aligner tray, then the NC code may be sent to a <NUM>-axis CNC machine.

Further, at <NUM>, the method <NUM> may include a step of developing a trim line on a digital model. Further, the trim line may be a line along which a trimming process of removal of excess plastic, that existed as a part of the thermoforming operation is performed. Further, the digital model may be a computer geometric model that may be a mathematical representation of an object's geometry. Further, the method <NUM> may include identification methods for a patient case and all associated 3D CAD models. Further, the identification methods may include the use of a bar code, an RFID code or other methods to identify the 3D CAD model and the trim line for each aligner tray in a patient treatment plan. Further, the trim line may be associated with a trim line data file. Further, in some embodiments, the method <NUM> may allow for use of a pre-defined aligner trim line. Further, the pre-defined aligner trim line may be optionally generated by an application software available within the CAM system.

Further, at <NUM>, the method <NUM> may include a step of submitting the trim line to the CAM system, wherein a toolpath may be developed and an NC code may be generated for machining tools. Further, the CAM system then may generate a <NUM>-axis CNC machining code necessary to drive a milling tool or a waterjet head along the trim line. Further, the <NUM>-axis CNC machining code may allow a <NUM>-axis toolpath for the milling tool. Further, the <NUM>-axis toolpath may include X, Y, and Z linear positional points as well as A and B rotational angles to assure optimum machining angles and adherence to the <NUM>-axis CNC machine's linear and rotational limits.

Further, at <NUM>, the method <NUM> may include a step of verifying the NC code. Further, the verification of the NC code may be accomplished in real-time during the trimming process. Further, the NC code associated with the trim line may be checked for motion errors and collisions. Further, the toolpath may be verified for potential collisions between any combination of machine components, cutting tool/waterjet assembly, the aligner tray to be trimmed, and fixture of the <NUM>-axis CNC machine. Further, the method <NUM> may include determination and setting of appropriate spindle speeds, motion feed rates for linear and rotary motion as well as instructions for controlling of waterjet machining parameters.

Further, at <NUM>, the method <NUM> may include a step of identifying whether the NC code passes the verification. Further, if the NC code does not pass the verification, the NC code may be evaluated for error detection and a correct NC code may be determined. Further, step <NUM> of the method <NUM> of developing the trim line may be repeated. Further, if the NC code passes the verification, the NC code is stored on a server in a customerspecific folder or a database. Further, the NC code may be sent to the <NUM>-axis CNC machine.

Further, at <NUM>, the method <NUM> may include a step of scanning the aligner tray and loading it into the <NUM>-axis CNC machine. Further, an operator may scan and load the aligner tray onto a vacuum fixture of the <NUM>-axis CNC machine. Further, the vacuum fixture may secure the aligner tray within the <NUM>-axis CNC machine. Further, the vacuum fixture may be automatically operated by the CAM system.

Further, at <NUM>, the method <NUM> may include a step of machining the aligner tray. Further, the 3D CAD model and trim line data file are identified and retrieved from a center depository/server. Further, the operator may manually start the process of trimming by utilizing a machine cycle-start function. Further, the machine cycle-start function may be a control button used to initiate the program. Further, the <NUM>-axis CNC machine may then trim the excess plastic from the aligner tray along the trim line, thereby removing the excess material that existed as a part of the thermoforming operation. Once the trimming process is completed, the machine may stop, thereby allowing the operator to open the <NUM>-axis CNC machine and access a machine door. Further, the aligner tray may be removed and may be replaced with the next aligner tray. Further, the operator may close the machine door and then start the machine cycle-start function, wherein the vacuum fixture may start to secure the aligner tray. Further, a verification run may be processed for the toolpath with the aligner tray. This process is repeated for all aligner trays. Further, the aligner tray may be transferred for postprocessing.

Further, in some examples, the system may accommodate a robot and a rail system to automatically load and unload the aligner tray and transfer it to a <NUM>-axis CNC machining cell, thereby eliminating the need for an operator to start and stop a cycle.

<FIG> illustrates a semi-automated aligner trim process, in accordance with some embodiments. Further, the semi-automated aligner trim process may include scanning of bar code associated with a 3D CAD model. Further, data associated with bar code may be stored in data centers. Further, the data may be retrieved by a <NUM>-axis CNC machine operated by an operator, who manually places the aligner tray for the trimming process. Further, the operator may initiate the machine cycle-start function in order to start the trimming process.

<FIG> is a side top perspective view of a thermoformed plastic aligner, in accordance with some embodiments.

<FIG> is a side top perspective view of a thermoformed plastic aligner on a model, in accordance with some embodiments.

<FIG> is a side top perspective view of a 3D CAD model showing a trim line on the 3D CAD model, in accordance with some embodiments.

<FIG> is a top view of a machining cell serviced by a robot, in accordance with some embodiments.

<FIG> is a rear top perspective view of an aligner tray showing a simulation of machining process, in accordance with some embodiments.

<FIG> is a front top perspective view of an aligner tray showing a simulation of machining process, in accordance with some embodiments.

<FIG> is a top perspective view of six <NUM>-axis CNC Machining Centers served by a robot, in accordance with some embodiments. Further, the robot may manage multiple machines or move appliance models from one operation to another from a thermo-former to the machine or from the machine to a deburring station.

<FIG> is a front view of a <NUM>-axis CNC machine showing a simulation of machining process, in accordance with some embodiments. Further, a simulation report associated with the machining process may be generated.

With reference to <FIG>, a system consistent with an example of the disclosure may include a computing device or cloud service, such as computing device <NUM>. In a basic configuration, computing device <NUM> may include at least one processing unit <NUM> and a system memory <NUM>. Depending on the configuration and type of computing device, system memory <NUM> may comprise, but is not limited to, volatile (e.g., random-access memory (RAM)), non-volatile (e.g., read-only memory (ROM)), flash memory, or any combination. System memory <NUM> may include operating system <NUM>, one or more programming modules <NUM>, and may include a program data <NUM>. Operating system <NUM>, for example, may be suitable for controlling computing device <NUM>'s operation. In one embodiment, programming modules <NUM> may include image-processing module, machine learning module and/or image classifying module. Furthermore, embodiments of the disclosure may be practiced in conjunction with a graphics library, other operating systems, or any other application program and is not limited to any particular application or system. This basic configuration is illustrated in <FIG> by those components within a dashed line <NUM>.

Computing device <NUM> may have additional features or functionality. For example, computing device <NUM> may also include additional data storage devices (removable and/or non-removable) such as, for example, magnetic disks, optical disks, or tape. Such additional storage is illustrated in <FIG> by a removable storage <NUM> and a non-removable storage <NUM>. Computer storage media may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer-readable instructions, data structures, program modules, or other data. System memory <NUM>, removable storage <NUM>, and non-removable storage <NUM> are all computer storage media examples (i.e., memory storage. ) Computer storage media may include, but is not limited to, RAM, ROM, electrically erasable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store information and which can be accessed by computing device <NUM>. Computing device <NUM> may also have input device(s) <NUM> such as a keyboard, a mouse, a pen, a sound input device, a touch input device, a location sensor, a camera, a biometric sensor, etc. Output device(s) <NUM> such as a display, speakers, a printer, etc. may also be included. The aforementioned devices are examples and others may be used.

Computing device <NUM> may also contain a communication connection <NUM> that may allow device <NUM> to communicate with other computing devices <NUM>, such as over a network in a distributed computing environment, for example, an intranet or the Internet. Communication connection <NUM> is one example of communication media. Communication media may typically be embodied by computer-readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and includes any information delivery media. The term computer-readable media as used herein may include both storage media and communication media.

As stated above, a number of program modules and data files may be stored in system memory <NUM>, including operating system <NUM>. While executing on processing unit <NUM>, programming modules <NUM> (e.g., application <NUM> such as a media player) may perform processes including, for example, one or more stages of methods, algorithms, systems, applications, servers, databases as described above. The aforementioned process is an example, and processing unit <NUM> may perform other processes.

Generally, consistent with embodiments of the disclosure, program modules may include routines, programs, components, data structures, and other types of structures that may perform particular tasks or that may implement particular abstract data types. Moreover, embodiments of the disclosure may be practiced with other computer system configurations, including hand-held devices, general-purpose graphics processor-based systems, multiprocessor systems, microprocessor-based or programmable consumer electronics, application-specific integrated circuit-based electronics, minicomputers, mainframe computers, and the like. Embodiments of the disclosure may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.

Embodiments of the disclosure may also be practiced using other technologies capable of performing logical operations such as, for example, AND, OR, and NOT, including but not limited to mechanical, optical, fluidic, and quantum technologies. In addition, embodiments of the disclosure may be practiced within a general-purpose computer or in any other circuits or systems.

Embodiments of the disclosure, for example, may be implemented as a computer process (method), a computing system, or as an article of manufacture, such as a computer program product or computer-readable media. The computer program product may be a computer storage media readable by a computer system and encoding a computer program of instructions for executing a computer process. The computer program product may also be a propagated signal on a carrier readable by a computing system and encoding a computer program of instructions for executing a computer process. Accordingly, the present disclosure may be embodied in hardware and/or in software (including firmware, resident software, micro-code, etc.). In other words, embodiments of the present disclosure may take the form of a computer program product on a computer-usable or computer-readable storage medium having computer-usable or computer-readable program code embodied in the medium for use by or in connection with an instruction execution system. A computer-usable or computer-readable medium may be any medium that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.

The computer-usable or computer-readable medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium. More specific computer-readable medium examples (a non-exhaustive list), the computer-readable medium may include the following: an electrical connection having one or more wires, a portable computer diskette, a random-access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, and a portable compact disc read-only memory (CD-ROM).

Embodiments of the present disclosure, for example, are described above with reference to block diagrams and/or operational illustrations.

For example, two blocks shown in succession may, in fact, be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending upon the functionality/acts involved.

Claim 1:
A method of removing excess material from a dental appliance, the method comprising the steps of:
(A) providing at least one <NUM>-axis computer numerical control (CNC) machine (<NUM>) and at least one administrator computing system (<NUM>), wherein the <NUM>-axis CNC machine (<NUM>) includes an automated tool (<NUM>) (<NUM>);
(B) providing at least one three-dimensional (3D) model managed by the administrator computing system (<NUM>), wherein the 3D model is a virtual representation of at least one dental appliance (<NUM>);
(C) executing a line assessment process by the administrator computing system (<NUM>) by outputting a trim line with the line assessment process, wherein the 3D model and the dental appliance are each delineated into a useful portion and at least one excess portion by the trim line (<NUM>);
(D) generating a tool path for the automated tool (<NUM>) in accordance to the trim line and the 3D model by administrator computing system (<NUM>);
(E) relaying the tool path from the administrator computing system (<NUM>) to the <NUM>-axis CNC machine (<NUM>) (<NUM>);
(F) loading the dental appliance into the <NUM>-axis CNC machine (<NUM>) (<NUM>);
(G) machining the dental appliance along the trim line with the automated tool (<NUM>), while guiding the automated tool (<NUM>) along the tool path with the <NUM>-axis CNC machine (<NUM>) (<NUM>);
(H) unloading the useful portion of the dental appliance as a finished product from the <NUM>-axis CNC machine (<NUM>) (<NUM>); and
executing steps (A) through (H) as a sequential set of automative steps.