Upload
phungthien
View
217
Download
0
Embed Size (px)
Citation preview
______________________________________________________________________
FACULDADE DE TECNOLOGIA DE GARÇA - FATEC CURSO DE TECNOLOGIA EM MECATRÔNICA INDUSTRIAL
GUILHERME EUGÊNIO QUEIROZ THIAGO HENRIQUE GOMES QUERO
SEGURANÇA EM RESIDÊNCIAS COM CONTROLE À DISTÂNCIA
GARÇA 2013
_______________________________________________________________
FACULDADE DE TECNOLOGIA DE GARÇA - FATEC
CURSO DE TECNOLOGIA EM MECATRÔNICA INDUSTRIAL
GUILHERME EUGÊNIO QUEIROZ THIAGO HENRIQUE GOMES QUERO
SEGURANÇA EM RESIDÊNCIAS COM CONTROLE À DISTÂNCIA
Artigo Científico apresentado à Faculdade de Tecnologia de Garça – FATEC, como requisito parcial para a conclusão do curso de Tecnologia em Mecatrônica Industrial, examinado pela seguinte comissão de professores.
_____________________________
Professor Orientador Adalberto Sanches Munaro FATEC - Garça
_____________________________
Professor Ulysses de Barros Fernandes
FATEC - Garça
_____________________________ Professor José Augusto Ferraz de
Campos FATEC - Garça
GARÇA
2013
SEGURANÇA EM RESIDÊNCIAS COM CONTROLE À DISTÂNCIA
Orientador Adalberto Sanches Munaro
Guilherme Eugênio Queiroz Thiago Henrique Gomes [email protected] [email protected]
Alunos do Curso de Tecnologia em Mecatrônica Industrial. Faculdade de Tecnologia de Garça, turma de 2014.
RESUMO
Atualmente com a urbanização e o desenvolvimento acelerado, há um acréscimo de furtos e roubos em residências. A automação residencial vem crescendo a cada ano, proporcionalmente pelo conforto, a confiabilidade para uma residência mais segura e melhor para se viver. O projeto tem como objetivo desenvolver um sistema eficiente para auxiliar na segurança residencial, pois atualmente tem-se notado um grande aumento na criminalidade, por isso é indispensável melhorar a segurança de casa. Sabe-se que grande parte da população possui dispositivos móveis, como celulares e tablets com acesso a internet, e este projeto irá auxiliar no controle residencial e monitorar em tempo real se as portas e janelas estão abertas ou fechadas e se o alarme está ativado ou disparado, desta forma o controle poderá ser feito de qualquer lugar do mundo. Com a automação residencial e a implantação deste sistema de monitoramento pode-se acessar a internet de locais públicos, ou mesmo possuir uma operadora de telefonia que oferece serviços de internet e utilizar essa ferramenta para monitorar e controlar sua residência de forma rápida e fácil. Palavras-chave: segurança residencial. Dispositivo móvel. Automação.
ABSTRACT
Currently, with the rapid development and urbanization, there is an increase of thefts and burglaries in homes. The home automation is growing every year, in proportion to the comfort, reliability for a residence safer and better to live in. The project aims to develop an efficient system to help in residential security, because it has currently noticed a large increase in crime, so it is essential to improve home security. It is known that much of the population has mobile devices like smart phones and tablets with internet access, so this project will assist on residential control and monitoring in real time if the doors and windows are open or close and if the alarm is activated from anywhere in the world. With the automation control and the implantation of this system of monitoring we can access the internet in public places or even have a telephone company that provides internet services and use this tool to control and monitor your home quickly and easily. Keywords: Home security. Mobile device. Automation.
2
1 INTRODUÇÃO
A automação vem desde a Pré-História com a invenção da roda, mas
começou a despertar interesse somente no século XVII com o inicio das linhas
de montagem de Henry Ford, a automação alavancou e evoluiu muito.
Segundo Biondo (2011), a automação é o ato de tornar a operação de
um processo ou tarefa de forma automática, liberando o homem para tarefas
mais nobres, afastando-o de atividades perigosas ou aumentando o seu tempo
de lazer.
Da automação industrial, migrou-se algumas características desta
automação para a residencial.
Um marco importante para a automação residencial aconteceu na
década de 70, considerado relevante porque os Estados Unidos da América
lançaram os primeiros módulos inteligentes de automação, os dispositivos X-
10.
Conforme Breternitz (2001), as primeiras aplicações de domótica
(automação residencial) utilizavam sensores e atuadores, que numa arquitetura
centralizada eram ligadas a um controlador onde estava a inteligência
necessária. Esses sistemas geralmente eram complexos, pouco flexíveis e
muito caros.
Atualmente com a urbanização e o desenvolvimento acelerado, há um
acréscimo de furtos e roubos em residências. A automação residencial vem
crescendo a cada ano, proporcionalmente pelo conforto, a confiabilidade para
uma residência mais segura e melhor para se viver.
Caramante (2012), em notícia publicada no Jornal Folha, “a cada quatro
horas, uma residência é roubada na cidade de São Paulo. É o que apontam
dados dos setores de inteligência das polícias Civil e Militar [...].”.
Para amenizar esta questão aumentaram os mecanismos de controle,
que são feitas pela automação residencial, além de trazerem mais conforto
para sua residência.
A automação residencial consiste em automatizar as portas, janelas,
luzes, alarme. Poucos deles com uma central que vai conectado na internet,
para avisos prévios dos acontecimentos em residências roubadas.
Depois da verdadeira revolução provocada pela Internet, uma nova onda
de mudanças, sintetizada na possibilidade de uma comunicação total sem fio –
3
a chamada tecnologia wireless – promete elevar a patamares nunca
imaginados conceitos como conectividade e mobilidade, criando novos hábitos,
relações e formas de trabalho.
Há muito tempo os dispositivos móveis deixaram de serem simples
organizadores pessoais. Com o desenvolvimento tecnológico de fabricação de
circuitos integrados tem sido possível fabricar dispositivos computacionais com
um novo paradigma: o da mobilidade. A tecnologia de hoje permite uma
enorme mudança na nossa forma de trabalhar, de se comunicar, se divertir, de
se proteger e proteger nosso patrimônio, estudar e qualquer outra atividade
que preferimos fazer enquanto estamos em movimento e não queremos mais
ficar presos aos fios e cabos de uma infraestrutura fixa de comunicação de
dados.
“Nos últimos 4 anos desta década, vivenciamos um aumento considerável dos mais variados tipos de dispositivos móveis para as
mais variadas funções. Os dispositivos móveis podem ser pagers, telefones celulares, webphones, pagers bidirecionais, PDAs
(assistentes digitais pessoais) e aparelhos para acessar a Internet. Essa lista vem crescendo, à medida que mais dispositivos novos são
introduzidos a cada dia. Os dispositivos móveis permitem a comunicação com outras pessoas e a obtenção de informações em qualquer lugar, a qualquer hora. Dessa forma, as pessoas se tornam
direta ou indiretamente dependentes destes dispositivos. Com um mercado de 18 milhões de usuários em rede, as grandes empresas
investem em novas tecnologias para atrair mais clientes e torná-los fiéis aos seus serviços.” (NICODEMOS, 2010).
Com este aumento representativo dos dispositivos móveis, a inovação
de junção entre automação residencial e dispositivo móveis é imprescindível.
Há um crescimento de projetos em automação, muitas empresas estão
focando na automação residencial por ser uma tecnologia não muito cara e
com o mercado em ascensão.
Segundo o Instituto de Tecnologia do Paraná (TECPAR) “nos últimos
três anos, o mercado de automação residencial vem crescendo a uma média
de 35% ao ano em número de projetos”.
A Associação Brasileira de Automação Residencial – AURESIDE, estima
que no Brasil, nos próximos 5 anos, cerca de 40% das residências de médio e
alto padrão apresentarão algum sistema de automação.
4
Segundo Walsum (2012), gerente nacional da marca italiana BTicino
"Até 2020 todas as residências terão funções de automação instaladas em
suas dependências."
Com a constatação torna-se imprescindível realizar um trabalho de
pesquisa sobre a automação para segurança em residências, com as
oportunidades oferecidas no mercado, que vêm trazendo empregabilidade e
qualidade de vida para os usuários da tecnologia em questão.
A justificativa do desenvolvimento de projetos em automação residencial
com controle a distância se dá porque os furtos em residências estão
crescendo, o mercado de automação residencial está em ascensão, a internet
se tornou o maior veículo de tráfego de informações e os dispositivos móveis
se tornaram objetos multi tarefas, com isso juntando todos estes panoramas, a
proteção por dispositivos móveis seria uma opção muito viável, confiável,
cômoda e barata.
Este projeto tem como objetivo um sistema de segurança residencial de
baixo custo com um microcontrolador chamado ATmega 1280, atuadores,
sensores, e uma página em PHP na qual conseguiremos controla-los em
tempo real em qualquer lugar do mundo, estes dispositivos serão as portas,
janelas, alarme e sensores de fumaça e gás. Com isso proporcionando maior
proteção e maior comodidade com um sistema seguro e com interface
agradável, diminuindo o número de furtos, conseguindo monitorar entrada e
saída das pessoas. Conseguir acompanhar quais são as reais condições da
residência enquanto não há ninguém.
2. DESENVOLVIMENTO
2.1 Descrição do Funcionamento
O projeto de sistema de automação residencial com controle a distância,
conforme figura01. Será implantado com a finalidade de conseguir ter o
controle das portas, janelas e alarme da residência em qualquer lugar do
mundo contanto que se tenha um ponto de acesso à internet.
O sistema irá funcionar a partir da arduino, que possui um
microcontrolador chamado ATmega 1280 onde será o cérebro de nosso
sistema fazendo o controle dos atuadores.
5
Neste sistema foi utilizada a plataforma Arduino para estar gravando o
programa, a Arduino será acoplada com uma placa chamada Ethernet Shield,
no qual irá ligado ao roteador, fazendo com que se conecte com a internet,
assim pode-se definir a Arduino como servidor e uma página na web como o
cliente, podendo assim acessar de qualquer lugar onde estiver.
O acesso aos atuadores será realizado através de um dispositivo móvel,
acessando uma página disponível na internet, armazenada em uma VPS
(Virtual Private Server), nesta página estarão às opções disponíveis do projeto
que serão as janelas, portas e alarme, com um botão sinalizando se está
aberto ou fechado, acionando estes botões, esta página irá fazer a
comunicação com o serviço No-IP onde é criado um endereço no qual ele
poderá lhe redirecionar para o IP (Internet Protocol) do roteador em caso de
computadores com rede externa de IP dinâmico, que após conectado com o IP
do roteador fará a comunicação com a porta da Arduino fazendo a
comunicação com a Ethernet Shield, que comunicará com a Arduino e o
microcontrolador ATmega 1280 realizará a comunicação com os atuadores.
Figura 01- Processo de comunicação dos dispositivos móveis até os atuadores.
Fonte: Próprio autor.
3. DESCRIÇÃO DOS SUBSISTEMAS
Nos tópicos abaixo será abordado sobre os subsistemas do projeto em
partes, na ordem da comunicação do dispositivo móvel aos atuadores,
seguindo a Figura01.
6
3.1 Dispositivos Móveis
Segundo Reza B'Far (2005):
Sistemas Computacionais Móveis são sistemas
computacionais que podem facilmente ser movidos fisicamente ou
cujas capacidades podem ser utilizadas enquanto eles estão sendo
movidos. Como estes sistemas preveem tal mobilidade, eles
normalmente oferecem recursos e características que não
encontramos em sistemas comuns.
Os dispositivos móveis foram os meios de comunicação utilizados para
controlar todo o sistema deste projeto, ou seja, o usuário poderá ter o controle
das portas e janelas, e do alarme diretamente de seu celular, de seu tablet,
notebook, ou de qualquer lugar que tenha um ponto de acesso a internet do
mundo. Além de controlar estes dispositivos também pode-se visualizar o nível
de gás no local e a temperatura ambiente.
Segundo Siqueira, Ethevaldo (2012), o Brasil disputa hoje o quinto lugar
entre os maiores mercados de telefonia móvel do mundo: 1. China (842
milhões de celulares em serviço); 2. Índia (757 milhões); 3. Estados Unidos
(304 milhões); 4. Rússia (220,6 milhões); 5. Indonésia (209 milhões); 6. Brasil
(206 milhões) e 7. Japão (122 milhões).
Com o crescimento dos celulares e da banda larga, os dispositivos
móveis foi a melhor opção para a comunicação da página na internet com a
arduino, um modo seguro e cômodo por praticamente toda a população
possuir.
O dispositivo móvel irá exercer portanto a função de comunicação.
3.2 VPS (Virtual Private Server ou Servidor Virtual Privado)
O VPS terá a função de armazenar a página PHP, na qual estará o
programa da página da internet, na qual a página possui os botões e estes
botões farão a comunicação com a Arduino dizendo se deve abrir/ativar ou
fechar/desativar os atuadores e sensores.
O VPS utiliza um sistema operacional em um computador remoto, este
computador fica ligado 24 horas por dia, usando sistema operacional Linux,
tendo assim uma conexão confiável e sempre com a página e os status online.
7
3.3 IP (Internet Protocol)
Os endereços IP servem para identificar o computador na rede.
Basicamente cada computador deve ter um endereço de IP diferente e todos
devendo usar um endereço dentro do parâmetro permitido. Um endereço de IP
corresponde a uma sequência de 32 bits, divididos em 4 grupos de 8 bits, estes
oito bits são chamados de octeto. Estes oito bits permitem 256 combinações
diferentes, usando números de 0 a 255 para a representação destes
octetos, por exemplo 168.192.0.1 ou 168.192.0.198, ao invés dos números
binários. Os primeiros octetos são para identificar a rede e os últimos para
identificar o computador ligado na rede.
3.4 No-IP
O No-IP é um serviço gratuito usado quando o roteador utilizado contêm
IP dinâmico, para utilizar o No-IP é necessário o cadastramento, criando um
endereço, uma DNS Domain Name System (Sistema de Nomes de Domínios),
funciona como um sistema de tradução de endereços IP, para que quando a
página PHP tente a comunicação com a Arduino este endereço do No-IP
consegue localizar o IP do roteador e converter este IP, para a DNS escolhida,
fazendo assim a comunicação entre eles.
A DNS escolhido para o projeto foi autohome.servegame.com.
Por exemplo, na página em PHP (encontra-se a programação PHP
completa no APÊNDICE A) o endereço para a conexão com a arduino foi
utilizada a DNS autohome.servegame.com, com isso vai ser direcionado para
esta DNS, ao invés de diretamente para o IP, pois o IP dinâmico modifica ao se
desligar o roteador.
Dentro das configurações do roteador é necessário adicionar a DNS,
para que esta DNS redirecione para o IP externo do roteador, para depois
redirecionar para o IP da rede interna, que é correspondente a ethernet shield.
3.5 Roteador
Segundo Ribeiro, Daniel (2013), o roteador é um aparelho usado em
redes de computadores para o encaminhamento das informações
8
acondicionadas em pacotes de dados, proporcionando conectividade entre os
dispositivos como computadores, smartphones e tablets.
O roteador foi utilizado para receber estes dados que chegavam da
página PHP, para criar um canal de comunicação.
Nos programas da página PHP e do Arduino precisa-se utilizar o
endereço existente no roteador, porque sem ele a informação se perde dentro
do roteador.
Página PHP:
socket_connect($sock,"autohome.servegame.com", 8000);
// endereço No-IP + porta de comunicação do roteador.
Arduino:
ip[] = { 192,168,0, 198 }; // IP que o Arduino assumirá dentro do roteador.
byte gateway[] = { 192,168,0, 1 }; // IP do roteador
EthernetServer server(8000); // Cria o servidor na porta 8000
3.6 Ethernet Shield
Segundo o site da arduino.cc, “O Arduino Ethernet Sield conecta o
Arduino na internet em questão de minutos. Basta ligar este módulo em sua
placa Arduino, conectá-lo à sua rede com o cabo RJ45 (cabo de conexão para
protocolo ethernet)”. A Ethernet Shield é a responsável por fazer a
comunicação entre a Arduino e o roteador, na Ethernet Shield vai um cabo de
rede que vai ligado um lado no Ethernet Shield e um lado no roteador, fazendo
assim a troca de dados entre eles.
Na programação Arduino é necessário acrescentar a biblioteca de
comandos da Ethernet com o comando:
#include <Ethernet.h>
3.7 Arduino
Segundo o site do fabricante arduino.cc, “O Arduino é uma plataforma de
prototipagem eletrônica open-source que se baseia em hardware e software
flexíveis e fáceis de usar.”
Aarduino é uma plataforma para a gravação dos programas em um
microcontrolador chamado ATMega 1280.
O programa utilizado no projeto está em ANEXO C.
9
A Arduino é o cérebro do projeto, na Arduino teremos o microcontrolador
ATMega 1280, no qual fará a função de controlar todo o sistema, todas as
entradas e saídas de dados serão controlada por ele.
A programação de todo o sistema será armazenada no microcontrolador
que tem as características:
Microcontroller ATmega1280
Operating Voltage 5V
Input Voltage
(recommended) 7-12V
Input Voltage (limits) 6-20V
Digital I/O Pins 54 (of which 15 provide PWM output)
Analog Input Pins 16
DC Current per I/O Pin 40 mA
DC Current for 3.3V Pin 50 mA
Flash Memory 128 KB of which 4 KB used by bootloader
SRAM 8 KB
EEPROM 4 KB
Clock Speed 16 MHz
3.8 Atuadores
Os atuadores utilizados no projeto são os motores, para o projeto foram
utilizados dois motores de 12V (Volt) de corrente contínua para um protótipo
em dimensões menores, para que possa movimentar a janela ou a porta, em
uma dimensão real também seria utilizado um motor de 12V, mas suas
características seriam modificadas dependendo do projeto realizado, pois cada
casa possui uma janela ou porta com tamanhos diferentes impossibilitando um
cálculo fiel para dimensionamento universal.
O acionamento dos motores serão realizados através da página PHP,
uma ponte h, esta ponte possui um CI(circuito integrado) L298N, este CI é uma
ponte h como podemos observar na figura abaixo, tendo a capacidade de até 2
motores, conseguindo rotação para ambos os lados.
10
Figura 02 – Diagrama de blocos do CI L298N .
Fonte: STMicroelectronics. Datasheet: L298 Dual full-bridge drive.
STMicroelectronics GROUP OF COMPANIES 2000
3.9 PHP
Segundo o site do fabricante PHP, “PHP é uma linguagem de script
embutida no HTML. Muito da sua sintaxe é emprestada de C, Java e Perl com
algumas características específicas do PHP juntas. O objetivo da linguagem é
permitir que desenvolvedores web escrevam páginas geradas dinamicamente
de forma rápida.”
PHP significa PHP: Hypertext Preprocessor.
Esta linguagem foi utilizada para a programação de páginas web para
apresentar a página de controle da automação residencial.
É uma linguagem simples e de fácil entendimento, por isso foi utilizada
esta linguagem de programação.
4. FUNCIONAMENTO DO PROJETO
O primeiro parâmetro que devemos considerar é como será realizado a
comunicação e a visualização dos status, descritos nos capítulos abaixo.
11
4.1 Comunicação
Para realizar a comunicação foi necessário criar o programa do
microcontrolador se comunicando com uma página de internet, com isso foi
utilizado o protocolo via Socket, pois é através de Sockets que irá se comunicar
com servidores enviando e recebendo dados, sempre para fazer comunicação
precisa-se utilizar algum tipo de protocolo pois é necessário enviar informações
as quais o protocolo usado possa entender e efetuar suas ações.
Como o protótipo foi testado em um local com IP dinâmico, onde sempre
fica trocando de IP ao resetar a comunicação de internet, precisamos criar um
cadastro no site No-IP, na linha de comando do PHP logo abaixo, pode-se
observar o endereço “autohome.servegame.com”, é com este endereço que se
faz a conexão com o servidor, ou seja o microcontrolador, pois ele é
configurado dentro do roteador e consegue armazenar sempre qual será o IP
da máquina, com isso, quando ele se conectar com este endereço, sempre vai
se conectar ao seu IP, independente de qual seja ele. O comando
socket_connect, está pedindo para se conectar ao que vêm entre parênteses,
ou seja ao endereço autohome.servegame.com e a porta 8000, a qual foi
liberada no firewall do roteador.
socket_connect($sock,"autohome.servegame.com", 8000);
4.2 Status das Portas e Janelas
Para requisitar os status utiliza-se o protocolo Socket para o PHP e um
comando de envio para ler os dados no nomicrocontrolador. O comando
socket_write lê o que vai ser mandado entre parênteses, ou seja a letra R e #,
o R é a leitura da string criada no código fonte do microcontrolador e o #
requisita estes dados de volta para a página, e no microcontrolador foi criada
uma função especialmente para voltar estes status da string para a página.
Socket_write($sock,’R#’,2);
O comando abaixo, o microcontrolador irá criar uma string de 6
caracteres, os três primeiros irão indicar os status e o S é a comunicação entre
o PHP e o microcontrolador, e o # significa que vai mandar os status de volta.
char pej [5] = "000S#";
12
Nesta outra string ela irá armazenar a mesma coisa da anterior,
porém ela irá alocar as mensagens vinda do PHP no microcontrolador.
char msg[5] = "000S#";
Assim ele vai alocando e sabendo quais são os status, recebendo e
enviando de volta para a visualização, tudo isso ocorrendo em tempo real.
4.3 Portas e Janelas
Na estrutura das portas e janelas foram utilizados:
Motor de 12VCC (Volt Corrente Contínua)
Cálculos para dimensionamento de motores estão em ANEXO B.
Correia
Cálculos para dimensionamento das correias estão em ANEXO A.
Polia
Cálculos para dimensionamento das polias estão em ANEXO A.
Ponte h
Chip Driver: Chip dupla ponte H L298N
Tensão de alimentação: +5 V até +35 V
Pico de corrente de Saída: 2A (Ampére) por porta (Motor)
Tensão dos terminais de controle: 4.5 até 5.5 V
Corrente dos terminais de controle: 0 à 36mA (Mili Ampére)
Tensão por nível lógico: Nível alto 4.5~5.5V e 0V para nível baixo
Potência máxima: 20W (Watts)
Temperatura de trabalho: -25ºC ~ +130ºC(Celsius)
Para saber qual o motor necessário para a utilização de um projeto
específico é necessário fazer algumas contas, as formulas, estão descritas no
anexo juntamente com as fórmulas da transmissão, das polias e correias.
Quando a janela ou a porta se abrir o botão da página PHP irá modificar
de vermelho para verde e vice versa.
13
Figura 03- Mudança de estado dos botões na página PHP.
Fonte: Próprio autor.
Quando a janela chegar ao fim do curso terá um dispositivo no qual fará
a função de desligar o motor, parando no momento certo o motor.
14
4.4 Sensor de Temperatura
O sensor de temperatura é importante na visualização das grandezas
mediadas por ele em sua página na internet, sabendo se o ambiente está muito
quente, principalmente se há pessoas doentes no local onde a temperatura
ambiente precisa ser controlada.
Estes sensores serão de extrema importância em casos de a casa estar
pegando fogo por exemplo, pois com o aumento da temperatura ambiente o
sensor estará lendo o valor da temperatura.
Estes dados conseguirão ser vistos somente tendo acesso à página
PHP, não podendo modificar nem ativar e desativá-lo, somente olhar os dados
que estarão disponíveis para o usuário.
O sensor utilizado a saída de sinal digital tendo assim uma maior
confiabilidade. Abaixo estão descritas suas características:
Dimensões: 23mm x 12mm x 5mm (incluindo terminais)
Alimentação: 3,0 a 5,0 VCC (5,5 Vcc máximo)
Corrente: 200uA a 500mA, em stand by de 100uA a 150 uA
Faixa de medição de umidade: 20 a 90% UR
Faixa de medição de temperatura: 0º a 50ºC
Precisão de umidade de medição: ± 5,0% UR
Precisão de medição de temperatura: ± 2.0 ºC
Tempo de resposta: < 5s
4.5 Sensor de Gás
O sensor de gás utilizado chama-se MQ-2 que tem sensibilidade a
matérias tipo SnO2, que representa baixa condutividade em ar limpo, de
acordo com presença de gás, aumenta sua condutividade. Este sensor tem
sensibilidade à GLP (Gás Liquefeito de Petróleo), Propano, Hidrogênio, Metano
e Fumaça, sendo de baixo custo e muito eficiente.
Portanto utilizou-se este sensor para medir o nível de gás no ambiente,
por exemplo um vazamento de gás doméstico ou um incêndio, onde teremos
muita fumaça, portanto quando o ar estiver com nível acima do normal, soa
15
uma sirene indicando o seu nível muito alto e ao mesmo tempo será enviado
uma mensagem no e-mail indicando seu alto nível.
4.6 Alarme
O alarme é constituído de um sensor PIR (Passive Infrared Sensor) com
características:
Peso: 7g
Dimensões: 3.2 x 2.4 x 1.8cm
Sensor Infravermelho com controle na placa - Sensibilidade e
tempo ajustável
Tensão de Operação: 4,5-20V
Tensão de Saída: TTL 3,3V – Alto
Distância detectável: 3-7m (Ajustável)
Tempo de Delay: 5-200seg (Default: 5seg)
Tempo de Bloqueio: 2,5seg (Default)
Trigger: (L)-Não Repetível (H)-Repetível (Default: H)
Temperatura de Trabalho: -20 ~ +80°C
Para ativar este sensor, no qual fará o trabalho de detectar o movimento
de invasores em residências, deve-se entrar na página PHP e ativar o alarme,
pois sem ativá-lo ele não irá funcionar, e quando detectado algum tipo de
movimento soará uma sirene, indicando a presença do invasor conseguindo
espanta-lo, também enviando um e-mail para indicar que a sirene está
disparada.
Quando esquecer o alarme desligado e não houver a possibilidade de
ninguém ligar ou de conseguir se deslocar para o local e liga-lo, como
acontecem com muitas pessoas, isso não será mais problema, pois com o
alarme controlado pela internet de forma segura e protegida pode-se liga-lo e
desliga-lo de qualquer lugar de onde estiver, e também quando o alarme
disparar e não houver como desligar, com este sistema é possível desativá-lo e
acabar com o barulho da sirene que incomodam os vizinhos de maneira rápida
e fácil.
16
5. ESQUEMA ELÉTRICO
Primeiramente teremos a junção da Arduino Mega com a placa Ethernet
Shield.
É necessário a ligação dos pinos 10, 11, 12, 13 da Ethernet Shield com
os pinos 50, 51, 52, 53 pois indicam a comunicação SPI ( Serial Peripheral
Interface).
Segundo o site do fabricante arduino.cc , a SPI é um protocolo de dados
seriais síncronos utilizado em microcontroladores para comunicação entre o
microcontrolador e um ou mais periféricos. Também pode ser utilizado entre
dois microcontroladores. Possuindo quatro conexões:
MISO (Master IN Slave OUT) - Dados do Slave para Master;
MOSI (Master OUT Slave IN) - Dados do Master para Slave;
SCK (Serial Clock) - Clock de sincronização para transmissão de dados entre o
Master e Slave;
SS (Slave Select) - Seleciona qual Slave receberá os dados.
Figura 04- Comunicação SPI na Ethernet Shield e Arduino Mega
Fonte: WORDPRESS, 2012
17
Figura 05- Esquema elétrico do sistema.
Fonte: Próprio autor.
6. SIMULAÇÃO
Após os estudos e a descrição das funcionalidades de cada elemento do
projeto, a realização do protótipo é imprescindível, os testes de funcionamento
foram realizados e a seguir mostraremos os resultados.
Primeiramente, tudo deve estar ligado para iniciar o projeto, são eles, o
cabo de alimentação da Arduino, cabo ethernet e a alimentação dos motores.
18
Figura 06- Protótipo Final.
Fonte: Elaborada pelo autor.
Após tudo conectado é necessário acessar a página de internet
www.brasilon.com.br em qualquer tipo de dispositivo que tenha internet.
Figura 07- Página de controle do sistema.
Fonte: Próprio autor.
Após ter entrado na página de internet, todos os status serão mostrados,
sendo eles, se as portas e janelas estão abertas ou fechadas, se o alarme está
ativado ou não e os resultados dos sensores. Se os botões estiverem
19
vermelhos indicam que está fechado/ativado se estiver verde está
aberto/ativado.
Quando se aperta um botão este botão vai ligar/desligar,
ativar/desativar, dependendo do botão pressionado.
Ultimamente, depois de ativado o botão do alarme, caso a casa seja
invadida, ele enviara um e-mail, também caso o nível do sensor de gás estiver
muito alto será enviado um e-mail.
Figura 08- E-mail enviado pela Arduino na caixa de mensagens.
Fonte: Próprio autor.
20
CONSIDERAÇÕES FINAIS
A segurança é primordial nos dias atuais, com tantos roubos em
lojas, assaltos a residências. Em algumas residências ou lojas que possuem
um sistema de proteção os ladrões evitam assaltar, com isso vêm a
importância de um sistema como o deste projeto
Trabalhando com automação em prol da segurança foi um grande
aprendizado pois unindo os conhecimentos adquiridos na parte de
programação do microcontrolador ATMega 1280 da plataforma arduino, junto
com a parte de programação de pagina em php que fica hospedada em um
servidor privado virtual que com as devidas configuração em roteadores foi
possível interligar junto com a ethernet shield na qual manda as informações
para o microcontrolador, interligar com as os motores elétricos e circuitos
eletrônicos e o conhecimento em sensores para a finalidade de conseguir a
segurança e o controle a distancia de uma residência automatizada.
Nos dias atuais, o que mais se precisa é estar em um ambiente seguro e
protegido, seja por sistemas de segurança ou qualquer outro meio, com o
sistema que foi realizado e testado, pode-se observar que é de grande
importância saber como está a residência quando ninguém está olhando, ou
próximo a ela, conseguindo controla-la através de um objeto que quase todas
as pessoas possuem, que são os dispositivos móveis que podem fazer grande
diferença em situações de risco, principalmente quando o sistema envia um e-
mail no mesmo instante para ele quando há alguma irregularidade na
residência, conseguindo assim saber com antecedência e eliminando riscos
maiores e maiores danificações.
21
REFERÊNCIAS
Arduino Básico 1ª ed. São Paulo: Michael McRoberts [tradução Rafael Zanolli]
; 2011. Novatec Editora; Arduino SA. Disponível em: <http://playground.arduino.cc//Portugues/HomePage> Acesso em: 05 maio. 2013>
AURESIDE, ASSICIAÇÃO BRASILEIRA DE AUTOMAÇÃO RESIDENCIAL .
Disponível em: <www.aureside.org.br> Acesso em: 05 maio. 2013.
CARAMANTE, André. Folha de SP. Uma casa é assaltada em São Paulo a
cada 4 horas. Disponível em:
<http://blogdofavre.ig.com.br/2012/01/uma-casa-e-assaltada-em-sao-paulo-a-
cada-4-horas/> Acesso em: 23 ago. 2012.
EMPRESA SIA. Automação residencial é nova tendência do mercado de
arquitetura. Disponível em:
<http://www.siapredial.com.br/noticias.html> Acesso em: 23 ago. 2012.
Equipe Baixaki. Como funciona um roteador e saiba quais os tipos existentes. Disponível em:
<http://www.techtudo.com.br/artigos/noticia/2013/05/como-funciona-um-
roteador-e-saiba-quais-os-tipos-existentes.html> Acesso em: 19 set. 2013
Equipe FlipeFlop. Arduino Ethernet Shield W5100. Disponível em: <http://filipeflop.wordpress.com/2012/08/06/arduino-ethernet-shield-w5100/> Acesso em 22 out. 2013
Margoles, Michael. Arduino Cookbook. 1ª Edição. Gravenstein Highway North, Sebastopol. O’Reilly Media, Inc., 2011.
Mendonça, Aderval. Mobilidade em análise. Disponível em:
<http://www.devmedia.com.br/mobilidade-em-analise/3309#ixzz2g03KFvII> Acesso em: 26 set. 2013 NICODEMOS, RENATO DE BRITO. A dependência por dispositivos móveis. Disponível em:
<http://www.portaleducacao.com.br/informatica/artigos/9957/a-dependencia-por-dispositivos-moveis#ixzz2R0OhUIqi> Acesso em: 05 maio. 2013.
Revista Mecatrônica Fáci. Ano: 4. N° 25. Nov / Dez – 2005 Sivaldo, Ethevaldo. Desafios da era pós-PC. Disponível em: <http://blogs.estadao.com.br/ethevaldo-siqueira/tag/mobilidade/> Acesso em: 19 set. 2013
22
STMicroelectronics. Datasheet: L298 Dual full-bridge drive.
STMicroelectronics GROUP OF COMPANIES 2000
TECPAR. Mercado de automação residencial dá sinais de crescimento.
Disponível em: <http://portal.tecpar.br/index.php/pt/noticias/1781-mercado-de-
automacao-residencial-da-sinais-de-crescimento> Acesso em: 23 ago. 2012.
Treinamento em Linguagem C 2ª ed. São Paulo: Victorine Viviane Mizrahi ; 2008. Pearson Prentice Hall Editora;
WORDPRESS. Projetos com Arduino. Blog FilipeFlop. 2012. Disponível em:
<http://filipeflop.wordpress.com/2012/08/06/arduino-ethernet-shield-w5100/>. Acesso em 23 Set. 2013.
23
ANEXO A - DIMENSIONAMENTO DE CORREIAS E POLIAS
1º Potência Projetada
Para determinar a potência projetada, é necessário especificar o fator de
serviço (fs).Através de uma tabela.
Potência Projetada = Potência nominal x Fator de serviço
Tabela 1: Fator de serviço.
2º Perfil da Correia
Através da rotação do eixo mais rápido e da potência projetada, determinamos
o perfil da coreia através de um gráfico.
24
Tabela 2: Seleção do Perfil de Correias Hi-Power II.
3º Diâmetro das Polias
O diâmetro da polia menor é dado por uma tabela, quando sabemos o
HP do motor e a rotação do eixo mais rápido.
Tabela 3: Diâmetros Pitch mínimos recomendados para correias Hi-Power II.
O diâmetro nominal é:
D = diâmetro nominal da polia menor x relação de transmissão
4º Comprimento das Correias
l = 2.C + 1,57 (D + d) + (D + d)²/4.C
C = Distância entre centros
D = Diâmetro maior da Polia
d = Diâmetro menor da Polia
25
Na tabela padronizamos a nossa correia
Tabela 4: Comprimento das correias Hi-Power II.
5º Ajuste da Distância entre centros
A = lc – 1,57(D+d)
Para encontrarmos o fator h precisamos fazer a seguinte conta depois
olharmos na tabela abaixo
D-d / A
Tabela 5: Fator de correção da distância entre centros.
Aplicamos a fórmula de correção da distância entre centros
26
C = A-h(D-d)/2
6º Capacidade de transmissão de potência por correia (Npc)
Npc = (Nb+Na). Fcc.Fcac
Nb: ela é definida através da rotação do eixo mais rápido e o diâmetro da polia.
Na tabela 10.
Na: Na mesma tabela abaixo encontramos o Na, que é a relação entre as
velocidades é a própria relação de transmissão, que sabendo qual é
conseguimos encontrar o resultado na tabela para Na.
Fcc: Encontra-se o fator de correção de comprimento na tabela numero 9.
Tabela 6: Fator de correção de comprimento de correias Hi-Power II.
27
Tabela 7: Classificação de HP por correia (mm) para correias Hi-Power II e PowerBand Hi-
Power II perfil “A”.
28
Fcac: Através da fórmula D-d/C, encontramos um resultado que vamos coloca-
lo na tabela número 11 pra verificar qual é o resultado do fator de correção do
arco de contato e o próprio arco de contato.
Tabela 8: Fator de Correção do Arco de Contato.
7º Número de correias necessárias para a transmissão
Nca= Np/Npc
8º Esforço na Transmissão
8.1 Torque do motor
MTmotor = 71620 Nmotor/nmotor
8.2 Força Tangencial
Ft = 2. MTmotor/dn
8.3 Esforços F1 e F2
F1/F2 = eu.rd
8.4 Resultante f
√F12
+ F22 + 2.F1F2 |cos alfa|
29
APÊNDICE A – PROGRAMAÇÃO PÁGINA PHP
<?php
$sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
socket_connect($sock,"autohome.servegame.com", 8000);
if(isset($_POST['bits'])) { $msg = $_POST['bits'];
if(isset($_POST['Porta'])){ if($msg[0]=='1') { $msg[0]='0'; } else { $msg[0]='1'; }}
if(isset($_POST['Janela'])){ if($msg[1]=='1') { $msg[1]='0'; } else { $msg[1]='1';}}
if(isset($_POST['Alarme'])){ if($msg[2]=='1') { $msg[2]='0'; } else { $msg[2]='1';}}
socket_write($sock,$msg,strlen($msg)); }
socket_write($sock,'R#',2);
$status = socket_read($sock,50);
if (($status[3]=='S')&&($status[4]=='#')) {
if ($status[0]=='0') $cor1 = lightcoral;
else $cor1 = lightgreen;
if ($status[1]=='0') $cor2 = lightcoral;
else $cor2 = lightgreen;
if ($status[2]=='0') $cor3 = lightcoral;
else $cor3 = lightgreen;
echo "<input type=\"hidden\" id=\"bits\" value=\"$status\">";
echo "Temperatura: " . substr($status, 5, 2) . "ºC - Umidade do ar: " .
substr($status, 9, 2) . "%<br><br>";
echo "<button style=\"width:70; background-color: $cor1 ;font: bold 14px Arial\"
onclick=\"carrega_status(0)\" Name = \"Porta\">Porta</button></br></br>";
echo "<button style=\"width:70; background-color: $cor2 ;font: bold 14px Arial\"
onclick=\"carrega_status(1)\" Name = \"Janela\">Janela</button></br></br>";
echo "<button style=\"width:70; background-color: $cor3 ;font: bold 14px Arial\"
onclick=\"carrega_status(2)\" Name = \"Alarme\">Alarme</button></br></br>";
echo "<a href=\"javascript:carrega_status(-1)\">Atualizar</a>"; }
else { echo "Falha ao receber status da casa."; }
socket_close($sock);
?>
30
APÊNDICE B – PROGRAMAÇÃO ARDUINO
#include <Ethernet.h>
#include <SPI.h>
#include <dht11.h>
#include <Wire.h>
#define DHT11PIN 26
#define time 1000
#define emailIntervalo 60
#define HighThreshold 35
#define LowThreshold 10
int botao=28;
int botao1=29;
int botao2=30;
int botao3=31;
int Estadobotao = 0;
int Estadobotao1 = 0;
int Estadobotao2 = 0;
int Estadobotao3 = 0;
int botao4=22;
int botao5=23;
int botao6=24;
int botao7=25;
int Estadobotao4 = 0;
int Estadobotao5 = 0;
int Estadobotao6 = 0;
int Estadobotao7 = 0;
int buzzer = 32;
int buzzeralarme = 35;
int val;
int calibrationTime = 30;
long unsigned int lowIn;
31
long unsigned int pause = 5000;
boolean lockLow = true;
boolean takeLowTime;
int pirPin = 33;
float tempC, tempF;
char message1[35], message2[35];
char subject[] = "Arduino: Alerta\0";
unsigned long lastMessage;
char pej[20] = "000S#";
EthernetServer server(8000);
char msg[20] = "000S#";
char temperatura[6];
char umidade[6];
char gas[6];
dht11 DHT11;
byte mac[] = {0x64, 0xB9, 0XE8, 0XC3, 0XC7, 0XE2};
byte ip[] = {192, 168, 0, 198};
byte subnet[] = { 255, 255, 255, 0 };
byte gateway[] = { 192, 168, 0, 1 };
byte smtpServerIP[] = { 189, 38, 82, 160 };
String smtpServerName = "smtp.querocarimbos.com";
EthernetClient client;
void sendEmail(char subject[], char message1[], char message2[], float temp) {
Serial.println("Conectando");
32
if(client.connect(smtpServerIP,25)){
Serial.println ("conectado");
client.println ("EHLO MYSERVER"); delay(time);
client.println ("AUTH LOGIN"); delay (time);
client.println ("cXVlcm9jYXJpbWJvc0BxdWVyb2NhcmltYm9zLmNvbQ==");
delay (time);
client.println ("cTN5N20yYzY="); delay (time);
client.println ("MAIL FROM: <[email protected]>"); delay
(time);
client.println ("RCPT TO: <[email protected]>"); delay (time);
client.println ("DATA"); delay (time);
client.println ("From: <[email protected]>"); delay (time);
client.println ("To: <[email protected]>"); delay (time);
client.println ("SUBJECT: ");
client.println (subject); delay (time);
client.println (); delay (time);
client.println (message1); delay(time);
client.println (message2); delay (time);
client.println ("Temperatura: ");
client.println (DHT11.temperature); delay(time);
client.println ( "Gas:");
client.println (val);
client.println ("."); delay (time);
client.println ("QUIT"); delay (time);
client.println ("Email enviado.");
lastMessage=millis();
}else{
Serial.println("connection falhou");
}
}
void checkEmail() {
while (client.available()){
char c = client.read();
33
Serial.print(c);
}
if (!client.connected()){
Serial.println();
Serial.println("desconectando.");
client.stop();
}
}
void setup(){
lastMessage = 0;
Ethernet.begin(mac,ip);
Serial.begin(9600);
server.begin();
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
pinMode(22, INPUT);
pinMode(23, INPUT);
pinMode(24, INPUT);
pinMode(25, INPUT);
pinMode(28, INPUT);
pinMode(29, INPUT);
pinMode(30, INPUT);
pinMode(31, INPUT);
pinMode(32,OUTPUT);
pinMode(34,OUTPUT);
pinMode(buzzer, OUTPUT);
pinMode (buzzeralarme, OUTPUT);
pinMode(pirPin, INPUT);
digitalWrite(pirPin, LOW);
34
Serial.print("calibrating sensor ");
for(int i = 0; i < calibrationTime; i++){
Serial.print(".");
delay(1000);
}
Serial.println(" done");
Serial.println("SENSOR ACTIVE");
delay(1000);
}
void loop(){
Estadobotao = digitalRead(botao);
if(Estadobotao == HIGH)
digitalWrite(5, LOW);
Estadobotao1 = digitalRead(botao1);
if(Estadobotao1 == HIGH)
digitalWrite(6, LOW);
Estadobotao2 = digitalRead(botao2);
if(Estadobotao2 == HIGH)
digitalWrite(5, HIGH);
Estadobotao3 = digitalRead(botao3);
if(Estadobotao3 == HIGH)
digitalWrite(6, HIGH);
Estadobotao4 = digitalRead(botao4);
if(Estadobotao4 == HIGH)
digitalWrite(7, LOW);
Estadobotao5 = digitalRead(botao5);
if(Estadobotao5 == HIGH)
35
digitalWrite(8, LOW);
Estadobotao6 = digitalRead(botao6);
if(Estadobotao6 == HIGH)
digitalWrite(7, HIGH);
Estadobotao7 = digitalRead(botao7);
if(Estadobotao7 == HIGH)
digitalWrite(8, HIGH);
DHT11.read(DHT11PIN);
Serial.print("Temperatura = ");
Serial.print(DHT11.temperature);
Serial.println(" Celsius ");
if (DHT11.temperature >= HighThreshold &&
(lastMessage+(emailIntervalo*1000))){
Serial.println("High Threshhold Exceeded");
char message1[]="Temperature Sensor\0";
char message2[]="High Threshold Exceeded\0";
sendEmail(subject, message1, message2, tempC);
}
else if (DHT11.temperature <= LowThreshold &&
(lastMessage+(emailIntervalo*1000))){
Serial.println("Low Threshhold Exceeded");
char message1[]="Temperature Sensor\0";
char message2[]="Low Threshold Exceeded\0";
sendEmail(subject, message1, message2, tempC);
}
if(digitalRead(pirPin) == HIGH){
if(lockLow){
lockLow = false;
36
digitalWrite(buzzeralarme, HIGH);
Serial.println("---");
Serial.print("motion detected at ");
Serial.print(millis()/1000);
Serial.println(" sec");
char message1[]="Movimentação\0";
char message2[]="Sensor de Movimento Ativado\0";
sendEmail(subject, message1, message2, tempC);
delay(50);
}
takeLowTime = true;
}
if(digitalRead(pirPin) == LOW){
digitalWrite(buzzeralarme, LOW);
if(takeLowTime){
lowIn = millis();
takeLowTime = false;
}
if(!lockLow && millis() - lowIn > pause){
lockLow = true;
Serial.print("motion ended at ");
Serial.print((millis() - pause)/1000);
Serial.println(" sec");
delay(50);
}
}
val=analogRead(0);
Serial.println(val,DEC);
if (val >= 700) {
37
digitalWrite(buzzer, HIGH);
char message1[]="gas\0";
char message2[]="Sensor de gas com nível alto\0";
sendEmail(subject, message1, message2, tempC);
delay(100);}
if (val <690) {
digitalWrite(buzzer, LOW);}
if (client.available()) {checkEmail();}
EthernetClient client = server.available();
if (client) {
msg[1]=msg[2]; msg[2]=msg[3]; msg[3]=msg[4]; msg[4]=msg[5]; msg[5] =
client.read();
if (msg[5]=='#') {
switch(msg[4]) {
case 'R':
DHT11.read(DHT11PIN);
memset(temperatura, 0x00, sizeof(temperatura));
memset(umidade, 0x00, sizeof(umidade));
memset(pej, 0x00, sizeof(pej));
sprintf(temperatura, "%d" , DHT11.temperature);
sprintf(umidade, "%d" , DHT11.humidity);
strcat(pej, temperatura);
pej[5] = temperatura[0];
pej[6] = temperatura[1];
38
pej[7] = '#';
pej[8] = 'U';
pej[9] = umidade[0];
pej[10] = umidade[1];
client.write(pej);
break;
case 'S':
pej[0]=msg[1];
pej[1]=msg[2];
pej[2]=msg[3];
if (pej[0]=='1') digitalWrite(5,HIGH); else digitalWrite(5,LOW);
if (pej[0]=='0') digitalWrite(6,HIGH); else digitalWrite(6,LOW);
if (pej[1]=='1') digitalWrite(7,HIGH); else digitalWrite(7,LOW);
if (pej[1]=='0') digitalWrite(8,HIGH); else digitalWrite(8,LOW);
if (pej[2]=='1') digitalWrite(34,HIGH); else digitalWrite(34,LOW);
break;
case 'T':
DHT11.read(DHT11PIN);
client.print("Temperature (C): ");
client.println((float)DHT11.temperature, 1);
client.println("<br />");
client.print("Humidity (%): ");
client.println((float)DHT11.humidity, 0);
client.println("<br />");
}
}
}
}
39
ANEXO B – CÁLCULOS PARA MOTOR ELÉTRICO
1. Trabalho Mecânico:
Define-se como trabalho mecânico o produto da força aplicada a um determinado corpo pelo deslocamento do mesmo. W=F.dA (Kgf.m) F=Força dA= deslocamento
2. Conjugado
Uma força atuando sobre uma alavanca origina um conjugado. Este conjugado depende da intensidade da força e do comprimento do braço de alavanca, isto é, da distância onde a força é aplicada ao ponto de apoio. No caso de uma polia, o braço de alavanca é o próprio raio da polia.
C=F.l (kgf.m) F= Força (Kgf) l= Distância onde a força é aplicada ao ponto de apoio (m)
3. Potência Elétrica
Em circuitos de corrente contínua, a potência elétrica pode ser obtida por:
P=V.I ou P=R.I² ou P=
(w)
V= Tensão em Volt I= Corrente em Ampere R= Resistência em Ohm