Kazalo:

Arduino zvonec na vratih: 5 korakov
Arduino zvonec na vratih: 5 korakov

Video: Arduino zvonec na vratih: 5 korakov

Video: Arduino zvonec na vratih: 5 korakov
Video: Control 32 Servo over Wi-Fi using ESP32 and PCA9685 via desktop or mobile phone V5 2024, November
Anonim
Arduino Doorbell
Arduino Doorbell

DOBAVE

-2 deski za kruh

-brenčalo

-žilne žice

-2 arduino/genuino z napajalnimi kabli

-rf oddajnik in sprejemnik

-pritisni gumb

-100 ohmski upor

1. korak: Funkcija

Ta projekt je delujoč zvonec na vratih, katerega glavna funkcija je uporaba kode za programiranje arduina na način, ko gumb s oddajnikom pošilja signal na sprejemni konec z brenčalnikom in sprejemnikom, ki bo z brezžično povezavo sprožil zvok zvonjenja pri vratih.

2. korak: 1. korak: Oddajniška plošča

1. korak: Oddajniška plošča
1. korak: Oddajniška plošča

Ta projekt naj bi deloval tako, da sta nanj povezani 2 plošči za kruh in 2 arduiono/genuinos. za ploščo oddajnika povežemo gumb s 100 ohmskim uporom, priključenim na maso, in žico, priključeno na napajanje na plošči. Nato oddajnik priključite na ploščo in gumb povežite z oddajnikom in arduinom, kot je prikazano na sliki.

3. korak: 2. korak: sprejemna plošča

2. korak: sprejemna plošča
2. korak: sprejemna plošča

Na plošči sprejemnika je zvočnik. Priključite eno žico na ozemljitev prek sprejemnika in žico povežite z zatičem po vaši izbiri, ki ga lahko kasneje prilagodite v kodi. Sprejemnik priključite na mizo in ga priključite na arduino, kot je prikazano na sliki.

4. korak: 3. korak: Koda oddajnika

// ask_transmitter.pde

// -* -način: C ++ -* -

// Preprost primer uporabe RadioHeada za prenos sporočil

// s preprostim oddajnikom ASK na zelo preprost način.

// Izvaja simpleksni (enosmerni) oddajnik z modulom TX-C1

#vključi

#include // V resnici se ne uporablja, vendar je potrebno za sestavljanje

Gonilnik RH_ASK;

// gonilnik RH_ASK (2000, 2, 4, 5); // ESP8266 ali ESP32: ne uporabljajte pin 11

void setup ()

{

Serial.begin (9600); // Samo odpravljanje napak

pinMode (5, INPUT);

if (! driver.init ())

Serial.println ("init failed");

}

void loop ()

}

if (digitalRead (5) == HIGH) {

const char *msg = "a";

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

driver.waitPacketSent ();

zamuda (200);

}

}

5. korak: 4. korak: Koda sprejemnika

#vključi

#include // V resnici se ne uporablja, vendar je potrebno za sestavljanje

#include "pitches.h" // dodamo enakovredno frekvenco za glasbeno noto

#include "themes.h" // dodaj vrednost opombe in trajanje

Gonilnik RH_ASK;

void setup ()

{

Serial.begin (9600); // Samo odpravljanje napak

if (! driver.init ())

Serial.println ("init failed");

drugače

Serial.println ("končano");

Gonilnik RH_ASK;

void setup ()

{

Serial.begin (9600); // Samo odpravljanje napak

if (! driver.init ())

Serial.println ("init failed");

drugače

Serial.println ("končano");

}

void Play_Pirates ()

{

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

int noteDuration = 1000/Pirates_duration [thisNote]; // pretvori trajanje v časovno zakasnitev

ton (8, Pirates_note [thisNote], noteDuration);

int pauseBetweenNotes = noteDuration * 1,05; // Tu je 1,05 tempo, za počasnejše predvajanje povečajte

zakasnitev (pauseBetweenNotes);

noTone (8); // ustavimo glasbo na pin 8

}

}

void loop ()

{

uint8_t buf [1];

uint8_t buflen = sizeof (buf);

if (driver.recv (buf, & buflen)) // Ne blokira

{

Serial.println ("Izbrano ->" On je pirat "");

Play_Pirates ();

Serial.println ("stop");

}

}

Priporočena: