无论您是想推广自己网站上的内容还是只是想了解新闻,在衬衫上佩戴定制的新闻行情是一种古怪但很好的方式。使用 Raspberry Pi 和一些配件,您可以制作一件可以滚动浏览您选择的 RSS 提要的衬衫。
自然,我们设计我们的设备以显示来自 Tom’s Hardware 的最新新闻头条。但是您可以轻松地将脚本指向 Internet 上您想要的任何内容(它使用 Wi-Fi 下载数据)。这是制作自己的新闻收报机衬衫的方法。
材料
树莓派 3B+、3A+ 或 3B。如果您使用一些适配器,这也可能适用于 Pi Zero W。
Arduino Nano(或类似的)
USB 电池组
MicroUSB 转 USB Type-A 数据线
MiniUSB 转 USB Type-A 数据线
3x Adafruit Neopixel 8×8 面板
金属丝
魔术贴条
工具
焊接
烙铁
HDMI显示器
USB 键盘
3D 打印机(可选)
接线
让你的 T 恤比拉斯维加斯大道更闪亮的第一步是烧掉烙铁!如果您的焊接技巧有点生疏,请不要担心;只需建立几个联系。
首先,将您的三个 Adafruit Neopixel 8×8 面板并排排列在一起,面朝下。在左下角,您会看到三个引脚,分别标记为“DOUT”、“5V”和“GND”。将右侧面板上 DOUT 引脚的电线焊接到中间面板上的 DIN 引脚上。对 GND 和 5V 引脚执行相同操作。
它有助于为此使用带状电缆。将所有三根电线捆绑在一起时,事情会变得更加整洁!
重复此过程以将中间面板连接到左侧。伟大的!现在,所有 Neopixel 面板都链接在一起并准备好接收数据。最后一点焊接是将面板连接到 Arduino。
将最右侧面板上 DIN 引脚的电线焊接到 Arduino 上的数字引脚 6。然后将面板上的 GND 连接到 Arduino 上的 GND 引脚。接下来,将 5V 引脚连接到 Arduino 上的 5V 引脚。现在您可以关闭烙铁了。
注意:您可能希望在此导线上添加一个连接器。穿上衬衫时,将控制板与灯板断开是非常有帮助的。另外,在我们的测试中,电线从 Arduino Nano 中拔出。如果您想让 Neopixel 面板和 Arduino Nano 板之间的连接更容易使用,请考虑在 Nano 上添加分线针并使用带有母连接器的电线。标准 0.1 英寸接头在这里可以正常工作。这样,如果电线确实被拉出,您可以将它们放回原处而无需重新焊接。
软件如何工作
Raspberry Pi 所做的第一件事就是向 RSS 提要询问一些信息。在我们的例子中,我们正在查看来自 Tom’s Hardware 文章的标题。一旦我们得到这些,Pi 会打包标题并通过 USB 电缆将它们发送到 Arduino。在 Arduino 成为头条新闻后,它会计算出要点亮哪些 LED 以拼出字母。然后,它会向 LED 发送一个信号,您就会收到一条消息!
为了使所有这些部分协同工作,我们需要在 Raspberry Pi 和 Arduino 上放置一些代码。Raspberry Pi 需要知道从哪个网站获取信息,而 Arduino 需要知道如何处理通过 USB 电缆获得的信息。
在 Arduino 上安装代码
如果您的计算机上还没有 Arduino IDE,则需要下载、安装并打开它,并通过 USB 连接您的 Arduino 板。然后下载该项目的 git 存储库——一个包含 Arduino 和 Raspberry Pi 的所有代码的 zip 文件——并使用 Arduino IDE 从 scrollWhenRead 文件夹中打开文件 scrollWhenRead.ino。然后,您可以将 scrollWhenRead.ino 草图传输到您的 Arduino 板上。
在树莓派上安装代码
在开始之前,您需要让您的 Pi 在至少有 8GB 空间的卡上运行 Raspbian。在 Pi 上连接到 Wi-Fi 后,转到命令提示符并输入以下内容:
git clone https://github.com/sphawes/ledTshirt.git pip3 install feedparser pip3 install pyserial
键入 python3 ledTshirt/sendText/sendText.py 将运行脚本,默认情况下使用来自 Tom’s Hardware 的 RSS 提要。键入 sudo nano ledTshirt/sendText/sendText.py 以编辑脚本。您可以通过编辑以下行将 RSS URL 更改为不同的站点:
rssLink = “https://www.tomshardware.com/feeds/rss2/articles.xml”
您可以通过编辑以下行来更改站点名称:
编码 = (“Toms Hardwaren”).encode(‘utf-8’)
一旦您对代码感到满意,并且您已经保存并退出了文件,您将需要确保每次启动 Pi 时它都会运行。为此,请在提示符处的命令中输入以下内容:
cd ~/ledTshirt sudo cp tshirt.service /etc/systemd/system/myscript.service sudo systemctl start tshirt.service
下次启动 Pi 时,它将自动运行此脚本。该脚本会将文本发送到 Arduino 板,然后由 Arduino 板发送文字以在股票代码上滚动。
您可以在此项目的专用 GitHub 页面上找到有关代码如何工作以及如何安装它的更多详细信息。
整理起来
现在你已经完成了所有的连接和编程,继续尝试吧!确保您的热点已打开,然后将 Pi 插入 USB 电池组。Pi 启动后,您应该会在显示屏上看到一些很棒的 Tom’s Hardware 文章标题。
现在你已经让它工作了,是时候让它适合衬衫了!其中最重要的部分是让 Neopixel 面板通过衬衫的正面发光。
我用一个定制的 3D 打印支架做到了这一点,但是一点纸板和一把 X-Acto 刀就可以了。如果您想打印我们的支架设计,您可以在 Github 页面上找到它。我使用一点 VHB(“非常高粘合度”)胶带将 Neopixel 面板安装到支架中,这是一种非常坚固的泡沫胶带,比您想象的要好得多!接下来,在支架和 T 恤内侧添加几条 Velcro 魔术贴,您就可以开始摇滚了。
接下来是安装 Arduino、电池和 Raspberry Pi。我将它们全部放在一个中央“控制面板”上,并将其安装在要展示的衬衫背面。然后我用激光切割了一个非常简单的黑色亚克力面板,并使用 VHB 连接了所有组件。再多一点魔术贴,我就可以将面板安装到衬衫的背面。
根据电池的重量,您可能很难防止电路板从背部脱落。如果您无法将其留在衬衫上,请尝试在衬衫上缝合一个大网眼拉链口袋。您也可以尝试将两块板和电池放在背包或腰包中。
完毕!
你去吧!使用 Raspberry Pi 和 Neopixel 面板的定制发光 T 恤。尝试编辑“sendText.py”脚本,使其显示不同类型的信息。也许是推特追随者柜台?也许让它在招聘会上传播你的简历?或者,也许您只是想展示一些愚蠢的说法和名言。
我们想看看你用它做什么!在 Tom’s Hardware 论坛上与我们分享您的创作。
图片来源:汤姆的硬件