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

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

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

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

怎樣制作一個(gè)簡(jiǎn)單的Arduino報(bào)警系統(tǒng)

454398 ? 來(lái)源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2019-12-02 16:27 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

檢測(cè)運(yùn)動(dòng),然后以高音調(diào)的警報(bào)聲和閃爍的燈光嚇跑入侵者。聽(tīng)起來(lái)有趣嗎?當(dāng)然可以。這是今天的Arduino項(xiàng)目的目標(biāo),適合初學(xué)者。在進(jìn)行過(guò)程中,我們將完全從頭開(kāi)始進(jìn)行測(cè)試,以便您可以希望了解所有過(guò)程,而不僅僅是安裝我已經(jīng)完成的工作。

免責(zé)聲明:這實(shí)際上不會(huì)保護(hù)您的房屋。

可能會(huì)給您妹妹一個(gè)令人討厭的沖擊。

您需要:

Arduino

超聲波“ ping”傳感器,我使用的是HC-SR04,PIR會(huì)更好,但價(jià)格昂貴??梢詫ing傳感器秘密地放置在門口中,并且仍然可以執(zhí)行相同的基本工作,并且只需$ 5

壓電蜂鳴器

LED條形燈,其接線與我們以前使用的相同在這個(gè)項(xiàng)目中。

在連接該項(xiàng)目時(shí),不要每次都刪除所有內(nèi)容-繼續(xù)在最后一個(gè)塊上進(jìn)行構(gòu)建。到“編碼警報(bào)系統(tǒng)”部分時(shí),您應(yīng)該已經(jīng)將所有零碎的東西連接起來(lái),看起來(lái)像這樣:

怎樣制作一個(gè)簡(jiǎn)單的Arduino報(bào)警系統(tǒng)

閃爍的燈光

使用該項(xiàng)目的接線圖連接您的LED燈帶;不要更改引腳,因?yàn)槲覀冃枰狿WM輸出。使用此代碼快速測(cè)試您的接線。如果一切順利,您應(yīng)該具有以下條件:

距離傳感器

在SR04模塊上,您會(huì)找到4個(gè)引腳。 VCC 和 GND 分別連接至+ 5V電源軌和地。 TRIG 是用于發(fā)送聲納信號(hào)的引腳,將其置于引腳6上; ECHO 用于回讀信號(hào)(并由此計(jì)算距離)-將其放在7上。

事情非常簡(jiǎn)單,我們可以使用一個(gè)名為NewPing的庫(kù)。下載并放置在Arduino的 Library 文件夾中,然后重新啟動(dòng)IDE,然后繼續(xù)。使用此代碼進(jìn)行測(cè)試;打開(kāi)串行監(jiān)視器,并確保速度設(shè)置為115200波特。運(yùn)氣好的話,您應(yīng)該會(huì)看到一些距離測(cè)量值以很高的速度發(fā)送回給您。您可能會(huì)發(fā)現(xiàn)1或2厘米的差異,但這很好。嘗試將手放在傳感器的前面,上下移動(dòng)以觀察變化的讀數(shù)。

代碼應(yīng)該很容易理解。開(kāi)始時(shí)有一些相關(guān)引腳的聲明,包括最大距離-這可能取決于您使用的確切傳感器,但是只要您能夠準(zhǔn)確獲得小于1米的讀數(shù),就可以了。

在此測(cè)試應(yīng)用程序的循環(huán)中,我們使用 ping()函數(shù)發(fā)出聲納ping,以毫秒為單位取回該值花費(fèi)了多長(zhǎng)時(shí)間的值返回。為此,我們使用以 US_ROUNDTRIP_CM 常量構(gòu)建的NewPing庫(kù),該庫(kù)定義移動(dòng)一厘米需要多少微秒。兩次ping之間還存在50毫秒的延遲,以避免傳感器過(guò)載。

壓電式警報(bào)

