分类目录归档:电子技术

从零开始学MicroPython和micro:bit

MicroPython语言介绍

 

MicroPython是专为微控制器开发的基于Python编程语言的开源解释性语言。在这个实验指南中,我们将向您展示如何开始使用MicroPython和流行的micro:bit板和我们的micro:bit。

注意:本文假定您有编程经验。如果您以前从未使用过编程语言,那么我们建议您看看这个指南的MakeCode版本。MakeCode是一个拖放编辑器,它对所有年龄段的初学者都很有帮助。

当你完成了这个指南,你就知道如何用开始用MicroPython对micro:bit编程,来创建自己的项目和实验!

使用MicroPython

MicroPython只是一种编译语言,所以它不包含写和编辑代码的空间。幸运的是,我们可以使用一个编辑器来编写Python代码。在开始之前,您需要下载Mu。Mu是一个简单的代码编辑器,适合在Windows, OSX, Linux和Raspberry Pi上运行。

使用MicroPython的一个主要的优点是交互式的REPL。REPL(read-evaluate-print loop)代表读取﹣求值﹣输出循环,此中技术背后的原理一言难尽,有兴趣的读者可以参考维基百科相关介绍,REPL对于学习一门新的编程语言具有很大的帮助,因为它能立刻对初学者做出回应。这意味着你可以马上执行代码,查看结果,而无需先经过编译然后上传的繁琐步骤。要让REPL在Windows上工作,您需要安装mbed的串口驱动程序。

Python的应用程序非常广泛,使用Python拥有优于其他编程语言的优势,包括与其他语言和平台、第三方模块、广泛的支持库、用户友好的数据结构进行交流,当然,它是开源的。

目前一些已知的使用Mu和micro:bit的问题,是不能导入第三方模块,不能使用中断,也不能用一种合适的方式将一个范围的数字映射到另一个范围。由于不支持导入第三方模块,所以我们将在当前的Mu MicroPython文件中复制和粘贴源代码。和学习任何新的语言一样,Python需要时间、耐心、自学和大量的例子!坚持下去,我们会在路上帮助你。

项目文件

 

要下载跟随所有实验所需的所有文件,请点击下面的按钮。

DOWNLOAD THE PROJECT FILES!下载项目文件

选择软件

 

要使用MicroPython和micro:bit,有几个不同的选择。

建议阅读

 

如果您以前从未使用过电子产品,我们建议您对以下教程中的概念略作了解:

 

  • 电压、电流、电阻和欧姆定律——电子和电气工程中最基本的概念。熟悉这些概念,因为它们将在你的电子产品探索中使用到。
  • 电路是什么?——在本指南中,我们将构建各种电路。理解这意味着什么,对于理解发明者的工具包是至关重要的。
  • 如何使用面包板——第一次使用面包板?请查看本教程!它将帮助您理解为什么breadboard对于原型设计和如何使用非常有用。

实验:你好,micro:bit

 

Hello World你好,世界:程序员的第一个程序

在micro:bit上的“你好世界”有点不同。在大多数微控制器上,这个程序将使用串行终端执行。您可以使用内置的LED阵列来与您的微处理器进行交互,而不是使用串行终端。所以,micro:bit的“Hello World”是用LED阵列来绘制的!

 

让我们先从REPL运行程序,然后我们将构建一个.py脚本并将其上传到micro:bit。打开Mu,并确保你的micro:bit通过USB数据线连接到你的电脑上。

 

打开REPL,单击图标,您应该会看到第二个窗口出现在底部。输入help(),看看会发生什么。

 

 

The colon is how Python blocks code the way Arduino uses a set of curly brackets. Everything indented under a colon will execute as a block of code.

Type the program above in your Mu editor, or download all the programs from this GitHub Repository. Save it, then click the Flash icon to program your micro:bit.

Let’s display an image next instead of text.

点击任何一个图像来进一步观察。

在REPL输入 display.scroll("Hello World")观察你的micro:bit的5×5 LED阵列。现在通过单击REPL图标关闭REPL。

对于第一个MicroPython脚本,我们将介绍如何添加注释、如何导入模块以及如何创建将永久运行的循环。在程序的顶端,你会看到三条注释。注释是使用#符号和一个空格创建的。你可以使用 from 和import访问模块。这些单词告诉解释器要从哪些模块中导入。在这种情况下,我们从micro:bit导入所有内容。while True:是关于如何在Python中创建一个永久循环。冒号是Python如何用一组花括号来阻塞代码。在冒号下缩进的所有内容都将作为代码块执行。

在您的Mu编辑器中输入程序,或者从这个GitHub存储库下载所有程序。保存它,然后点击Flash图标来为你的微处理器编程。

让我们接下来显示一个图像而不是文本。

 

当键入display.show(Image...)时,让这个有用的信息框显示你所构建的图像。然后尝试编写自己的自定义映像。

实验一:眨眼睛的LED

介绍

This is experiment 1 – blinking an LED. We get to the fun stuff: adding hardware and constructing circuits.

这是实验一 ——一个闪烁的LED。我们得到了有趣的东西:添加硬件和构造电路。

需要的东西

你将会使用到以下部分:

  • 1x Breadboard面包板
  • 1x micro:bit板
  • 1X micro:bit Breakout with Headers
  • 1x LED
  • 1x 100Ω Resistor电阻
  • 1x Jumper Wires杜邦线跳线

Didn’t Get the SIK for micro:bit?

如果你正在进行这个实验并没有得到发明者的工具包,我们建议使用以下部分:

Suggested Reading建议阅读

在继续进行这个实验之前,我们建议您熟悉以下教程中的概念:

  • Light-Emitting Diodes — Learn more about LEDs!
  • 发光二极管——知道更多关于LED的知识!

Introducing the micro:bit Edge Connector介绍micro:bit ???

edge connector

We also broke out ground and VCC (3.3 volts) for your convenience.

为了扩展micro:bit的功能,我们开发了一个面包板适配器。这个适配器板使得在micro:bit上使用所有可用的引脚更加方便。为了您的方便,我们还为您提供了地面和VCC(3.3伏特)。

The adapter board lines up with the pins of a breadboard. We recommend using a full-sized breadboard with this breakout to give you enough room to prototype circuits on either end of the breadboard.

适配器板与面包板的插脚相连。我们建议使用一个全尺寸的面包板,这个突破可以给你足够的空间,让你可以在面包板的两端建立电路原型。

介绍LED

alt text

发光二极管(LED)只会让电流通过一个方向。把一个LED当作单行道。当电流流过LED灯时,灯就亮了!当你看着LED的时候,你会发现它的引线是不同的长度。较长的引线,“阳极”,是电流进入LED的地方。这个引线应该始终连接到电源。更短的引线,“阴极”,是电流的出口。短的引线应该一直连接到地面上。

当谈到你对它们的应用时,led是很讲究的。太大的电流会导致烧坏的LED。为了限制通过LED的电流,我们使用电阻器与电源和LED的长引脚连接;这叫做限流电阻器。为了使用micro:bit,你应该使用100欧姆的电阻。就为了这个原因,我们已经在工具包里放了一袋这种电阻!

硬件连接

 

准备好开始连接了吗?看看下面的接线图和连接表,看看它们是如何连接的。

Pay special attention to the component’s markings indicating how to place it on the breadboard. Polarized components can only be connected to a circuit in one direction.

marked with a flat edge.

请注意:请密切注意LED。LED的反面是短引脚,用平边标记。

LED drawing

有些组件,比如电阻,为了适应面包板的插槽,需要腿弯曲成90°角。你也可以缩短引脚的长度,让它们更容易在面包板上工作。

Bent resistor

实验电路图

alt text

看电路有困难吗?在接线图上点击查看。

运行脚本

alt text

编程时要注意:

pin0.write_digital(1) and pin0.write_digital(0)

除了第8和第10行,你会发现这和之前的实验没有太大区别除了第8和第10行。

pin0.write_digital(1) sends a HIGH value, ON or a voltage of 3.3V to pin 0 on the micro:bit.

发送一个高值,或电压为3.3V,在micro:bit板上输入0位。

pin0.write_digital(0) sends LOW value, OFF or 0V to pin 0 of the micro:bit.

发送一个低值,或电压为0V,在micro:bit板上输入0

你应该看到的现象

 

你应该在看到你的LED以一秒的间隔闪烁。如果没有,请确保您已经正确地组装了电路,并验证并将代码上传至您的micro:bit,或者查看故障排除部分。改变 sleep()的次数,并使用LED闪烁频率。

故障排除

LED不闪烁

确保你把它正确地连接在一起,并正确地将针固定在地面上。记住,短针落地;长针信号。

仍旧未能成功

 

断了电路是没有乐趣的。给我们发邮件,我们会尽快回复你:techsupport@sparkfun.com。

实验二:阅读电位计

介绍

在这个电路中,你将使用电位器。您将学习如何使用一个电位器来控制LED的亮度,并通过读取一个传感器并将其0-1023的值存储为一个变量,然后使用它作为LED的亮度级别。

所需部分

你将会需要用到以下几部分:

  • 1x 面包板
  • 1x micro:bit
  • 1x LED
  • 1x 100Ω 电阻
  • 7x 杜邦线
  • 1x 10kΩ Potentiometer电位计

Didn’t Get the SIK for micro:bit?

如果你正在进行这个实验并没有得到发明者的工具包,我们建议使用以下部分:

建议阅读

在继续进行这个实验之前,我们建议您熟悉以下教程中的概念:

Introducing the Potentiometer电位计介绍

alt text

电位器是一种基于电阻的模拟传感器,它根据旋钮的转动来改变其内部电阻。电位器有一个内部的分压器,使你可以用微控制器(micro:bit)读取中心引脚上电压的变化。为了连接电位器,将两个外引脚连接到电源电压(该电路的5V)和接地。只要一个连接到电源,另一个连接到地面,哪个连接在哪里都无关紧要。然后将中心引脚连接到一个模拟输入插脚,这样micro:bit就可以测量电压的变化。当你转动旋钮时,感应器读数将会改变!

注意:工具箱中包含的电位器上有三个标记,可以帮助你弄清楚插针的位置。

硬件连接

准备好开始连接了吗?看看下面的接线图和连接表,看看它们是如何连接的。

Pay special attention to the component’s markings indicating how to place it on the breadboard. Polarized components can only be connected to a circuit in one direction.特别注意组件的标记,指示如何将其放置在面包板上。偏振分量只能在一个方向上与电路相连。

实验接线图

alt text

看到电路有困难吗?可以在接线图上点击查看。

 

注:全尺寸的面包板动力轨道中间有一个断裂。如果你使用的是下半部分的电力轨道,你将需要在上端和下端之间跳跃。

运行脚本

alt text

编码注意事项

pin2.read_analog()

 

在这个程序中,你正在读取电位器的电压,电位器的电压是0到3.3伏在引脚2上。micro:bit将值作为一个10位数字读取,该值的值范围从0到1023,调用代码 pin2.read_analog()。我们将这个数字保存到一个名为potVal的变量中。

pin0.write_analog()

与模拟读取一样,模拟写处理的是一系列的值,但不是将一个引脚作为输入,而是将一个模拟值 pin0.write_analog() 输出到一个引脚上。我们把它看作是一个亮度范围的LED,但是它可以是一个蜂鸣器的音调,一个电机的速度,等等。我们把模拟输出设置为我们储存电位器的变量。

“变量”是在代码中可能更改的值的占位符。您可以通过输入一个名称并设置它等于您想要的值来创建一个变量。Python是一种动态类型语言。这意味着变量的类型是在运行时确定的。所以您不必担心声明变量类型。

你应该看到的现象

 

你应该拧一下电位器。你会注意到LED会根据电位器的位置变得更亮或更暗。如果你把电位器转到一个方向,它就会完全打开,另一端就会完全关闭。

故障排除

间断工作

这很可能是由于与电位器的引引脚有轻微的接触。通常可以通过将电位器压低或将电位器电路移到面包板上的其他地方来解决。

不工作

Make sure you haven’t accidentally connected the wiper (center pin), the resistive element in the potentiometer, to a wrong pin!

确保你没有意外地连接到电位器的电阻元件,到一个错误的针!

LED没有被点亮

LED只能在一个方向上工作。再次检查你的连接。

Experiment 3: Reading a Photoresistor实验三:理解光敏电阻

介绍

在实验2中,你需要使用一个电位器,它会根据一个旋钮的转动来改变电阻,反过来,也会改变模拟输入所读取的电压。在这个电路中,你将使用一个光敏电阻,它会根据传感器接收到的光的多少来改变电阻。你会读到房间的光值,如果是暗的,就会打开LED灯,如果灯是亮的就关掉。就是这样;你要造一个夜灯!

所需部分

你将会需要用到以下部分:

  • 1x 面包板
  • 1x micro:bit
  • 1X micro:bit Breakout with Headers
  • 1x LED
  • 1x 100Ω电阻
  • 7x 杜邦线
  • 1x 光敏电阻
  • 1x 10kΩ 电阻

Didn’t Get the SIK for micro:bit?

If you are conducting this experiment and didn’t get the Inventor’s Kit, we suggest using these parts:

光敏电阻介绍

alt text

光敏电阻根据所暴露的光改变其电阻。要用这个micro:bit,你需要用一个10k欧姆电阻器来建立一个分压器,就像这个实验的接线图。micro:bit不能读出电阻上的变化,只能读出电压的变化。分压器允许你将电阻的变化转换成相应的电压值。

To learn more about resistors in general, check out our tutorial on resistors and also our tutorial on voltage dividers

分压器允许在基于电压的系统中使用像光敏电阻这样的基于电阻的传感器。当你探索不同的传感器时,你会发现更多的基于电阻的传感器,像光敏电阻一样只有两个引脚。用你的micro:bit来使用它们:你需要在这个实验中建立一个像这样的分压器。要了解更多关于电阻的知识,请参阅我们的电阻器教程,以及关于分压器的教程。

注意:要确保在你的分压器中使用的是10k欧姆电阻和这个工具包中的传感器。否则,你会得到奇怪而不一致的结果。

硬件连接

准备好开始连接了吗?看看下面的接线图,看看所有的东西是如何连接的。

Pay special attention to the component’s markings indicating how to place it on the breadboard. Polarized components can only be connected to a circuit in one direction.特别注意组件的标记,指示如何将其放置在面包板上。偏振分量只能在一个方向上与电路相连。

实验布线图

alt text

 

看到电路有困难吗?在接线图上点击查看。

.注:全尺寸的面包板动力轨道中间有一个断裂。如果你使用的是下半部分的电力轨道,你将需要在上端和下端之间跳跃。

Running Your Script运行脚本

alt text

编码注意事项

if 和 else

如果在永久循环中不断更新的光值变量小于校准值- 50,那么它是黑的,LED应该打开。if语句的(-50)部分是一个敏感值。值越高,电路就越不敏感;值越低,光照条件越敏感。

ifelse语句是设置永久循环的控制流的简单方法。如果绑定到If语句的逻辑语句是正确的(True),那么它将执行在冒号下缩进的代码。如果该语句是假的(False),它将跳到下一个语句,也就是else语句。在这种情况下,如果陈述是真实的(True)(房间是暗的),那么micro:bit将会打开引脚16;否则(如果房间是亮的),它将使用前面提到的write_digital命令来关闭LED。

校准器calibrationval是一个校准变量。你的micro:bit在进入永久循环之前,需要对光传感器进行一次读取,并使用该值与永久循环中的lightVal变量进行比较。在进入永久循环之前,这个值不会在永久循环中发生变化。要更新这个值,你可以在你的微处理器的背面按下RESET按钮:bit或重启。

你将会看到的现象

当micro:bit运行程序时,它将从光传感器中读取一个读数,并将其作为房间“正常”状态的校准值。当你把你的手放在光传感器上或者把灯关掉时,LED灯就会打开。如果你把灯打开或打开灯感应器,LED灯就会关闭。

故障排除

LED仍旧不亮

You may have been leaning over the light sensor when the code started. Make sure the light sensor is reading the normal light in the room at startup. Try resetting the micro:bit.当代码开始时,您可能已经在光线传感器上倾斜了。确保光传感器在启动时在房间里感受正常光线。尝试重置micro:bit。

仍然不工作

再次检查你的信号插头接线;有时,你会错过一整排面包板的连接。

实验四:操作驱动RGB LED

介绍

你知道什么比眨眼睛更有趣吗?用一个LED改变颜色!在这个电路中,您将学习如何使用RGB LED来创建独特的颜色组合。根据每个二极管的亮度,显示几乎任何颜色都是可能的!

所需部分

你将会需要用到以下部分:

  • 1x 面包板
  • 1x micro:bit
  • 1X micro:bit Breakout with Headers
  • 1x Common Cathode RGB LED
  • 3x 100Ω 电阻
  • 5x 杜邦线

Didn’t Get the SIK for micro:bit?

如果你正在进行这个实验并没有得到发明者的工具包,我们建议使用以下部分:

Introducing the Red/Green/Blue (RGB) LED

alt text

红/绿/蓝(RGB) LED是一种发光二极管。RGB有四个引脚,每三个引脚控制一个单独的颜色:红色,绿色或蓝色。RGB的更长的引脚是常用的地脚。你可以通过将不同颜色的不同颜色组合在一起来创建一个定制的LED。例如,如果你打开红色的引脚和绿色的引脚,RGB就会变成黄色。

But which pin is which color? Pick up the RGB so that the longest pin (common ground) is aligned to the left as shown in the graphic below. The pins are Red, Ground, Green and Blue — starting from the far left

但是哪个针是哪个颜色呢?拿起RGB,让最长的引脚(接地)与左边对齐,如下图所示。引脚是红色的、地面的、绿色的和蓝色的——从最左边开始。

注意:当连接RGB时,每个有色的引脚仍然需要一个电流限制的电阻器,与micro:bit的I/O 相连,那么你就能用来控制它,和任何标准的LED一样。

硬件连接

准备好开始连线了吗?看看下面的接线图和连接表,看看它们是如何连接的。

Pay special attention to the component’s markings indicating how to place it on the breadboard. Polarized components can only be connected to a circuit in one direction.特别注意组件的标记,指示如何将其放置在面包板上。偏振分量只能在一个方向上与电路相连。

实验布线图

alt text

看电路有困难吗?在接线图上点击查看

运行脚本

alt text

编码注意事项

使用随机模块

 

MicroPython附带了一个随机random模块,用于在程序中引入一些未知的内容。有几种方法可以使用随机模块,而不是在这个实验中将它作为随机数生成器使用。要查看文档,请阅读random模块上的官方文档

