分类目录归档:兴趣小组

魔方破解机器人教程

拿到套件后,第一件事情就是清点一下零件数量是否有缺,部分消耗品或配件(如USB连接线、白乳胶、镊子)外观可能因不同批次有所差异,并不影响使用,部分易得选配件(如电池)可能不会附赠。

序号 名称 数量 功能 备注
1 木板A 1 搭建魔方破解机器人主体,支撑固定其他零件
2 木板B 1 搭建魔方破解机器人主体,支撑固定其他零件
3 木板C 1 搭建魔方破解机器人主体,支撑固定其他零件
4 木板D 1 搭建魔方破解机器人主体,支撑固定其他零件
5 木板E 1 搭建魔方破解机器人主体,支撑固定其他零件
6 扩展板 1 引出主控板连线,便于与舵机直接连接
7 主控板 1 接收电脑动作信号并转换为舵机运动指令
8 塑料舵机 1 用于带动旋转魔方基底的运动 与舵盘连接处白色
9 金属舵机 1 用于保持、释放和翻转魔方 与舵盘连接处黄色
10 电池盒 1 用于存放3节五号电池并给舵机供电 仅凭USB数据线来自电脑主板的供电无法使两个舵机正常运转,使用过程中
11 螺丝螺母收纳纸盒 1 收纳用于固定舵机和主控板与木板支架的螺丝和螺母
12 高质量魔方 1 高质量魔方 低质量魔方不能容忍旋转角度误差,旋转不到位,翻动到另一个面旋转时会卡住
13 USB数据线 1 用于给主控板烧录程序以及与电脑通信接受
14 五号电池 3 用于给舵机供电 不用依靠电脑供电,舵机会因供电不足而卡顿
15 十字螺丝刀 1 用于安装螺丝螺母和电池盒与拓展板之间的供电线连接
16 镊子 1 用于不便于手伸入的位置夹持和安装螺母,尤其是带尼龙圈的紧固螺母
17 白乳胶 1 没有热熔胶时使用用于木板间连接,但固化需要数小时之久,且不可加热拆卸,容易损坏木板 推荐使用热熔胶

 

结构拼装

魔方托盘

魔方卡手

主体安装

主体安装完成后,即可参考以下照片完成安装,有旋转部位的螺丝需要使用尼龙防松螺母,保证运转过程中不会因震动而松脱。

逐步安装过程拍照:

 

舵机接线参考

G V S

端口号

5

6

电池盒接线参考

VCC

电池盒红线

GND

电池盒黑线

打开设备管理器

