stevenjin 2023-04-16 09:39 采纳率: 98.2%
浏览 29
已结题

请教mqtt物联方案

一.生产现场有仪器A\B\C多台,仪器之间要相互访问,访问终端有PC,WEB,APP
二.下位机为嵌入式
三.方案设想:
1、用MQTT.NET创建消息服务器转发层
2、为仪器A创建一个.NET6.0框架的控制台程序,首先获取到设备基础数据。再将实时采集数据发布到MQTT.NET,由订阅该主题的WPF客户端处理业务逻辑。
3、WPF客户端的操作,以指令的方式,下发到MQTT.NET服务器,由订阅该主题的控制台程序下发给下位机执行;WEB端或APP以同样方式访问。
4、仪器之间的访问,即MQTT.NET之间的访问,例如仪器B访问A时,B作为A的客户端,订阅仪器A的相关主题,实现设备之间互联。

  • 写回答

2条回答 默认 最新

  • 社区专家-Monster-XH 2023-04-16 10:03
    关注

    基于Monster 组和GPT的调写:

    • 设想是可行的,MQTT是一种轻量级的、高效的、可扩展的通信协议,非常适合物联网场景下的设备间通信。下面我就提出的问题逐一给出建议:
    • 消息服务器转发层
      可用MQTT.NET创建一个消息服务器转发层,它将负责消息的发布和订阅,以及消息的转发。这样,不同的设备就可以通过消息服务器转发层来相互通信了。
    • 仪器A的控制台程序
      为仪器A创建一个.NET6.0框架的控制台程序是可行的,您可以在该程序中获取设备基础数据,并将实时采集数据发布到MQTT.NET。这样,订阅该主题的WPF客户端就能够处理业务逻辑了。不过,要确保设备A能够与消息服务器转发层进行通信,以便发布和订阅消息。
    • WPF客户端、WEB端和APP的操作
      对于WPF客户端、WEB端和APP,可以通过向消息服务器转发层发送指令的方式,下发命令到控制台程序,然后由控制台程序下发给下位机执行。同样地,要确保这些客户端能够与消息服务器转发层进行通信。
    • 仪器之间的访问
      为实现设备之间的互联,可以让仪器B作为仪器A的客户端,订阅仪器A的相关主题。这样,仪器B就可以获取仪器A发布的消息了。同样地,要确保仪器B能够与消息服务器转发层进行通信。
    • 总体而言,设想是可行的,但是要注意的是,在实际实现中,要确保各个设备能够互相通信,并且消息传递的稳定性和安全性
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月26日
  • 已采纳回答 4月18日
  • 创建了问题 4月16日

悬赏问题

  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
  • ¥15 关于#hadoop#的问题