1.3 电子设计基础

Arduino电路离不开各种电子元件,本节介绍电路和电子元件的一些基本知识。

图1-1是一个简单的开关控制电路。电流的起点称为“电源”,电流经过开关流入灯泡,在灯泡上做功发热,再流回电源。所以一个可运行、可靠和可控的电路必须遵循的基本原则是:有电源、开关和负载(如灯泡),用导线串联起来,形成从电源正极到负极的电路。

图1-1 简单的开关控制电路

1.3.1 电源和USB数据线

电源是向电子设备提供能源的装置,也称为电源供应器,它提供计算机中所有部件所需要的电能。电源功率的大小以及电流和电压是否稳定,将直接影响计算机的工作性能和使用寿命。

电源的大小用电压(Voltage)表示,电压在国际单位制中的主单位为伏特(V,简称伏),常用的单位还有毫伏(mV)、微伏(μV)和千伏(kV)等。

电源分直流电(Direct Current,DC)和交流电(Alternating Current,AC)。小型用电设备一般由直流电源供电。电池(Battery)是一种具有稳定电压和电流的,长时间稳定供电的直流电源。电池种类很多,常用的有碱性干电池、锂电池等,电池电压有1.5V、3.7V、5V和9V等,通过组合电池可以提供12V以上的电压。计算机电源是一种将交流电转换为+5V、-5V、+12V、-12V和+3.3V等稳定的直流电的变压器开关电源。如果Arduino或元器件采用5V(无特殊说明均为+5V)电压供电,可用图1-2表示其电路原理图。

VCC(Volt Current Condenser)代表电路的供电电压,即电源的正极,也可以直接标注其电压值,如5V。GND(地,Ground)代表地线或电源负极,就是公共地的意思,但这个地并不是真正意义上的大地,是相对的一个地,它与大地是不同的。

如果考虑整体供电,或者其他需要独立供电的模块,比如电机驱动模块等,外部模块需要与Arduino板共地,即Arduino板的电源地与外部模块的电源地需连接在一起,用同一个参考地。这一点初学者需要特别注意。

Arduino板最简单的供电方式是通过一根USB数据线进行供电,供电的同时USB数据线还负责程序下载和数据通信。USB数据线有多种长度可供选择,常用的有30cm、50cm和150cm等,一般短线的稳定性要好于长线。USB数据线实物如图1-3所示。

图1-2 5V直流电压供电的电路原理图

图1-3 USB数据线实物图

1.3.2 电路中信号的分类

电子线路中的电信号可以分为模拟信号和数字信号两大类。在数值和时间上都连续变化的信号,称为模拟信号,例如随声音、温度、压力、湿度、速度、流量等物理量连续变化的电压或电流。在数值和时间上不连续变化的信号,称为数字信号,例如只有高、低电平跳变的矩形脉冲信号。这两类信号在处理方法上各有不同。处理模拟信号的电路称为模拟电路,如放大电路。处理数字信号的电路,称为数字电路,如脉冲信号的产生、整形等数字电路。

1.3.3 常用元件简介

1.电阻器

电阻器(Resistor),都有一定的阻值,它代表电阻对电流阻挡力的大小。电阻的单位是欧姆(Ω,简称欧),标记为R。除了欧姆外,电阻的单位还有千欧(kΩ)、兆欧(MΩ)等,以千进位换算。电阻器符号及实物如图1-4所示。

电阻器的电气性能指标通常有标称电阻值、误差和额定功率等。电阻器与其他元件一起构成一些功能电路,如限流、分压电路等。电阻器是一个线性元件,在一定条件下,流经一个电阻器的电流(I)与电阻器两端的电压(U)成正比,即它符合欧姆定律:I=U/R

图1-4 电阻器符号及实物图

电阻器有很多种类,有可调电阻器(电位器)、热敏电阻器、光敏电阻器和压敏电阻器等。很多传感器都可以通过测量其电阻值体现其物理量值,如测量光强的光敏电阻器,其特点是电阻值与光照强度变化程度呈比例关系。

2.电容器

电容器(Capacitor),顾名思义,是“装电的容器”,是一种容纳电荷的器件。所带电荷量Q与电容器两极间的电压U的比值,称为电容器的电容。在国际单位制里,电容的单位是法拉(F,简称法),标记为C。由于法拉这个单位太大,所以常用的电容单位有毫法(mF)、微法(μF)、纳法(nF)和皮法(pF)等,以千进位换算。图1-5所示的是电容器符号及实物。

电容器是储能元件,它具有充放电特性和阻止直流电流通过、允许交流电流通过的性能。在实际电路中电容器有很多用途,例如,用在滤波电路中的电容器称为滤波电容器,滤波电容器将一定频段内的信号过滤掉;用在积分电路中的电容器称为积分电容器;用在微分电路中的电容器称为微分电容器。

3.电感器

电感器(Inductor),是能够把电能转化为磁能存储起来的元件。电感器是由导线绕制而成的线圈,具有一定的自感系数,称为电感,电感的单位是亨利(H,简称亨),标记为L。电感也常用毫亨(mH)或微亨(μH)为单位,以千进位换算。图1-6是电感器符号及实物图。

图1-5 电容器符号及实物图

图1-6 电感器符号及实物图

电感器对交变电流有阻碍作用,其阻碍大小用感抗(XL)表示,单位用欧姆表示。感抗与交变电流的频率f的关系如下。

XL=2πfL

电感量表示线圈本身的固有特性,与电流大小无关。电感器在电路中主要起到滤波、振荡、延迟等作用,常用于筛选信号、过滤噪声、稳定电流及抑制电磁波干扰。

4.二极管

二极管(Diode)是最常用的电子元件之一。它由两个电极组成,一个称为阳极,另一个称为阴极。二极管的特点是正向导通,即当阳极接电源正极,阴极接电源负极时,施加在其上的电压称为正向电压,二极管导通;反之二极管则处于截止状态。

二极管一般标记为D,常用在整流、稳压、恒流、开关、发光及光电转换等电路中。二极管符号及实物如图1-7所示。

发光二极管(LED灯)是半导体二极管的一种,可以把电能转化成光能。常用作信号指示灯、文字或数字显示等。发光二极管与普通二极管一样,也具有单向导电性。当给发光二极管加上正向电压后,会产生自发辐射的荧光。发光二极管用的材料不同,发光颜色就不同。发光二极管符号及实物如图1-8所示。发光二极管的两个引脚中较长的是阳极,较短的是阴极。

图1-7 二极管符号及实物图

发光二极管的导通电压一般在1V左右,导通电流一般为10mA。如果施加的正向电压超过导通电压,发光二极管电流会急剧上升直到损坏。在应用中需要在发光二极管电路中串联一个限流电阻器来保证其正常工作。电阻器阻值根据施加电压和发光二极管导通电压计算,计算公式如下。

R=(EUE)/IF

其中,E是施加的电压,UE是导通电压,IF是导通电流。如果施加的电压是5V,UE取1V,IF取10mA,R计算值则是400Ω,实际采用1kΩ也能满足发光要求。

5.晶体管

晶体管全称为半导体晶体管,也称双极型晶体管、晶体三极管,是常用的电子元件之一。晶体管是一种控制电流的半导体器件,其作用是把微弱的电信号放大成幅度值较大的电信号,可用作无触点开关。

晶体管按内部结构分为NPN型和PNP型两种。晶体管一般标记为Q,图1-9(A)和图1-9(B)是晶体管的图形符号。

图1-8 发光二极管符号及实物图

图1-9 晶体管的图形符号

晶体管有三个极,即B是基极,E是发射极,C是集电极。晶体管具有放大作用,通过控制基级电流Ib可改变集电极到发射极的电流IceIce=β Ibβ是晶体管的放大倍数。发射极的箭头代表电流方向。

晶体管实物如图1-10所示,在数字电路中晶体管常用作驱动开关,控制大功率电器供电。如图1-11所示,如果采用NPN型晶体管,在基极与发射极之间施加正向电压(高电平),晶体管E、C之间导通,相当于开关闭合,晶体管导通后,灯泡上有电流通过,电灯发光,加在灯泡上的电压要高于输入控制信号。而如果采用PNP型晶体管,需要在基极与发射极之间施加反向电压(低电平),晶体管才能导通。

图1-10 晶体管实物图

图1-11 晶体管放大驱动电路图

1.3.4 万用表

万用表按显示方式分为指针万用表和数字万用表。万用表是一种多功能、多量程的测量仪表,一般万用表可测量直流电流、直流电压、交流电流、交流电压和电阻等,有的还可以测量电容量、电感量及半导体的一些参数(如β)等。数字万用表的测量值由液晶显示屏直接以数字形式显示,读取方便,是目前广泛使用的测量仪表,实物如图1-12所示。

万用表的选择开关是一个多挡位的旋转开关,用来选择测量的项目和量程。常用的万用表测量项目包括以下几,个“mA”,即直流电流;“V(—)”,即直流电压;“V(~)”,即交流电压;“Ω”,即电阻。每个测量项目又划分为几个不同的量程以供选择。

常用数字万用表有2个绝缘探针表笔和4个测量插孔,表笔分为红、黑两种。测量时将黑色表笔插入标有“COM”的插孔,测量电压和电阻时将红色表笔插入标有“VΩ”的插孔,测量电流时根据测量的大小将红色表笔插入标有“mA/μA”或“10A”的插孔。

图1-12 数字万用表实物图

