打印机及其控制方法和装置制造方法

文档序号:2513696阅读:171来源:国知局
打印机及其控制方法和装置制造方法
【专利摘要】本发明公开了一种打印机及其控制方法和装置。该打印机的控制方法包括:检测当前安装的打印头的发热单元的数量;获取与检测到的发热单元的数量对应的打印头的分辨率;以及根据获取到的打印头的分辨率设置打印机参数。通过本发明,防止了打印机所检测到的打印头的分辨率出现错误,解决了相关技术中打印机所安装的打印头的分辨率发生变化后容易出现错误的问题。
【专利说明】打印机及其控制方法和装置
【技术领域】
[0001]本发明涉及打印机领域,具体而言,涉及一种打印机及其控制方法和装置。
【背景技术】
[0002]目前,热打印机的应用范围越来越广泛,热打印机的打印头上设有沿打印介质宽度方向(以下简称横向)等距排列成一行的多个发热单元,每当驱动打印介质沿打印介质长度方向(以下简称纵向)移动一个最小单位的长度(即一点行)后,通过给发热单元通电使其发热,可以在与打印头接触的热敏打印介质上形成与发热的发热单元相对应的打印点,从而在打印介质上完成一点行的图像的打印。
[0003]打印分辨率是衡量热打印机的打印质量的一个重要指标,打印分辨率是指打印输出时在打印介质的单位长度上最多可打印的点数,通常以点/英寸,即dpi (dot per inch)表示。打印分辨率包括横向打印分辨率和纵向打印分辨率,其中,横向打印分辨率是指打印输出时在打印介质横向的单位长度上最多可打印的点数,由于打印头的发热单元与打印介质横向的打印点一一对应,因此,横向打印分辨率是由打印头的发热单元的排列密度(以下简称打印头的分辨率)决定的;纵向打印分辨率是指打印输出时在打印介质纵向的单位长度上最多可打印的点数,即在打印介质移动单位长度时打印头执行打印的次数,显而易见,纵向打印分辨率是由打印头每执行一次打印时打印介质的移动长度决定的。
[0004]由以上可见,对于热打印机,其横向打印分辨率由其所安装的打印头的分辨率决定,比如对于安装分辨率为203dpi的打印头的打印机,其横向打印分辨率即为203dpi。但是,随着应用状况的变化,用户在使用打印机时可能需要对横向打印分辨率进行调整,如当用户对打印质量要求较高时,需要使用较高的横向打印分辨率进行打印,因此,打印机安装分辨率较高的打印头,如分辨率为300dpi或600dpi的打印头,而当用户对打印质量要求不高时,为了提高打印速度,需要使用较低的横向打印分辨率进行打印,因此,打印机安装分辨率较低的打印头,如分辨率为203dpi的打印头。为了保证打印质量及打印头工作正常,打印机的横向打印分辨率调整后与横向打印分辨率相关的打印机参数也需要调整。比如,为保证打印图像或字符的横向纵向比例不变,横向打印分辨率发生变化时纵向打印分辨率也需要按相同比例调整,再比如,横向打印分辨率调整后,每次打印一点行图像时向打印头发送的点阵数据的数据长度也需要根据打印头的发热单元的数量进行调整。因此,当打印机所安装的打印头的分辨率发生变化后,即打印机的横向打印分辨率发生变化后,打印机需要识别当前安装的打印头的分辨率并根据该打印头的分辨率调整与横向打印分辨率相关的打印机参数。
[0005]相关技术公开了一种打印机的打印头的分辨率的识别方法,该方法在打印机的控制线路板上设置用于表示打印头的分辨率的DIP开关,打印机通过检测DIP开关的状态确定所安装的打印头的分辨率,从而确定打印机的横向打印分辨率并设置与横向打印分辨率相关的打印机参数。
[0006]根据该相关技术的打印机的打印头的分辨率的识别方法,打印机所安装的打印头的分辨率发生变化后,用户需要手动更改控制线路板上的DIP开关以使其处于与所安装的打印头的分辨率相对应的状态,这种手动更改不仅给用户带来了操作上的不便,而且容易出现错误,当用户手动更改DIP开关出现错误时,打印机所检测到的打印头的分辨率出现错误,进而在调整与横向打印分辨率相关的打印机参数时造成参数设置错误,这不仅会造成打印机打印内容出现异常,还有可能造成打印头的损坏。
[0007]针对相关技术中打印机所安装的打印头的分辨率发生变化后容易出现错误的问题,目前尚未提出有效的解决方案。

【发明内容】

