使用区块链开发 IoT 资产跟踪应用  

通过使用区块链、IoT 设备以及 Node-RED,让 IoT 资产跟踪设备改进供应链

Description

本 Code Pattern 解决的是非常现实的易腐品(食品、药品、家畜等)安全交付问题,这些商品在装运期间对环境条件非常敏感。易腐品的每次装运都有阈值(冷藏要求、避免撞击或震动等)要求,以防止商品被污染或损坏。如果装运条件超出这些阈值,那么商品就会受损,可能危害健康。将那些经历极端条件(智能合约中规定的阈值)的装运详情(地点、内容和时间)记录下来,可以帮助开发人员核实商品交付成功与否。这样,成功交付后才会付款。使用区块链跟踪多个参与者之间的装运条件,可提供对这些流程的核实和信任。本 Code Pattern 提供了通过区块链进行 IoT 资产跟踪的解决方案范例。

概览

您可以利用本 Code Pattern 跟踪环境条件,比如食品安全供应链、冷藏医疗用品、园林植物装运的环境条件,或者任何易腐品(对温度、湿度、震动或时间敏感)装运的环境条件。如果货物需要在安全环境参数和安全时间范围内交付,使用 IoT 资产跟踪设备就显得极其重要,这种设备结合环境传感器,通过 GPS、三角测量或信标计算货物位置,然后通过蜂窝网络、5G 网络、Sub1GHz、SigFox 或 WiFi 网络报告货物位置。当农场、制造商、加工厂、卡车、港口、货船、配送中心、消费者零售商店等多个参与者参与货物的安全装运与付款时,超级账本区块链可以用于在装运交付期间记录不可篡改的交易。

  1. 在 Node-RED 控制面板仪表板中,选择 Asset Tracker 设备,然后打开地理位置报告,并调用 Particle.io。
  2. Particle.io 通过蜂窝网络调用 Asset Tracker 设备以将其激活。
  3. 地理位置数据定期(在 Node-RED 控制面板仪表板中设置间隔时间)传输到 Particle.io。
  4. Particle.io 调用 Google Geolocation Triangulation 服务,将手机信号塔标识和信号强度转换为地理位置的纬度/经度信息。
  5. Particle.io 将纬度/经度坐标传输回 Asset Tracker 设备。
  6. Asset Tracker 设备查询温度数据,然后查询震动数据。
  7. Asset Tracker 设备将所有收集到的传感器数据都发送到 Particle.io。
  8. Node-RED 侦听到达 Particle.io 的温度和震动数据。
  9. Node-RED 将温度和震动数据写入 Hyperledger Fabric 交易历史记录。
  10. Node-RED 仪表板查询区块链 Hyperledger Fabric 中的交易历史记录,并在地图上标明经度/纬度、时间和传感器数据。

Instructions

可以在自述文件中找到本模式的详细步骤。这些步骤将展示如何:
  1. 配置硬件:
    1. 配置 Particle Electron Asset Tracker 面板
    2. 设置 Particle Electron 工具链
    3. 设置 Watson IoT Asset Tracker 程序
  2. 实施 IBM 区块链技术
    1. 构建基础的 IBM 区块链超级账本网络
    2. 实现易腐品业务网络
  3. 创建 IoT 应用来直观呈现并分析 IoT 数据
    1. 在 IBM Cloud 中创建一个 IoT 初级应用
    2. 打开 Node-RED 并安装其他节点
    3. 导入预先构建的流程
    4. 初始化该流程
    5. 控制并接收来自 Particle.io 的事件
    6. 将事件写入易腐品业务网络区块链中
    7. 加载区块链交易历史记录
    8. 构建资产跟踪仪表板

相关博客

相关链接

将一个样本应用程序部署到 IBM Blockchain Platform

在本教程中,将了解如何在 IBM Blockchain Platform (Enterprise Membership Plan) 上创建一个网络,在该网络的一个通道中安装智能合约(链代码),并将一个样本应用程序部署到该网络。然后将了解如何填充、查询并更新共享账本。

区块链技术基础:分布式账本简介

每个人都认为区块链技术将彻底改变组织和机构处理业务的方式。让我们来了解一下区块链网络的工作原理,如何利用它,以及 IBM 如何帮助改进该技术。

Privacy Preference Center

Close your account?

Your account will be closed and all data will be permanently deleted and cannot be recovered. Are you sure?