Tartalomjegyzék:

Arduino ajtócsengő: 5 lépés
Arduino ajtócsengő: 5 lépés

Videó: Arduino ajtócsengő: 5 lépés

Videó: Arduino ajtócsengő: 5 lépés
Videó: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, Július
Anonim
Arduino ajtócsengő
Arduino ajtócsengő

KELLÉKEK

-2 kenyér deszka

-berregő

-jumper vezetékek

-2 arduino/genuino tápkábelekkel

-rf adó és vevő

-nyomógomb

-100 ohmos ellenállás

1. lépés: Funkció

Ez a projekt egy működő ajtócsengő, amelynek fő funkciója kód segítségével programozza az arduino -t oly módon, hogy az adó nyomógombja jelzést küld a vevő végére a csengővel és a vevőegységgel, amely vezeték nélküli kapcsolattal beindítja az ajtócsengő zümmögését..

2. lépés: 1. lépés: Adótábla

1. lépés: Adótábla
1. lépés: Adótábla

Ennek a projektnek úgy kell működnie, hogy 2 kenyeretáblát és 2 arduiono/genuinot csatlakoztatnak hozzájuk. a táblalaphoz a nyomógombot csatlakoztatjuk a földre csatlakoztatott 100 ohmos ellenállással és a kenyértáblán a tápellátáshoz csatlakoztatott vezetékkel. Ezután csatlakoztassa az adót a kenyérsütő táblához, és kösse a gombot a távadóhoz és az arduino -hoz, amint az a képen látható.

3. lépés: 2. lépés: Vevőlap

2. lépés: Vevőtábla
2. lépés: Vevőtábla

A vevőpanelen található a hangjelző. Csatlakoztasson egy vezetéket a földre a vevőegységen keresztül, és csatlakoztasson egy vezetéket egy tetszés szerinti tűre, amelyet később személyre szabhat a kódjában. Csatlakoztassa a vevőkészüléket a kenyértáblához, és csatlakoztassa az arduino -hoz a képen látható módon.

4. lépés: 3. lépés: Adókód

// ask_transmitter.pde

// -* -mód: C ++ -* -

// Egyszerű példa a RadioHead használatával üzenetek továbbítására

// egy egyszerű ASK adóval nagyon egyszerű módon.

// Egyszerű (egyirányú) távadót valósít meg TX-C1 modullal

#befoglalni

#include // Valójában nincs használatban, de le kell fordítani

RH_ASK illesztőprogram;

// RH_ASK driver (2000, 2, 4, 5); // ESP8266 vagy ESP32: ne használja a 11 -es tűt

üres beállítás ()

{

Sorozat.kezdet (9600); // Csak hibakeresés

pinMode (5, BEMENET);

ha (! driver.init ())

Serial.println ("init failed");

}

üres hurok ()

}

if (digitalRead (5) == HIGH) {

const char *msg = "a";

driver.send ((uint8_t *) msg, strlen (msg));

driver.waitPacketSent ();

késleltetés (200);

}

}

5. lépés: 4. lépés: Vevő kód

#befoglalni

#include // Valójában nem használják, de össze kell állítani

#include "pitchches.h" // add egyenértékű gyakoriság a hangjegyhez

#include "themes.h" // jegyzet hozzáadása és időtartama

RH_ASK illesztőprogram;

üres beállítás ()

{

Sorozat.kezdet (9600); // Csak hibakeresés

ha (! driver.init ())

Serial.println ("init failed");

más

Serial.println ("kész");

RH_ASK illesztőprogram;

üres beállítás ()

{

Sorozat.kezdet (9600); // Csak hibakeresés

ha (! driver.init ())

Serial.println ("init failed");

más

Serial.println ("kész");

}

void Play_Pirates ()

{

for (int thisNote = 0; thisNote <(sizeof (Pirates_note)/sizeof (int)); thisNote ++) {

int noteDuration = 1000/Pirates_duration [thisNote]; // az időtartam átalakítása késleltetésre

tone (8, Kalózok_jegyzet [ezMegjegyzés], noteDuration);

int pauseBetweenNotes = noteDuration * 1,05; // Itt az 1.05 a tempó, növelje, hogy lassabban játsszon

delay (pauseBetweenNotes);

noTone (8); // állítsa le a zenét a 8 -as érintkezőn

}

}

üres hurok ()

{

uint8_t buf [1];

uint8_t buflen = sizeof (buf);

if (driver.recv (buf, & buflen)) // Nem blokkoló

{

Serial.println ("Kiválasztott -> 'Ő egy kalóz'");

Play_Pirates ();

Serial.println ("stop");

}

}

Ajánlott: