- Impressão
Como fazer: Usar o Serial com o Node-RED
Como fazer: Usar serial com o Node-RED
Guia sobre como se conectar a um dispositivo serial, configurar uma porta serial no node-RED e uma introdução aos fluxos da biblioteca node-RED
Este artigo descreve como ler e gravar dados seriais de dispositivos Tulip Edge usando o Node-RED. Ele abordará como se conectar às diferentes portas seriais em cada tipo de dispositivo Edge e dois fluxos de biblioteca do Tulip Node-RED que usam comunicação serial.
O que você precisará é de:
Um Edge IO ou Edge MC registrado na sua conta Tulip
Um dispositivo que se comunicará via serial com seu Edge device
1. Configuração de hardware: Conectar ao dispositivo serial
Primeiro, certifique-se de conectar fisicamente seu periférico serial ao dispositivo Edge.
Opcional: se quiser testar primeiro o fluxo do Node-RED comunicando-se com um dispositivo host (ou seja, seu laptop, outro dispositivo Tulip Edge etc.), você pode fazer isso usando RS-232 com um modem nulo ou cabos USB-UART com linhas TX/RX cruzadas ( não conecte a alimentação).
Exemplos de programas que você pode usar no dispositivo host para se comunicar com o dispositivo Edge são
- screen (MacOS): Um utilitário de linha de comando para comunicação serial.
- PuTTY (Windows/Linux): Um emulador de terminal gratuito que pode atuar como um console serial.
- Node-RED: Crie um fluxo complementar do Node-RED em uma instância do Node-RED que esteja sendo executada no dispositivo host.
2. Configuração do Node-RED: Configurar a porta serial
Usaremos os nós do pacote node-red-contrib-serialport
para comunicações seriais no Node-RED. Se estiver em um dispositivo Tulip Edge OS44+, esse pacote estará pré-instalado. Caso contrário, você poderá adicionar os nós à paleta usando o editor do Node-RED, conforme descrito aqui.
Os nós seriais aparecerão na guia de rede
:
Para ler entradas seriais, arraste e solte o nó de entrada serial
. Para gravar saídas seriais, arraste e solte o nó serial out
. Em qualquer um dos nós, para configurar a porta serial, clique no botão de edição da propriedade "Porta serial":
Em seguida, você preencherá as seguintes propriedades:
- Porta serial: o caminho do dispositivo da porta serial (por exemplo: /dev/ttyS0). Isso depende do dispositivo do Edge e da porta serial física à qual você está se conectando (consulte os artigos do Edge IO ou do Edge MC). Os caminhos disponíveis podem ser visualizados clicando no botão de pesquisa, conforme mostrado abaixo.
Observação: no momento, não há suporte para conexão a quente de dispositivos USB no Node-RED. Isso significa que o dispositivo USB deve estar conectado quando o dispositivo for inicializado para que o Node-RED tenha acesso a ele.
- Configurações: A taxa de baud e outras configurações devem corresponder à taxa de baud do dispositivo serial com o qual você está se comunicando.
- Entrada: Escolha quando o nó emitirá uma mensagem. As opções incluem aguardar um caractere dividido (como quebra de linha, vírgula ou espaço), aguardar a cada
n
caracteres se a saída for de comprimento fixo, ou você pode definir um tempo limite para obter uma saída a cadan
segundos.
- Saída: Adicione caracteres à mensagem de saída (por exemplo, adicione novamente a quebra de linha).
Você poderá ver que está conectado a uma porta serial válida se, após a implantação, o status do nó for "conectado":
3. Fluxos da biblioteca do Node-RED: Comunicação com a Tulip
O Tulip fornece vários fluxos de biblioteca para ler entradas seriais e gravar saídas seriais em dispositivos Tulip Edge usando o Node-RED. Consulte Importar fluxos do Tulip Node-RED para obter informações sobre como importar um fluxo de biblioteca do Tulip.
Para gravar uma saída serial em um dispositivo Tulip Edge a partir de um aplicativo Tulip, você pode usar o fluxo serial_http_endpoint
e configurar um conector HTTP em sua instância do Tulip em execução no host do conector do dispositivo Edge. Você precisará adicionar uma função de conector a esse conector para enviar solicitações POST ao endpoint HTTP /serial
e chamar essa função de conector a partir do aplicativo. Saiba mais sobre como gravar valores no Node-RED usando o host do conector em Comunicar-se com máquinas usando o host do conector e o Node-RED do Edge MC.
Para ler a entrada serial em um dispositivo Tulip Edge e enviar para o Tulip, você pode usar a API Tables (para gravar os dados em uma tabela) ou a API Machine (para gravar os dados em um atributo de máquina). O fluxo da biblioteca serial_to_tulip_table
é um exemplo de como gravar entradas seriais delimitadas por nova linha em uma tabela da Tulip. Você precisará configurar o nó serial e os dois nós das tabelas Tulip com as definições corretas para o seu caso de uso. Saiba mais sobre como usar o nó da API Tulip Tables em Usando o Node-RED com a API Tulip