[0008]本发明的主要目的在于提供一种打印机及其控制方法和装置,以解决相关技术中打印机所安装的打印头的分辨率发生变化后容易出现错误的问题。
[0009]为了实现上述目的,根据本发明的一个方面,提供了一种打印机的控制方法。该打印机的控制方法包括:检测当前安装的打印头的发热单元的数量;获取与检测到的发热单元的数量对应的打印头的分辨率;以及根据获取到的打印头的分辨率设置打印机参数。
[0010]进一步地,获取与发热单元的数量对应的打印头的分辨率包括:根据预先存储的发热单元的数量与打印头的分辨率之间的对应关系获取与检测到的发热单元的数量对应的打印头的分辨率,或者,根据检测到的发热单元的数量及有效打印宽度计算与检测到的发热单元的数量对应的打印头的分辨率。
[0011]进一步地,在根据获取到的打印头的分辨率设置打印机参数之前,上述方法还包括:检测打印头的每个发热单元的电阻值;计算打印头的所有发热单元的平均电阻值,根据获取到的打印头的分辨率设置打印机参数包括:根据打印头的分辨率及平均电阻值设置打印机参数。
[0012]进一步地,根据打印头的分辨率及平均电阻值设置打印机参数包括:判断平均电阻值与发热单元预设电阻值是否相等,其中,在判断出平均电阻值与发热单元预设电阻值不相等时,根据平均电阻值设置打印选通时间。
[0013]进一步地,在根据获取到的打印头的分辨率设置打印机参数之前,上述方法还包括:判断当前安装的打印头的分辨率与打印头预设分辨率是否相等,其中,在判断出当前安装的打印头的分辨率与打印头预设分辨率不相等时,根据获取到的打印头的分辨率设置打印机参数。
[0014]进一步地,检测当前安装的打印头的发热单元的数量包括:控制测试电源为打印头供电以将测试电压Vt作用于参考电阻Rref及发热单元,其中,参考电阻Rref用于对测试电压Vt进行分压;生成测试数据Di,其中,i为I?j+Ι的正整数,且i的初始值为1,j为打印机所支持的最高分辨率的打印头的发热单元的数量,测试数据Di由j+Ι位二进制数据组成,其中,测试数据Di的第(j+2-1)个比特位的值为“1”,其余比特位的值均为“O”;将测试数据Di发送到打印头,并发送有效的打印头锁存信号及选通信号,其中,打印头的打印头驱动器的移位寄存器在时钟信号CLK的同步下依次接收并存储测试数据Di的比特位;计算电压检测电路输出的检测电压Vi, Vi = Vt* (Rhd/ (Rref+Rhd)),其中,Rhd为打印头的发热单元的电阻值,Rref为电压检测电路包括的参考电阻的电阻值;判断测试电压Vt与检测电压\的差值是否大于第一预设阈值,其中,当测试电压Vt与检测电压Vi的差值大于第一预设阈值时,i的值加1,并继续向打印头发送测试数据Di ;以及在判断出测试电压Vt与检测电压\的差值不大于第一预设阈值时,确定打印头的发热单元的数量为N = 1-1。
[0015]进一步地,在判断出测试电压Vt与检测电压Vi的差值大于第一预设阈值时,上述方法还包括:计算并存储处于通电状态的打印头的发热单元的电阻值Ri,其中,将所有打印头的发热单元的电阻值Ri的平均值作为打印头的发热单元的平均电阻值。
[0016]为了实现上述目的,根据本发明的另一方面,提供了一种打印机的控制装置。该打印机的控制装置包括:检测单元,用于检测当前安装的打印头的发热单元的数量;获取单元,用于获取与检测到的打印头的发热单元的数量对应的打印头的分辨率;以及设置单元,用于根据获取到的打印头的分辨率设置打印机参数。
[0017]进一步地,获取单元包括:获取模块,用于根据预先存储的打印头的发热单元的数量与打印头的分辨率之间的对应关系获取与检测到的打印头的发热单元的数量对应的打印头的分辨率,或者,计算模块,用于根据检测到的打印头的发热单元的数量及有效打印宽度计算与检测到的打印头的发热单元的数量对应的打印头的分辨率。
[0018]进一步地,检测单元还用于检测每个发热单元的电阻值,控制装置还包括:计算单元,用于计算当前安装的打印头的所有发热单元的平均电阻值,其中,设置单元用于根据打印头的分辨率及平均电阻值设置打印机参数。
[0019]为了实现上述目的,根据本发明的另一方面,提供了一种打印机,该打印机包括:打印头,用于在打印介质上形成打印图像,其中,打印头包括沿打印头宽度方向等距排列成一行的多个发热单元;打印头电源,用于提供打印头工作及测试所需要的电压;打印头驱动器,用于接收控制信号及点阵数据,并在控制信号的控制下依次将点阵数据发送给打印头的发热单元;发热单元检测器,用于检测当前安装的打印头的发热单元的数量;以及控制器,用于获取与检测到的发热单元的数量对应的打印头的分辨率,并根据获取到的打印头的分辨率设置打印机参数。
[0020]通过本发明的打印机的控制方法或控制装置,由于自动准确检测打印机所安装的打印头的分辨率,因而防止了打印机所检测到的打印头的分辨率出现错误,解决了相关技术中打印机所安装的打印头的分辨率发生变化后容易出现错误的问题。
【专利附图】