壓電晶體傳感器是一種簡(jiǎn)單且便宜的蜂鳴器,我們可以使用PWM引腳3發(fā)出不同的音調(diào)。將一根導(dǎo)線連接到引腳3,將一根導(dǎo)線連接到接地導(dǎo)軌–沒(méi)關(guān)系。

使用此代碼進(jìn)行測(cè)試。

殺死相當(dāng)討厭且響亮的警報(bào)的唯一方法是拔插頭。該代碼解釋起來(lái)有些復(fù)雜,但是它涉及使用正弦波來(lái)產(chǎn)生獨(dú)特的聲音。調(diào)整數(shù)字以使用不同的音調(diào)。

編碼警報(bào)系統(tǒng)

現(xiàn)在我們已經(jīng)擁有了拼圖的所有內(nèi)容,讓我們將它們組合在一起。

繼續(xù)制作一個(gè)新的草圖,稱為警報(bào)。首先將到目前為止在測(cè)試示例中使用的所有變量和引腳定義進(jìn)行組合。

#include

// Select which PWM-capable pins are to be used.

#define RED_PIN 10

#define GREEN_PIN 11

#define BLUE_PIN 9

#define TRIGGER_PIN 6 // Arduino pin tied to trigger pin on the ultrasonic sensor.

#define ECHO_PIN 7 // Arduino pin tied to echo pin on the ultrasonic sensor.

#define MAX_DISTANCE 100 // Maximum distance we want to ping for (in centimeters)。

#define ALARM 3

float sinVal;

int toneVal;

首先編寫基本的 setup()功能–我們現(xiàn)在只處理燈光。我在主循環(huán)開(kāi)始前添加了5秒的延遲,以便在需要時(shí)給我們一些時(shí)間。

void setup(){

//set pinModes for RGB strip

pinMode(RED_PIN,OUTPUT);

pinMode(BLUE_PIN,OUTPUT);

pinMode(GREEN_PIN,OUTPUT);

//reset lights

analogWrite(RED_PIN,0);

analogWrite(BLUE_PIN,0);

analogWrite(RED_PIN,0);

delay(5000);

}

讓我們使用一個(gè)幫助函數(shù)

//helper function enabling us to send a colour in one command

void color (unsigned char red, unsigned char green, unsigned char blue) // the color generating function

{

analogWrite(RED_PIN, red);

analogWrite(BLUE_PIN, blue);

analogWrite(GREEN_PIN, green);

}

最后,我們的循環(huán)現(xiàn)在將由紅色和黃色之間的簡(jiǎn)單彩色閃光組成(或者,無(wú)論您希望發(fā)出什么警報(bào),只需更改RGB值即可。

void loop(){

color(255,0,0); //red

delay(100);

color(255,255,0); //yellow

delay(100);

}

上傳并測(cè)試以確保您處在正確的軌道上。

現(xiàn)在,讓我們集成距離傳感器,以便僅在有物體進(jìn)入(例如50厘米)(剛好小于門框的寬度)時(shí)才觸發(fā)那些燈。我們已經(jīng)定義了正確的引腳并導(dǎo)入了庫(kù),因此在您的 setup()函數(shù)之前,添加以下行以對(duì)其進(jìn)行實(shí)例化:

NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); // NewPing setup of pins and maximum distance.

在此之下,添加一個(gè)變量以存儲(chǔ)是否觸發(fā)警報(bào),當(dāng)然默認(rèn)為false。

boolean triggered = false;

在 setup()函數(shù),以便我們可以監(jiān)視串行輸出和調(diào)試。

Serial.begin(115200); // Open serial monitor at 115200 baud to see ping results.

接下來(lái),讓我們將當(dāng)前循環(huán)重命名為 alarm() –如果警報(bào)已觸發(fā),將調(diào)用此名稱。

void alarm(){

color(255,0,0); //red

delay(100);

color(255,255,0); //yelow

delay(100);

}

現(xiàn)在創(chuàng)建一個(gè)新的 loop()函數(shù),一個(gè)

