Patent Description:
Stylus tools are used in part manufacturing processes to form parts from metal. For example, in incremental sheet forming processes, the stylus tool is pressed against the metal sheet as the stylus tool is moved in three-dimensional space to form the part. Known stylus tools are spherical stylus tools having forming surfaces that are hemispherical with a cross-section that is a semicircle. However, known stylus tools are not without disadvantages. For instance, known stylus tools can generate significant "oil canning" (curled areas adjacent to the contact points) due to the large forces at the contact points with the metal sheet and the shape of the forming surfaces.

Standard methods for calculating toolpaths for stylus tools, are, in general, computationally expensive and time consuming to perform. For example, discrete Minkowski sums can be used to generate offset surfaces from which toolpaths are derived, which are computationally expensive and time consuming to perform.

<CIT> discloses an effect of discharging chips from gashes and an effect of guiding them to flutes are enhanced, when a multi-flute endmill having gashes and flutes is used to perform high-speed and high-feed cutting processing on a thin-walled member of an impeller or the like made of a difficult-to-cut alloy. The rake face of a cutting edge is formed, from the side of a rotation axis O to a peripheral side in a radial direction, with the rake face of a end cutting edge, and the rake face of a peripheral cutting edge that is adjacent to the rake face of the end cutting edge, that forms a face different from the rake face of the end cutting edge and that also serves as the rake face of a corner R edge, and the intersection between a convex ridge line located in a boundary between the rake face of the end cutting edge and the rake face of the peripheral cutting edge and a convex ridge line located in a boundary between the rake face of the end cutting edge and the bottom surface of the flute is moved into the side of the rotationaxis O in the radial direction with respect to a boundary between the flank face of the corner R edge and the flank face of the end cutting edge.

<CIT> discloses a process of generating a succession of discrete points to be followed by a cutter, so as to move the cutter along a desired cutter path, including a step of calculating a space interval of the discrete points in the direction of the succession on the basis of a curvature radius of the desired cutter path, according to a relationship among the curvature radius, the space interval and movement velocity of the cutter, such that the movement velocity is enlarged as much as possible, and a step of generating the discrete points on the basis of the space interval, such that the discrete points are spaced apart from each other by a distance equal to the space interval in the direction of the succession.

The claimed invention is defined by the technical features and the method steps set forth in independent product claim <NUM> and independent method claim <NUM>, respectively; additional features are disclosed in the dependent claims.

There is described, a stylus tool for forming a part is provided. The tool includes a tool body extending between a shank and a head. The shank is configured to be coupled to a collet. The head extends between a base at the shank and a tip. The head has a forming surface between the base and the tip. The forming surface is an axisymmetric surface generated by rotating a curved profile around the axis of the stylus shank, whereby the curved profile has a curvature which increases linearly with path length from the tip.

As further described, a router tool for milling a part is provided. The tool includes a tool body extending between a shank and a head. The shank is configured to be coupled to a collet. The head extends between a base at the shank and a tip. The head has a cutting surface between the base and the tip. The cutting surface is enveloped by an axisymmetric surface generated by rotating a curved profile around the axis of the tool shank, whereby the curved profile has a curvature which increases linearly with path length from the tip.

As further described, a toolpath generation method using a toolpath generation module of a part forming machine, or milling machine, for generating a toolpath using a stylus tool, or router, is provided. The toolpath generation method includes inputting a part shape of a part to be formed or milled. The method inputs a tool shape of the tool based on a forming or cutting surface of a head of the tool between a tip of the head and a base of the head. The tool shape from the tip to the head is generated by rotating a smooth curve profile, around the axis of the tool shank, such that a convex tool head is produced.

As further described, a toolpath generation method uses a toolpath generation module of a part forming or milling machine, for forming (using a stylus tool) or milling (using a router), for generating a toolpath. The toolpath generation method includes inputting a part shape of a part to be manufactured. The method inputs a tool shape of the tool based on a forming or cutting surface of a head of the stylus or router tool between a tip of the head and a base of the head defined by a curved profile. The curved profile is differentiable and bounds a convex region. The forming surface is axisymmetric for forming of the part, or the cutting surface is axisymmetric for the cutting of the part. The method inputs a tool size of the base of the head of the stylus tool. The method determines a tool offset surface for the part shape based on the tool shape and the tool size and generates the toolpath for forming or cutting the part based on the tool offset surface and the part shape.

