Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
NOZZLE ANALYZING METHODS AND SYSTEMS
Document Type and Number:
WIPO Patent Application WO/2020/231962
Kind Code:
A1
Abstract:
The disclosure relates to methods programs and systems for calibration and alignment of print head and/or print head groups in three-dimensional printers. Specifically, the disclosure relates to the use of pattern-based calibration and individual nozzle analysis of print head's starting position, timing and rotation for providing high resolution "drop-on-drop"capabilities.

Inventors:
LEVINER MAROM (IL)
YAARI AVISHAI (IL)
KHAZOV DANNY (IL)
Application Number:
PCT/US2020/032423
Publication Date:
November 19, 2020
Filing Date:
May 12, 2020
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
NANO DIMENSION TECH LTD (IL)
THE IP LAW FIRM OF GUY LEVI LLC (US)
International Classes:
B41J2/045; B41J2/01; B41J2/14; B41J2/155; B41J2/21; B41J29/393
Foreign References:
US20150298153A12015-10-22
US20100295896A12010-11-25
US20180014410A12018-01-11
US20180236799A12018-08-23
US20160159086A12016-06-09
US10434764B12019-10-08
Attorney, Agent or Firm:
LEVI, Guy (US)
Download PDF:
Claims:
What is claimed:

1. A method of aligning at least one print head position and yaw angle in a computerized three dimensional (3D) and/or two dimensional (2D) printing system comprising an inkjet printer, optionally having an imaging module operably coupled thereto, the at least one print head having a nozzle plate with plurality of nozzles, the nozzle plate defining a longitudinal axis transverse to a printing direction, the method comprising:

a. providing a chuck and a substrate;

b. printing on the chuck, at a reference location a plurality of drops from each nozzle, at a predetermined distance along the printing direction;

c. using a preliminary transform factor, determining an expected location for the plurality of printed drops;

d. using the imaging module, capturing at least one image corresponding to a

predetermined field of view (FOV) of the expected location determined by applying the preliminary transform factor;

e. identifying printed dots at the expected location;

f. mapping an actual location to a reference location of each drop;

g. using the mapping, calculating at least one of: a translation error, a rotation error and any other transformation from the mapped reference location;

h. based on at least one of the translation error, rotation error, and any other

transformation, aligning at least one of: the print head’s starting position, and the printer yaw angle of the nozzle plate’s longitudinal axis relative to the print direction.

2. The method of claim 1, wherein the step of mapping the actual location to the corresponding reference location of each dot comprises:

a. using the preliminary transform factor, establishing the expected location for each dot; b. digitizing each of the captured images obtained from the expected location;

c. rendering a rectangle sized and configured to symmetrically inscribe the expected location for each printed dot, and/or an area of interest on each of the captured images;

d. detecting actual printed dot inscribed within each of the corresponding rectangle of the expected dot location; e. for actually inscribed printed dots as a whole pattern, calculating an affine transform factor between actually printed dots’ location and the corresponding reference dots’ location, thus providing at least one of: the translation error, and printing starting position offset;

f. applying the affine transform factor to each reference dot location thus providing a transformed dot location; and

g. calculating an average error vector between actually printed dots’ location and the corresponding transformed dots’ location.

3. The method of claim 2, further comprising, before the step of calculating the average error vector between all actually printed dot locations and the corresponding transformed dot locations, calculating an error vector per nozzle for each actually printed dot location and the corresponding transformed dot location for all dots printed by each nozzle along the printing direction.

4. The method of claim 3, further comprising, using the discrete error vector: performing a statistical analysis on each corresponding nozzle; and detecting failed nozzles.

5. The method of claim 4, wherein the statistical analysis further comprises calculating at least one of an average circularity per nozzle, an average volume per drop per nozzle, and an average area per drop per nozzle.

6. The method of claim 1, wherein calculating the preliminary transform factor further comprises printing on the substrate a plurality of a geometric element, wherein each geometric element is configured to be printed by a plurality of nozzles defined in the nozzle plate.

7. The method of claim 6, wherein the plurality of geometric elements are printed in two rows of staggered pairs along the printing direction, and the calibration pattern of the predetermined number of drop ejections at a predetermined distance between each ejection portion is sandwiched between the two rows.

8. The method of claim 7, further comprising:

a. using the imaging module, capturing at least one image having an FOV around each row of the two rows of geometric elements, each geometric element having a representative dimension, wherein the FOV are configured to overlap at a predetermined level;

b. digitizing the plurality of images;

c. providing the location of each of the geometric element; and

d. matching each geometric element’s representative dimension to a programmed printing location for the corresponding geometric element’s representative dimension, wherein the programmed printing location for the corresponding geometric element’s representative dimension provides a reference location.

9. The method of claim 8, further comprising calculating a first affine transform factor among all the matched geometric elements and their matched reference location.

10. The method of claim 9, wherein the geometric element is a circle and the representative dimension is a center of the circle.

11. The method of claim 3, wherein the system further comprises:

a. a central processing module;

b. a display module; and

c. a user interface module.

12. The method of claim 11, further comprising:

a. using the display, displaying the digitized image of the calibration pattern with the cropped rectangles;

b. with user interface, allowing a user to at least one of enter and remove actual dot’s location;

c. updating the actual dot location; and

d. repeating the steps of claim 3

13. A computerized system for automatically aligning at least one of: a starting position and yaw angle of at least one print head in at least one of: a three dimensional (3D) and two dimensional (2D) printer, the system comprising:

a. at least one of a 2D and 3D inkjet printer comprising at least one print head adapted for alignment with a nozzle plate defining a plurality of nozzles, the nozzle plate defining a longitudinal axis transverse to a printing direction, with the at least one print head adapted to be aligned with respect to the starting position and the yaw angle;

b. a chuck and a substrate;

c. optionally, an imaging module operably coupled to the at least one print head;

d. a central processing module (CPM) in communication with the at least one print head, and the imaging module, the CPM further comprising at least one processor and a processor- readable medium coupled to a memory having thereon a set of executable instructions, configured, when executed, to cause the at least one processor to: i. print on the substrate at a desired reference location, a predetermined number of drops from each nozzle, at a predetermined distance;

ii. apply a preliminary transform factor to determine an expected print location;

iii. using the imaging module, capture at least one image corresponding to a predetermined field of view (FOV) at the expected location;

iv. at the expected location, identify and locate actually printed drops, providing actual dot location;

v. map the actual location to the reference location of each drop;

vi. using all the mapped drops’ actual location, calculate at least one of: a translation error, a rotation error, a shear error, and any other transformation; and

vii. based on at least one of: the translation error, the rotation error, shear error, and nozzle- specific statistical analysis, align at least one of: the print head’s starting position, the print head’s yaw angle, shear of the nozzle plate’s longitudinal axis relative to the printing direction and potentially modify a nozzle- specific printing parameter, and modify a printing input file.

14. The system of claim 13, wherein the set of executable instructions is configured, once executed to cause the at least one processor to print a plurality of geometric elements at a desired reference location, each geometric element having a predetermined representative dimension, and wherein each geometric element is configured to be printed by a plurality of nozzles in the nozzle plate.

15. The system of claim 14, wherein the plurality of geometric elements comprises at least 3 geometric elements printed in two rows of staggered pairs along the printing direction, and the calibration pattern of the predetermined number of drop ejections at a predetermined distance between each ejection is sandwiched between the two rows.

16. The system of claim 13, wherein, when executed, the set of executable instructions is further configured to cause the at least one processor to:

a. digitize the captured image;

b. render a rectangle sized and configured to symmetrically inscribe the expected location for each printed dot;

