• Nenhum resultado encontrado

Ensino pela pesquisa: desenvolvimento de um sistema web, Baseado no raspberry pi e node.js, para monitoramento e controle de periféricos / Teaching with research: the development of a node.js and raspberry pi based web system, for monitoring and control o

N/A
N/A
Protected

Academic year: 2021

Share "Ensino pela pesquisa: desenvolvimento de um sistema web, Baseado no raspberry pi e node.js, para monitoramento e controle de periféricos / Teaching with research: the development of a node.js and raspberry pi based web system, for monitoring and control o"

Copied!
13
0
0

Texto

(1)

Ensino pela pesquisa: desenvolvimento de um sistema web, Baseado no raspberry

pi e node.js, para monitoramento e controle de periféricos

Teaching with research: the development of a node.js and raspberry pi based

web system, for monitoring and control of peripherals

Recebimento dos originais: 12/07/2018 Aceitação para publicação: 21/08/2018

Vitor Bruno de Oliveira Barth

Acadêmico de Engenharia da Computação no Instituto Federal de Mato Grosso (IFMT) Instituição: Instituto Federal do Mato Grosso (IFMT), campus Cuiabá

Endereço: Rua Zulmira Canavarros 95, Centro Norte. Cuiabá - MT, Brasil E-mail: vbob@vbob.com.br

Pedro Felipe Gonçalves de Arruda

Acadêmico de Engenharia da Computação no Instituto Federal de Mato Grosso (IFMT) Instituição: Instituto Federal do Mato Grosso (IFMT), campus Cuiabá

Endereço: Rua Zulmira Canavarros 95, Centro Norte. Cuiabá - MT, Brasil E-mail: pedrofelipega@gmail.com

Ruy de Oliveira

Doutor em Ciência da Computação pela Universidade de Bern Instituição: Instituto Federal do Mato Grosso (IFMT), campus Cuiabá Endereço: Rua Zulmira Canavarros 95, Centro Norte. Cuiabá - MT, Brasil

E-mail: ruy@cba.ifmt.edu.br

Valtemir Emerencio do Nascimento

Doutor em Engenharia Elétrica pela Universidade de São Paulo (USP) Instituição: Instituto Federal do Mato Grosso (IFMT), campus Cuiabá Endereço: Rua Zulmira Canavarros 95, Centro Norte. Cuiabá - MT, Brasil

E-mail: valtemir.nascimento@cba.ifmt.edu.br

Ed’ Wilson Tavares Ferreira

Doutor em Ciências pela Universidade Federal de Uberlândia (UFU) Instituição: Instituto Federal do Mato Grosso (IFMT), campus Cuiabá Endereço: Rua Zulmira Canavarros 95, Centro Norte. Cuiabá - MT, Brasil

E-mail: edwilson.ferreira@ifmt.edu.br

RESUMO

A aprendizagem por meio da pesquisa de iniciação científica tem sido objeto de muitos estudos científicos e os resultados na sua maioria constatam que é salutar envolver os estudantes em experimentos que os instiguem a serem críticos e a buscar alternativas para soluções postas como

(2)

prontas. Nesse sentido, este trabalho apresenta a pesquisa desenvolvida por alunos de um curso de graduação em Engenharia da Computação que receberam a tarefa de prover acesso web a quatro dispositivos com as seguintes portas: 1 entrada digital, 1 saída digital, 1 entrada analógica e 1 saída analógica. Com essas portas o sistema desenvolvido será capaz de monitorar e controlar uma grande quantidade de dispositivos existente no mundo real. Os resultados preliminares mostram que além do que foi proposto pelos professores participantes, os estudantes inovaram e conseguiram um sistema simples, eficiente e de baixo custo, utilizando o hardware Raspberry Pi e o servidor web Node.js.

Palavras-chave: Node.js; Raspberry Pi; monitoramento remoto. ABSTRACT