As further described, a <NUM>-axis computer numerical controlled machine is provided. This machine can be programmed for milling or for forming. The machine includes a collet being moved by a tool positioner in a three dimensional working space. A controller is operably coupled to the tool positioner for controlling a position of the collet in the working space. The controller includes a toolpath generation module for generating a toolpath for forming or milling of a part. A tool is coupled to the collet and moved with the collet for forming or milling the part. The tool includes a tool body extending between a shank and a head. The shank is coupled to the collet. The head extends between a base at the shank and a tip. The head has a forming or cutting surface between the base and the tip. The forming or cutting surface is axisymmetric for forming or milling of the part. The forming or cutting surface is defined by a curved profile being differentiable and bounding a convex region. The toolpath generation module determines the toolpath for the forming or milling tool based on a tool shape of the tool defined by the forming or cutting surface.

As further described, a <NUM>-axis computer numerical controlled machine is provided. The machine includes a collet being moved by a tool positioner in a three dimensional working space. A controller is operably coupled to the motor for moving the tool positioner for controlling a position of the collet in the working space. The controller includes a toolpath generation module for generating a toolpath for forming or milling of a part. A stylus or cutting tool is mounted in the collet and moved with the collet for forming or milling the part. The tool includes a tool body extending between a shank and a head. The shank is mounted in the collet. The head extends between a base at the shank and a tip. The head has a forming or cutting surface between the base and the tip. The forming surface or cutting surface is axisymmetric for forming or milling of the part. The forming or cutting surface is defined by rotating a curved profile which is smooth around the axis of the tool shank, such that the tool head bounds a convex region. The toolpath generation module determines the toolpath for the tool based on a tool shape of the tool defined by the forming or cutting surface.

As further described, the shape of the forming or cutting surface of the tool is defined by rotating a parametrically defined curve, such that the radius (distance from the axis of rotation) and height (distance along the axis from the tool tip) are smooth functions of a single parameter, that bounds a convex region, around some axis. For example, an elliptical head can be defined such that the radius is given by r(t) = sin(t), and the height is given by z(t) = <NUM> cos(t), for <NUM> < t < pi/<NUM>.

<FIG> illustrates a part forming machine <NUM> for forming a part <NUM> by forming using a stylus tool <NUM> in accordance with an embodiment. In various embodiments, the part forming machine <NUM> may be an incremental sheet forming machine forming the part by an incremental sheet forming process; however, other types of machines may be provided using other manufacturing processes, such as shear spinning, or milling, in alternative embodiments. The part forming machine <NUM> includes a controller <NUM> controlling operation of other components of the part forming machine <NUM>. The controller <NUM> includes a computer <NUM> includes a user interface <NUM> coupled to the computer <NUM>. The user interface <NUM> includes a display <NUM> and a user input <NUM>, such as a keyboard, mouse, or other user input device. The controller <NUM> includes a toolpath generation module <NUM> for generating a toolpath for forming the part <NUM> during a forming process. The part forming machine may be a CNC machine in various embodiments. The part forming machine <NUM> may use a backing support or die to support the part during forming. The backing support may be a female support die or a male support die, as in two point incremental sheet forming. In other various embodiments, the part forming machine <NUM> may use no backing support die, as in single incremental sheet forming. The part forming machine may be used for dual sided incremental sheet forming, using two stylus tools <NUM>.

The part forming machine <NUM> includes a collet <NUM> holding the stylus tool <NUM>. The collet <NUM> may hold the stylus tool <NUM> in a vertical orientation; however, the collet may hold the stylus tool <NUM> in other orientations in alternative embodiments, such as horizontally. The collet <NUM> may be located above the part for forming the part from above. However, the collet <NUM> may be located below the part for forming the part from below in alternative embodiments. In various embodiments, the collet <NUM> may be rotatable. For example, the collet <NUM> may be coupled to a spindle that is rotated by a motor <NUM>. The motor <NUM> is operably coupled to the controller <NUM> and may be controlled based on inputs from the controller <NUM>, such as to control ON/OFF, rotation speed, rotation direction, and the like. The motor <NUM> may be a stepper motor, a servo motor, or another type of motor. In alternative embodiments, the stylus tool <NUM> is a non-rotating stylus tool. In such embodiments, the part forming machine <NUM> may be provided without the motor <NUM>. In further embodiments, the stylus tool <NUM> may be a cutting tool, such as a router for milling.

The part forming machine <NUM> includes a tool positioner <NUM> operated to move the collet <NUM> and the stylus tool <NUM> in a three dimensional working space for forming the part <NUM>. In an embodiment, the tool positioner <NUM> includes an X-positioner <NUM>, a Y-positioner <NUM>, and a Z-positioner <NUM>. For example, the X-positioner <NUM> may be a saddle or carriage slidable on rails to position the motor <NUM> and the collet <NUM> in an X-direction, the Y-positioner <NUM> may be a saddle or carriage slidable on rails to position the motor <NUM> and the collet <NUM> in a Y-direction, and the Z-positioner <NUM> may be a saddle or carriage slidable on rails to position the motor <NUM> and the collet <NUM> in a Z-direction. Other types of tool positioners <NUM> may be used in alternative embodiments. For example, the tool positioner <NUM> may be a multi-axis positioner, such as a robot arm, in other various embodiments. The tool positioner <NUM> is operably coupled to the controller <NUM> and may be controlled based on a toolpath generated by the toolpath generation module <NUM>.

