很多电子爱好者、初学者在碰到一个半导体器件的时候,需要确认它的型号、功能以及管脚定义,才能够正确使用它。但当你从一块印刷电路板上拆下一个器件,或者从元器件盒中拿出一个器件,除非能够正确辨认出上面的型号,找到对应数据手册文档,否则就需要手工确认它就是是那种类型的三极管、场效应管、晶闸管、二极管、电容、电感等。
当然可以借助手边的万用表进行初步判断,但这费事、费力,而且不容易测量准确。
▲ 不同种类的半导体元器件
近期从网络上 购买了一款GM328A V1.2 电子器件测量模块。功能还挺齐全,除了可以对常用到的电阻、电容、电感测量,而且可以快速判断常见到的半导体器件的型号和部分参数。
本以为实现这个功能,模块上需要集成很多复杂电路来完成。但观察这个模块,除了必要的接口、LCD之外,核心的就是一片ATMEGA328单片机。因此惊讶于它的功能实现上的简洁明了。
▲ GM328A 模块的正面和反面
在网络上通过GM328A关键词搜索,可以看到这是一个开源的电子项目。在 AVR-Transistortester 中给出了有von Markus Frejek这款设计最初雏形(2009)。后经很多电子爱好者进行更新。Karl-Heinz在2015年通过 TransistorTester with AVR microcontroller and a little more 对总结了他的软件开发工作。特别是对这款基于ATMEGA单片机如何实现三极管等电子器件测量的原理进行的详细的讨论。不仅满足了我们的好奇心,其中所使用的一些基本测量 原理也对测量电子元器件提供了参考方案。
下面将其中主要测试原理进行介绍,详细方案和资料可以参见网络原文。
下面是测量模块和核心电路原理图,市面上销售的不同厂家模块会在此基础和有所增加和修改。
▲ 电路原理图
电路下面关于电源控制部分比较经典。通过晶体管T1,T2,T3完成电路的自动关机,关机后的静态功耗只有20nA(也就是T1的漏电流乘以T3的电流增益)。
电路图右上方给出了用于元器件测试端子TP1, TP2, TP3的连接关系。每一个端口实际上与三个ATMEGA单片机管脚相连。
对于ATMEGA单片机IO口,实际上对于现在大部分的单片机都类似,可以通过软件配置将IO口配置成输入、输出、特殊功能等多种形式。下图显示了ATMEGA单片机典型IO口的等效电路形式。
▲ ATMEGA单片机IO口等效电路
使用端口控制寄存器中的PUD、PORT、DD等控制位,可以设置端口是否为输出,是否接地,接VCC、上拉电阻是否接入等。端口的输入功能(PIN)和ADC转换(只有C端口)不受端口控制位的影响。
由于内部是通过MOS管完成对GND,VCC的连接,所以图中的19欧姆、22欧姆对应MOS管的导通内阻,是一个约数。
下图显示了三个测试端口(以TP2为例)对应的单片机的等效电路。除了对应单片机的端口不同,电路形式和参数都是一样的。
▲ 测试端口等效电路
通过这个电路可以完成对测量端口状态(悬空、接GND、接VCC)的转换,同时接入GND, VCC有三种不同的阻值(直接接入,680Ω,470kΩ),PC端口可以完成对测量点的电压测量。
如果是测量普通的三极管,可以通过配置三个测试端口不同的状态,搭建三极管的共射、共基、共集等形式的放大电路,从而可以测量三极管的电流放大倍数、基极导通电压等参数。
下面给出了分别测量NPN型三极管、PNP型三极管、N-JFET场效应管的等效电路图。通过测量晶体管三个电极的不同电位,再根据连入的电阻(680,470k)可以分别测量出三极管的基极、集电极、发射极的电流。由此,可以获得三极管电流放大倍数参数,JFET导通电压等参数。
在原文中还给出了如何将三极管与晶闸管(Thyristor)、双向导通晶闸管(TRIAC)如何进行区分的判断标准。
▲ 测量NPN型三极管电流放大倍数电路
▲ 测量PNP型三极管电路
▲ 测量N-JFET三极管电路
由于三极管种类型号众多,通过ATMEGA单片机软件,按照一定流程分别对三个测试点的模式进行切换,逐步来确定待测三极管的正确种类、正确的管脚顺序。然后在按照所组成的电路完成性能的测量。
下图给出了软件判断的简化流程图。
▲ 测量判断流程
在前面的判断流程图中,可以分别出连接器件为单向导通的两端器件。这可以通过判断该器件与680Ω和470k欧姆串联后,正反方向电流的变化来确认。
电路可以测量出二极管的正向导通电压,反向漏电流以及反向结电容的大小。
测量反向阶电容所使用的方法和后面测量电容的方法相同。
对于低阻电阻(小于20kΩ),使用680Ω已知电阻与待测电阻进行串联,通过测量分压比可以获得待测电阻的阻值。同样,对于高阻电阻(大于20kΩ),则使用470kΩ进行串联分压。
下面给出了测量的端口配置电路图。
▲ 测量电阻形式1
测量电容是通过对电容进行充放电来实现的。对于大容量电容,则采用固定充电时间,检测充电电压来计算。对于小容量电容,则通过测量电容充放电时间来完成测量。
▲ 测量电容进行充放电
▲ 对电容进行充放电的波形
▲ 通过比较器来测量低容量电容
▲ 对于22uF电容进行充电和放电
对于小容量电容,还可以通过比较充电过冲电压来测量电容等效串联电阻,进而可以计算出电容的品质因数等参数。
对于电感的测量则是通过测量电感上电压上升时间来完成。下图给出了利用内部的比较器来测量电压变化时间的配置框图。
▲ 利用比较器来测量电感
通过上面的简单介绍,可以看出这款基于ATMEGA的IO端口特性所设计的测量电路具有很大的灵活性。这个开源的项目,经由不同的爱好者的加入,它的功能逐步也丰富起来。
除了测量普通的器件,利用单片机多余的端口,还开发出测量电压信号,测量频率值,产生PWM脉冲,产生单个脉冲,模块进行自检等辅助功能。
通过阅览Karl-Heinz总结的文献,不仅让我们看到他的精巧电路设计思路,同时也有他们进行测试的数据分析,领略了这种硬件和软件相结合后所产生的无穷的魅力。
-- 伏尔泰