欧美成人黄色网_欧美精品久久_国产在线一区二区三区_免费视频久久久_亚洲二区视频_欧美大片免费高清观看

產品分類

當前位置: 首頁 > 傳感測量產品 > 數據采集產品 > RFID系統 > 讀寫器

類型分類:
科普知識
數據分類:
讀寫器

使用Arduino開發板輕松制作一款RFID智能門鎖

發布日期:2022-05-20 點擊率:46

  在某些酒店以及其他地方,我們曾經看到過使用RFID的門鎖,您無需鑰匙即可解鎖房間。給你一張卡片,然后只需要把它放在一個RFID閱讀器的前面,就可以實現解鎖,閱讀器發出嗶嗶聲,并且LED指示燈閃爍。這種RFID門鎖可以在家中輕松制作實現,您可以將其安裝在任何門上。這些門鎖通常是電動操作的門鎖,當你施加一定的電壓(通常為12V)時它會打開。

  在本篇文章中,我們使用Arduino開發板和繼電器來觸發電動門鎖,并且使用RFID進行驗證,因此RFID功能是一項功能。如果您在RFID閱讀器附近放置錯誤的RFID卡,蜂鳴器會發出警報,提示卡錯誤。

  所需的材料

  ● Arduino UNO開發板

  ● 帶標簽的EM-18讀卡器模塊

  ● 5v的繼電器

  ● LED指示燈

  ● 蜂鳴器

  ● 連接導線

  ● 電阻

  ● RFID電動門鎖

  Arduino的RFID門鎖電路原理圖

  以下是使用Arduino的RFID智能門鎖電路原理圖

