Sommario:

Contatore di energia wireless con controllo del carico: 5 passaggi
Contatore di energia wireless con controllo del carico: 5 passaggi

Video: Contatore di energia wireless con controllo del carico: 5 passaggi

Video: Contatore di energia wireless con controllo del carico: 5 passaggi
Video: Energy Meter Tuya Smart by Zemismart - Consumi elettrici sotto controllo! 2024, Dicembre
Anonim
Image
Image
Contatore di energia wireless con controllo del carico
Contatore di energia wireless con controllo del carico

INTRODUZIONE

Canale Youtube::::

Questo progetto è basato sul microcontrollore Atmega16 di Atmel come cervello principale per il calcolo.

Il modulo di comunicazione wireless NRF24L01+ viene utilizzato per la trasmissione dati wireless.

Oggi abbiamo centinaia e migliaia di contatori di energia installati in un complesso di appartamenti, centri commerciali, scuole, università, ostelli e molto altro ancora. Il problema sorge quando il contatore viene letto da un dipendente per calcolare la bolletta per Energy Meter. Richiede molta manodopera e costi.

Qui ho ideato un progetto semplice che farà risparmiare manodopera e costi trasmettendo automaticamente il conteggio dell'energia di più contatori di energia all'host o al fornitore di servizi.

Ho preso i dati dal contatore Three Energy e ho trasmesso i dati al ricevitore, che ha calcolato il carico e il consumo totale per metro.

Se il carico supera il livello consentito, si attiva un segnale acustico.

I dati vengono salvati sul lato del mittente, quindi non viene prodotta alcuna perdita di dati se il ricevitore viene spento o la connettività viene persa.

Ecco il video di lavoro.

Diversi componenti sono:

  • Contatore di energia X 3
  • NRF24L01 X 2
  • Atmega16 X 2
  • Fotoaccoppiatore X 3

Passaggio 1: configurazione del contatore di energia

Configurazione del contatore di energia
Configurazione del contatore di energia
Configurazione del contatore di energia
Configurazione del contatore di energia
Configurazione del contatore di energia
Configurazione del contatore di energia

1. Aprire prima il contatore di energia

2. Basta tagliare il terminale del catodo del LED Cal

3. Saldare 2 fili alle 2 estremità del LED.

4. Collegare il catodo del LED al Pin1 del fotoaccoppiatore (MCT2E) e l'altra estremità del LED al Pin2 del fotoaccoppiatore

5. Collegare il pin 4 dell'accoppiatore ottico a un filo nero e il pin 5 al filo marrone. Collegare il filo Nero alla massa del circuito stampato per i progetti Contatore di energia prepagato o Progetti di lettura automatica del contatore. Il filo marrone porta l'uscita a impulsi.

6. Collegare l'alimentatore e caricare come da questa immagine.

Passaggio 2: algoritmo di base per il calcolo

Qui il contatore è interfacciato con il microcontrollore tramite l'impulso che lampeggia sempre sul contatore. Inoltre, l'impulso viene calcolato in base al suo periodo di lampeggiamento, utilizzando questo principio l'abbiamo calcolato per un'unità e di conseguenza quale sarà la carica per un'unità.

Dopo 0,3125 watt di consumo di energia, il LED del misuratore (calibrazione) lampeggia. Significa che se usiamo una lampadina da 100 watt per un minuto, l'impulso lampeggerà 5,3 volte in un minuto. E questo può essere calcolato usando la formula data.

Impulso= (frequenza del polso del contatore* watt * 60) / (1000 * 3600)

Se la frequenza del polso del misuratore è 3200 imp e il watt utilizzato è 100, allora abbiamo

Impulso = (3200 * 100 * 60) / (1000 * 3600)

Impulso = 5,333333333 al minuto

Se si sono verificati 5.3333333333 impulsi in un minuto, in un'ora si verificheranno impulsi..

Impulso = 5,333333333* 60 Impulso = ~320 ~320 Gli impulsi si verificheranno in un'ora

Quindi, in un'ora una lampadina da 100 watt ha consumato 100 watt di elettricità e quasi 320 impulsi lampeggiano.

Ora possiamo calcolare un impulso elettrico consumato in watt

Un impulso (watt) = 100\320

Un impulso (watt) = 0,3125

Significa che 0,3125 watt di elettricità hanno consumato un singolo impulso.

Ora Unità Unità = (un impulso di energia (elettricità))* impulsi / 1000

Se Un impulso = 0,3125 watt Impulsi in 10 ore = 3200

Quindi l'unità sarà Unità = (0,3125 * 3200)/1000 Unità = 1 Significa, un'unità in 10 ore per una lampadina da 100 watt.

Ora supponiamo che una tariffa unitaria sia 7 rupie, quindi per un singolo impulso il costo sarà