Learning through scientific research is the goal of many scientific studies and the results, in its majority, verify that is good to involve students into experiments that instigate the criticism and the search of alternatives to solutions made as ready. With this purpose, this work presents the research developed by undergraduates in Computer Engineering who received the task to provide web access to four devices with the following ports configuration: 1 digital input, 1 digital output, 1 analog input, 1 analog output. With those four ports the developed system should be able to monitor and control a large quantity of existing real-world devices. The preliminary results show that besides making what the teachers proposed, the students achieved a simple, efficient and low coast system, using the Raspberry Pi hardware and Node.js web server.

Key-words: Node.js; Raspberry Pi; remote monitoring.

1 INTRODUÇÃO

O baixo preço, combinado a um hardware eficiente, versátil e completo fazem do Raspberry Pi um componente útil em soluções de automação e experimentação remota (MAKSIMOVIĆ et al., 2014; CROTTI et al., 2013; GANESH & KHAN, 2015; SRILEKHA & TEJASWI, 2016; ZHAO, JEGATHEESAN & LOON, 2015). Uma das principais caraterísticas do Raspberry Pi é o conjunto de pinos (26 pinos no modelo A, e 40 pinos nos modelos A+, B e B+) para a entrada e saída de dados. Tais pinos, denominados de interfaces físicas do equipamento, servem para interligar o software no equipamento ao restante do mundo. Por fornecer suporte a uma grande quantidade de periféricos, e à comunicação em rede sem necessidade de placas adicionais, o Raspberry Pi 3 é muito utilizado como sensor (coleta de dados) e controlador remoto (DAKHANE & MANISH, 2015; FERDOUSH & LI, 2014; ORTEGA et al., 2015; SURESH et al., 2014; VUJOVIĆ & MAKSIMOVIĆ, 2014).

Para que o Raspberry Pi possa prover funcionalidades de monitoramento e controle via Web, há a necessidade de se implementar um servidor web no dispositivo. Por meio desse servidor pode-se enviar comandos aos periféricos de saída, e ler e apresentar informações dos periféricos de entrada. Para isso, o servidor web tem de receber uma requisição web via HTTP (HyperText Transfer Protocol) e enviar uma resposta, caso seja necessário, como apresentado na Figura 1.

(3)

A comunicação ente o servidor web e os dispositivos de hardware usa, geralmente, uma camada intermediária de software. Tradicionalmente, a leitura e escrita de dados dos periféricos exige que sejam desenvolvidos aplicativos adicionais, utilizando linguagens de programação como C ou Python, que são invocados por scripts em PHP (PHP: HyperText Preprocessor) pelo servidor web (FERDOUSH & LI, 2014; LEMES, 2013; PEREIRA et al., 2015).

Figura 1 – Modelo de requisição HTTP

O mercado de servidores web é hoje dominado pelo Apache HTTP Server, que representa cerca de 50% de todos os servidores ativos no mundo. Em seguida aparecem nginx e Microsoft IIS (Internet Information Services), que ao todo servem mais de 70% dos sites ativos no mundo. (NETCRAFT. 2017; W3TECHS, 2017).

Apesar da popularidade, nenhum destes consegue, diretamente, controlar a entrada e saída de dados do Raspberry Pi. Conforme dito, esses servidores demandam ferramentas externas que executem códigos em linguagens C ou Python (CROTTI et al., 2013; FERDOUSH & LI, 2014; GANESH & KHAN, 2015).

Por outro lado, os avanços na linguagem JavaScript propiciaram o surgimento de novas formas de interação entre a web e o mundo real. JavaScript, é uma linguagem de programação interpretada, criada em 1995 e amplamente usada no lado do cliente, com a intenção de executar, dentro do navegador, funções que alterem um website sem a necessidade de comunicação com o servidor. (ULLMAN, L. 2012). Contudo, as técnicas tradicionais de interpretação eram lentas e exigiam muitos recursos computacionais, e para tentar melhorar o desempenho de aplicações em JavaScript, a Google lançou, em 2008, o motor de compilação Chrome V8, que compila diretamente o código em JavaScript para linguagem de máquina, e isso resultou em importantes otimizações que alavancou a utilização de JavaScript em programas independentes do navegador (RATANAWORABHAN, P.; LIVSHITS, B. & ZORN, B., 2010;TIWARI, D. & SOLIHIN, Y, 2015).

