Automação residencial com Arduino

Instrumentação e Automação Industrial

1 Automação residencial com Arduino

Introdução

Existem diversos tipos de automação, cada qual dependente do tipo de aplicação, tais como: automação industrial, predial, residencial, comercial, entre outras (Pinheiro, 2004). De acordo com Bortoluzzi (2013), a ideia de automação residencial surgiu vinda da automação industrial na década de 60. A partir deste momento as empresas passaram a investir mais recursos para o desenvolvimento da automação residencial, mas sem perceber o que cada tipo de mercado precisava. Na automação industrial os equipamentos devem manter suas taxas de erro o mais próximo possível de zero além da necessidade de obter respostas quase que instantaneamente, porém na automação residencial isso tem menor relevância.

Muratori e Dal Bó (2011) relataram que com o avanço da tecnologia de computadores, telefonias e outras tecnologias parecidas, a automação residencial passou a integrar mais facilmente o cotidiano das pessoas. Teza (2002) diz que as alusões à automação residencial por vezes ainda causam estranheza como algo extremamente avançado e futurista ou remetendo-se ao status social, porém, na prática a domótica busca facilitar o dia a dia das pessoas.

Os países industrializados fazem uso da automação predial em diversos ambientes como hospitais, escolas e similares. Assim, a automação residencial consiste na utilização das mesmas ferramentas em âmbito doméstico. Os protocolos de comunicação utilizados para este tipo de automação não tem um padrão, o que dificulta a instalação especialmente em construções pré-existentes que muitas vezes não estão prontas para receber as adequações (MAINARDI et al., 2005).

Como é caracterizado por Muratori e Dal Bó (2011) a automação residencial define-se pela utilização da tecnologia para cuidar de atividades e interesses cotidianos tais como comunicação, conforto, praticidade, segurança e gestão de energia. O termo domótica, então, se refere à automatização e controle da residência em todos os âmbitos possíveis.

O investimento necessário para a automação de uma residência varia de acordo com o projeto, mas apesar dessa variação, diversas vezes se imagina que ela está limitada ao publico de alta classe. Porém, é perfeitamente possível aplicar ferramentas de custo menor para que todos possam ter acesso à tecnologia (LIMA; NOBRE; ALENCAR, 2015)

Accardi e Dodonovi (2012) explicam que, para automatizar uma residência, deve-se levar em conta dois fatores: os desejos do usuário e o investimento que o mesmo está disposto a realizar, ou seja, será necessário questionar as vontades do cliente, pois será através destas que o planejamento será elaborado buscando garantir o desempenho, segurança, qualidade e durabilidade da automação dentro do orçamento.

Os avanços tecnológicos e a busca pela praticidade do ser humano leva-o a buscar facilidades, sendo a automação um reflexo desta busca. A automação trabalha o conceito de que maquinas ou sistemas possam ser operados remotamente, tendo a menor interferência possível do operador humano (RIBEIRO, 2003).

2 A história da Automação Residencial

Os Estados Unidos são os pioneiros dos primeiros módulos inteligentes, usados na automação residencial, que utilizavam como meio físico de transmissão de dados a rede elétrica. Denominado Power Line Carrier (PLC) o sistema limitava-se ao comando de sistemas independentes. Com o advento dos computadores e a internet esse sistema evoluiu com a criação de sistemas para o uso integrado das tecnologias (ROVERI, 2012).

A automação residencial se difundiu na sequência de suas similares no meio industrial e comercial (Wortmeyer; Freitas; Cardoso, 2005). Muratóri e Dal Bó (2011) definem automação residencial como a aplicação de tecnologias integradas no meio residencial, a fim de, suprir necessidades diárias como segurança, comunicação e conforto.

Com base nos tipos de aplicações, o termo domótica compreende mais amplamente a automação residencial. O termo domótica surgiu na França nos anos de 1980, relacionando-se com tecnologias no ambiente doméstico com o auxilio da eletricidade, eletrônica, informática e telecomunicações, buscando a melhoria na qualidade de vida das pessoas em suas residências (FERREIRA, 2010).

Assim como foi dito por Lins e Moura (2010) as arquiteturas disponíveis para a domótica são: (i) a Arquitetura Baseada em Automação (ABA), esta mais linear baseada apenas no configurado; e (ii) a Automação Baseada em Comportamento (ABC), esta chamada de domótica inteligente,que é capaz de se adaptar a uma rotina de utilização.

Eng et al. (2002) demonstram que a Arquitetura Baseada em Automação constitui-se na prévia configuração e ajuste de dispositivos como controles remotos, sensores, e demais dispositivos segundo as necessidades do usuário. Enquanto a Arquitetura Baseada em Comportamento refere-se a um sistema que se adapta as ações do usuário, capaz de “aprender” o cotidiano e tomar decisões antecipadas.

Automação Residencial no Brasil

A terminologia mais usada no Brasil é automação residencial, traduzida do termo americano home automation, porém, o termo não é tão abrangente quanto o termo domótica. A adesão a novas tecnologias tem crescido exponencialmente no Brasil.

No entanto, o mercado da construção civil não acompanha o crescimento tecnológico nas mesmas escalas. Guardada as proporções, veículos contem mais tecnologias embarcadas do que as residências. Porém os preços no âmbito residencial são muito mais elevados (MURATORI; DAL BÓ, 2011).

Roveri (2012) diz que existe uma grande deficiência de profissionais qualificados e capacitados, no mercado nacional, para construir, programar, projetar e instalar os dispositivos. Sendo o completo oposto de países mais desenvolvidos, onde os profissionais montam equipes especializadas em partes específicas do projeto, com isso, tendo resultados mais satisfatórios.

Arduino

De acordo com Banzi e Shiloh (2015), o projeto arduino surgiu no meio acadêmico. O arduino é uma plataforma de fonte aberta, sendo possível alcançar o conhecimento sobre este livremente através de aulas, ou até mesmo na internet, além do baixo custo para aquisição da placa. O arduino se resume a uma pequena placa microcontrolada que se transforma em um pequeno computador através do microcontrolador ATmega328, elemento principal da placa, capaz de responder a sensores e atuadores ligados a ela.

McRoberts (2011) afirma que é necessária a utilização do IDE do arduino para programa-lo, ou seja, é através deste que o arduino reconhece a linguagem de programação que é utilizada. Para Souza et al. (2011), o arduino executa funções de acordo com as instruções programadas no sketch, tal programação é realizada na linguagem C e C++. A plataforma é de fácil utilização,que proporciona ilimitadas possibilidades de interação com o ambiente através de suas entradas e saídas.

Sensores

De acordo com Wendling (2010), o sensor é a nome atribuído a dispositivos que são sensíveis ao ambiente que se encontram inseridos. Assim este se relaciona baseado nas informações de uma grandeza física. Patsko (2006) fala que alguns sensores podem ser categorizados como um tipo de transdutor, ou seja, um componente capaz de transformar um tipo de energia em outro.

Os Sensores digitais podem assumir apenas dois valores em sua saída ao longo do tempo, 0 ou 1. Entretanto não existem grandezas físicas que apresentam este comportamento, logo sensores digitais têm entradas analógicas tendo uma resposta digital. (Thomazini; Albuquerque, 2007). Conforme Patsko (2006), os sensores analógicos são definidos como aqueles que têm valores limites definidos de tensão, entretanto podem apresentar inúmeros valores intermediários, concluindo-se que para cada valor medido fisicamente existe um sinal de resposta com valor equivalente.

Os sensores estão amplamente presentes no ambiente da automação, incluindo na residencial. Eles são responsáveis por informar as grandezas físicas que se deseja ter controle, e se fundamentando nestas informações, a fim de, definir sua tomada de decisões com base na automação (Wendling, 2010).

Protocolos de comunicação

Os protocolos são os responsáveis por realizar a comunicação entre dois ou mais dispositivos. Estes são implementados através de algoritmos, que executem uma tarefa definida. São diversos os protocolos disponíveis no mercado, onde cada um se adequará a situação desejada de uso (Rios,2011)

Ethernet

Segundo Bezerra (2008) através de espaços geograficamente pequenos, por meio das redes cabeadas, denominadas Local Area Network (LAN), se torna possíveis as comunicações pelo protocolo Ethernet. Este protocolo foi desenvolvido para trabalhar a 10 Mbps via cabo coaxial, essa comunicação era por um mesmo fio, se a informação fosse enviada para um destinatário, era recebida por outros computadores.

A tecnologia do protocolo ethernet da á possibilita de atingir taxas de transmissão de até 10 Gbps. Este protocolo é o mais difundido nas empresas e residências, tendo os padrões 10BaseT, 100BaseT e 1000BaseT com taxas de transmissão de 10, 100 e 1000 Mbps respectivamente, como os mais utilizados (BOLZANI, 2004).

IEEE 802.11b

Magno et al. (2013) explanam que o Wi-fi caracteriza normas de uma Wireless Local Area Network (WLAN), ou seja, uma rede local sem fio, através do padrão IEEE 802.11. A utilização da WLAN possibilita a criação de redes locais sem a necessidade da utilização de cabos, onde os dados serão transmitidos por rádio frequência.

De acordo com Barizon (2004) as redes wireless são uma extensão da rede local cabeada. A WLAN transforma os pacotes de dados em sinal infravermelho ou radiofrequência e o transmite para um dispositivo sem fio fazendo uso do ar como meio de transmissão.

O padrão IEEE 802.11b é uma atualização da primeira versão do padrão 802.11. O padrão 802.11b foi atualizado para aumentar a velocidade da taxa de transmissão de dados, enquanto a primeira versão trabalha em 1 ou 2 Mb/s a versão b opera à 11 Mb/s, entretanto a banda de frequência para ambas, de 2,4 GHz, se manteve a mesma.

Essa frequência de banda possibilita a comercialização de equipamentos com preços mais baratos ao público (MAGNO et al., 2013).

3 A automação com Arduino

Arduino foi criado em 2005 por um grupo de 5 pesquisadores : Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino e David Mellis. O objetivo era elaborar um dispositivo que fosse ao mesmo tempo barato, funcional e fácil de programar, sendo dessa forma acessível a estudantes e projetistas amadores.

