14
本文作者: Chi Zhang | 2015-12-08 10:51 |
又到了冬天,起床困難癥患者一下多了好幾億……起床不得不靠鬧鐘了。那怎樣定義一個(gè)完美的鬧鐘?首先,一定會(huì)符合下面的五個(gè)條件:
1. 為了把我們從熟睡中叫醒,鬧鐘的聲音一定要足夠響亮
2. 鬧鐘應(yīng)該是逐漸地將人喚醒,而不是在我們睡得正香或是噩夢(mèng)連連時(shí)用警報(bào)一樣的噪音將我們嚇醒(確實(shí)能被叫醒但是會(huì)精神恍惚大半天這可不好玩兒)
3. 鈴音可以自定義
4. 當(dāng)起床失敗或者睡過(guò)頭時(shí)能有”故障保護(hù)“機(jī)制(萬(wàn)一第二天有重要會(huì)議或者趕飛機(jī)的話,這樣的保險(xiǎn)措施能讓人多一些安心入睡)
5. 鬧鐘可以內(nèi)置一個(gè)自然光線,這樣就能在響鈴之前輕輕地自然地給我們預(yù)示。
那么就親自動(dòng)手制作一個(gè)鬧鐘,讓每天早上抓起的第一件東西不再是手機(jī)!
原作者的初始方案是利用Arduino的控制,來(lái)制作一個(gè)有物理凸起按鈕的鬧鐘。但是當(dāng)學(xué)習(xí)Processing編程的時(shí)候發(fā)現(xiàn)手中還有一塊觸摸屏和一個(gè)樹莓派,于是想利用這兩樣元件來(lái)做一個(gè)更酷一點(diǎn)兒的鬧鐘。所以,制作AlarMe鬧鐘的新方案應(yīng)運(yùn)而生!
AlarMe用到了一個(gè)樹莓派,一個(gè)7英寸的觸摸屏,一個(gè)Processing腳本,以及一個(gè)Arduino來(lái)達(dá)到最終的目的。通過(guò)上面粗略的手繪圖可以發(fā)現(xiàn),樹莓派可以運(yùn)行一個(gè)包含用戶操作界面的Processing腳本(并且可以通過(guò)觸摸屏來(lái)控制),而且可以與Arduino通信,還可以添加按鈕和傳感器用來(lái)關(guān)閉鬧鐘。AlarMe的操作界面能夠友好地提供各種必要的信息和鬧鐘的選項(xiàng),最基本的莫過(guò)于設(shè)定鬧鐘的響鈴時(shí)間。在代碼的初始化和程序的設(shè)定時(shí),可以設(shè)定自己的聲音文件為鬧鐘鈴音。
下面是在原作者筆記本電腦上的用戶界面說(shuō)明。這個(gè)簡(jiǎn)單的界面將可以運(yùn)行在樹莓派上而不需要一直在筆記本電腦上運(yùn)行,而觸摸屏則可以代替鼠標(biāo)和顯示器。
這里我們提供原作者設(shè)計(jì)并使用的源代碼。
想要在自己的電腦上運(yùn)行這個(gè)代碼,首先安裝Processing,下載zip文件,解壓后運(yùn)行腳本文件??梢詤⒄沾a內(nèi)的說(shuō)明來(lái)添加自定義的聲音文件,或者也可以直接使用默認(rèn)的。
如果你也想要在樹莓派上運(yùn)行這份代碼,請(qǐng)確保在你的樹莓派上安裝了Processing,腳本文件,并且儲(chǔ)存了所有必要的聲音文件。如果需要更詳細(xì)的說(shuō)明,請(qǐng)到Processing和樹莓派的網(wǎng)站上查找,可以找到所有需要的信息。授人以魚不如授人以漁,相信通過(guò)瀏覽,你可以發(fā)現(xiàn)更多。
Arduino可以通過(guò)一個(gè)簡(jiǎn)單的按鈕作為輸入信息,然后用Serial Monitor顯示來(lái)讓Arduino知道這個(gè)輸入信號(hào)何時(shí)被激活。
在電腦上將下面的代碼上傳到Arduino上,將按鈕連接到pin 2借口上。接下來(lái)將Arduino通過(guò)USB接到樹莓派上,從而用樹莓派代替筆記本電腦。
.ino文件下載地址
當(dāng)Processing,Arduino和樹莓派都可以相互通信并正常工作時(shí),將所有零件連接好,并且全部裝到一個(gè)做好的盒子里。請(qǐng)參考下面的教程來(lái)用泡沫塑料制作鬧鐘的外殼:
原作者后知后覺(jué)地發(fā)現(xiàn),這個(gè)鬧鐘的外殼其實(shí)可以做得更薄更小,但當(dāng)時(shí)并不確定各種連接線可以被壓縮到什么程度。這一次就算為了簡(jiǎn)單快速地實(shí)踐AlarMe而忽略其體積吧。
在不斷的實(shí)踐和探索中,未來(lái)版本的AlarMe可以使用更少更短的連接線和不同的外殼從而縮小體積。另外一種炫酷的可能性是,用半透明的丙烯酸塑料板來(lái)制作外殼,并在內(nèi)部加上裝飾燈光,顏值在瞬間得到了提升!或者可以添加一個(gè)音樂(lè)播放器來(lái)播放其他儲(chǔ)存的音樂(lè)文件,從而增加這個(gè)鬧鐘的功能性。甚至可以添加另外一個(gè)Processing程序來(lái)顯示天氣信息,于是你可以在醒來(lái)后第一眼就看到今天的天氣如何。
最后這個(gè)功能可能比較雞肋,難道醒來(lái)后不是拉開窗簾看看窗外當(dāng)前的天氣么?總而言之,樹莓派+Arduino+Processing的組合,絕對(duì)能做個(gè)不錯(cuò)的鬧鐘出來(lái)!
從明天早上開始,享受一下被親手制作的鬧鐘叫醒的經(jīng)歷吧。
2015-2016賽季全球創(chuàng)客馬拉松深圳大學(xué)站已經(jīng)開始接受報(bào)名啦!關(guān)注“硬創(chuàng)邦”(微信號(hào):leiphone_bang),回復(fù)“深大”即可參與報(bào)名!而且,雷鋒網(wǎng)在未來(lái)三個(gè)月內(nèi)選一個(gè)合適的時(shí)間,在北上深選擇一個(gè)地點(diǎn),舉辦創(chuàng)馬“火星救援”專場(chǎng)!詳情可點(diǎn)此處了解。
此外還可加入全球創(chuàng)客馬拉松主群(群號(hào):259592983),參與我們的互動(dòng)討論~
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。