让我们用 C# 为物联网研究构建一个 MQTT Pub-Sub 客户端

Sudipto Chakraborty, P. S. Aithal
{"title":"让我们用 C# 为物联网研究构建一个 MQTT Pub-Sub 客户端","authors":"Sudipto Chakraborty, P. S. Aithal","doi":"10.47992/ijmts.2581.6012.0334","DOIUrl":null,"url":null,"abstract":"Purpose: MQTT stands for Message Queuing Telemetry Transport. It is a lightweight protocol specifically designed for IoT applications. Nowadays, most IoT projects exchange sensor data over the MQTT protocol. It is simple to integrate and can run on low hardware resources. To test MQTT, the researcher needs MQTT publisher subscriber client software. There are several free and paid software available on the web. But sometimes, researchers need some custom interface or functionality not available in the free version. The paid version demands vast amounts of money for customization. Occasionally, they want to avoid customization for specific projects. Here, we provide a procedure to create our MQTT pub-sub client software interface, which the researcher can easily customize. The project is available to download.\nMethodology/Approach: We installed Microsoft Visual Studio in our working system. Using C# language, we create a GUI (graphical user interface). Inside the GUI, we segregate the info into two. The left is for publishing clients, and the right is for subscribing clients. We installed the M2MQTT package using the NuGet package manager to communicate with the MQTT broker. \nFindings/Result: Using our built application, we test to exchange the sensor data between two clients. We found the data exchanged in almost real-time. In a couple of scenarios, we observed that the data propagation could have been faster when we set the update interval below 500 milliseconds. There may be a network delay, or the MQTT broker we used is a free service. It may be the limited capacity of the accessible mode of the server we used. If the application is not time-critical, we can utilize this communication route to exchange the sensor data. \nOriginality/Value: Every day, new researchers are introduced to the IoT field and integrate MQTT into their projects. They feel one customizable software they can use according to their project requirements. So, using this project, the researcher can fulfill their need. The code is freely available on the web. And scope to customize. This project provides value to them.\nType of Paper: Experimental-based Research.","PeriodicalId":504356,"journal":{"name":"International Journal of Management, Technology, and Social Sciences","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2024-02-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Let Us Build a MQTT Pub-Sub Client In C# For IoT Research\",\"authors\":\"Sudipto Chakraborty, P. S. Aithal\",\"doi\":\"10.47992/ijmts.2581.6012.0334\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Purpose: MQTT stands for Message Queuing Telemetry Transport. It is a lightweight protocol specifically designed for IoT applications. Nowadays, most IoT projects exchange sensor data over the MQTT protocol. It is simple to integrate and can run on low hardware resources. To test MQTT, the researcher needs MQTT publisher subscriber client software. There are several free and paid software available on the web. But sometimes, researchers need some custom interface or functionality not available in the free version. The paid version demands vast amounts of money for customization. Occasionally, they want to avoid customization for specific projects. Here, we provide a procedure to create our MQTT pub-sub client software interface, which the researcher can easily customize. The project is available to download.\\nMethodology/Approach: We installed Microsoft Visual Studio in our working system. Using C# language, we create a GUI (graphical user interface). Inside the GUI, we segregate the info into two. The left is for publishing clients, and the right is for subscribing clients. We installed the M2MQTT package using the NuGet package manager to communicate with the MQTT broker. \\nFindings/Result: Using our built application, we test to exchange the sensor data between two clients. We found the data exchanged in almost real-time. In a couple of scenarios, we observed that the data propagation could have been faster when we set the update interval below 500 milliseconds. There may be a network delay, or the MQTT broker we used is a free service. It may be the limited capacity of the accessible mode of the server we used. If the application is not time-critical, we can utilize this communication route to exchange the sensor data. \\nOriginality/Value: Every day, new researchers are introduced to the IoT field and integrate MQTT into their projects. They feel one customizable software they can use according to their project requirements. So, using this project, the researcher can fulfill their need. The code is freely available on the web. And scope to customize. This project provides value to them.\\nType of Paper: Experimental-based Research.\",\"PeriodicalId\":504356,\"journal\":{\"name\":\"International Journal of Management, Technology, and Social Sciences\",\"volume\":null,\"pages\":null},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2024-02-02\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"International Journal of Management, Technology, and Social Sciences\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.47992/ijmts.2581.6012.0334\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"International Journal of Management, Technology, and Social Sciences","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.47992/ijmts.2581.6012.0334","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

摘要

目的:MQTT 是消息队列遥测传输(Message Queuing Telemetry Transport)的缩写。它是专为物联网应用设计的轻量级协议。如今,大多数物联网项目都通过 MQTT 协议交换传感器数据。它易于集成,可在较低的硬件资源上运行。要测试 MQTT,研究人员需要 MQTT 发布者订阅者客户端软件。网上有许多免费和付费软件。但有时,研究人员需要一些自定义界面或功能,而免费版本却不提供这些功能。付费版本需要大量的定制费用。有时,他们希望避免为特定项目进行定制。在此,我们提供了一个创建 MQTT pub-sub 客户端软件界面的程序,研究人员可以轻松定制。该项目可供下载:我们在工作系统中安装了 Microsoft Visual Studio。我们使用 C# 语言创建了 GUI(图形用户界面)。在图形用户界面中,我们将信息分为两部分。左边是发布客户端,右边是订阅客户端。我们使用 NuGet 软件包管理器安装了 M2MQTT 软件包,以便与 MQTT 代理进行通信。发现/结果:使用我们构建的应用程序,我们测试了在两个客户端之间交换传感器数据的情况。我们发现数据几乎是实时交换的。在几个场景中,我们观察到,当我们将更新间隔设置为 500 毫秒以下时,数据传播可能会更快。这可能是网络延迟造成的,也可能是我们使用的 MQTT 代理是免费服务造成的。也可能是我们使用的服务器可访问模式容量有限。如果应用对时间要求不高,我们可以利用这种通信路径交换传感器数据。原创性/价值:每天都有新的研究人员进入物联网领域,并将 MQTT 集成到他们的项目中。他们觉得有一个可定制的软件可以根据他们的项目要求来使用。因此,使用本项目,研究人员可以满足他们的需求。代码可在网上免费获取。而且定制范围广。这个项目为他们提供了价值:基于实验的研究。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Let Us Build a MQTT Pub-Sub Client In C# For IoT Research
Purpose: MQTT stands for Message Queuing Telemetry Transport. It is a lightweight protocol specifically designed for IoT applications. Nowadays, most IoT projects exchange sensor data over the MQTT protocol. It is simple to integrate and can run on low hardware resources. To test MQTT, the researcher needs MQTT publisher subscriber client software. There are several free and paid software available on the web. But sometimes, researchers need some custom interface or functionality not available in the free version. The paid version demands vast amounts of money for customization. Occasionally, they want to avoid customization for specific projects. Here, we provide a procedure to create our MQTT pub-sub client software interface, which the researcher can easily customize. The project is available to download. Methodology/Approach: We installed Microsoft Visual Studio in our working system. Using C# language, we create a GUI (graphical user interface). Inside the GUI, we segregate the info into two. The left is for publishing clients, and the right is for subscribing clients. We installed the M2MQTT package using the NuGet package manager to communicate with the MQTT broker. Findings/Result: Using our built application, we test to exchange the sensor data between two clients. We found the data exchanged in almost real-time. In a couple of scenarios, we observed that the data propagation could have been faster when we set the update interval below 500 milliseconds. There may be a network delay, or the MQTT broker we used is a free service. It may be the limited capacity of the accessible mode of the server we used. If the application is not time-critical, we can utilize this communication route to exchange the sensor data. Originality/Value: Every day, new researchers are introduced to the IoT field and integrate MQTT into their projects. They feel one customizable software they can use according to their project requirements. So, using this project, the researcher can fulfill their need. The code is freely available on the web. And scope to customize. This project provides value to them. Type of Paper: Experimental-based Research.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信