APP下载

基于双路线阵CCD的自动电子数粒机

2012-12-07隋修武齐晓光李大鹏

传感器与微系统 2012年5期
关键词:药片计数驱动

隋修武,齐晓光,李大鹏

(天津工业大学机械工程学院天津市现代机电装备技术重点实验室,天津300387)

0 引言

随着“后GMP时代”的来临,对医药包装机械的可说明性、可追踪性、在线检测、在线清洗、全线监控和自动化程度等方面的要求愈来愈高,有效提高制药企业瓶包装产品的包装质量和计数精度是至关重要的[1],在瓶装联动设备中数粒机是整个生产线的关键。

按照工作原理的不同,传统的机械数粒机的数粒速度可达到200粒/min,自动化水平较低,通用性较差。目前高端电子数粒瓶装机市场,以光电检测技术数粒为主,基本被以美国的DT包装集团、荷兰CREMER公司、瑞士ROMACO公司三家为主的进口产品占有[1,2],价格十分昂贵。国产的设备在运行速度、精度、稳定性等方面还有待进一步的技术完善。

采用CCD技术进行电子数粒,与传统的红外光电接收管发射管作为传感器相比,具有更高的分辨率。本文设计了基于双路线阵CCD电子数粒机,可以在数粒的同时检测出药粒的大小,有效剔除残片,识别出重叠的药片,提高药品包装质量和计数精度。

1 电子数粒机总体结构

图1是药品灌装生产线的基本结构与原理。

振动给料盘在控制系统的作用下,按给定的频率和幅度振动,保证药粒持续稳定的落下,当药粒经过检测通道时,对光源所发出的光起到阻挡作用,引起成像系统接收到的光强的变化,数据采集系统根据所得到的光强变化规律,确定检测通道中通过的药片的大小和数量,进行数粒。当计数达到设定值时,启动挡粒机构,将药粒的下落通道关闭,同时,驱动送瓶机构,将装满的药瓶送走,下一个空瓶送到位,再打开挡粒机构,开始下一瓶灌装。如果检测结果发现灌装中有残片,则启动剔除机构,将此瓶剔除。

在图1中,成像系统和数据采集系统是基于双路线阵的CCD的电子数粒机的主要组成部分,电子数粒机的总体结构如图2所示。

图1 药品灌装生产线的基本结构与原理Fig 1 Basic structure and principle of the medicine pill packaging line

图2 电子数粒机的总体结构Fig 2 The structure of the Electronic Granulation Counter

在成像系统中照明光源采用LED冷光源,由恒压源供电,使光源发出稳定、均匀的光,光源发出的光由机械装置的狭缝进入到检测光路,通过镜头到达线阵CCD的像敏面上,整个药片的下落通道均有遮光装置,可以有效地避免环境中杂散光的影响。当下落通道中有药片存在时,在CCD感光器上检测到光强的变化,线阵CCD在驱动器的驱动下完成光电转换,将光强信号转换成模拟量的电压信号串行输出,经数据采集系统进行高速A/D转换后,形成数字信号,由高速SRAM进行数据缓存,再由USB接口送入主控计算机,计算机中采用Visual C++.net编写了数据采集与处理程序,完成数字滤波、软件二值化、计数等功能。

2 成像系统设计

2.1 检测光路设计

通过稳压电源驱动LED线光源作为照明光源,光路设计如图3所示。

在检测光路中,成像面上的CCD选用日本东芝公司生产的线性CCD 芯片 TCD1209D[3],其像素为2048,像元尺寸为14μm×14μm,成像长度为L=2048×0.014=28.7 mm。

实际设计的检测通道的空间宽度为400 mm,由于药器包装机的空间结构的限制,物距不能过大,而由于镜头视角的限制,用单个CCD不能完成整个视场的监测,为此,采用双线性CCD同步扫描的方式。

对 CCD 而言,水平视场为FoV=200 mm,放大率[3,4]

图3 数粒机的检测光路(俯视)Fig 3 The detecting light path of the electronic granulation counter

其中,u为物距,即为工作距离w;v为像距,即为镜头到CCD的距离。设计的像距为21 mm,故工作距离

由此可以计算出镜头焦距

2.2 线阵CCD及其驱动

