Sommario:

Campanello Arduino: 5 passaggi
Campanello Arduino: 5 passaggi

Video: Campanello Arduino: 5 passaggi

Video: Campanello Arduino: 5 passaggi
Video: Arduino avviso citofono e campanello porta tramite sms SIM800L 2024, Novembre
Anonim
Campanello Arduino
Campanello Arduino

FORNITURE

-2 taglieri di pane

-cicalino

-fili di ponticello

-2 arduino/genuino con cavi di alimentazione

-rf trasmettitore e ricevitore

-premi il bottone

Resistenza da -100 ohm

Passaggio 1: funzione

Questo progetto è un campanello funzionante la cui funzione principale utilizza il codice per programmare l'arduino in un modo in cui il pulsante con il trasmettitore invia un segnale all'estremità ricevente con il cicalino e il ricevitore che avvieranno il suono del campanello con una connessione wireless.

Passaggio 2: Passaggio 1: Scheda del trasmettitore

Passaggio 1: scheda del trasmettitore
Passaggio 1: scheda del trasmettitore

Il modo in cui questo progetto dovrebbe funzionare è avere 2 breadboard e 2 arduiono/genuino collegati a loro. per la scheda trasmettitore colleghiamo il pulsante con la resistenza da 100 ohm collegata a massa e un filo collegato all'alimentazione sulla breadboard. Quindi collegare il trasmettitore alla breadboard e collegare il pulsante sia al trasmettitore che all'arduino come mostrato nell'immagine.

Passaggio 3: Passaggio 2: Scheda ricevitore

Passaggio 2: scheda ricevitore
Passaggio 2: scheda ricevitore

Sulla scheda del ricevitore è dove va il cicalino. Collega un filo a terra attraverso il ricevitore e collega un filo a un pin di tua scelta che puoi personalizzare in seguito nel tuo codice. Collega il ricevitore alla breadboard e collegalo all'arduino come mostrato nell'immagine.

Passaggio 4: Passaggio 3: Codice trasmettitore

// ask_transmitter.pde

// -*- modalità: C++ -*-

// Semplice esempio di come utilizzare RadioHead per trasmettere messaggi

// con un semplice trasmettitore ASK in modo molto semplice.

// Implementa un trasmettitore simplex (unidirezionale) con un modulo TX-C1

#includere

#include // In realtà non utilizzato ma necessario per compilare

driver RH_ASK;

// driver RH_ASK (2000, 2, 4, 5); // ESP8266 o ESP32: non utilizzare il pin 11

configurazione nulla()

{

Serial.begin(9600); // Solo debug

pinMode(5, INGRESSO);

if (!driver.init())

Serial.println("inizializzazione fallita");

}

ciclo vuoto()

}

if(digitalRead(5)==ALTA){

const char *msg = "a";

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

driver.waitPacketSent();

ritardo(200);

}

}

Passaggio 5: Passaggio 4: codice ricevitore

#includere

#include // In realtà non utilizzato ma necessario per compilare

#include "pitch.h" //add Frequenza equivalente per la nota musicale

#include "themes.h" //aggiungi valore e durata della nota

driver RH_ASK;

configurazione nulla()

{

Serial.begin(9600); // Solo debug

if (!driver.init())

Serial.println("inizializzazione fallita");

altro

Serial.println("fatto");

driver RH_ASK;

configurazione nulla()

{

Serial.begin(9600); // Solo debug

if (!driver.init())

Serial.println("inizializzazione fallita");

altro

Serial.println("fatto");

}

void Play_Pirati()

{

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

int noteDuration = 1000 / Pirates_duration[thisNote];//converti la durata in ritardo

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

int pauseBetweenNotes = noteDuration * 1.05; //Qui 1.05 è il tempo, aumentalo per suonarlo più lentamente

delay(pauseBetweenNotes);

noTono(8); //ferma la musica sul pin 8

}

}

ciclo vuoto()

{

uint8_t buf[1];

uint8_t buflen = sizeof(buf);

if (driver.recv(buf, &buflen)) // Non bloccante

{

Serial.println("Selezionato -> 'E' un pirata'");

Play_Pirati();

Serial.println("ferma");

}

}

Consigliato: