Escolar Documentos
Profissional Documentos
Cultura Documentos
CAMPUS PRAÇA XI
ENGENHARIA ELÉTRICA
CONSUMO INTELIGENTE
RIO DE JANEIRO
2013
UNIVERSIDADE ESTÁCIO DE SÁ
CAMPUS PRAÇA XI
ENGENHARIA ELÉTRICA
CONSUMO INTELIGENTE
RIO DE JANEIRO
2013
R696c Rodrigues, Anderson Antonio de Mendonça
Consumo inteligente. / Anderson Antonio de
Mendonça Rodrigues; Eloi Lima da Silva; Leonardo
Alexandre Vieira. Rio de Janeiro, 2013.
59 f. ; il.
CDD 621.3
CONSUMO INTELIGENTE
Banca Examinadora:
___________________________________________________
MsC em Engenharia de Computação. André Sarmento – Orientador
Universidade Estácio de Sá
Agradecemos aos nossos familiares, que são o principal motivo pelo qual
estarmos aqui hoje apresentando este trabalho, como pelo esforço que fizeram para
realização deste sonho.
E finalmente a todos os outros que não listamos, mas que de uma forma ou de
outra, nos ajudaram a chegar até aqui. Muito obrigado.
RESUMO
Este trabalho visa dar meios para que seja possível realizar um controle de
consumo de energia elétrica, dividindo por áreas e sinalizando por meio de interface
mercado o arduino, sensores de correntes e comunicação sem fio. Isto é muito útil para
contratada.
ABSTRACT
This project is for help to save more energy, It will controls consumes of energy
showing in realtime how much is spend, to give you ways of reduce or cut unecessary
devices. This is usefull for industry and small business. And is easy to implement, cheap
1 INTRODUÇÃO............................................................................................................12
2 SMART GRID..............................................................................................................14
2.1 FUNCIONAMENTO..................................................................................................14
3 OBJETIVOS .............................................................................................................................18
5.1 ARDUÍNO................................................................................................................ 20
5.1.5 FIRMWARE..........................................................................................................27
5.2 SENSOR DE CORRENTE .....................................................................................27
5.5.1 LABVIEW.............................................................................................................35
6 PROJETO..................................................................................................................38
7 CUSTO DO PROJETO...............................................................................................54
8 CONCLUSÕES E RECOMENDAÇÕES.....................................................................55
REFERÊNCIAS BIBLIOGRÁFICAS.........................................................................56
APÊNDICES
APÊNDICE A – PROGRAMAÇÃO DO TRANSMISSOR (Arduino de Campo)..............57
1 INTRODUÇÃO
2 SMART GRID
2.1 Funcionamento
3 OBJETIVOS
3.1 Geral
c) Otimizar custos.
3.2 Específicos
c) Identificar os desperdícios.
4.1 Pressupostos
5 ESTRUTURA DO TRABALHO
5.1 Arduino
Responsável por receber a energia de alimentação externa, que pode ter uma
tensão de no mínimo 7 Volts e no máximo 35 Volts e uma corrente mínima de 300mA. A
fonte filtra e depois regula a tensão de entrada para duas saídas: 5 Volts e 3,3 Volts. O
requisito deste bloco é entregar as tensões de 5 e 3,3 Volts para que a CPU e os
demais circuitos funcionem.
Comentamos acima que basicamente toda eletrônica ativa está dentro do chip
micro controlador. Para entender o que seria essa eletrônica, vamos considerar o chip
mais simples usado no Arduino: o ATMega8.
Os dois primeiros itens da lista são os pinos úteis, disponíveis para o usuário
utilizar. Através destes pinos que o Arduino é acoplado à eletrônica externa. Entre os 14
pinos de entrada/saída digitais têm dois pinos que correspondem ao módulo de
comunicação serial USART. Esse módulo permite comunicação entre um computador
(por exemplo) e o chip.
Todos os pinos digitais e os analógicos possuem mais de uma função. Os pinos
podem ser de entrada ou de saída, alguns podem servir para leituras analógicas e
também como entrada digital. As funções são escolhidas pelo programador, quando
escreve um programa para a sua placa.
Na placa do Arduino, os pinos úteis do micro controlador são expostos ao
usuário através de conectores fêmea, onde podem ser encaixados conectores para
construir o circuito externo à placa do Arduino.
No total temos disponíveis 20 pinos que podem ser utilizados como entradas
digitais. Os 14 pinos digitais mais os 6 pinos analógicos, podem ser programados para
serem entradas digitais. Quando um pino é programado para funcionar como entrada
digital, através do programa que escrevemos colocamos um comando que ao ser
executado efetua a "leitura" da tensão aplicada ao pino que está sendo lido. Então,
após a execução deste comando, sabemos se o pino encontra-se em um estado "alto"
ou "baixo".
Na prática, o programa pode saber se um pino está alimentado com 0 (zero) ou
5 Volts. Essa função é utilizada geralmente para identificar se um botão está
pressionado, ou um sensor está "sentindo" alguma coisa no mundo externo.
Note que a função de entrada digital apenas entrega 0 ou 1, sem tensão ou
com tensão. Não é possível saber quanta tensão está sendo aplicada no pino. Para
isso usamos as entradas analógicas.
25
Com uma saída digital podemos fazer com que um pino libere 0 volts ou 5 volts.
Com um pino programado como saída digital, podemos acender um led, ligar um relé,
acionar um motor, dentre diversas outras coisas. Podemos programar o Arduino para
no máximo 20 saídas digitais, porém podemos utilizar um ou mais pinos para controlar
um bloco de pinos.
PWM: Tratado como saída analógica, na verdade é uma saída digital que gera
um sinal alternado (0 e 1) onde o tempo que o pino fica em nível 1 (ligado) é controlado.
É usado para controlar velocidade de motores, ou gerar tensões com valores
controlados pelo programa. Pinos 3, 5, 6, 9, 10 e 11.
26
Porta Serial USART: Podemos usar um pino para transmitir e um pino para
receber dados no formato serial assíncrono (USART). Podemos conectar um módulo de
transmissão de dados via bluetooth por exemplo e nos comunicarmos com o Arduino
remotamente. Pinos 0 (rx recebe dados) e pino 1 (tx envia dados).
Comparador analógico: Podemos usar dois pinos para comparar duas tensões
externas, sem precisar fazer um programa que leia essas tensões e as compare. Essa
é uma forma muito rápida de comparar tensões e é feita pelo hardware sem envolver
programação. Pinos 6 e 7.
Interrupção Externa: Podemos programar um pino para avisar o software sobre
alguma mudança em seu estado. Podemos ligar um botão a esse pino, por exemplo, e
cada vez que alguém pressiona esse botão o programa rodando dentro da placa é
desviado para um bloco que você escolheu. Usado para detectar eventos externos à
placa. Pinos 2 e 3.
Porta SPI: É um padrão de comunicação serial Síncrono, bem mais rápido que
a USART. É nessa porta que conectamos cartões de memória (SD) e muitas outras
coisas. Pinos 10 (SS), 11 (MOSI), 12 (MISO) e 13 (SCK).
27
5.1.5 Firmware
• Núcleo: Ferrite
• Abertura: 13x13mm
• Peso: 76g
Com dois ou mais Arduinos é capaz de se comunicar sem fio a uma distância
considerável e com muitas possibilidades:
5.3.1 Características:
air;
Power Down de apenas 1uA sendo ideal para dispositivos que operam com
baterias;
Habilidade anti-interferência;
5.5.1 LABVIEW
O programador liga IVs com linhas (arames) de ligação e define, deste modo, o
fluxo de dados. Cada IV pode possuir entradas e/ou saídas. A execução de um IV
começa quando todas as entradas estão disponíveis; os resultados do processamento
são então colocados nas saídas assim que a execução do sub-programa tenha
terminado. Desta forma, a ordem pela qual as tarefas são executadas é definida em
função dos dados. Uma ordem pré-definida (por exemplo, "da esquerda para a direita")
não existe.
Uma importante consequência destas regras é a facilidade com que podem ser
criados processos paralelos no LabVIEW. Os sub-IVs sem interdependência dos
respectivos dados são processados em paralelo.
37
6 PROJETO
Este sistema pode ser programado para desligar cargas não essencias, como
medida de segurança, afim de que seja possível alçancar o valor determinado a ser
pago.
induzida de escala 100:0,05A, sua taxa de erro é de 3% para mais ou para menos.
Estes são um conjunto de módulos de 2.4 GHz rádio que são todos baseados
no Semiconductor nRF24L01 + chip de Nordic. (Detalhes) O Nordic nRF24L01 + integra
um transceiver completo 2.4GHz RF, sintetizador de RF, e da lógica baseband incluindo
o acelerador de hardware protocolo que apoia uma interface SPI de alta velocidade
para o controlador de aplicação ShockBurst avançado. No projeto, estamos usando
uma placa com curto alcance, de até 100m sem barreiras.
1. Preço por kWh -> Deve-se inserir o valor pago por KWh consumido;
2. Potência Real Acumulada -> Acumulador de KW lido por hora;
3. Preço Acumulado -> Informativo do valor acumulado em Reais.
1. Insira o Preço que deseja Pagar -> Deve-se inserir o valor para monitorar a
conta de Energia Elétrica;
2. LED de Aviso -> Acende em caso de ultrapassagem do valor informado para ser
monitorado.
1. Ex. ILUM. CAMPO > O LED informa que esta carga encontra-se energizada e o
botão serve para desligar a carga através de transmissão Serial para os
dispositivos em campo, para redução do consumo de energia elétrica pela planta
industrial ou mesmo residencial.
Este gráfico mostra a potência em Watts por segundo, nos dando uma visão
gráfica dos dados adquiridos.
7 CUSTO DO PROJETO
55
8 CONCLUSÕES E RECOMENDAÇÕES
BIBLIOGRÁFIA
http://roysoala.wordpress.com/2012/04/20/energy-monitoring-using-pachube-and-
http://futebol-uff.blogspot.com.br/2012/12/nrf24l01-testes-iniciais.html.
APÊNDICE A
/*Universidade Estácio de Sá
** Projeto de Conclusão no curso: Engenharia Elétrica **
%%%%%%%%%%%%%%%% TEMA: CONSUMO INTELIGENTE
%%%%%%%%%%%%%%%%%%%%
Grupo composto por 3 alunos:
Anderson Antônio de Mendonça Rodrigues - Matrícula:200802204808
Elói Lima da Silva - Matricula: 200901221191
Leonardo Alexandre Vieira - Matricula:200401107399
#Essa programação tem como base, fornecer os valore:
*Tensão;
*Corrente;
*Potência Ativa e Aparente e Fator de Potência.
****** TRANSMISSOR DE DADOS *******
*/
#include "EmonLib.h" // Inclui a Livraria EmonLib.h
#include <SPI.h> // Inclui a Livraria SPI.h
#include "nRF24L01.h" // Inclui a Livraria do componente nRF24L01.h
#include "RF24.h" // Inclui a Livraria de Rádio Frequência RF24.h
EnergyMonitor emon1; // Cria uma instância
float dados[5];
RF24 radio(9,10); // Define as portas de comunicação via Rádio
const uint64_t pipe = 0xE8E8F0F0E1LL; // Constante de Frequência
void setup()
{
Serial.begin(9600); // Inicia comunicação na porta Serial
radio.begin(); // Inicia comunicação via rádio
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; //extract Real Power into variable
float apparentPower = emon1.apparentPower; //extract Apparent Power into variable
float powerFActor = emon1.powerFactor; //extract Power Factor into Variable
float supplyVoltage = emon1.Vrms; //extract Vrms into Variable
float Irms = emon1.Irms; //extract Irms into Variable
emon1.calcVI(20,2000); // Calculate all. No.of half wavelengths (crossings), time-out
dados[0] = realPower;
dados[1] = apparentPower;
dados[2] = supplyVoltage;
58
dados[3] = Irms;
dados[4] = powerFActor;
radio.write(dados, sizeof(dados));
emon1.serialprint(); // Print out all variables (realpower, apparent power, Vrms, Irms,
power factor)
}
APÊNDICE B
/*Universidade Estácio de Sá
** Projeto de Conclusão no curso: Engenharia Elétrica **
%%%%%%%%%%%%%%%%% TEMA: CONSUMO INTELIGENTE
%%%%%%%%%%%%%%%%%%%%
Grupo composto por 3 alunos:
Anderson Antônio de Mendonça Rodrigues - Matrícula:200802204808
Leonardo Alexandre Vieira - Matricula:200401107399
Elói Lima da Silva - Matricula: 200901221191
###Essa programação tem como base, fornecer os valore:
*Tensão;
*Corrente;
Potência Ativa e Aparente;
Fator de Potência e Consumo de Energia Elétrica 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)
{
59
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 visualização das informações no serial
monitor