The stylus tool <NUM> includes a tool body <NUM> extending between a shank <NUM> and a head <NUM>. The shank <NUM> and the head <NUM> may be an integral structure. The shank <NUM> and the head <NUM> extend along a tool axis <NUM>. The shank <NUM> is mounted in the collet <NUM>. The shank <NUM> has a shank diameter configured to be loaded into the collet <NUM>. The head <NUM> extends between a base <NUM> at the shank <NUM> and a tip <NUM>. The tip <NUM> is provided at the bottom of the tool body <NUM> along the tool axis <NUM>. The base <NUM> has a shaft diameter, which may be equal to the shank diameter or may be larger or smaller than the shank diameter.

The head <NUM> has a forming surface <NUM> between the base <NUM> and the tip <NUM>. The forming surface <NUM> is pressed against the sheet as the stylus tool is moved along a toolpath to form the part. The surface <NUM> may be a cutting surface used for cutting the part, such as in a milling process. The cutting surface is enveloped by an axisymmetric surface generated by rotating a curved profile around the axis of the tool shank. The forming surface <NUM> is defined by a curved profile <NUM>. For example, the forming surface <NUM> is a surface of revolution generated by revolving the curved profile <NUM> around the axis <NUM>. The curved profile <NUM> is differentiable (e.g., smooth). The curved profile <NUM> may be continuous. The curved profile <NUM> may be uninterrupted. The curved profile <NUM> bounds a convex region of the head <NUM>. The forming surface <NUM> is axisymmetric about the tool axis <NUM>. In an embodiment, the curved profile <NUM> has a curvature changing linearly with a curve length of the curved profile <NUM> of the forming surface <NUM>. The curved profile <NUM> may have a decreasing radius of curvature from the tip <NUM> to the base <NUM>. For example, the curved profile <NUM> may be part of a clothoid. The curved profile <NUM> may be defined by an equation R*L=A, where R is radius of curvature, L is length along the curve length and A is a scale factor. In various embodiments, the curve profile <NUM> is non-circular. For example, the curved profile <NUM> may be part of a filleted rectangle, or generated by parabolic, elliptical, cycloidal curves, or may be defined by other non-circular shapes, such as a power law curve, and the like. Some non-hemispherical tools can improve the overall geometric accuracy of formed parts. In an embodiment, the part forming machine <NUM> uses stylus tools defined by a shape having a parametric profile. The part forming machine <NUM> is configured to use different types of stylus tools <NUM> having forming surfaces <NUM> generated from different profile curves <NUM> (for example, different shape and different size). The part forming machine <NUM> is able to generate toolpaths for the various different style of stylus tools <NUM>. According to the claimed invention, the curve is delayed from the tool axis <NUM>, such as including a flat surface at the tip <NUM> before transitioning into the curved profile <NUM>. The curved profile <NUM> extends between the flat surface and the base <NUM>.

The toolpath generation module <NUM> generates a toolpath for forming of the part <NUM> using the stylus tool <NUM>. The toolpath is based on the shape of the part <NUM> being formed. The toolpath is based on the size and shape of the forming surface <NUM> of the stylus tool <NUM>. The size and shape of the forming surface <NUM> may be selected to improve the part geometry of the part <NUM>, such as selected to reduce or minimize "oil canning" and spring back effects commonly observed in incremental sheet forming processes. The size and shape of the forming surface <NUM> may be selected based on the shape of the part <NUM>, such as the slope of the surfaces of the part <NUM>, the curvature of the surfaces of the part <NUM>, and the like.

The toolpath generation module <NUM> includes a tool shape input <NUM>, a tool size input <NUM>, and a part shape input <NUM>. The toolpath generation module <NUM> may include other inputs, such as a tip curve delay input <NUM>, a sheet thickness input <NUM>, a feedrate input <NUM>, a toolpath direction input <NUM>, a toolpath step size input <NUM>, or other inputs. The toolpath generation module <NUM> determines a tool offset surface for the stylus tool <NUM> from the desired part shape. The tool offset surface may be affected by the tool shape, the tool size, the thickness of the sheet, and the like.