In this experiment we are using random to generate a random number between 0 and 255在这个实验中,我们使用一个随机生成的、0到255之间的随机数。

button_a.is_pressed() 和 button_b.is_pressed()

button_a and button_b represent the left and right buttons on the micro:bit respectively. There are three built-in functions that can be attached to button_a or button_b:

button_a 和 button_b分别代表micro:bit上的左右按钮。有三个内置函数可以附加到

button_a或者 button_b:

 

  • is_pressed() — Will return True if the button specified is pressed. If the specified button is not pressed, it will return False.如果按下指定的按钮,将返回True。如果指定的按钮没有被按下,它将返回False
  • was_pressed() — Will return True or False depending on whether the specified button was pressed since start-up or since the last time this statement (method) was called.将返回TrueFalse,这取决于自启动时指定的按钮是否被按下,或者自上次调用该语句(方法)以来。
  • get_pressed() — Will return the number of times the specified button has been pressed since the device started or since the last time the statement (method) was used. Once the method is used, it will reset to zero.将返回自设备启动以来按指定按钮的次数,或者自上次使用语句(方法)以来。一旦使用该方法,它将重置为零。

elif

elif语句允许您检查可能为正确(True)的多个表达式。在这个实验中,我们想要做不同的事情,即按下按钮是正确的True还是按按钮B是正确的True

你应该看到的现象

你应该看到你的LED灯变红了。如果你按下micro:bit的按钮,颜色会变成绿色,如果你按下B键,颜色就会变成蓝色。

故障排除

LED仍旧不亮或者亮着不正常的颜色

由于LED的四个引脚挨在一起,有时容易放错其中一个。需要仔细检查每根针的位置。

看到红色

RGB LED内的红色二极管可能比另外两个要亮一些。为了使你的颜色更加平衡,要使用更高的欧姆电阻。

实验五:理解单刀双掷开关

介绍

在这个实验中,你将使用你的第一个数字输入:一个开关。SPDT(单刀双掷)开关是在两个选项之间进行选择的一种简单方式,特别是在与“if”状态配对时。您将使用该开关来选择两个led中的哪一个会闪烁。

所需部分

你将会需要用到以下部分:

  • 1x Breadboard面包板
  • 1x micro:bit
  • 1x micro:bit Breakout with Headers
  • 2x LEDs (1红,1黄)
  • 2x 100Ω电阻
  • 8x 跳线
  • 1x 单刀双掷开关

 

Didn’t Get the SIK for micro:bit?

如果你正在进行这个实验并没有得到发明者的工具包,我们建议使用以下部分:

建议阅读

Before continuing with this tutorial, we recommend you be somewhat familiar with the concepts in these tutorials:

Introducing the Single-Pole, Double-Throw (SPDT) Switch

alt text

单刀双掷(SPDT)开关在中间有一个公共引脚,然后根据开关的位置有两个其他引脚连接到公共(中心)引脚。为了以类似于按钮的方式读取开关,您将公共引脚连接到micro:bit的数字通用输入/输出(GPIO)引脚,其他引脚连接到3.3V并接地。哪个引脚是哪个并不重要。当您移动开关时,公共引脚将为高电平(连接至3.3V)或低电平(接地)。

硬件连接

准备开始把所有东西都勾起来?查看下面的接线图和连接表,了解各种连接方式。

Pay special attention to the component’s markings indicating how to place it on the breadboard. Polarized components can only be connected to a circuit in one direction.

实验连线图

alt text

Having a hard time seeing the circuit? Click on the wiring diagram for a closer look.

注意:全尺寸的面包板电源导轨有中间断开的情况。如果您最终使用电源导轨的下半部分,则需要在上端和下端之间跳转。

运行脚本

alt text

编程注意

pin0.read_digital()

就像write_digital()语句打开(1)或关闭(0)引脚一样,write_digital()语句确定引脚的状态,即HIGH(1)或LOW(0)。通过建立一个连接3.3V或接地的电路,我们可以检测到开关是否被触发或按下了按钮。

你应该看到的现象

根据开关的状态,不同的LED将闪烁。如果您移动开关将信号引脚连接至3.3V(HIGH),则连接至引脚P15的LED将闪烁。如果您拨动开关并将信号引脚接地,则引脚P16上的LED将开始闪烁,并且LED 1将关闭。

故障排除

Light Not Turning On

开关的电线紧挨​​着。确保信号位于外部引脚上的电压和地线的中间。如果你连接接地和电压,你的电路板将短路并关闭。

确保您的电源指示灯亮起。如果它关闭,请拉动信号线并查看是否有任何改变。如果您将micro:bit电路短路,它将自动关闭以保护电路。

Underwhelmed

 

别担心;这些电路都是非常精简的,以便轻松玩游戏组件,但一旦将它们放在一起,天空才是它们的极限。

Experiment 6: Reading a Button Press

Introduction

到目前为止,我们主要关注输出。现在我们要走到频谱的另一端,并连同输入一起玩。在实验二中,我们使用模拟输入来读取电位器。在这个实验中,我们将通过使用数字输入来读取最常见和最简单的输入之一 – 按钮。我们将使用它来循环RGB上的不同颜色。

Parts Needed

You will need the following parts:

  • 1x Breadboard
  • 1x micro:bit
  • 1x micro:bit Breakout with Headers
  • 1x RGB LED
  • 3x 100Ω Resistors
  • 8x Jumper Wires
  • 1x Push Button
  • 1x 10kΩ Resistor

Didn’t Get the SIK for micro:bit?

If you are conducting this experiment and didn’t get the Inventor’s Kit, we suggest using these parts:

Suggested Reading

Before continuing with this experiment, we recommend you be somewhat familiar with the concepts in these tutorials:

Introducing the Push Button

alt text

 

瞬时按钮仅在按下时关闭或接通电路。按钮有四个引脚,分成两组两个引脚。当你按下按钮并获得一个很好的“咔嗒”声时,按钮桥接两组引脚,并允许电流流过电路。

How do you know which pins are paired up? The buttons included in this kit will only fit across the breadboard ditch in one direction. Once you get the button pressed firmly into the breadboard (across the ditch), the pins are horizontally paired. The pins toward the top of the breadboard are connected, and the pins toward the button of the breadboard are connected.

你怎么知道哪个引脚配对?此套件中包含的按钮仅适用于一个方向上的面包板沟。一旦将按钮牢固地按入面包板(穿过沟渠),这些引脚就会水平配对。面向面包板顶部的引脚已连接,面向面包板按钮的引脚已连接。

注意:并非所有按钮都共享此引脚格式。请参考您特定按钮的数据表以确定哪些引脚配对。

Hardware Hookup

Ready to start hooking everything up? Check out the wiring diagram and hookup table below to see how everything is connected.

Pay special attention to the component’s markings indicating how to place it on the breadboard. Polarized components can only be connected to a circuit in one direction.

Wiring Diagram for the Experiment

alt text

Having a hard time seeing the circuit? Click on the wiring diagram for a closer look.

Note: The full-sized breadboard
注意:全尺寸的面包板电源导轨有中间断开的情况。如果最终使用电源导轨的下半部分,则需要在上端和下端之间跳转。

Run Your Script

alt text

Code to Note

 

micro:bit上的引脚为低电平有效,这意味着外部按钮应连接到引脚并接地以通过按钮触发事件。这在MicroPython中无法更改,因为它可以在MakeCode中进行更改。我们还发现,MicroPython的中断时间非常困难,并且一次只能运行多个线程。使用MakeCode,可以运行多个线程。

pass

 

由于中断在MicroPython中非常困难,我们决定使用pass

pass是一种处理来自while 循环的外部触发器而不影响while 循环的方式。在这种情况下,外部触发器是否按钮已被按下。这是使用中断的一种欺骗手段。我们可以连续检查micro:bit上的引脚16,以查看按钮是否被按下。

iter

 

iter()_方法创建一个对象,可以一次迭代或增加一个元素,直到指定的结束。在迭代结束时,会引发异常:“StopIteration”。

try and exceptiterator

tryexcept允许程序捕捉意外(或在这种情况下预期)错误,并处理错误,除非程序员想要。在这种情况下的错误将是iter 函数如何让程序知道它已经超过了最后的可迭代值。iter 方法引发的异常是“StopIteration”。我们正在“尝试”下一个异常,直到意外出现。一旦意外出现,我们退出尝试并移至except,这将再次启动迭代器。

What You Should See

 

当你按下按钮时,RGB将变成一种颜色。当再次按下时,颜色会改变,而另一次按则会再次改变颜色。再按一次,它会关闭。每次按下按钮,它都会增加一个变量,然后我们检查它以设置颜色。如果变量超过2的值,我们将它重置为0,这是关闭的。

Troubleshooting

Light Not Turning On

 

按钮是方形的,正因为如此,很容易出错。给它一个90度的扭曲,看看它是否开始工作。

Underwhelmed

 

别担心;这些电路都是非常精简的,以便轻松玩游戏组件,但一旦将它们放在一起,天空才是极限。不过请记住,这些都是钢铁侠套装的基石。

Experiment 7: Reading the Temperature Sensor

介绍

 

温度传感器正是它听起来像 – 用于测量环境温度的传感器。在此实验中,您将读取温度传感器的原始0-1023值,计算实际温度,然后通过micro:bit上的LED阵列打印出来。

Parts Needed

You will need the following parts:

  • 1x Breadboard
  • 1x micro:bit
  • 1x micro:bit Breakout with Headers
  • 3x Jumper Wires
  • 1x TMP36 Temperature Sensor

Didn’t Get the SIK for micro:bit?

If you are conducting this experiment and didn’t get the Inventor’s Kit, we suggest using these parts:

Introducing the TMP36 Temperature Sensor

alt text

 

TMP36是一款低电压精密摄氏温度传感器。它提供与摄氏温度成线性比例的电压输出。它也不需要任何外部校准来提供+ 25°C时±1°C和-40°C至+ 125°C温度范围内±2°C的典型精度。使用10 mV /°C的比例因子,输出电压可以轻松转换为温度。

 

如果您正在查看带有文字的一面,中心引脚是信号引脚,左侧引脚是电源电压(本教程中为3.3V),右侧引脚接地。

专业提示:TMP36看起来很像一个晶体管。在TMP36的顶部放一个指甲油抛光点,这样能很容易找到。

硬件连接

Ready to start hooking everything up? Check out the wiring diagram below to see how everything is connected.

Pay special attention to the component’s markings indicating how to place it on the breadboard. Polarized components can only be connected to a circuit in one direction.

请注意:温度传感器只能连接到一个方向的电路。请参阅下面的温度传感器引脚 – TMP36。

实验连线图

alt text

Having a hard time seeing the circuit? Click on the wiring diagram for a closer look.

运行脚本

alt text

编程注意

str

 

我们已经介绍了display.show() ,但是我们需要在将数字(温度)转换为字符串(类型)之前将其显示到micro:bit 5×5 LED阵列。 MicroPython中的类型转换是一个简单的str,它放置在保持类型编号温度的变量前面。

挑战:你如何修改这段代码来获得华氏度的温度?

你将会看到的现象

当您的micro:bit打开时,TMP36温度传感器的温度读数将显示并在LED阵列上滚动。

故障排除

温度值不变

用手指捏住传感器加热,或者用一个冰袋将其冷却。

温度传感器真的很热!

你已经把它连接到后面!立即拔下你的micro:bit,让传感器冷却下来,然后仔细检查你的接线。如果您足够快地发现,您的传感器可能没有受到损坏,并且可能仍然有效。

实验八:使用伺服电机

介绍

本实验是对您介绍伺服电机,该电机是一种智能电机,您可以将其旋转到特定的角度位置。您将其编程为旋转到一系列位置,然后扫过整个运动范围,然后重复。

Parts Needed

You will need the following parts:

  • 1x 面包板
  • 1x micro:bit
  • 1x micro:bit Breakout with Headers
  • 1x 伺服电机
  • 3x 杜邦线

Didn’t Get the SIK for micro:bit?

If you are conducting this experiment and didn’t get the Inventor’s Kit, we suggest using these parts:

建议阅读

Before continuing with this experiment, we recommend you be familiar with the concepts in the following tutorial:

介绍伺服电机

alt text

 

与大多数电机不断旋转的动作不同,伺服电机可以旋转并保持特定的角度,直到它被告知旋转到不同的角度。您可以通过发送一个PWM(脉宽调制)脉冲串来控制伺服的角度; PWM信号被映射到从0到180度的特定角度。

伺服内部有一个齿轮箱连接到驱动轴的电机。还有一个电位器,用于反馈伺服机构的旋转位置,然后与输入的PWM信号进行比较。伺服相应地进行调整以匹配两个信号。

 

在这个实验中,伺服电源通过红线上的3.3伏电源和黑线上的地线供电;白线连接到引脚P0。

硬件连接

Ready to start hooking everything up? Check out the wiring diagram below to see how everything is connected.

Pay special attention to the component’s markings indicating how to place it on the breadboard. Polarized components can only be connected to a circuit in one direction.

 

连接3x跳线到伺服器上的3针插座。这将使面包板伺服更容易接入。

实验电路图

alt text

Having a hard time seeing the circuit? Click on the wiring diagram for a closer look.

运行脚本

alt text

编程注意

 

在micro:bit中使用MicroPython的主要缺点之一是无法导入第三方模块。或者至少,我们没有任何运气将两个Python文件闪存到micro:bit。这段代码似乎很长,因为我们必须将Servo Class代码粘贴到我们的脚本中。忽略伺服类代码,让我们看看永久循环内发生了什么。

range

范围函数生成一个数字列表。在这个实验中,我们正在生成一个从0-90增加5的列表。

Servo(pin0).write_angle()

 

伺服类在引脚0作为参数的语句中调用。.write_angle()函数是伺服移动的方式 – 通过括号中指定的数字映射到伺服电机上的度数。

你应该看到的现象

通电后,您应该看到伺服器移动到一个位置(0度),然后开始前后扫动180度,直到关闭或告诉它转到不同的角度。

挑战:你将如何修改这个代码来让按钮A上的伺服扫动到180度?

故障排除

伺服不扭转

即使使用彩色电线,向后插入伺服器仍然非常容易。这可能是这种情况。

仍然不工作

我们犯了一个或两个错误,只是忘记将电源(红色和黑色线)连接到3.3伏和地(GND)。

实验九:使用蜂鸣器

介绍

在这个实验中,我们将再次填补数字世界和模拟世界之间的差距。我们将使用压电式蜂鸣器,当您施加电压时会产生一个小的“咔嗒”声(尝试!)。本身并不令人兴奋,但如果每秒打开和关闭电压数百次,压电式蜂鸣器将产生一个音调。如果你把一串音调串在一起,你就获得了音乐!这个电路和一组代码块将创建一个简单的声音机器。

Parts Needed

You will need the following parts:

  • 1x 面包板
  • 1x micro:bit
  • 1x micro:bit Breakout with Headers
  • 1x Piezo Buzzer
  • 2x Momentary Push Buttons
  • 7x 杜邦线

Didn’t Get the SIK for micro:bit?

If you are conducting this experiment and didn’t get the Inventor’s Kit, we suggest using these parts:

 介绍蜂鸣器

alt text

 

蜂鸣器是一个小部件,其中有一块金属片,当您在其上施加电压时会移动。这个动作会产生一个很小的声音,或者“咔嗒”。如果您打开和关闭电压足够快,您会听到不同的嘟嘟声,尖叫声,啁啾声和嗡嗡声。您将使用PWM来控制打开和关闭压电的速度 – 反过来,蜂鸣器发出的音频。调整PWM可让您从蜂鸣器中获得合理的音符。

alt text

 

如果您将蜂鸣器翻转过来并看向底部,您会看到一个针脚旁边有一个(+)。该引脚连接到来自P0引脚的信号。另一个引脚应该接地。

硬件连接

Ready to start hooking everything up? Check out the wiring diagram below to see how everything is connected.

Pay special attention to the component’s markings indicating how to place it on the breadboard. Polarized components can only be connected to a circuit in one direction.

实验连线图

alt text  ??

Having a hard time seeing the circuit? Click on the wiring diagram for a closer look.

注意:全尺寸的面包板电源导轨有中间断开的情况。如果最终使用电源导轨的下半部分,则需要在上端和下端之间跳转。

运行脚本

alt text

编程注意

music

MicroPython有一个很棒的音乐和声音模块。我们花了几个小时在REPL中产生音调和写歌。当你学会在micro:bit上创作你自己的音乐时,我们强烈建议使用REPL来熟悉所有的声音 – 在你想要看到(听到)你能做什么时,额外的help()将会很棒。

