Skip to content

Emulador de Arduino

Lucas de Carvalho edited this page Jul 6, 2017 · 2 revisions

Descrição

Um emulador do Arduino foi criado para executar testes com o Servidor. Ele foi programado em Python 3, e envia requisições HTTP POST para um servidor em um endereço IP configurável. As mensagens são enviadas periodicamente, e o período usado é configurável.

Os IDs das duas máquinas associadas a ele são 5 e 6.

As medidas dos sensores são emuladas com variáveis aleatórias ou valores fixos.

Luz

Assume sempre o valor 0 na configuração atual (luzes do laboratório apagadas) (deve-se adicionar futuramente um parâmetro para configurar a luz na execução)

Umidade do Ar

Assume uma distribuição gaussiana com média de 57.5% e desvio padrão de 5%.

Sensação Térmica

Assume uma distribuição gaussiana com média de 23 ºC e desvio padrão de 1 ºC.

Temperaturas dos Equipamentos

O emulador envia medidas de dois equipamentos associados a ele. Suas temperaturas assumem uma distribuição gaussiana.

Para o primeiro equipamento, a média é 30 ºC e o desvio padrão é 1 ºC. Para o segundo equipamento, a média é 20 ºC e o desvio padrão é 1 ºC.

Requisitos

  • Linguagem: Python 3
  • Bibliotecas externas: requests

Instruções de Utilização

Como o emulador necessita de uma biblioteca externa, precisamos instalá-la manualmente. Para isso, podemos usar o pip3, versão em Python 3 do gerenciador de pacotes Pip.

Execute o comando:

sudo pip3 install requests

O emulador é aberto por linha de comando.

Você pode encontrá-lo na pasta emulador_arduino, dentro da pasta raiz do projeto.

Dentro dessa pasta, execute, com o interpretador do Python 3:

python3 pseudo_arduino.py [ip-do-servidor/rota] [periodo de envio em segundos] [modo_operacao]

O modo de operação especifica se a sensação térmica do ambiente será alta (além dos valores padrão para a zona de conforto) ou não. Use "errors" em caso afirmativo, para enviar uma sensação térmica constante de 45 graus; ou qualquer outra palavra para enviar uma sensação térmica aleatória.

Exemplo de execução:

python3 pseudo_arduino.py 127.0.0.1/arduino 60 standard

(lembrar que qualquer palavra no terceiro argumento do comando que não seja "errors" causa o funcionamento normal).

Clone this wiki locally