chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用Arduino創(chuàng)建停車門禁控制系統(tǒng)?

電子設(shè)計 ? 來源:電路城 ? 作者:電路城 ? 2021-04-28 14:53 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

您將學(xué)習(xí)如何使用Arduino創(chuàng)建自己的停車門禁控制系統(tǒng)。

硬件部件:

定制PCB× 1個

Arduino Uno × 1個

SparkFun RFID Qwiic套件 × 1個

SG90微型伺服電機(jī) × 1個

LED(通用) × 2

面包板(通用) × 1個

跳線(通用) × 1個

RGB背光LCD-16x2 × 1個

軟件應(yīng)用程序和在線服務(wù):

Arduino IDE

射頻識別或RFID(無線電頻率識別)是一種通過無線電信號自動識別,通過RFID標(biāo)簽檢索和存儲數(shù)據(jù)的方法。

這些RFID標(biāo)簽可以放置在動物,物體上。

因此,這些標(biāo)簽具有許多應(yīng)用,例如放置在車輛上的不間斷標(biāo)簽,動物識別。

RFID標(biāo)簽有3種類型:無源是對發(fā)送器發(fā)送的信號做出響應(yīng)的標(biāo)簽,半無源和會發(fā)出信號本身的有源標(biāo)簽。

當(dāng)前,有幾種方法可以控制對位置的訪問:使用指紋,帶密碼的小鍵盤以及使用RFID系統(tǒng)。

在本文中,我們將學(xué)習(xí)如何使用RFID技術(shù)開發(fā)訪問控制系統(tǒng)。

該系統(tǒng)將包括MFRC522 RFID模塊,用于打開門的伺服電動機(jī),作為系統(tǒng)HMI的顯示器以及信號LED。

因此,在本文中,我們將學(xué)習(xí)如何使用RFID模塊開發(fā)訪問控制。

因此,通過本文您將學(xué)到:

在原型板上執(zhí)行電路組裝;

了解RFID模塊的功能;

伺服電機(jī)啟動;

在液晶顯示屏上書寫。

現(xiàn)在,我們將開始使用RFID模塊完整介紹停車門禁系統(tǒng)項(xiàng)目的開發(fā)。

使用帶有Arduino的RFID模塊開發(fā)停車門禁控制系統(tǒng)

該項(xiàng)目的核心是RFID模塊,該模塊由帶有MFRC522集成電路的印刷電路板和板上的天線組成。

當(dāng)電路板通電時,模塊會發(fā)射射頻信號,并且當(dāng)標(biāo)簽接近模塊時,將讀取標(biāo)簽,每個標(biāo)簽具有不同的代碼。