音乐模块内置21种旋律。要查看列表,请在Mu编辑器中键入music.play(_... ,然后弹出列表。

 

要获得有关音乐模块的深入教程,请单击此处

music.play()

 

要弹奏乐曲,您需要指定一个音符(A,C#,F),一个八度(0-8)和一个持续时间(音符将播放多长时间)。例如,如果按下引脚15上的按钮,则八度音阶4中的音符C将播放持续时间为8。

你应该看到的现象

 

你应该看到 – 呃,什么都没有!你应该听到 – 每个按钮都有自己的调子。享受您的音响设备,随时更换您选择的歌曲和曲调。添加更多按钮和播放语句以制作自定义钢琴!

 

再试一次,但这次用真正的扬声器。在按下按钮时,您可以播放葬礼进行曲,生日快乐或带有更好音频的Nyan Cat主题!

故障排除

没有声音

 

鉴于压电式蜂鸣器的尺寸和形状,很容易错过面包板上的正确孔。尝试双重检查其位置。

另外,请仔细检查以确保按钮连接正确。如果你误接线了,那么无论你是否按下按钮,电路都不会通路。

实验十:使用加速度计

介绍

在本实验中,您将结合使用micro:bit上的加速度计来测量micro:bit的方向并使用它来控制伺服器的角度。

 

准备摇动,拨动和滚动?

Parts Needed

You will need the following parts:

  • 1x面包板
  • 1x micro:bit
  • 1x micro:bit Breakout with Headers
  • 1x Hobby Servo
  • 3x 杜邦线

Didn’t Get the SIK for micro:bit?

If you are conducting this experiment and didn’t get the Inventor’s Kit, we suggest using these parts:

介绍加速度传感器

 

加速度传感器是您在套件袋中找不到的组件。为什么?因为它在micro:bit上本身!在micro:bit的背面你可以看到一些小芯片。其中之一是加速度计。

Accel closeup

 

加速度计是一种传感器,用于测量在芯片X,Y和Z轴的所有三个维度上的重力。

alt text

 

加速度计不仅可以测量拉动芯片和芯片所在物体的原始力量,还可以检测具有特定模式的步骤,抖动和其他运动。最重要的是,您可以使用加速度计来简单检测设备的方向。你有没有想过当你将手机从肖像转为风景时,你的手机是如何知道的?这完全是因为手机中的加速度计!

硬件连接

Ready to start hooking everything up? Check out the wiring diagram below to see how everything is connected.

Pay special attention to the component’s markings indicating how to place it on the breadboard. Polarized components can only be connected to a circuit in one direction.

实验接线图

alt text

Having a hard time seeing the circuit? Click on the wiring diagram for a closer look.

运行脚本

alt text

编程注意

 

再次忽略伺服类代码,我们有一些新的东西!

accelerometer.get_x()

The accelerometer.get_x() statement will return the acceleration measurement on the x-axis as a number between -1024 and 1024, depending on the direction.

加速度计模块具有五个内置功能并可识别11个手势。要查看完整文档,请单击此处accelerometer.get_x() 语句会根据方向将x轴上的加速度测量返回为-1024和1024之间的数字。

由于存储在num 中的值需要在-1024到1024之间的范围内转换为0-180之间的角度,因此需要对其进行缩放。将比例值加90将为0-89的负加速度计值和90-180的正加速度计值设置一系列角度。

你将会看到的现象

在程序开始时,伺服应该移动到0度,然后对micro:bit的方向作出反应。如果您将micro:bit平放,伺服将处于90度。然后,如果将伺服器向左倾斜,它将朝向0值移动小于90度。如果将其移动到右侧,伺服器将向180移动。

故障排除

这看起来很落后

 

您可能会以不同的方向保持micro:bit。翻转它并再试一次!

伺服不工作

 

仔细检查你的接线!记住,红色到3.3伏,黑色接地面,白色接信号。

Resources and Going Further

资源和进一步发展

 

MicroPython是开始您的Python编程之旅的有趣和令人兴奋的方式。这里有更多的资源可以帮助你。

我们生产了许多其他套件和载板,您可以将它们连接到micro:bit,以帮助您将项目提升到一个新的水平。这里有一些进一步的阅读,可以帮助你更多地了解电子世界。

 

 

micro:climate套件实验指南

气象站套件建立在便宜,易用的micro:bit和Microsoft MakeCode之上。

micro:bot工具包实验指南

开始使用moto:bit,这是micro:bit的载板,可让您控制电机,并使用micro:bot套件的实验指南创建您自己的机器人。

micro:arcade 街机套件实验指南

我们爱游戏!我们喜欢写游戏,制作游戏,甚至建立游戏控制台。所以我们想向你介绍微型的micro:arcade套件!

micro:bit Breakout Board连接指南

How to get started with the micro:bit breakout board.如何开始使用micro:bit???

开源!

 

我们所有的实验和指南均根据知识共享署名 – 相同方式共享4.0 Unported许可协议进行许可。随意混合并重用我们的工作。但是,请分享这份爱,给我们辛勤工作得到归属!

要查看许可证的副本,请访问此链接,或写信至:Creative Commons,171 Second Street,Suite 300,San Francisco,CA 94105,USA。


 


cc

原始文章采用CC BY-SA 4.0,您可以自由地:

  • 演绎 — 修改、转换或以本作品为基础进行创作
  • 在任何用途下,甚至商业目的。
  • 只要你遵守许可协议条款,许可人就无法收回你的这些权利。

本文由翻译美国开源硬件厂商Sparkfun(火花快乐)的相关教程翻译,原始教程采用同样的CC BY-SA 4.0协议,为便于理解和方便读者学习使用,部分内容为适应国内使用场景稍有删改或整合,这些行为都是协议允许并鼓励的。

原始文章及相关素材链接:

https://learn.sparkfun.com/tutorials/getting-started-with-micropython-and-the-sparkfun-inventors-kit-for-microbit/all#experiment-2-

导线的基本知识

引言

当有人们提到金属线材一词时,他们很可能指的是一种柔软的圆柱形金属体,其直径从几毫米到几厘米不等。金属线材可以用于受力或导电场合。 金属线材的受力载荷的场合例如使用Guy规格线,但本指南将介绍的是导电场合的线材。

wire

多股导线的内部

电线是我们社会进步与建设的重要基石。 房子里的电线使我们可以打开灯,加热炉子,甚至可以打电话。 电线用于使电流从一个地方流向另一个地方。 大多数电线在金属芯周围都有绝缘层。绝缘层是其内部电荷不能自由流动并因此不传导电流的材料。 不存在绝对的绝缘体,但是具有高电阻率的一些材料例如玻璃,纸和特氟龙是非常好的电绝缘材料。 存在绝缘是因为触摸裸线可能会使电流无意中流过人体(糟糕了)或其他不应受到影响的电线。

建议阅读:

在您开始阅读本文之前,请确保您已经知道或者学习了以下教程中所罗列的内容:

单股导线与多股导线

电线的金属线芯有两种形式,多股或单股。

Solid Wire

颜色各异的单股导线

单股导线由单根金属丝构成。 一种非常常见的单股导线被称为绕线。 多股导线由许多根金属丝组成,全部束成一组。

Stranded Wire

颜色各异的多股导线

单股导线比相同尺寸的单股导线柔韧得多。 由于这个原因,当电线需要频繁地扭曲时(例如在机器人手臂中)使用多股导线。 相反,当需要很少或不需要扭曲时,例如面包板上的原型电路,使用单股线。 使用坚固的单股线可以很容易地将电线推入面包板。 尝试在面包板上使用多股线可能非常困难,因为多股线在被压入时会分开。

线径

术语“规格”用于定义线的直径。 电线的尺寸用于确定电线可安全流过的电流。 线规可以指电气性能和机械性能。 本教程将仅涵盖电气性能。 表达导线规格有两种主要系统:美国线规(AWG)标准线规(SWG) 这两者之间的差异仅限于规格定义的表格不同,对本指南并不重要。

Wire Gauges

几种不同规格导线的近似比例示意

导线可以承载的电流取决于几个不同的因素,例如导线的成分,导线长度和导线的状态。 一般来说,较粗的电线可以承载更多的电流。Amps to Gauge

导线直径与电流载荷能力参考表

在我们的项目中,通常使用22 AWG线进行原型设计和面包板搭建。 当使用面包板时,可以用单股线,因为它非常适合面包板孔。 对于涉及焊接的其他原型设计和搭建,就应该首选多股导线了。需要注意的是不要让太大的电流流经导线,它会发热热并可能熔化绝缘层!

如何剥线

安全耐用的导线连接首先需要彻底、准确的剥线。 去除外层塑料而不削到内部的电线是至关重要的。 如果电线有缺口,连接可能会断开或发生短路。

Nice Wires

没有划伤或凹坑。 这些电线已被正确剥离

工具

一个简单的手动剥线钳是一对非常像剪刀的相对的刀片。 有几个不同大小的凹槽。这允许用户将缺口尺寸与导线尺寸相匹配,这对于不损坏导线非常重要。

Wire Strippers - 30AWG (Hakko)

 

尽管使用小刀也能剥离导线,但常会因切到金属部分而损坏导线。 用刀去掉钢丝也是非常危险的! 这把刀很容易滑倒并造成使用者受伤。

剥线

Wire in Stripper

通过简单地将手柄从导线端部或所需长度约1/4英寸处挤压,使用工具上正确的凹槽,然后稍微扭曲一点,绝缘层将被切下来。

Wire After Strip

然后,通过将剥线钳拉向导线末端,绝缘层就从导线上滑下。

技巧与提示

将导线的尺寸与剥线钳中正确的槽口相匹配非常重要。 如果缺口太大,电线不会被剥离。 如果缺口太小,则存在损坏电线的风险。 使用尺寸过小的切口意味着剥离器将收口太细,挖入下面的电线。 用于多股导线时,该工具会切断电线的外环,减小电线的总直径并降低电线的强度。 实心芯线中的缺口将严重降低线材的强度和柔韧性。弯曲时导线被折断的可能性将显著增加。Damaged Wire

这根导线没有被正确地剥离,有划伤、凹坑或缺失的线股

如果电线意外地在其中留下缺口,那么最好的行动方案是切断电线的损坏部分并重新再剥一次。

如何压接接线端子

接线端子是使用机械组件用于将电路连接在一起的装置。 连接可能是暂时的,或者永久的电气连接。

有数百种类型的接线端子。 接线端子可将两段电线连接在一起,或将电线连接到电气终端上。

Connector Types

工具

压线一词再这里表达的意思是使其中一片金属或者两者共同变形来达到固定导线的目的。这个变形过程称为压线。

crimped

金属已变形,将电线夹住并固定

为了将接线端子压接到导线上,需要使用专用工具。 注意:钳子不是压线用途的! 也不是用锤子,钳子,尖嘴钳或石头。 正确使用好的压线钳将在导线和接线端子的筒体之间形成冷焊接。 如果你将一个接线端子处卷成恰好两半,你会看到一个坚固的线与端子之间的连接。错误使用工具不会实现良好的压线效果!

为什么要达到这种完美程度? 不良的压接会在电线和连接器之间留下气穴。 气穴会吸收水分,水分会导致腐蚀,腐蚀导致电阻增加,电阻增加导致热量,并最终导致连接被破坏。

Crimper Tools

上面的压线钳会给出更好的结果,但下面的压线钳也可以很好地工作

有几种不同款式的压线钳可供选择。 显示在最上面的最好的压线钳有一个内置的棘轮。 当按下把手时,它会使用棘轮传动以防止钳口向上打开。 当施加足够的压力时,棘轮将脱开并释放压线部分。 这确保了足够的压力。 这种类型的压线钳还具有宽的底座以覆盖连接器上更多的表面区域。

下图的压线钳可以达到近乎相同的结果,但它要求用户操作更加仔细。 这种压线钳的结构通常不那么坚固。 压接时必须注意确保钳口在接线端子上正确排列。 未对准将导致不理想的压接连接。 随着时间的推移,正常使用时的磨损和撕裂也会导致钳口分离而不能完全闭合。 一般来说,尽可能地挤压它就足够了。

压接线端子

有几个原因导致人们争论和反对使用单股导线与接线端子压接连接。 许多人认为压接实芯电线会在电线上产生薄弱点,从而导致断裂。 由于导线与端子不一致,因此压接连接松动的可能性也更大。 如果您必须使用实芯电线,则在将电线轻压接后将其焊接是个不错的补充措施。

首先,必须为接线端子选择正确尺寸的导线,反之亦然。 接下来,剥去导线。 裸露的导线长度应等于接线端子上金属筒的长度,通常约为6毫米左右。如果剥离的导线适合插入筒体的金属部分而没有什么空余空间,则接线端子尺寸合适。

Good Length

一个对于筒体恰当的剥线长度

请记住:如果导线不适合筒体,或过于松动,则选择导线或接线端子的尺寸错误。

然后插入导线,直到导线上的绝缘层接触到枪管末端。

Good Crimp Example

良好的示例:导线稍稍穿过筒体

然后将电线和端子放进压线钳中。 端子绝缘层的颜色需要与压接工具上的颜色相匹配。 因此,如果端子绝缘层为红色,请使用压线钳上红点标记的点。 或者,如果压线钳没有颜色标记,请参考使用侧面的标记。

接线端子应该水平放置,筒体朝上。 然后将工具垂直于端子并放置在筒体上,最靠近环(或其他连接类型)。 为了完成压接,虽然该工具受到相当大的挤压。 一般来说,过压的连接几乎是不可能的。crimped

压接完成后,试着用力将其拉开,导线和接线端子仍应保持在一起。 如果连接可以拉断开,说明压接不正确。 这是重要的测试,如果有问题就应该现在让它断开,而不是在其应用中安装之后。 以下是接线端子连接的军用规格参考表。

Mil Spec Chart

常见错误

错误尺寸的接线端子用于导线或错误的导线规格用于接线端子。

bad crimp 1

错误的压线:接线端子对于导线规格太小

小心不要剥去太多的绝缘层。

bad crimp 2

剥离的绝缘部分太多,裸露的导线部分太多

还值得一提的是,尽管不一定有害,但导线不应超出套筒的外部。 如果发生这种情况,建议修剪导线。

bad crimp 3

超出的裸露部分导线应被修剪

更多可供深入学习的资料

你现在应该熟悉导线的基本知识及其在电子领域的实用性。 无论您正在进行原型设计,改造还是制造最终产品,导线都可以成为您最好的朋友。

请查看其他链接以更多地了解与导线相关的知识。

  • 导线是用于创建电路的最基本元件。
  • 关于如何选用接线端子
  • 搭建原型电路项目,可以看看如何使用面包板

 


cc

原始文章采用CC BY-SA 4.0,您可以自由地:

  • 演绎 — 修改、转换或以本作品为基础进行创作
  • 在任何用途下,甚至商业目的。
  • 只要你遵守许可协议条款,许可人就无法收回你的这些权利。

本文由翻译美国开源硬件厂商Sparkfun(火花快乐)的相关教程翻译,原始教程采用同样的CC BY-SA 4.0协议,为便于理解和方便读者学习使用,部分内容为适应国内使用场景稍有删改或整合,这些行为都是协议允许并鼓励的。

原始文章及相关素材链接:

https://learn.sparkfun.com/tutorials/working-with-wire

接线端子和各类连接器的基础知识

引言

接线端子用于将分开的电路连接到一起。通常这些连接器用于常需要切换和断开的场合,如连接电源,连接外围电路,或者需要更换的扩展部分。

该教程涵盖内容

在本教程中,我们将介绍下面主题

  • 关于接线端子的常见术语
  • 将接线端子进行区别分类
  • 介绍上述分类之间的区别
  • 介绍如何使用极性防反的接线端子
  • 介绍如何使用极性防反的接线端子

建议先阅读

在您开始阅读本文之前,请确保您已经知道或者学习了以下教程中所罗列的内容:

接线端子术语

在我们开始讨论一些常用的连接器之前,让我们来探讨用于描述接线端子的术语。

公母端子Gender – 接线端子的公母性说明了它是用来插入还是被插入的。(哈哈,如果你还是单纯的孩子,更详细的解释估计你得去问问你父母)遗憾的是,有些被称为公头的端子,实际上是按照母头的端子来使用的。在接下来的示例中,我们将将说明这些缘由。

Male and female 2.0mm PH series JST connectors

左边公右边母的 2.0mm PH系列的JSP接线端子

极性-大多数接线端子有约定的极性方向。这种特性使得接线端子可以防止接反。

North America wall plug

有极性的美规墙上插头。 通过为插头叶片两种不同的宽度,插头只能单向进入插座

触点-触点是接线端子真正起作用的功能部分。 它们是彼此接触的金属部件,形成电气导通的连接。 这里也往往是导致连接不良的地方:触点可能变脏或氧化、或者金属弹片的弹性随时间蠕化变小而将导致触点松脱或连接不可靠。

ADH8066 mating connector

该连接器上的触点清晰可见。

间距 – 许多连接器由重复排列的一组触点组成。 连接器的间距是从一个触点的中心到下一个触点的中心的距离。这一点很重要,因为有许多接线端子外观和触点看起来非常相似,但间距可能不同,所以往往一个型号系列的端子仅仅因为这个参数不同而不同,因此在不知道此参数情况下,很容易在购买了不能配对连接端子。 

 

.1" pin header connector examples

标准Arduino上标题的引脚间距为0.1英寸。

插拔次数 – 接线端子的使用寿命都是有限的,每次接上和断开接线端子都会导致部分磨损。 数据表通常以插拔次数这一指标来表示其使用寿命,使用不同技术的接线端子插拔次数差别很大。 USB连接器可能具有数千或数万次插拔的寿命,而设计用于消费电子产品内部的板对板连接器可能会被限制为数十次插拔的寿命。 选择适合应用场景寿命的接线端子非常重要。

Connector for GS406 GPS module

GS406 GPS模块的匹配连接器。 该连接器的数据表显示该零件的插拔次数是50次。

安装方法 – 这个可能会让人有些困惑。 术语“安装”指以下几种情况:连接器如何在使用中安装(安装在面板上,自由悬挂着,电路板安装),连接器相对于其附件的角度(直角或直角),它如何机械连接(焊片焊接,表面贴片焊接,通孔焊接)。 我们将用示例对接线端子中的安装方法进一步讨论。Comparison of different mounting methods for barrel-type connectors

比较三种相同管连接器的不同安装方法:(从左到右)电路板板安装,内联电缆安装和板面安装。

抗弯折延伸部分(用于减缓应变) – 当连接器安装在电路板或电缆上时,线材拐弯处的连接往往有点脆弱。 通常提供某种类型的抗弯折延伸部分用于减缓应变,以将作用于该连接器的任何应变传递到更多更合理的结构上。 后面还有这类型的例子。

1/8" Headphone jack showing strain relief

这个1/8英寸耳机插孔带有一个应力消除”靴子“,滑过电缆以防止电缆上的力量直接传输到电气接头。

USB连接器

USB连接器有两种类型:主机和从机。 在USB标准中,两者有所不同,电缆和设备上的连接器反映了这一点。 但是,所有USB连接器都有一些共同之处

  • 极化 – USB连接器只能按正确一面插入。 从不对的方向无法插入,强行插入连接器不会工作,并可能导致其损坏。
  • 四个触点 – 所有USB连接器至少有四个触点(尽管有些可能有五个,而USB 3.0连接器有更多)。
  • 这些用于电源,接地和两条数据线(D +和D-)。 USB连接器是设计用于传输5V,高达500mA电流的连接器。
  • 屏蔽 – USB连接器是自带屏蔽的,外部包围了不属于电路的金属外壳。 这对于在具有大量电流“噪音”的环境中保持信号完好无损很重要。
  • 强大的电源连接 – 电源引脚在数据线之前先完成连接这点非常重要,以避免试图通过数据线供电。 所有USB连接器的设计都考虑到了这一点。
  • 减缓应变 – 所有USB电缆都在连接器上进行塑料包覆成型,以防止电缆上出现可能损坏电气连接的应变。

Labeled image of USB extension cable

USB延长线,标有USB连接器的一些常见功能。

USB-A接口

USB-A母头是标准的“主机”连接器类型。 这可以在计算机,集线器或任何打算将外围设备上找到。 也可以在另一端找到带有A型连接器和A型连接器的延长电缆。

USB-A ports on a laptop computer.

笔记本电脑侧面的女性USB-A端口。 蓝色连接器符合USB 3.0标准。

USB-A公头是标准的连接外围扩展设备的连接器。 大多数USB电缆的一端将以USB-A公头连接器终结,而许多设备(例如键盘和鼠标)将具有内置电缆端接有USB-A公头连接器。 也可以找到可安装在板上的USB-A公头连接器,适用于U盘等设备。

USB-A male connector examples

两种类型的USB-A公头接口,SparkFun Cerberus电缆和AVR Stick开发板。

USB-B接口

USB-B母头是外围设备的标准。 它体积稍大,但坚固耐用,所以在不限制尺寸的应用场景中,它是为USB连接提供可移动连接器的首选方法。 它通常是通孔板安装的连接器,以获得最大的可靠性,但也有板面安装的方式。

USB-B connector on an Arduino Uno

由于其低成本和耐用性,包括Uno在内的Arduino主板早已使用了USB-B母头连接器。

USB-B公头多数位于电缆的末端。 USB-B电缆无处不在,价格低廉,这也有助于USB-B连接的普及。

Male USB-B connector

SparkFun Cerberus电缆末端的USB-B公头连接器

USB-mini接口

USB-Mini连接是第一个用于较小设备的USB接口尺寸标准的尝试。 通常在较小的外围设备(MP3播放器,旧手机,小型外置硬盘驱动器)上可以找到USB-Mini母头,通常是表面贴装连接器,具有较大的尺寸稳定性。 USB-Mini逐渐被逐渐淘汰,转而使用USB-Micro连接器。

USB-Mini female connector

Protosnap Pro Mini上的USB-Mini母头接口。

USB-Mini公头是另一种仅有线缆的连接器。 与USB-B一样,它非常常见,几乎可以在任何地方以便宜的价格找到此连接线。

USB-Mini male connector

SparkFun Cerberus电缆末端的USB-Mini公头接口。

USB微型连接器

USB-Micro是USB连接器系列的新增产品。与USB-Mini一样,主要关注是缩小尺寸的问题,但USB-Micro为低速信号增加了第五个引脚,使其可用于USB-OTG(On-the-go)应用,其设备视情况而定,作为主机或外设运行。

USB-Micro母接口可以在许多新型外设上找到,例如数码相机和MP3播放器。 USB-micro作为所有新手机和平板电脑的标准充电接口,意味着充电器和数据线越来越普遍,而USB-Micro已经取代USB-Mini作为小尺寸USB连接器的选择。

USB-Micro female connector

LilyPad Arduino USB板上的USB-Micro母接口。

USB-Micro公头也是一个只有线缆的连接器。 通常有两种类型的带USB-Micro公端的电缆:一种用于连接具有USB-Micro端口的设备作为USB主设备的外设,另一种用于将USB-Micro母端口连接至USB-A母端口 ,用于支持USB-OTG的设备。

USB-Micro male connector

SparkFun Cerberus电缆上的USB-Micro公头连接器。

USB-A female to USB-Micro adapter

适配器尾纤,用于使用仅具有带标准USB外设的USB-Micro端口的USB-OTG设备。 请注意,并非所有支持USB-OTG的设备都可以使用此尾纤。

译者注:现在随着USB3.0普及和无容错设计思路的要求,更多的手机和外置设备从USB-Micro接口转向使用USB-type C接口,包括最新的苹果Macbook。但苹果手机和平板目前仍在使用苹果独家专利的lighting连接线。

维基百科上,关于各类型USB接口样式的示意图

维基百科上,关于各类型USB-Type-C接口的样式示意图

最新使用了USB-Type-C接口的苹果笔记本电脑Macbook

音频连接器

另一个熟悉的连接器是那些用于视听应用的组合–RCA俗称梅花头、莲花头和唱机。 虽然这些不能真正被认为是同一个家族,由于其结构、连接方式和原理雷同,我们将它们归为一类在此介绍。

“电话”类型连接器

您可能会立即将此连接器的1/8“版本识别为耳机末端的插头,这些连接器实际上有三种常见尺寸:6.3英寸(6.35毫米),1/8英寸(3.5英寸 毫米)和2.5毫米¼英寸尺寸连接器在专业音频和音乐界有很多用途 – 大多数电吉他和放大器上都有1/4英寸尖端套(TS)插孔,1/8英寸tip-ring- sleeve(TRS)结构的输出信号的连接器作为MP3播放器或电脑上的耳机或音响非常普遍。 一些手机将提供一个2.5毫米tip-ring-ring-sleeve(TRRS)插孔,用于连接耳机,该耳机还包括用于免提通话的麦克风。

这些连接器和电缆的普遍可用性使其成为通用连接应用的良好选择 – 例如,早在USB之前,德州仪器的图形计算器就使用2.5mm TRS连接器作为串行编程连接器。 应该记住的是,tip-sleeve(端头 – 套筒)连接器类型不可用于传输电源; 在插入过程中,尖端和套筒可能会短时间短接在一起,这可能会损坏电源。 屏蔽不足使得它们不适用于高速数据,但低速串行数据可以使用这些连接器。

1/8" TRS phone plug

耳机型TRS电话插头,1/8“。通常,尖端tip和环ring将承载立体声音频信号,而套sleeve将接地。

1/8" TS phone plug

1/8英寸手机插头,请注意此连接器上没有环ring触点。

1/8" board mount headphone jack

1/8“板载耳机插孔,带有相应引脚连接的插针标记。当未插入插孔时,内部开关将尖端和环形引脚连接到相邻的未标记引脚,从而允许插入检测。

RCA连接器

RCA俗称梅花头、莲花头,是数十年来首选的家用立体声连接器,于1940年由RCA引入家用留声机中。 它在视听领域正逐渐被HDMI等连接所取代,但无处不在的连接器和电缆使其成为家用系统的理想选择。 它已经服役了很长的时间。

母端RCA连接器通常可在设备上找到,但可以找到带有母插孔的分机电缆或转接电缆。 大多数RCA连接器都连接到四种信号类型之一:分量视频(PAL或NTSC,取决于设备的销售地),复合视频,立体声音频或S / PDIF音频。Female RCA plug, for video signals.

RCA母头连接器,用于视频信号。 通常,NTSC或PAL视频信号连接器将呈黄色。

RCA公头连接器通常在早起的影碟机和电视连接的电缆上找得到。Male RCA plugs

RCA公头。 红色和白色通常用于音频应用,红色表示右声道的音频。

电源连接器

虽然许多连接器除数据外还承载电源,但某些连接器专门用于为设备提供电源连接。 这些因应用和尺寸而异,但我们只关注一些最常见的部分。

DC直流电源插头插座

DC直流电源插头插座通常用于低成本消费类电子产品,可通过大型AC电源适配器插入墙上电源。 壁式适配器广泛适用于各种额定功率和电压,使DC直流电源插头插座成为将电源连接到小型项目的常用手段。

DC直流电源插座或插孔可以以多种类型购买:PCB安装(表面贴片焊接或通孔焊接),电缆安装或板面安装。 这些连接器中的一些将具有额外的接触点,以允许应用程序检测电源是否插入到筒状插孔中,从而允许设备在外部电源上运行时绕过电池并节省电池寿命。

Female barrel connector

DC直流电源插座。 当没有插入插头时,“插入检测”引脚将短接到“套筒”引脚。

虽然有多种方法将插头连接到电线的末端,但是通常只能在电线端子中找到公插筒连接器或“插头”。 也有可能获得预先连接到电缆的插头。

Male barrel plug

独立的DC直流电源插头,用于连接任何电源。 请注意,套筒连接设计为压接在导线上以额外消除应力。

桶式连接器仅提供两个连接,通常称为“销”或“尖端”和“套筒”。 订货时,筒体连接有三个不同的特点 – 内径(插座内插针的直径),外径(插头外侧套筒的直径)和极性(套筒电压是否为 高于或低于尖端电压)。

套筒直径通常是5.5mm或3.5mm。

销直径取决于套筒直径; 一个5.5毫米的套筒将有一个2.5毫米或2.1毫米的引脚。 不幸的是,这意味着为2.5mm引脚设计的插头将安装在2.1mm插孔中,但连接最多只能是间歇性的。 3.5毫米套筒插头通常与1.3毫米插针插孔配合。

极性是最后要考虑的方面; 通常,套管将被视为0V,并且尖端将相对于套管成为正电压。 许多设备将有一个小图标表明设备所期望的极性; 应注意遵守这一点,因为不正确的电源极性可能会损坏设备。

两个套管尺寸的长度通常为9.5毫米,但是更长和更短的套管确实存在。大部分产品均使用正极性5.5毫米套筒和2.1毫米引脚; 我们建议尽可能坚持标准,因为它更容易维修和更换。Barrel connector polarity label

AC适配器与套筒的公共极性图。 正极性(尖端正极,套管0V)是最常见的。 图表由维基百科用户提供。

“Molex”端子

大多数计算机硬盘驱动器,光盘驱动器和其他内部外围设备通过通常称为“Molex”端子供电。 为了更加准确,它是一个Molex系列8981连接器 – Molex实际上是最初在1950年代设计这种连接器的公司的名称。

Molex连接器设计用于承载大量电流:每个引脚最多11A。 对于可能需要大功率的项目(例如CNC机器或3D打印机),为项目提供动力的常用方法是使用台式PC电源并通过Molex连接器连接各种系统电路。

Molex端子就是术语公母头中有点反常的例子。 母头端子通常位于电缆的末端,并且在包围公头端子内的插针的塑料外壳内滑动。 通常情况下,连接器只能压入,非常非常紧 – 为保证连接牢固可靠,它们通常只能连接和断开数十次,因此对连断频繁的系统来说,这不是一个好的选择。

Male Molex connector

Molex端子。 连接器的引脚的公母是指整个连接器而非金属部分。

Female Molex connector

在项目电源上的公Molex端子。

IEC连接器

与Molex连接器一样,这是一种通用组件名称与单个特定项目同义的情况。 IEC连接器通常是指台式PC电源上常见的电源插口。 严格来说,这是IEC 60320-1 C13(母)和C14(公)连接器。

IEC 60320-1 C14 male connector

C14公头IEC电源插座,位于DC项目电源上。 请注意,与Molex连接器一样,连接器的公母由盖内的引脚定义。

C13 female IEC power connector

C13母IEC电源连接器,使用相当标准的交流电源电缆。 这一端的电缆可以在世界各地找到,通常在另一端使用主要的本地交流电连接器。

IEC连接器几乎专门用于交流电源输入。 在项目中使用它的好处在于,IEC对市电电缆非常普遍,并且可用于大多数国际地区的本地化市电插头!

JST连接器

我们的Arduino项目中,经常提到“2.0mm JST连接器”。 这是特定产品的又一次推广–JST是一家生产高品质连接器的日本公司,2.0mm JST连接器是PH系列双位置极性连接器。

很多单节锂聚合物离子电池均标配这种JST连接器,并且许多电路板都包含此连接器(或其引脚的焊盘孔)作为电源输入。 它具有结构紧凑,耐用并且防反的优点。 另一个可能是优点或缺点的特性,取决于你如何看待它,是因为JST连接器在插入后很难断开连接(虽然小心应用斜口钳可以帮助!)。 虽然这使得在使用过程中不可能出现故障,但这也意味着断开电池充电容易损坏电池连接器。

2-Pin JST male connector on a LilyPad Arduino USB board

LilyPad Arduino USB板上的2引脚JST公头连接器。 再次,与Molex一样,胶壳内的引脚决定了连接器的公母。

Male and female 2-pin JST connectors

公母型2针JST连接器。Male and female 2-pin JST connectors.

PH系列连接器有两个以上的接线位。 但是,我们最常用的应用是用于2位电池连接。

排母连接器

排母连接器包含几种不同的连接方式。 一般来说,一面是焊接到PCB上的一系列引脚,它们可以与PCB表面成直角(通常称为“直线”)或平行于电路板表面(易混淆地称为“右边” – “角”)。 这种连接器以各种间距(如2.54mm和2mm)出现,并且可以具有任意数量的单独的排针。

Right angle female header pin connector

FTDI基础板上的直角母头引脚连接。

最常见的针脚头是0.1英寸单排或双排连接器,它们有排针或排母,并且是用于连接Arduino板和屏蔽板的连接器。其他的间距并不少见,例如XBee无线模块使用 相同连接器的2.0mm间距的系列。

.1" pin header connector examples

Arduino Uno电路板上的0.1英寸排母连接

这部分的常见变种是圆孔排针的版本。 虽然正常版本是由冲压和折叠金属板制成的,但是圆孔排针是通过将金属加工成所需的形状而形成的。 其结果是一个更坚固的连接,具有更好的接头和更长的使用寿命,但其成本也更高。

Female machine pin headers

圆孔排针,请注意,这些连接器被设计成可以分割成较小的部分,而标准的0.1英寸母头连接器不是。还需要注意的是,并非所有非机器针头连接器都将与机器针脚配合使用。

连接到这些引脚接头的电缆通常为以下两种类型之一:带有压接连接器的单根电线或带绝缘位移连接器的带状电缆。 这些可以简单地夹在排缆杜邦线的末端,从而形成与带状电缆中每个导体的连接。 通常情况下,杜邦线只能作为母头使用,并期望公头排针与之配对。

Crimp connected header cable

六位杜邦线排缆。 每条导线都被单独剥去,连接器压接在上面,然后将连接器插入塑料胶壳中。

2x5 insulation displacement connectors on a ribbon cable

带状电缆上的2×5绝缘位移连接器(IDC)。 这种电缆可以快速组装,因为它不需要剥离单个连接器。 它的两端还有偏移头,以防止插入配对板侧连接器时接反。

临时连接器

螺丝接线端子

在某些情况下,可能需要将裸露的导线连接到电路。 螺丝端子为此提供了一个好的解决方案。 它们也适用于连接应该能够支持多种不同连接设备的情况。

螺丝端子的缺点是它们可以很容易地解开,在电路中留下一根裸露的导线。 一小撮热胶可以解决这个问题,而不会以后太难去除。

螺丝端子通常设计用于窄范围规格的电线,电线太小与太大都不行。 常见有两种类型的螺钉接线端子0.1英寸和3.5mm版本。大多数螺钉端子都是高度模块化的,只需将两个或多个较小的部分连接在一起即可轻松地以相同的间距进行扩展。

3.5mm screw terminals– > 3.5毫米间距的螺钉端子,显示要连接的导线的插入点,固定导线的螺钉以及单个单元侧面的模块化连接器,可以将多个部件组合在一起。

香蕉连接器

大多数电源测试设备(万用表,电源)都有一个非常简单的连接器,称为“香蕉插座”。 这些配对“香蕉插头”,卷曲,弹簧金属插头,意味着做一个单一的电源连接。 它们经常以可堆叠配置提供,并且可以轻松连接到任何类型的电线。 它们能够承载几安培的电流并且价格低廉。

Banana plug

可堆叠的香蕉插头。 请注意,有两种不同的方法可以插入额外的香蕉插头。

Variable power supply with banana plugs

Extech可调台式电源,前部带有香蕉插孔。

鳄鱼夹

命名原因显而易见,鳄鱼夹适用于接线柱或裸线的测试连接。 它们往往体积庞大,容易对附近的裸金属造成短路,并且具有相当差的抓地力,易于损害某些连接部位。 它们主要用于调试期间的低成本连接。

Alligator clips

“第三只手”的工具使用鳄鱼夹夹住工件,用鳄鱼夹夹住电线进行电气测试。 请注意鳄鱼夹周围的塑料套,以防止其他连接短路。

IC夹(或IC钩)

对于更精细的探测操作,市场上有各种IC夹。 这些尺寸允许用户将其夹在IC的引脚上而不接触相邻的引脚; 其中一些非常细腻,甚至可以夹在细间距的SMD元件支脚上。 这些较小的剪辑可以在逻辑分析仪和测试导线上找到,这对原型设计或故障排除电路来说非常有用。

Large IC clip

电线末端的大型IC夹。 该夹子仍然足够小,可以连接到通孔芯片上的单个支脚,而不会对邻近的引脚造成问题。

其他连接器

RJ型模块连接器

认证插孔连接器是电信设备进入本地交换机的标准配置。 通常听到的与之相关的名称(RJ45,RJ12等)不一定是正确的,中文俗称水晶头,因为RJ标志是基于位置数量,实际存在的导线数量和布线图案的组合。 例如,虽然标准以太网电缆的末端通常被称为“RJ45”,但RJ45实际上不仅意味着8位,8导体模块插孔,还意味着它与以太网连接。

这些模块化连接器可以非常有用,因为它们结合了可用性,多导体,适度的灵活性,低成本和适中的电流承载能力。 尽管这些电缆本来不是要提供大量的电源,但可用于将数据和几百毫安的数据从一个设备传输到另一个设备。 应注意确保为此类应用提供的插孔不会连接到传统的以太网端口,否则会导致损坏。

8p8c "RJ45" style modular jack

标准8p8c(8位,8芯)“RJ45”模块化插孔。 请注意,如果您打算使用此类插孔传输直流信号和电源,则必须避免使用带内置信号变压器的连接器。

D-sub型连接器

以其外壳的形状命名,D超小型连接器是计算世界的经典标准。 这种连接器有四种非常常见的品种:DA-15,DB-25,DE-15和DE-9。 管脚编号表示提供的连接数,字母组合表示管壳的大小。 因此,DE-15和DE-9具有相同的外壳尺寸,但具有不同数量的连接。

Female board-mount DE9 connector

DE-9母头板载连接器。 公母由与每个信号相关联的引脚或插座来定义,而不是整个连接器,使得该连接器尽管有效地插入到配合连接器的外壳中,仍然是母端。

DB-25和DE-9对硬件黑客最有用; 许多台式计算机仍然至少包含一个DE-9串行端口,并且通常还包含一个DB-25并行端口。 用DE-9和DB-25连接器端接的电缆也广泛使用。 与上述模块化连接器一样,这些可用于在两个设备之间提供电源和点对点通信。 同样,由于这些电缆的常用用途不包括电力传输,因此任何重新调整电缆的操作都要谨慎,这是非常重要的,因为插入标准端口的非标准设备很容易造成损坏。

更多可供深入学习的资料

现在您应该清楚哪些连接器最适合某些应用,哪些连接器将在您的下一个项目中对您有用。 请查看其他链接以更多地了解连接器。

  • Giant database 很全面的连接器和接口数据库 – 您场景的几乎任何连接器的简单介绍,如下图电脑背面的所有接口。 这是一个关于连接器基本信息的好网站,但对接口结束细节的描述不足。

  • Wikipedia article on registered jack connectors维基百科关于认证插孔连接器的文章 – 更多关于认证插孔(RJ)连接器的辨识,常被误解和误用的一些问题。
  • Wikipedia article on D-subminiature connectors维基百科有关D超小型连接器的文章 – 与认证插孔连接器一样,D型超小型标准的信息也很多。 维基百科有一篇很棒的关于它的文章。
  • Mouser电子产品目录 – 浏览电子产品供应商的目录通常是查找未识别连接器名称的好地方; Mouser增强型在线目录与打印版本一样好,而且不用浪费纸!

如果您希望浏览更多相关教程,请查看以下其他内容:

 


cc

原始文章采用CC BY-SA 4.0,您可以自由地:

  • 演绎 — 修改、转换或以本作品为基础进行创作
  • 在任何用途下,甚至商业目的。
  • 只要你遵守许可协议条款,许可人就无法收回你的这些权利。

本文由翻译美国开源硬件厂商Sparkfun(火花快乐)的相关教程翻译,原始教程采用同样的CC BY-SA 4.0协议,为便于理解和方便读者学习使用,部分内容为适应国内使用场景稍有删改或整合,这些行为都是协议允许并鼓励的。

原始文章及相关素材链接:

https://learn.sparkfun.com/tutorials/connector-basics

两种信号量:模拟量与数字量

概述

我们生活在一个模拟世界。 可以用无限细分的数量表示的颜色来绘制一个物体(即使这种差异是我们肉眼难以分辨的),我们可以听到无限种的音调,并且有无限种的我们可以闻到的气味。 所有这些模拟信号的共同特点是它们的无限可分性。

 

用数字的信号和量来处理离散或有限的领域,这意味着它们只有一组有限的值。 这可能意味着只有确定不可分割的值,即255,4,294,967,296或任何其他值,只要它不是∞(无穷大)。

Analog and digital real-life items

真实世界的中许多的事物可以用数据表示,通过模拟或数字方式进行输入。 (从左至右):时钟,万用表和操纵杆(上面的模拟,下面的数字)。

应用电子技术意味着处理模拟和数字信号,无论是输入还是输出。我们的电子项目必须以某种方式与真实的模拟世界进行交互,但我们的大多数微处理器,计算机和逻辑单元都是纯数字的方式进行处理。 这两种类型的信号就像不同的电子语言; 有些电子元件是双语的,其他的只能输入和输出其中的一种。

在本教程中,我们将介绍数字和模拟信号的基础知识,包括每个示例。 我们还将讨论模拟和数字电路及其电子元器件。

建议先阅读

模拟和数字的概念独立存在,不需要大量以前的电子知识。但在您开始阅读本文之前,还是需要确保您已经知道或者学习了以下教程中所罗列的内容:

模拟信号

定义:信号

在进一步讨论之前,我们应该谈一谈信号究竟是什么,特别是电子信号。 我们正在谈论的信号是时变的“量”,其传达某种信息。在电气工程中,随时间变化的量通常是电压,偶尔也会是电流。 所以当我们谈论信号时,只要将它们看作随时间变化的电压即可。

设备之间传递信号以发送和接收信息,这些信息可能是视频,音频或某种编码数据。 通常信号通过导线传输,但也可以通过射频(RF)波传播。 音频信号可能会在计算机的音频卡和扬声器之间传输,而数据信号可能会通过平板电脑和WiFi路由器之间的空气传播。

模拟信号图

由于信号随时间而变化,因此,将其时间绘制在水平(x轴)和电压绘制在垂直(y轴)上的图很有帮助。 查看信号图通常是识别模拟或数字信号的最简单方法; 模拟信号的电压 – 时间曲线应该平滑连续

Analog Sine Wave

尽管这些信号可能被限制在最大值和最小值的范围内,但是在该范围内仍然有无限数量的可能值。 例如,从墙上插座出来的模拟电压可能会在-120V和+ 120V(译者注:这指的是美国国家标准的市电,中国国家标准市电的峰值电压是-310V和310V)之间被限制,但是,随着分辨率越来越高,您会发现信号实际上可以有无数个值(如64.4V ,64.42V,64.424V和无限的,越来越精确的值)。

模拟信号示例

视频和音频传输通常使用模拟信号传输或记录。 例如,从旧的RCA插孔出来的分量视频线是一种编码模拟信号,通常介于0到1.073V之间。 信号微小的误差对视频的颜色或位置有很大的影响。

Composite video signal

一行表示分量视频数据的模拟信号

纯音频信号也是模拟信号。 来自麦克风的信号充满了各种频率复合而成的模拟谐波,一起产生了美妙的音乐。

数字信号

数字信号的分量必须是有限值集合中的一个。 该集合中的值的数量可以是两个之间的唯一值,并且可以两个电压相差很大的模拟量,但不是无穷大。 最常见的数字信号将是两个值之一 – 如0V或5V。 这些信号的时序图看起来像方波。

Square wave signal. Two values, either 0V or 5V.

或者数字信号可能是模拟信号波形近似拟合后的离散表示。从远处看,下面的波函数可能看起来很平滑和模拟,但是当你仔细观察时,信号拟合近似时会有微小的离散间距:

Digital Sine Wave

这是模拟信号的波形和数字信号的波形之间的巨大差异。 模拟信号的波形是平稳而连续的,数字波,正方形和离散。

数字信号的例子

并非所有的音频和视频信号都是模拟的。 视频(和音频)的HDMI等标准化信号以及音频的MIDII2SAC’97都是数字传输的。

集成电路之间的大多数通信是数字信号的。像serial(串口),I2CSPI等接口都通过一个编码的方波序列来传输数据的。

SPI square wave signals

串行外设接口(SPI)使用许多数字信号在设备之间传输数据

模拟和数字电路

模拟电子技术

大多数基本电子元件 – 电阻器,电容器,电感器,二极管,晶体管和运算放大器 – 都是模拟本质的器件。 仅由这些电子元件构建的电路通常是模拟的。

Example analog circuit

模拟电路通常是运算放大器,电阻器,电容器和其他基础电子元件的组合。 这是B类模拟音频放大器的一个例子。

模拟电路往往是非常优美的设计,具有许多组件,或者它们可以非常简单,就像两个电阻串联在一起构成分压器。但是,一般来说,设计同样功能的模拟电路的比数字电路要困难得多。需要特殊的模拟电路指导思路来设计模拟无线电接收器或模拟电池充电器; 数字元器件的存在使得这些设计更加简单。

模拟电路通常更容易受到噪声的干扰(电压中的小的不希望的变化)。 模拟信号电压的小误差在经过后续处理后可能导致明显的差错。

数字电子技术

数字电路使用数字离散信号进行操作。这些电路通常由晶体管和逻辑门以及更高级别的微控制器或其他计算芯片组成。 大多数处理器,无论它们是计算机中的大型处理器,还是小型微控制器,都属于数字电子技术。

Example digital circuit

数字电路利用诸如逻辑门或更复杂的数字IC(通常用带有从其延伸的带有标记的引脚的矩形表示)的组件来使用

数字电路通常使用数字信号的二进制格式。 这些系统将两种不同的电压分配为两种不同的逻辑电平 – 高电压(通常为5V,3.3V或1.8V)代表一个值1,而低电压(通常为0V)代表另一个0。

虽然数字电路通常比较容易设计,但它们确实比同等功能的模拟电路贵一点。

模拟和数字组合

在电路中看到模拟和数字组件的混合并不罕见。 虽然微控制器通常是数字化的,但它们通常具有内部电路,使它们能够与模拟电路(模数转换器,脉宽调制和数模转换器)进行接口。模数转换器(ADC )允许微控制器连接到模拟传感器(如光电池或温度传感器)以读取模拟电压,不太常见的数模转换器允许微控制器产生模拟电压,这在需要制造时很方便 声音。

更多可供深入学习的资料

现在您知道模拟信号和数字信号的区别了,我们建议您查看模数转换教程。 使用微控制器或任何基于逻辑的电子设备,意味着大部分时间都属于数字电路。 如果您想要感测光线,温度,或将微控制器与各种其他模拟传感器连接,则需要知道如何将它们产生的模拟电压量转换为数字量。

另外,请考虑阅读我们的脉宽调制Pulse Width Modulation(PWM)教程。 PWM是微控制器可以用来使数字信号近似成模拟信号使用的方法。

以下是其他一些主要涉及数字电路技术的主题:

或者,如果您想深入研究模拟电子技术,请考虑继续学习这些教程:

 


cc

原始文章采用CC BY-SA 4.0,您可以自由地:

  • 演绎 — 修改、转换或以本作品为基础进行创作
  • 在任何用途下,甚至商业目的。
  • 只要你遵守许可协议条款,许可人就无法收回你的这些权利。

本文由翻译美国开源硬件厂商Sparkfun(火花快乐)的相关教程翻译,原始教程采用同样的CC BY-SA 4.0协议,为便于理解和方便读者学习使用,部分内容为适应国内使用场景稍有删改或整合,这些行为都是协议允许并鼓励的。

原始文章及相关素材链接:

https://learn.sparkfun.com/tutorials/analog-vs-digital?_ga=2.115872645.205432072.1519278474-2127327188.1495905514

PCB基础知识

 

概述

电子技术和工业实践中一个非常关键的一个概念就是印刷电路板,英文缩写PCB。它甚至基础到这个行业里的人都觉得已经是不言而喻无需解释的东西。这篇教程将对印刷电路板PCB的组成和一些重要的基本概念进行说明。

接下来的内容,我们将讨论印刷电路板的组成部分,涵盖部分行业术语,生产中的装配方法,以及简单介绍设计新的印刷电路板的基本流程。

建议先阅读

在您开始阅读本文之前,请确保您已经知道或者学习了以下教程中所罗列的内容:

 

什么是印刷电路板PCB?

印刷电路板PCB是最常叫的名字,也可以称印刷连线板和印刷连线板卡。在PCB出现以前,人们通过点对点的绕线来实现相同的功能。这种不可靠的连接方法,当导线绝缘开始老化和破裂时,导致导线连接处和短路处经常出现故障。

Mass of wire wrap

绕线连接电路(图片来自维基百科用户Wilinaut)

一个重要的进步是线绕包装的发展,在每个连接点上,小规格的线材被缠绕在柱子上,形成高度耐用且易于更换的气密连接。

当电子工业的主流组成器件从真空管和继电器转变到硅器件与集成电路,电子元件的尺寸和造价开始大幅下降。电子技术遂开始在消费类产品中普及开来,由于减小尺寸和降低造价的驱动力,促使业界寻找更佳的解决方案来满足需求。因而诞生了印刷电路板的技术。

LilyPad PCB

PCB是印刷电路板的英文首字母缩写。它是一块拥有铜线和焊盘用于连接大量电路端点的板子。由上图所示,上面的轨迹线中可以看出在接线端子和电子元件之间存在着电气连接。印刷电路板上,信号和电能在不同的物理器件之间连接。焊锡能使PCB表面与电子元件的引脚电气连通。焊锡除了提供电气连通的功能外,也能为元器件提供有力的粘接附着作用。

组成

印刷电路板有点像层状蛋糕或烤宽面条 – 有不同材料的交替层,用热和粘合剂层压在一起,从而固结在一起。

alt text

让我们从上图中间开始向外各层开始介绍

FR4

FR4是一种耐燃材料等级的代号,所代表的意思是树脂材料经过燃烧状态必须能够自行熄灭的一种材料规格,它不是一种材料名称,而是一种材料等级。这个坚硬的核心给了PCB的刚性和厚度。 也有灵活的高温塑料(卡普顿或其它等效替代品)建造的柔性PCB。

你会发现许多不同厚度的PCB;产品最常用的厚度是1.6mm(0.063“),一些特殊产品,如LilyPad板和Arudino Pro Micro板使用0.8mm厚的板。

Perf board

更便宜的印刷电路板和印刷电路板(如上所示)将采用环氧树脂或酚醛树脂等其他材料制成,这些材料缺乏FR4的耐用性,但价格便宜得多。 当你焊接时,你会知道你正在使用这种类型的PCB – 它们具有非常难闻的难闻气味。 这些类型的衬底通常也可以在低端消费电子产品中找到。 酚醛树脂具有较低的热分解温度,当烙铁在电路板上过长时,会导致它们分层,产生烟雾和并且炭化。

铜箔

alt text

铜裸露的PCB,没有阻焊层或丝网印刷。

下一层是薄铜箔,用热和粘合剂将其层压到电路板上。 在常见的双面PCB上,铜被涂在基板的两侧。 在成本较低的电子小配件中,PCB可能仅在一侧具有铜。 当我们提到双面或双层板时,我们指的是我们电路板含有的铜层数(2)。 这可以少至1层或多达16层或更多。

阻焊层

铜箔顶部的层称为阻焊层。 该层为PCB提供颜色。 它被覆盖在铜层上以保持对外绝缘,使铜迹线不会与其他金属,焊料或导电钻头因意外接触而短接。 这层帮助用户焊接到正确的位置并防止焊接时产生连锡现象。

alt text

在上面的例子中,绿色阻焊层被应用于PCB的大部分,覆盖了较小的走线,但是银环和SMD焊盘暴露在外,因此可以焊接到PCB上。

在上面的例子中,绿色阻焊层被覆盖于PCB的大部分,包括较细的内部走线,但是银色圆环过孔焊盘和SMD焊盘暴露在外,方便相应元件焊接到PCB上。

丝印

PCB with silkscreen

白色丝网印刷层被印刷在阻焊层之上。 丝印为PCB增加了字母,数字和符号,使人们更容易组装和指示并提供简单指示,以更好地理解电路板。 人们经常使用丝印的标签来指示每个引脚或LED的功能。

丝印最常见的是白色,但可以使用任何油墨颜色。 黑色,灰色,红色,甚至黄色丝印颜色都广泛应用;但是,在单个电路板上看到多种颜色的情况并不常见。

术语

现在您已经了解了PCB的结构和基本概念,下面我们介绍一些在PCB设计制造和使用时常用到的术语:

  • 元器件孔 – PCB上环形元器件覆铜通孔电镀锡。

              Annular ring on resistorAnnular ring on vias

圆环过孔的例子。

  • DRC(design rule check) – 设计规则检查。 对设计运用软件进行检查,以确保设计不包含工艺能力达不到或者其它会导致问题的潜在风险,如走线太细钻孔太小等。
  • 钻孔偏移——应该钻孔的设计,或者他们实际在钻孔板上钻孔的地方。 不精确的装夹定位的钻头的引偏造成的钻孔不准是一个常见的制造问题。

Bad drill hits

钻孔偏移,但电路板功能依旧正常的钻孔

  • 手指插-露出的金属垫沿着电路板的边缘,用于在两块电路板之间建立连接。 常见的例子是计算机扩展卡或内存条以及旧版盒式游戏卡。
  • 锯齿 – 用于将板与面板分离的V型槽切的替代品。 许多钻孔聚集在一起,形成了一个薄弱点,事后可以很容易地折断该处。

LilyPad Protosnap with mouse bites

锯齿在LilyPad ProtoSnap上的咬合可以让PCB轻松拆下。

  • 焊盘 – 用于让元件焊接到的电路板,表面暴露金属的部分。

alt textalt text

PTH(镀通孔)焊盘,右侧为SMD(表面贴装器件)焊盘。

  • 拼板 – 一个大的电路板,由许多较小的电路板组成,在使用前将被拆开。 自动化的许多电路板处理设备通常在生产处理较小的电路板上会有问题,并且通过一次将多个电路板聚合在一起,使得工艺生产过程可以显着加快。
  • 钢网- 将锡膏(锡膏)印刷于电路板再经过回流焊炉连接电子零件于电路板上,是现今电子制造业最普遍的使用方法。锡膏的印刷其实有点像是在墙壁上油漆一般,所不同的,为了要更精确的将锡膏涂抹于一定位置与控制其锡膏量,所以必须要使用一片更精准的特制钢网(模版)来控制锡膏的印刷。
  • 贴片/贴片机- 将贴片元件放置在电路板上的过程及其设备。
  • 覆铜区 – 电路板上的连续铜箔区域,由边界而非路径定义。 通常也称为“敷铜”。

PCB ground pour

PCB的没有走线的各个部分区域都被大面积覆铜并与GND相连

  • 电镀通孔 – 电路板上的一个孔,该电路板上有一个环形环,并且两面都有焊盘在电路板上。 可能用于通孔元件的引线连接,通过信号并安装。

Plated through hole resistor

插入FabFM PCB中的PTH电阻器,可以进行焊接。 电阻器的腿穿过孔。 电镀孔可以在PCB的前部和PCB的后部连接到它们表面的铜箔走线。

  • Pogo金探针触点- 内置弹簧测试针加载的触点,用于进行测试或编程的临时连接。

Pogo Pin

流行的弹簧金针尖。 我们在测试设备上使用了大量的这些金针

  • 回流焊 – 熔化焊料以在焊盘和元件引线之间形成连接。
  • 丝印 – 电路板上的字母,数字,符号和图像。 通常只有一种颜色可用,分辨率通常很低。

Silkscreen

丝印将此LED标记为电源LED。

  • 铣槽 – 电路板上任何不是圆形的孔都属于此类。 槽边缘可能会也可能不会覆铜喷锡。 铣槽有时会增加成本,因为它们需要额外的铣削时间。

slot

复合的槽刀切入ProtoSnap Pro Mini。 还有很多锯齿用于拆下小块的电路板。 注意:插槽的拐角处不能做成完全直角,因为它们是用圆形铣刀切割的。

  • 焊膏 – 悬浮在凝胶介质中的焊锡小球,在放置组件之前,借助于焊膏模板将其施加到PCB上的表面安装焊盘上。 在回流焊过程中,焊膏中的焊料会熔化,从而在焊盘和部件之间形成电气和机械连接。

alt text元件放置前不久,在PCB上焊上锡膏。 一定要阅读上面关于钢网的介绍。

  • 焊锡炉 – 用于快速将焊锡板与通孔组件配合使用的罐。 通常包含少量熔化的焊料,电路板快速浸入其中,在所有暴露的焊盘上留下焊点。
  • 阻焊层 – 一层覆盖金属的防护材料,以防止短路,腐蚀和其他问题。 虽然其他颜色(红色,蓝色或黑色)也是可能的,但通常是绿色的。

alt text

阻焊层覆盖信号走线,但留下焊盘焊接

  • 连锡 – 不需要的焊锡连接的电路板上两个相邻引脚的焊锡连接成一块。
  • 表面贴装 – 允许将组件简单贴在电路板上的安装方法,而不需要引线穿过电路板上的孔。 这是今天使用的主要元件放置方法,允许电路板快速且容易安装。
  • 阻隔覆铜散热 – 用于将焊盘连接到其它处的走线。 如果焊盘没有阻隔散热的设计,则难以使焊盘达到足够高的温度以形成良好的焊点。 当您试图焊接时,不适当散热的焊盘会感觉“焊锡难以熔化”,并且需要非常长的时间进行焊接。

thermal

在左侧,过孔和焊盘都是十字连接到GND覆铜区。 在右侧,没有热量的通孔将其完全连接到地平面。

  • 覆铜点(取样点)-为了保持PCB在电镀时板上各点镀铜厚度均匀而加的铜皮,网格线或铜点。 减少蚀刻难度,因为需要更少的时间来去除不需要的铜,也可避免该区域铜箔过度电镀的情况发生。
  • PCB迹线 – 电路板上铜走线的连续路径。

Traces on PCB

将RES焊盘连接到电路板上其他位置的小迹线。 较粗大的迹线连接到5V电源引脚。

  • V切槽-通过部分切割板子,形成V槽,使板子可以很容易地沿着此V槽线折断。
  • 通孔 – 用于将信号从一层传递到另一层的板上的孔。 盖油过孔由阻焊层覆盖,以防被焊接。连接器和元件需要连接的通孔通常未被覆盖并裸露出焊盘,以便它们更容易地被焊接。

alt textalt text

同一PCB的正面和背面显示一个盖油过孔。 该过孔将来自PCB正面的信号通过电路板的中部引至背面。

  • 波峰焊 – 一种用于自动焊接通孔元件电路板的焊接方法,其中电路板通过熔化焊料的驻波,该焊料粘附在裸露的焊盘和元件引线上。

快来设计你自己的PCB吧!

你如何设计自己的PCB? PCB设计的细节深入到了这里,但如果你真的想开始自己设计PCB,这里有一些建议:

  1. 选择一个用于PCB设计的计算机辅助设计软件:市场上有许多低成本或免费的PCB设计软件。 选择套餐时需要考虑的事项:
    • 社区支持:有很多人使用这个软件包吗? 使用它的人越多,你就越容易找打你需要使用的现成元器件模型和丰富的库文件。
    • 易用性:如果使用它上手困难,你当然不会选择它。
    • 功能强大:这些软件都会有限的设计 – 层数,组件数量,板的尺寸大小等。它们中的大多数允许您支付许可证以升级其功能。
    • 可迁移性:一些免费软件不允许您导出或转换您的设计,只能将您锁定到指定的供应商来制造你的电路板。 也许这是用你支付的制造价格来支付方软件开销成本,但也会限制你设计资料日后的可迁移性。
  2. 看看其他人的电路板布局设计,尤其是优秀的产品,看看他们做的设计细节,反思其中原因,对比你自己会不会如此设计。现在,找到开源硬件的原始设计资料比以往更容易。
  3. 不断练习,温故知新
  4. 不要过高估计自己的能力,宝贵的经验都是多次实践中累积起来的。 你的第一块电路板设计会有很多问题。 你的第20块电路板设计会少一点问题,但仍然会有一些。 你无法轻易完全摆脱电路板设计中的各种问题。
  5. 原理图非常重要。 对一个没有良好原理图保证进行电路板设计是徒劳的。

最后,谈谈设计自己的电路板的实用性。 如果您打算制作一个或两个以上的特定项目,设计电路板的投资回报相当不错 – 洞洞板上的点对点走线很麻烦,而且它们往往不如专门设计的板可靠和稳定。 如果它变得流行,你也可以卖你的设计的产品。那可真是创客精神的体现,自己动手,物质精神双丰收。

更多可供深入学习的资料

PCB基础知识仅仅是个开始! 我们推荐您阅读更多以下资料

 


cc

原始文章采用CC BY-SA 4.0,您可以自由地:

  • 演绎 — 修改、转换或以本作品为基础进行创作
  • 在任何用途下,甚至商业目的。
  • 只要你遵守许可协议条款,许可人就无法收回你的这些权利。

本文由翻译美国开源硬件厂商Sparkfun(火花快乐)的相关教程翻译,原始教程采用同样的CC BY-SA 4.0协议,为便于理解和方便读者学习使用,部分内容为适应国内使用场景稍有删改或整合,这些行为都是协议允许并鼓励的。

原始文章及相关素材链接:

https://learn.sparkfun.com/tutorials/pcb-basics

高级版Fritz表情机器人安装

欢迎购买高级版开源表情机器人Fritz套件,如果您看完本教程后对此制作感兴趣,可以考虑从下述淘宝网址购买我们提供的配套套件:

创元素淘宝店—表情机器人套件高级版

(购买后我们将于48小时内发货给您)

安装简介

此款为高级版,保留了所有的眼球和脖子的动作,安装过程较多,需要你的耐心和毅力。相当其他渠道您所能获得的版本,我们提供的此版本经过大量实践改良,采用可多次重复拆卸的螺栓螺母等连接方式。避免使用热胶枪这类工具的麻烦,以及初学者在初次安装过程中出错后,并不会因为使用了热胶枪而导致木板等零配件的损坏。您就尽情的大胆尝试吧。

可以参考以下视频,步骤都是类似的,该主题及更多版本很快上市,提供给大家:

需要的工具:

  1. 尖嘴钳、螺丝刀、镊子等
  2. 电脑
  3. 耐心

 

总组装

以上三步骤,请观看以下视频了解细节(注意,部分步骤已经被优化,无需使用热熔胶,部分运动轴也被长螺丝替代,便于重新拆装及调整)老版视频,用热熔胶连接,较为麻烦,仅供参考。

此处要把舵机和舵盘连上

5

连接电路

Arduino固定上,连接电机的连线,插上USB。

02

装配完成!

烧录Arduino程序

烧录前可能要先检查串口驱动程序是否安装并正常工作,否则电脑可能无法识别Arduino控制板并与之通信

打开设备管理器

在“我的电脑”或者计算机,右键它弹出菜单表,点击“管理”;(仅限于win7系统的用户)


在计算机管理页面左侧列表,可以找到“设备管理器”双击它,中间会显示硬件和设备是否正常的信息。有黄色感叹号就代表者有问题。

如果您的电脑买安装此驱动,需要参考以下网址,安装CH340驱动后,电脑即可与Arduino通讯

win7 http://www.arduined.eu/files/CH341SER.zip

win8 http://www.arduined.eu/files/windows8/CH341SER.zip

Mac http://kig.re/downloads/CH341SER_MAC.ZIP

Mac https://github.com/adrianmihalko/ch340g-ch34g-ch34x-mac-os-x-driver

点击[INSTALL],就可以完成驱动程序安裝。

确保驱动程序已经安装后,即可烧录Arduino程序

打开Arduino软件,没装过Arduino的可以在下述网址中下载并找到运行程序

https://pan.baidu.com/s/1dG44Fxn

03

文件 -> 打开,找到》》》》》

双击 Fritz.ino

04

在工具菜单项里设置 板 为 Arduino Uno,串口选中。

05

点击 上传

06

成功!

配置电脑控制程序

可以在下述网址中下载并找到运行程序

https://pan.baidu.com/s/1dG44Fxn

打开fritz.exe,等待连接成功(如果使用过程中连接经常断开,可能是因为没有使用电池盒单独供电或没有打开电池盒开关及电池电量不足引起的。)

07

打开 set motor

08

全打勾,

09

拖动一下眼眉,看看是不是能控制啦!

10

恭喜你!大功告成!

查看下面视频了解更多上位机软件使用过程中的详细情形:

Arduino锂电扩展板

Arduino的锂电源板,专门为Arduino设计的锂电池充电板,Arduino的不间断供电电源,能够为Arduino提供5V的电能,同时自带的锂电池可充电,带有锂电池充电电路,锂电池保护电路,锂电池升压电路,同时还可以作为一个普通的5V电源使用。

有时,我们会对电池电压非常感兴趣,因为电池电压与电池容量有关,当锂电池输出电压很低时,意味着电池里的电也即将用完,这时,测量电池电压就有了必要。
Arduino Power Shield 中,我们设置了电压测量插针BAT_TST,当需要Arduino 使用模拟引脚测量电池电压时,只需将BAT_TST 引脚短路即可,这时,锂电池的正极,就连接到了Arduino 上的ANALOG 引脚中的A0引脚。

BAT_TST 引脚的短路可以使用跳帽或者杜邦线连接等方法。

接好后,即可编写程序。程序非常简单,只需读取模拟A0 口的电压,后在串口输出即可,程序如下。

const int analogInPin = A0; //A0 口
float voltage; //电压变量
int A0Value = 0;

void setup()
{
  Serial.begin(9600); //波特率设置
}

void loop()
{
  A0Value = analogRead(analogInPin); //读取A0 口的AD 转换数据到变量A0Value 中
  voltage = float(A0Value * 5.1 / 1023); //将AD 读出的值转换为电压值,除以1023 是因为这里的AD 转换器是10 位的,
  满量程为1023
  //乘以5.1 是因为Power Shield 供电大概在5.1V
  Serial.print("Battery Voltage = " );//Serial 口输出
  Serial.print(voltage);
  Serial.print("V\n ");
  delay(2000);
}

运行程序,Arduino 串口监视器显示如下:

此程序也可嵌入到各种程序中,在电池电压降到一定程序时,执行相应的动作。电池电压在3.2V~3.3V 时,即可认为电池电压低,电量即将耗尽。

 

PIR传感器相关知识

PIR传感器跟其他的传感器比起来可能要更加复杂(像光电池,避震器,湿度传感器),因为其中有许多影响传感器输入和输出的变量。我们会使用这个不错的图解来开始解释一个基本的传感器是如何工作的。

PIR传感器上有两个插槽,每个插槽由特殊的对红外信号敏感的材料做成。这里使用的镜头不会真的做这么多,所以我们可以看到两个插槽可以“看到”过去的一段距离。(基本上是传感器的敏感性)。当传感器没有工作时,两个传感器检测到同样数量周围环境,比如房间,墙壁或者室外辐射出来的的红外信号。当一个有温度的物体,比如一个人或只动物经过,物体一开始会挡住一半的传感器,这会在传感器两边产生微小的正向电势差。当有温度的物体离开传感器所能探测到的区域,传感器电势差就会发生反转,进而能够产生负向的电势差。这就是传感器检测到的脉冲变化。

1

PIR传感器

PIR传感器被封装在一个密封的金属盒中。在金属盒上有一个用能传递红外信号的材料做成(比较典型的是硅,因为红外线可以很容易就通过硅。)的窗口,用来保护传感器的感应部分。在窗口后面是两个平衡传感器。

2

3

你可以在上面的上面展示的图像中看到窗口的组成—两片传感材料。

4

这张图展示了传感器的内部结构,在里面有一个低噪音的结晶型场效应晶体管(一种晶体管),并将传感器的极高的阻抗缓冲到低成本的的芯片上(比如BIS0001)

透镜

PIR传感器是通用的,而且大部分的价格和灵敏度都不同。大部分的魔术都是通过光来实现的,这对于制造来说是个不错的主意:PIR传感器和电路是固定的,并且成本为几美元。而镜头只需几美分,同时很容易改变宽度,范围和感应模式。

在上图中,透镜只是一块塑料,但这意味着检测区域仅仅是两个矩形。通常我们想要一个更大的检测区域。为了做到这一点,我们使用了一个简单的镜头,比如相机里的那些镜头:他们把一个大的区域(如风景)浓缩成一个小的(在胶片上或CCD传感器上)。由于这些原因很快就会显现出来,我们想要使PIR镜头变得小巧而薄,并且可以从廉价的塑料中进行模塑,尽管它可能会增加变形。由于这个原因,传感器实际上是菲奈尔透镜:

5

菲勒透镜凝聚了光,为传感器提供了更大范围的红外线。

6

 

现在我们有了一个更大的范围。然而,请记住,我们实际上有两个传感器,更重要的是,我们不想要两个真正大的矩形区域,而是多个小区域的散射。所以我们要做的是把镜头分成多个部分,每个部分都是菲勒尔透镜。

7

在这里你可以看到多面部分

8

这一宏观的镜头在每个方面展示了不同的法伦镜头!

不同的面部和副透镜产生了一系列的检测区域,相互交错。这就是为什么镜头中心在上面的部分是“不一致的”——每一个都指向不同的PIR传感元件。

11

10

连接一个PIR传感器

11

大部分的PIR模块在两侧或者底部有一个3个引脚的接口。模块之间的输出引脚可能会有所不同,所以对于输出引脚要检查3次。位于接口右边的输出引脚经常是丝网印刷成的(至少我们的是)其中一个引脚会接地,另一个是信号输入,最后一个是接入电源。输入电压经常是3-5V的直流电压但有时会达到12V。在接地。有电源和两个开关连接的情况下有些大的模块没有直接输出,而是通过一个继电器进行操作。

一些继电器的输出是集电极,这说明该继电器需要一个上拉电阻。如果你的输出不可改变,请确保能够在信号引脚和电源引脚之间添加一个10K欧的上拉电阻。

当连接端口的间隔是0.1秒时,一个关于原型PIR传感器的简单方法就是将其连接到面包板上。一些PIR传感器上面已经有数据头了。来自adafruitde PIR有一个三引脚的便于连接导线的接线头。

12

我们的PIR传感器的红色线连接电源正极,黑线接负极,黄线是信号输出。要确保像上面展示的一样连接好线头。如果你反过来接,虽然不会损坏传感器,但是传感器不会工作。

 

测试一个PIR红外传感器

1

2

 

在当PIR传感器检测到人的动作,输出引脚就会上“升”到3.3V,然后点亮LED灯。

如果你手上有已经连好线的面包板,将电池接入之后,为了使PIR“稳定”下来,要先等待30到60秒。在这期间LED灯可能会闪烁。等到LED灯完全熄灭后,为了让灯再次亮起来,我们可以在传感器面前来回走动,挥手等等。

重触发

你手上的PIR传感器有两种选项。首先我们将会探索“重触发”选项。

当你使LED灯闪烁时,观察PIR传感器背面并确保跳线像下面展示的一样连接在L接口。

3

4

现在再次搭建好测试板电路,你可能会注意到当像上面一样连接好PIR传感器时,如果在LED灯面前移动,灯不会保持点亮,而是大约每一秒点亮和熄灭一次。这被叫做“非重触发”。

5

现在将跳线转接到H接口,如果你再次搭建好测试电路,你会注意到如果有物体移动时,灯会一直亮着。这被叫做“重触发”。

6

对于大多数的应用,“重触发”(跳线像上面展示的一样被接到H接口)模式一般会更好。

7

如果你需要将传感器连接到一些边缘触发的装置,你可能会选择将其调节至“非重触发”模式(跳线被连接到L接口)。

改变灵敏度

Adafruit PIR传感器在背部有一个调节灵敏度的微调筒。如果你的PIR传感器太灵敏或者太迟钝,你可以调整这个微调筒—顺时针调节会让传感器更加灵敏。

8

改变脉冲时间和超时时长

在PIR传感器上有两个“超时设定”。其中一个是“Tx”设定:传感器检测到动作后LED灯会点亮多久—由于有电位计,调整Adafruit PIR传感器将会变得很简单。

第二个是决定没检测到动作时LED灯会熄灭多久的“Ti”超时设定。这个设定可能没那么容易去改变,可如果你用电焊去操作,这将变得可行。

首先让我们再看下电路数据

Tx=输出引脚(V0)触发后保持高电平的时间。

Ti=在周期中,触发被抑制,仔细观察时间表。

Tx≈24576×R10×C6;  Ti≈24×R9×C7(参考原理图)

Adafruit PIR传感器,有一个标记着时间的调整电位器。这是一个被串联到一个10 k欧电阻器的1兆欧可调电阻器。同时C6的值为0.01Uf,所以

Tx=24576×(10K)×0.01uF=2.5秒(约等于)

如果Rtime电位器从顺时针方向转到1兆欧电阻,则

Tx=24576×(1010K)×0.01uF=250秒(约等于)

如果Rtime位于中间,那结果将会大概是120秒(2分钟),所以你可以尽可能的开足马力。比如说如果你想通过一个人的动作去打开一个风扇至少1分钟,将Rtime电位器调整至一圈的1/4位置。

对于较旧的或者其他PIR传感器

如果你拿到的是一个没有可调整的电位器的PIR传感器,你可以像这样找出调整电阻

9

判断R10和R9并不是很难,可惜这个PIR传感器时贴错标签的(似乎将R9和R17调换了位置),你可以通过查找BISSOO1数据表来查探引脚,然后找出分别是什么引脚—R10和引脚3连接,R9和引脚7连接,而区别电容会有点难,但是你可以通过“逆向工程”的方法并对传感器记录时间,从而得到解决。

例如;

Tx=24576*R10*C6= ~1.2秒

R10=4.7K,R10=10nF

同样

Ti=24*R9*C7=~1.2秒

R9=470K,R7=0.1Uf

你可以通过交换不同的电阻或电容来改变时间。

 

使用一个PIR传感器

将PIR传感器与微控制器连接起来非常简单。PIR是一个数字输出,所以你所需要做的就是侦听引脚来变成高电平(有检测到)或低电平(未检测到)。

很可能你会想要重新开始,所以一定要把跳线连接到H接口!用5V电压连接传感器并将其接地。然后将输出连接到数字针上。在本例中,我们将使用2引脚。

14

代码很简单,基本上就是跟踪输入2的输入是高还是低。它还会跟踪大头针的状态,这样当运动开始和停止时它就会打印出一条信息。、

  1. /*
  2. * PIR sensor tester
  3. */
  4. int ledPin = 13; // choose the pin for the LED
  5. int inputPin = 2; // choose the input pin (for PIR sensor)
  6. int pirState = LOW; // we start, assuming no motion detected
  7. int val = 0; // variable for reading the pin status
  8. void setup() {
  9. pinMode(ledPin, OUTPUT); // declare LED as output
  10. pinMode(inputPin, INPUT); // declare sensor as input
  11. Serial.begin(9600);
  12. }
  13. void loop(){
  14. val = digitalRead(inputPin); // read input value
  15. if (val == HIGH) { // check if the input is HIGH
  16. digitalWrite(ledPin, HIGH); // turn LED ON
  17. if (pirState == LOW) {
  18. // we have just turned on
  19. Serial.println(“Motion detected!”);
  20. // We only want to print on the output change, not state
  21. pirState = HIGH;
  22. }
  23. } else {
  24. digitalWrite(ledPin, LOW); // turn LED OFF
  25. if (pirState == HIGH){
  26. // we have just turned of
  27. Serial.println(“Motion ended!”);
  28. // We only want to print on the output change, not state
  29. pirState = LOW;
  30. }
  31. }
  32. }

不要忘记有些时候你不需要一个微控制器。一个PIR传感器可以连接到一个继电器(也许是一个晶体管缓冲区),而无需微管

创建你需要的Frizting元件

什么是Fritzing?

Fritzing Logo

Fritzing是一个强大的开源工具让任何一个人用于教学,分享和模仿他们的电子项目! 它允许你设计原理图,因此设计一个部件,然后可以添加到非常专业的接线图。 你甚至可以设计自己的PCB,并从你设计的文件制造。 在SparkFun,我们在教室中使用Fritzing,我们的连接指南,以及任何其他地方,我们需要展示如何将我们的电路板连接到其他硬件。

Fritzing Hookup Example

一个利用Frizting将INA169连接到Arduino的例子

Fritzing的令人敬畏的事情是,你可以为你的项目制作自己的Fritzing零件,并在社区中分享! 本教程将从头开始一步步介绍如何在Fritzing(新)零件编辑器中创建自定义Fritzing零件,

你是否需要做一个自定义的Fritzing零件?

Fritzing在软件安装的时候就带有大量的电子元件。 SparkFun还有一个Fritzing Github库,用于我们在Fritzing中尚未创建的零件。 在创建自己的零件之前,请仔细检查我们的零件是否在自带的元件库或者Github上已经有,或者如果另一个Fritzing用户已经在Fritzing论坛上创建了你所需要的零件。 如果零件已经创建,它将为你节省大量时间! 但是,如果你确定你需要的零件在Frizting里面还没有,请继续阅读!

建议阅读

本教程假设你已经熟悉Adobe Illustrator,Inscape或两者。 使用这些程序超出了本教程的范围。 如果你需要更多的信息,如何使用这些程序的eithwer,他们各自的网站有很多教程和指南,如何开始矢量图形。 如果失败,总是有Google。

这里是其他相关的教程,你阅读这个教程前可能想查看:

下载和安装

你需要下载和安装Frizting软件,并跟着教程来制作你自己的Frizting零件

请注意:如果你只需要做一个基本的IC,Frizting(新)部件编辑器让你轻松制作自定义IC,你不需要下载矢量图形编辑器。但你仍然可以往下阅读,因为本教程将在Frizting(新)零件编辑器中构建一个自定义的IC。

Fritzing

Frizting官网(可能需要科学上网)的下载页面,为你的操作系统下载最新的Frizting版本,找到你要将Fritzing安装在硬盘驱动器上的位置,然后在该位置解压缩Fritzing文件夹。

矢量图形编辑器

有很多不同类型的矢量图形编辑器。我们在SparkFun使用的矢量图形编辑器是Adobe Illustrator和Inkscape。选择你最熟悉和用起来最舒服的。如果你没有一个矢量图形编辑器,Inkscape是一个强大的开源软件选择,并且它是免费的。

Inkscape

Inkscape Logo

Inkscape下载页面,并为你的计算机下载相应的正式发行包。

Windows用户:双击可执行文件。 按照Inkscape设置向导。

Mac OS X用户:按照Inkscape网站上的最新说明进行操作。

Adobe Illustrator

Adobe Illustrator Logo

Adobe Illustrator不是免费的,但如果你已经有Adobe Creative Cloud,你可以下载它。 你还可以购买Illustrator每月会员资格。

请注意:我们与Adobe没有任何关系,只是宣传Illustrator,因为它是一个强大的软件,对在本教程中很有帮助。

Other Downloads其它需要下载的东西

Fritzing字体和模板

Fritzing使用OCR-A字体作为IC使用。 对于所有其他零件,你可以使用OCR-A和Droid Sans fonts字体。 Fritzing具有可在其网站上下载的字体和模板。 你将需要下载Fritzing的图形标准来遵循本教程。 转到他们的模板下载页面,并下载Fritzing的图形标准文件夹。 下载其zip文件后,你需要解压zip文件夹,并放置在计算机上你将要在计算机上安装字体的位置。

SparkFun Fritzing示例模板

本教程将引用很多SparkFun Fritzing示例模板。 如果你正在为SparkFun板制作Fritzing零件或想要一个起点,请从SparkFun Fritzing零件Github库中下载这组示例模板。 SparkFun Fritzing模板将具有本教程的示例,SparkFun T5403气压计SVG,要比较和处理的文件。

面包板视图

当Fritzing启动时,你将会进入欢迎界面,并且你将要转到面包板视图。

breadboard view

在面包板视图中你需要做两个重要的步骤,首先,创建你的面包板SVG,然后上传。 Fritzing更倾向于使用SVG格式,所以你的图像看起来很棒,当你放大和缩小! 其次,你需要改变连接器针脚。

请注意:如果你只制作一个基本的IC,你可以跳到本教程的编辑面包板视图部分。

Fritzing图形标准

在Fritzing网站上,有很多图形标准要遵循。 这是一个很好规范,因为遵循图形标准,你的零件可以匹配其他Fritzing零件。

模板

当你制作零件时,建议从模板开始。 有一个要引用的零件的图像,因此,当制作你的SVG文件时,该过程会更快。

提示:如果你在为EAGLE中设计的板制作自定义Fritzing零件,则可以下载ULP将板转换为SVG格式。 这样,你可以有一个准确的SVG的EAGLE板作为参考。 你可以在Cadsoft网站上找到EAGLE ULP。

现在是时候为你的面包板视图制作你的图形!

 

创建新元件

在本教程中,我们将会为SparkFun T5403气压计创建一个Frizting新零件。

T5403 Breakout Image

SparkFun T5403的EAGLE图

打开Fritzing应用程序。 你应该在程序顶部看到欢迎,面包板,示意图和PCB的选项卡。 单击面包板按钮以确保你目前在面包板视图中。

Breadboard Button

检查库中自带元件

如果你只是在Fritzing中更新一个板,首先检查是否有一个与你想要创建的Fritzing部分相接近或相关的零件。你可以在搜索栏中键入零件的名称。

Search for Part

搜索栏可以在零件窗口的顶部找到

你也可以在Fritzing的零件窗口的不同部分查看类似的零件。

Parts Window

寻找SparkFun火焰并点击可以看到一个巨大的SparkFun Fritzing零件库

从绘制IC开始

如果没有一个零件像你想要的,使用IC作为基础是一个好的开始。 单击零件窗口中的CORE选项卡。 向下滚动,直到看到IC。 在ICs部分下,单击并拖动IC图标到Breadboard窗口。

Core Tab

自定义IC很简单,因为Fritzing可以改变引脚和IC封装的数量

Dragging IC on breadboard window

更改IC的名称

 

查看右侧的“查看栏”中IC的属性。 将IC的名称更改为元件名。 然后,更改引脚部分中模块或元件的引脚数。 对于SparkFun T5403气压计,我们需要8个引脚。 你将在“面包板”视图中看到模块中IC更改后的名称。

Changing name

Fritzing(新)元件编辑器

右键单击面包板窗口中的IC,然后选择编辑(新元件编辑器)。Fritzing(新)元件编辑器弹出。

Go to Parts Editor

Fritzing(新)零件编辑器有6个主要部分,你需要在其中进行更改。那些是:

  • 面包板
  • 示意图
  • PCB
  • 图标
  • 元数据
  • 连接器

真的没有你需要遵循的命令。在做了几个不同的自定义部件后,你可能会最终在一个视图开始之前的其他工作。在本教程中,我们只是去一个个讲述教程。

作者注释:我发现,对于具有大量引脚的板,从连接器视图开始的板可以节省更多的时间,因为你可以在列表中更快地命名连接器引脚。

在继续之前,最好先保存为新零件。如果你需要在制作自定义部件时随时停止,你可以在将来再次使用。转到文件。然后,选择另存为新零件

Save as new Part

如果需要,你可以选择命名前缀


让我们继续面包板视图!

自定义面包板SVG

创建文件

打开矢量图形编辑器并创建一个新文件。文件的图像大小应与你的开发板的大小相同。SparkFun T5403气压计爆破尺寸为1“x 0.650”。你将要使用一个好的命名约定保存文件,因为在创建Fritzing部分时最终需要3个不同的svg文件。

Illustrator用户: 你可以通过转到文件 – >另存为,保存为SVG,然后点击保存保存。

对于此示例,面包板SVG命名为:SFE_T5403_Barometer_Breakout_breadboard.svg

使用模板作为参考

要比较不同的图层和组,你可以打开Fritzing BreadboardViewGraphic_Template.svg文件,该文件位于先前下载的Fritzing Fonts and Template文件夹中。你还可以从SparkFun Fritzing Parts Github仓库打开示例SparkFun T5403晴雨表分线板SVG模板文件。

你可以看到示例模板如何保持图层的组织。对于SparkFun T5403气压计,有一个“面包板”组。在面包板组内,它将具有一组部件,铜层,丝印组和板路径。

制作你的自定义面包板图形的提示

你现在可以创建自定义零件的面包板图形。这里有一些有用的提示!

遵循Fritzing图形标准

Here are some main color standards for Breadboard images:

这里是面包板图像的一些主要颜色标准:

为了符合Fritzing图形标准,你将要使铜触点成为铜/镀锡颜色。

Copper Green

HEX: 9A916C, RGB: 154 145 108

如果你的板上有任何部件的引脚,使用的颜色是灰色的。

Leg Grey

HEX: 8C8C8C, RGB: 140 140 140

SparkFun红色是:HEX:E62C2E,RGB:230 44 46

把事情简单化

Fritzing的伟大之处在于,你可以使你的板子变得简单或你想要的结果。由于SparkFun总是试图使我们的产品更好的修订和有很多的板,更容易和更快的我们不包括某些细节,如痕迹或每个组件,在我们的板子上。如果电路板有新的变化,如电阻值的变化,我们不必在Fritzing部分进入和更改该电阻。更多地关注重要的组件,如IC,可能这是个更好的方式来投入你的时间。它仍然会看起来不错,但工作量少!

使用已经存在的组件

如果你需要在板上的使用已经在Fritzing有的SMD LED,请继续使用它!这将节省你的时间,并保持所有的Fritzing部分具有相同的标准。如果你创建一个自定义的板子,其他人可以使用的组件,你可以在Fritzing网站上分享,让其他人也可以使用!确保在你正在使用的矢量图形编辑器中组织好组件图形,因此在以后的的板子上使用时很容易找到这些部件。

铜组中的名称连接器引脚

Naming your connectors will be a huge time saver. For the SparkFun T5403 Barometer Breakout example, under the copper group, each connector is named connector#pad.

命名你的连接器将是一个巨大的节省时间。对于SparkFun T5403气压计示例,在铜组下,每个连接器命名为连接器#垫。

Copper Layers

示例在Illustrator中。如果你使用Inkscape,你仍然需要确保连接器已正确命名。

使用ORC-A或Droid Sans字体。

坚持Fritzing字体保持所有Fritzing部分看起来一样。建议标准字体大小为5pt。然而,有时候,你不会有空间更小的板。你最好不要低于3pt,因为它开始变得更难看到,而不放大。在Fritzing的网站,他们提到使用黑色作为字体颜色。无论你的丝印颜色往往看起来更好。对于这个例子,我们使用白色,因为这是分线板的丝印颜色,它更容易阅读红色背景。

创建复合路径以制作板开口

Illustrator用户:在PCB的大小中创建路径。对于SparkFun T5403气压计,你可以使用矩形工具制作1“x 0.650”的矩形。然后,在你的板子有开口的路径。例如,你可以使用椭圆形工具,在矩形工具下,制作完整的圆形,其中有支座和连接器针脚的开口。选择所有的开孔层和底部PCB层。

Select All

确保选择底部PCB层

接下来转到Object-> Compound Path-> Make。你现在应该有一个复合的路径,你将能够看到通过Fritzing的开口。

Final Breadboard Image

最终面包板图形

保存

确保在创建自定义板后再次另存为SVG!现在,你可以继续编辑面包板视图。

面包板视图 – 零件编辑器

加载图像

创建自定义面包板图像后,你将需要在Fritzing(新)零件编辑器中加载面包板SVG。首先,返回到Fritzing(新)零件编辑器,然后单击面包板按钮进入面包板视图。转到文件 – >加载图像的视图。

Load graphic

接下来,你将选择刚刚创建的面包板SVG,然后单击打开。图形现在应该在Fritzing(新)零件编辑器中。

连接器

在Fritzing应用程序中,你可以使用彩色线连接不同的Fritzing零件,以显示零件如何连接。为了使Fritzing知道板或部件上的连接器引脚,你需要告诉Fritzing这些连接器在哪里。

连接器引脚的名称和说明

对于面包板视图,连接器窗口将位于Fritzing(新)零件编辑器的右侧。选择一个引脚以更改引脚的名称并添加描述。

Select Pin

选择任何连接器针脚进行编辑

Change Connector Pin Name

选择连接器针脚的图形

单击连接器针脚名称右侧的选择图形按钮。然后,单击连接器针脚的图形。这将设置锚点。锚点是电线连接到该连接器的位置。默认情况下,终点将显示在所选图形的中间。如果要移动终点,你可以单击终点并按住以移动。你也可以通过在连接器窗口中单击“中心”,“W”,“N”,“S”或“E”来更改终端点。

Example Terminal Placement

你可以看到更改终端点时导线位置的差异

更改连接器类型

在“连接器”窗口中更改连接器的类型。你可以选择公头,母头或焊盘。对于SparkFun T5403气压计,所有连接器针脚都是母头。

Set Connector Type

在下图中,你可以看到将连接器类型设置为公头和母头之间的差异。

Different Connector Type

顶板的连接器类型设置为公头。底板的连接器类型正确设置为母头。

对所有连接器针脚重复此操作

名称,选择适当的图形,并更改所有连接器引脚的连接器类型。你还可以在“连接器”窗口中设置“内部连接”。

原理图

自定义原理图SVG

回到Illustrator,Inkscape或你正在使用的矢量图形编辑器。在下载的字体和模板文件夹中打开Fritzing的SchematicViewGraphic_Template.svg。你还可以从SparkFun Fritzing零件Github仓库打开示例SparkFun T5403气压计原理图SVG模板文件。

当编辑原理图以匹配电路板时,你需要确保显示每个连接器引脚。你将需要更改引脚标签以匹配连接器引脚名称。根据你的部件,你可能需要调整模板原理图的大小。确保主零件符号正方形和外销的边缘之间有0.1“的空间。

Schematic Example

确保删除0.1“维度帮助程序框,因此它不会显示在最终的Fritzing原理图图形中

保存SVG

你需要确保保存为一个新的SVG。记住要有一个命名约定,很容易说明为Fritzing部分创建的其他SVG文件之间的区别。

在零件编辑器中编辑原理图视图

加载SVG

返回零件编辑器,点击原理图按钮进入原理图视图。转到文件 – >加载图像的视图。接下来,你将选择刚刚创建的原理图SVG,然后单击打开。零件现在应该在Fritzing(新)零件编辑器中。

设置连接器引脚

如果你看看右侧的连接器窗口,你会注意到你的引脚名称已经存在。当你更改连接器引脚的名称和描述时,在面包板,原理图,PCB或连接器视图中,零件编辑器将自动更改其他视图的连接器引脚名称和描述。此外,连接器类型(公头,母头或焊盘)将仍然相同。

就像在面包板视图中所做的那样,你仍然需要为每个引脚选择一个图形。点击“选择图形”按钮,并为该引脚选择适当的图形。对于示意图视图,你将要更改终端点,因此连接线在最远点连接。

最简单的方法是确保连接器引脚的图形仍然被选中,并更改连接器窗口中的终端点。对于GND图形,通过单击“S”将终点移动到南端。

Terminal Point

对所有连接器重复此操作

在更新所有连接器针脚后,你可以继续在PCB视图中编辑。

PCB视图

制作自定义PCB SVG

回到Illustrator,Inkscape或你正在使用的矢量图形编辑器。当制作自定义PCB SVG时,你需要的主要图像组是铜(其将具有所有连接器焊盘)和丝印。

创建PCB图形

你可以在创建PCB SVG,修改自定义面包板SVG或在下载的字体和模板文件夹中编辑Fritzing的PCBViewGraphic_Template.svg时重新启动。对于此示例,修改了自定义面包板SVG,并将该文件另存为一个名为SFE_T5403_Barometer_Breakout_PCB.svg的新SVG。

确保有两个铜组

设置图层时,请确保有两个铜组。所有连接器层都应在铜组中。当你这样做时,Fritzing将知道该组件在PCB的两侧都有铜连接器。

Example of PCB Layers

有两个铜组的Illustrator示例

确保连接器引脚的间距准确

重要的是让PCB连接器引脚与你的电路板精确匹配,并在引脚之间留出适当的间距。Fritzing提供PCB Fab服务。如果你或其他Fritzing用户想要使用你的自定义部件使用该服务,你将需要确保你的PCB视图是准确的。

图形标准

代替连接器引脚是铜/镀锡绿色,PCB视图连接器引脚是“铜”颜色:

Copper Color

Hex: F7BD13 RGB: 247 189 19

自定义面包板SVG的主要变化是主要的组是铜和丝网印刷。丝网仍然是白色的。

Final PCB Graphic

最终PCB图形

在零件编辑器中编辑PCB视图

返回零件编辑器,点击PCB按钮进入PCB视图。转到文件 – >加载图像的视图。接下来,你将选择刚创建的PCB SVG,然后单击打开。零件现在应该在Fritzing(新)零件编辑器中。

更新连接器引脚

为每个连接器针脚选择适当的图形,就像在面包板和示意图视图中所做的那样。

图标视图

重复使用过去的图形

转到Fritzing(新)零件编辑器,然后单击图标按钮进入图标视图。关于Icon视图的一个伟大的事情是,你可以重用你的面包板,原理图或PCB SVG的图标图像,所以没有必要做一个新的图像!所有你需要做的是去文件,并选择你想要重用的图像。对于SparkFun T5403气压计,Icon视图重新使用面包板图像。面包板图像应显示。

Reuse Past Graphic

伟大的斯科特!你现在完成了图标视图!

元数据

转到元数据视图

转到零件编辑器,然后单击元数据按钮进入元数据视图。元数据是你将添加关于你的部件的所有重要信息的地方!

元数据视图中的不同部分

标题:很自然的。这将是你的部分的名称。

日期:在Fritzing中锁定日期条目。日期应显示你创建零件的日期。如果你稍后在道路上更新部件,日期将更改为上次更新的当前日期。

作者:你会想把你的名字在这里,所以,如果你与Fritzing社区分享你的一部分,他们知道谁是谁的部分。

说明:说明应包括对电路板重要的任何事项,例如工作电压。

标签:标签显示在示意图视图中,可以更容易地识别你选择的部件。对于SparkFun T5403气压计突破,标签将更改为零件。原因是,因为Part相当小,SparkFun T5403气压计名称已经在原理图图形本身。它取决于你想要标记你的部分!

URL:考虑张贴零件的网址,这样任何人都可以获得有关零件的更多信息。

家庭:如果你有一个部分有不同的颜色,芯片包等,你会希望他们在同一个家庭。例如,如果你有一个通孔LED有不同的颜色,同一个LED的所有不同的颜色将在同一个家庭。

变体:创建全新零件时,你要确保变体是1.当你以后进行修订时,如果变体2在同一系列中,则会将下一个修订版本更改为变体2。

属性:一个放置重要细节(如零件号,针脚间距等)的地方。

标签:使用可以找到更容易和最好描述你的部分尽可能少的单词的标签。

Metadata

觉得信息有点缺乏?你可以稍后再更新此内容,当你掌握了更多信息

连接器视图

转到连接器视图

转到零件编辑器,然后单击连接器按钮进入连接器视图。在“连接器”视图中,你可以执行以下操作:

  • 更改连接器数量
  • 设置连接器类型
  • 将连接器针脚设置为通孔或SMD
  • 名称连接器引脚
  • 添加连接器引脚描述

Connectors view

你不需要更改“连接器”视图中的任何内容,因为你已经填写了其他视图中的所有信息。如果你需要做任何最后一分钟的变化,现在你可以。请记住,如果你更改此处的连接器数量,则需要返回并更新面包板,原理图和PCB视图。

保存

 

现在你可以保存你的部分!转到文件>保存

继续导出部件!

导出新零件

Fritzing应用程序中的质量检查

现在是时候在主Fritzing应用程序中检出你的新Fritzing部分。当你在Fritzing(新)零件编辑器中保存为新零件时,零件将自动显示在Fritzing主应用程序中的MINE选项卡的My Parts标签下。

在导出新的自定义零件之前,你需要检查每个视图是否看起来不错。确保你在主Fritzing应用程序,而不是Fritzing(新)零件编辑器。通过单击顶部的面包板按钮,转到面包板视图。在零件窗口中,在右侧,确保你在MINE选项卡。你应该看到你的新部分。在面包板视图上单击并拖动板。

MINE Tab

仔细检查引脚是否命名正确,并且工作正常。在原理图和PCB视图中执行相同操作。一旦进行了质量检查,就可以导出零件。

导出零件

右键单击我的零件窗口中新零件的图标,然后选择导出零件。保存你的Fritzing部分。

Export Part

恭喜你,你做了自己的Fritzing零件!

更多信息和资源

贡献Fritzing

现在你已经完成了你的任务,你可以连接其他Fritzing零件。你可以在Fritzing网站上分享你的部分或项目教程。还有更多的方法来帮助Fritzing社区!查看Fritzing Support Us页面,了解更多支持Fritzing的方法。

大批量的Fritzing零件?

如果你是使用EAGLE的开发人员或投入大量时间来制作Fritzing零件的开发人员,Fritzing团队已经开放了一个工具包,从EAGLE .brd文件制作SVG文件。强烈建议你检查是否正在创建批处理的SVG板文件准备Fritzing。他们在Fritzing Google代码页上有源代码


cc

原始文章采用CC BY-SA 4.0,您可以自由地:

  • 演绎 — 修改、转换或以本作品为基础进行创作
  • 在任何用途下,甚至商业目的。
  • 只要你遵守许可协议条款,许可人就无法收回你的这些权利。

本文由翻译美国开源硬件厂商Sparkfun(火花快乐)的相关教程翻译,原始教程采用同样的CC BY-SA 4.0协议,为便于理解和方便读者学习使用,部分内容为适应国内使用场景稍有删改或整合,这些行为都是协议允许并鼓励的。

原始文章及相关素材链接:

https://learn.sparkfun.com/tutorials/make-your-own-fritzing-parts

关于步进电机的一切

什么是步进电机?

components_IMG_4838.jpg

步进电机是以不连续的步进移动的直流电机。 他们有多个线圈组织在称为“相”的组里。通过依次给每相励磁,电机将旋转, 每次一步。

通过计算机控制的步进,可以实现非常精确的定位和/或速度控制。因此,步进电机是许多精密运动控制应用的首选电机。

步进电机有许多不同的尺寸和样式和电气特性。 本指南详细说明你应该如何选择正确的电机。

4相单极电机

维基共享资源

步进电机的优点

▪  可用于定位场合 – 由于步进机以精确的可重复步骤移动,它们在卓越应用中需要精确定位,如3D打印机,CNC,相机平台和X,Y 绘图仪。一些磁盘驱动器还使用步进电机来定位读/写头。

▪ 精确的速度控制 – 精确的移动增量也允许对过程自动化和机器人的旋转速度进行出色的控制。

▪低速时能保持大扭矩 – 正常的直流电机在低速时不具有很大的扭矩。一个步进电机在低速时具有最大转矩,因此它们是一个对于需要低速度,高精度应用不错的选择。

components_IMG_4796_crop.jpg

步进电机的局限性

▪ 低效率 – 与直流电机不同,步进电机电流消耗独立于负载。.当他们空载时,他们得到的电流最多。正因如此,它们常常运行发热。

▪ 有限的高速扭矩 -一般来说,步进电机在高速时比低速具有较小的转矩 。一些步进器被优化以获得更好的高速性能 ,是它们需要与适当的驱动程序配对以实现该性能 。

▪ 没有反馈 – 与伺服电机不同,大多数步进器没有积分反馈位置。虽然可以实现运行“开环”的高精度。限位开关或通常为了安全和/或建立参考位置需要“本部”检测器。

步进电机类型

有各种各样的步进电机类型,其中一些需要非常专业的驱动程序。为了我们的目的,我们将重点介绍可用普通驱动器驱动的步进电机。它们是:永磁式或混合式步进电机,两相双极或四相单极

components_IMG_4810_crop.jpg

电机尺寸

首先要考虑的事情之一是电机必须做的工作。正如你所期望的,更大电机能够提供更多的功率。步进电机的尺寸范围从比花生较小到大如NEMA 57的怪物。

大多数电机具有额定转矩。这是你需要看看决定电机是否有足够的力矩做你想要的。

NEMA 17是用于3D打印机和小型数控铣床的常用尺寸。更小的电机找到应用于许多仿生机械上。较大的NEMA框架在CNC机床和工业应用中是常见的。

NEMA数字定义了用于安装电机的标准面板尺寸。他们不定义电机的其他特性。两个不同的NEMA 17电机可能有完全不同的电气或机械规格,并且不一定可互换。

components_IMG_4799.jpg

步骤计数

接下来要考虑的是您需要的定位分辨率。每步的步数转速范围为4至400。常用的步数为24,48和200。

分辨率通常表示为每步的度数。 1.8°电机与200步/转电机相同。

高分辨率的牺牲是速度和扭矩。高步进电机比相同尺寸下的RPM低于最大值。与这些类似尺寸的低速计数电机相比,转动这些电机所需的更高的步进速度导致更低的转矩。

components_IMG_4797.jpg

齿轮

实现高定位分辨率的另一种方法是使用齿轮传动。 一个32:1齿轮系应用于 8步/转电机的输出将产生512步电机。

齿轮系还将增加电动机的扭矩。 一些微小的齿轮步进器是能够产生令人印象深刻的扭矩。 但是权衡当然是速度。 齿轮式步进电机通常受到限制去低转速应用。

components_1253-01.jpg

轴样式

另一个要考虑的是如何电机将与驱动系统的其余部分接口。电机有多种轴类型

▪圆形或“D”轴:这些有多种标准直径,还有许多滑轮,齿轮和轴耦合器来配合设计。 “D”轴有一个扁平侧以帮助防止滑动。当涉及运用高扭矩时,这些轴形是我们能用到的

▪齿轮轴:一些轴具有磨入其中的齿轮齿。这些通常设计成与模块化齿轮系匹配丝杠轴

▪丝杠轴: 带有丝杠轴的电机用于构建直线执行器。这些的微型版本可以在许多磁盘驱动器中作为磁头定位器。

components_IMG_4814.jpg

接线

步进电机接线有许多变化。为了我们的目的,我们将专注于可以使用常用驱动程序驱动的步进器。这些是连接为2相双极或4相单极的永磁或混合步进电机。

components_IMG_4837.jpg

线圈和相位

步进电机可以具有任何数量的线圈。但是这些被以称为“相”的组连接。一相中的所有线圈被一起激发。

components_winding_types_2.png

单极与双极

单极 驱动器,总是以相同的方式给相位通电。 一个领导,“共同”领导,将总是负数。 另一个引线将始终为正。 可以实现单极驱动器 与简单的晶体管电路。 缺点是只有较低的扭矩 可以一次对一半线圈通电。

双极 驱动器使用H桥电路实际上反转通过相的电流。通过使极性交替地对相进行通电,可以使所有线圈工作以转动电动机

电机具有2组线圈。 4相单极电机具有4.两相双极电机将具有4个电线 – 每相2个。一些电机带有灵活的接线,允许您将电机作为双极或单极运行。

5-Wire Motor

This style is common in smaller unipolar motors. All of the common coil wires are tied together internally abd brought out as a 5th wire. This motor can only be driven as a unipolar motor.

6-Wire Motor

This motor only joins the common wires of 2 paired phases. These two wires can be joined to create a 5-wire unipolar motor.

Or you just can ignore them and treat it like a bipolar motor!

8-Wire Motor

The 8-wire unipolar is the most versatile motor of all. It can be driven in several ways:

  • 4-phase unipolar – All the common wires are connected together – just like a 5-wire motor.
  • 2-phase series bipolar – The phases are connected in series – just like a 6-wire motor.
  • 2-phase parallel bipolar– The phases are connected in parallel. This results in half the resistance and inductance – but requires twice the current to drive. The advantage of this wiring is higher torque and top speed.

components_IMG_4796_crop.jpg

 

驱动步进电机

Step in time, step in time
Come on, mateys, step in time
Step in time
Step in time, step in time
Step in time, step in time
Never need a reason, never need a rhyme
We step in time, we step in time

“Step In Time”
Robert B. Sherman and Richard M. Sherman

components_IMG_4805.jpg

驱动步进电机比驱动普通有刷直流电机复杂一些。步进电机需要步进控制器以及时地对相进行通电以使电机转向

components_IMG_4817_cropped.jpg

简单单极驱动器

最简单的驱动器类型可以用少量晶体管构建。 这些按顺序简单地接通和断开,以使相位通电并使电动机步机进。 单极驱动器的构建相对便宜,但只能使用单极电机。 在Arduino官网有一个很好的教程教你如何使用。

components_H-Bridge.jpg

简单的双H桥驱动器

驱动双极电机需要两个完整的H桥,因此它可以反转到相的电流。H桥可能很难从头开始构建。但是有很多H桥芯片可以简化任务。

L293D是最受欢迎和最经济的芯片之一。这些可以在大多数第一代Motor Shield的核心中发现,包括令人难以置信的流行的V1 Adafruit Motor Shield。

在Adafruit学习中有一个关于使用裸L293D和Arduino系统的优秀教程:

components_1438-00.jpg

Adafruit Motor Shield V2

Adafruit Motor Shield V2是基于L293D的基本控制器的一大进步。 V2 shield u使用两个TB6612 MOSFET驱动器 。与L293D相比,TB6612提供两倍的电流容量和更低的电压下降,来更有效地驱动你的步进电机。

有2个驱动器芯片和4个完整的H桥,每个shield可以驱动多达两个步进电机。驱动器芯片通过专用的PWM驱动器芯片与I2C接口连接。 这释放了很多 的GPIO引脚用于其他用途,并使屏蔽层也可堆叠。你最多可以叠加32个用2个IO引脚来控制64个电机!

此驱动程序的完整细节可以在学习系统中找到。

components_IMG_4840_crop.jpg

高级CNC控制器

gShield和TinyG CNC控制器板使您更接近工业级步进器的性能。这些电路板具有恒流“斩波器”驱动器,可以调节,来为电机提供最大的扭矩和速度。

TinyG CNC具有板载G代码解释器和4个电机输出,使其成为适用于中小型4轴CNC机床的完整嵌入式解决方案。

正如您所期望的,这些高级的高性能主板比较复杂,适合有经验的用户使用。

这些板及其操作的详细信息可以在TinyG WikiSynthetos Forums中找到。

 

选择合适的驱动代码驱动步进电机

components_IMG_4842_crop.jpg

现在我们来到最重要的部分:确保您的电机和驱动程序兼容。

不匹配的电机和驱动器可能会导致令人失望的性能。 或更糟:损坏电机和/或控制器。

如果你的选择不明智,你可能会遇到这个家伙:

components_691-00.jpg

了解驱动程序规格

驱动程序规范中的两个最重要的参数是:

▪ 电压 – 驱动器可以提供给电机的最大电压。

▪ 持续电流 – 驱动器可以提供给电机的最大电流。

额定的“峰值”电流不适用于步进电机。 始终遵循“持续”电流的额定值。

了解电机规格

您还需要知道电机的电气规格。 有2个关键参数:

▪ 每相的电流 – 这是电机绕组可以处理而不过热的最大电流。

▪ 每相电阻 – 这是每相的电阻

A通常表示额定电压。它通常从上面的两个参数计算,但不总是。 最好根据上述参数使用欧姆定律计算它。

components_Ohm.png

遵守定律!

步进电机的相是电感器,因此它们会抵抗电流的快速变化。 但是在每个步骤结束时或者当电机不运动时,它们表现得像纯电阻负载,并且会遵守欧姆定律.。

静止也就是步进电机吸收最大电流时。 所以欧姆定律可以让我们使用电机规格来计算驱动器的电流要求。

电压=电流x电阻

或者

电流=电压/电阻

这些公式应严格应用于所有“恒压”步进控制器。 这包括来自Adafruit的V1和V2 Motor Shields,以及几乎所有其它基于L293D的控制器。

但是一些电机具有非常低的线圈电阻。严格遵循这些公式,驱动电压将小于5v,性能会不好。这种类型的电机与恒压驱动器不匹配。这些步进器需要更专门的控制器。

违背定律?

这不可能违背欧姆定律。如果你尝试,你将必须被回答蓝烟怪物。 然而,这里还有一些其他规律在起作用。 洛伦兹,法拉第和欧姆定律的专业知识可以帮助您提高电机的性能。

步进线圈在被通电时产生磁场。 根据法拉第定律,变化的磁场在线圈中感应出电流。 根据洛伦兹定律,该电流将在产生电场的电流的相反方向上。 该反向电流被称为“反向电动势”或“反向电动势”。

这个反电动势增加了线圈的“阻抗”或有效电阻。 所以欧姆定律仍然适用 – 但这是对这个阻抗,而不是简单的相电阻。 该阻抗限制每个步骤开始时流过线圈的电流。

components_IMG_4840.jpg

斩波传动

斩波器“恒定电流”驱动通过以更高的电压驱动电机来补偿反电动势。 使用斩波器驱动几倍步进电机的额定电压的是不寻常的。

为了在这些较高的电压下保持安全,斩波器驱动器还监测输送到电动机的电流,并在它超过预设电平之前“斩断”它。

通过在更高的电压处开始,斩波器驱动器能够在步骤开始时向线圈输送更多的电流,增加可用转矩。 除了以较慢的速度增加扭矩之外,它还允许更高的最高速度。

选择斩波器驱动器并为特定电机配置它需要很好地了解电机和控制器。

常问问题

这个电机能和我的shield一起工作吗?

您需要知道电机规格以及控制器规格。 获取该信息后,请检查“将驱动程序与步进器匹配”页面,查看它们是否兼容。

这是一个NEMA 17,所以它应该工作,对吧?

NEMA框架尺寸标准仅定义安装面板的尺寸。 要确定它是否兼容,您需要知道电机的电气规格。

如果没有电机规格怎么办?

参见Jason的反向工程步进电机电线引脚。 这将告诉你相电阻。 对于相电流,您可以基于类似设计的电机和类似的相电阻进行估计。

当有疑问时,一般最好安全地使用较低的电流!

我的项目需要什么尺寸的电机?

大多数电机具有扭矩规格 – 通常为英寸/盎司或牛顿/厘米。 一英寸/盎司意味着电动机可以从轴的中心在一英寸处施加一盎司的力。 例如,它可以使用2“直径滑轮保持1盎司。

在计算项目所需的扭矩时,请确保允许加速所需和克服摩擦的额外扭矩。 将质量块从静止位置提升所需的扭矩要比将其简单地拿着更大。

.如果你的项目需要大扭矩和不高速度,考虑一个齿轮步进。

如何将我的电机连接到Motor Shield?

对于从Adafruit购买的电机,产品说明中列出了接线说明。

对于其他电机,如果可以,请检查电机规格表。

如果你没有规格表,检查Jason反向工程步进电机电线引脚

这个电源可以与我的电机工作吗?

首先确保它不超过电机或控制器的额定电压。通常可以在较低的电压下运行电机,但是你将获得较小的扭矩。

接下来,检查电流额定值。大多数步进模式一次为两相通电,因此电流额定值应至少为电机每相电流的两倍。

*这适用于恒压驱动器。 对于斩波驱动控制器,请检查控制器的说明。

components_IMG_4810_crop.jpg

资源

网上有很多优秀的有关步进电机的信息。 这里有一些我们最喜欢的链接:

Wikipedia Stepper Motor Page

RepRap Stepper Motor Page

Jones on Stepper Motors

Jason on reverse engineering the stepper wire pinouts

components_IMG_4838.jpg

 

 


本文由翻译美国开源硬件厂商Adafruit(阿达水果公司)的相关教程翻译,原始教程由Bill Earl编写,为便于理解和方便读者学习使用,我们已去函与原作者沟通关于本教程翻译中文并发布的相关使用权限,部分内容为适应国内使用场景稍有删改或整合,以上翻译内容仅用于学习交流分享,不得用于盈利等商业用途。

原始文章及相关素材链接:

https://learn.adafruit.com/all-about-stepper-motors/what-is-a-stepper-motor