无需编程,通过边缘计算网关把工业领域常见的Modbus协议的硬件设备接入IoT云平台。

前提条件

根据本产品的环境要求,选择运行边缘计算产品的硬件载体,例如准备一个硬件网关或者PC机,然后安装本产品。

  • 环境要求

    三个版本的产品对环境的要求如下。

    产品版本 硬件CPU架构 硬件CPU主频 硬件RAM 硬件磁盘
    专业版 x86-64 ≥2 GHZ ≥2 GB ≥2 GB
    标准版
    • x86-64
    • ARMv8-64
    • ARMv7 VFPv3硬浮点型
    • ARMv7软浮点型
    ≥1 GHZ ≥128 MB ≥128 MB
    轻量版
    • x86-64
    • ARMv8-64
    • ARMv7 VFPv3硬浮点型
    • ARMv7软浮点型
    不限制 ≥1 MB ≥1 MB
  • 环境设置我们以在x86_64 Ubuntu 16.04机器上安装Link IoT Edge标准版产品为例,设置Link IoT Edge运行所依赖的环境。
    1. 在x86_64 Ubuntu 16.04机器的本地终端窗口或者SSH终端窗口执行以下命令,下载环境检查工具并运行。

      wget http://iotedge-web.oss-cn-shanghai.aliyuncs.com/public/testingTool/link-iot-edge_env-check.shsudo chmod +x./link-iot-edge_env-check.shsudo ./link-iot-edge_env-check.sh

      说明 link-iot-edge_env-check.sh脚本在Link IoT Edge支持的平台需要以root权限运行并需要以下Linux系统命令:printf、echo、cat、ls、expr、grep、test、uname、set、head、sort、cut、uniq、xargs、ifconfig。

    2. 按照运行环境检查工具的提示在您的机器上安装所有必需的依赖项,当检查工具成功运行完成后,返回如下图信息,表示Link IoT Edge能够在您的机器上成功运行。

背景信息

Modbus协议是一种较为通用的数据传输协议,覆盖大量的物联网设备场景,因其通信报文种类多,报文中数据解析方式更加灵活而广泛应用于当今工业电子设备。然而,不同的场景需要将报文转换类型和报文解析类型进行组合,因此对Modbus协议的通用性提出了非常高的要求。阿里云提供的一款面向边缘场景的云边一体的PaaS层软件服务:物联网边缘计算产品(Link IoT Edge),很好地解决了Modbus协议通用性问题。该产品以官方驱动(Modbus官方驱动)的方式提供了Modbus协议设备接入能力,该驱动目前支持8种标准功能码,同时支持多达11种数据解析方式,能够满足大多数物联网场景的使用。物联网边缘计算架构图如下。

使用物联网边缘计算,您可以将云端的能力通过适当剪裁和兼容性适配映射到边缘,将云端的服务下沉到边缘,解决边缘实时性、可靠性、运维经济性等方面的问题。在设备接入侧,Link IoT Edge提供了通信协议框架方便软硬件开发者便捷开发;在云端提供了Open API帮助SaaS开发者快速构建云端应用;同时也提供了一体化的运维工具,方便您在云端集中运维,降低运维成本,提升运维效率。设备接入本地边缘计算网关,网关通过Internet接入物联网平台。整体技术架构如下所示。

图 1. 整体技术架构图

阿里云物联网边缘计算产品的官方Modbus驱动示意图如下所示。网关通过本地连接方式(例如通过网络或串口)连接边缘设备,并通过边缘设备中的驱动能力,采集设备数据。

图 2. 官方Modbus驱动示意图

创建边缘计算网关

  1. 登录物联网平台控制台,左侧导航栏选择设备管理>产品,单击创建产品。
  2. 按照下图内容填写产品信息,然后单击完成。

  3. 左侧导航栏选择设备管理>设备,在页面右侧单击添加设备。为上一步创建的网关产品添加一个具体的网关设备。

    网关设备创建成功,可获取到设备证书信息,用于后续步骤中网关连接物联网平台的身份验证。

    至此,已完成了边缘计算网关的创建。

创建Modbus传感器

接下来要在物联网平台,为用于采集环境数据的Modbus协议六合一传感器设备,创建产品模型。

  1. 登录物联网平台控制台,左侧导航栏选择设备管理>产品,单击创建产品。
  2. 根据实际产品情况,填写如下图信息。

    其中,部分参数说明如下。

    参数 描述
    节点类型 选择设备
    是否入网关 选择是
    接入网关协议 选择Modbus

    创建成功后,可以在产品详情页面确认关键信息是否正确。

  3. 在产品详情页面功能定义页签,为产品添加物模型(添加自定义功能)。本文以添加温度属性为例,演示物模型属性创建过程。
    1. 根据下图内容,添加属性,填写功能名称、标识符。

    2. 查看六合一传感器的说明书,找到温度相关的文档。示例如下:

      通过阅读文档,可以了解到温度获值转换的方法。

    3. 单击功能定义下面的扩展描述,填写操作类型、寄存器地址、数据类型,以及缩放因子,然后单击保存,参考下图。

      至此,完成了温度属性的定义。同样方式,为产品添加湿度、气压、二氧化碳、PM2.5、光照强度属性定义。

  4. 左侧导航栏选择设备管理>设备,在页面右侧单击添加设备,基于产品注册具体设备。

  5. 设备注册完成后,可获取到传感器设备的证书信息。