該模塊由3.3 V供電,并使用SPI(串行外設(shè)接口通信與所使用的微控制器進(jìn)行通信。

要開發(fā)此項(xiàng)目,第一步是組裝圖1中的電路。

如何使用Arduino創(chuàng)建停車門禁控制系統(tǒng)?

電路的操作非常簡單!伺服電機(jī)是用于打開和關(guān)閉門的機(jī)構(gòu)。每次RFID模塊識別標(biāo)簽時,Arduino都會發(fā)送信息以激活或關(guān)閉門。

LCD被用作與用戶的通信接口。

接下來,我們將看到該項(xiàng)目的編程邏輯如何工作。

Arduino的停車系統(tǒng)控制的操作邏輯

要編程Arduino Nano,我們將需要以下庫:

SPI-包含執(zhí)行SPI通信所需功能的庫。

MFRC522-包含與RFID模塊通信所需功能的庫。

伺服-包含啟動伺服電動機(jī)所需功能的庫。

電線-包含與LCD顯示器進(jìn)行I2C通信所需功能的庫。

Arduino IDE中未安裝liquidCrystal_I2C和MFRC522庫,因此我們必須安裝它們。

安裝庫后,關(guān)閉Arduino IDE并再次打開它。

完整的代碼如下所示。

/*

* Teste Leitor RFID

* tag 1 F1 B103 1F 241 17703 31

F1 B1 03 1F

tag 2 14 45 29 57 20 69 41 87

14 45 29 57

*/

#include 《SPI.h》

#include 《MFRC522.h》

#include 《Servo.h》

#include 《Wire.h》

#include 《LiquidCrystal_I2C.h》

Servo myservo ;

LiquidCrystal_I2C lcd (0x27,2,1,0,4,5,6,7,3,POSITIVE);

#define vermelho 4

#define verde 5

#define SS_PIN 10

#define RST_PIN 9

MFRC522 mfrc522 (SS_PIN, RST_PIN);

void setup()

{

Wire.begin();

lcd.begin(16,2);

lcd.setBacklight(HIGH);

lcd.setCursor(0,0);

lcd.print(“Aproxime a sua ”);

lcd.setCursor(0,1);

lcd.print(“tag do leitor ”);

pinMode(verde,OUTPUT);

pinMode(vermelho,OUTPUT);

Serial.begin(9600);

SPI.begin();

Serial.println(“Aproxime a tag do leitor ”);

mfrc522.PCD_Init();

digitalWrite(verde,0);

digitalWrite(vermelho,0);

myservo.attach(6);

}

void loop()

{

if(!mfrc522.PICC_IsNewCardPresent())

{

return;

}

if(!mfrc522.PICC_ReadCardSerial())

{

return;

}

Serial.print(“ UID da tag : ”);

String conteudo = “”;

byte letra;

for (byte i = 0; i《 mfrc522.uid.size; i++)

{

Serial.print(mfrc522.uid.uidByte[i] 《0x10 ? “0”:“ ”);

Serial.print(mfrc522.uid.uidByte[i], HEX);

conteudo.concat(String(mfrc522.uid.uidByte[i] 《 0x10 ? “ 0” : “ ”));

conteudo.concat(String(mfrc522.uid.uidByte[i], HEX));

}

Serial.println();

Serial.print(“Mensagem : ”);

conteudo.toUpperCase();

if(conteudo.substring(1) == “14 45 29 57”)

{

lcd.clear();

Serial.println(“Acesso liberado ”);

lcd.setBacklight(HIGH);

lcd.setCursor(0,0);

lcd.print(“Ola !”);

lcd.setCursor(0,1);

lcd.print(“Acesso liberado”);

digitalWrite(verde,1);

digitalWrite(vermelho,0);

myservo.write(95);

delay(800);

myservo.write(10);

digitalWrite(verde,0);

digitalWrite(vermelho,1);

}

if(conteudo.substring(1) == “F1 B1 03 1F”)

{

lcd.clear();

Serial.println(“Acesso negado ”);

digitalWrite(verde,0);

digitalWrite(vermelho,1);

lcd.setBacklight(HIGH);

lcd.setCursor(0,0);

lcd.print(“Erro ! Tag nao ”);

lcd.setCursor(0,1);

lcd.print(“autorizada ”);

}

delay(1000);

lcd.clear();

lcd.setBacklight(HIGH);

lcd.setCursor(0,0);

lcd.print(“Aproxime a sua ”);

lcd.setCursor(0,1);

lcd.print(“tag do leitor ”);

}

在下面,我們將解釋該項(xiàng)目的完整邏輯。

您需要做的第一件事是聲明項(xiàng)目中使用的組件的所有庫。

#include 《SPI.h》

#include 《MFRC522.h》

#include 《Servo.h》

#include 《Wire.h》

#include 《LiquidCrystal_I2C.h》

然后,聲明伺服電機(jī)和LCD的對象。對象的創(chuàng)建如下。

Servo myservo;

LiquidCrystal_I2C lcd (0x27,2,1,0,4,5,6,7,3,POSITIVE);

MFRC522 mfrc522 (SS_PIN, RST_PIN);

現(xiàn)在,我們已經(jīng)在Arduino上連接了引腳。

#define vermelho 4

#define verde 5

#define SS_PIN 10

#define RST_PIN 9

下面是void設(shè)置功能。它初始化I2C串行通信,串行通信,將引腳配置為輸出,以及連接伺服電機(jī)的引腳。

void setup()

{

Wire.begin();

lcd.begin(16,2);

lcd.setBacklight(HIGH);

lcd.setCursor(0,0);

lcd.print(“Aproxime a sua ”);

lcd.setCursor(0,1);

lcd.print(“tag do leitor ”);

pinMode(verde,OUTPUT);

pinMode(vermelho,OUTPUT);

Serial.begin(9600);

SPI.begin();

Serial.println(“Aproxime a tag do leitor ”);

mfrc522.PCD_Init();

digitalWrite(verde,0);

digitalWrite(vermelho,0);

myservo.attach(6);

}

現(xiàn)在讓我們了解在void循環(huán)函數(shù)中實(shí)現(xiàn)的完整編程邏輯如何工作。請參見下面的空循環(huán)代碼。

void loop()

{

if(!mfrc522.PICC_IsNewCardPresent())

{

return;

}

if(!mfrc522.PICC_ReadCardSerial())

{

return;

}

Serial.print(“ UID da tag : ”);

String conteudo = “”;

byte letra;

for (byte i = 0; i《 mfrc522.uid.size; i++)

{

Serial.print(mfrc522.uid.uidByte[i] 《0x10 ? “0”:“ ”);

Serial.print(mfrc522.uid.uidByte[i], HEX);

conteudo.concat(String(mfrc522.uid.uidByte[i] 《 0x10 ? “ 0” : “ ”));

conteudo.concat(String(mfrc522.uid.uidByte[i], HEX));

}

Serial.println();

Serial.print(“Mensagem : ”);

conteudo.toUpperCase();

if(conteudo.substring(1) == “14 45 29 57”)

{

lcd.clear();

Serial.println(“Acesso liberado ”);

lcd.setBacklight(HIGH);

lcd.setCursor(0,0);

lcd.print(“Ola !”);

lcd.setCursor(0,1);

lcd.print(“Acesso liberado”);

digitalWrite(verde,1);

digitalWrite(vermelho,0);

myservo.write(95);

delay(800);

myservo.write(10);

digitalWrite(verde,0);

digitalWrite(vermelho,1);

}

if(conteudo.substring(1) == “F1 B1 03 1F”)

{

lcd.clear();

Serial.println(“Acesso negado ”);

digitalWrite(verde,0);

digitalWrite(vermelho,1);

lcd.setBacklight(HIGH);

lcd.setCursor(0,0);

lcd.print(“Erro ! Tag nao ”);

lcd.setCursor(0,1);

lcd.print(“autorizada ”);

}

delay(1000);

lcd.clear();

lcd.setBacklight(HIGH);

lcd.setCursor(0,0);

lcd.print(“Aproxime a sua ”);

lcd.setCursor(0,1);

lcd.print(“tag do leitor ”);

}

您應(yīng)該做的第一件事是檢查沒有檢測到標(biāo)簽并且沒有讀取標(biāo)簽。代碼如下所示。

if(!mfrc522.PICC_IsNewCardPresent())

{

return;

}

if(!mfrc522.PICC_ReadCardSerial())

{

return;

}

之后,系統(tǒng)讀取標(biāo)簽并在IDE Arduino串行監(jiān)視器上顯示其值。請參閱下面的代碼部分。

Serial.print(“ UID da tag : ”);

String conteudo = “”;

byte letra;

for (byte i = 0; i《 mfrc522.uid.size; i++)

{

Serial.print(mfrc522.uid.uidByte[i] 《0x10 ? “0”:“ ”);

Serial.print(mfrc522.uid.uidByte[i], HEX);

conteudo.concat(String(mfrc522.uid.uidByte[i] 《 0x10 ? “ 0” : “ ”));

conteudo.concat(String(mfrc522.uid.uidByte[i], HEX));

}

Serial.println();

Serial.print(“Mensagem : ”);

conteudo.toUpperCase();

不能在sistema上使用apresenta??odocódigo標(biāo)簽,請在val上使用十六進(jìn)制cadastrado no sistema。

if(conteudo.substring(1) == “14 45 29 57”)

{

lcd.clear();

Serial.println(“Acesso liberado ”);

lcd.setBacklight(HIGH);

lcd.setCursor(0,0);

lcd.print(“Ola !”);

lcd.setCursor(0,1);

lcd.print(“Acesso liberado”);

digitalWrite(verde,1);

digitalWrite(vermelho,0);

myservo.write(95);

delay(800);

myservo.write(10);

digitalWrite(verde,0);

digitalWrite(vermelho,1);

}

如果標(biāo)簽值等于14 45 29 57,則將執(zhí)行上述條件的命令。在這些命令中,LCD將打印訪問消息并激活伺服電機(jī)以打開入口門。

如果標(biāo)簽值等于F1 B1 03 1F值,則代碼流輸入條件并顯示消息“標(biāo)簽未授權(quán)!”。并且不會觸發(fā)伺服電機(jī)釋放訪問權(quán)限。

代碼部分如下所示。

if(conteudo.substring(1) == “F1 B1 03 1F”)

{

lcd.clear();

Serial.println(“Acesso negado ”);

digitalWrite(verde,0);

digitalWrite(vermelho,1);

lcd.setBacklight(HIGH);

lcd.setCursor(0,0);

lcd.print(“Erro ! Tag nao ”);

lcd.setCursor(0,1);

lcd.print(“autorizada ”);

}

最后,系統(tǒng)清潔LCD屏幕并顯示消息,以使用戶將標(biāo)簽靠近RFID閱讀器。代碼區(qū)域如下所示。

delay(1000);

lcd.clear();

lcd.setBacklight(HIGH);

lcd.setCursor(0,0);

lcd.print(“Aproxime a sua ”);

lcd.setCursor(0,1);

lcd.print(“tag do leitor ”);

現(xiàn)在,我們將在平臺上的電路上看到代碼的結(jié)果。

對Arduino Uno進(jìn)行編程后,我們將使系統(tǒng)正常工作。

在圖2中,我們收到系統(tǒng)的初始消息,要求用戶接近標(biāo)簽以釋放訪問權(quán)限。

如何使用Arduino創(chuàng)建停車門禁控制系統(tǒng)?

在圖3中,我們讓用戶使用正確的標(biāo)簽進(jìn)行訪問,然后綠色LED亮起并激活伺服電機(jī),并且訪問顯示在顯示屏上。

800毫秒后,伺服電動機(jī)返回初始位置,綠色指示燈熄滅,紅色指示燈亮起。

如何使用Arduino創(chuàng)建停車門禁控制系統(tǒng)?

在圖4中,用戶使用了未注冊的標(biāo)簽,因此系統(tǒng)出現(xiàn)錯誤,并且不釋放訪問權(quán)限。

如何使用Arduino創(chuàng)建停車門禁控制系統(tǒng)?

之后,系統(tǒng)重新啟動編程邏輯操作周期。

結(jié)論和未來項(xiàng)目改進(jìn)

使用RFID技術(shù)的系統(tǒng)已應(yīng)用于多種類型的項(xiàng)目。它們不僅限于控制和訪問系統(tǒng)。例如,一種非常常見的應(yīng)用是使用它來識別成批的服裝和其他商品。

利用您的創(chuàng)造力,您將通過帶有Arduino的RFID模塊為您的項(xiàng)目找到不同類型的應(yīng)用程序。

將來,我們將使用Arduino創(chuàng)建門系統(tǒng)的原型,供您在實(shí)際中使用激光切割機(jī)或3D打印機(jī)設(shè)置停車場。
責(zé)任編輯:pj

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • led
    led
    +關(guān)注

    關(guān)注

    242

    文章

    23840

    瀏覽量

    673961
  • 控制系統(tǒng)
    +關(guān)注

    關(guān)注

    41

    文章

    6780

    瀏覽量

    112157
  • 應(yīng)用程序
    +關(guān)注

    關(guān)注

    38

    文章

    3335

    瀏覽量

    59024
  • Arduino
    +關(guān)注

    關(guān)注

    190

    文章

    6498

    瀏覽量

    192124
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    請問怎樣去設(shè)計一種車門分布式控制系統(tǒng)?

    一種介紹基于CAN/LIN總線的車門分布式控制系統(tǒng)設(shè)計
    發(fā)表于 05-14 06:44

    請問怎樣去設(shè)計一種基于Arduino Nano的智能門禁控制系統(tǒng)

    基于Arduino Nano的智能門禁控制系統(tǒng)的硬件是怎樣構(gòu)成的?基于Arduino Nano的智能門禁
    發(fā)表于 08-23 07:15

    停車門禁管理系統(tǒng)應(yīng)該如何選購 精選資料分享

    民用道閘和工業(yè)級道閘,普通道閘和變頻道閘,價格也是幾千到上萬不等,今天我們就來討論一下停車門禁管理系統(tǒng)中的道閘如何選擇。一、電機(jī)控制器需要采用變頻技術(shù)嗎?變頻技術(shù)可以
    發(fā)表于 09-06 06:37

    車門禁和胎壓監(jiān)測系統(tǒng)解決方案

    車門禁和胎壓監(jiān)測系統(tǒng)解決方案
    發(fā)表于 10-10 16:08 ?90次下載
    汽<b class='flag-5'>車門禁</b>和胎壓監(jiān)測<b class='flag-5'>系統(tǒng)</b>解決方案

    基于TLE7810的車門控制系統(tǒng)設(shè)計

    基于TLE7810的車門控制系統(tǒng)設(shè)計 汽車技術(shù)發(fā)展至今,電子控制單元(ECU)已經(jīng)應(yīng)用到在汽車內(nèi)部的各個環(huán)節(jié),技術(shù)也日趨成熟。作為車身電子的重要組成部分,車門電子自動
    發(fā)表于 03-14 08:47 ?763次閱讀
    基于TLE7810的<b class='flag-5'>車門控制系統(tǒng)</b>設(shè)計

    遙控車門開關(guān)系統(tǒng)的原理和設(shè)計方案分析

    遙控車門開關(guān)系統(tǒng)的原理和設(shè)計方案分析 前言   汽車防盜、報警功能以及門禁控制將成為汽車安全控制系統(tǒng)必備的功能之一。通過對Maxim公
    發(fā)表于 03-01 10:10 ?2835次閱讀
    遙控<b class='flag-5'>車門開關(guān)系統(tǒng)</b>的原理和設(shè)計方案分析

    基于CAN/LIN 實(shí)現(xiàn)車門分布式控制系統(tǒng)的設(shè)計與研究

    結(jié)合 CAN 總線和 LIN 總線各自的優(yōu)缺點(diǎn),設(shè)計實(shí)現(xiàn)了基于 CAN/LIN 總線的分層式車門控制系統(tǒng),首先講述了集中式控制系統(tǒng)結(jié)構(gòu)和分布式控制系統(tǒng)結(jié)構(gòu)的實(shí)現(xiàn)及相應(yīng)的特點(diǎn),論述了選定分布式結(jié)構(gòu)的原因,然后詳述了
    發(fā)表于 09-08 10:58 ?7次下載
    基于CAN/LIN 實(shí)現(xiàn)<b class='flag-5'>車門</b>分布式<b class='flag-5'>控制系統(tǒng)</b>的設(shè)計與研究

    基于新唐MCU門禁控制系統(tǒng),其基本構(gòu)架是怎樣的

    基于新唐MCU門禁控制系統(tǒng) 門禁系統(tǒng)是在智能建筑領(lǐng)域,意為Access Control System,簡稱ACS。指“門”的禁止權(quán)限,是對“門“的戒備防范。這里的“門”,廣義來說,包括
    發(fā)表于 05-04 10:21 ?1029次閱讀

    基于DSP的門禁控制系統(tǒng)設(shè)計與實(shí)現(xiàn)

    門禁控制系統(tǒng)得到日益廣泛的應(yīng)用 不斷提高門禁系統(tǒng)的安全性成為研究的重要課題本課題在對現(xiàn)在門禁系統(tǒng)
    發(fā)表于 04-27 09:47 ?13次下載
    基于DSP的<b class='flag-5'>門禁</b><b class='flag-5'>控制系統(tǒng)</b>設(shè)計與實(shí)現(xiàn)

    使用Arduino的基于RFID的訪問控制系統(tǒng)

    電子發(fā)燒友網(wǎng)站提供《使用Arduino的基于RFID的訪問控制系統(tǒng).zip》資料免費(fèi)下載
    發(fā)表于 10-27 11:57 ?1次下載
    使用<b class='flag-5'>Arduino</b>的基于RFID的訪問<b class='flag-5'>控制系統(tǒng)</b>

    如何為汽車門禁系統(tǒng)的發(fā)展打開機(jī)遇大門

    如何為汽車門禁系統(tǒng)的發(fā)展打開機(jī)遇大門
    發(fā)表于 10-31 08:24 ?2次下載
    如何為汽<b class='flag-5'>車門禁</b><b class='flag-5'>系統(tǒng)</b>的發(fā)展打開機(jī)遇大門

    如何制作RFID Arduino門禁系統(tǒng)

    電子發(fā)燒友網(wǎng)站提供《如何制作RFID Arduino門禁系統(tǒng).zip》資料免費(fèi)下載
    發(fā)表于 06-27 10:34 ?4次下載
    如何制作RFID <b class='flag-5'>Arduino</b><b class='flag-5'>門禁</b><b class='flag-5'>系統(tǒng)</b>

    Arduino球和光束控制系統(tǒng)

    電子發(fā)燒友網(wǎng)站提供《Arduino球和光束控制系統(tǒng).zip》資料免費(fèi)下載
    發(fā)表于 07-10 11:28 ?0次下載
    <b class='flag-5'>Arduino</b>球和光束<b class='flag-5'>控制系統(tǒng)</b>

    新唐參考應(yīng)用|智能門禁控制系統(tǒng)

    新唐參考應(yīng)用|智能門禁控制系統(tǒng)
    的頭像 發(fā)表于 08-11 15:20 ?1155次閱讀
    新唐參考應(yīng)用|智能<b class='flag-5'>門禁</b><b class='flag-5'>控制系統(tǒng)</b>

    基于NFC技術(shù)的門禁控制系統(tǒng)設(shè)計

    電子發(fā)燒友網(wǎng)站提供《基于NFC技術(shù)的門禁控制系統(tǒng)設(shè)計.pdf》資料免費(fèi)下載
    發(fā)表于 11-10 15:44 ?0次下載
    基于NFC技術(shù)的<b class='flag-5'>門禁</b><b class='flag-5'>控制系統(tǒng)</b>設(shè)計