文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

IoT DC3 是一个基于 Spring Cloud 的开源的、分布式的物联网(IoT)平台本地部署步骤

2023-08-30 15:38

关注

dc3 windows 本地搭建步骤:

在这里插入图片描述

​​

必要软件环境 进入原网页#

务必保证至少需要给 docker 分配:1 核 CPU 以及 4G 以上的运行内存!

1 管理员权限改hosts:

# Added by DC3127.0.0.1 dc3-mysql127.0.0.1 dc3-redis127.0.0.1 dc3-mongo127.0.0.1 dc3-opentsdb127.0.0.1 dc3-elasticsearch127.0.0.1 dc3-rabbitmq127.0.0.1 dc3-emqx127.0.0.1 dc3-nginx127.0.0.1 dc3-influx# dev127.0.0.1 dc3-center-register127.0.0.1 dc3-center-auth127.0.0.1 dc3-center-manager127.0.0.1 dc3-center-data127.0.0.1 dc3-gateway# End DC3

2 安装好docker后,安装基础组件:

cd iot-dc3/dc3#创建并启动 MySQL、MongoDB、Redis、RabbitMQ、Nacos 服务docker-compose -f docker-compose-dev.yml up -d mysql mongo redis rabbitmq register#停止 MySQL、MongoDB、Redis、RabbitMQ、Nacos 服务docker-compose stop mysql mongo redis rabbitmq register

在这里插入图片描述

3 下载dc3源码并依次启动

启动 Auth、Manager、Data、Gateway 服务 进入原网页#

启动待开发的 驱动

# 下载iot-dc3源码git clone https://gitee.com/pnoker/iot-dc3.gitcd iot-dc3/dc3/demo

在 Idea 中依次启动:

4 拉取完整源码步骤

注意:以下步骤均在iot-dc3目录下完成

首先拉取iot-dc3

mkdir iot-dc3cd iot-dc3git clone https://gitee.com/pnoker/iot-dc3.gitgit checkout main

拉取公共模块dc3-common

git clone https://gitee.com/pnoker/dc3-common.git

拉取API模块dc3-api

git clone https://gitee.com/pnoker/dc3-api.git

拉取驱动SDK模块dc3-driver-sdk

git clone https://gitee.com/pnoker/dc3-driver-sdk.git

添加依赖模块

在 iot-dc3 的 pom.xml 中添加 dc3-common、dc3-api、dc3-driver-sdk 即可。

    dc3-gateway    dc3-center    dc3-driver    dc3-api    dc3-common    dc3-driver-sdk

以上步骤完成后iot-dc3目录结构如下

.├── dc3 资源文件,如sh,sql等├── dc3-api gRpc定义的接口结构├── dc3-center 平台中心模块├── dc3-common 平台公共模块├── dc3-driver 平台驱动模块├── dc3-driver-sdk 平台驱动SDK模块└── dc3-gateway 平台网关模块

在这里插入图片描述

5 启动驱动

注意: 以上配置是开启MQTT SSL认证的配置,如果你的MQTT Broker没有开启SSL认证,请将auth-type设置为NONE或者注释掉,同时将url设置为普通的tcp://dc3-rabbitmq:1883
这里要改为: auth-type: username 。因为配置了用户名

driver:    schedule:      # 定时读数据      read:        corn: '0/5 * * * * ?'    mqtt:  #    url: ${MQTT_BROKER_URL:ssl://dc3-rabbitmq:8883}  #    auth-type: X509      url: ${MQTT_BROKER_URL:tcp://dc3-rabbitmq:1883}      auth-type: username      username: dc3      password: dc3      receive-topics:        - qos: 1          name: data      default-send-topic:        qos: 1        name: command      keep-alive: 15      completion-timeout: 3000      batch:        speed: ${MQTT_BATCH_SPEED:100}        interval: ${MQTT_BATCH_INTERVAL:5}

6 配置mqtt驱动

安装MQTTX客户端 #

点击安装(opens new window)

连接MQTT 官方文档#

这里host可以写IP,也可以写上面配置host的域名映射。

在这里插入图片描述

7 发送数据

记得按图填写json qos:1
topic: dc3/default/dc3-driver-mqtt/data
在这里插入图片描述

deviceId: 设备ID, 不是设备名, pointId:位号

{"id":"1014","deviceId":"1694223265544900609","pointId":"1694223118807175169","value": 263.0,"createTime": "2022-08-19 14:34:36.111"}

mqtt:收到结果并发送到rabbitmq :
在这里插入图片描述

data:

在这里插入图片描述

8 启动WEB页面查看

构建 IoT DC3 Web UI #

git clone https://github.com/pnoker/iot-dc3-web.gitcd iot-dc3-web#这步至关重要, 推荐使用 yarnnpm install -g yarn --registry=https://registry.npm.taobao.orgyarn

启动 IoT DC3 Web UI #

yarn serve

在这里插入图片描述
新增模板与位号:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

3 新增设备:

在这里插入图片描述

明细数据: 查所有的位号(设备属性)
在这里插入图片描述
在这里插入图片描述

配置topict 和 qos, 与mqtt的页面一一对应。
在这里插入图片描述

数据: { “deviceId”: “1694223265544900609”, “pointId”: “1694223118807175169”, “value”: “63.0”}

9 待以上服务全部正常启动,访问 http://localhost:8080 (opens new window)即可进入登陆页面!

10 启动问题解决:

启动不了

Caused by: java.nio.charset.MalformedInputException: Input length = 1at java.nio.charset.CoderResult.throwException(CoderResult.java:281)at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:339)at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)at java.io.InputStreamReader.read(InputStreamReader.java:184)at org.yaml.snakeyaml.reader.UnicodeReader.read(UnicodeReader.java:118)at org.yaml.snakeyaml.reader.StreamReader.update(StreamReader.java:179)... 43 common frames omitted

在这里插入图片描述

消息发送失败:要注意数据格式与实体类一样。

3 密码报错

修改yml: auth-type: username

4 yarn 安装web依赖

找不到yarn命令。
要配置环境变量: path: 安装时带有的路径:

yarn serve

error marked@5.1.1: The engine “node” is incompatible with this module. Expected version “>= 18”. Got “14.21.3”

error Found incompatible module.
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

​## 5 cipher - please check password and data.
确认密码没问题那就是开了ssl认证: X509验证模式改成普通密码验证模式

在这里插入图片描述

来源地址:https://blog.csdn.net/killmars/article/details/132457028

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-人工智能
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