Por ser desenvolvido em C e C++, o motor de compilação V8 propiciou o surgimento de diversos projetos de software, dentre eles destacou-se o servidor web Node.js. O principal benefício do Node.js é se manter estável frente a aplicações de tempo real com tráfego intenso de dados, que é

(4)

obtido utilizando programação Assíncrona Orientada a Eventos, e, portanto, consegue responder a mais requisições em menor tempo em comparação com outros servidores web (MCCUNE, R., 2009; RIBEIRO JR., F., 2012).

Node.js possui diversas extensões, chamadas de pacotes, que adicionam funcionalidades ao servidor e são distribuídas gratuitamente e em licenças de código aberto (NPMJS, 2017). Uma destes pacotes é o node-rpio, que permite acessar a interface GPIO do Raspberry Pi diretamente do servidor web Node.js (NODE-RPIO, 2017).

Com base no exposto, este trabalho propõe um sistema de controle de hardware via web que utiliza apenas o servidor Node.js, sem qualquer linguagem intermediária para executar comandos em baixo nível. Desde as requisições web até a escrita e leitura nos dispositivos periféricos são manuseadas em JavaScript, o que facilita expressivamente o desenvolvimento do sistema.

As demais seções deste artigo são estruturadas como segue: A seção 2 descreve os materiais, métodos e configurações utilizados na implementação de um servidor Node.js no Raspberry Pi. A seção 3 detalha o uso do Node.js para tarefas de escrita e leitura de interfaces analógicas e digitais. Na seção 4 são apresentados os resultados, dificuldades e conclusões obtidas durante os experimentos apresentados neste artigo.

2 MATERIAIS E MÉTODOS

O controle e monitoramento de dispositivos periféricos demanda o uso de grandezas analógicas e/ou digitais. Por isso, o Raspberry Pi deve ser capaz de receber e enviar sinais digitais e analógicos. Exemplos de sensores para i) entradas digitais: botão liga/desliga, chave fim de curso, nível de reservatório, ii) entradas analógicas: umidade, temperatura, velocidade do vendo. Exemplos de atuadores para i) saídas digitais: chave liga/desliga, ii) saídas analógicas: intensidade luminosa, sonora, corrente elétrica. Dessa forma, os experimentos apresentados neste trabalham objetivam demonstrar como o servidor Node.js pode possibilitar essas 4 (quatro) operações de entrada e saída básicas. Tendo-se o servidor web operacional com essas quatro operações (leitura e escrita digital e analógica), pode-se controlar e monitorar a vasta maioria dos sistemas existentes no mundo real.

Para esses experimentos, utilizou-se uma placa de prototipagem com 640 pontos, desenvolvida pelo grupo de pesquisa em que este trabalho foi desenvolvido, e um adaptador de GPIO para a protoboard, conforme ilustrados na Figura 2. O servidor Node.js foi programado para interpretar os sinais digitais de botões push button e sinais analógicos de um divisor de tensão montado com um potenciômetro de 22 kΩ. Os sinais de saída foram avaliados com o uso de LEDs

(5)

(sinal digital) e um Buzzer (sinal analógico) conectados ao Raspberry Pi. Dessa forma, as quatro operações básicas puderam ser implementadas e testadas.

Estes quatro periféricos foram conectados a um Raspberry Pi 3 Modelo B(RASPBERRY PI FOUNDATION, 2017). Como a placa Raspberry Pi 3 possui somente entradas e saídas de dados digitais, fez-se ainda necessário o uso do circuito integrado MCP3008 (MICROCHIP, 2006) que atua como um conversor analógico digital com interface SPI de 10 Bits.

2.1 DESCRIÇÃO DOS SOFTWARES UTILIZADOS

No Raspberry Pi foi instalado o sistema operacional Raspbian Jessie com Pixel versão 2017-03-02, utilizando kernel Linux 4.4.5 (LINUX FOUNDATION, 2017). O servidor Node.js foi instalado em sua versão 6.4.0 LTS (NODE.JS FOUNDATION, 2017), distribuída pelo sistema operacional por meio da ferramenta APT (Advanced Packaging Tool), (SOFTWARE IN THE PUBLIC INTEREST, 2017).

Para controlar as portas GPIO do Raspberry Pi 3, o servidor Node.js utiliza a biblioteca node-rpio, versão 0.9.15. A fim de facilitar a administração das requisições HTTP e a transferência de arquivos, foram utilizadas as bibliotecas express v4.14.1 e cors v2.8.1 (NODE.JS FOUNDATION, 2017). O processo de download e instalação destas bibliotecas foi realizado com auxílio da ferramenta NPM (Node Package Manager), versão 3.10.10 (NODE.JS FOUNDATION, 2017).

A página web desenvolvida para estes testes preliminares é baseada em HTML5 e CSS3, com o tema Astral, distribuído gratuitamente pelo site HTML5 Up! (HTML5 UP, 2017). Utilizou-se ainda os frameworks JQuery v1.11.3 (JQUERY FOUNDATION, 2017) e Bootstrap v3.3.7 (BOOTSTRAP, 2017).

(6)

3 INTERFACE WEB COM O MUNDO REAL

Conforme mencionado acima, o objetivo da aplicação proposta por este trabalho é fazer com que, através de uma página web, se tenha controle sobre periféricos digitais e analógicos ligados ao Raspberry Pi 3 utilizando somente um servidor web Node.js. A página preliminar possui quatro elementos para testes de interação, conforme apresentado na Figura 3:

 Uma barra de carregamento, que apresenta a variação do sinal analógico provido pelo potenciômetro (Sinal de Entrada Analógico);

Um painel, que é atualizado quando o botão push é pressionado (Sinal de Entrada Digital);

Uma barra deslizante, que altera a frequência de emissão sonora do buzzer (Sinal de Saída Analógico).

 Um conjunto de dois botões que, ao clicados, alternam o estado dos LEDs ligados (Sinal de Saída Digital).

A página de testes é atualizada em tempo real pelo do módulo AJAX (THE JQUERY FOUNDATION, 2017), o qual mantém comunicação constante entre a página web e o servidor e atualiza as informações dos elementos da página sem necessidade de atualização completa da página.

3.1 A PÁGINA WEB

As principais funcionalidades de leitura e escrita de dados implementadas no Node.js, referentes à página web, estão apresentadas nos códigos JavaScript das Figuras 4 e 5. Conforme

(7)

ilustrado na Figura 4, quando se deseja atualizar o valor de um elemento que mostra informações de sensores de Entrada, é iniciada uma requisição AJAX ao servidor Node.js, a qual pedeque seja realizada a leitura de um sensor específico conectado ao Raspberry Pi. Após realizar a leitura do valor do sensor, o servidor Node.js retorna, como resposta da requisição, o valor lido, e então o elemento correspondente a este sensor é atualizado. Para manter os valores dos mostradores sempre atualizados, a tarefa de leitura é realizada ciclicamente, a cada segundo.

As requisições de escrita só ocorrem quando o usuário realiza alguma ação sobre os elementos que representam estes periféricos, como o clique em um botão ou a alteração de posição do marcador na barra deslizante.

Conforme ilustrado na Figura 5, caso um desses eventos ocorra, é chamada a função que envia ao servidor web os novos parâmetros desejados, como qual o LED que deve ser aceso ou qual a frequência desejada para o buzzer. Após receber a requisição, o servidor Node.js avalia os parâmetros enviados nesta requisição e realiza escrita no sensor desejado com estes novos parâmetros.

Figura 5 - Função que envia comandos para escrita nos sensores de Saída Figura 4 - Função que envia comandos para leitura dos sensores de Entrada

(8)

Figura 6 – Funções de Escrita e Leitura Digitais no servidor Node.js 3.2 O SERVIDOR NODE.JS

