2013-02-16 52 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訪問,這隻需要兩個引腳。硬幣插槽與按鈕電氣相同,只是在插入有效硬幣時才切換。