Method And Apparatus Of Very Much Faster 3D Printer
20170266879 · 2017-09-21
Inventors
Cpc classification
B33Y10/00
PERFORMING OPERATIONS; TRANSPORTING
B23K26/211
PERFORMING OPERATIONS; TRANSPORTING
B33Y70/00
PERFORMING OPERATIONS; TRANSPORTING
B33Y30/00
PERFORMING OPERATIONS; TRANSPORTING
B29C64/386
PERFORMING OPERATIONS; TRANSPORTING
G06T19/20
PHYSICS
B23K2103/172
PERFORMING OPERATIONS; TRANSPORTING
B33Y50/00
PERFORMING OPERATIONS; TRANSPORTING
B23K26/04
PERFORMING OPERATIONS; TRANSPORTING
B22F12/50
PERFORMING OPERATIONS; TRANSPORTING
B22F10/80
PERFORMING OPERATIONS; TRANSPORTING
B23K1/0056
PERFORMING OPERATIONS; TRANSPORTING
B33Y50/02
PERFORMING OPERATIONS; TRANSPORTING
Y02P10/25
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
B29C64/153
PERFORMING OPERATIONS; TRANSPORTING
International classification
B29C67/00
PERFORMING OPERATIONS; TRANSPORTING
G06T19/20
PHYSICS
B22F3/105
PERFORMING OPERATIONS; TRANSPORTING
Abstract
A 3D printer that is mostly twenty to thirty times faster than existing 3D printers. Pixel-based Raster images are converted into Scalable Vector Graphic (SVG) images, which are then categorized as lines, curves and surface areas. For each category, faster printing methods for printing with pre-formed shapes such as rods, boards, arcs, etc., are disclosed. Pre-formed shapes may be made of plastic/thermoplastic/polymer or sintering materials, as desired. Sintering materials may be cladded/coated with appropriate materials such as solder, copper, and thermoplastics. The new print-head, which has a fixed portion and a replaceable portion, has a mechanism to draw upon pre-formed shapes to print. The replaceable portion has varying shapes and sizes of placement holes, and a mechanism to signal which replaceable portion has been mounted. The print-head incorporates mechanisms to heat and tack the pre-formed shapes. The invention discloses methods to use multiple print-heads to further speed up printing.
Claims
1. A 3D printing process to enhance the speed of printing by known process, the improvement includes performing a pre-printing analysis, comprising the steps of: a. Converting pixel based raster images into Scalable Vector Graphic (SVG) images; b. Categorization of SVG images into two, three or more categories; c. For each category, optimizing printing methods for printing with pre-formed shapes such as rods, boards, arcs, etc., instead of printing with pixels; d. Computing optimal placements of the pre-formed shapes and storing the placements in the memory of a computer; e. Communicating the memory of the computer to a print-head configured to handle the pre-formed shapes; and f. Employing one or more print-heads simultaneously.
2. The 3D printing process of claim 1, where the categories of SVG images include: a. Relatively thin straight lines 27; b. Relatively thin curves 28; and c. Thick occupied surface areas 29.
3. The 3D printing process of claim 1, where the analysis further comprises the steps of: a. Analyzing a 3D drawing of an object to be printed into multiple plane raster drawings 101; b. Converting plane raster drawings 101 into the SVG images, where: i. Withdrawn Raster image can be converted into SVG image or; ii. Withdrawn Raster image can be sub-divided into multiple blocks, and different SVG image be made from each such block; and c. Analyzing the SVG images, which is a two-stage analysis, where: i. In the first stage, parts of images are categorized into two, three or more categories; and ii. In the second stage, for each category, a heuristically optimal method is computed to locate the placement points for the pre-formed shapes, including rods 1, 2, 3, boards 7, 8, 9 and arcs 13, 14, 15 to print the image.
4. The 3D printing process of claim 1, where optimizing printing methods for various categories include optimal printing methods for relatively thin straight lines 27, further comprising the steps of: a. Receiving expected inputs such as the length of the line to be sub-divided for optimal printing; b. Analyzing the straight lines into component lengths; c. Computing the number of rods of different lengths that can be fitted by dividing the length of the line by the length of rods to be fit, and dividing the remaining length by the length of shorter rods recursively; and d. Optionally distributing the lengths so that stability of the object 35 to be printed is ensured using the stability algorithm.
5. The 3D printing process of claim 1, where optimizing printing methods for various categories include optimizing printing methods for the relatively thin curves 28, further comprising the steps of: a. Calculating the tolerance limit ‘T’ of the Withdrawn curve 39; b. Computing a parallel curve 40 displaced at a distance of the tolerance limit ‘T’ to the Withdrawn curve 39; c. Computing the straight line by joining the two extreme points of the curve 41; d. Calculating the length of the straight line that joins the two extreme points of the curve 41; and e. Checking the number of intersections of the straight line with the Withdrawn curve in different cases, such as the case of zero intersection 50, one intersection 51, and two or more intersections 52, 53, 54, 55, 56.
6. The 3D printing process of claim 1, where optimizing printing methods for various categories include optimizing printing methods for the relatively thin curves 28, further comprising the steps of: a. Dividing the curve at each point of intersection into two separate curves with two separate chords; b. Computing tolerance limit ‘T’ for the new identical but parallel curves, and then sending for conversion into multiple chords; c. Using a rapid convergence strategy, generating multiple chords such that all these new chords lie between the Withdrawn curve 61 and the displaced parallel curve 60, 63; then d. Dividing the length of the chord ‘L’ by the length of the rod; e. Calculating the points on the curve where the lines drawn perpendicular to the chords would intersect the curve 62, using y-axis coordinates; f. Computing R new chords with generated R+1 pairs of (x, y) coordinates, and the joined adjacent pair of coordinates; g. Computing the average length of chords with different lengths from the input coordinates of R chords; h. Dividing the average length by the length of the longest rod. If there is any remaining length then it is again analyzed using the previous steps; i. Generating new chords such that all the chords lie in between the two parallel curves; j. Resolving each new chord into rods of different lengths; k. Optionally imparting stability to the placement of the rods; and l. Repeating the process until a curve of required thickness is built-up.
7. The 3D printing process of claim 1, where optimizing printing methods for various categories include optimal printing methods for the surface areas 29, further comprising the steps of: a. Using a long stitch embroidery paradigm 102, where a long diagonal 107 of the surface area is found, and the length of the long diagonal 107 is calculated; b. Calculating the length of the surface area, ‘lx’ 105, which is the distance between the two extreme points on x-axis and breadth of the surface area, and the length ‘by’ 106, which is the distance between the two extreme points on y-axis; and then comparing them to find out the long diagonal of the surface area 107; c. Using an alternate approach to compute the long diagonal by drawing an arbitrary line 120 in the middle of the surface area 119 that aligns itself in the direction of traverse of print-head, and then computing the length ‘I’ of the long diagonal by traversing it from start to end; d. Extending the long diagonal in both directions by its length; at both the new extreme points of the ‘extended’ diagonal, drawing lines perpendicular to the long diagonal 107; e. Testing the number of intercepts in different cases using a binary search process; f. Counting the number of places the long diagonal intersects with the edges of the surface area, and drawing a line that passes through the points of intersection, where: i. If the line drawn is a tangent, then length ‘I’ equals to 1, or if the line drawn runs along the straight edge of the curve, ‘I’ equals to the length of the edge; and ii. The calculated length ‘I’ is decomposed into number of rods of different lengths.
8. The 3D printing process of claim 1, where optimizing printing methods for various categories include optimal printing with boards in a manner similar to rods.
9. The 3D printing process of claim 1, where optimizing printing methods for various categories include optimal printing with arcs, further comprising the steps of: a. Computing the displaced tolerance curve 125 and the chords that lie within the tolerance limit of the curve 128, and then generating multiple new chords; b. Dividing the length of the new chords created by the length of the arcs; c. Calculating the number of arcs 129 of different lengths to be fitted, in a way similar to that for optimizing printing methods for curves; and d. Generating the multiple new chords by computing two parallel curves 132, 133 on either side of the Withdrawn curve, with the two curves together being within the tolerance limit of the Withdrawn curve 128 such that all arcs 134 are within the tolerance curves and may straddle the Withdrawn curve.
10. The 3D printing process of claim 1, where optimizing printing methods for various categories include optimal printing with any combination of rods, boards, arcs and other desired pre-formed shapes.
11. The 3D printing process of claim 1, where a material capable of being sintered is used to pre-form shapes such as rods, boards, arcs, etc. such that: a. The pre-formed shapes may consist only of sintering material; b. The pre-formed shapes may be coated with low temperature melting materials such as solder, thermoplastics, or copper; and c. The print head includes high power laser guns to melt the cladding/sintering material, as required.
12. 12.1 A 3D printer having one or more print heads that utilizes pre-formed shapes to print. 12.2 A 3D printer of claim 12.1 where the print heads may have only a fixed portion or may have a fixed potion and a replaceable portion or any combination thereof. 12.3 A 3D printer of claim 12.2 where the print head has a fixed portion 149, a replaceable portion 148, a release/hold mechanism such as bi-metallic strips 141, and laser guns 135, 139, and is configured to handle pre-formed shapes, such that: a. The print-head has a fixed portion 149 that receives and holds the replaceable portion 148, where different replaceable portions may have different holes 138 for the pre-formed shapes of different sizes and shapes; b. The main supply of pre-formed shapes will be outside the print area, from where pneumatic tubes will supply them to the print head; c. A portion of the print-head holds a limited supply of pre-formed shapes. The replaceable print head has a second set of the pneumatic rounded rectangular tubes that feed a short holding space directly above the pre-formed shape placement holes; d. The print head uses a bi-metallic strip 141 to prevent pre-formed shapes from prematurely falling down the placement hole 142; e. The holes 138 have physical separators between them; the pre-formed shapes that are awaiting their turn 144 to fall are stacked on one or both sides, and the pneumatic mechanism helps to replenish them; f. The print-head has laser guns 135, 139 mounted at each end of it, and is capable of swill and wiggle motions; and g. The print-head has an electronic hand-shaking device (chip) 137 built in the replaceable layer 148 to check if the replaceable portion that has been mounted has the desired hole openings.
13. The print-head for 3D printing of claim 12, where the laser guns may be positioned in different ways: a. The guns 135, 139 placed at the front and back of the fixed portion 149 of the print-head; and b. The gun 147, which is placed at both the fixed 149, and the replaceable portions 148 of the print head are used as a heat source for fusing.
14. The print-head for 3D printing of claim 12, where motors allow the print head to: a. Swill by the required angle to place the pre-formed shapes at an angle to the direction of traverse 146; and b. Wiggle the print-head by a required distance to allow an overhanging placement of newly placed pre-formed shapes over older already placed pre-formed shapes.
15. The 3D printing process of claim 12, where two or more print-heads can be employed simultaneously, where: a. Printing a center line 162 and right side of the center line 164, with one print-head called the main print-head. The other print-head prints all the left side of the center line 161; and b. The printing process, which utilizes spiral movements, has two print-heads such that each print-head prints nearly an equal area one half-way radius from the center of the circle and half-way from the outer edge, and the main print-head prints the central spiral and all those inside it.
16. The 3D printer of claim 12, where the pre-formed shapes deposited on the print bed are held in position by using a Tack and Weld paradigm, comprising: a. Allowing the separation of the formation of the structure from imparting strength to the formed structure; b. Holding the pre-formed shapes in the correct position with quick tacks by placing and heating of the new pre-formed shape on the upper surface of the existing pre-formed shapes; c. Simultaneously, the lower surface of the new pre-formed shape is also heated by the laser guns 135, 139; and d. Imparting the strength, as desired, within the print area or outside the print area.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
[0027]
[0028]
[0029]
[0030]
[0031]
[0032]
[0033]
[0034]
[0035]
[0036]
[0037]
DETAILED DESCRIPTION OF THE ACCOMPANYING EMBODIMENTS
[0038] The improved, faster 3D printer of the present invention uses a new paradigm that uses pre-formed shapes such as rods, boards, and arcs to print an image.
[0039] Rods:
[0040] Boards: There is another 3D pre-formed shape called “boards” that is used to print 3D images.
[0041] Arcs: Arcs are another 3D pre-formed shape that can be used to print 3D images.
[0042] Rods, Arcs and Boards combined: For printing certain objects, a printer may load only rods, or only arcs, or only boards. For other objects, a printer may load any combination of rods, boards, and arcs that optimizes the printing speed. In other words, the three pre-formed shapes arcs, rods, and boards can be used together in any combination that is suitable for the printing job.
[0043] Working of the Printer
[0044]
[0045] Pre-Printing Analysis
[0046] Stage 1: Existing and New: Vector Analysis
[0047] Stage 1 Step 1: Existing: Generate Plane Raster drawings
[0048] In the existing pre-printing process, the 3D drawing of the object is analyzed off-line into plane drawings. The present invention also follows the same step. In the above example, this process results into 800 Raster images, one for each plane, with each drawing being 10×10 cm in size.
[0049] Stage 1 Step 2: New: Convert Raster Images to SVG Images.
[0050] In the present process, the Raster images are converted into Scalable Vector Graphics (SVG) images, using Vector Graphics [1]. Each Raster image of 10×10 cm can be processed into a single SVG image. Alternatively, Step 2 can be implemented by subdividing the original Raster image into, say 1×1 cm blocks, or 100 blocks in all for the assumed print area. A different SVG image is derived for each such block. The rest of the description assumes that 100 such SVG images exist per plane. Now, discard Raster images, as they have no further use.
[0051] Stage 1 Step 3: New: Vector Image Analysis
[0052] In the preferred embodiment, this is a two-stage analysis, though in other embodiments, the number of stages could be more or less. In the first stage, parts of images are classified into three or more categories. In the second stage, for each category, a heuristically optimal method is computed to print the image with pre-formed shapes such as rods. The algorithm halts when any desired arbitrary closeness to the image is reached.
[0053] Stage 2: New: Categorization
[0054] Stage 2: Step 1: Categories
[0055]
[0056] Stage 3: New: Line Printing Algorithm—Optimal printing methods for relatively thin straight lines
[0057] Relatively thin lines are printed using the Line Printing Algorithm (LPA) outlined below. Note that this algorithm is also invoked during the printing of curves and surfaces areas.
[0058] Stage 3 Step 1: LPA inputs
[0059] This algorithm expects to receive L, the length of the line to be sub-divided for optimal printing. The lengths of rods r5 to r1 are constants that are read from a store of value.
[0060] Stage 3 Step 2 LPA: Compute how many rods of length r5 can be used
[0061] Divide the length of the line L by r5 to calculate how many integer r5 rods can be used to print the line. If L is smaller than r5, the answer will be zero, and no r5 rod can be used to print that line. Otherwise, use integer r5 rods, and divide the remaining length by r4, as given below.
[0062] Stage 3 Step 3 LPA: Compute how many rods of length r4 can be used
[0063] Divide the length of the line/remaining length L by r4 to calculate how many integer r4 rods can be used to print the line. If L is smaller than r4, the answer will be zero, and no r4 rod can 20 be used to print that line. Otherwise, use integer r4 rods, and divide the remaining length by r3, as given below.
[0064] Stage 3 Step 4 LPA: Compute how many rods of length r3 can be used
[0065] Divide the length of the line/remaining length L by r3 to calculate how many integer r3 rods can be used to print the line. If L is smaller than r3, the answer will be zero, and no r3 rod can be used to print that line. Otherwise, use integer r3 rods, and divide the remaining length by r2, as given below.
[0066] Stage 3 Step 5 LPA: Compute how many rods of length r2 can be used
[0067] Divide the length of the line/remaining length L by r2 to calculate how many integer r2 rods can be used to print the line. If L is smaller than r2, the answer will be zero, and no r2 rod can be used to print that line. Otherwise, use integer r2 rods, and divide the remaining length by r1, as given below.
[0068] Stage 3 Step 6 LPA: Compute how many rods of length r1 can be used
[0069] The remaining (or original) length can always be printed by r1 rods that are of unit length.
[0070] Stage 3 Step 7 LPA: Stability analysis
[0071] Once the straight lines have been analyzed into component lengths, in the preferred embodiment, stability considerations have to be applied before printing. The reason is that grouping all long lengths at one end of the line with all short lengths 34 at the other end increases the probability that the structure will break down at the short end.
[0072] Stability Algorithm
[0073] Civil construction experience suggests that the lengths need to be distributed in such a way that each discontinuity is against a solid portion on both its sides 35. A short sub-routine can easily re-arrange the distribution of rods between parallel lines.
[0074] Stage 4: Curve Printing: Optimal Printing Methods for Relatively Thin Curves
[0075] A relatively thin curve is printed by chords to that curve that are within the specified tolerance limit.
[0076]
[0077]
[0078] Stage 4 Calculus [2], suppose f is a real-valued function, and c is a real number. The expression
[0079] States that f(x) can be made to be as close to L as desired by making x sufficiently close to c. In that case, the above equation can be read as “the limit of f of x, as x approaches c, is L”. In other words, any continuous curve can be approximated by its chords. As the chord length tends towards zero, the chords come ever closer to the curve. A dot matrix printer, or an existing 3D printer, prints the curve with pixels. In a preferred embodiment, the chords to the curve are printed with pre-formed shapes such as rods. In another embodiment, the image will be printed with boards. In yet another embodiment, where the image requires tight tolerances, the curve is printed with arcs. In yet another embodiment, in the same image, some curves are printed by chords, other curves by arcs, and yet other curves by boards.
[0080] The construction of geodesic domes is a practical example of approximating arcs of spheres by their chords. In the common geodesic dome, the initial equilateral triangular faces of the icosahedrons are sub-dived into parts (frequencies), and the divided parts are made into chords with ends on the spheres. A 3-frequency subdivision yields good approximation for a small dome; for large domes, 6-frequency or 7-frequency sub-division suffices. A few very large domes use 32-frequency subdivisions. However, there is no mathematical reason why the sub-division frequency could not be 256 or 1024, or even higher. In the same way, the number of chords that approximate a curve can be as large as required.
[0081] There is a simple rule available, as a part of stage 4, to decide when an approximation of a curve by its chords is good enough. The rule uses the well-known industrial concept of tolerances to reach the halting point. “Dimensions, properties, or conditions may vary within certain practical limits without significantly affecting functioning of equipment or a process. Tolerances are specified to allow reasonable leeway for imperfections and inherent variability without compromising performance.” [3]
[0082] The rule states that chords to that curve that fit it well have to reside within the tolerance curve.
[0083] In the preferred embodiment, the optimization routines of stage 4 are implemented as a set of heuristics. The optimizing algorithm of stage 4 increases the printing speed by maximizing the use of longer length rods such that the resultant chords to the curve reside within the tolerance limit.
[0084]
[0085] Stage 4 Step 1: Curve Printing Optimization Algorithm: Tolerance
[0086] Let T be the tolerance allowed.
[0087] Stage 4 Step 2: Curve Printing Optimization Algorithm: Parallel Curve 5 Compute a curve identical to the original curve but displaced at distance T away from the original curve. Any number less than the tolerance value can be used, if desired.
[0088] Stage 4 Step 3: Curve Printing Optimization Algorithm: Straight Line
[0089] Compute the straight line 53 joining the extreme two end points of the curve 50.
[0090] Stage 4 Step 4: Curve Printing Optimization Algorithm: Compute Length
[0091] Compute the length L of the straight line between the extreme points of the curve.
[0092] Stage 4 Step 5: Curve Printing Optimization Algorithm: Number of Intersections
[0093] Check at how many points the straight line cuts the curve.
[0094] Stage 4 Step 6: Curve Printing Optimization Algorithm: Case process Case of Zero Intersection
[0095] The straight line is the single chord of the entire curve. The conversion of the single chord into multiple chords that approximate the curve better and print faster will be done as at Stage 4 Step 7 below.
[0096] Case of One Intersection
[0097]
[0098] Case of Two Intersections
[0099]
[0100] Case of n (three or more) Intersections
[0101] If there are n intersections, at the point of intersections, the original curve is broken into n+1 separate curves, with n+1 separate chords. If n is an odd number, for half the (n+1) curves the parallel identical curve will continue to be relevant. These are the portions of the parallel curve that is on the same side as the chord. For the other half of the (n+1) curves where the chord is opposite the parallel curve, a new identical but parallel curve at distance T has to be computed. Turn by turn, the (n+1) new curves and the new chords with respective parallel tolerance curves have to be sent to Stage 4: Step 7 for conversion into multiple chords.
[0102] If n is an even number, for (n/2+1) of the (n+1) curves, the parallel identical curve will continue to be relevant. These are the portions of the parallel curve that is on the same side as the chord. For the other (n/2) of the (n+1) curves, where the chord is opposite the parallel curve, a new identical but parallel curve at distance T has to be computed. Turn by turn, the (n+1) new curves, and the new chords with respective parallel tolerance curves have to be sent to Stage 4: Step 7 for conversion into multiple chords.
[0103] Stage 4 Step 7: Curve Printing Optimization Algorithm: New Chord Generation
[0104] Step 7 is invoked with these data parameters: (i) A path of a curve with its extreme points; (ii) A path of a parallel identical curve displaced at distance T, where the displacement is on the same side as the chord of the curve; and (iii) The length L of the straight line joining the two extreme points of the curve. (This can be computed within the algorithm itself from the coordinates of extreme points.)
[0105] Computations with Data
[0106] With this data, the algorithm computes new chords to the curve such that all the new chords lie between the original curve and the displaced parallel curve. The generated chords need not be of identical length; they can be of different lengths also. Once the new chords have been determined, each chord is resolved into rods of different lengths.
[0107] Stage 4 Step 7 Sub Step 7.1: Curve Printing Optimization Algorithm: Rapid convergence strategy
[0108] No Initial Stage Checking
[0109] The case that the existing chord of length L is entirely between the curve and the parallel curve is very rare and will occur for extremely shallow curves only. Hence, in the preferred embodiment, this is not checked for at the initial stage. Other embodiments may incorporate this check.
[0110] Rapid Convergence Strategy
[0111] It is possible to execute the subroutine in an incremental manner by replacing the existing chord by two chords, and then by three chords, until n chords exist that are all between the two parallel curves. The preferred embodiment jumps close to the final value of n by using a rapid convergence strategy, which is described below. Calculate the Rounded-up Value (next higher integer value) of dividing the length L of the existing chord by r5, the length of the longest rod. Let the result be an integer R.
[0112] Stage 4 Step 7 Sub Step 7.2: Curve Printing Optimization Algorithm: Rapid convergence strategy (continued)
[0113] In this step, the chord length L is divided into R equal pieces, and the y (vertical) axis coordinates of each piece (including the starting and ending points of the chord) are computed. These y-axis coordinates are used to calculate the points on the curve where lines drawn perpendicular to the chord would intersect the curve. Thus, R +1 pairs of (x, y), where x is the horizontal axis coordinate and y are the vertical axes coordinate are generated that are on the curve. R new chords are computed that join the adjacent pair of coordinates.
[0114] Stage 4 Step 7 Sub Step 7.3: Curve Printing Optimization Algorithm: Rapid convergence strategy (continued)
[0115] Check if any of the new chords intersect the parallel displaced curve. Even if one of them intersects, the sub-routine goes back to Sub Step 7.2 above with R replaced by R+1. If none of them intersect, the sub-routine passes on to Sub Step 7.4. When no chord intersects with the tolerance curve, it means that the chords are within the tolerance specified. If a still tighter fit is required, one more iteration with R replaced by R+1 can be run. A similar result can be achieved by reducing the tolerance value at the start of the routine.
[0116] Stage 4 Step 7 Sub Step 7.4: Curve Printing Optimization Algorithm: Rapid convergence strategy (continued)
[0117] Input
[0118] The algorithm receives the coordinates of R chords.
[0119] Computation
[0120] From this input data, the algorithm computes the lengths of R chords. As the chords are likely to be of different lengths, and their lengths are very unlikely to be integral multiples of r5, this step attempts to make most of the chords of an equal length that would be an integral value of r5. One chord would be of a different length, made up of r4 or lower value lengths.
[0121] Compute the average length of R chords, which is hereinafter called as Lavg. If Lavg is, say, for illustration purposes, within +/−20% of the value of an integral multiple of r5, convert all chords except one to that integral value of r5. The exceptional chord (whose length now will not be the same as before and differs by a few pixels and whose length will have to be recomputed from coordinates) can be composed in terms of r4 to r1 rods, as appropriate. With the new coordinates of the chords, go back to Stage 4 Step 7 Sub Step 7.3 to check if any of the chords intersect the parallel curve. If some of the chords do intersect the parallel curve, go back to Stage 4 Step 7 Sub Step 7.2 above with R replaced by R+1. If none of the chords intersects the parallel curve, then the set of chords that approximate the curve has been arrived at, and will be used for printing the curve.
[0122] Stage 4 Step 8: Curve Printing Optimization Algorithm: Repeat
[0123] Repeat the above procedure as many times as needed until a curve of required thickness is built-up.
[0124] Printing with Arcs
[0125]
[0126] Stage 5: Surface Area Printing: Optimal printing methods for Surface Area Printing
[0127] Printing of surface areas is not an extension of printing thin curves. A different paradigm is used to speed up printing surface areas. Embroidery often works on Raster-like thinking. For example, a cross-stitch in embroidery can be thought of as a large pixel. However, one embroidery technique uses a different paradigm that can be used to print faster using rods, boards, arcs, etc., instead of pixels.
[0128] A surface area: Definition
[0129] A surface area is contiguous and is enclosed by curves, where a line is a special case of a curve. A single circular or elliptical curve can enclose an area. However, in general, an area is enclosed by a number of irregular curves.
[0130] ‘Long’ Diagonal: Definition
[0131] Formally, a diagonal is a line joining two nonconsecutive vertices of a polygon or a polyhedron. Surface areas are not always bound by polygons or polyhedrons; therefore, they may not have diagonals. Nevertheless, for our purposes, we define a ‘long’ diagonal of any surface area as the line with the longest such length joining a pair of non-adjacent points on the curve enclosing a surface.
[0132] If only the finite set of integral values of x and y coordinates that the surface area spans is used, then there is a large, but finite, set of lines that can join non-adjacent points on the surface. Call these lines as diagonals of the surface area. The diagonal with the longest length is defined as the ‘long’ diagonal.
[0133] It is understood that this ‘long’ diagonal is not the true long diagonal, which might have been discovered if we had truly generated the infinite set of lines that join all the non-adjacent points on the surface. The finite set of points used to calculate the ‘long’ diagonal can be further reduced by choosing x and y coordinates such that they have an integral value that is a multiple of 5, 7, or 10, etc. The value of the multiple is chosen so that the task of finding the ‘long’ diagonal does not become a drag on computation. The computation task can be further reduced by taking into account only those points that have a common x coordinate or a common y coordinate.
[0134] The Long Stitch Embroidery Paradigm
[0135] While most of embroidery follows a Raster image paradigm 101 to fill an area, there is at least one exception to this paradigm. This exception is the long stitch paradigm 102.
[0136] Stage 5 Step 1: Long Stitch Algorithm: Find the ‘long’ diagonal
[0137]
[0138] Stage 5 Step 2: Long Stitch Algorithm: Find the extended ‘long’ diagonal
[0139]
[0140] Stage 5 Step 2 Sub Step 2.1:Long Stitch Algorithm: Binary search to find the True ‘long’ diagonal
[0141] A binary search will ease the burden of computation to find the start and end points of the ‘long’ diagonal. Extend the ‘long’ diagonal in both directions by its own length so that its length now becomes 31.
[0142] Stage 5 Step 2 Sub Step 2.2:Long Stitch Algorithm: Binary Search (continued)
[0143] At both of the new extreme points of the extended ‘long’ diagonal, draw lines perpendicular to the ‘long’ diagonal, and check at how many points they intercept the curves enclosing the surface areas.
[0144] Stage 5 Step 2 Sub Step 2.3: Long Stitch Algorithm: Case Process
[0145] These case values are to be tested at both ends of the extended ‘long’ diagonal.
[0146] Case of Zero Intercept
[0147] This case implies that the extended ‘long’ diagonal has overshot its true length at that end. Thus, at that end, the length of the ‘long’ diagonal (presently 31) is reduced by half of the original ‘long’ diagonal length, and Sub Step 2.2 is invoked again with the new length (1.51) at the end being checked.
[0148] Case of One Intercept
[0149] This case implies that the perpendicular is a tangent to the curve, and therefore the true diagonal length at that end has been discovered. This value is stored for later use.
[0150] Case of Two Intercepts
[0151] This case implies that the surface area extends beyond the already computed length. Thus, at that end, the length of the ‘long’ diagonal is again increased by the original ‘long’ diagonal length, and Sub Step 2.2 is invoked with the new length (21) away at the end being checked. Sub Step 2.3 ends when, with the newly discovered lengths, there is only one intercept at both the ends. As this discovery is a binary search process, it will end quite quickly.
[0152] In another embodiment, Sub Step 2.1 and Sub Step 2.2 of the algorithm are replaced by an arbitrary line drawn in the middle of the block so that rods automatically align with the direction of traverse of the print-head.
[0153] Stage 5 Step 3: Long Stitch Algorithm: Traverse the ‘Long’ Diagonal
[0154] In a loop, traverse the ‘long’ diagonal from start to end in increments of a single pixel. At every pixel, compute at how many places does a line drawn perpendicular to the long diagonal intersect the surface area edges. In most of the cases, the points of intersection will occur in pairs. For each such pair, there is a need to compute the distance I between the points of intersections. When the line drawn is a tangent, there will be only a single intersection. In that case, I will be equal to 1. When the line drawn runs along the straight-line edge of the curve, then there will be as many intersections as the length of the edge. In that case, I will be equal to the length of the edge (the distance between the two extreme points of intersections).
[0155] Stage 5 Step 4: Long Stitch Algorithm: Decompose 1 into a Suitable Number of r5 to r1 Rods
[0156] This step is executed by invoking the Line Printing Algorithm, which has already been described in Stage 3. The stability considerations mentioned in that algorithm also apply to surface area printing. In the preferred embodiment, that routine needs to be applied to this printing also.
[0157] Stage 6: Store Print Positions
[0158] At the end of pre-printing analysis, for each plane that is to be printed, and, in the preferred embodiment, for each block within that plane, values of optimal placements of the pre-formed shapes such as rods, boards and arcs would have been computed and stored in memory for a computer to direct the print-head during printing.
[0159] Sintering Material
[0160] Using existing technologies related to metal sintering materials, it is possible to pre-form rods, boards, and arcs from sintering materials. In the preferred embodiment of the invention, once the pre-formed shapes have been created from sintering materials, their surfaces will be coated/cladded with solder, or a thin layer of copper, or thermoplastics. This coating/cladding is such that tack welding can take place with high power lasers that are placed on the print-heads for sintering materials.
[0161] Print-Head
[0162] The print-head has the following improvements/enhancements over known print-heads.
[0163] Print-Head: Replaceable Turret Type Print-Head
[0164] In the preferred embodiment, the print-head is designed similar to a turret in a Computer Numeric Control (CNC) machine. In a CNC machine, a turret holds a variety of tools for optimally manufacturing certain types of objects. When a different type of object is to be manufactured, the entire turret head is replaced. Similarly, in the 3D printer, the print-head has a fixed portion and a replaceable portion; the fixed portion receives and holds the replaceable portion. Different replaceable portions may have different holes and alignments for pre-formed shapes of different sizes. The use of pneumatics to transport and eject ink is a well-established technology in ink jet printers. This, or similar technology, can easily be used to transport pre-formed shapes and eject them from the openings when required. The design of transportation tubes has to be such that the sharp corners of rods/boards do not block the tube. Rounded rectangular tubes can provide a solution.
[0165] In the preferred embodiment, the main supply source of pre-formed shapes is not mounted on the replaceable part of the print-head. The main supply of pre-formed shapes will be outside the print area, from where pneumatic tubes will supply them to the fixed portion of the print-head. The portion of the print-head above the replaceable portion holds a limited supply, say up to ten at a time, of pre-formed shapes of each type. The replaceable print-head has a second set of pneumatic rounded rectangular tubes that feed a short holding space directly above the pre-formed shape placement openings. The replaceable print-head has a pneumatic system of expelling a single pre-formed shape from its opening, as and when required.
[0166]
[0167] With a replaceable portion, the printer has to check if the correct replaceable portion has been fixed. In the preferred embodiment, an electronic hand-shaking device (chip) 137 is built in the replaceable portion to identify which replaceable portion is in place.
[0168] In
[0169] Assume that, without limitations, we are using rods of lengths r1=1 unit, r2=2 units, r3=4 units, r4=8 units, and r5=15 units to print. Then, the preferred embodiment of the print-head will look like a long rod, slightly longer than the sum of rods r1 to r5. Given the assumed dimensions of r1 to r5, the sum of the lengths of the five rods is 15+8+4+2+1=30 pixels. Some spacing is needed between the holes for pushing out the rods. Assume, without limitations, that such spacing is five pixels wide. Including the spacing at the start and end of the holes, the required six spaces will add another 5*6=30 pixels of length. Hence, the minimum total length will be 30+30=60 pixels.
[0170] In another example, assume that the lengths are r5=32, r4=15, r3=8, r2=2, and r1=1. Given the assumed dimensions of r1 to r5, the sum of lengths of the five rods is 32+15+8+2+1=58 pixels. Spacing will need another 30 pixels as before. Hence, the minimum total length of the print-head, including supporting spaces that are five pixels wide, will be 58+30=88 pixels.
[0171] In another embodiment, the rods can be placed in two parallel rows on the print-head. One row would have only the single longest rod r5 of length 32 pixels in it. With support spacing, its total length would be 32+5+5=42 pixels. The parallel row would have the remaining four rods of 1, 2, 8, and 15 lengths, and with five spaces of five pixels each, the length of this row would be 5+1+5+2+5+8+5+15+5=51 pixels. The print-head's length would have to be the length of the longer of the two parallel rows i.e., 51 pixels length. This two-row print-head is structurally stronger than a longer single-row print-head, which can easily bend out of shape.
[0172] Cross-Section of the Replaceable Portion of Print-Head
[0173]
[0174] In the replaceable two-row print-head embodiment, at any time, only one of the two rows is directly in line with the path that the printer is taking. If the pre-formed shape to be used is located in the other non-aligned row, then, on reaching its position, the print-head has to make a sidewards (wiggle) motion to bring the second row in line. The number of times this sidewards movement takes place will be mitigated by proper placement of pre-formed shapes (including duplicate placement of certain pre-formed shapes) in the two rows.
[0175] The schematic in
[0176] In the preferred embodiment, swill capabilities are powered by an additional motor. To print curves in vertical spaces, rods need to be placed so that there is an overhang, compared to the pre-formed shape(s) under them. Though an overhang of up to 50 percent of the dimension of the pre-formed shape results in the center of gravity of the new pre-formed shape being within the surface of the pre-formed shape below, it is customary to restrict the overhang to, say, 33 percent to 40 percent. Regardless of the chosen value of the permitted overhang, there is a requirement of a wiggle movement that displaces the print-head by a maximum of a half pixel. In the preferred embodiment, the newly introduced swill motor handles this task also.
[0177] Print-head: Tack and Weld Paradigm
[0178] In many existing 3D printers, the print-head imparts structural stability by melting the plastic/polymer, and then extruding it over an unsolidified pixel; the two pixels fuse together when they become cold. This may be called the Fuse paradigm. Instead of the Fuse paradigm, the printer of the present invention follows a Tack and Weld paradigm. The Tack and Weld paradigm allows the separation of the formation of the structure from the imparting of strength to the formed structure. Initially during printing, the pre-formed shapes are held in correct position by quick tacks. Subsequently, the imparting of strength by welding/fusing can be done, as desired, within the print area, or outside the print area.
[0179] In the new 3D printer, the upper surface of the existing pre-formed shape on which the new pre-formed shape is to be placed is heated by lasers guns, which are mounted on the two opposite sides of the printer. Simultaneously, the lower surface of the new pre-formed shape is also heated by the laser guns. The total heat delivered by the two laser guns is sufficient to allow parts of the two pre-formed shapes to join at some points; i.e., the pre-formed shapes are tacked together by this heat. The tack allows the two pre-formed shapes to stay in position. In the schematic in
[0180] In another embodiment, the laser guns are placed at the front and back of the fixed portion of the print-head, where the print-head swills as a whole. In yet another embodiment, the laser guns are placed at both the fixed and the replaceable portions of the print-head, and used as a heat source for fusing.
[0181] Print-Head: Two or More Simultaneous Print-Heads
[0182] There is no restriction that there can be only one active print-head during the printing operation. A few simple conflict-resolving rules will allow the simultaneous operation of two or more print-heads, thus further improving the printing speed.
[0183] In the preferred embodiment, one print-head prints the center line, and all pixels to the right of the center line. This print-head is called the Main print-head. The second print-head prints all pixels to the left of the center line. This print-head is called the Left print-head. When a pre-formed shape straddles the center line such as the arc 161 or a board 163, or is on it in any way, the Main print-head will print it. In
[0184] In another embodiment, where four print-heads operate simultaneously, the print area is first divided into two equal halves (Right and Left), and then each half is divided into two more halves (Upper and Lower Rights, and Upper and Lower Lefts). In this embodiment, the simple rule will be modified so that both Upper and Lower Right print-heads can print anything that is on or straddles the center line of the complete print area. Within the Right area, anything on its center line or that straddles the center line will be printed by the Upper Right print-head and the rest will be done by the Lower Right print-head. A similar rule will apply between the Upper and Lower Left print-heads.
[0185] In yet another embodiment, it may be advantageous to use two print-heads that move in spirals. The Main print-head would be the one that moves from the center of the print area towards the periphery until it crosses the circle at the half-way radius. The Left print-head would move from the periphery towards the center until it crosses the half-way radius. As in the other embodiments, all pre-formed shapes that lie on the half-way circle, or touch it or straddle it, would be printed by the Main print-head.
[0186] The examples illustrated and the different embodiments mentioned in the specification are only for clear understanding of the invention, and therefore, do not limit the invention.
REFERENCES
[0187] 1. http://en.wikipedia.org/wikiNector_graphics)
[0188] 2. http://en.wikipedia.org/wiki/limit.sub.13 %28mathematics %29
[0189] 3. http://en.wikipedia.org/wiki/Engineering_tolerance