聲明:該設(shè)計(jì)資料來源于DF創(chuàng)客社區(qū),僅供學(xué)習(xí)參考,不可用于商業(yè)用途。
硬件組成:
我們使用了DFRobot贊助的Arduino Bluno兼容板和手機(jī)進(jìn)行藍(lán)牙通訊,然后通過RFID讀卡器(RC522)來讀取被動(dòng)式非接觸芯片,也就是植入于衣服的芯片,在demo我們?cè)谝录苌橡ち藗€(gè)id卡。然后通過簡單的拿取衣服,我們的arduino就會(huì)給app上位機(jī)發(fā)送之前錄入的衣服的信息,在通過手機(jī)app把信息共享給社區(qū)。
如截圖:
這里不得不說說這塊RC522,我們周六的時(shí)候發(fā)現(xiàn)手頭上唯一的一塊RC522壞掉了...于是啊,連夜順豐速遞送,總算是在周日一大早拿到了嶄新的芯片與復(fù)旦卡。
智能衣柜控制代碼部分截圖,見附件內(nèi)容下載:
iOS端
說明:
我們的iOS端首先參考了DF官網(wǎng)上已有的Demo,然而發(fā)現(xiàn)是Objective-C寫的,于是我們親愛的Ian同學(xué)一怒之下全部改成Swift實(shí)現(xiàn)了!Known Issue:!!!在改寫為Swift語言時(shí),Bluno自帶API中DFBlunoDelegate協(xié)議中@required的didReceiveData函數(shù)中的第二個(gè)參數(shù)Device應(yīng)改為device 否則導(dǎo)致報(bào)未實(shí)現(xiàn)協(xié)議方法的錯(cuò)誤。!!!
這個(gè)Demo應(yīng)用可以在鏈接上Bluno之后通過手機(jī)界面上的選擇向Bluno發(fā)送衣服的特征信息,并讓RC522寫入被動(dòng)RFID芯片。見附件內(nèi)容下載。
Android端:
說明:
安卓端用了API Level 23作為Target API,請(qǐng)升級(jí)Android Studio中的SDK到最新版本。在這個(gè)包中我們加入了BlunoLibrary,是DF官方的Demo中的,使用起來非常方便。在MainActivity中,onCreate函數(shù)下的內(nèi)容為應(yīng)用初始時(shí)所執(zhí)行的代碼。
服務(wù)端
說明:
我們使用了LeanCloud作為遠(yuǎn)端服務(wù)器,iOS中也包含了相關(guān)的支持庫。如果有需要的話,請(qǐng)大家更改成自己的api key哦!