c. crop each rectangle by a number of pixels’ configured, after cropping to inscribe a single dot at the expected location; d. detect actual printed dot inscribed within each of the corresponding cropped rectangle; e. for actually inscribed printed dot, as a whole pattern, calculate an affine transform factor between actually printed dots’ location and the corresponding reference dots’ location defined by the cropped rectangle, thus providing the translation error;

f. apply the affine transform factor to each reference dot location thus providing a transformed dot location; and

g. calculate an average error vector per nozzle between actually printed dots’ location and the corresponding reference dots’ location for each nozzle.

17. The system of claim 16, wherein, when executed, the set of executable instructions further causes the at least one processor to calculate the error vector between each actually printed dot location and the corresponding reference dot location.

18. The system of claim 15, wherein, when executed, the set of executable instructions is further configured to cause the at least one processor to:

a. capture at least one image around each row of the two rows of geometric elements,; b. digitize the plurality of images; and

c. automatically calculate the actual location of each of the plurality of captured geometric elements.

19. The system of claim 18, wherein the CPM is configured to capture a plurality of overlapping images, and wherein obtaining the location of the plurality of geometric elements is configured to yield a plurality of locations for each detected geometric element.

20. The system of claim 19, wherein, when executed, the set of executable instructions further causes the at least one processor to calculate a first affine transform factor among all the matched geometric elements and their matched reference location.

21. The system of claim 13, wherein the system further comprises a display module and a user interface module.

22. The system of claim 21, wherein, when executed, the set of executable instructions further causes the processor to:

a. using the display, display the digitized image of the calibration pattern;

b. with the user interface, input and/or remove actual dot’ s location by a user;

c. update the actual dot location; and d. cause the at least one processor to print a plurality of geometric elements at a desired reference location, each geometric element having a predetermined representative dimension, and wherein each geometric element is configured to be printed by a plurality of nozzles in the nozzle plate.

Description:
NOZZLE ANALYZING METHODS AND SYSTEMS

BACKGROUND

[0001] The disclosure is directed to methods programs and systems for calibration and alignment of print head and/or print head groups especially in three-dimensional printers. Specifically, the disclosure is directed to the use of pattern-based calibration of print head’s position, timing, rotation and transformation of print heads/s to printer coordinate system for providing high resolution “drop-on-drop” capabilities, as well as high accuracy drop placement and print head condition.

[0002] Drop-on-demand ink jet printing systems eject ink drops from print head nozzles in response to pulses generated within the print head by various means, for example, piezoelectric devices or thermal transducers, such as resistors. The print heads typically include a manifold with liquid coupling to a nozzle plate, which is an opening in an external surface of the printing system.

[0003] Inkjet printing technologies suffer from reliability concerns as one or more individual droplet ejecting nozzles may fail or malfunction in a print-head. In some cases, these failures are temporary because either a maintenance operation, such as a print-head purge, or the passage of time may enable the nozzles to recover and recommence operation. In some cases, however, the permanent failure of a single nozzle may force the replacement of an entire print-head. Most nozzle failures, temporary or permanent, are caused either by contamination, such as contaminants in ink or manufacturing debris, and external paper debris or by air bubbles either ingested or forming near the nozzles.

[0004] In various industrial Print head Module (PHM) applications (e.g., the printing of printed circuit boards, PCBs), drop placement accuracy can be important. There are a variety of causes for inaccuracies in drop placement. These causes may include misalignment between print heads, as well as misalignment of a substrate, a chuck, or both, to be printed upon.

[0005] Alignment errors follow typically from manufacturing or integration tolerances, which can lead to small dimensional and form variations in the printer components. Likewise, vibrations and thermo-mechanical effects in the system, can deteriorate the positioning accuracy of the print heads following extensive or intensive use.

[0006] Tightening of manufacturing tolerances for improving print-head alignment, can be costly and time consuming and will eventually fail in extensive use. While the printers’ precision performance requirements increase, especially in three dimensional printing requiring drop-on-drop capabilities, it becomes necessary to provide the ability to automatically or semi-automatically align print-head modules.

SUMMARY

[0007] Disclosed, in various exemplary implementations, are methods programs and systems using pattern-based calibration of print head’s position, timing, rotation and transformation of print heads/s to printer coordinate system for providing high resolution“drop-on-drop” capabilities, as well as high accuracy drop placement and print head condition.

[0008] In an exemplary implementation provided herein is a method of aligning at least one print head position and yaw angle in a computerized three dimensional (3D) and/or two dimen ional (2D) printing system comprising an inkjet printer, optionally having an imaging module operably coupled thereto, the at least one print head having a plurality of nozzles, the plurality of nozzle defining a longitudinal axis transverse to a printing direction, the method comprising: providing a chuck; printing a plurality of drops on the chuck from each nozzle, at a predetermined distance along the printing direction; applying a preliminary transform factor to determine an expected location for capturing at least one image; using the imaging module, capturing the at least one image corresponding to a predetermined field of view (FOV) of an expected location of the plurality of drops; identifying actual location of each of the plurality of drops; from a mapping of the expected location to the actual location, calculating at least one of: a translation error, a rotation error and any other transformation; based on at least one of the translation error, rotation error, and any other transformation, aligning at least one of: the print head’s starting position, and the printer yaw angle of the nozzle plate’s longitudinal axis relative to the print direction.

[0009] In another exemplary implementation, provided herein is a computerized system for automatically aligning at least one of: a starting position and yaw angle of at least one print head in at least one of: a three dimensional (3D) and two dimensional (2D) printer, the system comprising: a at least one of a 2D and 3D inkjet printer comprising: at least one print head having a plurality of nozzles, the plurality of nozzle defining a longitudinal axis transverse to a printing direction, with the at least one print head adapted to be aligned; a chuck, an imaging module operably coupled to the at least one print head; a central processing module (CPM) in communication with the at least one print head, and the imaging module, the CPM further comprising at least one processor and a processor-readable medium coupled to a memory having thereon a set of executable instructions, configured, when executed, to cause the at least one processor to: print on the chuck, a plurality of drops from each nozzle, at a predetermined distance along the printing direction; apply a preliminary transform factor to determine an expected location for capturing at least one image; using the imaging module, capture at least one image, the image corresponding to a predetermined field of view (FOV) of an expected location of each drop; identify actual location of each of the printed plurality of dots in the at least one captured image; map an actual location of each of the plurality of drops to the corresponding reference location; using all the mapped drops’ reference location, calculate at least one of: a translation error, a rotation error, a shear error, and any other transformation; and based on at least one of the translation error and rotation error and shear error, align at least one of: the print head’s starting position, the printer yaw angle and sheer of the nozzle longitudinal axis relative to the printing direction.

[00010] In yet another exemplary implementation, provided herein is a computer program product for aligning at least one of a starting position and yaw angle and shear and scale of at least one print head in a three/two dimensional (3D/2D) printer, the computer program comprising a set of executable instmctions, configured, when executed, to cause at least one processor to: print on a chuck, a plurality of drops from each nozzle, at a predetermined distance along a printing direction; apply a preliminary transform factor to determine an expected location for capturing at least one image using the imaging module; , capture the at least one image, corresponding to a predetermined field of view (FOV) of the expected location of each of the plurality of drops; map an actual location of each drop to the corresponding reference location; using all the mapped drops’ expected location, calculate at least one of: a translation error, a rotation error, a shear error, and any other transformation; and based on at least one of the translation error and rotation error and shear error, align at least one of: the print head’s starting position, the printer yaw angle and sheer of the nozzle’s longitudinal axis relative to the printing direction.

