Protopie 连接

12

阅读时间

ProtoPie Connect 入门 7 节中的第 3 节:Arduino 第 1 部分 - 与 Blokdots 连接

了解如何使用 Blokdots 与您的 Arduino 项目集成,而无需编写任何代码。

杰夫·克拉克, 用户体验设计师与 ProtoPie 培训师

简介

我们的数字体验正越来越多地延伸到电脑和手机屏幕之外。假设你想在设计中引入实体控制……一个按钮……一个可旋转的旋钮……一根你可以触摸并用手指滑动的滑条。像 Arduino Uno 这样的低成本计算板,正让想要进行实验的人更容易实现这些想法。

在本教程中,我们将制作一个气候控制原型,它既可以通过触摸屏操作,也可以通过可旋转并可按压的实体旋钮操作。这些旋钮被称为旋转编码器。即使你没听过这个术语,你也很可能在某个时刻使用过它。它们在旋转时会有明显的“咔嗒”段落感。每一次咔嗒都会让某个数值增加或减少一步——比如你车载音响的音量控制。

你将学到什么

在本教程中我们将涵盖以下内容:

**完成时间:30-60 分钟
**这取决于你搭建 Arduino 电路的经验。

Blokdots

通常在使用 Arduino 时,会涉及一点编程。如果一想到写代码就让你望而却步,也有替代方案。Blokdots 是一个运行在你电脑上的程序,让你无需编写任何代码就能为 Arduino 编程。最棒的是?它内置了与 ProtoPie Connect 的集成,这意味着你可以很快让 Pie 对实体设备的交互作出响应。


Blokdots - Arduino programming without code... sound familiar?


Blokdots——无需代码的 Arduino 编程……听起来很熟悉?

在撰写本文时,Blokdots 仍处于测试版,但它已经证明了使用实体设备可以多么快速、简单。

你需要的零件

到目前为止的所有课程,除了 ProtoPie 许可证之外都不需要额外购买。要跟着本教程操作,你需要准备一些零件:

太长不看(TL;DR)——我是新手(n00b)。请简单点。


Buy the Official Arduino Starter Kit and some rotary encoders

直接购买 官方 Arduino 入门套件,它包含本项目所需的几乎所有东西,再加上一包这种旋转编码器

开始接线!

虽然 Blokdots 负责了编码部分,但你仍然需要亲自动手把线路接起来。对于简单项目,这并不难,而且你很可能能在网上找到电路图,准确告诉你如何连接元件到 Arduino 板,即使你并不完全理解其工作原理。

按照下图连接你的 Arduino 电路。

💡 如果你需要更详细的引导,视频下方有分步骤说明。


Arduino circuit wiring diagram

开始吧!

访问 Blokdots.com 并点击右上角黄色下载按钮。由于 Blokdots 仍处于测试版,带有新功能和修复的更新会频繁发布。请务必经常检查更新。

其次,我们将使用一个已完成状态的 Pie 文件。请在这里下载:
https://cloud.protopie.io/p/35d69ddd96

现在请跟着下面的视频操作:

可尝试的内容

  • 当提高风速时,Pie 中的旋转方向是逆时针;但使用实体控制时,我们会顺时针转动编码器。看看你能否让风速旋钮与温度控制相反——逆时针增加风速,顺时针降低风速。

  • 你还接了第二个按钮,但目前还没用上。你可以拿它做什么?

救命!我的电路该怎么接?!

如果你不熟悉电路接线,不用担心!下面将介绍该电路涉及的所有元件,并提供详细接线说明。

认识你的 Arduino


Digital and power connectors on the Arduino Uno board

Arduino 的设计让连接元件变得简单。

  • 顶部有一组连接口——这些是数字接口,并且有清晰编号。我们会使用其中几个来连接编码器。

  • 底部有一组标注为 “POWER” 的连接口。我们会用到标注为 “5V”“GND” 的接口。

面包板说明

我们将使用一种叫做 “面包板(Breadboard)” 的东西来连接所有元件。面包板可以让你无需焊接就轻松连接电子元件。

Arduino 入门套件 附带的面包板与下图非常相似。它由一组孔位网格组成:


Bread board

理解某些孔组彼此连通非常重要。顶部有两行孔,底部也有两行孔。它们两端标有 + 和 –。这四行中每一行的孔都是互相连通的。通常你会用这些行给项目供电。如果你把电源接到最上面一行中的任意一个孔,那么插在该行中的其他元件都会获得电源。

中间区域的孔按纵向每 5 个为一组排列。每组 5 个孔也彼此连通。你把元件插入这些组中,然后用导线在这些 5 孔组与电源排之间建立连接。


