[背景技术]
PCB制造业是我国珠三角地区的优势制造业,印制电路板常规制造工艺是铜箔蚀刻法,也称减成法,它是用覆铜箔层压板为基板,经网版印刷或光致成像形成抗蚀线路图形,由化学蚀刻得到电路。PCB制造过程复杂、工序多,耗用大量的水与电,耗用许多铜与化学品材料,产生大量的废水和污染物。喷墨印制电子(Printed Elec-tronic)技术是正在兴起一项PCB技术革命,,它采用数字喷墨打印技术,把功能性油墨直接在绝缘基材上进行喷墨印制,直接形成抗蚀/抗镀、导电层电路、标注的图形。新技术可以减少传统工艺的60%以上的生产过程,节省60%以上的抗蚀/抗镀的油墨/干膜等材料,减少90%以上有机废水的处理与排放,并可提高产品的合格率和缩短生产周期,降低“图形转移”的成本。喷墨打印替代传统的丝印是技术发展的趋势,高速喷墨打印要求采用多个喷头组成喷头阵列,并行工作,设计一种能协调多喷头同步精准喷印、分发与调度喷印任务的***是本发明专利设计的主要内容。
本发明专利技术也可以应用到陶瓷印花、EL冷光板印制等领域。
[发明专利内容]
本发明专利涉及一种阵列式精密喷印设备的喷印控制方法,设计一套阵列式精密喷印设备的数据传输及控制协议及采用所述协议的喷印控制***,解决2-120个喷头组成的喷头阵列的喷印作业生成、数据快速传输、任务分发与协同、精准同步喷印的问题,适用于PCB高速喷印、陶瓷印花、EL冷光板印制等领域。基于三层硬件架构:上位机、NUSB中控***、喷头控制板卡阵列,设计喷印数据结构、通信及控制协议,喷印作业调度算法,喷印作业由喷印点火数据、计划方案指令、临时方案指令组成,***按计划方案或临时方案调度喷印作业;上位机生成作业数据与指令,NUSB进行解析指令、管理作业、分发任务、控制执行并统计,喷头控制板卡执行喷印任务。
各部分的具体结构及工作原理如下:
1.本发明专利涉及多喷头阵列式喷墨印制设备
本发明专利所述的多喷头阵列式喷墨印制设备具有2-120个喷头组成的喷头阵列,喷头阵列固定安装在设备基台上,喷头阵列处于静止状态,喷印物件则处于运动状态,喷印物件被传送经过喷头阵列下方时,喷头进行精准的对位喷印,喷印过程示意如图2所示。
多喷头阵列式喷印设备的多喷头排布成纵横阵列,各喷头的平台位置坐标不同,各喷头喷印的内容及点火喷印的时刻也不一致,为了能进行精准的对位喷印,需要有一个精确的喷印时间基准,在喷头阵列前方20cm处设置有光电传感器及影像采集装置,采用装置发出的脉冲信号为计时复位基准,并对采集的影像进行定位分析,采用其结果来补偿偏移误差(具体方法在后面描述)。设备机械平台及喷头布局结构如图3所示。
2.本发明专利所述的阵列式喷印设备喷印控制***
(1)所述喷印控制***由上位机、NUSB中控***、喷头控制板卡阵列组成,在上位机与喷头控制板卡阵列之间设置有NUSB中控***,喷印控制***的硬件特征上表现为三层结构。上位机通过千兆网与NUSB中控***进行通信,具有基于共享密码的安全认证机制;NUSB中控***与喷头控制板卡间通过USB2.0进行通信,一个NUSB中控***带有10-30个USB口,可以连接10-30个喷头控制板卡;喷头控制板卡与喷头之间通过喷头配套排线进行通信,一个喷头控制板卡可以驱动连接1-4个喷头,设备最多可具有120个喷头,喷印控制***的结构示意如图1所示。
(2)所述喷印控制***上位机
一方面,上位机根据准备喷印的图形、生产批次任务、每个喷头的位置坐标、设置的喷印时间基准、喷印物件速度、喷头孔位参数,按后面描述的帧生成算法进行运算处理,为每个喷头生成喷印作业指令及数据,封装为喷印点火数据帧、计划方案指令帧、临时方案指令帧(各类帧结构在后面定义说明),发送给NUSB中控***;
另一方面,上位机根据用户的设备操作、墨路定时自动维护动作,生成机构运动指令帧,墨路操作指令帧,发送给NUSB中控***。上位机通过主动询问或被动接收NUSB中控***的设备状态管理帧,分析、确认设备的状态。
(3)所述喷印控制系的NUSB中控***
NUSB中控***工作在上位机与喷头控制板卡阵列之间,负责传输数据、解析指令,进行作业调度与任务分发。
所述喷印控制***的NUSB中控***,其硬件***特征是:主板上有一个千兆网口,通过千兆网口与上位机进行连接通信,有10-30个USB口,通过USB口与喷头控制板卡进行连接通信,安装有一个运动控制卡,通过运动控制卡向设备的运动伺服***发脉冲,控制设备的各运动轴的运动。
本发明专利所述的阵列式喷印设备有6个运动轴,采用一个6轴运动控制卡进行控制。NUSB中控***分析从上位机接收来的运动控制操作帧,从帧数据中取出运动控制卡的控制参数,送到运动控制卡,由运动控制卡按参数要求发出脉冲,控制设备的运动。
NUSB中控***接收上位机传送来的帧有:喷印点火数据帧、计划方案指令帧、临时方案指令帧、机构运动指令帧、墨路操作指令帧。NUSB中控***分析收到的各帧帧头,如果帧头(Cmd_XPacket_Header结构)中的PacketType的值为“X-USB”,则从帧(Cmd_NUSBPacket结构)中USBNo取出USB口编号,按指明的USB口编号分发帧(喷印点火数据帧、计划方案指令帧、临时方案指令帧)到与USB相连的喷头控制板卡;如果帧头(Cmd_XPacket_Header结构)中的PacketType的值为“X-move”,则从帧(Cmd_XMovePacket结构)中分析取出运动控制卡的运动控制参数,按运动控制卡的指令格式要求生成运动控制指令,发给运动控制卡执行,生成运动伺服***的脉冲,控制设备的运动动作。如果帧头(Cmd_XPacket_Header结构)中的PacketType的值为“X-com”,则从帧(Cmd_XComPacket结构)中ComNo取出串口号,并把帧中CmdContent的值发送到ComNo指明串口号的串口,即把墨路操作指令帧去掉帧头后的数据通过串口送到墨路维护的PLC***。
所述喷印控制***的NUSB中控***,其具有设备状态管理协议,通过与上位机、喷头控制板卡进行状态管理数据帧的交换通信,进行设备状态的一致性管理,状态管理数据帧具有说明书中所定义的状态管理数据帧协议格式。NUSB中控***通过USB2.0接口直连各个喷头控制板卡、通过PCI总线直连运动控制卡、通过COM串口直连控制墨路的PLC***,NUSB中控***保存有设备各部分的工作状态,并维持与管理状态。用户操作上位机,上位机生成喷印作业指令及数据,下发到USB***处理后,上位机可以脱离设备或关机,不会影响设备对喷印作业的执行。分发到各喷头控制板卡中的喷印作业,其喷印点火数据部分存入在数据区内存中,其喷印任务指令部分存入在指令区内存中,各喷头控制板卡在外部的喷印基准脉冲触发下,自动执行喷印作业。当上位机重新开机或重新连接设备时,向NUSB中控***发送状态请求帧,NUSB中控***收到请求后,把设备的状态数据封装成状态管理数据帧(Cmd_GetStatusPacket结构),发送给上位机。
(4)所述喷印控制***的喷头控制板卡
喷头控制板卡由FPGA主控部分与DSP定位部分组成,FPGA主控部分与DSP定位部分通过共享缓存进行数据交换。在FPGA主控部分的DRAM中创建存放喷印点火数据的内存片段(下称:数据内存区)、存放计划方案指令的内存片段(下称:计划指令内存区)、存放临时方案指令的内存片段(下称:临时指令内存区),采用查找表机制进行访问。FPGA主控部分接收从NUSB传入的数据帧、指令帧,数据帧依次逐行存到数据内存区,计划方案指令帧存到计划指令内存区,临时方案指令帧存到临时指令内存区。
任务指令在喷头控制板卡中执行一次,完成一个喷印物件的喷印作业,按任务指令帧中的任务量(任务指令帧结构Jet_ScheduleFrame中的TotalPassCount项值)重复执行多次,完成多个喷印物件的喷印作业。各喷头控制板卡中任务指令帧的一次执行,需要一个同时的外部触发脉冲(下称:喷印触发脉冲)为喷印时间起始基准。
在设备喷印工作状态下,喷印物件依次进行设备,匀速向前运动,当喷印物件的前缘到达光电传感器时,触发光电传感器输出的脉冲,光电传感器输出的脉冲通过直连进入相机I/O接口的输入端,触发影像采集装置的相机进行定位拍照,在相机拍照快门关闭时刻,相机的I/O接口的输出端输出一个拍照完成脉冲信号,所述的拍照完成脉冲信号作为喷印开始的基准信号,通过硬件直连分发到所有的喷头控制板卡的喷印触发脉冲输入端,这样,所有的喷头控制板卡具有一致的喷印基准信号。
当外部的喷印触发脉冲达到喷头控制板卡,计时器清0,并从临时指令内存区中读取任务指令,如果临时指令内存区为空,则再从计划指令内存区中读取任务指令,分析指令参数,按指令参数(任务子项结构Jet_SectionTask中的StaRt_X、Start_Y、RowCount项值)指示到数据内存区依次逐行取到帧数据,帧中点火数据送喷头内部的点火数据区,帧中点火时间戳项值加上从共享缓存中取到的喷印物件偏移补偿的时间换算值,作为该帧的喷印点火时间;DSP定位部分与外部相机相连,接收定位园的影像数据,由DSP进行影像处理,计算出喷印件上的定位圆的圆心坐标,把喷印件在运动方向的偏离值按速度换算成喷印延时的时间值,放入共享缓存中,供FPGA主控部分纠偏补偿使用。
喷印控制板卡的控制电路***主要包括基于FPGA的主控部分、基于DSP的定位圆图像采集及参数提取部分。FPGA主控部分主要包括USB接口模块、喷印数据处理模块、喷头驱动模块、温度控制模块、驱动电压调整模块、喷印图像存储及纠偏模块、与DSP接口模块部分,其中,USB接口模块在每批次喷印开始前用于接收上位机经NUSB***发送下来喷印作业数据,喷头驱动模块用于将喷印数据信息转化为适合喷头喷印的时序,以时序控制喷头的喷印动作;温度控制模块用于实时监控喷头温度;驱动电压调整模块用于实时调整喷头驱动电压的幅值及幅宽,电路原理结构图如图6所示。
3.多喷头阵列式喷印设备的数据传输及控制方法
在上位机与喷头控制板卡阵列之间增加NUSB中控***,由上位机、NUSB中控***、喷头控制板卡阵列组成硬件架构上的三层结构,具有基于三层硬件结构定义的数据通信及控制协议,按协议进行互相间的数据交换与控制,上位机根据喷印图形与生产任务,生成喷印作业指令及数据,封装为帧,传给NUSB中控***,NUSB中控***传输数据、解析指令,进行作业调度与任务分发,喷头控制板卡按规则执行喷印任务。
所述的一种多喷头阵列式喷印设备的数据传输及控制方法,采用的数据通信及控制协议定义了喷印点火数据帧、计划方案指令帧、临时方案指令帧、墨路操作指令帧、设备状态管理帧、运动控制指令帧。采用C++语言定义的数据通信及控制协议如下:
所述的一种多喷头阵列式喷印设备的数据传输及控制方法,其特征之一是其喷印作业生成与调度算法,喷印作业由喷印点火数据与任务指令数据组成,逐行点火数据的基本结构为协议格式中的Jet_DataStruct,方案指令(计划方案指令、临时方案指令)的基本结构为协议格式中的ScheduleStruct,喷印作业生成与调度步骤是:
(1)上位机进行图形格式转换、喷印数据采样、喷印作业的点火数据与方案指令帧生成、通信包封装与发送,具体描述如下:
上位机采用WDM(Windows设备驱动模式)技术将准备喷印的图形进行格式转换格式,转换为每像素占1字节的256色BMP位图,如图4所示,在标准WDM结构上增加了带RS247X库Gberber解析程序及PCB工艺边框生成程序,具有解释绘制基于RS247X标准Gberber图形功能。
上位机按喷头的孔位间距、喷印行距要求对所述BMP位图进行逐行采样,例如:采用Konicl024MB喷头,有1024个喷孔,相邻孔距35um,要求喷印密度为360DBI,相邻行采样距离为35um,喷头安装相对喷印基准点的坐标为x,采样时,每采样行从位图横向x处开始,相隔35um采样一点,每行采样1024整数倍个点数,每隔35um采样一行。每行采样数据按喷印点火数据帧格式进行结构填写,成为一帧喷印点火数据帧(Jet_DataFrame结构),根据喷印件触发喷印点的位置坐标、喷印件传送速度、喷印点火数据帧描述的喷印行的坐标、各喷头的安装位置坐标,计算各喷印点火数据帧的喷印点火时间t,并填入喷印点火数据帧中的点火时间戳项,公式如下:
t=(触发喷印点距离+喷头安装Y坐标+行序*行距)/喷印件速度
把喷印点火数据帧加上包头(Cmd_XPacket_Header结构),封装为通信包(Cmd_NUSBPacket结构),发送给NUSB中控***。
根据用户输入的喷印批次工作任务的喷印数量、喷印图形区域、喷印区域的重复度及轮换次序,按计划方案指令帧或临时方案指令帧格式(Jet_ScheduleFrame结构)进行结构填写,形成计划或临时的方案指令帧,再把方案指令帧加上包头(Cmd_XPacket_Header结构),封装为通信包(Cmd_NUSBPacket结构),发送给NUSB中控***。
(2)NUSB中控***接收上位机发送来的喷印作业包,去掉包封装、解析包头,分发喷印作业到相应的喷印控制板卡,具体描述如下:
NUSB中控***接收上位机发送来的封装点火数据或方案指令帧的通信包(Cmd_NUSBPacket结构),由包头中PacketType项是否为″X-USB″,确认其所载的帧类为:喷印点火数据帧、计划方案指令帧或临时方案指令帧,按包中USBNo项指定的USB号,把包中所载的帧分发给连接到USB的喷头控制板卡,C++语言描述如下:
喷头控制板卡收到NUSB中控***发来的帧时,根据帧中的KJCmd项值判断帧的类型,如果是喷印点火数据帧,则依先后顺序送到喷头控制板卡内存中的数据内存区缓存,如果是计划方案指令帧,则把计划方案指令帧数据送到喷头控制板卡内存中的计划指令内存区缓存,如果是临时方案指令帧,则把临时方案指令帧数据送到喷头控制板卡内存中的临时指令内存区缓存。
(3)喷头控制板卡在外部喷印触发脉冲的触发下,解析执行喷印作业,如图5所示,具体过程描述如下:
当喷印物件的前缘到达而触发光电传感器时,光电传感器发出的脉冲激发影像采集装置的相机进行定位拍照,相机拍照快门关闭时刻,相机的I/O口输出端输出一个拍照完成脉冲信号,所述的拍照完成脉冲信号作为喷印开始的基准信号,通过硬件直连分发到所有的喷头控制板卡的喷印触发脉冲输入端。
当喷头控制板卡的喷印触发脉冲输入端收到一次喷印开始的脉冲信息时,计时器归零,开始计时,并首先从临时方案内存区取任务指令数据,如果临时方案内存区为空,再从计划方案内存区取方案指令数据(Jet_ScheduleStruct结构),然后依次循环解析执行方案指令中的任务项(Jet_SectionTask结构):根据指令数据中指明的图形区域开始坐标(Start_X,Start_Y),到喷头控制板卡内存的数据区中从Start_Y行处开始,依次逐行(Jet_DataStruct结构)取行喷印点火数据,把每行中从Start_X点开始的喷头孔位宽度相当的点火数据送入喷头内部的点火数据区,等待点火,并取出喷印点火数据帧的点火时间戳JetTime项值,加上从DSP定位圆影像处理电路与FPGA主控电路部分的共享内存区中取到喷印件偏移的时间换算值,作为喷印点火时间t,循环比较点火时间t与计时器计时时间,如果计时器计时时间>=喷印点火时间,立刻进行点火,完成一行喷印,接着把下一行送入喷头内部的点火数据区,重复上述过程,直到所有行喷印完成。
综上所述,所述的多喷头阵列式喷印设备的数据传输及控制方法,其特征之一是采用点火时间戳+硬件影像定位纠偏的方式进行精准喷印控制,喷头阵列的所有喷头的喷印时间有一个相同的0时间基准,点火喷印计时的0时间基准:喷印件到达喷印开始触发点,喷印件触发精密光电触发器时,光电触发器输出脉冲触发相机拍照,相机快门关闭时刻相机I/O接口的输出端面输出一个脉冲,通过硬件分接分发脉冲到所有的喷头控制板卡喷印触发脉冲输入端,喷头控制板卡收到触发脉冲,进行计时归零,此时刻作为点火喷印计时的0时间基准。一帧喷印点火数据帧含有一行的点火数据,喷印点火数据帧具有点火时间戳项,点火时间戳项指明此行数据的点火喷印的标准时刻,一方面,喷头控制板卡把喷印点火数据帧的点火数据送入喷头内部的点火数据区等待;另一方面,从同一喷印点火数据帧取到点火时间戳项值,加上从DSP定位圆影像处理电路与FPGA主控电路部分的共享内存区中取到喷印件偏移的时间换算值,作为喷印点火时间t,点火喷印时间到达,立刻点火喷印。
本发明专利设计的有益效果是:
1.采用上位机、NUSB中控***、喷头控制板卡阵列三层硬件结构,把喷印作业用点火喷印数据和喷印方案指令来描述、管理,增加了喷印作业的灵活性,喷印作业下发到喷头控制板卡上保存、解析执行,上位机可以脱离设备或关机,不会影响设备对喷印作业的执行,保证了设备运行的简洁性和稳定性。
2.采用点火时间戳+硬件影像定位纠偏的方式,喷头阵列中多个喷头的点火数据及时间是不一样的,但它们有一个相同的0时间基准,特别是采用相机快门关闭时刻的输出脉冲,通过硬连接进行分发触发,有很强的实时性,绕过了上位机操作***的响应时间误差,再加上影像定位纠偏的补偿,***可以实现精准喷印控制。