【附图说明】
[0021]构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0022]图1是根据本发明第一实施例的打印机的组成示意图;
[0023]图2a是根据本发明实施例的打印机的控制方法的流程图;
[0024]图2b是根据本发明第一优选实施例的打印机的控制方法的流程图;
[0025]图3是根据本发明第二优选实施例的打印机的控制方法的流程图;
[0026]图4是根据本发明第三优选实施例的打印机的控制方法的流程图;
[0027]图5是根据本发明第一实施例的打印头的发热单元检测方法的流程图;
[0028]图6是根据本发明第二实施例的打印头的发热单元检测方法的流程图;
[0029]图7是根据本发明一实施例的打印头及其检测电路的示意图;
[0030]图8是根据本发明一实施例的打印机参数对照表的示意图;[0031]图9是根据本发明一实施例的打印头测试数据的示意图;
[0032]图10是根据本发明一实施例的检测电压与测试数据的示意图;
[0033]图11是根据本发明实施例的打印机的控制装置的示意图;
[0034]图12a是根据本发明第一优选实施例的打印机的控制装置的示意图;以及
[0035]图12b是根据本发明第二优选实施例的打印机的控制装置的示意图。
【具体实施方式】
[0036]需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
[0037]图1是根据本发明第一实施例的打印机的组成示意图,如图所示,打印机100包括控制器11、通信接口 12、RAM存储器13、FLASH存储器14、打印头电源15、打印头驱动器16、打印头17、发热单元检测器18、电机驱动器19、电机20。其中,
[0038]控制器11用于控制各模块执行工作,比如,控制器11控制通信接口 12执行打印机100与打印请求装置(如计算机或网络设备)之间的数据传输;控制器11对接收的打印数据进行处理,生成要发送到打印头17的点阵数据;控制器11输出打印头17的控制信号;控制器11控制电机驱动器19驱动电机20的输出轴转动以带动打印介质在介质通道中移动等。
[0039]通信接口 12,用于执行打印机100与打印请求装置(如计算机或网络设备)之间的数据传输,比如,通信接口 12接收打印请求装置发送的打印控制命令或打印数据,通信接口 12向打印请求装置发送打印机100所安装的打印头的分辨率。
[0040]RAM存储器13,包括接收缓冲区131、打印缓冲区132、以及临时缓冲区133。其中,接收缓冲区131用于存储由通信接口 12接收的打印控制命令和打印数据;打印缓冲区132用于存储发送给打印头的点阵数据;临时缓冲区133用于存储程序运行过程中生成的数据及变量,如由发热单元检测器18生成的测试数据D1、发热单元检测器18检测到的测试点处的检测电压发热单元数量N、以及每个发热单元的电阻值Ri等。
[0041]FLASH存储器14,用于存储打印机的控制程序,同时,Flash存储器14还用于存储打印头预设分辨率Restl、发热单元预设电阻值Rtl,有效打印宽度W、第一预设阈值、发热单元数量的最大值j,以及参数对照表141等。其中,打印头预设分辨率Restl为上次执行打印头的发热单元检测时所获取的打印头的分辨率;发热单元预设电阻值Rtl为上次执行打印头的发热单元检测时所计算的打印头的所有发热单元的平均电阻值;有效打印宽度W由所安装的打印头的宽度决定,打印机100结构设计确定后,其所能安装的打印头的宽度为固定值,因此,有效打印宽度W也为一固定值,控制器11根据发热单元检测器18检测到的发热单元数量N及有效打印宽度W,即可计算出打印机100所安装的打印头17的分辨率;第一预设阈值用于判断发热单元检测器18检测到的测试点处的检测电压Vi与打印头电源15所提供的测试电压Vt的关系,当(Vt-Vi)的值大于第一预设阈值时,控制器11判定打印头有一个发热单元处于通电状态,当(Vt-Vi)的值不大于第一预设阈值时,控制器11判定打印头没有发热单元处于通电状态;发热单元数量的最大值j为打印机所支持的最高分辨率的打印头的发热单元的数量,比如打印机所能安装的打印头的有效打印宽度为W = 80毫米,打印机所支持的打印头的最高分辨率为Pmax = 600dpi,则打印机所支持的最高分辨率的打印头的发热单元数量j = (80/25.4) *600 = 1890 ;参数对照表141用于存储打印机100所支持的各种打印头的分辨率及其对应的打印机参数,比如纵向打印分辩、每次打印一点行图像时向打印头发送的点阵数据的数据长度(即打印缓冲区宽度)等,当打印机100所安装的打印头17发生变化后,控制器11检测当前安装的打印头17的分辨率,通过查询参数对照表141,获取与该打印头的分辨率相对应的参数,并根据获取的参数对打印机参数进行设置,图8是根据本发明一实施例的打印机参数对照表的示意图,如图8所示,该参数对照表共存储了三种打印头的分辨率及其对应的打印机参数,三种打印头的分辨率分别为203dp1、300dp1、600dpi,对于每种分辨率的打印头,其与打印头的分辨率相关的打印机参数分别包括发热单元数量、纵向打印分辨率、打印速度、打印缓冲区宽度、打印缓冲区高度等,比如,对于分辨率为203dpi的打印头,其包括的发热单元数量为640个,安装该分辨率的打印头时,打印机的纵向打印分辨率为203dpi,打印速度为300毫米/秒,打印缓冲区宽度为640比特位,打印缓冲区高度为30比特位。
[0042]打印头电源15,用于提供打印头17工作及测试所需要的电压,打印头电源15包括工作电源151和测试电源152,其中,工作电源151提供执行打印工作时打印头17所需要的工作电压V。,如24V ;测试电源152提供进行打印头的发热单元检测时打印头17所需要的测试电压Vt,如3.3V。图7是根据本发明一实施例的打印头及其检测电路的示意图,如图7所示,工作电源151受开关S控制,开关S与控制器11的输出信号(图中未标出)连接,开关S根据控制器11的输出信号可以处于闭合或断开状态,当开关S处于闭合状态时,工作电源151提供的工作电压V。作用于打印头上;当开关S处于断开状态时,测试电源152提供的测试电压Vt作用于打印头上。
[0043]打印头驱动器16,用于接收控制器11输出的控制信号及打印缓冲区132发送的点阵数据,并在控制信号的控制下依次将点阵数据发送给打印头17的发热单元,其中,打印头驱动器16包括移位寄存器161和锁存器162。如图7所示,移位寄存器161在控制器11输出的时钟信号CLK的同步下,通过数据信号DI依次接收由打印缓冲区132中发送出的点阵数据的比特位,点阵数据的比特位被存储在移位寄存器161中,其中,移位寄存器161的存储宽度为M,即移位寄存器161中最多可存储M个比特位,M的值与打印头17上的发热单元的数量相等,存储的每一个比特位对应一个发热单元,当接收的比特位的数量超过移位寄存器161的存储宽度M时,先接收的比特位就会从移位寄存器161中移除,即移位寄存器161只保留最后接收的M个比特位;锁存器162在控制器11输出的锁存信号LATCH有效时将移位寄存器161中存储的比特位锁存到打印头17的对应的发热单元。
[0044]打印头17,用于在打印介质上形成打印图像。其中,打印头17包括沿打印头宽度方向等距排列成一行的多个发热单元,比如,图7示意的打印头17包括El、...、E384、...、E640共640个发热单元,每个发热单元具有一定的电阻值,且各个发热单元的额定电阻值均相等。当打印头电源15提供的电源电压作用在发热单元上时,发热单元在控制器11提供的选通信号STB,以及移位寄存器161发送的比特位作用下,处于通电或不通电状态,如图7所示,当控制器11提供的选通信号STB由无效状态(如高电平)变化为有效状态(如低电平)时,对于第X个发热单元,如果移位寄存器161中发送的与该发热单元对应的比特位为有效值(如为二进制“I”)时,该发热单元对应的开关Sx为闭合状态,则该发热单元处于通电状态,如果此时打印头电源15向打印头17提供的电压为工作电压V。,则发热单元通电时发热在打印介质上形成一个打印点;当控制器11提供的选通信号STB为无效状态(如高电平)或由移位寄存器发送的二进制比特位为无效值(如为二进制的“O”)时,开关Si为断开状态,发热单元处于不通电状态。因此,在打印头电源15向打印头17提供工作电压时,打印头17的多个发热单元根据控制器11发送的控制信号及移位寄存器161发送的比特位受控发热或不发热,从而在打印介质上生成设定的图像或文字。
[0045]发热单元检测器18,用于检测打印头17的发热单元的数量,发热单元检测器18包括测试数据生成器181、电压检测电路182。其中,测试数据生成器181用于产生使单个发热单元发热的测试数据;电压检测电路182,如图7所示,用于将测试电源152提供的测试电压Vt进行分压,使测试电压Vt —部分作用在测试电阻Rref上,一部分作用在打印头17的发热单元上,同时,电压检测电路182根据测试数据生成器181生成的测试数据,输出施加在打印头17的发热单元上的电压Vi (简称检测电压),控制器11对电压检测电路182输出的检测电压Vi进行处理,根据检测电压Vi与测试电源152所提供的测试电压Vt的关系,判断打印头17的发热单元的数量,并可根据Vi的值计算处于通电状态的发热单元的电阻值Ri。
[0046]电机驱动器19,用于根据控制器11所提供的脉冲控制信号,输出电机20的输出轴转动所需要的电流。
[0047]电机20,用于驱动打印介质在介质通道内移动。
[0048]图2a是根据本发明实施例的打印机的控制方法的流程图,该方法包括以下步骤:
[0049]步骤S11,检测当前安装的打印头的发热单元的数量。
[0050]步骤S12,获取与检测到的打印头的发热单元的数量对应的打印头的分辨率。
[0051]在获取与检测到的打印头的发热单元的数量对应的打印头的分辨率时,可以采用以下方式:
[0052]方式一:
[0053]根据预先存储的打印头的发热单元的数量与打印头的分辨率之间的对应关系获取与检测到的打印头的发热单元的数量对应的打印头的分辨率。即,可以在打印机中预先存储不同的打印头的分辨率和打印头的发热单元的数量之间的对应关系,然后利用该对应关系和检测到的打印头的发热单元的数量确定当前的打印头的分辨率。
[0054]或者,
[0055]方式二:
[0056]根据检测到的打印头的发热单元的数量及有效打印宽度计算与检测到的打印头的发热单元的数量对应的打印头的分辨率。即,通过计算得到当前的打印头的分辨率。
[0057]步骤S13,根据获取到的打印头的分辨率设置打印机参数。
[0058]在该打印机的控制方法中,能够自动准确检测打印头的分辨率并设置相关打印机参数,从而防止了打印机所检测到的打印头的分辨率出现错误,解决了相关技术中打印机所安装的打印头的分辨率发生变化后容易出现错误的问题。
[0059]图2是根据本发明第一优选实施例的打印机的控制方法的流程图,该方法包括以下步骤:
[0060]步骤S21,检测当前安装的打印头的发热单元的数量
[0061]当打印机开机上电时或接收到检测打印头的分辨率的控制命令时,控制器控制发热单元检测器检测当前安装的打印头的发热单元的数量,并将检测到的打印头的发热单元数量N存储在RAM存储器的临时缓冲区中。
[0062]步骤S22,根据打印头的发热单元数量及有效打印宽度计算打印头的分辨率
[0063]控制器根据RAM存储器中存储的打印头的发热单元数量N及Flash存储器中存储的有效打印宽度w(单位为毫米),计算打印头的分辨率P (单位为点/英寸),其中P = N/(W/25.4),如已知打印头的发热单元数量N = 640个,有效打印宽度W = 80毫米,则打印头的分辨率为 P = 640/(80/25.4) = 203 点 / 英寸(即 203dpi)。
[0064]步骤S23,根据打印头的分辨率设置打印机参数
[0065]控制器根据步骤S22中计算所得的打印头的分辨率,查找Flash存储器中存储的参数对照表,获取与该打印头的分辨率相对应的参数,如纵向打印分辨率、打印缓冲区的宽度等,并根据获取的参数对打印机参数进行设置。
[0066]图3是根据本发明第二优选实施例的打印机的控制方法的流程图,该方法包括以下步骤:
[0067]步骤S31,检测当前安装的打印头的发热单元的数量及每个发热单元的电阻值
[0068]控制器控制发热单元检测器检测当前安装的打印头的发热单元的数量及每个发热单元的电阻值,并将检测到的打印头的发热单元数量N及每个发热单元的电阻值RiQS正整数,I ≤ i ≤ N)存储在RAM存储器的临时缓冲区中。
[0069]步骤S32,同步骤S22。
[0070]步骤S33,计算打印头的所有发热单元的平均电阻值
[0071]控制器根据RAM存储器中存储的每个发热单元的电阻值Ri (i为正整数,I ≤i ≤ N)计算所有发热单元的平均电阻值,由于打印头的发热单元的数量为N,每个发热单元的电阻值为Ri,因此,所有发热单元的平均电阻值Ravr = (W...+Rn)/N。
[0072]对于一个打印头来说,该打印头的各个发热单元的电阻值理论上是相等的,均为其额定电阻值,但实际中,各个发热单元的电阻值与其额定电阻值存在一定范围的误差,如±3%,由于打印头中各个发热单元的电阻值与其额定电阻值存在一定范围的误差,因此,采用发热单元的电阻值计算时取所有发热单元的平均电阻值Ravr作为打印头的发热单元电阻值更准确。
[0073]步骤S34,根据打印头的分辨率及发热单元的平均电阻值设置打印机参数
[0074]控制器根据步骤S32中计算所得的打印头的分辨率,查找Flash存储器中存储的参数对照表,获取与该打印头的分辨率相对应的参数,如纵向打印分辨率、打印缓冲区的宽度等,并根据获取的参数对打印机参数进行设置。同时,控制器根据步骤S33中计算所得到的发热单元的平均电阻值按照一定的规则计算打印机执行打印时每个发热单元的通电时间,即打印选通时间,并根据计算结果对打印选通时间进行设置。
[0075]本实施例的控制方法流程中,打印机检测每个发热单元的电阻值,并根据每个发热单元的电阻值计算所有发热单元的平均电阻值,根据发热单元的平均电阻值设置打印选通时间,在打印机更换打印头后,如果打印头的发热单元的电阻值发生变化,能够使打印机更换打印头后的打印效果与更换打印头前保持一致,比如,使打印机更换打印头后打印图像的打印浓度与更换打印头前保持一致,同时,根据发热单元的平均电阻值调整打印选通时间,有利于保护打印头,延长打印头的使用寿命。[0076]图4是根据本发明第三优选实施例的打印机的控制方法的流程图,打印机在接收到打印请求装置发送的检测打印头的分辨率的控制命令后执行该控制方法的流程,该方法包括以下步骤:
[0077]步骤S41,当打印机接收到检测打印头的分辨率的控制命令后检测当前安装的打印头的发热单元的数量及每个发热单元的电阻值。
[0078]步骤S42?步骤S43,同步骤S32?步骤S33。
[0079]步骤S44,判断当前安装的打印头的分辨率与打印头预设分辨率是否相等
[0080]控制器判断步骤S42计算所得的打印机当前安装的打印头的分辨率与Flash存储器中存储的打印头预设分辨率Restl是否相等,如果相等,说明打印机当前安装的打印头的分辨率与更换打印头前打印机安装的打印头(以下简称上一打印头)的分辨率相比没有发生变化,执行步骤S46,否则,执行步骤S45。
[0081]步骤S45,根据打印头的分辨率设置打印机参数
[0082]当打印机当前安装的打印头的分辨率与Flash存储器中存储的打印头预设分辨率Restl不相等时,说明打印机当前安装的打印头的分辨率与上一打印头的分辨率相比发生了变化,控制器将当前安装的打印头的分辨率作为打印头预设分辨率存储在Flash存储器中,同时查找Flash存储器中存储的参数对照表,获取与该打印头的分辨率相对应的参数,如纵向打印分辨率、打印缓冲区的宽度等,并根据获取的参数对打印机参数进行设置。
[0083]步骤S46,判断当前安装的打印头的发热单元的平均电阻值与发热单元预设电阻值是否相等
[0084]控制器判断步骤S43计算所得的打印机当前安装的打印头的发热单元的平均电阻值与Flash存储器中存储的发热单元预设电阻值Rtl是否相等,如果相等,说明当前安装的打印头的发热单元的平均电阻值与上一打印头的发热单元的平均电阻值相比没有发生变化,执行步骤S48,否则,执行步骤S47。
[0085]步骤S47,根据打印头的发热单元的平均电阻值设置打印选通时间
[0086]当打印机当前安装的打印头的发热单元的平均电阻值与Flash存储器中存储的发热单元预设电阻值Rtl不相等时,说明当前安装的打印头的发热单元的平均电阻值与上一打印头的发热单元的平均电阻值相比发生了变化,控制器将当前安装的打印头的发热单元的平均电阻值作为发热单元预设电阻值存储在Flash存储器中,同时,根据当前安装的打印头的发热单元的平均电阻值计算打印选通时间,并根据计算结果对打印选通时间进行设置。
[0087]步骤S48,向打印请求装置返回当前安装的打印头的分辨率
[0088]控制器控制通信接口向打印请求装置返回当前安装的打印头的分辨率。
[0089]本实施例的控制方法流程中,控制器判断当前安装的打印头的分辨率与Flash存储器中存储的打印头预设分辨率Restl是否相等,在二者不相等时根据当前安装的打印头的分辨率设置打印机参数;同时,判断当前安装的打印头的发热单元的平均电阻值与Flash存储器中存储的发热单元预设电阻值Rtl是否相等,在二者不相等时根据当前安装的打印头的发热单元的平均电阻值设置打印选通时间;同时,控制器控制通信接口向打印请求装置返回当前安装的打印头的分辨率,可以使打印请求装置根据打印机返回的打印头的分辨率调整下发的打印数据,比如对于有效打印宽度为80mm的打印机,向打印机发送一幅图像的数据,在安装的打印头的分辨率为203dpi时,所发送图像的宽度最大只能为640个像素点,而在安装的打印头的分辨率为300dpi时,所发送图像的宽度最大可以为945个像素点。
[0090]用户可以在每次更换打印机的打印头后通过打印请求装置向打印机发送检测打印头的分辨率的控制命令,打印机在接收到打印请求装置发送的检测打印头的分辨率的控制命令后执行该控制方法的流程,在没有更换打印头的情况下,打印机则无需执行打印头的分辨率及发热单元的电阻值的检测流程,因此,通过本实施例的控制方法,可以提高打印机的工作效率。
[0091]图5是根据本发明第一实施例的打印头的发热单元检测方法的流程图,该方法包括以下步骤:
[0092]步骤S51,控制测试电源为打印头供电
[0093]控制器输出相关的控制信号,使工作电源的开关S处于断开状态,因此,工作电源提供的工作电压V。不能作用于打印头的发热单元上,测试电源提供的测试电压Vt作用于参考电阻Rref及打印头的发热单元上,即测试电源为打印头供电。
[0094]步骤S52,生成测试数据Di
[0095]由测试数据生成器生成测试数据Di。其中,i为序号,取值为I?j+Ι的正整数,且i的初始值为I ; j为发热单元数量的最大值,即j为从Flash存储器中获取的打印机所支持的最高分辨率的打印头的发热单元的数量;测试数据Di由j+Ι位二进制数据组成,其中,Di的第(j+2-1)个比特位的值为“1”,其余比特位的值均为“O”。图9是根据本发明一实施例的打印头测试数据的示意图,如图所示,测试数据Dl的第j+Ι个比特位的值为“I”、
测试数据D2的第j个比特位的值为“I”、测试数据D3的第j-Ι个比特位的值为“I”.....测试数据Dj的第2个比特位的值为“1”、测试数据0(」+1)的第I个比特位的值为“I”。
[0096]步骤S53,将测试数据Di发送到打印头,并发送有效的打印头锁存信号和选通信号
[0097]控制器将测试数据Di发送给打印头驱动器,打印头驱动器的移位寄存器在时钟信号CLK的同步下依次接收并存储测试数据Di的比特位,控制器在发送完测试数据Di的所有比特位后发送有效锁存信号LATCH,打印头驱动器的锁存器接收到有效锁存信号LATCH后将移位寄存器中存储的测试数据Di的比特位锁存到打印头的对应的发热单元,发送完有效锁存信号LATCH后间隔设定时间,控制器发送有效选通信号STB,打印头驱动器接收到的选通信号STB由无效状态(如高电平)变为有效状态(如低电平)时,打印头的发热单元根据其对应的由移位寄存器发送的比特位为有效值(如为二进制“I”)或无效值如为二进制“ O ”),处于通电状态或不通电状态。
[0098]由于移位寄存器的存储宽度为M,M的值与打印头的发热单元的数量相等,打印机所支持的最高分辨率的打印头的发热单元的数量为j,测试数据Di的长度为j+Ι,因此测试数据Di的长度大于移位寄存器的存储宽度M,当移位寄存器接收的数据的长度大于移位寄存器的存储宽度M时,移位寄存器只保留最后接收的M个比特位,先接收比特位被从移位寄存器中移除,即移位寄存器先接收的(j+1-M)个比特位会被从移位寄存器中移除。当测试数据Di中值为“I”的比特位位于第I?(j+1-M)位时,Di中值为“I”的比特位被从移位寄存器中移除,移位寄存器中存储的发送给打印头的所有发热单元的比特位的值均为“0”,因此,打印头驱动器接收到有效选通信号后,打印头的所有发热单元均处于不通电状态;当测试数据Di中值为“I”的比特位位于第(j+2-M)~(j+Ι)位时,Di中值为“I”的比特位被保留在移位寄存器中,移位寄存器中存储的发送给打印头的所有发热单元的比特位中包含一个值为“I”的比特位,因此,打印头驱动器接收到有效选通信号后,打印头的所有发热单元中有一个发热单元,即测试数据Di中值为“I”的比特位对应的发热单元处于通电状态。
[0099]由于进行发热单元检测时由测试电源为打印头供电,测试电源提供的测试电压Vt作用于测试电阻Rref及打印头的发热单元上,Vt的值较低,比如为3.3V,发热单元处于通电状态时所发出的热量较少,不能够在打印介质上形成打印点。
[0100]步骤S54,计算电压检测电路输出的检测电压Vi
[0101]控制器将测试数据Di发送到打印头并发送有效的打印头锁存信号和选通信号后,计算电压检测电路输出的检测电压Vi,如图7所示,即计算电压检测电路中测试点T处的电压,由于测试电源提供的测试电压Vt —部分作用在测试电阻Rref上,一部分作用在打印头的发热单元上,即测试电阻Rref与打印头的发热单元对测试电压Vt进行分压,因此,发送测试数据Di后测试点T处的电压,即电压检测电路输出的检测电压Vi = Vt* (Rhd/(Rref+Rhd)),其中,Rhd为打印头的发热单元的电阻值。
[0102]步骤S55,判断测试电源提供的测试电压Vt与检测电压Vi的差值是否大于第一预设阈值
[0103]控制器将测试数据Di发送到打印头并发送有效的打印头锁存信号和选通信号后,当打印头有一个发热单元处于通电状态时,如设处于通电状态的发热的单元的序号为i,即第i个发热单元处于通电状态时,Rhd = Ri,其中,Ri为第i个发热单元的电阻值,因此,Vi = Vt^Ri/(Rref+Ri);而当打印头的所有发热单元均处于不通电状态时,所有发热单元的开关均为断开状态,Rhd无穷大,因此,Vi^ Vt,控制器将电压检测电路输出的检测电压Vi与测试电源提供的测试电压Vt进行比较,判断测试电源提供的测试电压Vt与检测电压Vi的差值,即(Vt-Vi)的值是否大于第一预设阈值,当(Vt-Vi)的值大于第一预设阈值时,控制器判定发送测试数据Di后打印头有一个发热单元处于通电状态,执行步骤S56 ;否则,当(Vt-Vi)的值不大于第一预设阈值时,控制器判定发送数据Di后打印头的所有发热单元均处于不通电状态,执行步骤S57。
[0104]步骤S56,i值加I
[0105]控制器将i的值在当前值基础上加I后再次执行步骤S52。
[0106]步骤S57,确定并存储打印头的发热单元的数量
[0107]当(Vt-Vi)的值不大于第一预设阈值时,控制器判定发送测试数据Di后打印头的所有发热单元均处于不通电状态,由于(Vt-Vp1)的值大于第一预设阈值,即控制器发送测试数据D(1-l)后打印头的所有发热单元中有一个发热单元处于通电状态,因此,控制器判定当发送测试数据Di时,测试数据中值为“I”的比特位被从移位寄存器中移除;当发送测试数据Dl~D(1-l)时,测试数据中值为“I”的比特位被保留在移位寄存器中,打印头的发热单元依次被选通,因此,控制器判定打印头驱动器的移位寄存器的存储宽度M= 1-1。由于移位寄存器的存储宽度M的值与打印头的发热单元的数量相等,并且发送数据Dl~D(1-l)的过程中共依次选通了打印头的(1-Ι)个发热单元,因此,被测试的打印头共包括(1-Ι)个发热单元, 即打印机当前安装的打印头的发热单元数量N= 1-1,控制器将N的值存储在RAM存储器中。[0108]图10所示为检测如图7所示的包含640个发热单元的打印头的发热单元的数量时,控制器发送测试数据Di后电压检测电路所输出的各检测电压Vi的示意图,如图所示,
电压检测电路输出了 V1、V2.....V640、V641共641个检测电压,其中,测试电压Vt与检测电压
V1~V64tl的差值均大于第一预设阈值,测试电压Vt与检测电压V641的差值不大于第一预设阈值,检测电压值在V641处发生突变,因此,该打印头的发热单元的数量N = 641-1 = 640。
[0109]图6是根据本发明第二实施例的打印头的发热单元检测方法的流程图,该方法包括以下步骤:
[0110]步骤S61~步骤S64,同步骤S51至步骤S54。
[0111]步骤S65,判断测试电源提供的测试电压Vt与检测电压Vi的差值是否大于第一预设阈值
[0112]控制器将电压检测电路输出的检测电压Vi与测试电源提供的测试电压Vt进行比较,判断测试电源提供的测试电压Vt与检测电压\的差值,即(Vt-Vi)的值是否大于第一预设阈值,当(Vt-Vi)的值大于第一预设阈值时,控制器判定发送测试数据Di后打印头有一个发热单元处于通电状态,执行步骤S66;否则,当(Vt-Vi)的值不大于第一预设阈值时,控制器判定发送数据Di后打印头的所有发热单元均处于不通电状态,执行步骤S68。
[0113]步骤S66,计算并存储处于通电状态的发热单元的电阻值Ri
[0114]当(Vt-Vi)的值大于第一预设阈值时,控制器判定发送测试数据Di后打印头有一个发热单元处于通电状态,控制器计算处于通电状态的发热单元的电阻值Ri,由于Vi =Vt^Ri/ (Rref+Ri),因此,Ri = VjRref (Vt-Vi),控制器将Ri的值存储在RAM存储器中。
[0115]步骤S67,i值加I
[0116]控制器将i的值在当前值基础上加I后再次执行步骤S62。
[0117]步骤S68,同步骤S57。
[0118]通过本发明提供的打印机及其控制方法,能够实现自动准确检测打印机所安装的打印头的分辨率,并能够实现打印头的发热单元的电阻值的检测,根据打印头的分辨率及打印头的发热单元的电阻值,自动设置相关的打印机参数,节省了用户手动设置打印头的分辨率的操作,解决了用户手动操作过程出现错误造成打印内容异常或打印头损坏的问题。
[0119]相应于本发明实施例所提供的打印机的控制方法,本发明实施例还提供了一种打印机的控制装置。需要说明的是,本发明实施例的打印机的控制方法可以通过本发明实施例所提供的打印机的控制装置来执行,本发明实施例的打印机的控制装置也可以用于执行本发明实施例所提供的打印机的控制方法。
[0120]图11是根据本发明实施例的打印机的控制装置的示意图。如图11所示,该打印机的控制装置包括检测单元10、获取单元20和设置单元30。
[0121]检测单元10用于检测当前安装的打印头的发热单元的数量。
[0122]获取单元20用于获取与检测到的打印头的发热单元的数量对应的打印头的分辨率。
[0123]设置单元30用于根据获取到的打印头的分辨率设置打印机参数。
[0124]图12a是根据本发明第一优选实施例的打印机的控制装置的示意图。该实施例的控制装置可以作为图11所示实施例的控制装置的优选实施方式,在该实施例中, 打印机的控制装置包括检测单元10、获取单元20和设置单元30,且检测单元10、获取单元20和设置单元30的作用与上述实施例相同,在此不再赘述,其中,获取单元20包括获取模块201或者计算模块202。
[0125]获取模块201用于根据预先存储的打印头的发热单元的数量与打印头的分辨率之间的对应关系获取与检测到的打印头的发热单元的数量对应的打印头的分辨率。
[0126]计算模块202用于根据检测到的打印头的发热单元的数量及有效打印宽度计算与检测到的打印头的发热单元的数量对应的打印头的分辨率。
[0127]图12b是根据本发明第二优选实施例的打印机的控制装置的示意图。该实施例的控制装置可以作为图11所示实施例的控制装置的优选实施方式,在该实施例中,打印机的控制装置包括检测单元10、获取单元20和设置单元30,且检测单元10、获取单元20和设置单元30的作用与上述实施例相同,在此不再赘述,其中,检测单元10还用于检测每个发热单元的电阻值,该控制装置还包括:计算单元40,用于计算当前安装的打印头的所有发热单元的平均电阻值,其中,设置单元30用于根据打印头的分辨率及平均电阻值设置打印机参数。
[0128]显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
[0129]以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种打印机的控制方法,其特征在于,包括: 检测当前安装的打印头的发热单元的数量; 获取与检测到的所述发热单元的数量对应的所述打印头的分辨率;以及 根据获取到的所述打印头的分辨率设置打印机参数。
2.根据权利要求1所述的控制方法,其特征在于,获取与所述发热单元的数量对应的所述打印头的分辨率包括: 根据预先存储的所述发热单元的数量与所述打印头的分辨率之间的对应关系获取与检测到的所述发热单元的数量对应的所述打印头的分辨率, 或者, 根据检测到的所述发热单元的数量及有效打印宽度计算与检测到的所述发热单元的数量对应的所述打印头的分辨率。
3.根据权利要求1所述的控制方法,其特征在于, 在根据获取到的所述打印头的分辨率设置打印机参数之前,所述方法还包括:检测所述打印头的每个发热单元的 电阻值;计算所述打印头的所有发热单元的平均电阻值, 根据获取到的所述打印头的分辨率设置打印机参数包括:根据所述打印头的分辨率及所述平均电阻值设置打印机参数。
4.根据权利要求3所述的控制方法,其特征在于,根据所述打印头的分辨率及所述平均电阻值设置打印机参数包括: 判断所述平均电阻值与发热单元预设电阻值是否相等, 其中,在判断出所述平均电阻值与所述发热单元预设电阻值不相等时,根据所述平均电阻值设置打印选通时间。
5.根据权利要求1所述的控制方法,其特征在于,在根据获取到的所述打印头的分辨率设置打印机参数之前,所述方法还包括: 判断当前安装的打印头的分辨率与打印头预设分辨率是否相等, 其中,在判断出当前安装的打印头的分辨率与所述打印头预设分辨率不相等时,根据获取到的所述打印头的分辨率设置打印机参数。
6.根据权利要求1所述的控制方法,其特征在于,检测当前安装的打印头的发热单元的数量包括: 控制测试电源为所述打印头供电以将测试电压Vt作用于参考电阻Rref及所述发热单元,其中,所述参考电阻Rref用于对所述测试电压Vt进行分压;生成测试数据Di,其中,i为I~j+Ι的正整数,且i的初始值为1,j为所述打印机所支持的最高分辨率的打印头的所述发热单元的数量,所述测试数据Di由j+Ι位二进制数据组成,其中,所述测试数据Di的第(j+2-1)个比特位的值为“ I”,其余比特位的值均为“O” ; 将所述测试数据Di发送到所述打印头,并发送有效的打印头锁存信号及选通信号,其中,所述打印头的打印头驱动器的移位寄存器在时钟信号CLK的同步下依次接收并存储所述测试数据Di的比特位; 计算电压检测电路输出的检测电压Vi, Vi=Vt* (Rhd/ (Rref+Rhd)),其中,Rhd为所述打印头的发热单元的电阻值,Rref为所述电压检测电路包括的所述参考电阻的电阻值; 判断所述测试电压Vt与所述检测电压Vi的差值是否大于第一预设阈值,其中,当所述测试电压Vt与所述检测电压Vi的差值大于所述第一预设阈值时,i的值加1,并继续向所述打印头发送所述测试数据Di ;以及 在判断出所述测试电压Vt与所述检测电压Vi的差值不大于所述第一预设阈值时,确定所述打印头的发热单元的数量为N=1-1。
7.根据权利要求6所述的控制方法,其特征在于,在判断出所述测试电压Vt与所述检测电压\的差值大于第一预设阈值时,所述方法还包括: 计算并存储处于通电状态的打印头的发热单元的电阻值Ri, 其中,将所有打印头的发热单元的电阻值Ri的平均值作为所述打印头的发热单元的平均电阻值。
8.—种打印机的控制装置,其特征在于,包括: 检测单元,用 于检测当前安装的打印头的发热单元的数量; 获取单元,用于获取与检测到的打印头的发热单元的数量对应的打印头的分辨率;以及 设置单元,用于根据获取到的打印头的分辨率设置打印机参数。
9.根据权利要求8所述的控制装置,其特征在于,所述获取单元包括: 获取模块,用于根据预先存储的打印头的发热单元的数量与打印头的分辨率之间的对应关系获取与检测到的打印头的发热单元的数量对应的打印头的分辨率, 或者, 计算模块,用于根据检测到的打印头的发热单元的数量及有效打印宽度计算与检测到的打印头的发热单元的数量对应的打印头的分辨率。
10.根据权利要求8所述的控制装置,其特征在于,所述检测单元还用于检测每个发热单元的电阻值,所述控制装置还包括: 计算单元,用于计算当前安装的打印头的所有发热单元的平均电阻值, 其中,所述设置单元用于根据所述打印头的分辨率及所述平均电阻值设置打印机参数。
11.一种打印机,其特征在于,包括: 打印头,用于在打印介质上形成打印图像,其中,所述打印头包括沿打印头宽度方向等距排列成一行的多个发热单元; 打印头电源,用于提供所述打印头工作及测试所需要的电压; 打印头驱动器,用于接收控制信号及点阵数据,并在所述控制信号的控制下依次将所述点阵数据发送给所述打印头的发热单元; 发热单元检测器,用于检测当前安装的打印头的发热单元的数量;以及控制器,用于获取与检测到的所述发热单元的数量对应的打印头的分辨率,并根据获取到的所述打印头的分辨率设置打印机参数。
【文档编号】B41J29/38GK103722907SQ201210389788
【公开日】2014年4月16日 申请日期:2012年10月15日 优先权日:2012年10月15日
【发明者】屈博, 王鑫, 丁进峰, 王波涛, 王鑫平 申请人:山东新北洋信息技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1