[00011] In an exemplary implementation, provided herein is a method of providing nozzle- specific data configured to enable changing the nozzle- specific printing parameters, and increasing ejected ink-placement accuracy, based on the nozzle- specific data, altering at least one of the nozzle- specific ejection timing, and eliminating nozzles with respect to their drop quality or placement or spray clustering. In addition correcting printing location of each nozzle by moving its controlling data in opposite direction when detected shift is considered stable . [00012] These and other features of the methods programs and systems configured to provide high resolution “drop-on-drop” capabilities, will become apparent from the following detailed description when read in conjunction with the figures and examples, which are exemplary, not limiting.

BRIEF DESCRIPTION OF THE FIGURES

[00013] For a better understanding of the methods, programs and systems for using pattern- based calibration of print head’s position, timing, rotation and transformation of print heads(s) to printer coordinate system, with regard to the exemplary implementations thereof, reference is made to the accompanying examples and figures, in which:

[00014] FIG. 1, illustrates an exemplary implementation of the pattem(s) analyzed to calculate starting position and Print head rotation errors;

[00015] FIG. 2A, illustrates a mapping stage for calculating expected location for printed dots, with a cropping stage for the exemplary implementation of FIG. 2A illustrated in FIG 2B and transformed location in FIG 2C;

[00016] FIG. 3, is a schematic illustrating the calculation of a discrete correction vector between actual and expected drop location;

[00017] FIG. 4, is a schematic illustrating the calculation of Print head rotation angle error;

[00018] FIGs. 5A-5B, illustrate a flow chart of an exemplary implementation for carrying out the alignment based on the pattern formed by the drops alone;

[00019] FIG. 6, illustrate a flow chart of an example for carrying out manual input of actual dots location in the pattern formed by the drops alone; and

[00020] FIG. 7 illustrate a flow chart of an example for using a calibration pattern comprising the geometric elements to determine preliminary transform factor.

DETAIFED DESCRIPTION

[00021] Provided herein are exemplary implementations of methods programs and systems using pattern-based calibration and alignment of print head’s starting position, timing and rotation, configured to provide high resolution“drop-on-drop” capabilities, as well as high accuracy drop placement and print head condition.

[00022] The methods, programs and systems described herein can be used to calibrate and align a single print head or a group of print heads. The three dimensional printer used in the systems and methods described herein, is based on a“drop-on-demand” (DOD), of which“drop-on-drop, is a subset, namely direct deposition 3D printing technology, where the drop interposition produces the different layers. The printing process can make use of a series of ink-jet print heads to deposit several liquid materials on a printing surface. The resulting layer of liquid is subsequently dried or cured or otherwise solidified using, for example a combination of heaters and UV light sources optionally before or after each subsequent layer is printed on top of the previous one. Many such layers can be combined to construct a complete 3D object. In addition, the methods programs and systems described herein can be used to fabricate 3D Object(s) including composite materials, using the same or different materials with the same, different or additional print heads or heads.

[00023] The systems and methods described herein can be implemented on a single nozzle, for example after a number of ink jetting pulses along a printing direction, to measure the cluster properties and the cluster distribution from an expected location. Similarly the analysis described herein can be performed on a number of printed patterns formed by the drops/dots alone.

[00024] Accordingly and in an exemplary implementation, provided herein is a method of aligning at least one print head position and yaw angle in a computerized three dimensional (3D, in other words, for printing in layers) and/or two dimensional (2D, in other words, as a monolayer) printing system. The printing system comprising for example: an inkjet printer having an imaging module operably coupled thereto, the at least one print head having a nozzle plate with plurality of nozzles, the nozzle plate defining a longitudinal axis ¾ transverse to a printing direction (see e.g., FIG. 4A), the method comprising: providing a chuck, the chuck; printing on the substrate a plurality of drops (R y >2) from each nozzle (N x , e.g., 512 nozzles) at a predetermined distance (for example, between about 0.5 pm and about 500 pm); applying a preliminary transform factor (PTF) to determine an expected location for capturing at least one image using the imaging module ; capturing at least one image, corresponding to a predetermined field of view (FOV) of the expected location for plurality of drops (as anticipated for example, by the application of the PTF); identifying actual location of each of the plurality of printed dots on the image; mapping the identified actual location to the corresponding reference location of each drop identified by coordinates on the chuck used in the printing system. Then, using the mapping, calculating at least one of: a translation error, a rotation error and any other transformation (for example, shear error) from all the mapped expected locations and based on at least one of the translation error, rotation error, and any other transformation, aligning at least one of: the print head’s starting position, and the printer yaw angle of the nozzle plate’s longitudinal axis relative to the print direction.

[00025] As used herein, the term“expected location” (EL) refers to the location of any element as programmed by the computerized system and its designated position on the chuck, using X-Y coordinate system after applying the preliminary transform factor (PTF). Similarly, the term“actual location” (AL) refers to the measured location of a printed element, whether a single drop or a full geometric element (see e.g., FIG. 1) on the chuck using the same X-Y coordinate system, after detection at the expected location. Also, the term“reference location, (RL) refers to the location where printing was desired. Conversely,“transformed location” (TL) refers to the transform between the RL and AL.

[00026] The term“imaging module” as used herein means a unit that includes a plurality of built-in image sensors and outputs electrical signals, which have been obtained through photoelectric conversion, as an image, while the term“module” refers to software, hardware, for example, at least one processor, or a combination thereof that is programmed with instructions for carrying an algorithm or method. The modules described herein may communicate through a wired connection, for example, a hard-wired connections, a local area network, or the modules may communicate wirelessly. The imaging module may comprise line cameras, laser scanners, charge coupled devices (CCDs), a complimentary metal-oxide semiconductor (CMOS) or a combination comprising one or more of the foregoing. For example, the imaging module can comprise a line scan camera and the field of view (FOV 120 n ), will be determined by a predetermined scan period. If static images are required, the imaging module can comprise a digital frame camera, where the FOV can be predetermined by, for example, the camera size and the distance from the pattern. The cameras used in the imaging modules of the systems and methods disclosed, can be a digital camera. The term“digital camera” refers in an exemplary implementation to a digital still camera, a digital video recorder that can capture a still image of an object and the like. The digital camera can comprise an image capturing unit or module, a capture controlling module, a processing unit (which can be the same or separate from the central processing module for the printer), a display module and an operating module. Capturing the image can be done with, for example image capturing means such as a CCD solid image capturing device of the full-frame transfer type, and/or a CMOS-type solid image capturing device, or their combination.

[00027] In an exemplary implementation illustrated in FIG. 1, the pattern , can comprise an array of a plurality of dots each dot (actually printed dot or AD in FIG.s 5A-5B), represents an expelled drop (dot) printed by a single nozzle in the nozzle plate, as printed along the printing direction. As illustrated in FIG. 1, PHI having 19 nozzles in the nozzle plate (portion of which illustrated in FIG. 4), printed 27 drops along the printing direction, thus providing discrete information on that particularly identifiable nozzle in the print head’s nozzle plate. Nozzle plate additionally or alternatively, to obtain additional information on the nozzle, such as spray pattern or natural drop distribution, a single nozzle can be configured to print a plurality of dots along a printing direction.

