通过Raspberry Pi使用LED和电机:如何处理大电流

这篇文章来源于DevicePlus.com英语网站的翻译稿。

本文最初发布在deviceplus.jp网站上,而后被翻译成英语。

在本系列文章中,主要是通过使用Raspberry Pi创建的简单项目来学习电子设计的原理及基础知识。此次的分享嘉宾是伊藤尚未先生,一位媒体艺术家和作家,以讲解“更深层次的原理”而闻名。上一篇文章中我们谈了LED灯闪烁的原理,接着我们来学习如何通过Raspberry Pi处理稍大的电流以控制电机。

目录

  1. 前言
  2. LED的结构
  3. LED的性能
  • 两种亮度表述方式:坎德拉和流明
  • 色温
  • 广角型和窄角型
  • 适配选型
  1. 尝试通过Raspberry Pi控制电机
  • 大电流的处理方法
  • PWM控制
  1. 结论

1. 简介

在上一篇文章中,我们尝试用Raspberry Pi上的GPIO来点亮LED,由于只要涉及到处理电子元器件,就必须留意流过电子元器件的电流,所以我们用电阻器对流过LED的电流进行了限制。

我们也探讨了可以用欧姆定律来计算。如今市场中的LED琳琅满目,所以需要仔细阅读不同LED的额定参数表和技术规格书。在电路设计过程中,没有比注意电压和电流更重要的了。

电压过高或电流过大均可造成损坏,好不容易设计出来的产品如果因为电压电流问题功亏一篑,实在令人扼腕。

LED using the GPIO on Raspberry Pi

可能会着火甚至爆炸

但是,即使出现这种情况,也不要轻言放弃(我也有这种经历),失败乃成功之母,但也绝不提倡“刻意破坏”作品!除了损坏外,还有可能出现元器件爆炸或过热等情况,可能会使人受伤甚至引起火灾,因此必须格外注意。

言归正传,接下来我们会再稍微详细地探讨一下LED的性能。

2. LED的结构

子弹头LED的内部结构如下图所示:

LED setup

子弹头LED的内部结构

实际发光器件是中间圆盘中的那个小芯片。圆盘就像一个反射器,罩壳顶部设计成透镜形状,方便灯光散射。

部分产品的阳极侧也可能会连接一个圆盘,所以并不能全部通过内部引线框架的形状来确定LED的结构。

3. LED的性能

有两种亮度表述方式:坎德拉和流明。

仔细阅读LED的技术规格书后发现,亮度表述方式有两种,即“cd(坎德拉)”和“lm(流明)”。两者均采用数字的方式表示亮度,即数值越大亮度越高,但各自的含义存在本质区别。

将光源发出的光视作“线”(即光束)时,光源的发光总量用“lm(流明)”来表示。在实际应用中,某些器具因为形状的原因,由于透镜和反射器的作用,光线可能无法向背面散射,而是朝向一个方向发射,将单位立体角的光通量称为光强,用“cd(坎德拉)”表示。

此外,大家可能还知道亮度单位“lx(勒克斯)”,表示光接收表面的亮度(照射在单位面积上的光通量)。基础知识大概就这些。

LED capacity

顺便提一下,这种常见的子弹头LED,由于树脂罩壳内的反射作用,光线多少会从背面漏出来一些。但如在功率LED的背面配置一块铝基板,不仅可用来散热,也能阻挡光从背面漏出来。从具体产品看,会发现功率LED的亮度多用流明(lm)来表述,可能是考虑到这样的产品结构而选用的单位吧。

色温

色温的单位为“K”(开尔文)。比如:在熔炉中敲打铁钉时,铁钉会逐渐变红,并发出红光,这种现象称为“热辐射”;随着温度升高,颜色会变黄。热辐射规定了温度变化引起的颜色变化,并以符号来表示。

特别是白光LED的光线颜色包从含浅白色到橙色的各种颜色,称为灯泡色温,色温值越高,颜色越浅。

广角型和窄角型

也有“半角”等表述方式,角度代表光的扩散范围,具体取决于罩壳透镜和引线框架的结构。例如,亮度相同的LED,如果是窄角型LED,光线中心最亮,其周围突然变暗,而如果是广角型LED,则光线扩散范围较广,而且能一定程度上均匀照亮。

适配选型

现在大家对LED已经有了一定的了解,以后选型时相信大家能够选择适合需求的LED。

例如,对于某些作品来说越亮越好,当然,也需要结合预算;但如果主要用于照明,那么最好选用亮度较高的LED。如果主要用于显示,则选择亮度不高的LED也可以。比如在夜间或光线较暗的地方,如果采用亮度较大的7段LED,则会出现字母显示模糊不清且很难看清数字的情况。

4. 尝试通过Raspberry Pi控制电机

接下来,我们来谈谈Raspberry Pi。

如何使用Raspberry Pi控制LED以外的其他设备?例如,需要的电流比LED电流更大的设备(比方说电机),该如何控制?

说起模型制作用的直流电机,非常有名的要数万宝至马达公司生产的电机了。我们以标准的FA-130RA电机为例来介绍吧。

DC motor

外包装性能表上标注的电压和电流分别为1.5V-3V和500mA,这种电机通常多用于模型和玩具,所以一般根据干电池电源来设置其电压。

voltage setting

电机通过磁场中线圈接收的力来驱动电机旋转。另外,由于线圈本身会产生电抗等看不见的电阻,所以难以掌握电流的情况。

暂且只能以包装上标注的3V和500mA为准。