Groups of holes are internally connected. Wires and components plugged in to the same group will be connected together.


顶部两行和底部两行各自是横向连通的(蓝线)。每组纵向的五个孔也彼此连通(洋红线)。

旋转编码器

旋转编码器是一种特殊的旋钮,旋转时会有段落“咔嗒”感。本项目使用的编码器还带有按压按钮功能。


Rotary Encoder

它有 5 个连接引脚,标注都很清楚:


The pins are clearly labeled.

从左到右:

  • GND - 接地引脚。连接到 Arduino 的 GND 接口

  • + - 电压引脚。连接到 Arduino 的 5V 接口

  • SW - 该引脚专门用于发送旋钮按键被按下的信号。连接到 Arduino 的某个数字接口

  • DT - 编码器的数据引脚。连接到 Arduino 的某个数字接口

  • CLK - 编码器的时钟引脚。连接到 Arduino 的某个数字接口

💡 你不必理解 DT 和 CLK 的具体工作原理。真正重要的是:当你在 Blokdots 中使用编码器时,DT 和 CLK 必须连接到 Arduino 上连续编号的数字接口。例如,如果 DT 接到数字口 3,那么 CLK 就需要接到数字口 4。我们在实际接线时会再次说明。

编码器的引脚可以很方便地插入面包板!


The encoder's pins conveniently fit perfectly into the breadboard.

现在把两个编码器都插到面包板上。请确保编码器每个引脚都插在不同的一个纵向 5 孔组上。


Plug the encoders in so that each pin is connected to a different group

跳线

最后一块拼图就是把一切连接起来的导线。Arduino 入门套件附带多种长度的跳线。颜色并不影响功能——导线就是导线——但颜色有助于区分项目中的不同部分。例如,红线通常表示电源(更准确地说是电压)。你可以使用任何你觉得清晰的配色方案。


Jumper wire


Arduino 入门套件附带多种长度和颜色的跳线。

按图接线

还记得上面的接线图吗?请按图示连接导线。记住,导线颜色并不重要,所以如果你没有图中相同颜色,换成别的颜色即可。


Arduino circuit wiring diagram

为面包板供电:

  • 将一根导线从 Arduino 的 5V 接口连接到底部一行(标有“+”)中的任意孔。该行是电源排。

  • 将一根导线从 Arduino 任一 GND 接口连接到底部第二行(标有“–”)中的任意孔。该行是接地排。

请注意,如果你的项目摆放方向与图中一致,编码器目前是背向你的,因此从这个视角看,从左到右引脚顺序如下:

  • CLK

  • DT

  • SW



  • GND

**连接编码器 1: **

  • 将一根导线从接地排中的任意孔连接到编码器 GND 引脚所在 5 孔组中的任意孔。

  • 将一根导线从电源排中的任意孔连接到编码器 + 引脚所在 5 孔组中的任意孔。

  • 将一根导线从 Arduino 的数字口 2 连接到编码器 SW 引脚所在 5 孔组中的任意孔。

  • 将一根导线从 Arduino 的数字口 3 连接到编码器 DT 引脚所在 5 孔组中的任意孔。

  • 还记得我提到 Blokdots 要求编码器使用连续接口吗?既然 DT 接在数字口 3,那么 CLK 就需要接在数字口 4。请将一根导线从 Arduino 的数字口 4 连接到编码器 CLK 引脚所在 5 孔组中的任意孔。

**连接编码器 2: **

  • 将一根导线从接地排中的任意孔连接到编码器 GND 引脚所在 5 孔组中的任意孔。

  • 将一根导线从电源排中的任意孔连接到编码器 + 引脚所在 5 孔组中的任意孔。

  • 将一根导线从 Arduino 的数字口 5 连接到编码器 SW 引脚所在 5 孔组中的任意孔。

  • 将一根导线从 Arduino 的数字口 6 连接到编码器 DT 引脚所在 5 孔组中的任意孔。

  • 和前面一样,我们需要把 CLK 引脚连接到 Arduino 上下一个连续的数字接口。将一根导线从 Arduino 的数字口 7 连接到编码器 CLK 引脚所在 5 孔组中的任意孔。

如果你都接对了,它看起来应该类似这样:


Wired circuit

干得漂亮!你已经使用 ProtoPie Connect 与 Blokdots 连接好了你的第一个 Arduino 项目。让我们在 ProtoPie Connect 入门 7 节中的第 4 节:Arduino 第 2 部分 - 编写你自己的 Sketch 代码 里看看还能做什么。