Módulo 4G DTU gateway + sensor de acesso plataforma OneNET (nova versão do MQTT) solução de agricultura inteligente

Gateway DTU do módulo 4G + upload do sensor para a plataforma OneNET (nova versão do MQTT) solução de agricultura inteligente

Com base no artigo anterior "Tutorial de conexão da plataforma OneNET da série ZL-LTE do módulo 4G DTU (nova versão do MQTT)", hoje irei apresentar como o dispositivo DEVELOPLINK DTU ZL-LTE-300 pode realizar acesso de vários sensores a OneNET por meio de MQTTS e funções de gateway MODBUS Plataforma de soluções agrícolas inteligentes. Em seguida, atualize os tutoriais de acesso do Alibaba Cloud, Tencent Cloud e Baidu Cloud.

Os equipamentos utilizados neste artigo são: DTU ZL-LTE-300, sensor de temperatura, umidade e luz, sensor de dióxido de carbono, sensor de amônia

————————————————————————————————————————
Interessado em tecnologia IoT, junte-se a nós Grupo, bem-vindo todos os tipos de trocas técnicas, grupo QQ: 830407941 Se você
estiver interessado em nossos produtos, verifique Taobao, projeto personalizado gratuito
DEVELOPLINK ____DTU
DEVELOPLINK ____ Vários sensores
——————————————————— ———————————————————————

1. Preparação de equipamentos

1. Preparação de hardware

DTU ZL-LTE-300, sensor três em um de temperatura, umidade e luz, sensor de dióxido de carbono, sensor de amônia
Insira a descrição da imagem aqui
Insira a descrição da imagem aqui

2. Preparação de software

Computador host DevelopLink_DTU1.0.9
Insira a descrição da imagem aqui

Terminal de configuração da web Developlink
Insira a descrição da imagem aqui
ZLIOT_Sensor sensor host computer
Insira a descrição da imagem aqui

Dois, gateway Modbus

No último tutorial, usamos com sucesso a função MQTTS para acessar a plataforma OneNET e testamos o envio e recebimento de dados. A seguir usaremos a função de gateway Modbus para transmitir dados do sensor para a plataforma OneNET e simplesmente fazer a interface de exibição.

1. Depure o sensor

1.1 O que deve ser prestado atenção é a porta serial, taxa de transmissão, endereço do sensor (ID)

Insira a descrição da imagem aqui
Aqui, definimos a ID do sensor três em um de temperatura, umidade e luz como 1, a ID do sensor de dióxido de carbono como 2 e a ID do sensor de amônia como 3. A taxa de transmissão é definida uniformemente para 9600.

2 MODBUS de configuração do computador host DevelopLink_DTU

Insira a descrição da imagem aqui

Tome como exemplo o sensor três em um de temperatura, umidade e luz. Seu ID é definido como 1 , então aqui o parâmetro DTU também é definido como 1. O endereço de registro do parâmetro de monitoramento precisa ver o manual do sensor correspondente. Aqui podemos ver que o endereço do registro de temperatura é 8 , umidade 9 e iluminação 10 .

Os dados de temperatura ocupam um registro, a umidade ocupa um registro e a luz ocupa dois registros (o projeto pode considerar a luz 0-20W Lux ocupando dois bits), então o comprimento total dos registros que precisam ser lidos é 4 . Selecione Curto para o tipo de dados de temperatura e umidade correspondente e Longo para luz.

(Suporta vários formatos de registro, incluindo Short, Long, Float e ordem de byte, consistente com o software Modbus Slave)
Insira a descrição da imagem aqui
Defina os parâmetros Modbus do sensor de CO2 e NH3 por analogia, conforme mostrado na figura
Insira a descrição da imagem aqui
Defina os parâmetros da porta serial
Insira a descrição da imagem aqui

Grave a configuração, o DTU reiniciará automaticamente, a configuração do Modbus está concluída.
Insira a descrição da imagem aqui

3 Converter formato de dados

Por padrão, os dados convertidos do DTU são Json, que precisam ser convertidos no formato OneJson para serem reconhecidos pela plataforma. Em seguida, no script remoto, usamos a função de gancho do Modbus para construir nosso pacote de dados personalizado.

Para criar um novo script, insira o seguinte código:

require "log"
require "default"
require "modbus"

-- 这一句非常重要
module("remotedbg", package.seeall)


-- 下行数据的钩子
local function msgSubHook(data, uid)
    log.info("modbus sub1",  data.temp)
    -- 下行数据我们把“temp” 改变一下
    if data.temp then  
        data.temp = data.temp / 10
        log.info("modbus sub2", data.temp)
        return data
    else
        return nil
    end
end


-- 上行消息的钩子,在这里构造onejson
-- cid: 网络通道
-- msg: 数据内容,table
local function msgPubHook(msg)
    -- 包装上行数据
     local buff = {
    
    id= 123, dp= {
    
    }}
    for key, value in pairs(msg) do
        if key == "temp" or key == "humi" then
            buff.dp[key] = {
    
    {
    
    v=value * 0.1}}
        else
            buff.dp[key] = {
    
    {
    
    v=value}}
        end
    end
    
    -- 转json上传
    buff = json.encode(buff)
    log.info("modbus pub msg", buff)
    return buff
end

-- 设置钩子
modbus.setPubHook(msgPubHook)
modbus.setSubHook(msgSubHook)

Faça upload do script no lado da configuração da web

Insira a descrição da imagem aqui

3. Visualização de dados e interface visual simples

1. Visualização de dados

Insira a descrição da imagem aqui

Detalhes de dados de temperatura
Insira a descrição da imagem aqui

2. Edição de interface visual simples

Clique em gerenciamento de aplicativos, adicione o aplicativo
Insira a descrição da imagem aqui

Selecione os componentes do projeto, o equipamento correspondente e o fluxo de dados Até
Insira a descrição da imagem aqui
agora: O sensor foi conectado com sucesso à plataforma onenet e uma interface visual simples foi construída

& Há também uma interface de exibição de tela grande com uma versão paga na parte de trás (com certeza, o charme do nome moeda, que tem muitas funções e é linda)
Insira a descrição da imagem aqui
—————————————— ------ ---------------------
por favor, juntar o nosso grupo troca se você estiver interessado em Internet da tecnologia coisas, bem-vindos todos os tipos de intercâmbios técnicos,
QQ group: 830407941 Se você
está interessado em nossos produtos, verifique Taobao, itens personalizados grátis:
DEVELOPLINK
Air724 DTU

Acho que você gosta

Origin blog.csdn.net/sym_robot/article/details/110240615
Recomendado
Clasificación