在“我的电脑”或者计算机,右键它弹出菜单表,点击“管理”;(仅限于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程序

打开上述文件夹后

打开

程序运行

点击Upload

成功安装后,运行上位机

下列界面显示表示已经成功和Arduino通信

填上魔方颜色后,点击SOLVE,获得解答步骤后,点击SEND,即可

主控板烧录程序成功后,开机时魔方的基座旋转舵盘会归位,翻转手臂会自动翻转魔方一次。可视此过程为开机自检。如果此过程不正常,则需要重新剥离舵盘和舵机,以调整初始位置。

基座塑料舵机初始位:与翻转手轴线平行

翻转卡手舵机初始位:应远离魔方,卡在图中红色圈相应位置

 

如魔方运转过程中卡顿,请检查电池盒开关是否打开,电池盒与扩展板接线是否牢靠?

 

提示:上位机程序看上去魔方的正面是以翻动魔方手臂的方向看去为前方,即下图所示

程序调试部分支持信息提示:

 

先简单介绍一下舵机的基本知识。舵机简单的说就是集成了直流电机、电机控制器和减速器等,并封装在一个便于安装的外壳里的伺服单元。能够利用简单的输入信号比较精确的转动给定角度的电机系统。

舵机除电源外,只要一根信号线即可;使用PPM(脉冲比例调制)信号控制;所谓“PPM”,是一个周期约20ms,其间有个宽度在2ms 左右的脉冲控制信号。一般是以1.5ms 为基准,此时舵机居中,小于1.5ms 舵机左转,大于1.5ms,舵机右转;至于角度和脉冲宽度关系各个产品不同,例如:0.5ms 对应左转90 度,2.5ms 对应右转90 度。

 

由于使用不同的舵机采用的具体脉冲不同,即便是同一型号的舵机也因为死区不一致性,初始位置安装误差等,导致原始程序在部分用户安装的魔方破解机器人上不能正常工作。现根据我们所选用的舵机(塑料舵机:Futaba S3003、金属舵机:TowerPro MG995)上图图示情况进行简单的说明。

1ms(毫秒)=1000us(微秒),所以对应的情况是

500us =  0°

1000us = 45°

1500us = 90°

2000us = 135°

2500us = 180°

变化区间2000us内涵盖角度0-180°,由此可见脉宽每增加或减少约11us,舵机摆动角度相应改变1°。

想要了解更多知识,请参考http://www.i-element.org/servo/

 

现在我们来分析上下位机中对应的需要调整的程序参数。在控制板烧录完程序以后,每次上电启动,魔方破解机器人都会进行一次魔方翻转运动,由此时,你可以观察魔方是否被正确顺滑翻转。你也可以在上位机传送命令F(Flip)翻转,让机器人执行此指令,如下图所示

此外,上位机发送的全部指令一共就三种F(Flip)、H(Hold)、T(Turn)指令默认用空格隔开,对于一段魔方解答的结果就是由这三种指令的结果组成。(为了让部分有兴趣了解其算法的朋友能深入学习,后续我们将继续补充教程,针对此结果产生的算法进行讨论)目前我们仅讨论舵机参数需要调整以确保上诉3个动作能够完整的运行。

手臂舵机(armservo)总的来说有三个位置,对应3种指令

F(flip)翻转指令必须要保证手臂和魔方高度匹配,在中间黑色示意的导向区必须保证翻转动作后能自由落下到卡位,所以两块三角形导向板之间的连接螺丝必须保持适当的松紧度。

H(hold)把持指令执行时,手臂运动到此位置时,必须保证魔方的上两层被抓手握住,在魔方基底旋转时,魔方能被正确旋拧90度。

T(turn)旋转指令执行时,手臂必须退到导向板卡槽处附近,并向上倾斜约45度,手臂在此位置时,魔方基底旋转不会被手臂任何部位所阻碍。

接下来,我们看一下,在程序中,以上三个位置对应的参数

显然,

OFF对应T指令时的位置

HOLD对应H指令时的位置

PUSH对应F指令时的位置

你可以通过上述舵机的基本知识得到相应的关系去调整此3个参数,并重新烧录程序到Arduino控制板,获得手臂位置的微调。

需要注意的是,当上位机正在运行并与控制板通信时,烧录新程序将失败,因为两个程序竞争,只有能一个程序获得通过串口与控制板通信的权利。

也部分读者可能会问,为什么不是if-else语句中if下的3个参数,那是因为我们舵机可以正反安装,当反向安装时,上面的3个参数对应的位置才有效,否则默认执行else语句下的三个参数。

基底舵机(baseservo)总的来说有四个位置,分别在指令H和T中起作用

仔细观察的读者可能已经发现,放置魔方的基底托盘并不是刚好能放下魔方,而是比魔方略大,大概宽出3-4mm。这是多方面的原因导致的,但最直接的原因就是因为翻转魔方时需要空间,同时需要兼容导向板等可能产生的误差,这个道理同样适用于卡爪上,手臂最前端的卡爪也不能是恰恰好能卡住魔方而不多留一点剩余的空间。

这种容乃误差的做法,同样会给魔方扭转过程带入其它的新问题,如卡爪和底座都有空间,那么当卡爪把持魔方,底座完全旋转90°时,问题就出现了。由于空隙的存在,魔方往往不能恰好转到90°的位置。当一个位置扭不到准确的90°时,翻转或者旋转90°再扭时,魔方将会卡壳,甚至是损坏。由于我们选配了可以容错的高质量魔方(超过20元一个,而不是那种几块钱的魔方),这个问题其实已经可以容纳非常宽松的偏差,扭不到位的魔方在侧面再拧时会自动修复不到位的一面,目测10°以内不会有问题。即便如此,我们还是希望利用程序中的修正参数,把这个问题说清楚。

 

在魔方基底旋转的过程中,有原位和90°旋转位两个基本位置。几乎是同理加上了后缀词(over)。也就是说,当魔方基底选择时,先转到over位,然后再回到基本位,利用过转的这个超调量,克服每次动作时卡爪和基底的空隙带来的魔方90°旋转不到位。

基于上述的理论,你就会知道,当每次执行H(hold)指令后,如果魔方扭不到90°的正确位置,那么你就应该要尝试调整上面的4个参数咯。

学习,理解,锻炼,在充分思考后动手,我相信这次DIY的成功一定会磨炼出你的耐心和细心,创客精神与你我一同砥砺前行吧!

从零开始学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 时,即可认为电池电压低,电量即将耗尽。

 

夏普GP2系列红外测距传感器

Acroname SHARP INFRARED RANGER COMPARISON

介绍

夏普红外线传感器具有具有体积小、功耗低、输出选项多的特点。为了最大化地发掘每个传感器的用途, 充分了解这些不同型号的红外传感器的工作原理、作用范围、交互方式是很必要的。

工作原理

根据输出的信号类型,夏普红外传感器主要可分为两类:模拟输出或数字输出。模拟信号的那一类可以提供被检测物具传感器距离转化为模拟信号输出;数字输出的一类可以比较被检测物与传感器的距离与预先设置的距离,当被检测物距离传感器的距离达到预先设定的值或者小于预先设定的值,那么传感器就会输出一个高电平。

这些传感器都采用的是三角测距原理,通过一组小型CCD(感光元件)条形阵列去计算前方物体的距离或者是判断在检测范围内是否有物体存在,为了构造一个用于计算的三角形,红外发生器会产生一个红外脉冲信号,这个光信号会遇到障碍物反射或者是没有遇到障碍物一直传播。在没有障碍物存在的情况下,这个光信号永远都不会被反射回来,此时读数表示在检测范围内没有物体存在,如果这束光被一个物体所反射回来,它会回到传感器上从而构造一个以红外发生器、光线在物体上的反射点、感光元件三点为顶点的三角形。

Acroname Sharp IR detector angle of reflection image
夏普红外接收器在近处和远处时光线与传感器水平面的角度

反射光的入射角与传感器到物体的距离有关。传感器的接收器部分具有一个精确的透镜,这使得反射光可以照射到透镜下的CCD阵列上的某一个区域,通过这一区域可以计算出入射角的角度,从而可以计算出物体到传感器的距离。这种测距方法可以免受环境光的干扰以及被检测物表面的颜色的干扰。

该用哪个传感器?

下表列出了每种传感器所能检测的距离范围,不管这种传感器返回的是具体的距离数值还是数字信号。Acroname Comparison Chart for Sharp IR Rangers
各种夏普红外传感器的对比表

夏普红外传感器测距范围比较

MODEL OUTPUT MIN. RANGE MAX RANGE
GP2D120/GP2Y0A41 Analog 1.5″ 11.8″
GP2Y0A02 Analog 8″ 59″
GP2Y0A21 Analog 4″ 30″
GP2Y0A710 Analog 36″ 216″
GP2D15 Digital 9.5″

GP2Y0A710 (‘0A710’), GP2D120GP2Y0A41GP2Y0A21 (‘0A21’), 和 GP2Y0A02 (‘0A02’) 传感器在表中所示的测距范围内可以通过模拟输出输出可靠的距离信息.。相对的,GP2D15通过判断是否有物体在其测距范围内来输出一个数字信号。这些传感器都不需要外部的时钟或者信号 ,但是为了使传感器持续工作,需要大概25mA的持续电流。

机械尺寸

除了0A710,所有的夏普红外传感器几乎都是一样的尺寸,0A710比其他的传感器都要大一点,这是为了容纳更大的透镜从而达到长达5.5米的最远测距范围 。下表列出了这些传感器的具体尺寸,在精确的制图中,确保多看几遍这个表格。

夏普红外传感器尺寸

MODEL WIDTH (MM) HEIGHT (MM) DEPTH (MM)
GP2D120/GP2Y0A41 40.75 18.9 15.5
GP2Y0A02 40.75 18.9 21.6
GP2Y0A21 40.75 18.9 15.5
GP2Y0A710 58.00 17.6 22.5
GP2D15 40.75 18.9 15.5

Acroname Size comparison of GP2Y0A710 (left), GP2Y0A02 (right) and GP2D15/120
 GP2Y0A710 (左侧), GP2Y0A02 (右侧) 和 GP2D15/120 (下方)的大小比较

非线性输出

因为在计算物体距离时是根据入射角的角度应用三角测距原理,这些传感器的输出电压和被检测物的距离的关系并不是线性变化的下图的曲线列举出了一组模拟输出的电压与被检测物距离的关系。

Acroname Example graph of Sharp IR Output Voltage vs Distance
夏普红外传感器被检测物的距离与传感器模拟输出数值的关系的一个例图

这幅图中可以发现几点有趣的事情:第一,传感器的输出在稳定范围内(10cm-80cm)与距离的关系并不是线性的反而有点像对数关系。不同的传感器的曲线可能会有轻微的不同,因此采用查找表或者参数化函数输出是个好办法,这样,每个检测器都可以被校准为基本一致,从而得到几乎线性地变化的距离数据。

第二,注意到这个输出当物体距离传感器的距离小于最小距离(10cm)时会急剧下降, 因此,这个输出数据可能会和一个更远的距离读数相混淆,如果你想让你的机器人靠近一个坚硬的物体时放慢速度,这种读数可能是灾难性的(在距离物体小于最小检测距离时,这个读数会被曲解为机器人距离当前物体仍较远),如果没有正确的处理这个错误的数据,机器人可能会全速撞向障碍物,避免这种情况发生的最简单的办法是将传感器交叉放置在机器人的长边或者是宽边上,如下图:

Acroname Example of cross-firing detectors to avoid range errors
交叉使用传感器来避免测距错误的一个例子

红外光束的模式

这些测距器所发出的光束类型是相当一致的,这束光线大约想一个足球一样,中间最宽的地方有16cm,这是一个相当窄的光束,当与伺服器一同使用测距时可以获得大量的距离数据 。

当使用夏普传感器用于机器人防撞时,尽可能获取最大的光束宽度是很有利的,这样可以获得最大限度的覆盖面积,比如说机器人的整个正面。通过交叉使用两个传感器,使它们的光束交叉(见下图)就可以轻易达到这种效果. 这种用途的传感器使用最多的是GP2D15.

Acroname Configuration of two sensors for effectively wider beam width
应用两个传感器可以获得更宽的光束宽度

获取传感器的数据

除了 GP2Y0A710, 所有的夏普红外传感器都是采用的是日本无焊端子(JST)连接器 。 这些连接器具有三条导线: ground, Vcc,和output. 由于这些传感器持续工作且不需要外部时钟来启动,和它们交互是很容易的, 但是由于它们会持续工作,所以在多个相同传感器应用在同一个机器人上时可能会相互干扰。当把多个传感器应用在机器人上是,只要记住这些传感器的工作原理,就可以避免这些干扰。

GP2Y0A710 更大,所以它采用了五针的接线,其中两根为ground,两根为Vcc。然而, 如果连接的电源能够提供大约350mA的峰值电流(大约33mA-50mA连续电流),这些线可以被焊接在一起。和别的传感器一样, GP2Y0A710也是持续工作的。 为了达到你的预期效果,一定要仔细查看每一个传感器的数据表来确保所采用的传感器是正确且适合的。

总结

夏普红外测距传感器对于机器人学可运用的传感器是一个很好的补充。 这个产品并不贵,同时功耗小,可以在狭小的空间内有着独到的距离检测范围,这种特性使得它成为在人类活动场所所采用的理想传感器,比如说在大堂,房间,或者迷宫。

虽然这些传感器并不能给出精确的距离,但是它们可以在机器人处理嘈杂的信息时第一时间提供一个很好的信息,通常来说,一个机器人知道它距离障碍物是远离还是靠近已经够它去决定下一步干什么了。

点击这里可以查看所有型号的夏普红外传感器 ,或者是使用更高级的日本北阳电机激光测距仪瑞士Mesa Imaging公司的产品.