我有一个关于游戏室记分板的想法。我想根据数据库中的标志打开或关闭灯泡。假设我有一个名为“out”的列。对于 out=1,一个灯泡会亮起,对于 out=2,两个灯泡会亮起,等等。这可能吗?我需要什么?设置数据库并插入数据没有问题。
答案1
从概念上讲,您需要以下内容:
- 接收请求并显示适当数量的灯的硬件
- 将检索到的数字转换为对硬件的请求的软件
- 轮询数据库的软件
按以下顺序考虑:
硬件接口
连接硬件的最简单方法之一是使用并行端口(如果您的计算机配备并行端口)。通常有 8 个或更多可用输出,可以独立控制。第二个最简单的方法是串行端口。无论哪种情况,您都需要继电器或 LED 驱动器或等效设备来将这些接口上的电压电平更改为您的灯可以使用的电压电平。
软件到硬件的控制
如果您能用 C 或 C++ 编写代码,那么您可能能够轻松地在特定系统(Windows、Mac、Linux)上编写软件,将单个字节发送到并行或串行端口。互联网上有很多示例。代码可以listen
在 IP 上socket
找到要发送到硬件的值。
轮询数据库的软件
一般来说,这将是一个简单的数据库查询,将按您选择的周期运行。例如,您可以将其设置为每 60 秒轮询一次,从数据库中提取值,然后通过 IP 套接字将该值发送到上面提到的列表软件。
由于您的问题非常广泛,所以这个答案也是如此,但是如果您对此的任何部分有具体问题,请提出另一个问题。但请注意,电气工程主要涉及前两项,而不是纯软件部分。
答案2
这很简单。我的建议是:
1) 不要使用单个灯,而要使用可寻址的 RGB LED 灯带。这比驱动单个灯要容易得多,并且可以直接获得不同的颜色和调光。如果您想要不同的外观,可以将乒乓球放在 LED 上。
2) 我将使用 arduino 来驱动 LED 灯带。它可以通过串行端口连接到您的 PC,PC 上的程序可以简单地执行数据库查询,获取值,并通过串行端口将其发送到 arduino。arduino 读取该值并将其发送到 LED 灯带。
你会发现很多东西adafruit.com,包括可以帮助您的教程。
答案3
这听起来像是 raspberry pi 的完美应用。它是一台微型 Linux 计算机,完全能够托管可以查询数据库的软件。(并托管一个)。它还具有可以控制东西的 GPIO 引脚。
您需要先确定灯的类型,然后才能知道如何打开它。
如果是 LED,您可能需要 LED 驱动器,如果是 240V 灯泡,您可能需要继电器等。
您可能想要了解的其他变体包括 Beagle Bone、ODROID,并且不要忘记谷歌搜索“迷你 Linux 计算机”以获得更多选项。
答案4
我最省力的解决方案是使用迪斯科灯(使用 DMX 协议)和“电动小鬼”,它为您提供一个 Web API 供您连接。
它还可以与 LED 或 Neopixels 对话。
这是我制作的一个简单演示的视频。
https://www.youtube.com/watch?v=RxttrlHJntw&list=UU2vDg0Cv64FmkmjJYpVnWuQ