Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Faça um detector de incêndio em minutos com Samsung SAMIIO, Arduino UNO e Raspberry Pi


Vamos construir um dispositivo IoT que envia dados do sensor de chama ao SAMI usando WebSockets do SAMI. O dispositivo IoT consiste em um sensor de prateleira, Arduino UNO e Raspberry Pi.

Nesta implementação, um Manifesto Simples é usado para criar um novo tipo de dispositivo rapidamente. Em seguida, você pode conectar facilmente o dispositivo IoT ao SAMI e começar a enviar dados do sensor do dispositivo ao SAMI.

Pré-requisitos

”’ Para este tutorial, você deve estar familiarizado com o APIs SAMI básicas . ”’

Arquitetura


O diagrama roxo abaixo mostra a arquitetura de alto nível:

Usamos os seguintes componentes de hardware:

Vamos escrever o seguinte software:

Baixe o software agora.

”’ Se você não tiver um Raspberry Pi, ainda pode trabalhar neste tutorial. Conecte seu Arduino UNO ao computador que tem conexão com a Internet e execute o script Node.js no computador em vez do Raspberry Pi. ”’

Etapa 1:Criar e conectar um novo tipo de dispositivo


Vá para o Portal do Desenvolvedor para criar um tipo de dispositivo privado.
  1. Primeiro, faça login no Portal do desenvolvedor SAMI. Se você não tem uma conta Samsung, pode criar uma nesta etapa.
  2. Clique em “+ Novo tipo de dispositivo”.
  3. Nomeie o tipo de dispositivo “Sensor de chama” e dê a ele um nome exclusivo, como “com.example.iot.flame”.
  4. Clique em “Criar tipo de dispositivo”. Isso cria o tipo de dispositivo e leva você para a página de tipos de dispositivo.

Agora vamos criar um manifesto para nosso tipo de dispositivo "Sensor de chama".
  1. Clique em “Sensor de chama” na coluna à esquerda.
  2. Clique em “Manifesto” e depois em “+ Nova Versão”.
  3. Digite “onFire” como o nome do campo e “booleano” para o tipo de dados.
  4. Clique em “Salvar” e depois em “Próximo:Ações”.
  5. Ignore as ações para este tutorial e clique em “Salvar novo manifesto”.

”'Um Manifesto Simples é aprovado automaticamente. Não publique este tipo de dispositivo, pois é apenas para fins de tutorial. ”’

Por fim, vá para o Portal do Usuário para conectar um novo dispositivo Sensor de Chama:
  1. Faça login no Portal do usuário SAMI.
  2. No painel, clique para conectar um novo dispositivo.
  3. Escolha o tipo de dispositivo “Sensor de chama” que você acabou de criar.
  4. Clique em “Conectar dispositivo…”. Você é levado de volta ao painel.
  5. Clique no ícone Configurações do dispositivo que acabou de adicionar. No pop-up, clique em “GERAR TOKEN DE DISPOSITIVO…”.
  6. Copie o ID do dispositivo e o token do dispositivo nesta tela. Você os usará no código.

Etapa 2:Configurar o Arduino


Agora vamos conectar os sensores ao Arduino.

Os dois sensores são conectados como na imagem Frizting acima.

Em seguida, carregue o programa Sketch ( read_flame_sensor.ino ) para o Arduino UNO usando o IDE do Arduino. Este código lê um valor digital do sensor de chama IR e, em seguida, o envia para a porta serial a cada 5 segundos (você pode alterar este parâmetro no código posteriormente, pois o SAMI tem limites de taxa para o número de mensagens por dia). Para as leituras digitais, “0” significa que um incêndio foi detectado e “1” significa nenhum incêndio.

Aqui está read_flame_sensor.ino . O código é direto.

// Atraso entre leituras
const int delayBetweenReads =5000; // 5s

// Para detector de chamas senso const int flameDigitalPinIn =2;

void setup () {

// inicializa a comunicação serial a 9600 baud:

Serial.begin (9600);

pinMode (flameDigitalPinIn, INPUT);

}

void loop () {

// ALTO (1) significa que nenhum incêndio foi detectado

// LOW (0) significa que o fogo foi detectado

int flameDigitalReading =digitalRead (flameDigitalPinIn); Serial.println (String (flameDigitalReading));

atraso (delayBetweenReads);

}

Etapa 3:configurar o Raspberry Pi


Conecte seu Raspberry Pi a um monitor, mouse e teclado. Verifique se uma conexão Ethernet ou WiFi está funcionando e se o sistema operacional está atualizado:
  1. $ sudo apt-get update
  2. $ sudo apt-get upgrade

Se ainda não estiver instalado, instale o Node.js para ARM e adicione os pacotes porta serial e ws via npm:
  1. $ npm install serialport
  2. $ npm install ws

Agora conecte a porta serial do Arduino ao USB no Raspberry Pi.

Por fim, baixe o código Node.js ( send_data_to_sami.js ) para o Raspberry Pi. Substitua os espaços reservados no código pelo token do dispositivo e ID do dispositivo que você coletou do Portal do usuário.

O código Node.js também é fornecido abaixo. Ele estabelece uma conexão WebSocket bidirecional entre o Raspberry Pi e o SAMI. Depois que a conexão WebSocket for aberta, registrar () método registra o dispositivo com o WebSocket. Cada vez, o código lê um ponto de dados da porta serial e, a seguir, o envolve em uma mensagem e a envia ao SAMI via WebSocket.

var webSocketUrl =“wss://api.samsungsami.io/v1.1/websocket? ack =true”;
var device_id =“”; var device_token =“”;

var isWebSocketReady =false; var ws =nulo;

var serialport =require (“serialport”)

var SerialPort =serialport.SerialPort;

var sp =new SerialPort (“/ dev / ttyACM0”, {

taxa de transmissão:9600,

analisador:serialport.parsers.readline (“\ n”)

});

var WebSocket =require ('ws');

/ **

* Obtém a hora atual em milis

* /

function getTimeMillis () {

return parseInt (Date.now (). toString ());

}



Para mais detalhes:Faça um detector de incêndio em minutos com Samsung SAMIIO, Arduino UNO e Raspberry Pi

Processo de manufatura

  1. Fácil detector de choro de bebê faça você mesmo com Raspberry Pi
  2. Aeroponia com Raspberry Pi e sensor de umidade
  3. Construindo robôs com Raspberry Pi e Python
  4. Construa seu robô de streaming de vídeo controlado pela Internet com Arduino e Raspberry Pi
  5. Relógio Arduino com horas de oração islâmica
  6. Controle de um robô Roomba com Arduino e dispositivo Android
  7. Exibindo uma imagem em uma tela LCD TFT com o Arduino UNO!
  8. Controle do Servo Motor com Arduino e MPU6050
  9. u-blox LEA-6H 02 Módulo GPS com Arduino e Python
  10. Reconhecimento de fala e síntese com Arduino