李 程,韩震宇,邹龙飞
(四川大学,四川成都 610065)
基于ATmega16的多路LED光源控制器
李 程,韩震宇,邹龙飞
(四川大学,四川成都 610065)
为了控制半导体外观缺陷在线检测系统中的照明光源,介绍了一种以ATmega16单片机为核心,使用恒流方式控制LED照明光源的多路LED光源控制器。叙述了光源控制器的总体设计方案、主要硬件电路、软件流程框图。实验结果表明该光源控制器拥有良好的调节光源亮度以及保持光源亮度的性能。
单片机;D/A转换;恒流源;光源控制器
在半导体生产行业中,由于其产品的复杂性和小型化以及生产过程的高速化,如果使用人工视觉对生产线上的产品进行在线检测显然是难以满足要求的。相比人工视觉检测,机器视觉检测系统具有精确性、可重复性、高速性和客观性等特点,因此,机器视觉检测系统被广泛地应用于半导体产品质量检测。一个典型的机器视觉系统主要包括照明光源、镜头、工业相机、图像采集/处理卡、图像处理软件以及其他外部设备。照明光源虽然是辅助成像器件,但是它对成像质量的好坏往往能起到至关重要的作用。光源控制器的作用是给照明光源供电,调节照明光源的亮度并且使照明光源始终保持该亮度,保证在长时间采集图像的情况下,图像的质量不会因为光源亮度的变化而出现波动。本系统采用恒流方式驱动LED照明光源,通过控制流过照明光源的电流,使其保持恒定,来保证照明光源亮度的稳定。
使用光源控制器的最主要目的是调节照明光源的亮度并且使亮度保持稳定。希望通过PC来调节照明光源的亮度,因此,采用RS232串口来实现PC机与光源控制器的控制核心ATmega16之间的通信。系统工作过程如下:PC机向光源控制器发送控制命令,单片机接收到正确的控制命令之后对该命令做出响应,使用SPI通信向数模转换器发送数据,改变数模转换器输出到恒流电路的基准电压,最终通过恒流电路达到调节照明光源亮度并且保持亮度的目的。在需要的情况下,还可以通过外部触发信号点亮或熄灭照明光源,满足多光源照明时各照明光源之间的配合要求。
系统主要原理框图如图1所示。
2.1 单片机选型
该光源控制器选用AVR系列中高档单片机ATmega16作为控制核心。ATmega16是ATMEL公司生产的一款基于增强的AVR RISC结构的高性能、低功耗8位微处理器,采用了Harvard结构,具有独立的数据和程序总线[1]。程序存储器里的指令通过一级流水线运行,CPU在执行一条指令的同时读取下一条指令,实现了指令的单时钟周期运行。ATmega16具有16 k字节的系统内可编程Flash,512字节的EEPROM,1 k字节的片内SRAM,串行通讯设备USART,串行外设接口SPI,32个可编程的I/O口,独立片内振荡器的可编程看门狗定时器以及支持扩展的片内调试及程序下载的JTAG接口。
图1 系统原理框图
2.2 恒流电路
前面提到过,在对LED照明光源的控制过程中,需要保证照明光源亮度的稳定,这样每一次采集的图像质量才能有保证。单纯采用恒定电压供电也可以驱动LED照明光源,但是生产线上的照明光源连续工作时间很长,在长时间工作的情况下,很难保证照明光源的工作电流不发生变化。一旦光源的电流发生变化,其照明亮度也就随之产生变化,这样就会影响采集图像的质量。所以,采用恒流[2]的方式驱动LED照明光源。
恒流电路图如图2所示。
图2中:
VoA——数模转换器输出的基准电压;
Vf——运算放大器U1负端的反馈电压;
V1——取样电阻R5端取样电压;
R3=R6,R4=R7。
利用运放工作在线性区时的分析依据可以得知[3],当电路处于稳态时:
由以上三式,照明光源电流I可表示为:
由此可见,只要通过控制数模转换器输出基准电压VoA的数值,就可以改变流过照明光源的电流大小,从而达到调节照明光源亮度的目的。当基准电压VoA保持不变时,照明光源的电流也将保持恒定。
2.3 数模转换电路
在实际应用中,需要光源控制器对多个工位的多个照明光源进行控制,因此需要多路输出的数模转换器来满足这个要求,AD7399就是这样一款数模转换器。AD7399[4]是四通道、10位电压输出的模数转换器,采用3~5 V单电源供电或者正负5 V双电源供电,适合单电源或双电源系统应用,具有成本低、易于使用的特点,本次设计中使用两片AD7399,能够产生8路独立的输出电压。其中一个数模转换电路如图3所示。
图2 恒流电路图
其满量程输出电压由外部参考电压Vref决定,Vref的电压范围应在Vss和Vdd之间,四路输出的参考电压可以相互独立。双缓冲串行数据接口使用串行数据输入(SDI)、时钟(CLK)、和片选(CS)三线信号,提供高速、三线、SPI、微控制器兼容输入。由于是两块AD7399,因此片选信号(CS)与装载DAC寄存器数据信号(LDAC)使用独立的单片机引脚而SDI和CLK共用单片机的SPI接口。
图3 数模转换电路
DAC的输出电压,如VoA的计算如下所示:
其中,D是DAC的输入数据,其变化范围在0到1 023之间,步长为1。那么,式(4)中,电流值I的表达式可以写成如下形式:
本系统选用AVR Studio作为软件开发工具。AVR Studio是ATMEL公司的AVR单片机集成环境汇编及开发调试软件,包括AVR assembler编译器、AVR Studio在线调试功能、串并下载功能、JTAG ICE仿真等功能。
本系统能够自动保存各通道的开/关状态及亮度数据,在系统上电时,通过读取EEPROM中的相关数据,自动初始化各通道的状态和亮度,这样就可以在设置过各通道的状态及亮度之后,每次上电不需要再次设定各个通道的状态和亮度,方便用户使用。在调节LED照明光源亮度的时候,可以使用直接调节亮度(粗调)或者亮度自增自减(微调)两种调节方式,将光源亮度调节到合适值。改变照明光源亮度之后,系统将向上位机返回该通道目前的开/关状态以及其亮度数据,以供用户查看,若需要查看所有通道的状态及亮度,可以使用各通道状态及亮度查询命令进行查询。由于本系统对命令的执行依据是从USART接收到的数据帧,为了保证该数据帧的正确,软件设计时不仅对每一字节数据进行校验,还对整个数据帧的帧首、帧尾和帧长度进行检测。系统软件流程图如图4所示。
图4 软件流程图
本系统所控制的LED照明光源额定电流为40 mA,因此电路设计最大输出略大于40 mA。在试验过程中,将参考电压VrefA设为+5 V,分别试验本系统的恒流效果和调节效果。
将恒流电流调节到40 mA,每隔30 min测量一次,取样电阻5.6Ω,测得的数据如表1所示。可见在较长的实验过程中,电流保持恒定不变,因此,所控制的LED照明光源的亮度也会保持不变[5]。
表1 电流稳定性实验数据
改变DAC输入数据D,控制AD7399输出线性变化的基准电压VoA,使通过LED照明光源的电流随之线性变化,达到精确调节照明光源亮度的目的。表2为DAC输入数据与恒流电流值的关系,实际电流值通过测得的取样电阻两端电压值V1与取样电阻阻值R5计算得到。图5为表2中数据做出的折线图,从中可以看到,实际电流线与理论电流线基本重合,实际电流值随着DAC输入数据的增长而线性增大,符合式(6)中电流值I与DAC输入数据D的变化关系。
表2 DAC输入数据与恒流电流值的关系
图5 DAC输入数据与恒流电流值的关系
根据实际的应用需要,本文提出了一种以ATmega16为控制核心,使用恒流方式控制LED照明光源的多路LED光源控制器设计方案,并且制作出的实体已经应用于半导体生产线上的检测系统中。实际使用证明,该光源控制器能够很好的接受半导体外观检测系统的控制,辅助其进行图像采集工作,表现出响应速度快、控制精度高、稳定性好等特点,达到了设计要求,具有较高的实用价值。
[1]Atmel Corporation.ATmega16A[Z].爱特梅尔公司. 2009.
[2]田俊杰,董威,陈静,等.基于场效应管的恒流源设计[J].中国测试,2009,35(1):118-121.
[3]秦曾煌.电工学电子技术[M].北京:高等教育出版社,2004.
[4]孙红霞,李田.具有12位/10位分辨率的四组串行输入DACs芯片AD7398/AD7399[J].国外电子元器件,2002(1):39-41.
[5]田立东,周继军,秦会斌.PWM调光LED驱动器设计[J].机电工程,2012(04):465-468.
The Multichannel LED Light Controller Based on ATmega16
LI Cheng,HAN Zhen-yu,ZOU Long-fei
(Sichuan University,Chengdu610065,China)
In order to control the LED light source of semiconductor appearance defect detection system,this paper introduced a multichannel LED light controller based on ATmega16 microcontroller and using constant current mode to control LED light source.This paper described the design scheme,the main hardware circuits and the software's flowchart.The experimental results showed that the controller has a good performance in light source brightness adjustment and the brightness maintaining.
microcontroller;D/A conversion;constant current source;light controller
TP21
A
1009-9492(2014)02-0040-04
10.3969/j.issn.1009-9492.2014.02.012
李 程,男,1989年生,四川德阳人,硕士研究生。研究领域:机电一体化。
(编辑:向 飞)
2013-08-12