Você está na página 1de 6

Links de pesquisa: Medio de tenso e corrente e algoritmos de dados: http://roysoala.wordpress.com/2012/04/20/energy-monitoring-using-pachube-and-arduino-1-0/ http://openenergymonitor.org Transmisso Via Rdio - nRF24L01 http://futebol-uff.blogspot.com.br/2012/12/nrf24l01-testes-iniciais.

html Implantao supervisrio Labview http://www.ni.com/gettingstarted/labviewbasics/pt PROJETO FINAL 2 >> CONSUMO INTELIGENTE MONTAGEM DO PROTTIPO: Passo 1 Transformador de Corrente: O transformador de corrente SCT-013-000 (mximo 100A primrio), recebe a corrente passante no campo
primrio, gerando em seu secundrio uma corrente induzida de escala 100:0,05A, sua taxa de erro de 3% para mais ou para menos.

Segue montagem do circuito para insero de dados analgicos no Arduino:

Entendendo os clculos de anlise: Corrente de Pico primrio= 100*square(2) = 141,42A Corrente de Pico secundrio = 141,42 / (100:0,05) = 0.0707A Resistncia Ideal para Porta de Entrada Arduino = 2,5V / 0,0707A = 35,4 - Usado: Resistor de 33 - 1% NOTA : Usado resistncia de 100K para realizar a diviso de tenso de alimentao adquirida pelo Arduino. O capacitor C1 tem uma baixa reatncia 10UF - algumas centenas de ohms - e oferece um caminho alternativo para a corrente alternada para ignorar o resistor.

Passo 2 Transformador de Potencial: Utilizamos um transformador genrico de potencial para reduzir a tenso primria de entrada 127/220VCA, para a tenso secundria de 9VCA. A tenso primria deve ser trocada manualmente atravs da chave de seleo.

Entendendo os clculos de anlise:

Tenso de pico = 9V *square(2) = 12,726V Divisor de Tenso = [100k/(100k+100k)]*5V = 2,5V Divisor de Tenso entrada Arduino = [10k/(10k+100K)]*12,726 = 1,1569V Tenso de entrada no Arduino = 2,5V + 1,54V = 3,6569V (Valor aceitvel, visto que o Arduino suporta at 5V em sua porta) MONTAGEM NA PROTOBOARD PARA TESTES INICIAIS:

PCB DO ESQUEMA ELETRNICO ACIMA:

MONTAGEM DO SISTEMA DE TRANSMISSO RF:

Signal RF Module COLOR Arduino pin for Arduino pin for MEGA2560 pin RF24 Library Mirf Library GND 1 VCC CE SCK 2 3 5 Brown GND Red 3.3V Orange 9 Yellow 10 Green 13 Blue Gray 11 2 * Violet 12 GND 3.3V 8 7 13 11 12
per library per library per library per library

CSN 4 MOSI 6 MISO 7 IRQ 8

52 51 50
per library

Nota: O pino 8 no foi utilizado em nosso projeto de concluso. Com dois ou mais Arduinos capaz de se comunicarem sem fio a uma distncia considervel e com muitas possibilidades: Sensores remotos de temperatura, presso, alarmes e muito mais; Controle do rob e monitoramento a partir de 50 ps at 2.000 ps de distncia; Controle remoto e monitoramento de prdios prximos ou bairros; Veculos autnomos de todos os tipos; Capacidade de at 126 canais