配置和部署边缘实例

准备好边缘计算网关和Modbus采集器后,接下来就需要把二者关联起来。本文以一个边缘计算实例的方式来管理这个关系。

  1. 启动网关设备。

    1. 左侧导航栏选择边缘计算>边缘实例,单击页面右侧的新增实例。

      其中,边缘实例需要关联已创建的边缘计算网关产品和设备,如下图所示。

    2. 边缘实例创建完成后,需要安装边缘计算软件到网关中。单击软件安装,根据设备实际情况填写信息。

      填好信息后,单击生成安装命令。

    3. 在软件安装话框中单击复制命令。

      安装命令参考:

      sudo curl -O http://link-iot-edge-packet.oss-cn-
      shanghai.aliyuncs.com/config/link-iot-edge-standard.sh && sudo chmod +x link-
      iot-edge-standard.sh &&./link-iot-edge-standard.sh --install x86-64 v2.1.0
      &&./link-iot-edge-standard.sh --config a1*****E6E iot_edge_Gateway
      d8yERLxi6faB5Kxbk8OyTJhoMK*****&& ./link-iot-edge-standard.sh --start
    4. 登录到网关设备,执行安装命令。

      该命令实现一键下载、配置并启动Link IoT Edge。命令执行完成后,会在当前目录中下载用于启动Link IoTEdge的link-iot-edge-standard.sh脚本。

    5. 执行如下命令查看Link IoT Edge核心服务的运行状态。
      
      sudo./link-iot-edge-standard.sh --status

      若系统显示如下信息,表示Link IoT Edge核心服务启动成功。

      说明 您也可以在物联网控制台,选择边缘计算>边缘实例,在已创建好的边缘实例右侧单击查看进入实例详情页面,选择网关,查看网关状态。

  2. 安装Modbus设备驱动。

    边缘网关设备启动后,把Modbus数据解析为物模型JSON的驱动程序安装到Modbus设备。

    1. 进入边缘计算实例详情页面的设备驱动配置页签,单击“+”图标,选择对应版本的官方Modbus驱动。如下图。

    2. 选中已添加的Modbus驱动,单击分配子设备,关联Modbus驱动和Modbus设备。

    3. 完成驱动和设备的关联后,单击设备名称右侧的设备配置,配置关联通道。参考下图操作。

    4. 在编辑通道页面,根据设备说明书填写通道配置参数,如下图。

    5. 通道建立后,还需要配置传感器地址码(从站号),以及数据采集频率。

    6. 在实例详情页面右上角单击部署。这样就把设备驱动和配置参数从云端下发到边缘网关的设备上了。

      边缘计算网关就会按照已设定的频率从指定通道读取数据,并按照属性模型把Modbus数据转化成物模型JSON数据,上报到物联网平台。参考如下。

      当部署状态显示为部署成功,表示部署实例完成。您可以单击查看日志,查看部署详情。

    7. 设备运行后,进入Modbus设备的设备详情页面,查看运行状态,可以看到传感器采集到的环境数据。

名词解释

  • 驱动

    Link IoT Edge中的设备接入模块称为驱动(Driver)或设备接入驱动。所有连接到Link IoT Edge的设备都需要通过驱动实现接入。

  • 边缘实例

    边缘实例通过网关关联您的设备,将设备接入到物联网平台进行管理控制,边缘实例同时也管理您设备使用的其他资源,例如驱动,函数计算,场景联动规则等。

  • 部署

    在云端为设备编排各种功能和配置,然后通过物联网边缘计算部署功能,将云端的能力和配置下发到边缘设备,实现设备功能和配置的自动运行。

  • 监控信息

    对边缘设备的状态、边缘能力运行状态进行监控,通过图表的方式展示在云端,随时随地监控边缘状态。

  • 日志服务

    边缘设备上运行的各种能力均可以通过边缘API写入日志,同时支持该日志自动同步到云端,方便您随时随地查看日志状态。

  • 消息路由

    对边缘设备上数据流转做可视化的管理。通过路由规则动态规划消息的传输路径,使消息按照过滤条件,从消息源路由到目标节点的功能,称为消息路由。

  • 产品规格

    根据边缘场景不同,划分了三种不同的能力集合,称之为不同的产品规格,包括轻量版、标准版和专业版。

