在过去的一年里,我一直在晚上做十字绣项目作为一种放松的方式。我最近遇到了 Arduino LilyPad,并对使用导电线缝制电路感到好奇。因此,我决定使用一个来将 LED 添加到十字绣项目中。我认为这对电路板图案来说是一个很好的接触,并且对完成的项目感到满意。这是一个很棒的初学者可缝纫电子项目,所以如果你喜欢缝纫但不熟悉电子产品,那么创建一个类似的项目需要了解以下内容。
我为我的项目选择了这种电路板图案并选择了黑色织物,因为它有助于在完成的项目中隐藏电路板和电池。您可以为您的项目选择任何十字绣图案。请记住,LED 需要在每个端子(正极和负极)上缝合,并且导电线是银色的,因此最好选择银色缝合不会影响完整图片的图案。
对于此项目,您需要以下项目:
Arduino LilyPad 电路板有多个版本,其中大部分都适用于此项目。然而,并不是所有的 LilyPad 开发板都是一样的:
引导加载程序是负责启动 Arduino 并将程序发布到您的电路板的程序。如果引导加载程序不工作,你就不能把程序放到你的板上。
当我开始做这个项目时,我从亚马逊买了一个 LilyPad,因为它是最便宜的选择。不过,引导加载程序要么丢失要么损坏,因此我无法向其发布程序(我计划在某个时候修复)。通过一些研究,我发现这种情况在更便宜的电路板上更容易发生。您可以添加或修复引导加载程序,但这对初学者来说很棘手。在比较和购买电路板时请记住这一点。我在上面从 SparkFun 链接到的 LilyPad 开箱即用。
我完成项目所遵循的步骤如下:
在连接 LED 之前对 LilyPad 进行编程很有帮助,因为一旦将其缝合到织物上,将其连接到计算机会变得很尴尬。
我建议一开始就考虑 LED,并在开始十字绣之前决定将它们放在哪里(尽管如果您在缝好图片后这样做也没关系)。
每个 LED 在每个端子(正极和负极)上至少需要一针导电线,因此您需要在图片中为这些针脚留出空间。理想情况下,您应该在将线缝合到设计中之前将线多次缠绕通过端子,以确保端子和线之间的最大连接性(我为每个端子缠绕了三遍)。
LED拼接成图片
缝合 LED 时,您需要一根单独的导电线,用于将正极和负极端子连接到其他 LED 或 LilyPad。选择长线开始。断线会导致连接问题,从而导致 LED 无法正常点亮。
短路
短路会导致电路中断并阻止 LED 灯亮起。它还可能会烧毁您的 LilyPad 甚至电死您,因此在连接 LED 时必须小心。为避免短路,请注意以下事项:
不要交叉正面和负面的线程
不要将 LED 的正负端子拼接在一起
规划电路将帮助您确保为 LED 留出足够的空间,并且以不会造成短路的安全方式规划布线。
Arduino LilyPad USB 板的通用输入输出 (GPIO) 焊盘配置如下。不同版本的 LilyPad 可能有不同的 GPIO 配置。出于本项目的目的,您可以在电路板上使用模拟或数字焊盘。
Arduino LilyPad USB 引出线
有几种方法可以将 LED 连接到 LilyPad。
连接单个 LED
最直接的方法是通过连接将单个 LED 连接到 LilyPad:
这种方法将允许您分别对每个 LED 进行编程以实现最大程度的控制。它还增加了设计电路时的复杂性,因此正极和负极导电线都不会交叉。
单个 LED 连接图
菊花链 LED
我想连接多个 LED 并对它们进行编程,使其在我的项目中以相同的方式运行。最好的方法是菊花链 LED 并通过 LilyPad 上的同一个 GPIO 垫控制它们。在我的项目中,我将三个 LED 以菊花链方式连接到 GPIO 焊盘 3(和地),另外三个 LED 连接到模拟 GPIO 焊盘 A4(和地)。
菊花链 LED 连接图
根据上面的设置,我对 LED 进行了编程,使其循环点亮一根,然后另一根。这就是完成电路的拼接效果。
十字绣电路
在此步骤中,像往常一样对图片进行十字绣,但请尊重您想要进行的任何图案更改以适应未来步骤中添加的 LED。
打开和关闭两股 LED 的程序非常简单。您可以从 Github 复制该程序的草图。这是其工作原理的细分。
下面几行是设置两个 LED 串将使用哪些焊盘的变量。
// Set which pad each strand of lights is connected to
int lightStrand1 = A4;
int lightStrand2 = 3;
setup
一旦 LilyPad 启动程序并将两个 LED 串的引脚模式设置为输出,该函数就会运行。这意味着焊盘 A4 和 3 将充当输出(而不是输入),以便我们可以在loop
函数中更新它们。(注意:对于大多数微控制器,焊盘被称为引脚,因为它们实际上是连接到电路板的引脚。LilyPad 上的“焊盘”与其他微控制器上的“引脚”相同,因此在函数中使用引脚名称。)
设置串行数据传输的Serial.begin(9600)
速率,以每秒位数(又名波特)为单位。它有助于保持两个设备之间的数据流同步。通常使用的值是此处指定的 9600。
// Runs once
void setup() {
// Set strands as outputs
pinMode(lightStrand1, OUTPUT);
pinMode(lightStrand2, OUTPUT);
// Initialize Serial, set the baud rate to 9600 bps
Serial.begin(9600);
}
当 LilyPad 有电时,该函数在该loop
函数之后重复运行。setup
它暂停循环 1.5 秒,打开一个 LED 串同时关闭另一个,再暂停 1.5 秒,然后反转打开/关闭的 LED 串以产生交替效果。
将 LED 链设置为HIGH
打开 LED,将其设置为LOW
关闭 LED。由于我们使用 pad 作为输出,我们可以使用digitalWrite
函数将更改写入它们。即使它被称为,它仍然可以与 LilyPad 上的模拟垫一起使用,这就是为什么我们可以在 A4 垫上digitalWrite
使用它。lightStrand1
void loop() {
// Pauses the loop for 1.5 seconds
delay(1500); // milliseconds
// Setting lightStrand1 to HIGH turns ON the LEDs connected to pin A4
// Setting lightStrand2 to LOW turns OFF the LEDs connected to pin 3
digitalWrite(lightStrand1, HIGH);
digitalWrite(lightStrand2, LOW);
// Pauses the loop for 1.5 seconds
delay(1500); // milliseconds
// Setting lightStrand1 to LOW turns OFF the LEDs connected to pin A4
// Setting lightStrand2 to HIGH turns ON the LEDs connected to pin 3
digitalWrite(lightStrand1, LOW);
digitalWrite(lightStrand2, HIGH);
}
您可以调整程序以使用更多 LED 串、使用单个 LED、或快或慢地交替灯串等。上面的基本程序只是基于我的电路设计的起点。
您可以按照以下步骤使用Arduino IDE将程序放到您的 LilyPad 上:
在 Arduino IDE 中打开.ino
您从 Github 复制的文件,从“工具”>“端口”菜单中选择正确的端口。它在 Mac/Linux 计算机上应该看起来像这样dev/cu.usbmodem####
,,或者在 Windows 计算机上看起来像这样,COM##
。
按照上面“规划电路”部分中的指导,以所需配置将 LED 拼接到您的图片中。在此步骤中,边走边测试 LED 很有帮助,这样您就不会走到尽头,发现电路不工作,而不得不重做。
测试电路时,确保在将 LED 的正负线正确连接到 LilyPad 之前,不要将 LilyPad 连接到电源。否则,您可能会造成短路。
如果您遇到 LED 未按预期点亮的问题,请确保:
对图片满意后,在导电线上轻轻刷一层薄薄的织物胶水。这将有助于保护螺纹并将其固定到位。
就是这样!此时,您应该有一张包含 LED 的十字绣图片。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !