入门指南
一、说明
ThingsGateway 是一款功能强大的物联网边缘网关软件,基于NET8/NET9开发,默认开发IDE为VS2022(17.12版本以上)。安装VS时需勾选ASP.NET类别和相关组件。
系统要求
- 操作系统:Windows 7SP1/10/11、Windows Server 2012及以上、Linux(支持Ubuntu、CentOS等主流发行版)
- 运行环境:.NET 8.0或.NET 10.0运行时
- 内存:建议至少512MB
开发环境要求
- Visual Studio 2022:17.12版本以上,勾选以下组件:
- ASP.NET和Web开发
- .NET桌面开发
二、拉取源码
1. 通过Git克隆
ThingsGateway 的源码托管在 Gitee 平台上,您可以通过以下命令克隆最新版本:
git clone https://gitee.com/diego2098/ThingsGateway.git
ThingsGateway采用子仓库方式。如果你需要DEBUG调试程序,可以克隆此仓库
git clone https://gitee.com/ThingsGateway/All.git
运行gitAuto.bat
2. 直接下载
如果您不熟悉Git命令,也可以直接在 Gitee 页面上下载源码压缩包:
3. 克隆步骤图解
4. 注意事项
- 克隆或下载完成后,请确保源码目录路径中不包含中文或特殊字符,以免在编译过程中出现问题
- 如果网络环境较差,克隆过程可能会比较缓慢,请耐心等待
- 建议定期更新源码,以获取最新的功能和bug修复
三、编译运行
1. 编译源码
打开 Visual Studio 2022,选择 "打开项目或解决方案",找到您克隆或下载的 ThingsGateway 源码目录,打开 ThingsGateway.slnx 解决方案文件。
编译步骤:
-
恢复依赖包:在解决方案资源管理器中右键点击解决方案,选择 "恢复NuGet包",等待依赖包恢复完成。
-
编译解决方案:在菜单栏中选择 "生成" → "生成解决方案",或按下快捷键
F6,等待编译完成。 -
检查编译结果:编译完成后,查看输出窗口,确保没有错误信息。如果有警告,可以根据需要进行处理。
2. 运行项目
步骤:
1、 设置ThingsGateway.Server为启动项目,开始调试或开始执行
2、 启动后会显示登录界面
恭喜你体验了软件的启动第一步!
测试环境下,账密会自动填充为超级管理员账号,默认账户:SuperAdmin,密码:111111
3. 首次启动注意事项
- 首次启动时,系统会自动初始化数据库和默认配置
- 启动过程中可能会出现一些初始化日志,这是正常现象
- 如果启动失败,请检查:
- .NET运行时是否正确安装
- 端口是否被占用(默认使用5000端口)
- 源码是否完整,依赖包是否正确恢复
4. 访问方式
启动成功后,您可以通过以下方式访问 ThingsGateway:
- 本地访问:在浏览器中输入
http://localhost:5000 - 网络访问:在浏览器中输入
http://服务器IP:5000(需要确保防火墙已开放对应端口)
四、建立一个完整的流程
1. 流程说明
下面举例说明 采集ModbusTcp设备中的寄存器,通过 MqttServer 发布 的具体流程:
- 建立通道:创建ModbusTcp采集通道和MqttServer发布通道
- 建立采集设备:添加ModbusTcp采集设备
- 建立业务设备:添加MqttClient业务设备
- 建立变量:配置需要采集的寄存器变量
- 验证:检查数据采集和发布是否正常
2. 详细步骤
2.1 建立通道
-
进入通道管理:登录系统后,在左侧菜单中选择 "设备管理" → "通道管理"
-
添加ModbusTcp通道:
- 点击 "添加通道" 按钮
- 选择 "ModbusTcp" 通道类型
- 填写通道名称、描述等基本信息
- 配置连接参数(如IP地址、 端口等)
- 点击 "保存" 按钮
-
添加MqttServer通道:
- 点击 "添加通道" 按钮
- 选择 "Other" 通道类型
- 填写通道名称、描述等基本信息
- 配置MqttServer相关参数
- 点击 "保存" 按钮
2.2 建立采集设备
-
进入设备管理:在左侧菜单中选择 "设备管理" → "设备管理"
-
添加采集设备:
- 点击 "添加设备" 按钮
- 选择 "采集设备" 类型
- 填写设备名称、描述等基本信息
- 选择之前创建的ModbusTcp通道
- 配置设备连接参数(如从站地址、采集间隔等)
- 点击 "保存" 按钮
2.3 建立业务设备
-
进入设备管理:在左侧菜单中选择 "设备管理" → "设备管理"
-
添加业务设备:
- 点击 "添加设备" 按钮
- 选择 "业务设备" 类型
- 填写设备名称、描述等基本信息
- 选择之前创建的MqttServer通道
- 选择 "mqttClient" 驱动
- 在插件属性中填入第三方MqttBroker的连接信息(如服务器地址、端口、用户名、密码等)
- 点击 "保存" 按钮
2.4 建立变量
-
进入变量管理:在左侧菜单中选择 "设备管理" → "变量管理"
-
添加变量:
- 点击 "添加变量" 按钮
- 选择之前创建的ModbusTcp采集设备
- 填写变量名称、描述等基本信息
- 填写变量寄存器地址(如400001)
- 配置变量属性(如数据类型、采集间隔、转换表达式等)
- 点击 "保存" 按钮
-
寄存器地址格式:
- 鼠标移至输入框,会有寄存器格式的tip提示
- 变量寄存器地址为字符串形式,格式为:区域号+地址(如400001表示保持寄存器,地址为0)
-
可视化配置:
- 如果插件已支持可视化配置,可以点击右侧按钮,弹出编辑窗口
- 在编辑窗口中可以更直观地配置变量参数
2.5 验证
经过以上的配置,已经可以从127.0.0.1:502的模拟Modbus设备中,采集到PLC地址(400001),并通过网关的mqttClient插件发布到第三方mqttBroker。下面来验证一下:
2.5.1 准备模拟设备
-
启动Modbus模拟软件:
- 下载并安装ModbusSlave等模拟软件
- 配置模拟设备参数(如从站地址、寄存器值等)
- 启动模拟服务
2.5.2 检查数据采集
-
查看变量状态:
- 在左侧菜单中选择 "设备管理" → "变量管理"
- 找到之前创建的变量,查看其状态和值
- 可以看到数据已经采集正常,显示当前值和采集时间
注意:页面实时值变化是1s的间隔时间,如果配置了采集间隔小于1s,页面刷新不及时是正常的,不影响业务上传。
2.5.3 查看调试日志
-
切换到日志视图:
- 在变量管理页面,点击 "切换查看日志" 按钮
-
开启调试日志:
- 在通道或设备配置中,开启调试日志
- 可以看到每次交互的modbus报文以及结果状态
-
查看MqttServer日志:
- 在运行状态中,可以看到MqttServer的发布日志
2.5.4 验证Mqtt发布
-
使用Mqtt客户端工具:
- 下载并安装MQTTX等Mqtt客户端工具
- 连接到配置的MqttServer
- 订阅相关主题,查看是否收到发布的数据
-
检查数据格式:
- 确认发布的数据格式是否符合预期
- 检查数据内容是否与模拟设备中的值一致
3. 流程总结
通过以上步骤,我们成功建立了一个完整的物联网数据采集和发布流程:
- 数据采集:通过ModbusTcp协议从模拟PLC设备中采集寄存器数据
- 数据处理:网关对采集的数据进行处理和转换
- 数据发布:通过MqttServer将处理后的数据发布
这个流程可以根据实际需求进行扩展和修改,例如:
- 更换不同的采集协议(如OPC UA、S7等)
- 使用不同的发布方式(如Kafka、RabbitMQ等)
- 添加规则引擎进行数据处理和分析
- 配置报警规则实现异常监测
五、详细说明
1. 更多资源
在查看案例前,请先查看关于网关的基础内容
- 官方文档:ThingsGateway 文档中心
- 技术博客:ThingsGateway 博客集合
- 视频教程:ThingsGateway B站频道
2. 常见问题
如果您在使用过程中遇到问题,请参考:
3. 社区支持
- QQ群:605534569
4. 商业支持
如果您需要商业支持或定制开发服务,请联系:
- QQ:2248356998