Considerando-se as tarefas com os periféricos, as tarefas do servidor estão divididas em quatro funções principais, uma para cada um dos periféricos utilizados. Conforme mostrado no código JavaScript da Figura 6, as requisições das páginas ‘/LED’ e ‘/Botao’ tratam, respectivamente, de escrita e leitura digitais, enquanto as requisições de ‘/Buzzer’ e ‘/Potenciometro’ tratam de escrita e leitura analógica. A entrada e a saída de dados digitais resumem-se em verificar o estado de uma porta ou escrever um sinal alto ou baixo numa porta.

Por outro lado, para se trabalhar com dados analógicos no RaspberryPi é necessário hardware externo e desenvolver soluções de software mais complexas, conforme mostrado código JavaScript na Figura 7. O conversor Analógico-Digital armazena os resultados das conversões em buffers de memória, de modo que se faz necessário realizar este tipo de acesso de dados.Já a escrita de dados analógicos, para não ser necessário um chip conversor, foi baseada em Modulação de Largura de Pulso (PWM), que têm efeito parecido com saídas analógicas ao simular dados analógicos por meio de entradas altas e baixas intermitentes em uma frequência estabelecida.

(9)

4 RESULTADOS E DISCUSSÃO

Com a aplicação desenvolvida foi possível utilizar um servidor Node.js para monitorar e controlar periféricos de Raspberry Pi remotamente. Por conta do hardware, a utilização de dados analógicos pelo Raspberry Pi é limitada. A entrada e saída de dados analógicos exige hardware externo, de modo que foi necessário pesquisar outros meios de se ligar sensores e controladores analógicos ao RaspberryPi. A solução sugerida por Reck & Sreenivas (2016) é utilizar um conversor analógico digital MCP3002 ou MCP3008. Devido a indisponibilidade do MCP3002 nas lojas de eletrônica locais, foi escolhido o Circuito Integrado MCP3008.

Utilizar PWM não é o modo mais adequado de se enviar informações a um sensor analógico, pois este é suficiente apenas quando a informação não necessita ser quantificada, servindo somente para controlar intensidade de saídas como o piezo buzzer. A solução mais adequada para saída de dados analógicos é a utilização de um Circuito Integrado Conversor Digital-Analógico. Devido a não disponibilidade deste circuito integrado em lojas de eletrônica locais, não é possível garantir o funcionamento de saídas analógicas precisas utilizando o RaspberryPi. Para isso, pretende-se realizar pesquisas para que seja verificado o funcionamento do conversor digital-analógico junto ao Raspberry Pi.

Por não possuir conexões analógicas, o uso do Raspberry Pi para monitoramento de dados analógicos talvez não seja a melhor escolha quando não há conversores digitais-analógicos e analógicos-digitais disponíveis, ou quando a alta precisão dos dados utilizados seja um importante quesito. No entanto, certamente o Node.js é um ótimo servidor web para o controle remoto de

(10)

periféricos conectados ao Raspberry Pi ou dispositivos similares, sobretudo porque Node.js dispõe de uma grande variedade de extensões, oferece alto desempenho e é de fácil programação,

5 CONCLUSÃO

Esta pesquisa comprovou o quanto um estudante de graduação pode avançar no processo de aprendizagem quando se envolve com atividades de iniciação científica. Quando o tema foi proposto, os alunos envolvidos não detinham conhecimentos sobre alguns dos tópicos abordados no projeto, mas com a orientação dos professores e o trabalho investigativo proposto por eles, os resultados começaram a surgir e, inclusive muitas inovações propostas pelos estudantes foram incorporadas ao projeto inicial.

Embora o trabalho ainda não esteja totalmente finalizado, a base para um conclusão bem-sucedida está assegurada, e o conhecimento adquirido pelos estudantes já demonstra melhoria em sala de aula, uma vez que os estudantes comprovadamente aprenderam fazendo. Um ponto importante observado sobre a capacidade de resolução de problemas adquirida pelos estudantes refere-se ao fato de que eles estabeleceram que queriam projetar um sistema em que apenas uma linguagem de programação fosse utilizada, e isso foi obtido com linguagem de programação JavaScript. Esses estudantes certamente enfrentarão futuros desafios de forma mais embasada.

AGRADECIMENTOS

Ao Instituto Federal de Educação, Ciência e Tecnologia de Mato Grosso – Campus Cuiabá “Octayde Jorge da Silva” pela oportunidade de ingresso neste projeto de pesquisa e extensão, e pelo espaço cedido para a pesquisa. À Fundação de Amparo à Pesquisa do Estado de Mato Grosso (FAPEMAT) pelo apoio financeiro dado, o qual permitiu adquirir todos os materiais utilizados neste projeto.

REFERÊNCIAS

CROTTI et al.RaspberryPi e Experimentação Remota. International Conference on Interactive Computer aided Blended Learning, Florença, Itália. p. 143-145. 2015.

DAKHANE, A. R. & MANISH, P. T. Stereo Vision for Autonomous Vehicle Routing Using Raspberry Pi. International Journal of Emerging Technology and Advanced Engineering”. Vol. 5. 2015.

(11)

FERDOUSH, S. & LI, X. Wireless Sensor Network System Design using Raspberry Pi and Arduino for Environmental Monitoring Applications.: 9th International Conference of Future Networks and

Communication. 2014.

GANESH, U. M. & KHAN, R. A. Raspberry Pi Home Automation based on Internet of Things (IoT). In: International Journal of Advanced Research in Computer and Communication Engineering. Vol. 4. 2015.

HTML5 UP!. Responsive HTML5 and CSS3 Templates. Disponível em: <http://html5up.net>. Acesso em 29 mar. 2017.

JQUERY FOUNDATION (2017). jQuery.ajax(). Disponível em: <https://api.jquery.com/jQuery.ajax/>. Acesso em 29 mar. 2017.

LEMES, João. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ, Curitiba. Monitoramento de Redes IPv6 com Zabbix e Raspberry Pi, 201364p. Monografia.

MAKSIMOVIĆ et al. Raspberry Pi as Internet of Things hardware: Performances and Constraints”, International Conference on Electrical, Electronic and Computing Engineering, 1, 2014.

MICROCHIP. 2.7V 8-Channel 10-Bit A/D Converters with SPI™ Serial Interface.Disponível em: <http://ww1.microchip.com/downloads/en/DeviceDoc/21295C.pdf>. Acesso em: 29 mar. 2017. MCCUNE, R.. UNIVERSITY OF NOTRE DAME., 2013. Monografia.

NETCRAFT. January 2017 Web Server Survey.

Disponível em: <https://news.netcraft.com/archives/2017/01/12/january-2017-web-server-survey>. Acesso em: 08 mar. 2017.

NODE.JS FOUNDATION. Node.js. Disponível em: <https://nodejs.org/en/>. Acesso em: 08 mar. 2017.

______. Express.js. Disponível em: <http://expressjs.com/>. Acesso em: 08 mar. 2017. ______. cors. Disponível em: <https://github.com/expressjs/cors>. Acesso em: 08 mar. 2017. ______. “Node.js Package Manager”. Disponível em: <http://npmjs.com>. Acesso em: 08 mar. 2017.

(12)

NODE-RPIO. “Raspberry Pi GPIO Library for Node.js”.

Disponível em: <https://github.com/jperkin/node-rpio>. Acesso em: 08 mar. 2017.

ORTEGA et al. Remote Web-based Control Laboratory for Mobile Devices based on EJsJ, Raspberry Pi and Node.js. International Federation of Automatic Control. 2015.

RASPBERRY PI FOUNDATION (2017). Raspberry Pi 3 Model B. Disponível em: <https://www.raspberrypi.org/products/raspberry-pi-3-model-b/>. Acesso em: 29 mar. 2017.

