A printing conundrum
David VanHorn email (remove spam text)
This is a generic question.
I'm trying to wrap my head around thermal line printing, and I'm not seeing
my way through the main printing operation.
In order to print, I have to load the head with data, fire six print
pulses, and step the motor.
If I didn't care about speed, I would simply do this all in sequence, and
be done with it.
However, I do.
I can load the head during the burn time, which is nice.
My conundrum comes down to how to resolve the situation where the sum of
the burn times may exceed the normal time between motor steps.
Normally, I can complete all six burn pulses in less time than a motor
step, so the obvious method would be to use a timer as a lockout, saying
"you can't step the motor till I expire".
In fact, it's very tempting to run the motor on a timer interrupt.
However, as the temperature and battery voltage drops, the burn time
increases, and I may not be able to complete all six burns before the timer
The first order solution seems to be to step the motor when burn is
completed and timer expires, but that seems to have a problem too. If the
motor is accelerated to some value, and I hit a "thick patch", then I'm
likely to show down significantly, and the motor may not be able to track
the change in speed. Also, on the other side, I may come out of a "thick
patch" and need to accelerate rapidly.
Additionally, I have to compensate for residual heat in the printing
elements, so I have to alter the burn time dynamically, in response to the
printed data as well.
The problem seems deceptively simple at first, but the more I look at it,
the more interesting it gets.
Has anyone on the list worked through this before?
Am I walking into a deep hole here?
Dave's Engineering Page: http://www.dvanhorn.org
Got a need to read Bar codes? http://www.barcodechip.com
Bi-directional read of UPC-A, UPC-E, EAN-8, EAN-13, JAN, and Bookland, with
two or five digit supplemental codes, in an 8 pin chip, with NO external parts.
http://www.piclist.com hint: To leave the PICList
In reply to: <001001c167c3$fc8d8020$479da7cb@joe>
See also: www.piclist.com/techref/index.htm?key=printing+conundrum
You must be a member of the
piclist mailing list
(not only a www.piclist.com member) to post to the