线性CCD采用日本东芝公司生产的TCD1209D,该芯片性价比高,使用方便,除了要提供电源外,芯片正常工作还需要5路驱动信号:时钟脉冲Φ1,Φ2(Φ2b),转移脉冲SH、复位脉冲RS和钳位脉冲CP。各驱动脉冲必须严格满足时序要求[5]才能保证高速CCD芯片TCD1209D的正常工作,其时序的相位关系如图4所示。

图4 CCD时序相位关系Fig 4 Relation between time sequence and phase of the CCD

采用CPLD为线阵 CCD 提供时序驱动电路[5,6],CPLD选用为Altera公司生产的MAX II系列芯片EPM 3064A,其核心电压3.3 V,在QUARTUSII环境下,采用原理图的方式编程,其驱动电路原理如图5。

图5 基于CPLD的TCD1209D的驱动电路Fig 5 TCD 1209D driving circuit based on CPLD

图5中,phi模块为实现Φ1和Φ2的生成提供初始信号,此模块对晶振80 MHz晶振进行2分频,得到40 MHz的工作频率clk。sh模块用来产生SH信号,以phi的上升沿作为响应信号,并对phi进行计数,保证1个SH周期至少包含2088个Φ1脉冲,并包含至少1个Φ1周期的高电平。phish模块的功能是对phi的“非”进行计数,维持2087个phi周期的低电平后,产生维持3个phi周期的高电平。这个模块与phi的“非”进行“或”运算以后,产生了最终的Φ1和Φ2;rscp模块为产生RS和CP的模块,对clk进行占空比为1∶3的4分频,在Φ1的高电平期间,RS和CP相继产生高电平,可通过计数来产生,当SH为高电平的时候,满足RS,CP为低电平;sample模块产生与phi信号有一个clk周期的相位差的信号,利用其上升沿对输出OS信号进行采样。

3 数据采集系统

3.1 数据采集卡

由于CCD芯片TCD1209D输出的是高速模拟信号,需要进行高速A/D转换才能进入计算机[7],而由于药粒的存在引起光强的变化比较明显,作为后续数据的软件二值化处理的基础,A/D转换精度要求不是很高,为此,选用A/D转换器TLC5510。TLC5510是美国TI公司生产的新型模数转换器件,它是一种采用CMOS工艺制造的8位高阻抗A/D芯片,能提供的采样率可达20 MSPS。

以TLC5510为核心,开发了数据采集卡,数据采集卡的原理功能框图如图6所示。

核心时序模块采用ALTERA MAX系列的EPM7128型CPLD来实现,在CCD的行同步信号和像同步信号的控制下,控制信号启动A/D转换器,并将A/D转换结果存于缓存器中,缓存器采用 ALLIANCE公司的 AS7C256—15JC,再由控制时序模块控制接口模块,通过USB接口总线与主控计算机完成数据交换,USB2.0微控制器接口采用CYC68013—100AXC。

图6 数据采集卡的原理功能框图Fig 6 Principle function block diagram of the DAQ board

3.2 主机软件设计

3.2.1 程序结构

采用Visual C++.net进行了数据采集的软件设计,完成数字滤波、软件二值化、边缘提取、计数以及参数输入与显示等功能。程序流程如图7所示。

图7 程序流程Fig 7 Flow chart of program

3.2.2 软件滤波

在药片包装现场,存在来自环境的光强干扰、电磁干扰等各种干扰,为了滤掉这些干扰信号,除了在电路中设计了滤波电路外,在软件中采用数字滤波的方式。

采用滑动平均滤波法,考虑到CCD的水平分辨率为0.1 mm,而有效药片的宽度均在几个毫米以上,故将滤波长度取为16,即连续取16个采样值看成一个队列,每次采样到一个新数据放入队尾,并去掉原来队首的一个数据(先进先出原则),再把队列中的16个数据进行算术平均运算,获得了好的滤波结果。这种方法对于周期性干扰(如日光灯的干扰等)有良好的抑制作用,平滑度高,速度快。

3.2.3 灰度的二值化

常用的二值化方法有硬件电路二值化和软件二值化[8],硬件电路二值化的阈值调整需要通过调整可调电位器来实现[9],在实际应用过程中,针对不同的药片,由于其透光度不同,需采用不同的二值化阈值,对于一般用户而言,调节电路参数比较复杂,需要很多的电路调整经验,而采用软件二值化的方法,可以很方便地在计算机上进行参数修改,不需要专业的知识。