使用Arduino<a title=開發板輕松制作一款RFID智能門鎖"/>

  EM-18 RFID閱讀器

  RFID代表射頻識別。每個RFID卡都嵌入了一個唯一的ID,并使用RFID閱讀器讀取RFID卡號。 EM-18 RFID閱讀器的工作頻率為125 KHz,配有一個片上天線,可以使用5V電源供電。它提供WEIGAND協議的串行輸出。通信范圍大約8-12厘米。串行通信參數為9600bps、8個數據位、1個停止位。這種無線射頻識別被用于許多系統中:

  ● 基于RFID的考勤系統,

  ● 安全系統

  ● 投票機

  ● 電子收費公路定價

  EM-18 RFID閱讀器提供的輸出采用12位ASCII碼格式。 12位數字中的前10位數是卡號,后兩位數是卡號的異或結果。最后兩位數字用于錯誤檢查。

  例如,從讀卡器讀取的卡號是0200107D0D62,則卡上的卡號將如下所示。

  02 - 前導符

  00107D0D = 1080589(十進制)。

  62是(02 XOR 00 XOR 10 XOR 7D XOR 0D)的XOR值。

  因此卡上的號碼是0001080589

  代碼和說明

  在本文的末尾處提供了RFID智能門鎖的完整代碼。

  在下面的代碼中,RFID標簽號存儲在“char標簽”中。 “180088F889E1”是存儲在發送應答器微芯片中的我的RFID標簽號碼。標簽號碼的長度是12,我們已經定義了類似“char input [12]”的數組,12定義了字符的個數或數組的大小。

  char tag[] ="180088F889E1";

  char input[12];

  int count = 0;

  boolean flag = 0;

  復制代碼

  現在,在下面的代碼中,我們設置了Arduino UNO開發板的引腳以進行操作,serial.begin()用于串行數據傳輸。這里引腳2用于繼電器操作,引腳3用于備用紅色LED,引腳4用于蜂鳴器。

  void setup()

  {

  pinMode(2,OUTPUT);

  pinMode(3, OUTPUT);

  pinMode(4, OUTPUT);

  Serial.begin(9600);

  }

  復制代碼

  代碼的條件主體是void loop(),對于備用紅色LED,引腳3保持高電平,直到執行任何任務。

  我們將使用if條件檢查是否有任何可用的串行數據。意味著我們將檢查是否有任何RFID標簽正在掃描。如果有任何串行數據(RFID標簽號)到來,我們會將其保存在我們為保存RFID標簽號而定義的輸入[]數組中。

  void loop(

  {

  digitalWrite(3,1);

  if(Serial.available())

  {

  count = 0;

  while(Serial.available() && count < 12)

  {

  input[count] = Serial.read();

  count++;

  delay(5);

  }

  復制代碼

  現在我們將比較掃描的RFID卡號。用我們在char tag []數組中定義的數字。如果兩個匹配都匹配,那么我們將標志變量設置為1,如果掃描了錯誤的卡或兩個數字不匹配,那么我們將標志變量設置為0。

  if(count == 12)

  {

  count =0;

  flag = 1;

  while(count<12 && flag !=0)

  {

  if(tag[count]==input[count])

  flag = 1;

  else

  flag= 0;

  }

  復制代碼

  如果您放置正確的RFID標簽,則標志等于1,在這種情況下,引腳2變為高電平(繼電器工作),此時引腳3變為低電平,延遲5秒后,兩個引腳將返回至其初始條件。繼電器將進一步連接到電動門鎖,因此繼電器打開后,門鎖將打開,5秒鐘后將再次鎖定。

  if(flag == 1)

  {

  digitalWrite(2,HIGH);

  digitalWrite(3,LOW);

  delay(5000);

  digitalWrite(2,LOW);

  }

  復制代碼

  如果您放置錯誤的RFID卡,該標志將為零,并且蜂鳴器開始發出蜂鳴聲,提醒該RFID卡錯誤。

  if(flag == 0)

  {

  for(int k =0; k<= 10; k++)

  {

  digitalWrite(4,HIGH);

  delay(300);

  digitalWrite(4,LOW);

  delay(300);

  }

  }

  復制代碼

  基于Arduino的RFID門鎖的工作過程

  RFID系統由兩部分組成:一個RFID標簽和一個讀卡器。 RFID標簽由集成電路和天線組成,集成電路用于存儲數據,天線用于將數據傳輸到RFID讀取器模塊。每當RFID標簽進入RFID閱讀器范圍時,RF信號為標簽供電,然后標簽開始串行傳輸數據。 RFID閱讀器進一步接收數據,閱讀器將其發送給Arduino板。然后,根據微控制器中的代碼執行不同的任務。

  在我們的電路中,我們已經在代碼中保存了RFID標簽的價值。所以,只要特定的標簽進入范圍內,繼電器就會被激活。在這里,我們已經連接了一個帶有繼電器的LED來演示,但是這個LED可以被電動門鎖取代,所以只要繼電器被激活,鎖就會打開。

  如果我們掃描任何其他RFID卡,蜂鳴器會發出蜂鳴聲,因為它是錯誤的RFID標簽。因此,對于門鎖系統,我們使用這個概念,即只有使用正確的RFID標簽才能打開門。 5秒鐘后,繼電器自動關閉,5秒鐘后門將關閉,您可以更改代碼中的延遲時間。

下一篇: PLC、DCS、FCS三大控

上一篇: 基于SOA的軟件架構將

推薦產品

更多
主站蜘蛛池模板: 东京热人妻系列无码专区 | 97夜夜澡人人爽人人喊中国片 | 忘穿内裤坐公交被挺进小说 | 精品久久香蕉国产线看观看亚洲 | 一级毛片在线观看视频 | 2020国产成人久久精品 | 国产成人无码免费网站 | 久久99精品热在线观看15 | 久久久久国产精品无码免费看 | 欧美日韩国产亚洲一区二区 | 人妻夜夜爽天天爽爽一区 | va在线视频 | 国产suv精品一区二人妻 | 午夜视频在线免费观看 | 亚洲欧美综合 | 黄色一级片在线观看 | 久久久久亚洲av成人网 | 国产三香港三韩国三级不卡 | 亚洲人成网站观看在线观看 | 欧美成人aaaaa免费视频 | 黄色在线视频播放 | 国产成人高清精品免费5388密 | 免费国产成人高清无线看软件 | 久久蜜桃亚洲一区二区 | 美女裸体视频永久免费 | 99精品国产综合久久久久五月天 | sese在线| 黄色激情在线观看 | 久久亚洲春色中文字幕久久久 | 99热精品久久只有精品 | 精品毛片视频 | 麻豆最新国产av原创精品 | 久久av高清无码 | 国精产品一区一区三区有限在线 | 成年女人毛片免费观看97 | 久久久国产精品亚洲一区 | 免费无码又爽又刺激毛片 | 波多野42部无码喷潮在线 | 午夜性刺激免费看视频 | 精品国产丝袜黑色高跟鞋 | 无码人中文字幕 |