以2SC1815晶体管为例,由于流经晶体管集电极的电流高达150mA,所以500mA电流高于其额定电流值。这种情况该如何处理呢?

对此有几种处理方法。

大电流的处理方法

例如,可使用电机驱动专用扩展板或电机驱动器IC,具体选用哪种方法取决于扩展板和IC的功能,所以可直接根据正转、反转和制动等使用方式来选用。

另一种方法是使用继电器。继电器是与线圈(即电磁体)接触的一种机构,所以有些继电器可能需要配备晶体管(与LED那篇一样)等来驱动线圈单元。可以说,与开关一样,只要在额定范围内,电源(100V)即可正常导通和关断。

另外,使用时会产生物理接触,所以其使用寿命取决于使用频率。还可采用易用性相同、由半导体组成的SSR(固态继电器)。

SSRs Solid State Relays

图片为透明封装的继电器(可看到内部线圈)

以上列出了几种不同的方法,可能还有些我不太了解的方法和产品,总之我认为最好选用符合目标作品需求的方法。

现在,让我们回到最基本的做法,用晶体管来尝试驱动。

我选择的是可承载较大电流的2SC2655L,其集电极额定电流高达2A,这么高的电流这还不足以驱动这台直流电机吗?与LED那篇的介绍一样,可以通过电路来连接。

connect with the same circuit as the LED

电路是用来驱动电机的电路,从GPIO通过一个1kΩ电阻器将晶体管的基极与集电极相连接,电路示意图如下:

circuit turns a motor

面包板组装示意如图如下:

breadboard assembly

我在Scratch上使用了和上一篇文章一样的程序,也就是说,只是改变了LED等器件,程序可以采用相同的程序。虽说如此,运行起来却完全不同,这是因为电机与LED不同,并不是那种可以突然开启、突然停动的器件。

我暂且尝试了以下的形式。声明GPIO,将引脚4设置为输出,然后每秒重复开关10次。

program on Scratch

我在电机上配有风扇,暂且将它当做电风扇来用吧。可以说这是一个风扇实验设备,可在面包板上尝试各种不同的配置。

通过开关的ON/OFF即可转动电机。

那么,如何控制转速呢?

最近一些电风扇能够间歇性送微风,例如“微风模式”,我们也可尝试实现这种模式。

PWM控制

PWM是一种常用的数字控制方法。

PWM即“脉冲宽度调制”,本质上是一种通过调节快速信号周期中的脉冲宽度来改变一个周期ON/OFF状态的方法。如果处于ON时间长的状态(如Fig. 2),则其电量将大于ON时间短的状态(如Fig. 3)下的电量,换句话说,直流电机在Fig. 2状态下转速较快,反之亦然。

pulse width modulation

现在,让我们尝试在Scratch中来构建。声明GPIO,将引脚4设置为PWM输出,创建变量”power4″并将初始值设置为0。

在计算模块中将”power4″输出到GPIO4。另外,也可将屏幕中的变量显示模式设置为滑块显示,通过滑动按钮来控制风量。此时,如将滑块最大值设置为“1023”,则风扇将全速运转。

pulse width modulation

接下来就可以尝试自动停止送风、重新开始送风、重复该模式的运行方式了。另外,我们还会尝试导通LED。
还是通过PWM控制,LED也会随风扇转速变化而变亮和变暗。

电路图如下所示:

circuit diagram

面包板如下图所示:

breadboard diagram

Scratch程序如图所示:

scratch diagram

提高变量值,并使该状态按最大值保持5秒;然后降低变量值,在0处保持5秒,如此重复。LED的亮度也随之变化。

看起来我们的作品越来越像实验设备了!

大家觉得怎么样?现在我们得到的是一个可以清凉一夏的风扇。

4. 结论

虽然只是一名媒体艺术家,但做实验时我更感觉自己像个工程师,至少看起来像,构建这样一个设备会让人产生这种感觉。

从某种意义上说,这次我们做出了工程师才能做出来的作品。在下一篇文章中,我们将尝试使用传感器,同时还会更深入地思考相应的原理和组装方面的问题。

毕竟,就像作画一样,只有充分掌握了颜料的特性和工具的使用方法后,才能创作出艺术作品。

DevicePlus 编辑团队
DevicePlus 编辑团队

设备升级版适用于所有热爱电子和机电一体化的人。

相关文章

  1. 基于Raspberry Pi的DIY面部识别功能

  2. raspberry pi motion control lamp

    如何用Raspberry Pi制作动作控制感应灯

  3. 利用看门狗板自动重启Raspberry Pi

  4. raspberry pi projects

    寻找实用的Raspberry Pi项目? 制作一个智能伞架!

  5. 使用Crystal Signal Pi第3部分:使用Raspberry Pi创建警示灯解决方案—创建…

  6. Crystal Signal Pi middleware

    使用Crystal Signal Pi第2部分: 使用Raspberry Pi创建警示灯解决方案 —…

  7. 通过Twython在Raspberry Pi上发推文!(第2部分)

  8. Crystal Signal Pi

    使用Crystal Signal Pi第1部分—使用Raspberry Pi创建警示灯解决方案

  9. Raspberry Pi Home Media Storage

    将Raspberry Pi设置为家庭媒体服务器

TECH INFO

  • 重点必看
  • 技术分享
  • Arduino入门指南

基础知识

  • Si功率元器件
  • 热设计
  • 仿真
  • 开关噪声-EMC
  • AC/DC
  • DC/DC
  • 电机
  • 传递函数

工程技巧


PICK UP!

  1. 刘铭
  2. ROHM开发出业界先进的第4代低导通电阻
PAGE TOP