The tool shape input <NUM> is based on the shape of the curved profile <NUM> used to define the forming surface <NUM> of the stylus tool <NUM>. The tool shape input <NUM> may include a menu of different tool shapes, which may be selected by the user at the user interface <NUM>, or may include an input into a text box at the user interface <NUM>. For example, the tool shapes may be selected from a list of tool shapes including those generated by rotating part of a circle, part of a clothoid, part of a filleted rectangle, part of a parabola, part of a power law curve, part of an ellipse, or other smooth curves that bound convex regions. The toolpath generation module <NUM> includes mathematical formulae associated with the tool shape, which is used to generate the toolpath. This mathematical formulae may be implicit, explicit, parametric, or the like.

The tool size input <NUM> is based on the size of the forming surface <NUM> of the stylus tool <NUM>. The tool size input <NUM> may include a menu or input box to identify the tool size of the stylus tool <NUM>. For example, the tool size may be based on the diameter of the stylus tool <NUM>, such as at the base <NUM>. The base <NUM> may be cylindrical in various embodiments. The base <NUM> may be filleted or have other shapes to transition to the shank <NUM>. The base <NUM> may have a different shape (for example, surface of revolution generated from the curve tangent to the profile curve at the end of the forming surface <NUM>) compared to the tool shape and thus defines a transition region between the forming surface <NUM> and the shank <NUM>. The base <NUM> is not used for part forming. The mathematical formulae associated with the tool shape (for example, variables, constants, equations, and the like) affect the tool size. For a given tool shape (for example, spherical, clothoid, and the like) the tool size affects the curvature of the curved profile <NUM>.

The part shape input <NUM> is based on the geometry of the part <NUM> being formed. The part shape input <NUM> may be based on design specifications for the part <NUM>. The part shape may be a digital file of an object generated by a design program, such as a computer aided design (CAD) program. The part shape input <NUM> may include a file selection, such as a file directory or browser to select the part shape. The part shape input <NUM> may include an orientation selection, such as to select the orientation of the part, such as relative to a horizontal plane. The orientation selection may define the top of the part, the bottom of the part, sides of the part, and the like. The orientation selection may be based on the part being formed from an interior or an exterior of the part <NUM>.

The tip curve delay input <NUM> is based on the tip <NUM> having a flat surface at the tip <NUM>. As such, the curved profile <NUM> is delayed at the tip <NUM>. The tip curve delay input <NUM> may be a distance, such as half a width of the shank <NUM>, which is a selection from a menu or an input into a text box at the user interface <NUM>.

The sheet thickness input <NUM> affects the tool offset determined by the toolpath generation module <NUM> to generate the toolpath. The sheet thickness input <NUM> may be a distance. The sheet thickness input <NUM> may be a selection from a menu or an input into a text box at the user interface <NUM>.

The feedrate input <NUM> may affect the forming process. The feedrate input <NUM> is the speed at which the tool moves along the toolpath. The feedrate input <NUM> may be expressed in mm per minute, for example. The feedrate input <NUM> may be a selection from a menu or an input into a text box at the user interface <NUM>.

The toolpath direction input <NUM> is used by the toolpath generation module <NUM> to generate the toolpath. The forming process may be a continuous process to form the part <NUM>. The forming process may be performed in layers. The toolpath direction input <NUM> may define the toolpath flow from the start to the finish of part forming. The toolpath direction input <NUM> may include different types of forming paths, such as a discrete (for example, stepped) type of forming, a spiral type forming, and the like. In various embodiments, the toolpath direction may be altered or changed for each of the steps to counteract twisting effects created by the forming process. The toolpath direction input <NUM> may be a selection from a menu or an input into a text box at the user interface <NUM>.

The toolpath step input <NUM> may define a distance between the steps or layers of the part forming. The toolpath step input <NUM> may be a distance. The toolpath step input <NUM> may be a selection from a menu or an input into a text box at the user interface <NUM>.

<FIG> illustrates a portion of the part forming machine <NUM> showing the stylus tool <NUM> in accordance with an embodiment. <FIG> illustrates a portion of the part forming machine <NUM> showing the stylus tool <NUM> in accordance with an embodiment. The stylus tools <NUM> shown in <FIG> have the same tool shape; however, the stylus tools <NUM> have different tool sizes. The stylus tool <NUM> shown in <FIG> has a larger shaft diameter of the base <NUM> compared to the shaft diameter of the base <NUM> of the stylus tool <NUM> shown in <FIG>. The shanks <NUM> of the stylus tools <NUM> are shaped differently to transition to the collet <NUM>. The curved profiles <NUM> that generate the forming surface <NUM> have different curve lengths between the tips <NUM> and the bases <NUM>. The curve lengths are dependent on the tool shape and the tool size.