Modbus设备通过边缘网关接入阿里云IoT平台相关推荐

  1. 4G Modbus Json边缘网关接入阿里云IoT平台

    LTE-669P 4G边缘网关系列 阿里云平台连接教程 今天介绍物联设备 LTE-669P 4G边缘网关如何接入阿里云平台系列. LTE-669P是一款工业级4G JSON无线边缘解析网关,支持RS4 ...

  2. 阿里IOT云平台(二)---10分钟物联网设备接入阿里云IoT平台

    本文转载自:https://www.geek-workshop.com/thread-37883-1-1.html.基于VS Code和Node.js 我替换了原文中的温度.湿度属性图(主要是修正了标 ...

  3. 10分钟虚拟设备接入阿里云IoT平台实战

    10分钟虚拟设备接入阿里云IoT平台实战 1. 准备工作 1.1 注册阿里云账号 使用个人淘宝账号或手机号,开通阿里云账号,并通过实名认证(可以用支付宝认证) 1.2 免费开通IoT物联网套件 产品官 ...

  4. 踏入物联网第一篇——STM32F103开发板接入阿里云IOT平台

    刚开始学习物联网,在研究STM32的路上记录下心得!!! 最近入手了一块STM32F103的板子,顺手就研究了下 如何通过MQTT协议连接阿里云物联网平台. 开发板是STM32F103C8T6  芯片 ...

  5. C# 基于开源MQTT自主接入阿里云IoT平台

    1. 准备工作 1.1 注册阿里云账号 使用淘宝账号或手机号,开通阿里云账号,并通过实名认证(可以用支付宝认证) 1.2 免费开通IoT物联网套件 产品官网 https://www.aliyun.co ...

  6. Linux设备如何接入阿里云IoT平台

    本文以在Ubuntu x86_64系统上编译设备端C语言SDK为例,介绍设备上云的配置和开发过程. 前提条件 在进行本示例配置前,您需要完成以下准备工作: 注册阿里云账号,并完成实名认证. 开通物联网 ...

  7. 10分钟物联网设备接入阿里云IoT平台

    前言 最近尝试了一下阿里云IoT物联网平台,还是蛮强大的.在此记录一下学习过程. 本教程不需要任何外围硬件,一台电脑和一根能上网的网线即可.算是一篇Hello World了.先上效果图 第一章 准备工 ...

  8. 电信NB-IoT设备对接阿里云IoT平台实战——实践类

    众所周知,中国电信的NB-IoT设备必须直连电信CTWing平台,无法直接在阿里云IoT,AWS IoT,腾讯云IoT 管理中国电信的NB-IoT设备. 今天我们就给大家介绍如何通过阿里云IoT企业物 ...

  9. 【ODYSSEY-STM32MP157C】上报数据到阿里云 IoT 平台

    我们在上一节<[ODYSSEY-STM32MP157C]驱动 UART 读取传感器数据> 已经成功读取到 PMS5003ST 传感器的数据,本节我们将学习如何将设备接入阿里云 IoT 平台 ...

最新文章

  1. React官方文档学习笔记(二)
  2. SVM-支持向量机原理详解与实践之三
  3. 详解操作系统中虚拟内存与物理内存的关系
  4. iOS 多参数 ...NS_REQUIRES_NIL_TERMINATION 的写法
  5. html 轮播图的鼠标事件,这是图片轮播的代码 html+css,怎么加上鼠标悬停移出继续功能?...
  6. 笔记 | 《机器学习》手推笔记聚类与性能度量
  7. BootStrap-
  8. java中的URLConnection
  9. 各种语音编码方法,所需要的带宽
  10. 直播程序源码更简单的搭建方法
  11. 怎样安装计算机病毒,台式机电脑中病毒如何重装系统图文教程
  12. 魔方cfop公式软件_【番外篇】八大魔方快速还原法图解介绍汇总大全!
  13. 两种方法去除页眉页脚:基于OCR识别后的文本/基于图片切割
  14. 不用action提交表单——JS实现
  15. Matlab神经网络语音增强,基于BP神经网络的语音增强研究
  16. 阿里云图标使用 (symbol 引用方式)
  17. mysql 性能分析之 profiling
  18. c223 :production versions 新增、修改、删除函数: CM_FV_PROD_VERS_DB_UPDATE
  19. Java知识【老师管理系统】
  20. 37个重要交换机术语【转载自微信公众号第一监控】

热门文章

  1. 微信公众号配置token失败
  2. 无法解析的外部符号 _transfer_8to16copy_3dne
  3. 微信公众号开发之获取用户地理位置
  4. StarRocks 社区一周年:极速统一,感谢遇见!
  5. 2019年十大让人欲罢不能的消费潮流 | 财见年终观察
  6. 满分考生进入清华学造芯片,集成电路学院院长亲自带,网友:为中华之崛起而读书...
  7. WRP Ultimate 3D Endless Runner Kit - 狂徒末路跑酷角色替换教程
  8. android自定义打电话界面,两种Android打电话实现方法
  9. 大数据基础数据之中国法定节假日API
  10. 第一次搭建React项目以及错误:getaddrinfo ENOTFOUND registry.npmjs.org解决办法