Estes so um conjunto de mdulos de 2.4 GHz rdio que so todos baseados no Semiconductor nRF24L01 + chip de Nordic. (Detalhes) O Nordic nRF24L01 + integra um transceiver completo 2.4GHz RF, sintetizador de RF, e da lgica baseband incluindo o acelerador de hardware protocolo que apoia uma interface SPI de alta velocidade para o controlador de aplicao ShockBurst avanado. No projeto, estamos usando uma placa com curto alcance, de at 100m sem barreiras. PROGRAMAO DO TRANSMISSOR (Arduino de Campo) /*Universidade Estcio de S ** Projeto de Concluso no curso: Engenharia Eltrica ** %%%%%%%%%%%%%%%% TEMA: CONSUMO INTELIGENTE %%%%%%%%%%%%%%%%%%%%

Grupo composto por 3 alunos: Anderson Antnio de Mendona Rodrigues - Matrcula:200802204808 Eli Lima da Silva - Matricula: 200901221191 Leonardo Alexandre Vieira - Matricula:200401107399

#Essa programao tem como base, fornecer os valore: *Tenso; *Corrente; *Potncia Ativa e Aparente e Fator de Potncia.

****** TRANSMISSOR DE DADOS ******* */ #include "EmonLib.h" #include <SPI.h> #include "nRF24L01.h" #include "RF24.h" EnergyMonitor emon1; float dados[5]; RF24 radio(9,10); // Define as portas de comunicao via Rdio // Inclui a Livraria EmonLib.h // Inclui a Livraria SPI.h // Inclui a Livraria do componente nRF24L01.h // Inclui a Livraria de Rdio Frequncia RF24.h // Cria uma instncia

const uint64_t pipe = 0xE8E8F0F0E1LL; // Constante de Frequncia void setup() { Serial.begin(9600); // Inicia comunicao na porta Serial radio.begin(); // Inicia comunicao via rdio radio.openWritingPipe(pipe); emon1.voltage(1, 195.5, 1.7); // Voltage: input pin, calibration, phase_shift emon1.current(0, 60.6); // Current: input pin, calibration. } void loop() { float realPower = emon1.realPower; float apparentPower = emon1.apparentPower; float powerFActor = emon1.powerFactor; float supplyVoltage = emon1.Vrms; float Irms = emon1.Irms; emon1.calcVI(20,2000); dados[0] = realPower; dados[1] = apparentPower; dados[2] = supplyVoltage; dados[3] = Irms; dados[4] = powerFActor; radio.write(dados, sizeof(dados)); emon1.serialprint(); // Print out all variables (realpower, apparent power, Vrms, Irms, power factor)

//extract Real Power into variable //extract Apparent Power into variable //extract Power Factor into Variable //extract Vrms into Variable //extract Irms into Variable

// Calculate all. No.of half wavelengths (crossings), time-out

} PROGRAMAO DO RECEPTOR (Arduino mestre Conectado ao sistema Supervisrio) /*Universidade Estcio de S ** Projeto de Concluso no curso: Engenharia Eltrica ** %%%%%%%%%%%%%%%%% TEMA: CONSUMO INTELIGENTE %%%%%%%%%%%%%%%%%%%%

Grupo composto por 3 alunos: Anderson Antnio de Mendona Rodrigues - Matrcula:200802204808 Leonardo Alexandre Vieira - Matricula:200401107399 Eli Lima da Silva - Matricula: 200901221191 ###Essa programao tem como base, fornecer os valore: *Tenso; *Corrente; Potncia Ativa e Aparente; Fator de Potncia e Consumo de Energia Eltrica em Reais. ****** RECEPTOR DE DADOS *******

*/ #include <SPI.h> #include "nRF24L01.h" #include "RF24.h" float dados[5]; RF24 radio(9,10); const uint64_t pipe = 0xE8E8F0F0E1LL; void setup(void) { Serial.begin(9600); radio.begin(); radio.openReadingPipe(1,pipe); radio.startListening(); } void loop(void) { if ( radio.available() ) { bool done = false; while (!done) { done = radio.read( dados, sizeof(dados) ); Serial.print(dados[0]); Serial.print(" "); Serial.print(dados[1]); Serial.print(" "); Serial.print(dados[2]); Serial.print(" "); Serial.print(dados[3]); Serial.print(" "); Serial.println(dados[4]); } } else { Serial.println("Aguardando dados"); } delay(1100); } // Delay para facilitar a visualizao das informaes no serial monitor

Você também pode gostar