Além disso, foi adotado o conceito de hardware livre, o que significa que qualquer um pode montar, modificar, melhorar e personalizar o Arduino, partindo do mesmo hardware básico.

Então, foi desenvolvida uma placa composta por um microcontrolador Atmel, circuitos de entrada/saída e que pode ser facilmente conectada à um computador e programada via IDE (Integrated Development Environment, ou Ambiente de Desenvolvimento Integrado) utilizando uma linguagem baseada em C/C++, sem a necessidade de equipamentos extras além de um cabo USB.

Depois de programado, o microcontrolador pode ser usado de maneira independente, ou seja, você pode colocá-lo para controlar um robô, uma lixeira, um ventilador, as luzes da sua casa, a temperatura do ar condicionado, pode utilizá-lo como um aparelho de medição ou qualquer outro projeto que vier à cabeça.

O que pode ser feito com o Arduino

Existe uma infinidade de possibilidades do arduino. Você pode automatizar sua casa, seu carro, seu escritório, criar um novo brinquedo, um novo equipamento ou melhorar um já existente. Tudo vai de acordo com a sua criatividade.

Para isso, o Arduino tem uma quantidade enorme de sensores e componentes que você pode utilizar nos seus projetos. Grande parte do material utilizado está disponível em módulos, que são pequenas placas que contém os sensores e outros componentes auxiliares como resistores, capacitores e leds.

Também existem os chamados Shields, que são placas que você encaixa no Arduino para expandir suas funcionalidades. A imagem abaixo mostra um Arduino Ethernet Shield encaixado no Arduino Mega 2560. Ao mesmo tempo que permite o acesso à uma rede ou até mesmo à internet, mantém os demais pinos disponíveis para utilização, assim você consegue, por exemplo, utilizar os pinos para receber dados de temperatura e umidade de um ambiente, e consultar esses dados de qualquer lugar do planeta:

Modelos de placas Arduino

O tipo de placa que você vai usar depende muito do projeto a ser desenvolvido e o número de portas necessárias. As opções vão das mais comuns, como o Arduino Uno e suas 14 portas digitais e 6 analógicas, passando por placas com maior poder de processamento, como o Arduino Mega, com microcontrolador ATmega2560 e 54 portas digitais, e o Arduino Due, baseado em processador ARM de 32 bits e 512 Kbytes de memória:

Estrutura de um programa em Arduino

Escrever um programa em Arduino é muito fácil. Tudo o que você precisa é conectá-lo ao computador por meio de um cabo USB e utilizar um ambiente de programação chamado IDE, onde você digita o programa, faz os testes para encontrar eventuais erros e transfere o programa para o dispositivo.

Na imagem a seguir temos a IDE já com um programa carregado. No site oficial do Arduino você pode estar fazendo o download da IDE gratuitamente.

Uma vez feito o programa, basta transferí-lo para o Arduino e o mesmo irá começar a funcionar.

Você não precisa ser uma especialista em linguagem C para programá-lo. Além de uma enorme quantidade de exemplos que você encontra aqui no blog, você pode começar um programa utilizando a estrutura básica do Arduino, que é composta  por duas partes, ou dois blocos:

setup() – É nessa parte do programa que você configura as opções iniciais do seu programa: os valores iniciais de uma variável, se uma porta será usada como entrada ou saída, mensagens para o usuário, etc.

loop() – Essa parte do programa repete uma estrutura de comandos de maneira contínua ou até que algum comando de “parar” seja enviado ao Arduino.

Vamos ver exatamente como isso funciona, levando em consideração o programa abaixo, que acende e apaga o led embutido na placa em intervalos de 1 segundo:

A primeira coisa que fazemos no início do programa é colocar uma pequena observação sobre o nome do programa, sua função e quem o criou:

Inicie uma linha com barras duplas ( //) e tudo o que vier depois dessa linha será tratado como um comentário. Uma das boas práticas de programação é documentar o seu código por meio das linhas de comentário. Com elas, você pode inserir observações sobre como determinada parte do programa funciona ou o que significa aquela variável AbsXPT que você criou. Isso será útil não apenas para você, se precisar alterar o código depois de algum tempo, como também para outras pessoas que utilizarão o seu programa.

Depois dos comentários, vem a estrutura do SETUP. É nela que definimos que o pino 13 do Arduino será utilizado como saída.

Por último, temos o LOOP, que contém as instruções para acender e apagar o led, e também o intervalo entre essas ações:

A linha do código contendo digitalWrite(13, HIGH) coloca a porta 13 em nível alto (HIGH, ou 1), acendendo o led embutido na placa. O comando delay(1000), especifica o intervalo, em milisegundos, no qual o programa fica parado antes de avançar para a próxima linha.

O comando digitalWrite(13, LOW), apaga o led, colocando a porta em nível baixo (LOW, ou 0), e depois acontece uma nova parada no programa, e o processo é então reiniciado.

Como vimos anteriormente, você não precisa de nenhum componente adicional para começar a programar um Arduino. Basta um computador, uma placa e a IDE para efetuar a programação e enviar o programa para a placa.