测量电阻或电压时,将两个表笔并联在被测元件两边,测量电流时将两个表笔串联到被测回路中,测量时要注意极性。万用表量程的选择很重要,如果选择不正确,可能导致万用表保险丝烧断或测量不准确。例如不能用电流挡位测量电压,不能用小挡位测量大信号。而用大挡位测量小信号时,结果的精度将受影响。

1.3.5 杜邦线

杜邦线是一种连接导线,可用于扩展实验板的引脚、增加实验项目等。通过杜邦线,可以快速地把各种模块与Arduino引脚连接在一起,无须焊接就可进行电路实验。

杜邦线接头有两种形式:插针和插孔。根据不同用途接头有3种组合形式:两头都是插孔,两头都是插针,一头插针一头插孔。杜邦线有很多种颜色,连线时可用来区分不同信号。Arduino引脚是标准的0.01英寸(1英寸≈2.54厘米)间距,各种模块引脚也基本都是标准间距,市场上供应商用标准排线为杜邦线,有多种长度可供选择,如图1-13所示。杜邦线可以重复使用,完成实验后把杜邦线拆卸下来可供下次使用。

图1-13 杜邦线实物图

1.3.6 面包板

面包板是用于搭建电路的基础元件之一。面包板上有很多小插孔,是专为电子电路的无焊接实验设计制造的。各种电子元件可根据需要随意插入或拔出,不用焊接,节省了电路的组装时间,而且元件可以重复使用,所以非常适合电子电路实验的组装、调试和训练。

图1-14 面包板实物图

面包板整板使用热固性酚醛树脂制造,款式有很多种,大小各异,基本原理相同。图1-14所示的面包板以中间的长凹槽为界分成上、下两部分,每一部分中的每一列有5个插孔,同一竖列的5个插孔被一条金属簧片连接,但不同竖列的方孔之间是绝缘的。元器件插入孔中时能够与金属条接触,从而达到导电目的。横排上的器件要连通的话,需要用杜邦线连接。板子上下两侧各有两排插孔,也是5个一组,一般用来给板子上的元件提供电源。

1.3.7 Arduino扩展板

Arduino扩展板也被称为传感器扩展板,可以堆叠接插到Arduino板上,进而实现特定功能的扩展。在面包板上接插元件固然方便,但需要有一定的电子知识来搭建各种电路。而使用传感器扩展板可以一定程度地简化电路搭建过程,更快速地搭建出自己的项目。使用传感器扩展板,只需要通过连接线把各种模块接插到Arduino板上即可,例如使用网络扩展板可以使Arduino具有网络通信功能。

传感器扩展板种类很多,我们可以按需要购买或自行设计,其扩展原理基本相同。传感器扩展板并不会增加I/O口的数量,但有方便插入传感器的接口,方便连接多个传感器。每个传感器模块都需要电源供电,Arduino板上电源插孔少,不能满足多个模块电源引脚的连接,而传感器扩展板可给每个I/O接口都配上电源。图1-15(A)所示的是Arduino UNO扩展板,图1-15(B)所示的是官网上的LCD Keypad Shield扩展板,它除了扩展了按键和液晶显示外,还引出了少部分I/O接口,图1-15(C)所示的Arduino Mega 2560(简称Mega 2560)传感器扩展板是自行设计的,每个数字引脚和模拟输入引脚采用“3P”设计,用“S”表示信号引脚,用“V”表示VCC,用“G”表示GND。

图1-15 传感器扩展板

另外,Arduino Mega 2560扩展板上设计了外接5V电源的接线端子,可以给传感器提供大电流的电源。通过跳线,可以选择由Arduino板供电或外部供电。常用总线和专用接口也进行了扩展设计,如I2C总线、SPI和异步串行接口等。Arduino Mega 2560扩展板还扩展了专用模块接口,如XBee模块接口、语音模块接口等。

1.3.8 模块

用Arduino完成各种制作和实验,需要多种有特殊功能的传感器、驱动电路及人机交互器件等组成的模块。从应用角度说,可以不用了解这些电子器件模块的原理,只要按要求将这些模块用杜邦线与Arduino的接口引脚连接,就能完成应用系统的硬件制作。

大多数模块与Arduino通过数字量接口或模拟量接口连接。简单的模块只有3个信号线,即电源线正极、电源线负极和信号线。采用串行方式进行通信的模块主要有3种协议:SPI、I2C和UART。只要掌握这3种协议的使用方法就可以很容易使用各种模块。下面列出了几种常用的传感器或模块及采用的协议。

(1)DS18B20温度传感器(单总线)。

(2)直流电机驱动模块(模拟I/O)。

(3)光敏电阻采集模块(模拟I/O)。

(4)nRF24L01无线通信模块(SPI)。

(5)PCF85631日历时钟模块(I2C)。

(6)蓝牙模块(UART)。