2013-02-16 50 views
3

我需要帮助用我的Arduino建立一个系统,并连接~90个输入。这里是我设想的系统:连接到Arduino的很多输入

  • 的Arduino是迷上了变化/钱插入机器(如在自动售货机的焦炭支付)。

  • 当顾客插入适量的货币时,他们可以选择想要激活的机器(如在自动售货机上选择不同的糖棒)。将会有大约90个选择。

  • 我希望Arduino能够接受这个输入并能够发信号给90台机器中的任何一台机器来激活该机器中的某个过程。

  • 系统目前的工作原理是每台机器都有自己的货币插入机制,可以在每台机器上单独激活流程。我想创建一个知道每台机器的集中式支付系统。

我的问题有以下几点:

  • 是否可以挂接90个输入的Arduino再到个人信息发送到每个90个投入? (我的研究已经使我a shift register,但似乎不太可能到90倍个人的投入这种方式连接到Arduino。

  • 是否有连接到Arduino可以接受的钱作为变革的一部分?

+0

我在想,当我想到简单的电梯算法时,我的想法是将不同的电阻连接到不同的输入并检查模拟输入电压。不幸的是,这种机制一次失败了多次输入。 – 2013-02-16 01:39:14

+0

但另一个想法是找到一些带有缓冲区的IC - 然后您将使用串行通信从IC读取。这是键盘的工作原理。 – 2013-02-16 01:41:08

+0

什么是IC?它是否包含一些只能同步写入的缓冲区?我并不是很担心共享状态,因为很可能,多人付钱是在排队等候时连续进行的。 – SaamJB 2013-02-16 01:41:26

回答

6

有多路复用器,您可以将您的Arduino连接,从而增加其容量输入: Arduino Playground Multiplexer Tutorial

Sparkfun有prebuilt shield它封装复用器IC,但只给你48个输入。

至于拿硬币,可以找到一个称为硬币接受器的设备。有许多供应商,其中包括Sparkfun

可能有办法可以减少必要的输入和/或输出。例如,你是否需要90个按钮,或者你可以使用10个小键盘,并给每个项目一个两位数的代码?

+0

该计划旨在提供允许选择号码的键盘。当我说〜90个输入时,我应该输入90个输出。我希望能够单独向90台机器中的每一台发信号。我们将提供一个键盘,使您可以选择90台机器中的一台。我们不会有90个按钮。感谢您的回复,我会检查链接。 – SaamJB 2013-02-16 03:04:03

+0

你知道是否有可能将多个多路复用器屏蔽连接到arduino? – SaamJB 2013-02-16 03:11:09

+0

附近,我可以说,他们是可堆叠的。他们注意到Arduino上的金属USB端口可能会接触到电路板上的引脚,因此您可以在端口的顶部放置一些黑色磁带或其他东西。如果您有90个设备(电机,甚至是步进电机),那么只需19个输出即可完成:将所有电机的负极连接在一起,并将每个列中的所有正极连接在一起,然后切换每个行和列与继电器。你可以打开,比如X = 2,Y = 3,运行一个单独的电机;你只能一次控制不止一个。 – 2013-02-16 19:19:08

4

是的,这是完全可行的。一个键盘有101个键,至少在历史上是由一个芯片解码的,而不是比Arduino强大。移位寄存器可以链接在一起,以读/写速度为代价来实现大量的输入和输出。还有可以购买的芯片(例如LM8330),可以为您解码矩阵键盘,并且可以通过I2C访问,这只需要两个引脚。硬币插槽与按钮电气相同,只是在插入有效硬币时才切换。