RATANAWORABHAN, P.; LIVSHITS, B. & ZORN, B. JSMeter: Comparing the Behavior of JavaScript Benchhmarks with Real Web Applications. USENIX Conference of Web Application Development. 2016.

RIBEIRO JR., F. Programação Orientada a Eventos no lado do servidor utilizando Node.js. IFactory Solutions. 2012.

RECK, R. M. & SREENIVAS, R. S. Developing an Affordable and Portable Control Systems Laboratory Kit with a Raspberry Pi. Electronics 2016, 5a Edição. Universidad Complutense de Madrid, Madrid, Spain. 2016.

SILVEIRA, L.; RISSETTI, G & CHARÃO, A. Medindo o Desempenho de Código JavaScript: Experimentos com Diferentes Algoritmos e Interpretadores. Anais da 17ª Escola Regional de Alto Desempenho do Estado do Rio Grande do Sul. Sociedade Brasileira de Computação – SBC. 2016. SOFTWARE IN THE PUBLIC INTEREST. Advanced Packaging Tool. Disponível em: <https://packages.debian.org/pt-br/wheezy/apt>. Acesso em: 08 mar. 2017.

SRILEKHA, K. & TEJASWI. Smart Drip Irrigation System using Raspberry Pi and Arduino. International Journal of Scientific Engineering and Technology Research. Vol 5. 2016.

SURESH et al. Raspberry Pi Based Liquid Flow Monitoring and Control. International Journal of Research in Engineering and Technology. Vol. 3. 2014.

TIWARI, D. & SOLIHON, Y. Architectural Characterization of Client-side JavaScript Workloads & Analysis of Software Optimizations”. Purdue University. 2015.

(13)

VUJOVIĆ, V. & MAKSIMOVIĆ, M. Raspberry Pi as a Wireless Sensor Node: Performances and Constraints, International convention on information and communication technology, electronics and microelectronics, 37, 2014. P. 1247-1252.

W3TECHS. Usage of Web Servers for Websites. Disponível em: <https://w3techs.com/technologies/overview/web_server/all>. Acesso em: 15 mai. 17.

ZHAO, C. W.; JEGATHEESAN, J. & LOON, S. C. Exploring IOT Application Using Raspberry Pi”. In: International Journal of Computer Networks and Applications, Vol. 2. 2015.

Imagem

Figura 1 – Modelo de requisição HTTP
Figura 2 - Modelo da Placa de Prototipagem utilizada.
Figura 5 - Função que envia comandos para escrita nos sensores de Saída  Figura 4 - Função que envia comandos para leitura dos sensores de Entrada
Figura 6 – Funções de Escrita e Leitura Digitais no servidor Node.js

Referências

Documentos relacionados

O jogador explora os elementos de estratégia como: qual predador comprar para combater uma dada praga, ou, que planta possui mais resistência as pragas ou mais lucro

Conjunto de capas para pedais, spoiler dianteiro, embaladeiras laterais, spoiler traseiro, spoiler para tejadilho, friso cromado para a tampa da

Ele lembra que o próprio Davi também fez coisa proibida, pois tirou os pães sagrados do templo e os deu de comer aos soldados que estavam com fome (1 Sm 21,2-7). Durante mais

Desenvolvimento da carpa capim (Ctenopharyngodon idella) alimentadas com rações completas peletizadas a base de papuã (Brachiaria plantaginea) e vica (Vicia

01) (PONTO/LEANDRO SIGNORI/2015) O sistema de justiça criminal no Brasil é integrado pelos subsistemas policial, de justiça criminal e de execução penal. 02)

Na primeira quinzena este padrão é mais significativo e atua mais ao norte, devido a maior quantidade de sistemas frontais oceânicos e a atuação da ZCAS mais ao norte. Já na

Correlacionados, resultaram na delimitação das seguintes Unidades Geoambientais: Colinas altas, Colinas altas dissecadas, Colinas baixas, Colinas baixas dissecadas,

No final da Segunda Onda, há o desaparecimento progressivo da fronteira entre produtor e consumidor e, na Terceira Onda, a crescente significação do prossumidor - termo que