3.2.4 药粒识别

二值化后,即可根据灰度值的突变进行图像的边缘提取[10],进行药片识别与计数。

药粒从h=10cm高处落下,落至CCD处时的速度用公式

计算出时间 t=0.143 s,药粒下落速度 v=1.4 m/s。

计算药片在CCD线扫描周期间落下的距离

式中 f为线扫描频率,因为CCD像素点扫描频率为10 MHz,一共 2048 个像素点[9],f=10/2048 MHz。

计算得到 Δh=0.289 mm,由此可确定一个药粒经过CCD时被横向扫描的次数。例如:如果一个直径为10 mm的药粒落下,它可被扫描到的次数最多可达34次。药片的下落通道水平方向长度400 mm,由于采用了双CCD,每个CCD的水平扫描长度200mm,CCD含2048个像素单元,所以,得到的横向分辨力可达200/2048=0.1 mm。这样高的分辨率可以很好地检测到碎药粒,以便驱动剔除装置将之剔除;同时,可分辨出药粒下落过程中经过CCD扫描线时的形状变化,从而能够识别2个或多个药粒重叠的情况,从而计数更加准确,精度更高。

4 实验

在某医药机械厂用直径10 mm的药粒作为被测样品,对电子数粒机进行了整机实验,图8给出了双CCD中的第一个CCD采集到的未经二值化处理的数据波形。

根据药粒的透明程度,此种药片的二值化的阈值可以设置为50,则经过二值化处理后即可得到方波脉冲信号,从图中可以看出:这组数据中连续的一串低电平将会出现在512-614之间,药粒的宽度近似为9.96mm,在实验中将整个药片的下落通道分为16个子通道,该药粒处于的子通道号为3。

图8 药粒落下波形Fig 8 Waveform of the pill falling

将数粒机进行了1 h的计数实验,计数速度可达8000粒/min,可以有效地识别0.3 mm的残片,计数准确可靠。

5 结论

采用双路线阵CCD芯片TCD1209D作为敏感元件设计的电子数粒机配以高速的A/D转换器TLC5510,进行同步数据采集,可以实现高速数粒,对药粒的水平分辨率为0.1 mm,垂直分辨率为0.3 mm,采用软件二值化方法实现了对透光性不同的药粒的识别,与传统的机械式数粒机和光电管式数粒机相比,具有更高的分辨率,能够识别残片和重叠药片,具有更高的计数精度,必将拥有十分广阔的应用前景。

[1]丁维扬,冯首春.药品颗粒数粒技术发展及应用[J].机电工程技术,2006,35(4):80-82.

[2]廉 鲁.美国医药包装工业现状及我国的差距[J].中国包装工程,2005,26(3):15-16.

[3]王庆有.CCD应用技术[M].天津:天津大学出版社,2000.

[4]He F J,Zhang R J,Du Z J,et al.Non contact measurement of damaged external tapered thread based on linear array CCD[J].Journal of Physics,2006,48:676-680.

[5]项大鹏,杨 江,杨 建.基于CPLD的线阵CCD驱动时序电路设计[J].大地测量与地球动力学,2010,30(2):123-125.

[6]梁忠望,曾 云,江晓山.高速线阵CCD数据采集电路的设计与研究[J].核电子学与探测技术,2010,33(5):661-665.

[7]窦建华,王 英,李长凯,等.基于CPLD和DSP的线阵CCD数据采集系统设计[J].合肥工业大学学报,2010,33(5):690-693.

[8]刘 艳,赵 洪,于效宇,等.一种可调线阵 CCD信号采集处理系统[J].半导体光电,2009,30(2):294-299.

[9]Fischer J,Radil T.DSP-based measuring line scan CCD camera[J].Technology and Applications,2003,9:345-348.

[10]Yang N,Yang X Y,Wu B,et al,Measure and control technology based on DSP for high precision scanning motor[J].Journal of Physics,2006,48:269-273.

猜你喜欢

药片计数驱动
基于模糊PI控制的驱动防滑仿真系统分析
古人计数
屈宏斌:未来五年,双轮驱动,砥砺前行
救命药片
递归计数的六种方式
古代的计数方法
轨旁ATC系统门控柜接收/驱动板改造
药片洗头有奇效
药片颜色谁决定
药片颜色谁决定