使用PC切换多个灯泡最简单,最实用的方法是什么?

时间:2009-01-16 16:38:56

标签: continuous-integration usb serial-port electronics

这个问题主要与电子有关,但它也有编程方面。

问题的一些背景

我们办公室的墙上有一盏红绿灯。当人们进入办公室时,他们可以立即从交通信号灯中了解昨晚的自动生成情况。测试运行顺利进行:绿色表示所有测试都通过,黄色表示某些测试失败,红色表示某些构建失败。

现在,交通信号灯上悬挂着三根电缆上有三个开关,有人每天早上都要手动拨动这些电缆。我正在寻找一种通过PC自动完成此过程的简便方法。

我的一些背景

我可以写软件。我有一些焊接经验。我知道数字设计理论,但我从未构建过物理设备。我的手上没有太多时间。

问题

如何以最少的努力(和投资)从PC控制三个110V灯泡(或任何设备)?

一些不严格的约束

  • 我不关心编写软件来控制串口/ USB端口的工作。
  • 话虽如此,如果我不必编写任何软件并只使用现有工具,那就太好了。
  • 我不想做任何焊接!我可以使用其中一个爱好工具包,将组件推入插槽等。或许它可能来自Toys“R”Us。
  • 我愿意购买像Arduino板这样的现有设备。
  • 如果我能用只是躺着的零件来完成这件事,那就太好了。例如,我有一个旧的2400Bd调制解调器,我可以拆开(但是,可能会接着进行一些焊接)。

更新

答案中提到的类似项目:

13 个答案:

答案 0 :(得分:15)

查看X10

(编辑:替换原始海报NSFW与X10上的维基百科页面链接)

答案 1 :(得分:9)

如果你不打算将它与其他任何东西结合使用,那么arduino板对于这种特定的东西来说似乎有点过分了。此外,你将不得不购买各种组件或arduino屏蔽(特别是继电器屏蔽),所以它会很快加起来,特别是如果你不想焊接(你会看到约120美元+税arduino和盾牌。)

由于您正在切换AC(灯泡)并且计算机发出DC,因此您需要继电器。此外,您还需要使用晶体管切换继电器,因为我认为串行或USB输出不会输出您想要的mA。

最简单的方法是使用USB中继板。像这样的东西会很好http://www.robotshop.us/phidgets-1014-relay-interface.html。加上早期组合价格的1/3。更好的是,它们可以让您控制库,因此编程非常简单。

此外,如果你去eBay,你可以让它们更便宜,特别是如果你不介意使用现在的“古董”并行端口。我不认为你会得到图书馆。

祝你好运

答案 2 :(得分:7)

获取USB traffic light和USB延长线。我倾向于最简单的解决方案。应该很容易编写一些软件来驱动它。

答案 3 :(得分:5)

此设备“IP Power 9258”应该对您有用,它是一个以太网控制的电源条。它类似于此项目中使用的设备"Red Bear Alert!" - The Hudson Bear Lamps

谷歌搜索继电器控制的电源板,列出了大量项目来构建自己的电源板。

答案 4 :(得分:5)

只是提供更多选择:

继电器可以用晶闸管代替。这些都不会受到机械磨损的影响。

另一种便宜而简单的解决方案:购买便宜的三通道灯管并将其连接到电脑的声音输出。通过回放一些测试正弦音或正弦扫描来找到三个输出的共振频率。

这样你不仅可以切换三个灯,还可以调暗灯光。无需乱搞USB和继电器。

答案 5 :(得分:2)

我找到了一个在这里建造了一个完整的红绿灯的人:http://people.usm.maine.edu/houser/bblight/index.html。看起来比你想做的更多的工作。

答案 6 :(得分:1)

你需要:

您可以使用PC的12V为继电器线圈供电。

董事会通常会附带驱动程序和库来控制它们。

答案 7 :(得分:1)

X-10模块可能是最简单的选择。如果您尝试自行进行110 V开关,您的项目将很快成为硬件项目而非软件项目。 X-10(用于?)有一个加密狗插入串口(称为“鞭炮”)。该协议可以在线找到。

最后的警告:X-10是一种低技术含量,受到现代开关电源的干扰。因此,在进行软件工作之前,请在办公室进行尝试。

答案 8 :(得分:0)

使用一个串行端口驱动一个H桥(你可以从Digikey上取下一个芯片)来驱动一个继电器(再次使用digikey)。 H桥电气隔离串行端口并限制电流消耗。用晶体管切换壁电流是不可能的,这就是你使用继电器的原因。

答案 9 :(得分:0)

大多数PC组件无法处理115 VAC。你可以看看x10的一些东西,这是一个旧的家庭自动化标准。另外,您需要使用由PC控制的继电器来切换115 VAC。

答案 10 :(得分:0)

如果你喜欢自己做,那么串口接口就不会太难了。串行端口至少有两条可以打开/关闭的线路:RTS / CTS和DSR / DTR。当您打开任一行时,您将在该特定行上获得+ 5VDC。您可以使用这些线来控制继电器,然后开启/关闭灯。

答案 11 :(得分:0)

这是一个大问题:如果那天我正在TC,我看不到你的光。考虑到这一点,我将它构建为托盘中的一个小灯,并显示当前的构建状态。想要了解构建状态的人可以安装它,不关心的人不会被你的干扰交通灯所困扰。我曾经听过一位顾问的演讲,他说他曾在一家公司做过这样的事情,而VP类型只是喜欢它。这是one link;示例是Python。

修改:Seems CruiseControl.NET has this sort of thing already

答案 12 :(得分:0)

有没有想过尝试小部件? (www.phidgets.com)

USB电源继电器:

http://www.phidgets.com/products.php?product_id=1014

相关问题