步驟1:材料
糖果分配器
塑料桶
3英寸x 60英寸。圓管
2 Futaba S3003伺服系統(tǒng)
1舊CD
螺母和螺栓
控制箱
塑料項(xiàng)目外殼
大圓頂按鈕
16x2串行LCD顯示屏
嵌入式5e RJ-45插孔
尺寸M面板安裝同軸直流電源插座
12 V DC變壓器
C在5電纜處
主機(jī)箱
鋁制項(xiàng)目機(jī)箱
Arduino Duemilanove
Adafruit Protoshield
XBee適配器套件
XBee模塊
x10爆竹CM17A
x10收發(fā)器
1100 k電阻
通訊橋
ioBridge IO-204
ioBridge串行智能板
XBee適配器套件
XBee模塊
煙霧機(jī)
X10設(shè)備模塊
125VAC/10A DPDT插入式繼電器(作為與x10組合的開(kāi)關(guān))
聚苯乙烯泡沫塑料冷卻器,干燥器軟管和冰,以產(chǎn)生低霧。
(有關(guān)更多信息,請(qǐng)查看我去年的萬(wàn)圣節(jié)項(xiàng)目https://www.instructables.com/id/Halloween-Dropping-Spider/)。/li》
燈和配件
X10設(shè)備模塊
白熾燈,頻閃燈,黑色燈泡。
步驟2:糖果分配器
第一件事是找出一個(gè)裝糖果并分配的好方法。我使用了一個(gè)塑料桶,一條金屬通風(fēng)管和一個(gè)附在伺服電機(jī)上的CD,我發(fā)現(xiàn)通過(guò)從側(cè)面而不是底部分配糖果,可以使糖果更自由地移動(dòng)并避免糖果阻塞。 》通風(fēng)管呈“ U”形,因此我在鏟斗的底部中央做了一個(gè)“ U”形切口。請(qǐng)注意,我沒(méi)有切掉整個(gè)“ U”字,而是在中間留了一塊塑料,以固定使CD旋轉(zhuǎn)的伺服電機(jī)。
插入通風(fēng)管后,我做了幾處切割,以便將管道擴(kuò)展為薄片形式。我用了幾個(gè)螺絲和螺栓將薄板固定在鏟斗上。剩下的空間被強(qiáng)大的鴨子膠帶覆蓋了。
我切割了CD,以使糖果在旋轉(zhuǎn)時(shí)能夠流動(dòng)。另外,我在里面裝了一個(gè)連續(xù)的伺服器來(lái)充當(dāng)“搖床”。
步驟3:控制箱
控制框非常簡(jiǎn)單。我鉆了幾個(gè)孔,以便連接紅色的大按鈕,ioBridge液晶顯示屏,電源插孔和RJ45插孔。
我真的很喜歡使用CAT 5電纜來(lái)使事情更加模塊化。
第4步:主機(jī)箱
主程序在A(yíng)rduino Duemilanove中運(yùn)行。電路板初始化后,立即進(jìn)行Web調(diào)用以檢查當(dāng)前代碼,并將其顯示在LCD屏幕上。
主循環(huán)正在等待物理按下紅色大按鈕或接收遠(yuǎn)程串行消息。隨附的XBee模塊與連接到ioBridgeIO-204模塊串行板的另一個(gè)XBee模塊進(jìn)行通信。
這些是數(shù)字I/O引腳配置:
XBee模塊(帶有adafruit XBee套件)
Pin 13-TX
Pin 12-RX
Gnd and 5v
大圓頂按鈕
引腳8-按鈕NO(常開(kāi))+ GND + 100K。
5v-COM
伺服1(使用連續(xù)旋轉(zhuǎn)伺服用于振動(dòng))
Pin 7 -Data
Gnd和5v
Servo 2(用于旋轉(zhuǎn)CD)
引腳6-數(shù)據(jù)
Gnd和5v
X10 C17A(x10設(shè)備控制器)
引腳3-DTR線(xiàn)用于C17A-DB9引腳4
引腳2-RTS線(xiàn)用于C17A-DB9引腳7
Gnd-DB9引腳5
ioBridge 16x2串行LCD顯示屏
引腳1-LCD數(shù)據(jù)引腳
Gnd和5v
它還包括一個(gè)用于控制ioBridge LCD屏幕的庫(kù)。
第5步:代碼生成器
我意識(shí)到,意圖不佳的人可以將@Tweetfortreat帳戶(hù)發(fā)為垃圾郵件(或者不太可能是某人)可能會(huì)發(fā)短信或多次撥打我的Twilio電話(huà)),最終我會(huì)在地板上堆滿(mǎn)糖果。
我當(dāng)然使用我最喜歡的Web開(kāi)發(fā)工具Oracle Application Expresshttp://apex創(chuàng)建了REST Web服務(wù)。 .oracle.com/,以確保每次通過(guò)文本,通話(huà)或Twitter發(fā)出糖果放下請(qǐng)求時(shí)都生成唯一且隨機(jī)的代碼。
REST應(yīng)用程序確實(shí)非常簡(jiǎn)單,我知道也可以使用其他任何應(yīng)用程序來(lái)創(chuàng)建技術(shù),例如LAMP甚至GCI或Perl應(yīng)用程序。
應(yīng)用程序?qū)ο螅?/p>
1表(ID,CODE,SELECTED)
1數(shù)字序列以生成主鍵(ID )
1在插入記錄之前觸發(fā),該記錄將獲取ID值并將隨機(jī)數(shù)附加到CODE列
1公共過(guò)程以檢索代碼(其中selec ted = 1)
1個(gè)公共過(guò)程以一次使用一次更新代碼并生成一個(gè)新代碼。
所以我最后得到了這兩個(gè)URL
http:/my.apexserver .com/pls/apex/getcode
http:/my.apexserver.com/pls/apex/updatecode?code = XXXX
**如果您想使用靜態(tài)內(nèi)容來(lái)實(shí)現(xiàn)相反,我建議使用http://www.random.org/clients/http/獲取隨機(jī)數(shù)并將其存儲(chǔ)在文件,內(nèi)存甚至arduino本身中。
步驟6 :IoBridge設(shè)置
ioBridge IO-204用作arduino和互聯(lián)網(wǎng)之間的橋梁(du!)。我正在使用ioBridge串行板連接X(jué)Bee模塊。
ioBridge的主要功能有兩個(gè):
請(qǐng)求當(dāng)前代碼
從arduino進(jìn)行GET調(diào)用,以使用ioBridgeSerial Web服務(wù)API從我的代碼生成器服務(wù)中檢索當(dāng)前代碼。
Arduino代碼:
mySerial.println(“ [[[[get | http:/my.apexserver.com/pls/apex/getcode]]]“);)
按文本,調(diào)用或鳴叫開(kāi)始放糖果的順序。
ioBridge小部件將通過(guò)發(fā)送一個(gè)開(kāi)始字符串行消息和糖果放入序列將開(kāi)始。可以使用ioBridge靜態(tài)窗口小部件API調(diào)用此窗口小部件。
此URL由Twilio和我的自定義Twitter警報(bào)腳本調(diào)用。
http://www.iobridge.com/widgets/static/id = [widgetID]
這些是數(shù)字I/O引腳配置:
ioBridge串行板
TX-RX XBee
RX-TX XBee
GND和5v
步驟7:Twilio設(shè)置
Twilio是用于通信應(yīng)用程序的Web服務(wù)API。 Twilio非常簡(jiǎn)單。我只花了很短的時(shí)間即可啟動(dòng)并運(yùn)行我的SMS和語(yǔ)音應(yīng)用程序!過(guò)去,我曾嘗試使用其他技術(shù)(VoiceXML甚至Google Voice)創(chuàng)建類(lèi)似的應(yīng)用程序,然后告訴我并非如此。
語(yǔ)音應(yīng)用程序接聽(tīng)電話(huà),播放介紹性聲音文件并詢(xún)問(wèn)代碼后跟#號(hào)。如果檢測(cè)到代碼,Twilio將對(duì)PHP文件執(zhí)行“ GET”操作,該文件將從我的代碼生成器Web服務(wù)中查找當(dāng)前代碼。如果匹配,它將調(diào)用ioBridge靜態(tài)小部件URL,并且將分配糖果。
SMS應(yīng)用程序具有幾乎相同的PHP代碼,只是這次不是查找所撥打的數(shù)字,而是查找SMS消息的正文。 br》檢查生成TwiML XML的附加X(jué)ML和PHP文件。
總而言之,Twilio是贏(yíng)家,我對(duì)未來(lái)還有很多其他想法。
步驟8:Twitter設(shè)置
如果沒(méi)有Twitter集成,沒(méi)有現(xiàn)代互聯(lián)網(wǎng)啟用的項(xiàng)目是完整的,對(duì)嗎? :)這是我的:這次我使用bash腳本,twurl和crontab作業(yè)檢查對(duì)@tweetfortreat的答復(fù)。這個(gè)bash腳本可以在我的Sheevaplug上運(yùn)行,但可以在任何linux/mac機(jī)器上運(yùn)行,也可以修改為在Windows中以.bat格式運(yùn)行(使用計(jì)劃任務(wù))。
Twurl幾乎像curl,但適用于Twitter。我對(duì)Twitter RSS feed進(jìn)行了一些丑陋的解析,以檢索tweet發(fā)件人,但是它起作用了。
這是我的bash腳本
#!/bin/bash
mycode =`curl --silent http:/my.apexserver.com/pls/apex/getcode`
twitter =`twurl/1/statuses/mentions.rss | grep“ @tweetfortreat $ mycode” |切-d‘:’-f1 |尾-n 1 |剪切-d‘》’-f2`
echo $ mycode $ twitter
if [-n“ $ twitter”];然后
iobridge =`curl --silent http://www.iobridge.com/widgets/static/id= [widgetID]`
newkey =`curl --silent -d“ code = $ mycode” http :/my.apexserver.com/pls/apex/updatecode`
update =`twurl -d“狀態(tài)= @ $ twitter代碼$ mycode是正確的。萬(wàn)圣節(jié)快樂(lè)!”/1/statuses/update.xml`echo $ newkey $ iobridge
fi
Crontab僅允許您每分鐘執(zhí)行一次腳本,我認(rèn)為目前還可以。或者,可以使用while循環(huán)代替。
這是我的crontab條目
*/1 * * * */script_location/HalloweenCandy.sh》/dev/null 2》&1
-
分配器
+關(guān)注
關(guān)注
0文章
203瀏覽量
26145
發(fā)布評(píng)論請(qǐng)先 登錄
PS2-88,PS2-88/NF功率分配器MCLI
PS2-185/NF帶狀線(xiàn)2路電源分配器
CDCL1810A 1.8V、10 輸出高性能時(shí)鐘分配器數(shù)據(jù)表

CDCL1810 1.8V 10路輸出高性能時(shí)鐘分配器數(shù)據(jù)表

CDCE18005高性能時(shí)鐘分配器數(shù)據(jù)表

CDCE62005高性能時(shí)鐘發(fā)生器和分配器數(shù)據(jù)表

LMK01000高性能時(shí)鐘緩沖器、分頻器和分配器數(shù)據(jù)表

液壓分配器起什么作用的
液壓分配器工作原理是什么
液壓分配器壓力調(diào)整方法有哪些
單線(xiàn)分配器與雙線(xiàn)分配器的區(qū)別是什么
四路數(shù)據(jù)分配器的基本概念、工作原理、應(yīng)用場(chǎng)景及設(shè)計(jì)方法
八路數(shù)據(jù)分配器的基本概念及工作原理
DS90LV110T 1至10 LVDS數(shù)據(jù)/時(shí)鐘分配器數(shù)據(jù)表

DS90LV110AT 1至10 LVDS數(shù)據(jù)/時(shí)鐘分配器數(shù)據(jù)表

評(píng)論