void loop(){

if(triggered == true){

alarm();

}

else{

delay(50);// Wait 50ms between pings (about 20 pings/sec)。 29ms should be the shortest delay between pings.

unsigned int uS = sonar.ping(); // Send ping, get ping time in microseconds (uS)。

unsigned int distance = uS / US_ROUNDTRIP_CM;

Serial.println(distance);

if(distance 《 100){

triggered = true;

}

}

}

在其中,我們獲取一個(gè)新的ping命令,讀取結(jié)果,并在出現(xiàn)警報(bào)的情況下觸發(fā)警報(bào)。 p》

首先檢查是否已觸發(fā)警報(bào),如果已觸發(fā),則關(guān)閉警報(bào)功能(此時(shí)僅閃爍指示燈)。

如果未觸發(fā)但是,仍要從傳感器獲取當(dāng)前讀數(shù)。

如果傳感器的讀數(shù)小于100厘米,則說(shuō)明光束已被填充(顯然,如果觸發(fā)時(shí)間過(guò)早,請(qǐng)調(diào)整此值)。

在添加煩人的壓電蜂鳴器之前,請(qǐng)立即試用。

工作嗎?大?,F(xiàn)在讓我們重新添加蜂鳴器。將 pinMode 添加到 setup()例程中。

pinMode(ALARM, OUTPUT);

然后將壓電蜂鳴器循環(huán)添加到alarm()函數(shù):

for (int x=0; x《180; x++) {

// convert degrees to radians then obtain sin value

sinVal = (sin(x*(3.1412/180)));

// generate a frequency from the sin value

toneVal = 2000+(int(sinVal*1000));

tone(ALARM, toneVal);

}

如果此時(shí)嘗試進(jìn)行編譯,則會(huì)遇到錯(cuò)誤-我故意將其保留,以便您可以看到一些常見(jiàn)的錯(cuò)誤問(wèn)題。在這種情況下,NewPing庫(kù)和標(biāo)準(zhǔn)音調(diào)庫(kù)都使用相同的中斷-它們基本上是沖突的,因此您無(wú)法做很多修復(fù)。哦,親愛(ài)的。

不過(guò)不用擔(dān)心。這是一個(gè)常見(jiàn)問(wèn)題,已經(jīng)有人解決了,請(qǐng)下載此NewTone并將其添加到Arduino Libraries文件夾中。調(diào)整程序的開(kāi)頭以包括以下內(nèi)容:

#include

,并調(diào)整以下行:

tone(ALARM, toneVal);

NewTone(ALARM, toneVal);

。

就是這樣。將警報(bào)設(shè)置在臥室的門口,以防下一個(gè)不幸的竊賊。

或者是一只狗,看起來(lái)好像完全沒(méi)被警報(bào)嚇到。

遇到麻煩了代碼?這是完整的應(yīng)用程序。如果您遇到隨機(jī)錯(cuò)誤,請(qǐng)嘗試將其粘貼在下面,我會(huì)幫忙看看。

