How to Optimize a Waveform
In our introductory article on inkjet waveforms, we described what a waveform is and how the process of applying it to the printhead works. Now we consider how to optimise that waveform to get better jetting, using a general dropwatcher approach that applies to many printheads. In this article, we will follow along step-by-step with a Dimatix Samba printhead to give example images and data along the way.
QUICK REMINDER OF THE PRINCIPLES
Let’s start by reviewing very briefly what we discussed in our other printhead and waveform articles. In the schematic below, we show how a voltage pulse results in deformation of the actuator, creating pressure in the nozzle chamber and causing a drop to eject. What we are optimizing is the size, shape, and spacing of the pulses to ensure that the jetting matches our target requirements.
UNDERSTANDING YOUR TARGET
The first step of any attempt to develop a waveform is to clearly define the goal. Usually, the most important targets to identify are the desired drop size, drop velocity, and jetting frequency. If you already know the target specifications, then you can get started straight away. If not, then you will have to do some investigation.
If you are an ink company and have a specific machine to develop for, check with your customer what the usage conditions of the ink are. If your customer is an equipment manufacturer, they should be able to tell you all you need to know. If selling direct to user, then perhaps this information is not so easily available and you’ll have to work a bit harder to figure out what’s sensible. You can get an idea of the operating frequency from the carriage speed and the print resolution, remembering that if the print is multiple-pass this may be different from the final resolution.
THE STARTING POINT
The very first step in waveform optimization is to establish a sensible baseline for our jetting so we can view it with the dropwatcher. If possible, an easy technique is to start with the printhead manufacturer-recommended, or default, single pulse waveform. As well as typical pulse timing, there will usually be some kind of calibration voltage (sometime called “label” voltage). Use this to start with as it should produce reasonable jetting. For our Dimatix Samba example, we are going to start with a waveform from the printhead user manual: a 26V amplitude pulse with a pulse width of 2.18us (including a 40V/us rise time).
The next step is to get the drops visible in the field of view of the drop watcher. It is important that you can see the faceplate if possible; it helps a lot when it comes to understanding failures if you get them. The image below gives an ideal view for the Dimatix Samba printhead.
If you are just doing a preliminary test with a syringe fill, then it is useful to minimize the ink consumption during testing. Jetting about 10-20 nozzles along the same printhead row at a moderate frequency like 8kHz will allow you to test for a while without having to refill the fluid.
Do a quick measurement of the drop velocity to ensure that it is reasonable, maybe 5-6 m/s. Even if your eventual target is higher, this setting will usually allow easy measurements without too many satellites. If you find that the velocity is too low, you’ll want to increase the voltage of the pulse slightly, and vice versa. Our velocity happened to be acceptable without having to make modifications to the waveform, so 26V is an appropriate setting.
STEP 1: OPTIMIZING PULSE WIDTH
The first step in waveform optimization is to get the basic pulse shape to match the acoustics of the head and fluid combination. In waveform terminology, we will begin by determining the proper pulse width.
Because both the size of the nozzle and the fluid properties are fixed, we are looking for the amount of time to keep the nozzle chamber expanded that allows ink to move back and forth within it at a good rhythm.
In general, there is a near-quadratic relationship between pulse width and drop volume and velocity. The optimal pulse width is the one that will produce the highest drop volume and velocity, so finding that peak is what our first objective will be. Determine what the current pulse width is for your starting waveform, and plan to adjust the pulse width from 50% below to 50% above that recommended setting. At each pulse width, measure the drop volume and velocity at a consistent distance from the printhead. Choose a step size to give a few data points so you can build a curve.
For our Samba printhead, we are going to automatically sweep through pulse widths from 1.1us to 3.3us in 0.1us increments. By capturing an image at each value (using double pulse) we are able to quickly judge the speed of the drop visually and can supplement with measurements if needed. The image below is generated using a combination of XSweep and Stitch.
The top of the velocity curve is where the timing of the pulse gives the most efficient drop ejection for your combination of ink, head, and electronics. Sometimes it is desirable to use a pulse width a bit higher than the peak since it can help with satellites. Getting some experience will help you make this decision. Once you have selected your pulse width, program that value into your waveform and let’s continue forward.
Based on our image, we can see that pulse widths of 2.1-2.2us seem to produce the highest drop velocity. We can tell because each slice of the image was taken at the same moment in time, and the drop has travelled furthest from the printhead in these slices. If you recall, 2.18us was our starting pulse width from the Dimatix Samba manual, and indeed it seems to be optimal. Good job Dimatix!
As with most things in inkjet, it is up to the user to determine the level of precision to approach this process with. In the case of waveform optimization, choosing a smaller step size to test each parameter will be able to give you a more precise results. However, when doing this analysis manually, a smaller step size means the time it takes to do this testing increases. To make the process faster, ImageXpert has a tool called XSweep, which will automatically adjust the waveform settings and perform the measurements for you.
STEP 2: OPTIMIZING VOLTAGE
Now that we know we’ve got the timing right, we can explore the connection between voltage and drop volume and velocity. Usually, there is a linear relationship between voltage and drop volume and velocity, up to a limit. The normal trade-off is that increased voltage also produces increased ligaments, so the objective is getting the highest possible velocity that produces a nice clean drop without a tail that breaks into satellites.
As we did before with pulse width, let’s try a range of voltages and measure the drop velocity at each one. It is important to also keep an eye on the drop volume and satellite formation, as this will impact our decision. Our goal at this point is to determine the voltage setting that gives us our target volume and velocity without too many satellites. With our Samba, we are going to automatically sweep through voltages of 21V-31V in 0.5V increments. The output is shown below.
Once again, the results seem to match the theory. The drop velocity increases linearly with voltage, up to a point where satellites are introduced. Let’s choose a voltage a bit lower than the one that produced satellites and perform a measurement.
We now know the drop volume and velocity that a waveform using these settings will produce and can compare it to our targets. However, our job is not done yet.
STEP 3: PUSHING THE HEAD A BIT HARDER
Now that you’ve improved your pulse and it’s producing the velocity you’ve been looking for, it is time to push the head a bit harder and turn up the frequency. This will test whether the waveform we’ve built so far performs well at our target frequency, as well as if there are any particular spots to avoid. If you already know what your key target frequency is, then you can save some time by just looking at jetting there, but don’t forget to include the subharmonics too. This ensures that if the drop spacing gets adjusted during rendering and printing the image, your waveform will still perform well.
We think it’s usually best to do as much as you can to understand the entire frequency space. You already have the system set up, and you never know when a customer will ask to use that ink at another frequency. In addition to XSweep, Imagexpert supplies the Frequency Sweep Add-On to help speed up the process. This will automatically sweep through a range of frequencies and collect the data, which is especially helpful for higher frequency printheads. The image below is our Samba waveform jetting at 1 – 30kHz in 1 kHz steps.
Fortunately, our drop formation looks pretty good across this range. Here is another example that tells a different story.
Notice how the jetting is a consistent velocity up until about 19 kHz, then the velocity spikes? In addition to the increased velocity, we also see increased ligament length and satellite formation. If you recall from our previous waveform article, this is resonance at work. At 19 – 24 kHz, the timing between the waveform pulses is such that the pulse is amplified by lingering momentum in the nozzle from pulse before it. With this knowledge, you can modify the design of your system to either avoid that frequency or use a different waveform for that range.
WHAT IF THE RESULTS ARE NOT GOOD?
If the waveform you’ve created does not perform well at the target frequencies, choose a lower voltage and try again. It is an iterative process, where you might need to make small changes to pulse width and voltage and repeat in order to get the results you want. This is where automation comes in handy. If you just can’t seem to get your drop volume or velocity high enough, multi-pulsing might be able to help.
STEP 4: INTRODUCING MULTI-PULSING
When more than one pulse is used in the waveform to create drops then we call it multi-pulsing. This is not to be confused with grayscale; we are still only producing one drop size, we are just using multiple waveform pulses to do it. Multi-pulsing can be useful for increasing the volume of the jetted drops if a single pulse is not capable of ejecting enough ink.
If we are going to use multiple pulses to create larger drops, we must begin by understanding the underlying timing of the ink moving in the head. We do this by creating two identical pulses and looking to see what happens to the ejection as function of the gap between them, as shown below. When the timing is right, the momentum of the ink in the nozzle will be increased by the second pulse, and we will see a faster drop once it is jetted.
Let’s duplicate the optimized pulse that we created from before and adjust the spacing between these two pulses, analysing the jetting at each step. A good starting point is to vary the spacing from the minimum allowable value to double the pulse width of each pulse. The best measurement to do is to look at the velocity of the second drop that comes out (if it does at all) since the speed of that drop is very sensitive to pressure fluctuation caused by the first pulse. At low pulse gaps in some head/ink combinations, the drops are likely to have merged before you get the chance to measure them, whilst in others the second ejection might appear as a bulge travelling up the ligament of the first. What is important is to find at what spacing the drop(s) you can measure go fastest. The peaks in the behaviour are where the head resonance lies. Most successful greyscale waveforms work on or near the resonance period so that the ejection is optimised for a given amount of input.
When we duplicated our optimized Samba pulse and swept the pulse spacing from 1.4us to 3.2us in 0.1us steps, we produced the following image. It is pretty clear where the speed of the second drop is the highest, which is our resonant period.
Now that we know our resonant period we can build a waveform that uses it. The only thing to remember is that if you are going to stack pulses like this one after another, it is important to consider the voltage amplitude or you’ll push that final ejection velocity really high. As we’ve discussed before, that usually is a bad thing for nozzle wetting and satellites. So, with that in mind, you may start with something like this to get your target drop size.
MAKING MULTI-PULSING DO GREYSCALE
As we mentioned already, the key difference with grayscale is having the ability to vary drop size at each pixel on the printed image. This means you need to choose which waveform pulses to use for each gray level to get the desired drop size. The first step to achieving this is to break the waveform into segments that can be selected by the print controller. You then must associate the right segments to the grey levels.
Just like the pulse shapes themselves, this part is very dependent on your system, and especially the software that allows you to edit the waveform “shape”. The easiest way to visualise this, and thus often used in patents on the subject, is to picture the waveform with separators and then have a table telling you which is used in each level. We have drawn this below for a single 5-pulse example.
The reason we chose 5-pulse for 3 levels because it demonstrates nicely the high degree of flexibility that is possible, including the fact that pulse do not have to be identical or be linear in amplitude (like our first examples). The one thing to keep in mind is that the maximum frequency that can be used will be the inverse of the time taken to complete the whole waveform, regardless of which grey level you are selecting.
Usually there are rules associated to how close pulses can be to each other to allow time for the electronics board to switch between the waveform segments. Most good waveform editors will tell you if there’s a going to be a problem.
Now you can tune the individual pulse widths, voltages, and pulse spacings of the waveform segments to get the drop volume and velocity to match your targets. It is useful to have an image that places drops of different sizes next to each other in the same field of view, so you can study the impact of a change on all of the gray levels. This image shows three different gray levels in one field of view.
ADVANCED WAVEFORM DESIGN
The multi-pulsing approach can also be useful for controlling nozzle plate wetting, or influencing ligament break-off, for example. Extra pulses can come before or after the main ejection pulse as shown below. Tips for implementing more advanced waveform tricks are hard to systematize but we wanted to make sure you know these things are possible.
There is another method that is used by some head manufacturers as standard, called bi-polar pulsing. The terminology comes from heads that use both positive and negative amplifiers to drive the PZT in both directions. The advantage of such systems can be getting a more efficient drop ejection from a lower overall voltage, but it also allows pulses to be programmed in any direction for manipulating the pressure variation following ejection. Since bi-polar capability makes the electronics more complicated, the effect can be recreated using a uni-polar circuit (positive or negative voltage only) that uses a rest voltage that is non-zero. We try to explain the difference with the image below, which is taken from a couple of recent patents from two main head manufacturers. The image on the left is a bi-polar waveform, the image on the right is a uni-polar with a non-zero rest voltage.
In both cases the waveforms are more than a succession of simple trapezoids like we described before. Generating the more arbitrary shapes needs a different approach than just how tall and wide the pulse will be. Usually the waveform is now defined by segments changing from one voltage to another over a given time. Some specific electronics are required and this can be vendor specific. Optimizing waveforms using these techniques may be elaborated on in a future article.