[00028] The step of matching between a geometric shape and a particular location places the reference location (the intended printing location) to the actual location (where the drops/dots were detected) for the calibration pattern of the printed dots (or drops) at a predetermined number of expelled drops (e.g., between 2 and 2000) at a predetermined distance, can comprise (following applying of the PTF to determine an expected location to capture at least one image of the plurality of printed dots, or a portion thereof), digitizing (each of) the captured image(s) of the calibration pattern each image with a known FOV, establishing an expected location (EL) for each printed dot 103 e (for example, a certain radius from the FOV’s center), to be printed and then rendering a rectangle 105 p (see e.g., FIG. 2A), sized and configured to symmetrically inscribe the expected location 103 e for each printed dot on (each of) the captured image(s) (see e.g., 103 e FIG. 2A). When capturing a plurality of images, rather than a single image each captured image has the same or different FOV 120 n , and capturing the plurality of images is configured to create plurality of overlapping images, each corresponding to known coordinates on the chuck, such that all the images are configured and sized to capture the whole printed pattern (see e.g., detail A FIG.1) 104. If a single image is captured, the single image is sized and configured to capture all of printed pattern 104. Following the rendering of the rectangle inscribing the expected location (EL), or alternatively, other quadrilateral polygon that reflects the a spatial configuration of the array (in other words, the distance between nozzles on the Y direction and the predetermined distance between each drop expulsion, and/or the predetermined distance in the X direction, whereby at a specific Y location, only n th nozzle will expel ink), the method further comprises (see e.g., FIG. 2A, 2B) cropping each rectangle, by an amount (pixels) configured to provide the corresponding expected location for each printed dot from each nozzle along the printing direction and may reflect the anticipated area for each printed dot (drop), thus providing discrete expected location (109 c FIG. 2B - EL). Then, using the (plurality of) digitized image(s) of the calibration pattern portion, detecting actual printed dot (AD) inscribed within each of the corresponding cropped rectangle 109 c , representing the actual location (AL). In addition to identifying the actual dot location, other nozzle- specific parameters can be determined at this time, for example dot (drop) area and circularity (defined for example as 4p x (Area/circumference 2 ). These and other nozzle-specific parameters disclosed herein can be further analyzed and used in modifying the nozzle- specific printing parameters. These parameters can be, for example, timing, amount, location and the like and others, using software, generated appropriate waveforms (e.g., by looking at all the nozzles quality parameters as a score indication for the head performance thereby optimizing waveform parameters), to drive the piezoelectric actuators inside the print-head(s) to dispense individual drops as needed.

[00029] Once the mapping of the actual dots 103 a to their corresponding reference location 103 r is completed, for all actually inscribed printed dot 103 a (and not to any other dot), is completed, calculating an affine transform factor 150 r between all actually detected drops printed dot locations 103 a and the corresponding reference locations. Alternatively, the reference location can be mapped to the actual location of each printed dot.

[00030] This is done by finding a single transform factor that would minimize the error for all printed dots, for example, by using statistical methods, such as minimizing the absolute value of the sum of the square of the distance between the actual dot location AD and the reference location RL. The calculated transform factor would thereby provide the translation error (Err t ). Once the affine transform factor 150 r is calculated, it is applied to each reference dot location 103 r , thus providing a transformed dot location (TL) 103 t (see e.g., FIG. 2C); and calculating an average error vector 108 q between each actually printed dot location 103 a inscribed in reference location 109 c (in other words, 103 r ) and the corresponding transformed dot location, per nozzle using the plurality of drops printed by a single nozzles along the printing direction.

[00031] In an exemplary implementation partially illustrated schematically in FIG. 3, before the step of calculating the average error vector between each actually printed dot location or reference location 103a, 103r respectively, and the corresponding transformed dot location 103 t , calculating a discrete error vector 108 q between each actually printed dot location or reference location 103a, 103r respectively inscribed within expected location 109 c and the corresponding transformed dot location 103 t .

[00032] In another exemplary implementation, using the discrete error vector 108 q , per nozzle as indicated above it is possible to perform statistical analysis on each corresponding nozzle; and detect failed nozzles, and/or compensate for any deviation. A maximum error can be defined to provide metrics to assess the print quality that can be obtained with any given print head. For example, the maximum deviation that is allowed before action is taken is, for example, 50%, which means a shift of half the distance from the original drop center 103 a to the corresponding transformed dot location 103 t . Additionally, if no actual dots (printed drops) are detected in the reference location 109c, an assumption is made (in other word, the system input), by the computerized system that there are clogged nozzles, which may require additional remediation. An additional automatic analysis enabled by the systems and methods described herein is the determination of whether and when to replace a print head. This can take place once the statistical analysis reveals a blockage of a certain percentage of the nozzles in the nozzle plate, for example between about 10% and about 15% of the total number of nozzles, or the number of nozzles above which there may be anomalies in the thickness of the layer formed by the ink.

[00033] The systems used herein for calibration and alignment of print head and/or print head groups in 3D and/or 2D printers, can be computerized systems further comprising a central processing module; a display module; and a user interface module. The Display modules, which can include display elements, which may include any type of element which acts as a display. A typical example is a Liquid Crystal Display (LCD). LCD for example, includes a transparent electrode plate arranged on each side of a liquid crystal. There are however, many other forms of displays, for example OLED displays and Bi-stable displays. New display technologies are also being developed constantly. Therefore, the term display element should be interpreted widely and should not be associated with a single display technology. Also, the display module may be mounted on a printed circuit board (PCB) of an electronic device, arranged within a protective housing and the display module is protected from damage by a glass or plastic plate arranged over the display element and attached to the housing. Additionally,“user interface module” broadly refers to any visual, graphical, tactile, audible, sensory, or other means of providing information to and/or receiving information from a user or other entity. For example, a set of instructions which enable presenting a graphical user interface (GUI) on a display module to a user for displaying and changing and or inputting data associated with a data object in data fields. In an exemplary implementation, the user interface module is capable of displaying any data that it reads from the imaging module.

[00034] In an exemplary implementation, the method for aligning the print head(s) further comprises using the display, displaying the digitized image of the calibration pattern; using the user interface, allowing a user to perform visual inspection of the printing substrate, and enter (or remove) actual dots’ location; updating the actual dot location 103 a . This way, if the at least one processor is unable (using the imaging module) to detect the actual dot location 103 a inside the reference location 109 c , for whatever reason, the actual dot location can be verified and be entered manually, thus increasing the specificity and selectivity of the calibration and alignment. The manual update of the actual dot location can be done before, during, or after the identification of the actual dots within the cropped rectangle, thus increasing the data set to calculate the discrete and average error vectors.

[00035] Furthermore, and as illustrated schematically in FIG. 4, in order to provide the rotation error, the methods implemented using the computerized systems described herein, can comprise linearly fitting each row R n of actual printed dots 103 a representing the expelled, or ejected drops from each nozzle in the nozzle plate along the printing direction and linearly fitting each column Nn, representing the specific nozzle location along the nozzle plate’s longitudinal axis ¾, of actual printed dots; calculating the discrete error (in other words, the deviation from 90°) angle between each linearly fitted column and each linearly fitted row; and calculating an average error angle, thus providing the rotation error of the yaw angle 6kaw (see e.g., FIG. 4)

[00036] Calculating the preliminary transform factor used in the calibration methods described herein, comprises printing on the chuck a plurality of geometric elements (GEs), each GE sized and configured to be printed using a plurality of nozzles. The GEs can be printed before calibration pattern 104 of the predetermined number of expelled drops are printed at a predetermined distance between each ejection along the printing direction and provide the parameters to be used in establishing the expected dot location (in other words, the preliminary transform factor - PTF), and by proxy, the transformed dot location. However, the geometric elements may not be necessary for each calibration procedure. The plurality of GEs are sized such that each having a predetermined dimensions, wherein, as indicated each GE is configured to be printed by a plurality of nozzles in the nozzle plate.

[00037] In an exemplary implementation, calculating the preliminary transform factor comprises printing on the chuck, the plurality of geometric elements GEs, each GE having a predetermined representative dimensions (see e.g., h, 110i, FIG. 1), wherein each GE 101 i , 102 j is configured to be printed by a plurality of nozzles in the nozzle plate. In other words the intent here is to print geometric shapes (elements, see e.g., 10E, 102 j FIG. 1) that are complex enough to provide simultaneous spatial orientation regarding both translation and rotation aspects of the print head’s nozzle plate. Turning back to FIG. 1, in an exemplary implementation, the plurality of GEs 101 i, 102 j are printed in two rows of staggered pairs (in other words, not aligned on an axis perpendicular (transverse) to the printing direction), along the printing direction, and the calibration pattern portion 104 of the predetermined number of drops’ expelled at a predetermined distance, is sandwiched between the two rows. Although FIG. 1 shows 8 GEs lOli, 102 j in two staggered rows, it is contemplated that less or more GEs can be used, such as no less than 2. As illustrated, GEs lOli, 102 j can be the same or different, (e.g., h in circles 102j, or tie line 1 lOi in hexagon lOli).

[00038] Accordingly, the method can further comprise using the imaging module, capturing one or more image(s) of the FOV 120 n around each row of the two rows of GEs, wherein, if a plurality of images each having the same or different FOV(s) are taken, the image(s) 120n are configured to overlap at a predetermined level (in other words the series of images captured are configured to overlap by a certain percentage, for example, between 10% band 50%). Once the discrete images each using a field of view (FOV) of known coordinates on the printing chuck, are captured by the imaging module, the method further comprises digitizing each of the plurality of images and identifying the image(s) where a full GE can be best mapped to its actual location on the chuck.

[00039] Electing the image representing the GE best coordinates’ location can further comprise, for all objects detected at the location corresponding to the same printed object, selecting the captured image, or averaged coordinates in a group of images of the GE sought to be located in the X-Y coordinate system, that provides the best indication of the GE’s coordinates (e.g., the circle with detected radius as closest to the reference, or a GE that is fully in the frame). Alternatively, as indicated, averages on the detected coordinates can also be employed. As illustrated in FIG. 1, the representative dimension can be the radius h of geometric element (circle) 102 j , or chord 110i of polygon (hexagon) lOli. Further, an additional parameter in selecting the GE best mapped (in other words, establishing its coordinates), can be by electing the image fully inscribing the GE that is as close as possible to the FOV center. Here, using group matching, each GE is mapped to the coordinates of the FOV and the error for each geometric element can be measure for example as the difference in the X-Y coordinates relative to the direction of printing between the actual and the reference location executed by the computerized printing system originally. Then, a transform factor is calculated such that the transform factor would minimize the error between the coordinates of the actual, measured representative dimension (for example, the center circle j, or hexagon center i. and the expected, or desired coordinates originally sought to be executed by the computerized system. In other words, the system solves for a, b, c, d, t x , and t y in order to minimize:

[00040] In certain exemplary implementation, the system implementing the methods provided herein, using the computer programs disclosed herein can comprise two or more (a plurality) of print heads, each print head configured to print a different ink type with different properties, such as different colors, viscosities, interfacial tension, conductivity, resistivity, or a combination of physico chemical properties comprising one or more of the foregoing. In these circumstances, the calibration pattern can be printed per print head (see e.g., PH i, PH2 FIG. 1), aligned, providing registration between the print heads, and then per print head group. Additionally or alternatively, calibration patterns 100 can be printed per print head group, and several time per print head.

[00041] The affine transformation can be represented by the 4 coefficients a,b,c,d composing the matrix A for the linear part, plus the coefficients v x ,v y of the translation vector {v }:

(Equ. 2)

where the affine transformation maps each dot 103 « in the Cartesian coordinates (x, y) T to (c', y') T , of calibration print pattern 100 according to the formula:

where“·” is the matrix product, and“+” the vector sum, wherein, as in here, translations can be independently determined, for example based on cross-correlation with fiducial markers 101,·.

[00042] Various affine transforms can be used on the calibration pattern portions. These can be, for example:

a change of aspect-ratio of factors s x , s y , which is equivalent to different rescalings along the x- and/or the y-axis, represented by the formula: (Equ. 4)

and/or

a rotation of angle Q represented by the formula:

) (Equ. 5)

and/or

shearing along the x- and/or the y-axis of factors s' x , s' y , represented by the formula:

[00043] A person skilled in the art would recognize that depending on whether the reference being used for mapping is reference GE (GER) selected in step 703 (see e.g., FIG. 7), from direct printing, the affine transform factor can be obtained (704) from successive combination of affine transforms Ai, i=l . . . n for each object in the calibration pattern comprising the geometric elements pattern portions ( in other words, A=A h ·A h -i· . . . Ai), can be recovered by using, for example at least one of: a transform invariant domain, an additional calibration template/pattem, and exploiting the self-reference principle based on an auto-correlation function (ACF) causing the affine transform to be self-improving from one iteration to the next.

[00044] Accordingly and in an exemplary implementation illustrated in FIG.s 2A-5B, aligning at least one of a starting position and yaw angle of at least one print head in a computerized three dimensional (3D) printing system and/or 2D printing system comprises: obtaining a preliminary transform factor (PTF) and a preliminary expected error (PEE) 501 (see e.g., FIG. 5A); printing 502 the calibration pattern 104 of the predetermined number of drop ejections at a predetermined distance between each ejection, or portion thereof along the printing direction; determining the expected dot location by employing the preliminary transform factor (PTF); capturing 503 FOV 120 n (see e.g., FIG. 1) one or a plurality of images of the calibration pattern 104 at their expected location (which, as mentioned, can be achieved by applying the PTF to the reference location). Accordingly, if the programmed print at location is at X,Y - coordinate (10,10) the reference location (RE), but the PTF indicates there is (20,20) shift or translation, the image will be captured at coordinates (30,30) the expected location after applying the PTF. Following the digitizing of each image of the calibration pattern portion 104, rendering 504 a rectangle 105 ; ,, (see e.g., FIG. 2A) sized and configured to symmetrically inscribe the expected location 103 e for each printed dot 103 i ; followed by cropping 505 each rectangle 105 p to a size configured to inscribe the expected location determined by the PTF (see e.g., 508, FIG. 5B, 106, 107 FIG. 2A) for a single printed dot; then, detecting (see e.g., 506) actual printed dot 103 « inscribed within each of corresponding cropped rectangle 109 c (see e.g., FIG. 2B) thus providing actual dot location (AL) 103 a ; using e.g., least sums squares methodology for all inscribed, actually printed dot 103 r , calculating 507 an average transform factor A n between the AL of each dot and its corresponding reference location (RL). Then the average transform AH factor is applied (see e.g., 508, FIG. 5A) to each reference dot 103 r location thus providing a transformed dot 103 T location (see e.g., FIG. 2C); and calculating a discrete error (vector) 509 between each actual dot location 103 a from the specific nozzle in the nozzle plate and the corresponding transform location 103 t along the printing direction from which, using all printed dots per nozzle, along the printing direction, an average error vector, per nozzle v aV g (see e.g., FIG. 3), is calculated, (see e.g., 510, FIG. 5B).

[00045] The total error can be minimized once the transform is calculated, whereby the coefficients of the transform are calculated to minimize the error, such that the remaining error is due to“bad” (e.g., partially clogged, damaged, warped, etc.) nozzles. Once mapping the actual dot location to the expected dot location is done 510, rendering an error map 511, providing the discrete error per nozzle to be used for statistical and other analysis 512 of each nozzle in the nozzle plate. The other analysis that is performed per nozzle can be, for example, calculating the average dot area per nozzle, and/or circularity, and/or dot uniformity (density/area). Furthermore, the analysis could comprise Spray pattern analysis, statistics on location accuracy of each nozzle in the nozzle plate as part of the whole print head, and the existence of all ejected (or expelled) drops on the pattern or at least a minimum number to be considered as qualifying the nozzle/print head as proper for printing. Accordingly, using discrete error vector 1 statistical analysis can be performed on each corresponding, specific nozzle (see e.g., 514, FIG. 5B); and failed nozzles can be detected 513. These statistics are used for example, in making decisions on whether to cancel the printing from a particular nozzle, or varying nozzle- specific printing parameters to compensate for any misalignment thus increasing the printing accuracy of the nozzle and by proxy, the print-head and print- group.

[00046] In an exemplary implementation, each of the plurality of rows (R n See e.g., FIG. 4), representing the number of ejected drops along the printing direction and each column N n, representing the specific nozzle along the nozzle plate longitudinal axis in the calibration pattern array 104 is fitted linearly 514, (see e.g. FIG. 5B), and the angle # between each linearly fitted row and linearly fitted column is calculated 515and recorded. The discrete angles (9 are then averaged 516 thus providing the average rotation angle (ARA yaw angle) for the print head PH. Then using the ARA, calibrate 517 the PH relative to the printing direction and using the translation component in the affine transform factor, translate 518 the PH print-starting position relative to the printing direction in both the X and Y direction.

[00047] As indicated, the systems implementing the methods provided, using the programs provided can further comprise a central processing module; a display module; and a user interface module. The term‘module 5 , as used herein, means, but is not limited to, a software or hardware component, such as a Field Programmable Gate-Array (FPGA) or Application-Specific Integrated Circuit (ASIC), which performs certain tasks. A module may advantageously be configured to reside on an addressable storage medium and configured to execute on one or more processors. Thus, a module may include, by way of example, components, such as software components, object-oriented software components, class components and task components, processes, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables. The functionality provided for in the components and modules may be combined into fewer components and modules or further separated into additional components and modules.

[00048] Accordingly, the method for aligning at least one of the starting position or the yaw of the print head and/or print head group relative to the printing direction can be further configured to provide the user with the ability to perform manual data entry into the calibration procedure. Accordingly and in an exemplary implementation, (see e.g., FIG. 6), the methods implemented by the systems provided herein further comprise using the display, rendering and displaying 601 the discrete error map (see e.g., FIG. 3, step 511, FIG. 5) and display the digitized image of the calibration pattern 104 to a user, at which point, and using the user interface module, allowing the user to manually enter (or remove) actual dot’s location (see e.g., 602, FIG. 6); thus updating the actual dot 103 « location on the error map (see e.g., FIG. 3); repeating 603 the steps 507-518 as described and recalculate 604 the average error vector v aV g per nozzle as describe herein (see e.g., FIG.s 5A-5B). It is noted, that manual addition/removal of dots can be done as an additional nozzle-specific analysis, whereby, for example, dots with a dot-print- area that exceeds a predetermined threshold defined by the analysis program (e.g., A>50 pm 2 ), can nevertheless be counted and added to the nozzle- specific analysis. Similarly, dots having poor circularity that may have not been identified as dots by the imaging module, can likewise be added to the nozzle specific analysis.

[00049] Once the average error vector per nozzle v aV g is calculated, with the additional actual dots’ location, either added or removed, in an exemplary implementation, the average rotation error is also recalculated 604 to yield the average rotation error. During the manual input of the actual points, suspicious drops, for examples drips that were not expelled by the nozzles, but rather dripped from the nozzle plate, can be removed, as well as outliers be taken away. It is noted that the manual entry and/or removal of dots can be done after the calibration process ended, or at any time during the calibration and aligning process. Moreover, the statistical analysis can be done in an exemplary implementation on a different computerized system or subsystem. In other words, while the alignment can be done by printing the calibration patterns, the nozzle analysis, and input/removal of data can be done after the process terminates on a stand-alone computerized system not including the 3D printer.

[00050] Accordingly and based on at least one of the translation error (in other words, the affine transform factor) and the rotation angle error 6 r , in circumstances where the print system comprises a printing group of a plurality of print heads, translating the print head group laterally relative to the printing direction (in other words, in the Y-axis), to a degree, or distance configured to reduce at least one of the translation error and the rotation error. Additionally or alternatively, the translation can be performed using the software to determine printing location of each print head in the group. Furthermore, the timing of the printing may be changed for each of the print heads groups so that the average error between expected and actual location of the actual dots 103 a is reduced, minimized or outright eliminated compared to the error before the start of the calibration and alignment process. Furthermore, transormation can be performed on the print data for example, to correct the drop placement location error caused by the print heads’ established configuration in terms of rotation (Yaw), shear, scaling, and starting position.

[00051] Turning now to FIG. 7, illustrating schematically an exemplary implementation for determining the preliminary (affine) transform factor. Accordingly, a pattern of geometric elements (GEs) are printed 701, each having a predetermined representative dimension (PRD). The distance between the elements, both on the X direction (printing direction) and Y direction (perpendicular to the printing directions) is configured to remove any ambiguity as to the discrete nature of the GEs. Next, a plurality of overlapping images are captured 702, each having the same or different FOV 120 n (see e.g., FIG. 1), followed, by selecting at least one image inscribing each (or all) of the plurality of GE’s printed 703. In an exemplary implementation, all captured images are inspected and GEs’ are detected. In an example, no GEs are detected in the first image, whole GEs are detected in the second, and partial (e.g., 70%) GE is detected in the third captured image. If the coordinates of the detected GEs within a predefined (small, threshold) range are such, that they correspond to the same printed GE, the coordinates of the GE in the second image will be the input. Alternatively, the coordinates of all the detected GEs in different images at approximately same location can be averaged and used.

[00052] Once selected and using group matching to map the printed GE’s (or their selected representative dimension, e.g., the circle 102j center), to their desired printing location (reference location) as initially executed by the computerized system; an affine transform is calculated 704 for all printed GE’s. It is noted, that the transform is calculated based on all GE’s printed as a group.

[00053] In an exemplary implementation, the methods provided herein are implemented using the systems provided. Accordingly, provided herein is a computerized system for automatically aligning at least one of: a starting position and yaw angle of at least one print head in at least one of: a three dimensional (3D) and two dimensional (2D) printer, the system comprising: a at least one of a 2D and 3D inkjet printer comprising: at least one print head with a nozzle plate defining a plurality of nozzles, the nozzle plate defining a longitudinal axis transverse to a printing direction, with the at least one print head adapted to be aligned; a chuck, an imaging module operably coupled to the at least one print head; a central processing module (CPM) in communication with the at least one print head, and the imaging module, the CPM further comprising at least one processor and a processor- readable medium coupled to a memory having thereon a set of executable instructions, configured, when executed, to cause the at least one processor to: print on the chuck, a predetermined number of drops from each nozzle, at a predetermined distance along the printing direction; using a preliminary transform factor, determine the expected location for the printed dots; using the imaging module , capture one or more image(s), corresponding to a field of view (FOV) at the expected location; identify actual dots present at the expected location, providing an actual location; map the identified actual dot location to its corresponding reference location; using all the mapped drops’ thus extracted, calculate at least one of: a translation error, a rotation error, a shear error, and any other transformation; and based on at least one of the translation error and rotation error and shear error, align at least one of: the print head’s starting position, the print head’s yaw angle and sheer of the nozzle plate’s longitudinal axis relative to the printing direction. [00054] Unless specifically stated otherwise, as apparent from the discussions, it is appreciated that throughout the specification discussions utilizing terms such as“processing,”“loading,”“in communication,”“detecting,”“calculating,”“determ ining”,“analyzing,” or the like, refer to the action and/or processes of a computer or computing system, or similar electronic computing device, that manipulate and/or transform data represented as physical, such as the first and/or second printed calibration patterns into other data similarly represented as physical layers, such as the transformed data.

[00055] In certain exemplary implementations, the obtained image will be manipulated and converted to vector data models (VDMs), where the captured image is converted and captured as points, lines, and polygons and their combination.. Objects in the patterns can be displayed along with (e.g., can overlay) vector and other data.“Object” can refer to anything with object attributes, where object attributes are attributes characterizing at least part of an object to be displayed, such as diameter, a radius, a chord, or a distance between objects of a circle or dot, longest single dimension, or a combination thereof. An object can be a geometric element.

[00056] In the methods, programs and systems described herein, each of the ink-jet print heads in a given printer may only have partial coverage of the desired print area, and thus can require multiple forward and backward (in other words, on an X-Y plane, the reciprocating motion is in a single axis x-direction and/or y-direction) printing passes. The various ink materials may be printed in alternation using multiple different print passes for each type of material.

[00057] As indicated, provided herein is a computer program, comprising program code means for carrying out the steps of the methods described herein, as well as a computer program product (e.g., a micro-controller) comprising program code means stored on a medium that can be read by a computer, such as a hard disk, CD-ROM, DVD, USB memory stick, or a storage medium that can be accessed via a data network, such as the Internet or Intranet, when the computer program product is loaded in the main memory of a computer [or micro-controller] and is carried out by the computer [or micro controller] .

[00058] Furthermore, provided herein is a computer-readable medium comprising the executable instructions disclosed. The term“computer-readable medium” as used herein, in addition to having its ordinary meaning, refers to any medium that participates in providing instructions to a processor for execution. Such a medium may take many forms, including but not limited to, non- volatile media and volatile media. Non-volatile media can be, for example, optical or magnetic disks, such as a storage device. Volatile media includes dynamic memory, such as main memory.

[00059] Memory device as used in the methods, programs and systems described herein can be any of various types of memory devices or storage devices. The term“memory device” is intended to encompass an installation medium, e.g., a CD-ROM, or tape device; a computer system memory or random access memory such as DRAM, DDR RAM, SRAM, EDO RAM, SSD RAM, Rambus RAM, etc.; or a non-volatile memory such as a magnetic media, e.g., a hard drive, optical storage, or ROM, EPROM, FLASH, etc. The memory device may comprise other types of memory as well, or combinations thereof. In addition, the memory medium may be located in a first computer in which the programs are executed (e.g., the 3D inkjet printer provided), and/or may be located in a second different computer [or micro controller] which connects to the first computer over a network, such as the Internet [remark: they might be even not connected and information will be transferred using USB stick]. In the latter instance, the second computer may further provide program instmctions to the first computer for execution. The term“memory device” can also include two or more memory devices which may reside in different locations, e.g., in different computers that are connected over a network.

[00060] The term "comprising" and its derivatives, as used herein, are intended to be open ended terms that specify the presence of the stated features, elements, components, groups, integers, and/or steps, but do not exclude the presence of other unstated features, elements, components, groups, integers and/or steps. The foregoing also applies to words having similar meanings such as the terms, "including", "having" and their derivatives.

[00061] The terms“a”,“an” and“the” herein do not denote a limitation of quantity, and are to be construed to cover both the singular and the plural, unless otherwise indicated herein or clearly contradicted by context. The suffix“(s)” as used herein is intended to include both the singular and the plural of the term that it modifies, thereby including one or more of that term (e.g., the circle(s) includes one or more circle). Reference throughout the specification to “one exemplary implementation”,“another exemplary implementation”,“an exemplary implementation”, and so forth, when present, means that a particular element (e.g., feature, structure, and/or characteristic) described in connection with the exemplary implementation is included in at least one exemplary implementation described herein, and may or may not be present in other exemplary implementations. In addition, it is to be understood that the described elements may be combined in any suitable manner in the various exemplary implementations.

[00062] Furthermore, the terms“first,”“second,” and the like, herein do not denote any order, quantity, or importance, but rather are used to denote one element from another. Likewise, the term "about" means that amounts, sizes, parameters, and other quantities and characteristics are not and need not be exact, but may be approximate and/or larger or smaller, as desired, reflecting tolerances, conversion factors, rounding off, measurement error and the like, and other factors known to those of skill in the art. In general, an amount, size, formulation, parameter or other quantity or characteristic is "about" or "approximate" whether or not expressly stated to be such.

[00063] Although the foregoing disclosure for methods programs and systems using pattern- based calibration and alignment of print head’s starting position, timing and rotation, operable to provide high resolution“drop-on-drop” capabilities have been described in terms of some exemplary implementations, other exemplary implementations will be apparent to those of ordinary skill in the art from the disclosure herein. Moreover, the described exemplary implementations have been presented by way of example only, and are not intended to limit the scope of the exemplary implementations. Indeed, the novel methods, programs, and systems described herein may be embodied in a variety of other forms without departing from the spirit thereof. Accordingly, other combinations, omissions, substitutions and modifications will be apparent to the skilled artisan in view of the disclosure herein.

[00064] In the context of the disclosure, the term "operable" means the system and/or the device and/or the program, or a certain element or step is/are fully functional sized, adapted and calibrated, comprises elements for, and meets applicable operability requirements to perform a recited function when activated, coupled, implemented, effected, realized or when an executable program is executed by at least one processor associated with the system and/or the device. In relation to systems and AME circuits, the term "operable" means the system and/or the circuit is fully functional and calibrated, comprises logic for, and meets applicable operability requirements to perform a recited function when executed by at least one processor.

[00065] The disclosure above is further clarified with the aid of functional building blocks illustrating the performance of certain significant functions. The boundaries of these functional building blocks have been arbitrarily defined for convenience of description. Alternate boundaries could be defined as long as the certain significant functions are appropriately performed. Similarly, flow diagram blocks may also have been arbitrarily defined herein to illustrate certain significant functionality. To the extent used, the flow diagram block boundaries and sequence could have been defined otherwise and still perform the certain significant functionality. Such alternate definitions of both functional building blocks and flow diagram blocks and sequences are thus within the scope and spirit of the claimed invention. One of average skill in the art will also recognize that the functional building blocks, and other illustrative blocks, modules and components herein, can be implemented as illustrated or by discrete components, application specific integrated circuits, processors executing appropriate software and the like or any combination thereof.

[00066] In an exemplary implementation, provided herein is a method of aligning at least one print head position and yaw angle (in other words, the angle a longitudinal axis extending through the print head in the Z direction (transverse to the printing direction and away from the printing surface), is rotated in a computerized three dimensional (3D) and/or two dimensional (2D) printing system comprising an inkjet printer, optionally having an imaging module operably coupled thereto, the at least one print head having a nozzle plate with plurality of nozzles, the nozzle plate defining a longitudinal axis transverse to a printing direction, the method comprising: providing a chuck and a substrate; printing on the chuck, at a reference location a plurality of drops from each nozzle, at a predetermined distance along the printing direction; using a preliminary transform factor, determining an expected location for the plurality of printed drops; using the imaging module, capturing at least one image corresponding to a predetermined field of view (FOV) of the expected location determined by applying the preliminary transform factor; identifying printed dots at the expected location; mapping an actual location to a reference location of each drop; using the mapping, calculating at least one of: a translation error, a rotation error and any other transformation from the mapped reference location; based on at least one of the translation error, rotation error, and any other transformation, aligning at least one of: the print head’s starting position, and the printer yaw angle of the nozzle plate’s longitudinal axis relative to the print direction, wherein (i) the step of mapping (in other words locating on the display) the actual location, to the corresponding reference location of each dot comprises: using the preliminary transform factor, establishing the expected location for each dot; digitizing each of the captured images obtained from the expected location; rendering a rectangle sized and configured to symmetrically inscribe the expected location for each printed dot, and/or an area of interest on each of the captured images; detecting actual printed dot inscribed within each of the corresponding rectangle of the expected dot location; for actually inscribed printed dots as a whole pattern, calculating an affine transform factor between actually printed dots’ location and the corresponding reference dots’ location, thus providing at least one of: the translation error, and printing starting position offset; applying the affine transform factor to each reference dot location thus providing a transformed dot location; and calculating an average error vector between actually printed dots’ location and the corresponding transformed dots’ location, the method (ii) further comprising, before the step of calculating the average error vector between all actually printed dot locations and the corresponding transformed dot locations, calculating an error vector per nozzle for each actually printed dot location and the corresponding transformed dot location for all dots printed by each nozzle along the printing direction, further comprising (iii) using the discrete error vector, performing a statistical analysis on each corresponding nozzle; and detecting failed nozzles, (iv) the statistical analysis further comprises calculating at least one of an average circularity per nozzle, an average volume per drop per nozzle, and an average area per drop per nozzle, wherein (v) calculating the preliminary transform factor further comprises printing on the substrate a plurality of a geometric element, wherein each geometric element is configured to be printed by a plurality of nozzles defined in the nozzle plate, (vi) the plurality of geometric elements are printed in two rows of staggered pairs along the printing direction, and the calibration pattern of the predetermined number of drop ejections at a predetermined distance between each ejection portion is sandwiched between the two rows, the method further comprising (vii) using the imaging module, capturing at least one image having an FOV around each row of the two rows of geometric elements, each geometric element having a representative dimension, wherein the FOV are configured to overlap at a predetermined level; digitizing the plurality of images; providing the location of each of the geometric element; and matching each geometric element’ s representative dimension to a programmed printing location for the corresponding geometric element’ s representative dimension, wherein the programmed printing location for the corresponding geometric element’s representative dimension provides a reference location, further comprising (viii) calculating a first affine transform factor among all the matched geometric elements and their matched reference location, (ix) the geometric element is a circle and the representative dimension is a center of the circle, wherein (x) the system further comprises: a central processing module; a display module; and a user interface module, whereby the method further comprises (xi) using the display, displaying the digitized image of the calibration pattern with the cropped rectangles; with user interface, allowing a user to at least one of enter and remove actual dot’ s location; updating the actual dot location; and repeating the steps of: before the step of calculating the average error vector between all actually printed dot locations and the corresponding transformed dot locations, calculating an error vector per nozzle for each actually printed dot location and the corresponding transformed dot location for all dots printed by each nozzle along the printing direction.

[00067] In another exemplary implementation, provided herein is a computerized system for automatically aligning at least one of: a starting position and yaw angle of at least one print head in at least one of: a three dimensional (3D) and two dimensional (2D) printer, the system comprising: at least one of a 2D and 3D inkjet printer comprising at least one print head adapted for alignment with a nozzle plate defining a plurality of nozzles, the nozzle plate defining a longitudinal axis transverse to a printing direction, with the at least one print head adapted to be aligned with respect to the starting position and the yaw angle; a chuck and a substrate; optionally, an imaging module operably coupled to the at least one print head; a central processing module (CPM) in communication with the at least one print head, and the imaging module, the CPM further comprising at least one processor and a processor-readable medium coupled to a memory having thereon a set of executable instructions, configured, when executed, to cause the at least one processor to: print on the substrate at a desired reference location, a predetermined number of drops from each nozzle, at a predetermined distance; apply a preliminary transform factor to determine an expected print location; using the imaging module, capture at least one image corresponding to a predetermined field of view (FOV) at the expected location; at the expected location, identify and locate actually printed drops, providing actual dot location; map the actual location to the reference location of each drop; using all the mapped drops’ actual location, calculate at least one of: a translation error, a rotation error, a shear error, and any other transformation; and based on at least one of: the translation error, the rotation error, shear error, and nozzle- specific statistical analysis, align at least one of: the print head’s starting position, the print head’s yaw angle, shear of the nozzle plate’s longitudinal axis relative to the printing direction and potentially modify a nozzle- specific printing parameter, and modify a printing input file, wherein (xii) the set of executable instructions is configured, once executed to cause the at least one processor to print a plurality of geometric elements at a desired reference location, each geometric element having a predetermined representative dimension, and wherein each geometric element is configured to be printed by a plurality of nozzles in the nozzle plate, (xiii) the plurality of geometric elements comprises at least 3 geometric elements printed in two rows of staggered pairs along the printing direction, and the calibration pattern of the predetermined number of drop ejections at a predetermined distance between each ejection is sandwiched between the two rows, wherein (xiv) when executed, the set of executable instructions is further configured to cause the at least one processor to: digitize the captured image; render a rectangle sized and configured to symmetrically inscribe the expected location for each printed dot; crop each rectangle by a number of pixels’ configured, after cropping to inscribe a single dot at the expected location; detect actual printed dot inscribed within each of the corresponding cropped rectangle; for actually inscribed printed dot, as a whole pattern, calculate an affine transform factor between actually printed dots’ location and the corresponding reference dots’ location defined by the cropped rectangle, thus providing the translation error; apply the affine transform factor to each reference dot location thus providing a transformed dot location; and calculate an average error vector per nozzle between actually printed dots’ location and the corresponding reference dots’ location for each nozzle, wherein (xv) when executed, the set of executable instructions further causes the at least one processor to calculate the error vector between each actually printed dot location and the corresponding reference dot location, wherein (xvi) when executed, the set of executable instructions is further configured to cause the at least one processor to: capture at least one image around each row of the two rows of geometric elements; digitize the plurality of images; and automatically calculate the actual location of each of the plurality of captured geometric elements, wherein (xvii) the CPM is configured to capture a plurality of overlapping images, and wherein obtaining the location of the plurality of geometric elements is configured to yield a plurality of locations for each detected geometric element, further (xviii) when executed, the set of executable instructions further causes the at least one processor to calculate a first affine transform factor among all the matched geometric elements and their matched reference location, wherein (xix) the system further comprises a display module and a user interface module, and wherein when executed, the set of executable instmctions further causes the processor to: using the display, display the digitized image of the calibration pattern; with the user interface, input and/or remove actual dot’s location by a user; update the actual dot location; and execute the steps of causing the at least one processor to print a plurality of geometric elements at a desired reference location, each geometric element having a predetermined representative dimension, and wherein each geometric element is configured to be printed by a plurality of nozzles in the nozzle plate.

[00068] While the invention has been described in detail and with reference to specific exemplary implementations thereof, it will be apparent to one of ordinary skill in the art that various changes and modifications can be made therein without departing from the spirit and scope thereof. Accordingly, it is intended that the present disclosure covers the modifications and variations of this invention provided they come within the scope of the appended claims and their equivalents.