<FIG> illustrates a set <NUM> of stylus tools <NUM> in accordance with an embodiment. In the illustrated embodiment which is not part of the claimed subject-matter, the set <NUM> includes four stylus tools, including a first stylus tool 200a, a second stylus tool 200b, a third stylus tool 200c, and a fourth stylus tool 200d. The stylus tools 200a, 200b, 200c, 200d have the same tool shape; however, the stylus tools <NUM> have different tool sizes. The first stylus tool 200a has a first shaft diameter 211a of the base 210a. The second stylus tool 200b has a second shaft diameter 211b of the base 210b. The third stylus tool 200c has a third shaft diameter 211c of the base 210c. The fourth stylus tool 200d has a fourth shaft diameter 211d of the base 210d. The shank <NUM> of each stylus tool <NUM> may have the same shank diameter for interfacing with the collet <NUM> (shown in <FIG>). The curved profiles 222a, 222b, 222c, 222d that are used to generate the forming surfaces have different curve lengths 214a, 214b, 214c, 214d between the tips 212a, 212b, 212c, 212d and the bases 210a, 210b, 210c, 210d of the stylus tools 200a, 200b, 200c, 200d, respectively.

<FIG> illustrates a portion of the stylus tool <NUM> in accordance with an embodiment which is not part of the claimed subject-matter. <FIG> illustrates the forming surface <NUM> of the stylus tool <NUM>. The forming surface <NUM> is defined by the curved profile <NUM> between the tip <NUM> at the tool axis <NUM> and the base <NUM> (shown in phantom). The curved profile <NUM> is a generating curve rotated about the tool axis <NUM> to define the shape of the forming surface <NUM>. In an embodiment, the forming surface <NUM> is non-hemispherical. In an embodiment, the curved profile <NUM> is defined by parametric equations having an X-parametric component (radial component) and a Y-parametric component (vertical component).

In the illustrated embodiment, the curved profile <NUM> is defined by a clothoid <NUM>. The parametric equations of the curved profile <NUM> are given by the Fresnel integrals. The curved profile <NUM> has a curvature changing linearly with a curve length of the curved profile <NUM> of the forming surface <NUM>. The curved profile <NUM> has a decreasing radius of curvature from the tip <NUM> to the base <NUM>. For example, the radius of curvature at the tip <NUM> (for example, at point <NUM>) is larger than the radius of curvature at the end of the curved profile <NUM> (for example, at point <NUM>). The radius of curvature of the curved profile <NUM> at the tip <NUM> may be considered infinite (for example, flat) at the tip <NUM> in the case of a clothoid. The forming surface <NUM> resulting from a clothoid profile that is flatter at the bottom than a hemispherical stylus tool of the same shaft diameter. In an embodiment, the curved profile <NUM> may be defined by an equation R*L=A, where R is radius of curvature, L is the curvilinear distance along the curved profile <NUM> from the point <NUM> and A is a scale factor.

<FIG> illustrates a portion of the stylus tool <NUM> in accordance with an embodiment according to the claimed subject-matter. <FIG> illustrates the forming surface <NUM> of the stylus tool <NUM> in accordance with an embodiment. The forming surface <NUM> is defined by the curved profile <NUM> between the tip <NUM> and the base <NUM> (shown in phantom). In the illustrated embodiment, the tip <NUM> is flat. The tip <NUM> includes a flat surface <NUM>. The curved profile <NUM> is delayed or spaced apart from the tool axis <NUM>. For example, the curved profile <NUM> is translated radially outward by a small distance to form the flat surface <NUM> at the bottom of the tool. In an embodiment, the curved profile <NUM> is defined by the clothoid <NUM>, which is used to generate the forming surface <NUM> (e.g., surface of revolution about the axis <NUM>). The curved profile <NUM> extends between the flat surface <NUM> and the base <NUM>. The curved profile <NUM> has a decreasing radius of curvature from the flat surface <NUM> to the base <NUM>. For example, the curved profile <NUM> has a radius of curvature which increases from a finite value at the base <NUM> to become infinitely large at the flat surface <NUM>.

<FIG> illustrates a set 201p of stylus tools 200p in accordance with an embodiment, which is not part of the claimed subject-matter, having a different tool shape than the stylus tools <NUM> illustrated in <FIG>. In the illustrated embodiment, the forming surface <NUM> of the stylus tools 200p have a parabolic shape. The forming surfaces <NUM> are defined by the curved profiles <NUM> between the tip <NUM> and the base <NUM>. The set 201p includes two stylus tools, both having parabolic shaped curved profiles <NUM> having different shaft diameters at the bases <NUM>. The curved profiles <NUM> have different curve lengths <NUM>, which depend on the tool shape and the tool size. The parabolic stylus tools 200p have different focal lengths, which define the different curved profiles <NUM> and thus the different forming surfaces <NUM>.

