基於wemos di製作手機app智慧宿舍開門系統
在學校期間,很多學生出門都忘記帶鑰匙,。同樣,我跟我舍友也是,出門很經常不帶鑰匙,每次都要去宿管哪裡拿,很麻煩。所以我就在淘寶買了一些模組,用手機就能開門了。幾十元就搞掂,絕對經濟實惠。
工作原理:wemos d1作為伺服器,wemos d1要和手機在同一個網路內(手機和開發板連同一個wifi),在arduino軟體編輯、燒錄程式碼後,通過串列埠除錯助手,獲取wemos d1的ip地址,開啟手機app(名稱:tcp連線),輸入ip地址,埠號(8888,程式碼有),連線伺服器後,在訊息哪裡傳送數字1,舵機開始旋轉,蜂鳴器響。
所需要的材料:wemos d1開發板,蜂鳴器,sg90舵機,手機app:tcp連線(安卓使用者)。
實物圖:
![在這裡插入圖片描述](https://img-blog.csdnimg.cn/20210102130555832.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTc5ODcyMw==,size_16,color_FFFFFF,t_70#pic_center)
具體怎樣安裝,看自己的宿舍門。
接線:
蜂鳴器:vcc-----3.3v
GND------GND
I/O--------D6
舵機:正極-------5V
負極-------GND
訊號線--------D5
手機APP的操作:
程式碼如下:
#include<ESP8266WiFi.h>
#include<Servo.h>
char* ssid = “TP-LINK_F6A7”; //“wifi熱點名稱”
char* passwd = “D734918698*”; //wifi熱點密碼”
int port = 8888; //埠號
WiFiServer server(port); // 設定伺服器埠號
Servo duoji;//舵機
void initWifiSta()//實現wemos d1網路連線的函式
{
WiFi.mode(WIFI_STA); // 設定STA模式
WiFi.begin(ssid, passwd); //連線網路
while (WiFi.status() != WL_CONNECTED) {
Serial.print(".");
delay(500);
}
Serial.println(WiFi.localIP()); //通過串列埠列印wemos的IP地址
}
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);//設定波特率
initWifiSta();//連線網路
server.begin();//開啟服務
duoji.attach(D5);//設定D5為舵機的輸出埠
pinMode(D6,OUTPUT);//設定D6為蜂鳴器的輸出埠
digitalWrite(D6,HIGH);//因為上電覆位時,蜂鳴器會響,先初始化它不響
}
void loop() {
// put your main code here, to run repeatedly:
char cmd;
WiFiClient client = server.available(); //服務初始化
while (client.connected()) { //等待客戶端連線
while (client.available() > 0) { //有資料到來,類似串列埠的那個函式
cmd = client.read();//讀取資料
if(cmd==‘1’){
duoji.write(120);//舵機旋轉120度
digitalWrite(D6,LOW);//蜂鳴器警報
delay(5000);
duoji.write(0);//舵機旋轉到0度
digitalWrite(D6,HIGH);//蜂鳴器不響
}
}
}
}
程式碼編輯軟體用arduino軟體。
希望這篇文章對你有用,如果有什麼遺漏或者不懂得歡迎留言。
相關文章
- 基於迅為4418開發板應用於智慧門禁系統案例
- windows系統盤製作,系統裝機Windows
- 手機寫作業系統之 製作第1個啟動盤作業系統
- 基於XML的DIXML
- JMeter手機app錄製JMeterAPP
- OSDev Wiki——作業系統開發入門基礎(一)dev作業系統
- 基於 Linux 的智慧手機 Librem 5 開啟預售LinuxREM
- 基於arduino+as608+360舵機的宿舍指紋鎖UI
- 嵌入式linux系統的開發——基於JFSS2檔案系統的分割槽及映象製作Linux
- 以太橙系統模式開發製作模式
- Springboot+Vue宿舍管理系統Spring BootVue
- JAVA學生宿舍管理系統Java
- 基於ThinkPHP開發的清新風格部落格系統帶WAP手機版PHP
- WeMos下實現小車避障與手機控制
- ravynOS 0.5.1 - 基於 FreeBSD 的 macOS 相容開源作業系統Mac作業系統
- 基於TRIZ理論的高效製冷系統智慧管控升級
- 智慧狩獵者Hunter機器人系統開發(定製)機器人
- [基於TP]網站訪客手機號碼抓取系統網站
- 森林鏈系統軟體開發製作
- 智慧導覽系統開發-景區智慧導覽系統定製開發
- Redox OS:基於Rust的作業系統Rust作業系統
- H5 手機 App 開發入門:概念篇H5APP
- Linux 製作系統映象Linux
- stardust-oxide:基於Rust的開源迷你作業系統UnikernelIDERust作業系統
- 基於kubernetes雲作業系統的生態系統 - Kelsey Hightower作業系統
- 【動手開發作業系統】- 介紹作業系統
- iOS作業系統是不是基於Linux呢?iOS作業系統Linux
- zynq 按照傳統的Linux開發模式製作系統Linux模式
- 手機寫作業系統之 圖形模式作業系統模式
- 麒麟系統開發筆記(五):製作安裝麒麟系統、物理機安裝麒麟系統搭建Qt開發環境筆記QT開發環境
- H5 手機 App 開發入門:技術篇H5APP
- 短影片APP系統原始碼,定製開發功能APP原始碼
- 影視APP系統原始碼,定製開發功能APP原始碼
- 電影APP系統原始碼,定製功能開發APP原始碼
- u盤製作系統盤
- AI智慧名片原始碼系統,智慧電子名片小程式PHP原始碼2開製作價格AI原始碼PHP
- 基於32的平衡小車製作
- OpenSNS開源社交系統+基於ThinkPHP 5.3以上+PC端+客戶端+手機網頁版PHP客戶端網頁