責(zé)任編輯:wv

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

    關(guān)注

    190

    文章

    6516

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    系統(tǒng)調(diào)用和API有什么區(qū)別呢?

    是怎么控制游戲中的人物前進(jìn)或者后退你根本不需要關(guān)心;圖形界面就是計(jì)算機(jī)給我們提供的“API”,我們只需要簡(jiǎn)單的ctrl+c即可copy份文件,至于到底是怎樣拷貝的我們無(wú)需關(guān)心。 同樣,你的代碼有
    發(fā)表于 12-03 06:52

    校園報(bào)警

    報(bào)警
    jf_55301954
    發(fā)布于 :2025年11月06日 16:46:52

    4g報(bào)警器能不能改成個(gè)反電魚(yú)報(bào)警

    4G報(bào)警器通過(guò)震動(dòng)脫落磁鐵來(lái)感應(yīng)報(bào)警能不能改成感應(yīng)電流報(bào)警應(yīng)用場(chǎng)景-魚(yú)塘水庫(kù) 江河湖泊新能源監(jiān)控實(shí)時(shí)感應(yīng)報(bào)警對(duì)于電路完全小白求大佬指點(diǎn)下需
    發(fā)表于 10-31 23:35

    報(bào)警芯片怎樣選擇?報(bào)警器用的什么芯片?報(bào)警芯片的主要類型?常見(jiàn)報(bào)警芯片推薦?防盜器芯片有哪些?

    選擇報(bào)警芯片時(shí),需要根據(jù)具體的應(yīng)用場(chǎng)景、功能需求、成本預(yù)算和性能要求進(jìn)行綜合評(píng)估。以下是選擇報(bào)警芯片時(shí)需要考慮的幾個(gè)關(guān)鍵因素,幫助你做出更合適的選擇:
    的頭像 發(fā)表于 09-22 18:55 ?241次閱讀
    <b class='flag-5'>報(bào)警</b>芯片<b class='flag-5'>怎樣</b>選擇?<b class='flag-5'>報(bào)警</b>器用的什么芯片?<b class='flag-5'>報(bào)警</b>芯片的主要類型?常見(jiàn)<b class='flag-5'>報(bào)警</b>芯片推薦?防盜器芯片有哪些?

    如何用Arduino Nano/UNO R3開(kāi)發(fā)板給另一個(gè)Arduino IDE不能下載的Arduino Nano/UNO R3開(kāi)發(fā)板重新燒錄引導(dǎo)程序bootlaoder

    本文介紹了如何用能夠Arduino IDE下載的Arduino Nano/UNO R3開(kāi)發(fā)板給另一個(gè)Arduino IDE不能下載的Arduino
    的頭像 發(fā)表于 08-08 20:16 ?3172次閱讀
    如何用<b class='flag-5'>Arduino</b> Nano/UNO R3開(kāi)發(fā)板給另<b class='flag-5'>一個(gè)</b><b class='flag-5'>Arduino</b> IDE不能下載的<b class='flag-5'>Arduino</b> Nano/UNO R3開(kāi)發(fā)板重新燒錄引導(dǎo)程序bootlaoder

    如何使用WaveDac8設(shè)置個(gè)簡(jiǎn)單的數(shù)據(jù)采集系統(tǒng),以生成不同持續(xù)時(shí)間的脈沖?

    我目前正在嘗試使用 WaveDac8 設(shè)置個(gè)簡(jiǎn)單的數(shù)據(jù)采集系統(tǒng),以生成不同持續(xù)時(shí)間的脈沖,并應(yīng)用于 RC 簡(jiǎn)單電路。我成功生成了 250
    發(fā)表于 07-25 07:55

    免費(fèi)分享Arduino入門+進(jìn)階(全套例程+書籍)

    Arduino款開(kāi)源電子原型平臺(tái),由硬件(單片機(jī)開(kāi)發(fā)板)和軟件(編程環(huán)境)組成,旨在讓非專業(yè)用戶也能輕松入門電子制作和編程。它的核心思想是簡(jiǎn)化硬件開(kāi)發(fā),通過(guò)直觀的編程和模塊化設(shè)計(jì),讓用戶快速實(shí)現(xiàn)
    的頭像 發(fā)表于 05-22 11:40 ?840次閱讀
    免費(fèi)分享<b class='flag-5'>Arduino</b>入門+進(jìn)階(全套例程+書籍)

    《ESP32S3 Arduino開(kāi)發(fā)指南》第二章 Arduino基礎(chǔ)知識(shí)

    完成個(gè)電子產(chǎn)品的制作。這就給開(kāi)源硬件的推廣和普及設(shè)定了個(gè)很高的門檻,電子愛(ài)好者需要花很多時(shí)間和精力才能開(kāi)始開(kāi)發(fā)和
    發(fā)表于 05-13 09:28

    開(kāi)源項(xiàng)目!Open Echo:個(gè)開(kāi)源的聲納項(xiàng)目

    Arduino 兼容的回聲測(cè)深儀用于另一個(gè)水深 GPS 記錄設(shè)備項(xiàng)目??勺x取 Arduino 的回聲測(cè)深儀很難買到,所以我想,為什么不自己制作呢?基本工作原理很
    發(fā)表于 03-20 13:37

    開(kāi)源項(xiàng)目!教你如何制作個(gè)開(kāi)源教育機(jī)械臂

    前言 我們的計(jì)劃始于2016年,當(dāng)時(shí)有個(gè)簡(jiǎn)單的問(wèn)題:我們?nèi)绾巫寵C(jī)器人和編程對(duì)每個(gè)人都可用? 是學(xué)習(xí)電子和編程的最佳工具之,但使用帶有有線組件的試驗(yàn)板對(duì)初學(xué)者來(lái)說(shuō)可能具有挑戰(zhàn)性。為了
    發(fā)表于 03-10 11:22

    防水淹廠房監(jiān)測(cè)報(bào)警系統(tǒng)

    套完善的系統(tǒng)是十分必要的。二、系統(tǒng)介紹水淹廠房監(jiān)測(cè)報(bào)警系統(tǒng)為了保證水電站生產(chǎn)、調(diào)度穩(wěn)定運(yùn)行,通過(guò)防水淹廠房視頻監(jiān)控
    的頭像 發(fā)表于 02-11 15:15 ?694次閱讀
    防水淹廠房監(jiān)測(cè)<b class='flag-5'>報(bào)警</b><b class='flag-5'>系統(tǒng)</b>

    開(kāi)源項(xiàng)目!手把手教你制作個(gè)互動(dòng)式LED墻壁時(shí)鐘!

    在這篇教程中,將教你使用Arduino創(chuàng)建個(gè)互動(dòng)式LED墻壁時(shí)鐘。這個(gè)項(xiàng)目結(jié)合了創(chuàng)意和技術(shù),設(shè)計(jì)出個(gè)功能性強(qiáng)且視覺(jué)效果驚人的時(shí)鐘,它配
    發(fā)表于 02-08 17:47

    離身報(bào)警器的設(shè)計(jì)

    隨著全球旅游的火熱,出去看看大好河山的人越來(lái)越多。為了使旅行順暢保證行囊的安全是十分不要的。雖然目前此類產(chǎn)品很多,大多數(shù)都是以藍(lán)牙或WIFI與手機(jī)捆綁使用,使用起來(lái)比較麻煩,特別對(duì)于老年人來(lái)說(shuō)有很大的挑戰(zhàn)。所以利用簡(jiǎn)單的電
    發(fā)表于 02-07 14:01 ?0次下載

    隱形守護(hù),智能感知——震動(dòng)光纖報(bào)警系統(tǒng)

    在安防領(lǐng)域,客戶需求的多樣化推動(dòng)了技術(shù)革新的步伐。維安達(dá)斯震動(dòng)光纖報(bào)警系統(tǒng),以其卓越的隱蔽性和環(huán)境適應(yīng)性,滿足了市場(chǎng)對(duì)高效、穩(wěn)定報(bào)警系統(tǒng)的需求。
    的頭像 發(fā)表于 01-24 15:47 ?786次閱讀
    隱形守護(hù),智能感知——震動(dòng)光纖<b class='flag-5'>報(bào)警</b><b class='flag-5'>系統(tǒng)</b>

    如何使用Arduino實(shí)現(xiàn)CAN總線通信呢

    CAN(Controller Area Network)總線是種常用于汽車和工業(yè)控制系統(tǒng)的串行通信協(xié)議,以其高可靠性和實(shí)時(shí)性而聞名。Arduino,作為種流行的開(kāi)源微控制器平臺(tái),可
    的頭像 發(fā)表于 12-23 09:06 ?2859次閱讀