<FIG> illustrates a method of generating a toolpath using the toolpath generation module <NUM> of the part forming machine <NUM>. The toolpath is used for forming the part <NUM> by a manufacturing process (for example, forming or milling) using the stylus tool <NUM>. The toolpath generation module <NUM> performs various steps identified in the flow chart to generate a toolpath from forming the part.

At <NUM>, a part shape is input into the toolpath generation module <NUM>. The part shape is a target geometry and orientation of the part <NUM> to determine the shape of the part being formed. The toolpath generation module <NUM> may receive a set of contact points (for example, part of the geometry or the entire geometry). The set of contact points may be on planes corresponding to the spirals or steps used for forming the part. The part shape may be input by uploading or selecting a digital file of an object generated by a design program, such as a computer aided design (CAD) program.

At <NUM>, a tool shape and size is input into the toolpath generation module <NUM>. The tool shape is based on the forming surface <NUM> of the curved profile <NUM> of the stylus tool <NUM>. The forming surface <NUM> is axisymmetric. The curved profile <NUM> of the forming surface <NUM> is differentiable and bounds a convex region. The toolpath generation module <NUM> determines a sheet offset surface by offsetting the part shape normally by a prescribed distance. In some embodiments, for example sheet forming operations, this distance may be equal to the thickness of the blank sheet. In other embodiments such as milling this distance may be zero such that no offset from part <NUM> occurs. The particular stylus tool <NUM> used in the part forming processes may be selected to improve the geometric accuracy and/or the surface finish of the part <NUM>. For example, the stylus tool is selected to provide a tool shape that reduces or minimizes "oil canning" spring back effects commonly observed in incremental sheet forming processes. The tool shape may be selected based on the shape of the part <NUM>, such as the slope of the surfaces of the part <NUM>, the curvature of the surfaces of the part <NUM>, and the like. The tool shape may be based on the forming surface of the stylus tool <NUM>. The tool shape may be based on the shape of the curved profile. The tool shape may be input into the tool shape input <NUM> of the toolpath generation module <NUM>. The tool shape may be input by selecting a tool shape from a menu of different tool shapes, which may be selected at the user interface <NUM>. For example, the tool shapes may be selected from a list of tool shapes including part of a circle, part of a clothoid, part of a filleted rectangle, part of a parabola, part of a power law curve, part of an ellipse, or other smooth curves that bound convex regions. The tool shape may be input into a text box at the user interface <NUM>. The tool shape may be input by inputting a mathematical formula associated with the tool shape into the tool shape input <NUM>. The tool size may be based on a diameter of a portion of the stylus tool <NUM>, such as the diameter of the base <NUM>. The tool size may be based on the diameter of the head at the uppermost boundary of the forming surface <NUM>. The tool size may be input into the tool size input <NUM> of the toolpath generation module <NUM>. The tool size may be input by selecting a tool size from a menu of differ tool sizes, which may be selected at the user interface <NUM>. For example, the tool sizes may be selected from a list (for example, small, medium, large) or may be selected from a dropdown menu of sizes (for example, <NUM>, <NUM>, etc.) The tool size may be input into a text box at the user interface <NUM>. The tool size may affect the mathematical formula associated with the tool shape, such as by affecting constants used within the mathematical formula.

At <NUM>, the toolpath generation module <NUM> picks a new contact point <NUM> on the sheet offset surface. At <NUM>, the toolpath generation module <NUM> calculates the slope of the surface in a vertical plane <NUM> that contains the normal to part <NUM> at the contact point <NUM>. The intersection of the surface and the intersecting plane defines the part curve <NUM> and the slope calculated is the slope of the part curve at the point of interest.

At <NUM>, the toolpath generation module <NUM> determines a point on the curved profile <NUM> of the stylus tool <NUM> having the same slope as the part curve <NUM> at the contact point <NUM>. At <NUM>, the toolpath generation module <NUM> calculates the tool offset vector within vertical plane <NUM> corresponding to having the calculated point on the curved profile <NUM> and the current contact point <NUM> on the sheet offset surface coincide. Adding the tool offset vector to the contact point <NUM> defines a single point on the tool offset surface. This point may be offset from the contact point in a direction normal to the part geometry by an amount equal to the radial offset component of the corresponding point on the curved profile <NUM> as well as being offset vertically by an amount equal to the vertical offset of the corresponding point on the curve profile <NUM>. The tool offset surface is defined by the set of all points computed in this way from all possible contact points <NUM> on the surface of part <NUM>. As there are an infinite amount of possible contact points on the part geometry, the tool offset surface is approximated by choosing a plurality of contact points <NUM> with the surface defined by interpolation through these points. In some embodiments, the contact points may be the entire set of points in a discretized mesh representation of the geometry of the formed or milled surface of part <NUM>. In an alternative embodiment the contact points may be spaced apart at predetermined intervals across the part, such as every <NUM> apart forming a grid of contact points along the surface of the part <NUM>. The tool offset surface defines offset positions for locating a reference point of the stylus tool <NUM> for forming or milling of the part <NUM>. The reference point of the stylus tool <NUM> may be a fixed point of the stylus tool <NUM>, such as the tip of the stylus tool <NUM>; however, the reference point may be at another location in alternative embodiments. In various embodiments such as those relating to Incremental Sheet Forming, the tool offset surface may be determined by first adding a fixed normal offset at each contact point <NUM>, based on the initial sheet thickness of the sheet used for forming the part. This initial sheet thickness offset vector is then added to the tool offset vector to define a point on the tool offset surface.

