Πίνακας περιεχομένων:

Arduino Doorbell: 5 βήματα
Arduino Doorbell: 5 βήματα

Βίντεο: Arduino Doorbell: 5 βήματα

Βίντεο: Arduino Doorbell: 5 βήματα
Βίντεο: Amazing arduino project 2024, Ιούλιος
Anonim
Arduino Doorbell
Arduino Doorbell

ΠΡΟΜΗΘΕΙΕΣ

-2 σανίδες ψωμιού

-βομβητής

-καλώδια βραχυκυκλωμάτων

-2 arduino/genuino με καλώδια τροφοδοσίας

-rf πομπός και δέκτης

-κουμπί πίεσης

Αντίσταση -100 ohm

Βήμα 1: Λειτουργία

Αυτό το έργο είναι ένα λειτουργικό κουδούνι που η κύρια λειτουργία χρησιμοποιεί τον κώδικα για τον προγραμματισμό του arduino με τρόπο που το κουμπί με τον πομπό να στέλνει ένα σήμα στο τέλος λήψης με το βομβητή και τον δέκτη που θα ξεκινήσει τον ήχο του κουδουνιού της πόρτας με ασύρματη σύνδεση Το

Βήμα 2: Βήμα 1: Πίνακας πομπών

Βήμα 1: Πίνακας πομπών
Βήμα 1: Πίνακας πομπών

Ο τρόπος με τον οποίο υποτίθεται ότι λειτουργεί αυτό το έργο είναι να συνδέονται 2 σανίδες ψωμιού και 2 arduiono/genuinos. για την πλακέτα πομπού συνδέουμε το κουμπί με την αντίσταση 100 ohm συνδεδεμένη στη γείωση και ένα καλώδιο συνδεδεμένο στην τροφοδοσία στο breadboard. Στη συνέχεια, συνδέστε τον πομπό στο breadboard και συνδέστε το κουμπί τόσο στον πομπό όσο και στο arduino όπως φαίνεται στην εικόνα.

Βήμα 3: Βήμα 2: Δέκτης

Βήμα 2: Πίνακας δέκτη
Βήμα 2: Πίνακας δέκτη

Στην πλακέτα του δέκτη είναι εκεί που πηγαίνει ο βομβητής. Συνδέστε ένα καλώδιο στη γείωση μέσω του δέκτη και συνδέστε ένα καλώδιο σε μια καρφίτσα της επιλογής σας, την οποία μπορείτε αργότερα να προσαρμόσετε στον κωδικό σας. Συνδέστε το δέκτη στο breadboard και συνδέστε το στο arduino όπως φαίνεται στην εικόνα.

Βήμα 4: Βήμα 3: Κωδικός πομπού

// ask_transmitter.pde

// -* -λειτουργία: C ++ -* -

// Απλό παράδειγμα του τρόπου χρήσης του RadioHead για τη μετάδοση μηνυμάτων

// με έναν απλό πομπό ASK με πολύ απλό τρόπο.

// Εφαρμόζει έναν απλό (μονόδρομο) πομπό με μονάδα TX-C1

#περιλαμβάνω

#include // Δεν χρησιμοποιείται στην πραγματικότητα, αλλά χρειάζεται για μεταγλώττιση

RH_ASK πρόγραμμα οδήγησης.

// Πρόγραμμα οδήγησης RH_ASK (2000, 2, 4, 5); // ESP8266 ή ESP32: μην χρησιμοποιείτε τον πείρο 11

void setup ()

{

Serial.begin (9600); // Μόνο εντοπισμός σφαλμάτων

pinMode (5, ΕΙΣΟΔΟΣ);

αν (! driver.init ())

Serial.println ("η αποτυχία του init");

}

κενός βρόχος ()

}

εάν (digitalRead (5) == HIGH) {

const char *msg = "a";

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

driver.waitPacketSent ();

καθυστέρηση (200)?

}

}

Βήμα 5: Βήμα 4: Κωδικός δέκτη

#περιλαμβάνω

#include // Δεν χρησιμοποιείται πραγματικά αλλά χρειάζεται για μεταγλώττιση

#include "pitches.h" // προσθέστε Ισοδύναμη συχνότητα για μουσική νότα

#include "themes.h" // προσθέστε vale Note και διάρκεια

RH_ASK πρόγραμμα οδήγησης.

void setup ()

{

Serial.begin (9600); // Μόνο εντοπισμός σφαλμάτων

αν (! driver.init ())

Serial.println ("η αποτυχία του init");

αλλού

Serial.println ("έγινε");

RH_ASK πρόγραμμα οδήγησης.

void setup ()

{

Serial.begin (9600); // Μόνο εντοπισμός σφαλμάτων

αν (! driver.init ())

Serial.println ("η αποτυχία του init");

αλλού

Serial.println ("έγινε");

}

void Play_Pirates ()

{

για (int thisNote = 0; thisNote <(sizeof (Pirates_note)/sizeof (int)); thisNote ++) {

int noteDuration = 1000/Pirates_duration [thisNote]; // μετατροπή της διάρκειας σε χρονική καθυστέρηση

τόνος (8, Pirates_note [thisNote], noteDuration);

int pauseBetweenNotes = noteDuration * 1.05; // Εδώ το 1.05 είναι τέμπο, αυξήστε το για να το παίξετε πιο αργά

καθυστέρηση (pauseBetweenNotes);

noTone (8); // διακοπή μουσικής στο pin 8

}

}

κενός βρόχος ()

{

uint8_t buf [1];

uint8_t buflen = sizeof (buf);

if (driver.recv (buf, & buflen)) // Μη αποκλεισμός

{

Serial.println ("Selected -> 'He is a Pirate'");

Play_Pirates ();

Serial.println ("διακοπή");

}

}

Συνιστάται: