快速体验物联网通信中常用的CoAP与MQTT

CoAP测试工具Copper--Chrome 浏览器安装方法 阅读详情

今天快速入门了一下CoAP与MQTT,跑下网上的demo,感受下物联网这两个很流行的通信库都是怎么玩的。

电脑环境:Mac

CoAP

CoAP是一个类似http协议的,但比http更轻便小型的通信协议。基于UDP,跟一样http一样使用get、post、put等方法。

  1. 下载libcoap源码
    git clone https://github.com/authmillenon/libcoap.git

  2. 编译和安装libcoap
    由于libcoap的源代码包中只有configure.in文件,所以比一般的linux源代码方式安装多了一步autoconf,使用autoconf可生成configure文件。
    【1】生成configure文件
    autoconf
    【2】生成makefile文件
    ./configure
    【3】编译
    make
    【4】安装
    sudo make install

  3. 运行服务端
    example目录里面有服务端和客户端的执行文件,
    执行 ./coap-server 运行服务端代码

  4. 下载android CoAP测试APK,填写服务端的ip和端口,发送get请求,看到以下内容表示请求成功

This is a test server made with libcoap (see http://libcoap.sf.net)
Copyright (C) 2010--2013 Olaf Bergmann <bergmann@tzi.org>

apk下载地址:https://apkpure.com/iot-coap/ch.buedev.iot_coap

MQTT

MQTT采用的是消息发布和订阅的机制,也是轻量级的。

1、搭建服务端
mosquitto和Apollo选择其一即可

mosquitto

使用mosquitto搭建代理服务端,这里网上很多教程,有时间再补。
安装完mosquitto,需要修改配置文件,我Mac电脑的配置文件路径是/usr/local/Cellar/mosquitto/1.5.8/etc/mosquitto/mosquitto.conf
配置ip和端口

bind_address 172.20.10.5
port 1883

配置完毕后,执行mosquitto -c /usr/local/Cellar/mosquitto/1.5.8/etc/mosquitto/mosquitto.conf运行服务端

Apollo

Apollo搭建MQTT服务器
下载地址http://activemq.apache.org/apollo/download.html

解压之后,cmd进入bin目录
./apollo create mybroker mybroker为服务器名字,此时会生成mybroker目录
进入mybroker
./apollo-broker run 启动服务器
浏览器打开http://127.0.0.1:61680/,账号密码为admin,password
在Configuration里面取消注释这两句,不然连不上

    <!-- Uncomment to disable security for the virtual host -->
    <authentication enabled="false"/>

    <!-- Uncomment to disable security for the virtual host -->
    <authentication enabled="false"/> 

连接端口在这份配置文件里面,ip是这台电脑的局域网ip

2、下载测试客户端
Android测试应用github地址:
https://github.com/Thumar/MQTT

(推荐)电脑端使用MQTTBox测试工具,支持Mac、Windows、Linux,下载地址:
http://workswithweb.com/html/mqttbox/downloads.html

使用流程:客户端需要先订阅topic,订阅后当其他客户端或自己发布信息到该topic,所有订阅该topic的都会接受到信息。

物联网通信协议与技术 物联网通信协议是物联网系统中设备间进行数据交换和通信所遵循的规则和约定。它们规定了数据的格式、传输方式、错误处理等方面的内容,确保通信双方能够正确理解和处理对方发送的数据。物联网通信协议的作用在于实现设备间的互联互通、数据共享和协同工作,从而推动物联网应用的广泛发展。 阅读详情

相关推荐

物联网通信协议

物联网通信协议

m0_37777640的博客 6668

全网最佳IoT命令行超级工具箱|帮你轻松解决百万物联网设备测试和联调穆书伟

Toolkit现在完成了一些特性,但是好的开源工具是出自开发者的,但是想要真正的将这个工具做的非常优秀,必须需要开发者的共建。希望大家参与进来!穆书伟,写于2023年4月1日 杭州春日。

BASK2311的博客 968

基于C++的4G通过MQTT协议连接Onenet实现物联网通信

MQTT是一种基于发布/订阅模式的轻量级通信协议,广泛应用于物联网设备的数据传输。Broker:消息代理服务器,负责接收、过滤和分发消息。Publisher:消息发布者,将消息发送到特定主题。Subscriber:消息订阅者,接收订阅主题的消息。Onenet是中国移动提供的物联网平台,支持设备数据的接入、存储和分析,支持多种通信协议,包括MQTT、HTTP、CoAP等。通过Onenet,开发者可以方便地管理和监控物联网设备。

qq_38334677的博客 1313

CoAP 协议分析与测试

CoAP 协议是物联网中,一种轻量级的 Web 协议,类似于互联网中的 HTTP 协议。鉴于物联网设备资源受限,所以使用 CoAP 协议是一种较好的选择。相对于 HTTP,CoAP 有如下特点 CoAP 采用二进制报文头,而非文本 CoAP 减少了协议头的类型 CoAP 只支持一些重要的请求方法:POST、GET、PUT、DELETE CoAP 可以支持检测装置 CoAP 辅助测试工具 Ch...

个人笔记 7466

coap-test-tool:极其简单的node.js CLI工具,用于测试嵌入式CoAP服务器

容量测试工具 极其简单的node.js CLI工具,用于测试嵌入式CoAP服务器。 要求 node.js ,版本〜0.10 npm 发射 npm install npm run launch-get # or npm run launch-observe 配置 serverHostname目标CoAP服务器的地址,默认为“ localhost”; serverPort目标CoAP服务器的端口,默认为5683;默认值为5683。 serverPath目标CoAP服务器的路径,默认为'/'; heartbeat -GET请求之间的延迟; count同时请求的数量。

CoAPExplorer:一种(即将成为)跨平台工具,用于探索CoAP协议

CoAP资源管理器 进行中应用程序,用于与CoAP设备进行交互。 目前,即将跨平台的目标是Windows。 谢谢: React式UI 更好的跨平台路由库 Google的Windows材质设计演示文稿框架 -WPF的文本荧光笔 我自己的CoAP库 最新的每晚构建的Windows可以直接从AppVeyor下载- 目标 跨平台使用Xamarin Apps中的相同概念,核心功能位于schared项目(Targeting .Net Standard)中 设备发现 UDP组播发现。 待办事项:支持更多的运输。 全功能消息编辑器 支持各种内容类型 保存消息请求或响应 简单的用户界面 屏幕

物联网通信协议——比较-MQTT、 DDS、 AMQP、XMPP、 JMS、 REST、 CoAP

  物联网通信协议——比较-MQTT、 DDS、 AMQP、XMPP、 JMS、 REST、 CoAP   AMQP &amp; MQTT &amp; DDS (https://www.youtube.com/watch?v=GTK94zZJbGQ) 物联网通信协议详解及选择建议(资料来源:http://www.elecfans.com/iot/419545.html) ...

weixin_34081595的博客 3085

MQTTBox.dmg

MQTTBox,用于管理MQTT的客户端。支持TCP、TLS、Web Sockets和安全的Web Sockets连接MQTT服务器

物联网通信协议介绍

为了方便,将协议分为两大类,一类是接入协议,一类是通讯协议。接入协议一般负责子网内设备间的组网及通信;通讯协议主要是运行在传统互联网TCP/IP协议之上的设备通讯协议,负责设备通过互联网进行数据交换及通信。本文介绍以通讯协议为主。

BY组态 3407

光模块数字诊断监控(DDM)功能

DDM(Digital Diagnostic Monitoring)数字诊断监控,由行业组织SFF Committee制定,遵循SFF-8472多源协议定义的标准参数而工作,规范了光模块和网络设备的软硬件所需遵循的标准数值或范围,确保了网络设备供应商和光模块供应商之间所提供产品的互操作性不同。:通过监测激光器的偏置电流来预测激光器的劣化,从而确保在故障发生之前将业务切换到备用链路上或替换有可能故障的光模块,因此起到了预测光模块寿命的作用。光模块DDM信息可以通过SNMP读取光模块的接收光功率和发射光功率。.

光模块的博客 2300

硅传CC1310二次开发必备:手把手教你用JTAG解锁被锁定的Flash存储器

本文针对硅传CC1310模块二次开发中常见的Flash锁定问题,提供了从原理剖析到实战操作的完整解决方案。详细介绍了如何使用Uniflash和Flash Programmer 2等工具进行Flash解锁和擦除,并强调了硬件连接稳定性与供电质量的关键作用,帮助开发者彻底解决烧录障碍,为后续应用开发铺平道路。

weixin_29189373的博客 252

MQTT 和 CoAP物联网通信协议之争:MQTT 与CoAP 深度对比分析

在物联网(IoT)领域,选择合适的通信协议对于设备性能、电池寿命、网络效率和应用可靠性至关重要。MQTT (Message Queuing Telemetry Transport) 和 CoAP (Constrained Application Protocol) 是两种广泛应用的轻量级协议,它们各自针对物联网设备的特点进行了优化,但在设计理念和适用场景上存在显著差异。 以下是 MQTT 和 CoAP 的详细对比分析

moton2017的博客 2094

PyQtWebEngine安装避坑指南:快速解决ModuleNotFoundError

本文详细解析了PyQt5开发中常见的ModuleNotFoundError: No module named 'PyQt5.QtWebEngineWidgets'错误。核心原因是PyQt5 5.11版本后,网页引擎组件被独立为PyQtWebEngine包。文章对比了退回旧版本、独立安装及使用Conda等多种解决方案,并提供了针对Windows、macOS和Linux不同平台的实战安装指南与验证方法,帮助开发者快速解决依赖问题。

weixin_29056101的博客 427

物联网通信协议全解析

物联网通信协议全解析 物联网通信协议可分为两大类,一类是接入协议,一类是通讯协议。接入协议一般负责子网内设备间的组网及通信;通讯协议主要是运行在传统互联网TCP/IP协议之上的设备通讯协议,负责设备通过互联网进行数据交换及通信。 随着物联网设备数量的持续增加,这些设备之间的通信或连接已成为一个重要的思考课题。通信对物联网来说十分常用且关键,无论是近距离无线传输技术还是移动通信技术,都影响着物联网的发展。而在通信中,通信协议尤其重要,是双方实体完成通信或服务所必须遵循的规则和约定。 本文介绍了几个可用的

爆破手阿瓒的博客 4275

autodl云服务器使用中的conda源报错

通过find path -name filename找到.condarc文件,在autodl服务器中,一般在/root/.condarc。为了利用jypyter打开conda虚拟环境运行,需要下载ipykenel。这个报错是源的问题,在通过源获取包元数据时出现了HTTP 429错误。通过conda换源解决。修改.condarc文件,命令: vim .condarc。但这样还不能解决问题,得把报错中有问题的源注释掉。通过以下命令添加清华镜像源。把报错的链接源注释如下。

Ty_kilig的博客 1584

【人工智能】从零开始玩转龙虾(Openclaw):本地与云端(火山Arkcloud)部署全指南

龙虾(Openclaw)是一款海外智能体操作系统(agent operating system),可通过飞书机器人实现自动化办公、信息抓取、任务协作等功能。它支持本地部署和云端部署两种方式,适配MacOS和Windows系统(,建议优先使用MacOS)。sudo。

奶爸的编程之路,也就一周冷个三天 947

物联网通信:一天开发WIFI、蓝牙、Lora、NBIOT、mesh组网等通讯方式[附开发例程]

快速开发各种物联网通讯方式前言一、Wifi+mqtt接入云平台二、Core通过蓝牙与手机通讯三、Lora通信四、NBIOT+mqtt通信五、Mesh组网 前言 面对各种各样物联网通信开发的实现是比较复杂的,很多人开发一种通信方式都非常困难。如果想要一天之内将WIFI、蓝牙、Lora、NB等通讯方式搭建成功并使用,是难以想象的。但是今天就带大家怎样用一款功能强大并且编程及其简单的Core物联网开发板开发出这些物联网通讯,以下是几种常用的物联网通信及例程链接。 一、Wifi+mqtt接入云平台 MQTT是一种基

小天才的博客 5442

亚马逊跨境电商选品数据分析:Python爬虫实战指南

本文将带领大家构建一套完整的亚马逊选品数据采集与分析系统,使用最新的Python技术栈,从零开始爬取亚马逊商品数据,并进行深度分析。

2201_76125261的博客 299

IoT—物联网通信协议解析

摘要 随着物联网设备数量的持续增加,这些设备之间的通信或连接已成为一个重要的思考课题。 通信对物联网来说十分常用且关键,无论是近距离无线传输技术还是移动通信技术,都影响着物联网的发展。 而在通信中,通信协议尤其重要,是双方实体完成通信或服务所必须遵循的规则和约定。 物联网通信协议适用场景 本文介绍了几个可用的物联网通信协议,它们具有不同的性能、数据速率、覆盖范围、功率和内存,而且每一种协议都 有各自的优点和或多或少的缺点。其中一些通信协议只适合小型家用电器,而其他一些通信协议则可以用于大型智慧城 市项目。

PuddingHou的博客 5476

【示波器专题】示波器探头的原理深入——有源探头之单端有源探头

由于接地环路的苛刻要求,更高带宽的单端有源探头就算设计了也不实用。因此单端有源探头的带宽一般在6GHz以内,更高带宽的信号测量也只能使用差分有源探头(市面上有些型号的差分探头可同时兼顾单端测试)。......

一点硬件 2145

Calibre 3DSTACK Flow Example(5-1)

摘要: 本文详细介绍了使用Calibre 3DSTACK工具验证2.5D中介层IC的设计流程。该设计由控制器、两个RAM芯片和中介层组成,各裸片通过255层的焊盘图形和端口文本实现连接。流程包括:1)准备通过DRC/LVS验证的裸片版图;2)创建3DSTACK规则文件定义装配操作;3)设置全局选项并定义各裸片的图层属性;4)指定图层间的电气连接性;5)通过坐标精确放置裸片形成3D堆叠。文中提供了完整的规则文件示例,并说明了如何生成3D装配视图进行物理验证,为后续连接性检查奠定基础。

u013620135的博客 2165

小智音箱运行CoAP_Protocol轻量物联网通信

本文探讨CoAP协议在小智音箱中的应用,解析其轻量机制、可靠性设计与安全集成,提出嵌入式实现路径及性能优化策略,推动智能家居设备高效协同。

weixin_42465140的博客 839

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

一文读懂!物联网通信协议大揭秘

物联网通信协议的多样性为不同的物联网应用场景提供了丰富的选择,每种协议都有其独特的优势和适用范围。从近距离通信的蓝牙、ZigBee,到远距离通信的 LoRaWAN、NB-IoT;从低功耗、轻量级的 MQTT、CoAP,到通用性强的 HTTP/HTTPS,它们共同构建了物联网通信的基础架构 。

大雨淅淅的博客 1260

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

上一篇: 使用OpenCV进行抠图并计算物体的最小外接边框
下一篇: 神奇了!AR技术可测量实物体积!
Hi David
博客等级 码龄17年 5195粉丝 84原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hi David

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值