At <NUM>, the toolpath generation module <NUM> determines if all of the chosen contact points <NUM> have been processed. At <NUM>, when all of the contact points have not been processed, the toolpath generation module <NUM> returns to step <NUM> to pick a new contact point. At <NUM>, when all of the contact points have been analyzed, the toolpath generation module <NUM> outputs the tool offset positions for each of the contact points as a dataset defining the tool offset surface for forming the part. At <NUM>, the toolpath generation module <NUM> generates a toolpath by defining a path on the tool offset surface. The toolpath generated by the toolpath generation module <NUM> may be continuous from the start of the process to the end of the process, as in the case of a spiral toolpath. In alternative embodiments the toolpath generated by the toolpath generation module <NUM> may be a plurality of contour paths generated by taking slices of the tool offset surface at specific values of the Z coordinate in order to produce a Z level toolpath. In further embodiments, the toolpath generated by the toolpath generation module <NUM> may be a plurality of contour paths generated by taking slices of the tool offset surface at specific values of the X or Y coordinate values, or any linear combination of these values, in order to produce a lace (zigzag) toolpath.

In various embodiments, the toolpath generation module <NUM> is configured to generate a toolpath from the surface of the part <NUM> by generating an appropriate offset with reduced 3D processing compared to conventional toolpath generation algorithms. In various embodiments, the toolpath generation module <NUM> may operate using assumptions to simplify the calculation of the tool offset point from the target surface of the part. For example, the toolpath generation module <NUM> may use the assumption that the forming surface <NUM> of the stylus tool <NUM> is axisymmetric, which allows for solving the tool offset surface for a given point to be done in two-dimensional space, reducing the algorithmic complexity while increasing the efficiency of the tool-path generation. The toolpath generation module <NUM> may use the assumption that the curved profile <NUM> is differentiable and bounds a convex region in the plane. In various embodiments, the toolpath generation module <NUM> may generate the toolpath for a discretely defined forming surface (for example, using a discrete set of points to define the generating curve) and/or a parametrically defined forming surface.

<FIG> illustrates a model of the stylus tool positioned in relation to part <NUM> in accordance with an embodiment. The dashed lines <NUM> show traces of the contact points. <FIG> is an enlarged view of a portion of the model of the stylus tool positioned in relation to part <NUM> in accordance with an embodiment. The toolpath <NUM> is used for forming the part <NUM> using the stylus tool <NUM>. The stylus tool <NUM> follows the toolpath <NUM>. The toolpath <NUM> is specific to the part <NUM> being formed. The dashed lines <NUM> show traces of the contact points as the tool <NUM> follows the toolpath <NUM>. The toolpath is located at a tool offset surface <NUM> from the part <NUM>. The tool offset surface <NUM> may be defined relative to the tip <NUM> of the stylus tool <NUM>. The tool offset surface <NUM> is based on the shape of the stylus tool <NUM>. The tool offset surface <NUM> is based on the slope and surface normal of the part at the contact points. The tool offset surface <NUM> is also based on the sheet thickness of the sheet used for forming the part <NUM>. Points on the tool offset surface <NUM> may be shifted in an X direction and/or a Y direction and/or a Z direction from the contact point <NUM>.

<FIG> illustrates a model of the toolpath <NUM> for the part <NUM> in accordance with an embodiment. The toolpath generation module <NUM> identifies a plurality of contact points <NUM> on the part. At each contact point <NUM>, the toolpath generation module <NUM> defines a vertical plane <NUM> that contains the normal to part <NUM> at contact point <NUM> to define a part curve <NUM> of the part within the vertical plane. The toolpath generation module <NUM> may identify multiple points of contact along the part curve <NUM>.

