步驟1:安裝和配置Raspberry PI
首先,您需要安裝并配置RESTFUL服務器以接受通過Internet和用于訪問Raspberry PI-GPIO引腳的框架,以通過這些引腳讀取和寫入數據。
配置Raspberry PI來訪問無線網絡網絡(您可以購買無線加密狗并通過Raspberry PI USB接口進行連接。 (如何鏈接)
在Raspberry PI上安裝Node JS。 (操作鏈接)
在Node.JS上安裝pi-gpio,以通過nodeJS訪問Raspberry PI引腳(安裝PI-GPIO)
在Node.JS上安裝express以創建RESTFUL服務器(安裝Express)
在 GPIOcontroller.js 文件(功能 )中創建兩個文件(負責控制硬件引腳和鎖定)和 myService.js (控制臺中的節點將調用該服務來運行服務器,它將調用GPIOcontroller.js函數)。 。這將在稍后的-步驟3中進行演示–
現在是硬件!
步驟2:在Raspberry PI和Raspberry PI之間構建硬件鎖定

1 Raspberry PI
在Raspberry PI中,我們將使用GPIO引腳7,GRD和5V輸出,因為GPIO引腳產生3.3V,由于汲取的高電流導致電壓降低于3V,因此無法激活繼電器的螺線管。因此,我們不能依靠GPIO電壓輸出來打開繼電器開關。
2放大
使用NPN晶體管,二極管和電阻器,我們使用晶體管進行通道Raspberry PI到接觸式繼電器的5V輸出,使用GPIO輸出的輸入作為信號來打開和關閉晶體管以激活繼電器開關。 (檢查面包板)
3繼電器
(鏈接到繼電器的教學視頻)
12V繼電器有5條支腳,兩條支腳在螺線管中產生電流,從而打開開關,其他三個支路通常
中間支路為公共端。
一個支路為常閉(繼電器時)
一只腳正常斷開(當繼電器被激活時,開關閉合電路)。
4電子開關
電子鎖的一個引腳連接到12V電源適配器的GRD,另一引腳連接到繼電器公共端(中腳),而繼電器常開引腳連接到12V電源適配器VCC
步驟3:服務器應用程序代碼(RESTFUL API和PI-GPIO)
再次返回軟件代碼,請記住兩個文件(步驟2中的 GPIOController.js 和 myService.js )
GPIOcontroller.js
var gpio = require(“pi-gpio”); var gpioPin = 7;
var isOpened=false;
var unlockRelay = function(){
if(!isOpened){
/* Open the door lock */
gpio.write(gpioPin, 1, function() {
isOpened = true;
});
/*setTimeOut will be activated in 2 seconds, closing the lock as we set gpioPin value to 0*/
setTimeout(function () {
gpio.write(gpioPin, 0, function() {
isOpened = false;
});
}, 2000);
}
}
myService.js
var http = require(‘http’); var express = require(‘express’);
var app = express();
var GPIOCtrl = require(‘。/GPIOcontroller.js’);
app.get(‘/unlock/’, function(req, res){
GPIOCtrl.unlockRelay();
});
app.listen(3000);
console.log(‘App Server running at port 3000’);
然后在終端中,在您的應用程序代碼文件級別
node myService.js &
控制臺將顯示“在端口3000上運行的App Server”
要使此腳本在Raspberry PI Startup上運行(請檢查此鏈接)
步驟4:創建REST客戶端
現在,您可以使用服務了運行在分配給Raspberry PI Wireless接口的IP和端口3000上。
要將Raspberry PI連接到云,您必須檢查無線路由器設置(超出范圍)
現在我們可以假設客戶端與Raspberry PI位于同一網絡中。
因此,這只是一個調用,您可以在幾秒鐘內將其添加到應用程序中:
// Create the URL to make the rest call.
NSURL *restURL = [NSURL URLWithString:@“http://raspberrypi-address:port/unlock/”];
NSURLRequest *restRequest = [NSURLRequest requestWithURL:restURL];
currentConnection = [[NSURLConnection alloc] initWithRequest:restRequest delegate:self];
這是一個iOS代碼調用示例。
-
Web
+關注
關注
2文章
1306瀏覽量
74505 -
電子門鎖
+關注
關注
1文章
15瀏覽量
9932
發布評論請先 登錄
奧拓電子助力重慶永川3000㎡虛擬拍攝影棚啟用
人臉、指紋等智能門鎖與電子元器件有何關聯?讀完這篇文章你就懂了。
三芯協同,智啟新章:唯創電子語音芯片重塑智能門鎖,讓AI思考與溫情交互觸手可及
奧拓電子助力英國諾里奇藝術大學全新虛擬影棚正式啟用
給智能門鎖“裝個移動硬盤”:廣州唯創電子WTV語音芯片外置SPI Flash方案破解多語種語音存儲困局
提升識別率,降低功耗,安信可雷達模組賦能智能門鎖/門禁
無錫迪仕電子科技加大研發投入,創新實驗室正式啟用
智能門鎖選擇霍爾傳感器的3大理由
低功耗藍牙智能門鎖應用
WEB組態物聯網平臺是什么?有什么功能?
新穎實用電子設計與制作
新技術在智能門鎖中的應用
智能門鎖與物聯網的結合
可啟用Web的電子門鎖的制作教程
評論