安裝在門禁上的RFID讀卡器讀取到訪客手持的射頻標簽后,將標簽號碼通過Wifi傳輸至機智云,云端通過一系列認證后下發(fā)開鎖命令,控制開發(fā)板上的繼電器吸合以達到開鎖的目的,該方案設(shè)計具有以下優(yōu)勢:
? 訪客射頻標簽成本極低,只有幾毛錢,為每個訪客發(fā)一張也不會有太大的成本負擔(dān);
? 訪客射頻標簽是可寫入的,這樣我們就可以控制訪客在樓宇中的到訪時限,以及不同級別訪客的開門權(quán)限;
? 訪客到訪的每個門禁都會將訪客記錄通過Wifi上傳到云端,這樣就可以監(jiān)控每個訪客到訪的軌跡。
視頻演示教程及實物展示
項目演示和解說視頻:
接線實物圖和App監(jiān)測頁面:
下圖是在機智云后臺看到的RFID讀卡數(shù)據(jù):
硬件端接線圖
材料清單
硬件端完整源代碼
--配置D3為普通輸出,控制控制門鎖的繼電器LIB_GpioOutputConfig("D3","STANDARD")LIB_GpioWrite("D3",1)--控制繼電器斷開--設(shè)置R200讀卡器模塊占用TX1和RX1引腳,EN引腳占用D7引腳,并開始掃描工作--工作國家區(qū)域:China2區(qū) (920.125~924.875MHz)--工作信道:0通道,即工作頻率為920.125MHz--發(fā)射功率:設(shè)置為最大的20.00dBmLIB_R200ReaderConfig("UART1","D7","CHINA2",0,2000)--機智云平臺為每個產(chǎn)品類別分配的唯一PK和PS,一定要改成您自己的PK和PSPK = "baa7394638a7427b931e3c84da5f2bdd" PS = "437665aced3b46d9b8c416321b50a926"--初始化Wifi模塊LIB_GizWifiConfig(PK,PS,6000,120,"UART0","D5","D10","D8")--定義一個64元素的table用來向機智云發(fā)送HEX字節(jié)流數(shù)據(jù)SendData = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,}num = 0while(GC(1) == true)do --掃描標簽的演示程序 Cnt, R = LIB_R200GetCard() if Cnt >= 1 then --打印Cnt張掃描到的標簽卡號 n = 0--Print打印出掃描到的Cnt張標簽的卡號 --[[for i=1, Cnt do print(string.format("x x x x x x x x x x x x",R[1 n],R[2 n],R[3 n],R[4 n],R[5 n],R[6 n],R[7 n],R[8 n],R[9 n],R[10 n],R[11 n],R[12 n]))n = n 12 end]]----這里我們只將掃描到的第一張標簽的卡號(12字節(jié))上傳給機智云--至于多張標簽的去重,去重后的上傳請發(fā)揮您的聰明才智SendData[1] = R[1]SendData[2] = R[2]SendData[3] = R[3]SendData[4] = R[4]SendData[5] = R[5]SendData[6] = R[6]SendData[7] = R[7]SendData[8] = R[8]SendData[9] = R[9]SendData[10] = R[10]SendData[11] = R[11]SendData[12] = R[12]SendData[13] = num&0x000000ff --這里是為了確保每包發(fā)送的數(shù)據(jù)不同num = num 1LIB_SendToGizCloud("RawData", SendData) end--查詢機智云是否下發(fā)了寫"Sw1"開關(guān)量數(shù)據(jù)點的動作 flag,recv_data = LIB_RecvFromGizCloud("Sw1") if flag == 1 then if recv_data == 1 then -- 云下發(fā)了1 LIB_GpioWrite("D3",0)--控制繼電器導(dǎo)通LIB_DelayMs(1000)--這里只給了一秒鐘開門的時間,麻溜的LIB_GpioWrite("D3",1)--控制繼電器斷開 end elseLIB_DelayMs(1000)endend
上面代碼中出現(xiàn)的"LIB_"開頭的庫函數(shù)的詳細介紹可以在shineblink.com網(wǎng)站上的API文檔中查詢。
機智云接入和App開發(fā)(三個選擇)
? 選擇一:機智云 通用版APP訪問設(shè)備(難度最低)
通過《WiFi設(shè)備接入機智云APP教程》我們可以很快掌握機智云的接入流程,并使用現(xiàn)成的通用版機智云App即可很快的實現(xiàn)手機App遠程訪問我們的開發(fā)板。
本例中我們使用了"Sw1"的布爾值型數(shù)據(jù)點和“RawData”的透傳數(shù)據(jù)點,記得在機智云平臺修改相應(yīng)的數(shù)據(jù)點的名稱。
?選擇二:機智云 零代碼定制版App訪問設(shè)備(難度較低)
在選擇二之前,必須完成上面選擇一的工作,然后參考《機智云賽博坦工具,零代碼APP開發(fā)(Wifi版)》教程實現(xiàn)定制版App訪問設(shè)備。
開發(fā)好以后的頁面如下:
? 選擇三:定制化開發(fā)APP或微信小程序(難度較高)
如果有一定開發(fā)能力,開發(fā)者可以考慮在機智云免費提供的開源代碼上做一定的定制開發(fā)形成自己的App。
如果開發(fā)者希望開發(fā)一個專屬的App,機智云也會提供代碼開源的安卓和IOS SDK框架,幫助開發(fā)者快速完成App開發(fā),開發(fā)者僅需關(guān)注App的UI和UE設(shè)計即可,而相對復(fù)雜的協(xié)議與錯誤處理等事項可忽略。關(guān)于開源SDK的介紹和獲取請點擊App開發(fā)準備工作以及向?qū)?– 機智云了解更多內(nèi)容。
如果開發(fā)者希望開發(fā)一個專屬的微信小程序應(yīng)用, 可點擊了解了解微信應(yīng)用開發(fā) – 機智云了解相關(guān)開發(fā)教程。
版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請發(fā)送郵件至 舉報,一經(jīng)查實,本站將立刻刪除。