Costo del singolo impulso = (7 * un'energia di un impulso consumata) / 1000

Costo impulso singolo = (7 * 0.3125) / 1000

Costo del singolo impulso = 0.0021875 Rupia

Passaggio 3: Nrf24L01 (Credito a

Nrf24L01 (Credito a Http://gizmosnack.blogspot.in/)
Nrf24L01 (Credito a Http://gizmosnack.blogspot.in/)

Studia questo link

Il modulo nRF24L01 è un fantastico modulo RF che funziona sulla banda 2, 4 GHz ed è perfetto per la comunicazione wireless in una casa perché penetrerà anche pareti di cemento spesse. L'nRF24L01 fa tutta la programmazione per te e ha anche una funzione per controllare automaticamente se i dati trasmessi vengono ricevuti dall'altra parte. Esistono un paio di versioni diverse dei chip della famiglia nRF e sembrano funzionare tutti in un modo simile. Ad esempio ho usato il modulo nRF905 (433MHz) con quasi lo stesso codice che uso su nRF24L01 e nRF24L01+ senza problemi. Questi piccoli moduli hanno una portata impressionante, con alcune versioni che gestiscono fino a 1000 m di comunicazione (a vista libera) e fino a 2000 m con un'antenna biquad.

nRF24L01 contro nRF24L01+

La versione (+) è la nuova versione aggiornata del chip e supporta velocità dati di 1 Mbps, 2 Mbps e una "modalità a lunga distanza" di 250 kbps, molto utile quando si desidera estendere la lunghezza della trasmissione. Il vecchio nRF24L01 (che ho usato nei miei post precedenti) supportano solo la velocità di trasmissione dati di 1 Mbps o 2 Mbps. Entrambi i modelli sono compatibili tra loro, purché siano impostati sulla stessa velocità di trasmissione dati. Dal momento che entrambi costano più o meno lo stesso (quasi nulla) ti consiglierei di acquistare la versione +!

Prima parte - ConfigurazioneDifferenze di connessioneIl modulo nRF24L01 ha 10 connettori e la versione + ne ha 8. La differenza è che la versione + invece di avere due 3, 3V e due GND, ha la sua massa (quella con un quadrato bianco intorno) e Alimentazione 3, 3 V, uno accanto all'altro. Se si cambia modulo da una nuova versione + a una vecchia, assicurarsi di non dimenticare di spostare il cavo GND nel posto giusto, altrimenti si accorcerà il circuito. Ecco un'immagine della versione + (vista dall'alto), dove puoi vedere tutte le connessioni etichettate. La vecchia versione ha due connessioni GND in alto invece che nell'angolo in basso a destra.

Alimentazione (GND & VCC)Il modulo deve essere alimentato a 3, 3 V e non può essere alimentato da un alimentatore a 5 V! Dal momento che richiede pochissima corrente, utilizzo un regolatore lineare per abbassare la tensione a 3, 3 V. Per rendere le cose un po' più facili per noi, il chip può gestire 5 V sulle porte di i/O, il che è bello dato che sarebbe essere una seccatura regolare tutti i cavi di i/O dal chip AVR. Chip Enable (CE) Viene utilizzato quando si inviano i dati (trasmettitore) o si avvia la ricezione dei dati (ricevitore). Il pin CE è collegato a qualsiasi inutilizzato porta i/O sull'AVR ed è impostata come uscita (imposta il bit su uno nel registro DDx dove x è la lettera della porta.)Atmega88: PB1, ATtiny26: PA0, ATtiny85: PB3SPI Chip Select (CSN)Noto anche come "Ship selezionare non". Il pin CSN è anche collegato a qualsiasi porta i/O inutilizzata sull'AVR e impostato su output. Il pin CSN è sempre tenuto alto tranne quando inviare un comando SPI dall'AVR al nRF. Atmega88: PB2, ATtiny26: PA1, ATtiny85: PB4SPI Clock (SCK)Questo è l'orologio seriale. L'SCK si collega al pin SCK sull'AVR. Atmega88: PB5, ATtiny26: PB2, ATtiny85: PB2SPI Uscita master Ingresso slave (MOSI o MO)Questa è la linea dati nel sistema SPI. Se il tuo chip AVR supporta il trasferimento SPI come l'Atmega88, questo si collega a MOSI anche sull'AVR ed è impostato come uscita. Sugli AVR che non hanno SPI, come l'ATtiny26 e l'ATtiny85 vengono invece forniti con USI, e la scheda tecnica dice: "La modalità USI a tre fili è compatibile con la modalità SPI (Serial Peripheral Interface) 0 e 1, ma non ha la funzionalità del pin di selezione dello slave (SS). Tuttavia, questa funzione può essere implementata nel software se necessario" Il "SS" a cui si fa riferimento è lo stesso di "CSN" E dopo alcune ricerche ho trovato questo blog che mi ha aiutato ad assegnare. Per far funzionare l'USI su SPI ho scoperto che dovevo collegare il pin MOSI dall'nRF al pin MISO sull'AVR e impostarlo come output. Atmega88: PB3, ATtiny26: PB1, ATtiny85: PB1SPI Ingresso master Uscita slave (MISO o MI)Questa è la linea dati nel sistema SPI. Se il tuo AVR il chip supporta il trasferimento SPI come l'Atmega88, questo si collega a MISO sull'AVR e questo rimane come input. Per farlo funzionare su ATtiny26 e ATtiny85, ho dovuto usare USI come menzionato sopra. Funzionava solo quando collegavo il pin MISO sull'nRF al pin MOSI sull'AVR e lo impostavo come input e abilitavo il pullup interno. Atmega88: PB4, ATtiny26: PB0, ATtiny85: PB0Interrupt Request (IRQ) Il pin IRQ non è necessario, ma un ottimo modo per sapere quando è successo qualcosa all'nRF. puoi per esempio dire all'nRF di impostare l'IRQ alto quando viene ricevuto un pacchetto o quando una trasmissione è completata con successo. Molto utile! Se il tuo AVR ha più di 8 pin e un pin di interrupt disponibile ti consiglio caldamente di collegare l'IRQ a quello e impostare una richiesta di interruzione. Atmega88: PD2, ATtiny26: PB6, ATtiny85: -

Passaggio 4: schema di collegamento di base

Schema di collegamento di base
Schema di collegamento di base
Schema di collegamento di base
Schema di collegamento di base

Questo schema di collegamento è uno schema

Passaggio 5: codice

Per il CODICE visita GitHub

Consigliato: