亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

Raspberry Pi 传感器

在本文中,作者 Rushi Gajjar Raspberry Pi Sensors 一书的作者,您将看到构建 RasPi 项目所需的基本要求。没有电子产品,你一天都过不了,对吗?电子产品无处不在,从牙刷到汽车,再到飞机和宇宙飞船。本文将帮助您了解在使用 RasPi 时非常有用的电子学概念。

您可能已经阅读了许多与电子相关的书籍,当您真正想要创建或构建项目时,它们可能会让您对概念感到厌烦。我认为对电子产品及其应用的解释一定是有原因的。

一旦您了解了电子产品,我们将介绍通信协议及其在电子元件之间的通信方面的用途以及实现此目的的不同技术。在开始使用 RasPi 上的 GPIO 之前,列出了有用的提示和注意事项。然后,您将了解 GPIO 的功能并使用 shell、Python 和 C 代码使 LED 闪烁。

让我们介绍一下电子学的一些基础知识。

(有关与此主题相关的更多资源,请参见此处。)

电子学基本术语

电子世界中使用了许多术语。从硬件到软件,有数以百万计的概念用于创建令人惊叹的产品和项目。您已经知道,RasPi 是一款单板计算机,内置了大量电子元件,这让我们能够非常轻松地控制和连接通过其 GPIO 端口连接的不同电子设备。一般来说,当我们谈论电子时,它只是硬件或由几个集成电路组成的电路 (集成电路 ) 具有不同的电阻器、电容器、电感器和更多组件。但情况并非总是如此。当我们用可编程 IC 构建硬件时,我们还需要处理内部编程(软件)。例如,在微控制器或微处理器中,甚至在 RasPi 的情况下,我们可以将程序(从技术上讲,永久烧录/转储程序)输入到 IC 中,以便在 IC 通电时,按照程序并按照我们想要的方式行事。这就是机器人、洗衣机和其他家用电器的工作原理。所有这些设备都有不同的设计复杂性,这取决于它们的应用。有一些功能可以由软件和硬件执行。设计师必须通过对两者进行试验来分析权衡;例如,解码功能可以写在软件中,也可以通过连接逻辑IC在硬件上实现。开发人员必须分析速度、大小(硬件和软件)、复杂性和更多参数来设计这些类型的功能。讨论这些理论的目的是了解电子产品的复杂程度。了解这些术语对您来说非常重要,因为您在构建 RasPi 项目时会经常用到它们。

谁发现了电压?好吧,那现在不重要,我们先了解一下。基本概念遵循水流背后的物理原理。水可以以两种方式流动;一个是瀑布(例如,从山顶到地面),第二个是使用水泵的强力流动。理解电压背后的概念是相似的。电压是两点之间的电位差,这意味着电压差允许电荷(电子)从较高电位流向较低电位。要理解前面的示例,请考虑闪电(可比作瀑布)和电池(可比作水泵)。当电池连接到电路时,它们内部的化学反应会将电荷从正极流向负极。电压总是以伏特 (V) 表示。 AA 电池通常提供 3V 电压。顺便说一下,电压这个词是以伟大的科学家亚历山德罗·沃尔特(Alessandro Volta)的名字命名的,他发明了伏打电池,后来被称为电池。

电流是电荷(电子)的流动。每当产生电压差时,就会导致电流以固定方向从正极(较高)端子流向负极(较低)端子(称为常规电流)。电流以安培 (A) 为单位测量。电子电流从电池的负极流向正极。为防止混淆,我们将遵循常规电流,即从电池或电源的正极端子到负极端子。

“抵抗”一词在牛津词典中的意思是“试图阻止或阻止”。正如定义所说,电阻器只是阻止电流流动。当电流流过电阻时,电阻上会产生电压降。该下降直接取决于流过电阻器的电流量和电阻值。有一个公式用于计算电阻两端(或电路中)的压降量,也称为欧姆定律(V =I * R )。电阻以欧姆 (Ω) 为单位测量。让我们看看这个例子是如何计算电阻的:如果电阻为 10Ω,从电阻器流出的电流为 1A,则电阻器上的电压降为 10V。再举一个例子:当我们在 5V 电源上连接 LED 时,我们将一个 330Ω 的电阻与 LED 串联,以防止 LED 由于电流过大而烧毁。电阻器会降低其中的一些电压并保护 LED。我们将广泛使用电阻来开发我们的项目。

电阻器以热量的形式耗散能量。与此相反,电容器在其两个导电板之间存储能量。通常,电容器用于过滤滤波器电路中提供的电压并在放大器电路中产生清晰的声音。解释电容的概念对于这篇文章来说太繁重了,所以让我来谈谈要点:当我们有电池来储存能量时,为什么我们需要在我们的电路中使用电容器?在电路中使用电容器有几个好处。许多书籍会告诉你它充当滤波器或浪涌抑制器,并且会使用诸如电源平滑、去耦、直流阻断等术语。在我们的应用中,当我们使用带有传感器的电容器时,它们会保持电压电平一段时间,以便微处理器有足够的时间读取该电压值。传感器的数据变化很大。只要微处理器正在读取该值,它就需要保持稳定以避免错误计算。电容器的保持时间取决于RC时间常数,实际使用时会说明。

现在,有一个有趣的点需要注意:当端子上有可用电压但端子之间没有连接任何组件时,没有电流流动,这通常称为开路。相反,当两个端子相连时,有或没有元件,并且允许电荷流动,则称为短路、连通电路或闭合电路。

<块引用>

给你一个警告:不要短接(直接连接)电池、适配器和充电器等电源的两个端子。这可能会导致严重的损坏,包括火灾损坏和组件故障。如果我们连接一根没有电阻的导线,让我们看看欧姆定律的结果:R =0Ω 那么 I =V/0,所以 I =∞A。理论上,这被称为无限(不可数),实际上,这意味着火或爆炸!

在电学理论中,当流过一个元件的电流不分路径时,就是串联连接。此外,如果流过每个组件的电流相同,则称这些组件是串联的。如果所有组件上的电压相同,则称该连接为并联连接。在电路中,可以有串联和并联的组合。因此,电路可能不是纯粹的串联或并联电路。我们来研究下图所示的电路:

乍一看,这个图看起来很复杂,有很多符号,但让我们分别看一下每个组件。左图是元件的串联。电池提供电压 (V ) 和 当前 ( )。电流方向显示为顺时针。如前所述,在串联连接中,流经每个组件的电流相同,但所有组件的电压值不同。因此,V =V1 + V2 + V3 .例如,如果电池提供 12V,则每个电阻器上的电压为 4V。流过每个电阻的电流为 4 mA(因为 V =IR R =R1 + R2 + R3 =3K ).

右图表示并联连接。在这里,每个组件都获得相同的电压,但电流被分成不同的路径。从电池正极流出的电流为I,分为I1和I2。当 I1 流到下一个节点时,它又被分成两部分,流经 R5 和 R6。因此,在并联电路中,I =I1 + I2 .所有电阻器上的电压保持不变。例如,如果电池提供 12V,则所有电阻器上的电压为 12V,但通过所有电阻器的电流将不同。在并联示例中,流经每个电路的电流可以通过应用分流方程来计算。试一试计算一下!

当有串联和并联电路组合时,需要更多的计算和分析。基尔霍夫定律、节点和网格方程可用于求解此类电路。所有这些都太复杂了,无法在本文中解释;您可以参考任何与电路理论相关的标准书籍并获得其中的专业知识。

<块引用>

基尔霍夫电流定律:在电路中的任何节点(结点),流入该节点的电流之和等于流出该节点的电流之和。

基尔霍夫电压定律:任何封闭网络周围的电势差(电压)的有向和为零。

上拉和下拉电阻是电子系统设计中的重要术语之一。正如标题所说,有两种类型的上拉电阻:上拉和下拉。两者具有相同的功能,但不同之处在于上拉电阻将端子拉至提供的电压,而下拉电阻将端子拉至地或公共线。将拉电阻连接到节点或终端的意义在于,当该特定终端上没有输入时,将逻辑电平恢复到默认值。包括上拉或下拉电阻器的好处是它使电路容易受到噪声的影响,并且逻辑电平(1 或 0)不能因电压(由于噪声)的微小变化而改变终端。让我们看一下下图所示的示例。它显示了一个带有非门的上拉示例(非门在其 OUT 端子提供反相输出;因此,如果输入为逻辑 1,则输出为逻辑零)。我们将考虑使用和不使用上拉电阻的影响。下拉电阻也是如此。

一般来说,逻辑门在其输入端具有高阻抗,因此当输入端没有连接时,它被称为浮动。现在,在上图中,最左边的连接是不推荐的,因为当开关打开(OFF 状态)时,它会使输入端子悬空,任何噪声都会改变非门的输入状态。噪音的原因可以是任何。即使是开放的终端也可以充当天线,并可以在非门的引脚上产生噪声。中间的电路是没有电阻的上拉电路,强烈建议不要使用。这种连接可以称为上拉,但绝不应使用。当开关闭合(ON 状态)时,VCC 得到一条到地的直接路径,这与短路相同。大量电流将从 VCC 流到地,这会损坏您的电路。

最右边的图显示了上拉的最佳方式,因为有一个电阻会发生一些电压降。当开关打开时,非门的端子将浮动到 VCC(上拉),这是默认值。当开关闭合时,非门的输入端将接地并经历逻辑零状态。这次流过电阻器的电流将是标称值。例如,如果 VCC =5V,R7 =1K,并且 I =V/R ,则I =5mA,处于安全区域。对于下拉电路示例,开关和电阻器之间可以互换。电阻将连接在地和非门的输入端之间。在使用传感器和 IC 时,请记住,如果数据表或技术手册中有使用上拉或下拉的符号,建议在任何需要的地方使用。

通信协议

到目前为止,已经有很多理论了。可以有许多组件,包括 IC 和数字传感器,作为微处理器的外围设备。外围设备可能有大量数据,可能需要将其发送到处理器。他们如何沟通?处理器如何理解数据正在进入它以及它是由传感器发送的? IC 和微处理器之间存在串行或并行数据线连接。并行连接比串行连接更快,但不太受欢迎,因为它们需要更多的线路,例如 8、16 或更多。 PCI 总线可以是并行通信的一个例子。通常在复杂或高密度的电路中,处理器连接到许多外围设备,在这种情况下,我们不能有那么多空闲引脚/线来连接额外的单个 IC。串行通信最多需要四条线路,具体取决于所使用的协议。尽管如此,不能说串行通信比并行更好,但是当出现低引脚数时,串行通信是首选。在串行通信中,数据通过帧或数据包发送。大数据被分成块并通过帧或数据包通过线路发送。现在,什么是协议?协议是在将 IC 连接到微处理器时需要遵循的一组规则,它不仅限于连接。该协议还定义了数据帧结构、帧长度、电压电平、数据类型、数据速率等。有许多标准串行协议,例如 UART、FireWire、以太网、SPI、I2C 等。 RasPi 1 型号 B、A+、B+ 和 RasPi 2 型号 B 在扩展端口上有一个 SPI 引脚、一个 I2C 引脚和一个 UART 引脚。我们将一一看到这些协议。

UART 是一种非常常见的接口或协议,几乎可以在每台 PC 或微处理器中找到。 UART 是 Universal Asynchronous Receiver and Transmitter 的缩写形式。这也称为 RS-232 标准。该协议是全双工的,是一个完整的标准,包括特定通信实例的电气、机械和物理特性。通过总线发送数据时,需要更改数据级别以适应 RS-232 总线级别。变化的电压由总线上的发送器发送。大于 3V 的电压值为逻辑 0,而小于 -3V 的电压值为逻辑 1。 -3V 到 3V 之间的值称为未定义状态。微处理器将数据发送到晶体管-晶体管逻辑 (TTL ) 等级;当我们将它们发送到总线时,电压电平应该增加到 RS-232 标准。这意味着要将电压从微处理器的逻辑电平(0V 和 5V)转换为这些电平并返回,我们需要一个电平转换器 IC,例如 MAX232。数据通过 DB9 连接器和 RS-232 电缆发送。当我们远距离交流时,电平转换很有用。

当我们需要在没有这些额外电平转换器 IC 的情况下进行连接时会发生什么?这种连接称为NULL 连接,如下图所示。可以看出,发送器的发送和接收引脚是交叉连接的,并且接地引脚是共享的。这在短距离通信中很有用。在 UART 中,发送器和接收器之间的波特率(每秒传输的符号数)匹配非常重要。大多数情况下,我们将使用 9600 或 115200 作为波特率。 UART 通信的典型帧由起始位(通常为 0,它告诉接收器数据流即将开始)、数据(通常为 8 位)和一个停止位(通常为 1,它告诉接收器传输即将开始)组成。结束)。

更多细节:树莓派传感器


制造工艺

  1. 电流传感器具有低漂移、高精度
  2. 使用 1 线 DS18B20 传感器和 Raspberry Pi 测量温度
  3. Raspberry Pi 上的温度监控
  4. Raspberry Pi 2 气象站
  5. Raspberry Pi 上没有模拟输入的模拟传感器
  6. Raspberry Pi Universal Remote
  7. 一片树莓派
  8. Java ME 8 + Raspberry Pi + 传感器 =物联网世界(第 1 部分)
  9. Cycle Chaser
  10. 使用 Raspberry Pi 和 Zabbix Supervisor 读取模拟传感器
  11. Raspberry Pi Thief Detector
  12. Raspberry Pi 温度传感器