<rt id="m4md3"></rt>
  • <bdo id="m4md3"><meter id="m4md3"></meter></bdo>
  • <label id="m4md3"></label>
      <center id="m4md3"><optgroup id="m4md3"></optgroup></center>
      產(chǎn)品分類

      當(dāng)前位置: 首頁 > 傳感測(cè)量產(chǎn)品 > 數(shù)據(jù)采集產(chǎn)品 > RFID系統(tǒng) > 讀寫器

      類型分類:
      科普知識(shí)
      數(shù)據(jù)分類:
      讀寫器

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

      發(fā)布日期:2022-05-20 點(diǎn)擊率:45

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

        在本篇文章中,我們使用Arduino開發(fā)板和繼電器來觸發(fā)電動(dòng)門鎖,并且使用RFID進(jìn)行驗(yàn)證,因此RFID功能是一項(xiàng)功能。如果您在RFID閱讀器附近放置錯(cuò)誤的RFID卡,蜂鳴器會(huì)發(fā)出警報(bào),提示卡錯(cuò)誤。

        所需的材料

        ● Arduino UNO開發(fā)板

        ● 帶標(biāo)簽的EM-18讀卡器模塊

        ● 5v的繼電器

        ● LED指示燈

        ● 蜂鳴器

        ● 連接導(dǎo)線

        ● 電阻

        ● RFID電動(dòng)門鎖

        Arduino的RFID門鎖電路原理圖

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

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

        EM-18 RFID閱讀器

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

        ● 基于RFID的考勤系統(tǒng),

        ● 安全系統(tǒng)

        ● 投票機(jī)

        ● 電子收費(fèi)公路定價(jià)

        EM-18 RFID閱讀器提供的輸出采用12位ASCII碼格式。 12位數(shù)字中的前10位數(shù)是卡號(hào),后兩位數(shù)是卡號(hào)的異或結(jié)果。最后兩位數(shù)字用于錯(cuò)誤檢查。

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

        02 - 前導(dǎo)符

        00107D0D = 1080589(十進(jìn)制)。

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

        因此卡上的號(hào)碼是0001080589

        代碼和說明

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

        在下面的代碼中,RFID標(biāo)簽號(hào)存儲(chǔ)在“char標(biāo)簽”中。 “180088F889E1”是存儲(chǔ)在發(fā)送應(yīng)答器微芯片中的我的RFID標(biāo)簽號(hào)碼。標(biāo)簽號(hào)碼的長(zhǎng)度是12,我們已經(jīng)定義了類似“char input [12]”的數(shù)組,12定義了字符的個(gè)數(shù)或數(shù)組的大小。

        char tag[] ="180088F889E1";

        char input[12];

        int count = 0;

        boolean flag = 0;

        復(fù)制代碼

        現(xiàn)在,在下面的代碼中,我們?cè)O(shè)置了Arduino UNO開發(fā)板的引腳以進(jìn)行操作,serial.begin()用于串行數(shù)據(jù)傳輸。這里引腳2用于繼電器操作,引腳3用于備用紅色LED,引腳4用于蜂鳴器。

        void setup()

        {

        pinMode(2,OUTPUT);

        pinMode(3, OUTPUT);

        pinMode(4, OUTPUT);

        Serial.begin(9600);

        }

        復(fù)制代碼

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

        我們將使用if條件檢查是否有任何可用的串行數(shù)據(jù)。意味著我們將檢查是否有任何RFID標(biāo)簽正在掃描。如果有任何串行數(shù)據(jù)(RFID標(biāo)簽號(hào))到來,我們會(huì)將其保存在我們?yōu)楸4鍾FID標(biāo)簽號(hào)而定義的輸入[]數(shù)組中。

        void loop(

        {

        digitalWrite(3,1);

        if(Serial.available())

        {

        count = 0;

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

        {

        input[count] = Serial.read();

        count++;

        delay(5);

        }

        復(fù)制代碼

        現(xiàn)在我們將比較掃描的RFID卡號(hào)。用我們?cè)赾har tag []數(shù)組中定義的數(shù)字。如果兩個(gè)匹配都匹配,那么我們將標(biāo)志變量設(shè)置為1,如果掃描了錯(cuò)誤的卡或兩個(gè)數(shù)字不匹配,那么我們將標(biāo)志變量設(shè)置為0。

        if(count == 12)

        {

        count =0;

        flag = 1;

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

        {

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

        flag = 1;

        else

        flag= 0;

        }

        復(fù)制代碼

        如果您放置正確的RFID標(biāo)簽,則標(biāo)志等于1,在這種情況下,引腳2變?yōu)楦唠娖?繼電器工作),此時(shí)引腳3變?yōu)榈碗娖剑舆t5秒后,兩個(gè)引腳將返回至其初始條件。繼電器將進(jìn)一步連接到電動(dòng)門鎖,因此繼電器打開后,門鎖將打開,5秒鐘后將再次鎖定。

        if(flag == 1)

        {

        digitalWrite(2,HIGH);

        digitalWrite(3,LOW);

        delay(5000);

        digitalWrite(2,LOW);

        }

        復(fù)制代碼

        如果您放置錯(cuò)誤的RFID卡,該標(biāo)志將為零,并且蜂鳴器開始發(fā)出蜂鳴聲,提醒該RFID卡錯(cuò)誤。

        if(flag == 0)

        {

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

        {

        digitalWrite(4,HIGH);

        delay(300);

        digitalWrite(4,LOW);

        delay(300);

        }

        }

        復(fù)制代碼

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

        RFID系統(tǒng)由兩部分組成:一個(gè)RFID標(biāo)簽和一個(gè)讀卡器。 RFID標(biāo)簽由集成電路和天線組成,集成電路用于存儲(chǔ)數(shù)據(jù),天線用于將數(shù)據(jù)傳輸?shù)絉FID讀取器模塊。每當(dāng)RFID標(biāo)簽進(jìn)入RFID閱讀器范圍時(shí),RF信號(hào)為標(biāo)簽供電,然后標(biāo)簽開始串行傳輸數(shù)據(jù)。 RFID閱讀器進(jìn)一步接收數(shù)據(jù),閱讀器將其發(fā)送給Arduino板。然后,根據(jù)微控制器中的代碼執(zhí)行不同的任務(wù)。

        在我們的電路中,我們已經(jīng)在代碼中保存了RFID標(biāo)簽的價(jià)值。所以,只要特定的標(biāo)簽進(jìn)入范圍內(nèi),繼電器就會(huì)被激活。在這里,我們已經(jīng)連接了一個(gè)帶有繼電器的LED來演示,但是這個(gè)LED可以被電動(dòng)門鎖取代,所以只要繼電器被激活,鎖就會(huì)打開。

        如果我們掃描任何其他RFID卡,蜂鳴器會(huì)發(fā)出蜂鳴聲,因?yàn)樗清e(cuò)誤的RFID標(biāo)簽。因此,對(duì)于門鎖系統(tǒng),我們使用這個(gè)概念,即只有使用正確的RFID標(biāo)簽才能打開門。 5秒鐘后,繼電器自動(dòng)關(guān)閉,5秒鐘后門將關(guān)閉,您可以更改代碼中的延遲時(shí)間。

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

      上一篇: 基于SOA的軟件架構(gòu)將

      推薦產(chǎn)品

      更多
      主站蜘蛛池模板: 中文网丁香综合网| 色综合天天综合高清网国产| 色五月丁香五月综合五月4438| 伊人久久久大香线蕉综合直播| 色综合久久98天天综合| 狠狠久久综合伊人不卡| 国产成人麻豆亚洲综合无码精品 | 国产成人综合精品| 国产天天综合永久精品日| 97色伦图片97综合影院久久 | 亚洲人成综合在线播放| 狠狠色丁香九九婷婷综合五月| 麻豆精品久久精品色综合| 热久久综合这里只有精品电影 | 久久久久久综合网天天| 日韩亚洲国产综合久久久| 久久99国产综合精品女同| 一本色道久久综合亚洲精品| 色综合综合色综合色综合| 亚洲综合久久综合激情久久| 亚洲 综合 国产 欧洲 丝袜| 亚洲AV综合色区无码一二三区| 狠狠色婷婷久久综合频道日韩| 色综合天天综合婷婷伊人| 国产综合精品一区二区| 亚洲综合精品成人| 色欲老女人人妻综合网| 色综合久久一区二区三区| 在线成人综合色一区| 亚洲欧洲国产综合AV无码久久| 中文网丁香综合网| 色综合网站国产麻豆| 伊人yinren6综合网色狠狠| 伊人久久亚洲综合影院首页| 69国产成人综合久久精品| 亚洲人成综合网站7777香蕉| 亚洲a∨国产av综合av下载| 色欲色香天天天综合VVV| 东京热TOKYO综合久久精品| 国产成人综合美国十次| 婷婷五月综合激情|