專利名稱:可選擇最佳打印路徑的打印裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種打印裝置,特別是一種改良打印頭定位方法的打印裝置,其可加速整個(gè)打印過(guò)程,縮短打印時(shí)間。
背景技術(shù):
目前常用的打印機(jī)打印方法之一,是使打印頭沿著一打印軌道作左右往復(fù)移動(dòng),請(qǐng)參閱圖1,圖1為一打印頭10沿著打印機(jī)5的打印軌道12滑行的示意圖。打印頭10沿著箭頭RL的方向,左右滑行于打印軌道12上,滾輪14不僅用來(lái)將紙張7固定于打印頭10之下,且用來(lái)將紙張7一步一步地帶入打印軌道12。每當(dāng)打印頭10進(jìn)行一次的打印工作,便會(huì)將一打印的像素打印于紙張7上,接著,紙張7會(huì)被向前帶動(dòng)一相當(dāng)于打印頭10的打印高度的距離。打印頭10每打印一次就會(huì)留下一印刷列,且打印頭10是借在紙張7上打印出多個(gè)連續(xù)的印刷列來(lái)完成打印動(dòng)作,多個(gè)印刷列是互相堆疊于紙張7上來(lái)涵蓋紙張7上所有的打印區(qū)域。在此要注意的是,一個(gè)印刷列并非一定要等于文章中的一行,其取決于文章中行的高度和打印頭10的打印高度,有時(shí)候文章中的一行需要由數(shù)個(gè)印刷列來(lái)組成,但有時(shí)候一個(gè)印刷列則包含文章中的數(shù)行。
早期的打印機(jī)其印刷列必須涵蓋紙張7上的每一個(gè)部分,從左至右移動(dòng),相似于我們?cè)陂喿x的情形一樣,其印刷列的打印情況如圖2所示,圖2為早期打印機(jī)的印刷列路徑圖,圖中箭頭表示當(dāng)打印頭10在紙張7上產(chǎn)生像素時(shí),其前進(jìn)的方向和長(zhǎng)度,陰影部分16則代表紙張7上的真正打印范圍。可清楚地看到,大量的時(shí)間將浪費(fèi)在把打印頭從紙張7的右邊移回左邊,等待另一個(gè)印刷列的開(kāi)始,另一個(gè)浪費(fèi)時(shí)間的地方,是打印頭10需要移動(dòng)到超過(guò)打印范圍16以外的位置處。
有一個(gè)可節(jié)省打印時(shí)間的方法,是使印刷列可從左至右,或從右至左的往復(fù)打印,如圖3所示,圖3為另一個(gè)先前技術(shù)的印刷列圖,從圖中可知,打印頭10不需再像舊式打字機(jī)的承載架一樣需重返原來(lái)最左端的位置上,而不論其為向左移動(dòng)或向右移動(dòng),均可進(jìn)行打印工作,這可大量的降低打印工作時(shí)所需的時(shí)間。但是,打印頭的移動(dòng)范圍仍然必須涵蓋紙張7的最左邊至最右邊的整個(gè)區(qū)域,此區(qū)域超過(guò)實(shí)際的打印范圍,所以將浪費(fèi)多余的時(shí)間。
圖4為一個(gè)有關(guān)打印頭定位邏輯的最新改良,其中打印頭10的移動(dòng)不會(huì)超過(guò)實(shí)際的打印范圍之外。圖4為第三個(gè)先前技術(shù)的印刷列部分。此方法可使打印頭10的不必要移動(dòng)減到最低,故看起來(lái)像是能最快速完成打印動(dòng)作。
上述所提到的方法看起來(lái)像是最好的,但經(jīng)過(guò)仔細(xì)的思考后,將發(fā)現(xiàn)到即使是上述所提的方法,也不是最省時(shí)經(jīng)濟(jì)的方法。請(qǐng)參閱圖5,圖5所示為打印機(jī)利用圖4所示的打印方法所打印的兩個(gè)打印范圍20和22,20和22這兩個(gè)打印范圍分別為由印刷列21和23所打印而成的,且印刷列23是接于印刷列21之后。打印頭10從打印范圍20的最左邊打印至其最右邊,接著繼續(xù)移動(dòng)到打印范圍22的最右端,這時(shí)候紙張7將被向前帶進(jìn),接著打印頭10會(huì)從打印范圍22的最右端打印至最左端。所以,打印頭10需固定地從左至右,及從右至左的交替循環(huán)移動(dòng)于整個(gè)打印范圍24中,最后將停于打印范圍22的最右端。從圖上可看到,若打印頭10以同樣的從左至右移動(dòng)方式來(lái)打印20和22這兩個(gè)印刷列,那么可利用當(dāng)打印頭10位于此兩個(gè)打印區(qū)20和22的中間位置時(shí),把紙張7向前帶進(jìn),這樣將可節(jié)省打印的時(shí)間。
發(fā)明內(nèi)容
因此,本發(fā)明的主要目的在于提供一種可節(jié)省打印時(shí)間的打印裝置來(lái)解決上述問(wèn)題。
請(qǐng)參閱圖6和圖7,其中圖6為本發(fā)明的打印裝置30的示意圖,圖7為打印裝置30的功能示意圖。印表裝置30有一左右方向移動(dòng)的打印路徑,如箭頭LR所指示,驅(qū)動(dòng)系統(tǒng)34用來(lái)使打印頭36沿著打印路徑32作左右方向的移動(dòng)。打印頭36可為任何一種型式,如行式打印機(jī)的點(diǎn)陣打印頭、噴墨打印頭、或相類似的打印頭。打印頭36是用來(lái)打印像素于一打印介質(zhì)31上,其可作左右方向的移動(dòng),當(dāng)它移經(jīng)打印介質(zhì)31上所需被打印的范圍時(shí),其將形成多個(gè)印刷列。驅(qū)動(dòng)系統(tǒng)34是被控制電路38控制,控制電路38以一前瞻系統(tǒng)40去控制驅(qū)動(dòng)系統(tǒng)34,使打印頭36能以最短時(shí)間的路徑去涵蓋印刷列。
圖1為傳統(tǒng)打印頭沿著打印機(jī)的打印軌道滑行的示意圖。
圖2為傳統(tǒng)第一種打印機(jī)打印印刷列的路徑圖。
圖3為傳統(tǒng)第二種打印機(jī)打印印刷列的路徑圖。
圖4為傳統(tǒng)第三種打印機(jī)打印印刷列的路徑圖。
圖5為圖4打印機(jī)打印兩印刷列的示意圖。
圖6為本發(fā)明的打印裝置的示意圖。
圖7為圖6打印裝置的功能方塊圖。
圖8為本發(fā)明一印刷列的示意圖。
圖9為本發(fā)明第一種路徑所會(huì)產(chǎn)生的多余時(shí)間的示意圖。
圖10為本發(fā)明第二種路徑所會(huì)產(chǎn)生的多余時(shí)間的示意圖。
圖11為本發(fā)明第三種路徑所會(huì)產(chǎn)生的多余時(shí)間的示意圖。
圖12為本發(fā)明第四種路徑所會(huì)產(chǎn)生的多余時(shí)間的示意圖。
圖13為前瞻系統(tǒng)所考量的三個(gè)打印區(qū)的示意圖。
圖14為圖13的打印區(qū)的二叉(bit)決策樹(shù)狀圖。符號(hào)說(shuō)明30打印機(jī)31打印介質(zhì)32、150a、160a、160b、170a、170b、170c、170d打印路徑34驅(qū)動(dòng)系統(tǒng)36打印頭38控制電路40前瞻系統(tǒng)
50、60、70、80、90、110、120、130、140印刷列52、62、72、82、92、102、112、122、132、142加速區(qū)53、73、93、123起始點(diǎn)54、64、74、84、94、114、124、134、144、150、160、170打印區(qū)55、65、85、115結(jié)束點(diǎn)56、66、106、126多余打印區(qū)58、68、78、88、98、108、118、128、138、148減速區(qū)180二叉樹(shù)狀結(jié)構(gòu)181、182、184、185、186、187節(jié)點(diǎn)具體實(shí)施方式
以下將詳述本發(fā)明中前瞻系統(tǒng)40是如何找出一個(gè)路徑,使得打印頭36能以最快的速度涵蓋后續(xù)至少3個(gè)印刷列。前瞻系統(tǒng)40會(huì)分析每一個(gè)印刷列的打印長(zhǎng)度,并找出多個(gè)涵蓋這些印刷列的不同路徑,接著,前瞻系統(tǒng)40對(duì)每一個(gè)可行的路徑進(jìn)行計(jì)算,計(jì)算由驅(qū)動(dòng)系統(tǒng)34控制打印頭36沿著每一路徑移動(dòng)所需的時(shí)間,在所有可行的路徑及其時(shí)間中,前瞻系統(tǒng)40將選擇所需時(shí)間最短的路徑。接著,控制電路38將以此路徑為依據(jù),指示驅(qū)動(dòng)系統(tǒng)34的移動(dòng)動(dòng)作,故此,打印頭36便可以最快的路徑去完成打印工作。
以下將介紹本發(fā)明的使用方法,請(qǐng)參閱圖8,圖8為本發(fā)明一印刷列50的示意圖,雖然為個(gè)別的例子,但印刷列50可代表一般情況。印刷列50平行于箭頭LR所示的方向,其包含有一加速區(qū)52,一打印區(qū)54,一多余打印區(qū)56,和一減速區(qū)58。加速區(qū)52是要讓驅(qū)動(dòng)系統(tǒng)34把打印頭36加速到一預(yù)定的、固定的打印速度,打印頭36在打印區(qū)54和多余打印區(qū)56中的打印速度基本上維持一定值,打印區(qū)54代表著打印頭36打印像素于打印介質(zhì)31上的區(qū)域,即打印像素的最左端至最右端的范圍,多余打印區(qū)56中并沒(méi)有打印動(dòng)作,此區(qū)的目的是要把打印頭36帶到下一個(gè)印刷列的起始打印位置上,減速區(qū)58是用于讓驅(qū)動(dòng)系統(tǒng)34把打印頭36的速度減慢至停止。當(dāng)完成前一個(gè)印刷列的工作,而要開(kāi)始下一個(gè)印刷列的打印工作時(shí),那么便需考慮把打印頭36的方向改變,又或是把媒個(gè)物31向前帶進(jìn)。以下為一般印刷列需注意的地方
1.印刷列50為指打印頭36從左至右的打印動(dòng)作,若當(dāng)打印頭36的移動(dòng)方向?yàn)閺挠抑磷?,那么印刷?0的方向?qū)⒏淖?,此時(shí)加速區(qū)52和減速區(qū)58的位置將互換。
2.一般情況中,印刷列并不需要有多余打印區(qū)56。
3.打印區(qū)54可位于多余打印區(qū)56之前,其視乎打印頭36的移動(dòng)方向。
每一個(gè)個(gè)別的印刷列50是借由加速區(qū)52和減速區(qū)58連結(jié)在一起,所以,下一個(gè)印刷列的加速區(qū)與上一個(gè)印刷列的減速區(qū)相連,該連接可能為立刻的,或是經(jīng)過(guò)一個(gè)多余打印區(qū),此部分于后面將再作討論。每一個(gè)印刷列的打印區(qū)都包含有一起始點(diǎn)和一結(jié)束點(diǎn)。打印頭36于印刷列的起始點(diǎn)開(kāi)始打印動(dòng)作,同樣地,打印頭于印刷列的結(jié)束點(diǎn)完成打印工作。例如,印刷列50的打印區(qū)54有一起始點(diǎn)53,于此點(diǎn)之后,打印頭36開(kāi)始打印像素。印刷列50同樣有一結(jié)束點(diǎn)55,在此點(diǎn)之前,打印頭36停止打印像素。由于打印頭36需要從上一印刷列的結(jié)束點(diǎn)移動(dòng)至下一印刷列的起始點(diǎn),故其需要一多余時(shí)間,前瞻系統(tǒng)40的功能便是計(jì)算此多余時(shí)間。
前瞻系統(tǒng)40把從上一印刷列移動(dòng)至下一印刷列之間所需的多余時(shí)間分為四種獨(dú)立的情況來(lái)看,分略述如下1.打印頭從上一印刷列的結(jié)束點(diǎn)移動(dòng)至下一印刷列的起紿點(diǎn)需要反向一次。
2.打印頭從上一印刷列的結(jié)束點(diǎn)移動(dòng)至下一印刷列的起紿點(diǎn)需要反向二次。
3.打印頭從上一印刷列的結(jié)束點(diǎn)移動(dòng)至下一印刷列的起點(diǎn)并不需要反向,且上一印刷列的減速區(qū)與下一印刷列的加速區(qū)并沒(méi)有重疊的部份。
4.打印頭從上一印刷列的結(jié)束點(diǎn)移動(dòng)至下一印刷列的起紿點(diǎn)并不需要反向,但上一個(gè)印刷列的減速區(qū)與下一印刷列的加速區(qū)有重疊的部份。
請(qǐng)參閱圖9,圖9是本發(fā)明第一種路徑所會(huì)產(chǎn)生的多余時(shí)間的示意圖。圖中有一上印刷列60和一下印刷列70。當(dāng)打印頭完成上一印刷列60后,便會(huì)立刻開(kāi)始下一印刷列70的打印。雖然兩印刷列60和70位于被打印打印介質(zhì)31上的垂直方向不同位置上,但打印頭36所注意到的,為其均位于箭頭LR所指的左右方向的打印路徑32上。上一印刷列60包含了一加速區(qū)62、一打印區(qū)64、一多余打印區(qū)66、和一減速區(qū)68。下一印刷列70包含了一加速區(qū)72、一打印區(qū)74和一減速區(qū)78。從加速區(qū)和減速區(qū)的相對(duì)排列位置可清楚地看到,打印頭36是以從左至右的方向來(lái)打印印刷列60,再以從右至左的方向來(lái)打印印刷列70,且可注意到,減速區(qū)68馬上便與加速區(qū)72連結(jié)在一起。所以打印頭36只需反向一次便可從上一打印區(qū)64的結(jié)束點(diǎn)65移動(dòng)到下一打印區(qū)的起始點(diǎn)73處。這時(shí)候前瞻系統(tǒng)40將以下式來(lái)計(jì)算從上一印刷列60移動(dòng)至下一印刷列70所需的多余時(shí)間t=S/V(1)其中t為下一印刷列70需的多余時(shí)間,S為打印頭36沿著打印軌道32從結(jié)束點(diǎn)65移動(dòng)至起始點(diǎn)73所需的距離,即圖9中所示的S1,V則為打印頭36的打印速度。當(dāng)然,上一印刷列與下一印刷列的組合方式有很多種,兩個(gè)印刷列將有不同程度與方式的重疊與不重疊情形,但以下所指的情況將維持正確如果打印頭36在打印上一印刷列和下一印刷列時(shí),其只需反向一次,那么目前印刷列所需的多余時(shí)間,是以上一印刷列的打印區(qū)的結(jié)束點(diǎn),到下一印刷列的打印區(qū)的起始點(diǎn)之間的距離(S),除以打印頭36的打印速度(V),即如方程式(1)所示。該距離所指的為不包括垂直分量的情況下,沿著打印路徑32的LR線所量得的值。
如果打印頭36從上一印刷列的結(jié)束點(diǎn)到下一印刷列的起始點(diǎn)需要反向兩次,那么前瞻系統(tǒng)40將以下式來(lái)計(jì)算此兩印刷列之間所需的多余時(shí)間t=(S/V)+ta+td(2)其中t為下一印刷列所需的多余時(shí)間,S為上一印刷列之打印區(qū)的結(jié)束點(diǎn)到目前印刷列的打印區(qū)的起始點(diǎn)之間的距離,V為打印頭36的打印速度,ta為打印頭36在加速區(qū)移動(dòng)時(shí)所需要的時(shí)間,td則為打印頭36在減速區(qū)移動(dòng)時(shí)所需的時(shí)間。圖10所示為此情況的一個(gè)例子,圖中所示的多余時(shí)間為本發(fā)明的第二種情況。上一印刷列80包含了一加速區(qū)82、一打印區(qū)84和一減速區(qū)88。下一印刷列90包含了一加速區(qū)92、一打印區(qū)94和一減速區(qū)98。打印頭36以同樣的從左至右移動(dòng)方式來(lái)打印上一印刷列80和下一印刷列90,即如其加速區(qū)82,92和減速區(qū)88,98的相對(duì)排列位置所表示的情況。但是,在此兩印刷列80,90之間存在一多余打印區(qū)100,由于多余打印區(qū)100并沒(méi)有打印工作,故并非為一實(shí)際的打印區(qū),其代表著打印頭36從上一印刷列80的結(jié)束點(diǎn)85移動(dòng)至下一印刷列90的起始點(diǎn)93的過(guò)渡路徑,如此,上一印刷列80便可借著此多余打印區(qū)100,而與下一印刷列90連結(jié)在一起。方程式(2)中的S值,為從結(jié)束點(diǎn)85至起始點(diǎn)93此兩點(diǎn)在LP線上的距離,即圖10中所示的S2。方程式中(2)中的ta值,為打印頭36在加速區(qū)102中移動(dòng)所需的時(shí)間,同樣地,方程式(2)中的td值,為打印頭36在減速區(qū)108中移動(dòng)所需的時(shí)間。
如果打印頭36從上一印刷列的結(jié)束點(diǎn),到下一印刷列的起始點(diǎn)不需要反向,且上一印刷列的減速區(qū)與下一印刷列的加速區(qū)并沒(méi)有重疊的部分,那么,前瞻系統(tǒng)40將會(huì)以下式來(lái)計(jì)算多余時(shí)間t=[S-(Sa+Sd)]/V(3)其中t為下一印刷列的多余時(shí)間,S為上一印刷列的結(jié)束點(diǎn)到下一印刷列的起始點(diǎn)之間的距離,Sa為加速區(qū)在LR線上的寬度,Sd為減速區(qū)在LR線上的寬度,而V為打印頭36的打印速度。如圖11中所示,圖11為本發(fā)明第三種路徑所會(huì)產(chǎn)生之多余時(shí)間的示意圖。一上印刷列110包含一加速區(qū)112、一打印區(qū)114和一減速區(qū)118。一下印刷列120包含一加速區(qū)122、一打印區(qū)124、一多余打印區(qū)126和一減速區(qū)128。打印頭36先以從左至右的方式打印上一印刷列110,其后又以同樣的從左至右的方式打印下一印刷列120,其中打印頭36從上一印刷列110到下一印刷列120并沒(méi)有改變方向。當(dāng)打印頭36位于上一印刷列110和下一印刷列120之間時(shí),打印介質(zhì)31將被往前帶進(jìn)。在圖11中,方程式(3)中的S以箭號(hào)S3表示,其為上一印刷列110的結(jié)束點(diǎn)115到下一印刷列120的起始點(diǎn)123兩點(diǎn)之間沿LR線上的距離,方程式(3)中的Sd在圖中以箭號(hào)Sd表示,其代表減速區(qū)118在LR線上的寬度,同樣地,方程式(3)中的Sa在圖中以箭號(hào)Sa表示,其代表加速區(qū)122在LR線上的寬度。方程式(3)基本上為多余打印區(qū)126的寬度除以打印頭36的打印速度。要注意的是,加速區(qū)122緊接于減速區(qū)118之后。
最后,若打印頭36從上一印刷列的結(jié)束點(diǎn)到下一印刷列的起始點(diǎn)并不需要改變方向,且上一印刷列的減速區(qū)與下一印刷列的加速區(qū)有重疊的部分,那么,前瞻系統(tǒng)40將以下式來(lái)計(jì)算多余時(shí)間t=ta+td(4)其中t為下一印刷列的多余時(shí)間,ta為打印頭36通過(guò)一個(gè)加速區(qū)所需的時(shí)間,而ta則為打印頭36通過(guò)一個(gè)減速區(qū)所需的時(shí)間,可參閱圖12,圖12為本發(fā)明第四種路徑所會(huì)產(chǎn)生之多余時(shí)間的示意圖。一上印刷列130包含了一加速區(qū)132、一打印區(qū)134和一減速區(qū)138。一下印刷列140包含了一加速區(qū)142、一打印區(qū)144和一減速區(qū)148。打印頭36先以從左至右的方式打印上一印刷列130,其后又以同樣的從左至右的方式打印下一印刷列140,打印頭36從上一印刷列130到下一印刷列140并沒(méi)有改變方向。當(dāng)打印頭36位于上一印刷列130和下一印刷列140之間時(shí),打印介質(zhì)31將被往前帶進(jìn)。上一印刷列130的減速區(qū)138與下一印刷列140的加速區(qū)142之間有重疊的部分。常數(shù)值ta為打印頭通過(guò)一般加速區(qū)所需的時(shí)間,如加速區(qū)132。同樣地,常數(shù)值td為打印頭通過(guò)一般減速區(qū)所需的時(shí)間,如減速區(qū)148。值得注意的一點(diǎn)為,事實(shí)上打印頭36通過(guò)138和142的重疊區(qū)域所需的時(shí)間為小于方程式(4)所計(jì)算的值,方程式(4)為一簡(jiǎn)易的式子,其以最差的一種情況來(lái)預(yù)計(jì)打印頭36到達(dá)打印區(qū)144的起始位置所需的多余時(shí)間。另一個(gè)需要注意的一點(diǎn)是,打印頭36在減速區(qū)138中并不一定會(huì)減速至停止,其速度會(huì)減慢直至打印介質(zhì)31被帶進(jìn)到下一印刷列140的打印位置后,打印頭36便會(huì)用剩下的加速區(qū)部分142加速到正常的打印速度。
從以上所述可發(fā)現(xiàn),前瞻系統(tǒng)40至少可對(duì)接下來(lái)的三個(gè)印刷列找出多個(gè)可行的路徑,對(duì)于每一個(gè)路徑,前瞻系統(tǒng)40會(huì)把路徑中所需的多余時(shí)間相加而成為一總多余時(shí)間,其中,總多余時(shí)間最短的一條路徑,將會(huì)被選取為打印頭36打印的路徑。前瞻系統(tǒng)40是根據(jù)二叉樹(shù)狀結(jié)構(gòu)的方法來(lái)建立多個(gè)可行的路徑,請(qǐng)參閱圖13,圖13所示為前瞻系統(tǒng)40所考量的三個(gè)打印區(qū)150,160和170的示意圖。當(dāng)打印頭36剛打印完上一印刷列(未顯示)的工作,而置于打印路徑32上的某一個(gè)位置上,這時(shí)候需做出一個(gè)決定該從打印區(qū)150的左端繼續(xù)打印,或是從其右端繼續(xù)打印。為了簡(jiǎn)化問(wèn)題,我們假設(shè)打印頭36從打印區(qū)150的左端繼續(xù)打印,且以一從左至右的方式打印,這樣打印頭36將移動(dòng)到打印區(qū)150的右端位置上,如圖中箭號(hào)150a所示。這時(shí)候必須作出另一個(gè)決定,就是該從打印區(qū)160的左端(圖中以箭號(hào)160a表示)繼續(xù)打印,或是該從打印區(qū)160的右端(圖中以箭號(hào)160b表示)繼續(xù)打印。若選擇箭號(hào)160a的路徑,則接下來(lái)打印頭36將會(huì)到達(dá)打印區(qū)160的右端位置,這時(shí)候又有兩個(gè)選擇該從打印區(qū)170的左端繼續(xù)打印,如圖中箭頭170b所示,或是該從打印區(qū)170的右端繼續(xù)打印,如圖中箭號(hào)170b所示。同樣地,若選擇箭號(hào)160b為打印路徑,那么,接下來(lái)打印頭36將會(huì)到達(dá)打印區(qū)160的左端位置,這時(shí)候?qū)⒂袃蓚€(gè)選擇選擇箭頭170c所示的路徑將會(huì)使打印頭36到達(dá)區(qū)域170的左端,或選擇箭號(hào)170d所示的路徑將會(huì)使打印頭到達(dá)區(qū)域170的右端。以上所述的各種情況均能以一二叉決策樹(shù)簡(jiǎn)單的表示出來(lái),決定樹(shù)中所接著的子層次代表打印頭36接下來(lái)所要打印的打印區(qū)。此外,可清楚的看到如此的一個(gè)二叉決策樹(shù)將能到達(dá)任何的一個(gè)深度,其極限視乎前瞻系統(tǒng)40的記憶體,和執(zhí)行此決策樹(shù)結(jié)構(gòu)的演算法則。請(qǐng)參閱圖14,圖中所示為打印區(qū)150,160和170的決策樹(shù)180,圖13中數(shù)字所代表的移動(dòng)路徑,適當(dāng)?shù)刂貥?biāo)于二叉決策樹(shù)180中的層次之間的連桿上。區(qū)域I對(duì)應(yīng)于打印區(qū)150,區(qū)域II對(duì)應(yīng)于打印區(qū)160,而區(qū)域III則對(duì)應(yīng)于打印區(qū)170。
縱使圖13所示的打印區(qū)150,160和170并非為實(shí)際的印刷列,因?yàn)樗鼈儧](méi)有加速區(qū)和減速區(qū),但當(dāng)前瞻系統(tǒng)40選擇了某一路徑給打印頭36去打印后,加速區(qū)和減速區(qū)便會(huì)被立刻加進(jìn)去,使之形成一完整的印刷列。例如,若路徑160a被前瞻系統(tǒng)140選擇了,那么打印區(qū)160將會(huì)成為一完整的印刷列,因?yàn)橐粋€(gè)加速區(qū)將會(huì)加于打印區(qū)160的左邊,而一個(gè)減速區(qū)將會(huì)加于打印區(qū)160的右邊,而此一印刷列的多余時(shí)間則可以上面所述的方法計(jì)算,這些多余時(shí)間會(huì)被儲(chǔ)存于二叉決策樹(shù)180的節(jié)點(diǎn)上。所以,二叉決策樹(shù)180的每一節(jié)點(diǎn)均儲(chǔ)存由上一印刷列到下一印刷列所需的多余時(shí)間。例如,節(jié)點(diǎn)181存有一t150的多余時(shí)間;節(jié)點(diǎn)182存有一t160a的多余時(shí)間,此多余時(shí)間為由打印區(qū)160所產(chǎn)生的,其為打印頭36從上一打印區(qū)150的右端移動(dòng)到下一打印區(qū)160的左端所需的時(shí)間。當(dāng)然,若一印刷列的前面并沒(méi)有其他印刷列,例如,考慮其為第一個(gè)印刷列,那么它的多余時(shí)間必須為0。
二叉決策樹(shù)180最底部的節(jié)點(diǎn)184,185,186和187,其在二叉決策樹(shù)180中的位置,分別代表著不同的路徑,此路徑涵蓋打印區(qū)150,160和170的所有印刷列,例如,節(jié)點(diǎn)184代表著從左至右通過(guò)打印區(qū)150,接著再?gòu)淖笾劣彝ㄟ^(guò)打印區(qū)160和170。反之,節(jié)點(diǎn)187代表著從左至右通過(guò)打印區(qū)150,接著則從右至左通過(guò)打印區(qū)160和170。節(jié)點(diǎn)185和186則代表當(dāng)打印頭36通過(guò)打印區(qū)160和170時(shí),其需改變移動(dòng)方向。最后,可注意到一條路徑的總多余時(shí)間,是從該路徑所代表的最底層一個(gè)節(jié)點(diǎn)開(kāi)始,沿著二叉決策樹(shù)180一層一層往上,把所遇到的多余時(shí)間相加,直至到達(dá)最根部。例如,節(jié)點(diǎn)184所代表的路徑,其總多余時(shí)間是等于t170a+t160a+t150。節(jié)點(diǎn)185所代表的路徑,其總多余時(shí)間為等于t170b+t160a+t150。節(jié)點(diǎn)186所代表的路徑,其總多余時(shí)間是等于t170c+t160b+t150。而節(jié)點(diǎn)187所代表的路徑,其總多余時(shí)間為等于t170d+t160b+t150。前瞻系統(tǒng)40將會(huì)選擇總多余時(shí)間最短的路徑,而控制電路38將以此路徑來(lái)指示打印頭36的移動(dòng)。
以上所述,為限于打印頭36的最初動(dòng)作為從左至右的通過(guò)打印區(qū)150的情況,所以,二叉決策樹(shù)180只有四個(gè)最底層節(jié)點(diǎn),故這里所示的二叉樹(shù)狀結(jié)構(gòu)180只算是半個(gè)部分。對(duì)于打印頭的最初動(dòng)作為從右至左的通過(guò)打印區(qū)150的情況,將有其余四組節(jié)點(diǎn)存在,每一組有其相對(duì)應(yīng)的多余時(shí)間,由于每一個(gè)印刷列數(shù)目將造成節(jié)點(diǎn)數(shù)目以指數(shù)方式的成長(zhǎng),故為了簡(jiǎn)化問(wèn)題,并未把這些點(diǎn)表示出來(lái)。
相對(duì)于傳統(tǒng)技術(shù),本發(fā)明提供了一個(gè)前瞻系統(tǒng),其可對(duì)接下來(lái)的至少三個(gè)印刷列,產(chǎn)生多個(gè)不同的可行路徑。前瞻系統(tǒng)可計(jì)算打印頭沿著每一路徑打印所需的總多余時(shí)間,接著,前瞻系統(tǒng)將選擇一條總多余時(shí)間最短的路徑。打印機(jī)里的控制電路便會(huì)以此路徑指示打印頭的動(dòng)作,這樣將可減少打印過(guò)程中所需的時(shí)間。
以上所述僅為本發(fā)明的較佳實(shí)施例,凡依本發(fā)明權(quán)利要求所做的均等變化與修飾,均屬本發(fā)明的專利涵蓋范圍。
權(quán)利要求
1.一種打印裝置,其包含有一沿著左右方向設(shè)立的打印路徑;一驅(qū)動(dòng)系統(tǒng),用來(lái)沿著該打印路徑左右移動(dòng)一打印頭,該打印頭執(zhí)行一打印動(dòng)作,用來(lái)打印至少一像素;一控制電路,用來(lái)控制該驅(qū)動(dòng)系統(tǒng);以及一前瞻系統(tǒng),用來(lái)找出多個(gè)可涵蓋至少三個(gè)印刷列的路徑,并分別計(jì)算該驅(qū)動(dòng)系統(tǒng)移動(dòng)該打印頭沿各個(gè)路徑打印該至少三個(gè)印刷列的時(shí)間,再依據(jù)計(jì)算出的時(shí)間選擇一最理想的路徑。
2.如權(quán)利要求1所述的打印裝置,其中每個(gè)印刷列包含有一加速區(qū)、一打印區(qū)、以及一減速區(qū),該打印區(qū)位于該加速區(qū)與該減速區(qū)之間,而該驅(qū)動(dòng)系統(tǒng)利用該加速區(qū)將該打印頭加速至一打印速度,并使用該減速區(qū)將該打印頭帶到靜止?fàn)顟B(tài);在每一路徑中,下一印刷列的加速區(qū)是銜接于前一印刷列的減速區(qū)之后。
3.如權(quán)利要求2所述的打印裝置,其中每一打印區(qū)具有一開(kāi)始打印的起始位置,以及一結(jié)束打印的終止位置,由前一印刷列的打印區(qū)的終止位置移至下一印刷列的打印區(qū)的起始位置需要一多余時(shí)間,該前瞻系統(tǒng)會(huì)為每一路徑總和該路徑內(nèi)所有的多余時(shí)間來(lái)取得該路徑的打印時(shí)間,而該最理想的路徑即為具有最短的打印時(shí)間的路徑。
4.如權(quán)利要求3所述的打印裝置,其中如果該打印頭由前一印刷列的打印區(qū)的終止位置移至下一印刷列的打印區(qū)的起始位置只轉(zhuǎn)換方向一次,則該前瞻系統(tǒng)計(jì)算出的多余時(shí)間為t=S/V其中t為該多余時(shí)間,S是相關(guān)于前一印刷列的打印區(qū)的終止位置至下一印刷列的打印區(qū)的起始位置的距離,而V是相關(guān)于該打印速度。
5.如權(quán)利要求3所述的打印裝置,其中如果該打印頭由前一印刷列的打印區(qū)的終止位置移至下一印刷列的打印區(qū)的起始位置轉(zhuǎn)換方向二次,則該前瞻系統(tǒng)計(jì)算出的多余時(shí)間為t=(S/V)+ta+td其中t為該多余時(shí)間,S是相關(guān)于前一印刷列的打印區(qū)的終止位置至下一印刷列的打印區(qū)的起始位置的距離,而V是相關(guān)于該打印速度,ta是相關(guān)于移動(dòng)該打印頭通過(guò)一加速區(qū)的時(shí)間,而td則是相關(guān)于移動(dòng)該打印頭通過(guò)一減速區(qū)的時(shí)間。
6.如權(quán)利要求3所述的打印裝置,其中如果該打印頭由前一印刷列的打印區(qū)的終止位置移至下一印刷列的打印區(qū)的起始位置之間并沒(méi)有轉(zhuǎn)換方向,且前一印刷列的減速區(qū)沒(méi)有和下一印刷列的加速區(qū)重疊,則該前瞻系統(tǒng)計(jì)算出的多余時(shí)間為t=[S-(Sa+Sd)]/V其中t為該多余時(shí)間,S是相關(guān)于前一印刷列的打印區(qū)的終止位置至下一印刷列的打印區(qū)的起始位置的距離,Sa是相關(guān)于一加速區(qū)的長(zhǎng)度,Sd是相關(guān)于一減速區(qū)的長(zhǎng)度,而V是相關(guān)于該打印速度。
7.如權(quán)利要求3所述的打印裝置,其中如果該打印頭由前一印刷列的打印區(qū)的終止位置移至下一印刷列的打印區(qū)的起始位置之間并沒(méi)有轉(zhuǎn)換方向,且前一印刷列的減速區(qū)與下一印刷列的加速區(qū)相重疊,則該前瞻系統(tǒng)計(jì)算出的多余時(shí)間為t=ta+td其中t為該多余時(shí)間,ta是相關(guān)于該打印頭移過(guò)一加速區(qū)的時(shí)間,而td則是相關(guān)于該打印頭移過(guò)一減速區(qū)的時(shí)間。
8.如權(quán)利要求3所述的打印裝置,其中該前瞻系統(tǒng)所找出的不同路徑的數(shù)目是為該前瞻系統(tǒng)所欲涵蓋的印刷列的數(shù)目的指數(shù)函數(shù)。
9.如權(quán)利要求8所述的打印裝置,其中該前瞻系統(tǒng)所找出的多個(gè)路徑會(huì)形成一二叉樹(shù)狀結(jié)構(gòu),該二叉樹(shù)狀結(jié)構(gòu)的每一層代表一印刷列,每一分支代表該打印頭向左移動(dòng)來(lái)打印下一印刷列或是向右移動(dòng)來(lái)打印下一印刷列,每一節(jié)點(diǎn)具有一多余時(shí)間;其中位于該二叉樹(shù)狀結(jié)構(gòu)的底層的每一節(jié)點(diǎn)代表該前瞻系統(tǒng)所欲涵蓋的多個(gè)印刷列的一路徑。
10.如權(quán)利要求9所述的打印裝置,其中一路徑的打印時(shí)間是由總和該二叉樹(shù)狀結(jié)構(gòu)上對(duì)應(yīng)的分支從底部節(jié)點(diǎn)至頂端節(jié)點(diǎn)上的所有節(jié)點(diǎn)所記錄的多余時(shí)間來(lái)取得。
11.一種連續(xù)定位一打印裝置的打印頭的方法,該方法包含有取得至少三個(gè)連續(xù)的沿左右方向排列的印刷列;找出多個(gè)涵蓋該多個(gè)印刷列的路徑;計(jì)算每個(gè)不同路徑所需的打印時(shí)間;以及選擇一最理想的路徑。
12.如權(quán)利要求11所述的方法,其中每個(gè)印刷列包含有一加速區(qū)、一打印區(qū)、以及一減速區(qū),該打印區(qū)位于該加速區(qū)與該減速區(qū)之間,而該加速區(qū)是用來(lái)將該打印頭加速至一打印速度,該減速區(qū)是用來(lái)將該打印頭帶到靜止?fàn)顟B(tài);在每一路徑中,下一印刷列的加速區(qū)是位于前一印刷列的減速區(qū)之后。
13.如權(quán)利要求12所述的方法,其中每一打印區(qū)具有一開(kāi)始打印的起始位置,以及一結(jié)束打印的終止位置,該打印頭會(huì)于每一打印區(qū)形成至少一像素,并且將該打印頭由前一印刷列的打印區(qū)的終止位置移至下一印刷列的打印區(qū)的起始位置需要一多余時(shí)間,每一路徑的打印時(shí)間是由總和該路徑內(nèi)所有的多余時(shí)間來(lái)取得,而該最理想的路徑即為具有最短的打印時(shí)間的路徑。
14.如權(quán)利要求13所述的方法,其中如果該打印頭由前一印刷列的打印區(qū)的終止位置移至下一印刷列的打印區(qū)的起始位置只轉(zhuǎn)換方向一次,則多余時(shí)間為t=S/V其中t為該多余時(shí)間,S是相關(guān)于前一印刷列的打印區(qū)的終止位置至下一印刷列的打印區(qū)的起始位置的距離,而V是相關(guān)于該打印速度。
15.如權(quán)利要求13所述的方法,其中如果該打印頭由前一印刷列的打印區(qū)的終止位置移至下一印刷列的打印區(qū)的起始位置轉(zhuǎn)換方向二次,則多余時(shí)間為t=(S/V)+ta+td其中t為該多余時(shí)間,S是相關(guān)于前一印刷列的打印區(qū)的終止位置至下一印刷列的打印區(qū)的起始位置的距離,而V是相關(guān)于該打印速度,ta是相關(guān)于移動(dòng)該打印頭通過(guò)一加速區(qū)的時(shí)間,而td則是相關(guān)于移動(dòng)該打印頭通過(guò)一減速區(qū)的時(shí)間。
16.如權(quán)利要求13所述的方法,其中如果該打印頭由前一印刷列的打印區(qū)的終止位置移至下一印刷列的打印區(qū)的起始位置之間并沒(méi)有轉(zhuǎn)換方向,且前一印刷列的減速區(qū)沒(méi)有和下一印刷列的加速區(qū)重疊,則多余時(shí)間為t=[S-(Sa+Sd)]/V其中t為該多余時(shí)間,S是相關(guān)于前一印刷列的打印區(qū)的終止位置至下一印刷列的打印區(qū)的起始位置的距離,Sa是相關(guān)于一加速區(qū)的長(zhǎng)度,Sd是相關(guān)于一減速區(qū)的長(zhǎng)度,而V是相關(guān)于該打印速度。
17.如權(quán)利要求13所述的方法,其中如果該打印頭由前一印刷列的打印區(qū)的終止位置移至下一印刷列的打印區(qū)的起始位置之間并沒(méi)有轉(zhuǎn)換方向,且前一印刷列的減速區(qū)與下一印刷列的加速區(qū)相重疊,則多余時(shí)間為t=ta+td其中t為該多余時(shí)間,ta是相關(guān)于該打印頭移過(guò)一加速區(qū)的時(shí)間,而td則是相關(guān)于該打印頭移過(guò)一減速區(qū)的時(shí)間。
18.如權(quán)利要求13所述的方法,其中不同路徑的數(shù)目是為取得的印刷列的數(shù)目的指數(shù)函數(shù)。
19.如權(quán)利要求18所述的方法,其中多個(gè)路徑會(huì)形成一二叉樹(shù)狀結(jié)構(gòu),該二叉樹(shù)狀結(jié)構(gòu)的每一層代表一印刷列,每一分支代表該打印頭向左移動(dòng)來(lái)打印下一印刷列或是向右移動(dòng)來(lái)打印下一印刷列,每一節(jié)點(diǎn)具有一多余時(shí)間;其中位于該二叉樹(shù)狀結(jié)構(gòu)的底層的每一節(jié)點(diǎn)代表一涵蓋多個(gè)印刷列的路徑。
20.如權(quán)利要求19所述的方法,其中一路徑的打印時(shí)間是由總和該二叉樹(shù)狀結(jié)構(gòu)上對(duì)應(yīng)的分支從底部節(jié)點(diǎn)至頂端節(jié)點(diǎn)上的所有節(jié)點(diǎn)所記錄的多余時(shí)間來(lái)取得。
全文摘要
本發(fā)明是提供一種打印裝置,其包含有一沿著左右方向設(shè)立的打印路徑,一驅(qū)動(dòng)系統(tǒng)用來(lái)沿著該打印路徑左右移動(dòng)一打印頭,以對(duì)一文件進(jìn)行打印工作,一控制電路用來(lái)控制該驅(qū)動(dòng)系統(tǒng),以及一前瞻系統(tǒng)用來(lái)找出多個(gè)可涵蓋至少三個(gè)印刷列的路徑,并分別計(jì)算該驅(qū)動(dòng)系統(tǒng)移動(dòng)該打印頭沿各個(gè)路徑打印該至少三個(gè)印刷列的時(shí)間,再依據(jù)計(jì)算出的時(shí)間選擇一最理想的路徑。
文檔編號(hào)B41J19/14GK1359805SQ0113859
公開(kāi)日2002年7月24日 申請(qǐng)日期2001年11月19日 優(yōu)先權(quán)日2000年12月21日
發(fā)明者李勇毅, 杜本權(quán) 申請(qǐng)人:明碁電通股份有限公司