yaboPP电子
项目

构建覆盆子PI控制器:LED闪光灯

2015年12月11日通过维尔切不

在这个项目中,您将学习如何使用树莓派电线和闪烁它。此外,为了将树莓派的+ 3.3VDC兼容输出引脚与大于此电源的电源电压隔离,还将引入一个光隔离器。

闪存LED使用您的RPI!

led(发光二极管)通常用于消费、医疗、汽车和工业产品。它们提供视觉状态,提醒我们电子玩具、智能手机和消费设备的运行状况。led还通过颜色、强度和闪烁率为产品提供令人惊叹的效果。这些电子光源正不断取代白炽灯和节能灯(紧凑型荧光灯),因为它们具有高能效、高亮度和使用寿命。在这个建筑树莓派控制器的第二部分系列中,你将学习如何连接一个LED到树莓派和控制它与触觉按钮开关。您将使用这个简单的LED控制器构建的电子设备是一个按钮开关驱动的电子闪光器。

本系列以前的文章

创建一个树莓派按钮开关

项目部分列表

下面列出了构建覆盆子PI LED闪光灯的组件。

各种各样的

  • 无焊接面包板
  • 跳线(手剥22AWG实心线或adafruit面包板线,产品编号:153)
  • USB电缆

各种覆盆子pi的

在我们继续构建RPi LED闪光器之前,让我们简要地谈谈制造商领域的树莓派。目前有四种RPi(树莓派)低成本sbc(单板计算机)可供制造商、工程师、教育工作者和学生选择。的模型A +是256MB RAM,700MHz ARM处理器SBC,能够有效地在9V电池上运行。A +上包含的主要电yabosports官网子设备是:

  • 液晶显示器连接器
  • 相机连接器
  • HDMI连接器
  • USB 2.0连接器
  • 3.5mm音频插孔
  • 40引脚双线GPIO(通用输入输出)连接器
  • 以太网端口

图1。模型A+ RPi的俯视视图

模型B.内存为512MB,是A+的2倍。除了标准的A型电子外设,RPi的B版本还有一个附加的USB端口和复合视频yabosports官网。复合视频RCA插孔允许将普通电视连接到RPi。与a版SBC相比,型号B RPi上的双列直插连接器仅提供26 GPIO引脚可达性。提供标准SD卡,用于存储Linux操作系统和应用程序文件。

图2。模型B是A + RPI SBC的增强版本,提供用于电视附件的AdditOnal USB端口和复合视频。

RPI中的下一个演进由模型B +单板计算机。型号B+ RPi有4个USB接口,而不是型号B的2个连接器设计。它包括一个40针双直插式GPIO连接器和microSD卡,而不是型号B的传统笨重的SD卡。在其他RPI型号上提供的HDMI连接器,在型号B+上是标准的。

图3..B + Model B +提供可访问的40引脚双线GPIO连接器,带有Micro SD卡,用于Linux操作系统和应用程序文件存储。

最新的RPI模型,随着PI零排除,是PI 2.模型B具有1GB RAM, 900MHz四核(BCM2836, ARM v7)处理器,与其他使用单核(BCM2835, ARM v6)组件的RPi型号相比。Pi 2具有与Model B+相同的电子外设yabosports官网,从而实现了硬件设计的无缝衔接。“然而,你现有的树莓派SD卡图像可能无法工作,因为固件和内核必须重新编译/适应新的处理器,”adafruit网站说。因此,在执行硬件修改任务时,需要额外注意固件和Linux操作版本的升级。

图4..带有四核处理器的Pi 2 Model B是基于linux的终极RPi SBC。

所讨论的任何一种RPi模型都可以用于这个LED闪光器项目。

RPI LED闪光框图

一个电子LED闪光器可以很容易地建立使用555定时器IC,几个电阻-电容组件,当然还有一个LED。电子LED闪光器和RPi设备的唯一区别是闪光速率是使用软件调整的,而不是改变硬线电阻-电容组件的值。RPi闪光器有四个子电路构建块。子电路模块由触觉按钮开关、RPi、光隔离器和带有限流电阻的LED组成。RPi LED闪光器框图如下所示。

图5。建立RPi LED闪光器所需的电子电气元件。

我提供了RPi LED闪光器的增强框图,显示了项目的实际电子电气组件,作为额外的参考。

图6。具有实际电气元件的改进的RPI LED闪光灯框图。请注意连接到相关的RPI GPIO引脚的输入和输出组件。

虽然我使用的是RPi的Model B版本,但您也可以使用LED闪光器项目中讨论的其他sbc。现在,让我们继续讨论光隔离器的操作。

什么是光隔离器?

光隔离器是电子电路,其将高压信号和来自低电压电路的源分离。通过使用光电二极管和光电晶体管对实现电信号隔离技术。当光电二极管正确地连接到正常操作时,当电流流过它时,从电子设备发射不可见的光或光子。向前偏置是用于描述光电二极管的适当布线和电流流动的技术术语。击中光电晶体管的光敏表面的隐形光或光子将使其传导通过发射器从其收集器引线流过的电流。电流流量意味着光电晶体管被正确偏置,并将打开像电子开关一样。连接到光电晶体管的外部电路或电子元件也将开启。由于光电二极管和光电晶体管之间的该光子界面,所施加的高压源或信号从低压电路隔离。高压从未电连接到低电压电源。

图7。光隔离器的一种典型电子符号

在RPi控制器项目中使用光隔离器是在不损坏SBC的情况下使用高电压源的好方法。板载+5VDC电源将用于增加LED的亮度。光隔离器将打开光电晶体管,光电晶体管将使用RPI PCB上的板载+5VDC电源驱动LED。现在你了解了光隔离器的电气原理,让我们来做一个RPi LED闪光器!

RPi LED闪光器硬件

使用无焊料面包板接线图或电子电路原理图来构建RPi LED闪光器是相对容易的。在图8和图9中,我同时提供了这两个图。如果你正在学习如何连接电子线路,我建议你使用无焊料面包板接线图来构建这个项目。对于有经验的电子制造商,电路原理图是首选yabosports官网的接线文件。请注意,在无焊料面包板图上,我提供了光隔离器、触觉按钮开关、限流电阻、LED和Pi补鞋匠的电气连接细节。记住要密切注意你使用的派鞋匠,这是基于你为这个项目选择的树莓派模型。在RPI模型集之间,Pi补鞋匠引脚是不同的。

图8..搭建RPi LED闪光器的无焊料面包板接线图。请注意电子元件在无焊料面包板上的放置,特别是光隔离器(P / N元74 - 4 h - nd)和pi cobbler。

图9。RPi LED闪光器电子电路原理图

TAS附加参考材料有助于建立RPI LED闪光灯硬件,我提供了光隔离器引脚。电路示意图所示的FRIZting电路块遗憾的是,不提供光电二极管 - 光电晶体管对/光学通道如何放置在16个引脚双线封装(DIP)内的内部的细节。CNY74-4H-ND光隔离器电引用图10中提供。

图10..CNY74-4H-ND四通道光隔离器IC(集成电路)的电引脚出和物理包。

完成RPi LED Flasher的硬件构建后,我建议在给RPi通电之前,重新检查电路是否接线错误。如果有线路错误,纠正它们,然后给LED闪光电路供电。这是我的RPi LED闪光电路的图片,如图11所示。您可以使用此图像作为参考模型,以帮助构建您的RPi LED闪光灯。项目的最后一部分是提供允许设备正常运行的代码。

图11。作者的RPI LED Flasher。作者选择使用模型B来进行项目,以吹掉他的第一个RPI SBC的灰尘。

RPI LED荧光选手Python代码

RPi LED flash项目的最后阶段是添加一些Python代码。要开发RPi控制器,Python脚本语言非常容易用于读取电气开关、电子传感器和控制led、直流电机和机电继电器。正如这个多部分系列的第一部分所演示的,连接触觉按钮开关和编程RPi读取其电触点状态相对容易。这个项目是第一部分的延续,在第一部分中,按下触觉按钮开关将允许LED以指定的速度闪烁。松开按钮开关将停止LED闪烁。为了帮助解释Python代码的操作,我提供了大量的注释语句。清单1显示了注释良好的RPi LED Flasher Python代码。我将Python代码命名为pbswitch_flasher.py..打开LXTerminal的nano或Python IDLE编辑器,并在LXTerminal屏幕中输入清单1所示的RPi LED闪光器代码。

# # # Pushbutton Switch LED Flasher ****************** # # # created by Don Wilcher Nov 28, 2015 # # #按/按住触觉按钮开关,LED闪烁#释放触觉按钮,LED关闭#添加库到python脚本导入RPiGPIO.setmode(GPIO.BCM) pbswitch_pin = 4 LED_pin = 18 #创建pbswitch引脚作为有源低开关(使用RPi内部上拉电阻)#并定义LED引脚作为输出GPIO。设置(pbswitch_pin GPIO。在,pull_up_down = GPIO. pud_up)设置(LED_pin GPIO.OUT) #定义和设置(初始化)LED输出状态为假LED_state = False # pbswitch事件监视回路:检查pbswitch_pin和闪光LED输出基于新的输入事件是假的,而真的:new_input_event = GPIO.input (pbswitch_pin)如果new_input_event = = False: LED_state =不是LED_state GPIO。输出(LED_pin, GPIO. high)时间。输出(LED_pin GPIO.LOW) time . sleep(1。)

Pushbutton_Code.zip

要在RPI上运行代码,请在lxterminal型在提示后的Linux Commmand中。

pi@raspberrypi ~ sudo python pbswitch_flash .py

现在按住触觉按钮开关,LED应该闪烁。祝贺您构建了第二个RPi控制器!通过将time(以秒为单位)的值更改为1秒来进行flash速率的实验。下面显示的是更改flash速率的代码行。

Time.sleep(.1):将0.1改为1

需要更改两条指令以提供平衡开/关闪光速率。通过将非相等的时序值提供到Time.sleep()Python指令来创建不同的闪烁模式。记录笔记本中的观察以及用智能手机记录工作项目的视频剪辑。在建筑物RPI控制器的第三部分中,您将探索如何使用光传感器(Photocell)控制一个小型直流电机。

下一篇文章串联:构建目标检测直流电机控制器

你自己试试这个项目吧!得到bom。