<FIG> is a graph showing tool offset surface determined by the toolpath generation module <NUM> in accordance with an embodiment. <FIG> illustrates the part curve <NUM> and the stylus tool <NUM> at the tool offset position for forming the part. To determine a point on the tool offset surface, the toolpath generation module <NUM> calculates a derivative of the part curve <NUM> at the contact point <NUM>. The toolpath generation module <NUM> determines a tool contact point <NUM> on the profile curve <NUM> of the stylus tool <NUM> such that the corresponding point on the part curve <NUM> has the same derivative value as the corresponding contact point <NUM>. The stylus tool position for forming the part <NUM> at the contact point <NUM> is at the tool offset position. The tool offset position is based on the particular tool shape and the particular tool size. The tool offset position may be an offset of the tool contact point <NUM> from the tip <NUM> and may have an X offset and/or a Y offset and/or a Z offset.

It is to be understood that the above description is intended to be illustrative, and not restrictive. For example, the above-described embodiments (and/or aspects thereof) may be used in combination with each other. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the invention without departing from its scope. Dimensions, types of materials, orientations of the various components, and the number and positions of the various components described herein are intended to define parameters of certain embodiments, and are by no means limiting and are merely embodiments. Many other embodiments and modifications within the scope of the claims will be apparent to those of skill in the art upon reviewing the above description. The scope of the invention should, therefore, be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled. In the appended claims, the terms "including" and "in which" are used as the plain-English equivalents of the respective terms "comprising" and "wherein. " Moreover, in the following claims, the terms "first," "second," and "third," etc. are used merely as labels, and are not intended to impose numerical requirements on their objects. Further, the limitations of the following claims are not written in means-plus-function format, unless and until such claim limitations expressly use the phrase "means for" followed by a statement of function void of further structure.

Further illustrative and non-exclusive examples according to the disclosure are described in the following paragraphs:
In an example according to the present disclosure a stylus tool for forming a part comprises:.

Optionally, in the stylus tool of the earlier paragraph the curved profile of the forming surface is non-circular.

Optionally, in the stylus tool of one of the earlier paragraphs the curved profile of the forming surface is part of a clothoid.

Optionally, in the stylus tool of one of the earlier paragraphs the curved profile has a decreasing radius of curvature from the tip to the base.

Optionally, in the stylus tool of one of the earlier paragraphs the curved profile is defined by an equation R*L=A, where R is radius of curvature, L is curvilinear distance along the curved profile from the tip and A is a scale factor.

In another example according to the present disclosure a toolpath generation method uses a toolpath generation module of a part forming machine for generating a toolpath using a stylus tool, the toolpath generation method comprising:.

Optionally, in the toolpath generation method of the earlier paragraph inputting the tool shape comprises inputting a diameter of the base into the toolpath generation module.

Optionally, in the toolpath generation method of one of the earlier paragraphs determining the tool offset surface comprises determining the tool offset surface at a plurality of contact points of part.

Optionally, in the toolpath generation method of one of the earlier paragraphs determining the tool offset surface comprises:.

Optionally, in the toolpath generation method of one of the earlier paragraphs generating the toolpath comprises generating a toolpath between specified points on the tool offset surface corresponding to desired tool contact points to form the toolpath.

Optionally, in the toolpath generation method of one of the earlier paragraphs a sheet offset surface is determined by offsetting the part shape normally by a prescribed distance, wherein, optionally, determining the sheet offset surface comprises adding a fixed offset for each contact point based on sheet thickness of a sheet used for forming the part.

In another example according to the present disclosure a part forming machine comprises:.

Optionally, in the part forming machine of the earlier paragraph the tool shape may be any of a plurality of different tool shapes, wherein the toolpath generation module determines the toolpath for the stylus tool based on a tool size in addition to the tool shape of the stylus tool defined by the forming surface, the tool size may be any of a plurality of different tool sizes for a given tool shape.

Claim 1:
A stylus tool (<NUM>) for forming a part (<NUM>), the stylus tool (<NUM>) comprising:
a shank (<NUM>) configured to be coupled to a collet (<NUM>) for positioning of the stylus tool (<NUM>);
a head (<NUM>) extending between a base (<NUM>) at the shank (<NUM>) and a tip (<NUM>), the head (<NUM>) having a forming surface (<NUM>) between the base (<NUM>) and the tip (<NUM>), the forming surface (<NUM>) being axisymmetric and defined by rotating a curved profile (<NUM>) around an axis (<NUM>) of the shank (<NUM>), the curved profile (<NUM>) having a curvature changing linearly with a curve length of the curved profile (<NUM>) of the forming surface (<NUM>), wherein the head (<NUM>) includes a flat (<NUM>) surface at the tip (<NUM>), the curved profile (<NUM>) extending between the flat surface (<NUM>) and the base (<NUM>).