EMQ X

微信小程序 阿里云服务器 非物联网平台自建MQTT代理服务器控制树莓派LED

本秂侑毒 提交于 2020-08-11 11:28:42
微信小程序 阿里云服务器 非物联网平台自建MQTT代理服务器控制树莓派LED 本人大三,临近毕业季,日后希望从事物联网和嵌入式相关工作,所以自己构想了一个项目来练手,之前做大创的时候学了一点微信小程序,大二的时候玩过一段时间的树莓派,寒假的时候买没顶住阿里云服务器的学生优惠买了一年的阿里云的服务器。之前的大创也是一个物联网的相关项目,当时使用的是中国移动的OneNet的物联网平台。 所以我灵机一动,就想到了自己搭建MQTT的代理通过微信小程序来控制树莓派的IO口的项目( •̀ ω •́ )✧ 前排提示:我也是个萌新,可能走了很多弯路,如果有迷惑操作欢迎指正相互学习哦(~ ̄▽ ̄)~ 前期准备 1.硬件准备 首先说一下完成这个项目我们所需要的硬件 1. 手机一台(IOS/Android皆可) 2. 树莓派(我用的4B 4G版,理论上其他型号也无所谓) 3. LED灯、杜邦线若干 我的成品如图 2.软件准备 下载微信开发者工具 直接下载对应版本 微信开发者工具 给树莓派安装系统 树莓派官网系统 我使用的是树莓派官方系统(之前用Ubuntu20.04 64位碰了很多壁⊙﹏⊙∥),这个地方萌新推荐安装 Raspberry Pi OS (32-bit) with desktop and recommended software 这个带推荐软件的版本,虽然大但啥都装好了对萌新友好

Arduino Esp8266开发 (三)上传数据到阿里云MQTT服务器

老子叫甜甜 提交于 2020-08-11 11:28:11
一、前言 1、能够使用Arduino的软串口控制Esp8266接入网络,可以看看我的前两个博客。 2、了解MQTT协议, 阿里云搭建MQTT服务器 。 3、需要的库文件 WiFiEsp库是一个Arduino的封装好AT指令的WiFi操作库,可以使用Arduino的软串口操作 PubSubClient是一个用于Esp8266发布/订阅MQTT消息的库。 链接:https : / / pan . baidu . com / s / 1 mAaIbO3 - SzVaN - jaaFwVbw 提取码:ol2p 4、修改Esp8266串口波特率为9600 使用AT指令输入AT+UART_DEF=9600,8,1,0,0,如何使用AT指令请看 Arduino Esp8266开发 (一)AT指令调试 5、 参考的文章网址 二、Arduino代码 # include "DHT.h" # include <WiFiEspClient.h> # include <WiFiEsp.h> # include <WiFiEspUdp.h> # include <PubSubClient.h> # include "SoftwareSerial.h" # define WIFI_AP "xxxx" //你家Wifi名称 # define WIFI_PASSWORD "****" //密码 // DHT #

Android 使用 Kotlin 连接 MQTT

最后都变了- 提交于 2020-08-11 06:04:49
MQTT 是一种轻量级的、灵活的物联网消息交换和数据传递协议,致力于为 IoT 开发人员实现灵活性与硬件/网络资源的平衡。 Kotlin 是一门由 JetBrains 公司开发的编程语言,Kotlin 是基于 JVM 的,所以开发者可以很方便地用它来进行 Android 开发,并且支持 Kotlin 和 Java 的混合编写。而早在 2017 年,Google 就宣布 Kotlin 成为官方开发语言。 本文主要介绍使用 Kotlin 语言在 Android 平台上使用 MQTT。 新建 Kotlin 项目 打开 Android Studio 新建一个项目,选择语言为 Kotlin,Android Studio 会自动创建 Kotlin 相关配置。若要配置现有项目,则可以参考 将 Kotlin 添加到现有应用 。 添加依赖 打开项目的 build.gradle ,添加 Eclipse Paho Java Client 和 Eclipse Paho Android Service 依赖到 dependencies 部分。 dependencies { implementation 'org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.4' implementation 'org.eclipse.paho:org.eclipse

物联网的基石-mqtt 协议初识

≡放荡痞女 提交于 2020-08-05 09:11:48
云栖号资讯:【 点击查看更多行业资讯 】 在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 随着 5G 时代的来临,万物互联的伟大构想正在成为现实。联网的 物联网设备 在 2018 年已经达到了 70 亿 1 ,在未来两年,仅智能水电气表就将超过10亿 2 。 海量的设备接入和设备管理对网络带宽、通信协议以及平台服务架构都带来了很大挑战。对于 物联网协议 来说,必须针对性地解决物联网设备通信的几个关键问题:其网络环境复杂而不可靠、其内存和闪存容量小、其处理器能力有限。 MQTT 协议 是基于发布/订阅模式的物联网通信协议,凭借简单易实现、支持 QoS、报文小等特点,占据了物联网协议的半壁江山: MQTT 协议的诞生 MQTT was created by Andy Stanford-Clark of IBM, and Arlen Nipper (then of Arcom Systems, later CTO of Eurotech).^3 据 Arlen Nipper 在一 IBM Podcast 上的自述,MQTT 原名是 MQ TT, 注意 MQ 与 TT之间的空格,其全称为: MQ Telemetry Transport,是九十年代早期,他在参与 Conoco Phillips 公司的一个原油管道数据采集监控系统(pipeline SCADA system)时

Kuiper 中使用 Golang 模版 (template) 定制分析结果

99封情书 提交于 2020-08-04 17:44:38
简介 用户通过 Kuiper 进行数据分析处理后,使用各种 sink 可以往不同的系统发送数据分析结果。针对同样的分析结果,不同的 sink 需要的格式可能未必一样。比如,在某物联网场景中,当发现某设备温度过高的时候,需要向云端某 rest 服务发送一个请求,同时在本地需要通过 MQTT 协议 往设备发送一个控制命令,这两者需要的数据格式可能并不一样,因此,需要对来自于分析的结果进行「二次处理」后,才可以往不同的目标发送针对数据。本文将介绍如何利用 sink 中的数据模版(data template )来实现对分析结果的「二次处理」。 Golang 模版介绍 Golang 模版将一段逻辑应用到数据上,然后按照用户指定的逻辑对数据进行格式化输出,Golang 模版常见的使用场景为在网页开发中,比如将 Golang 中的某数据结构进行转换和控制后,将其转换为 HTML 标签输出到浏览器。在Kuiper 使用了 Golang 的 template(模版) 对分析结果实现「二次处理」,请参考以下来自于 Golang 的官方介绍。 模版是通过将其应用到一个数据结构上来执行的。模版中的注释 (Annotations) 指的是数据结构中的元素(典型的为结构体中的一个字段,或者 map 中的一个 key),注释用于控制执行、并获取用于显示的值。模版的执行会迭代数据结构并设置游标,通过符号「.」

EMQ安装

不想你离开。 提交于 2020-07-29 06:15:37
****** 所在服务器 189 ****** 安装 ※ Erlang 安装 安装编译依赖: yum -y install gcc glibc-devel make ncurses-devel openssl-devel xmlto perl wget 下载erlang: wget http://www.erlang.org/download/otp_src_19.3.tar.gz 解压安装: tar -xzvf otp_src_19.3.tar.gz cd otp_src_19.3 ./configure --prefix=/usr/local/erlang make && make install 配置环境变量 vi /etc/profile 添加: ERL_PATH=/usr/local/erlang/bin PATH=$ERL_PATH:$PATH source /etc/profile 检查是否安装成功: erl ※ Rebar 安装 下载: git clone git://github.com/rebar/rebar.git 安装: cd rebar ./bootstrap 配置环境变量 vi /etc/profile 添加: export PATH=/emq/rebar/:$PATH (rebar安装目录) source /etc/profile 检查是否安装成功:

Arduino IDE 开发 ESP-01S/ESP-01物联网实战检测温度湿度上传MQTT服务器

家住魔仙堡 提交于 2020-05-02 17:58:15
一、硬件准备 USB转ESP8266两块、DHT11温度湿度传感器、ESP8266-01/ESP8266-01一块(如果学习的话多买几块, ESP-01/ESP-01S的区别 ) USB转ESP8266 说明: 为什么要买两块 二、软件准备 Arduino、EMQX(这是mqtt服务器可以部署在本地也可以放在远程服务器上)、MQTTBox(mqtt客户端程序)、如果是Window系统的话 安装相关USB驱动程序。 三、安装EMQX 下面介绍的方法是部署在远程服务器上。 MQTT服务器配置方法 四、安装Arduino IDE 到官网下载安装 五、配置Arduino IDE 的 ESP8266开发环境 参考地址 六、把ESP-01与DHT11连接 连接方法 七、打开Arduino IDE 编写代码 注意修改 Wi-Fi名和 Wi-Fi密码,如果是本地mqtt服务器的话地址填 127.0.0.1 #include <SimpleDHT.h> #include <ESP8266WiFi.h> #include <PubSubClient.h> int pinDHT11 = 2 ; // GPIO2 of ESP8266 const char * ssid = " XXXXX " ; // 手机Wi-Fi热点 const char * password = " XXXX " ; //

MQTT研究之EMQ:【CoAP协议应用开发】

左心房为你撑大大i 提交于 2020-04-30 20:46:34
本博文的重点是尝试CoAP协议的应用开发,其中包含CoAP协议中一个重要的开源工具libcoap的安装和遇到的问题调研。当然,为了很好的将EMQ的CoAP协议网关用起来,也调研了下EMQ体系下,CoAP的使用逻辑, CoAP支持明文,也支持DTLS的安全传输。 首先,介绍下libcoap的环境准备,然后基于libcoap进行EMQ的CoAP协议支持的验证。我的环境信息如下: 1. Linux: 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux 2. libcoap: 4.1.1 3. EMQ:起初10.95.200.11上是EMQ v2.3.11,后来验证coap无法正常工作,将EMQ的V3版本即emqx v3.0.1在10.95.197.8上安装,再次验证coap工作。 为了验证后面的COAPS通信,即CoAP基于DTLS的安全通信,这里,将libcoap的SSL环境也做一下准备,libcoap支持多种SSL的组件,这里,选择最为基础的且是最为常用的组件openssl。 1. libcoap带安全组件的环境构建 1) 首先安装openssl, 需要的openssl的版本比较高点,操作系统原始带有的openssl版本为1.0.1

EMQ X MQTT 5.0 服务器的保留消息与消息过期间隔

|▌冷眼眸甩不掉的悲伤 提交于 2020-04-05 15:03:58
保留消息 服务端收到 Retain 标志为 1 的 PUBLISH 报文时,会将该报文视为保留消息,除了被正常转发以外,保留消息会被存储在服务端,每个主题下只能存在一份保留消息,因此如果已经存在相同主题的保留消息,则该保留消息被替换。 当客户端建立订阅时,如果服务端存在主题匹配的保留消息,则这些保留消息将被立即发送给该客户端。借助保留消息,新的订阅者能够立即获取最近的状态,而不需要等待无法预期的时间,这在很多场景下非常重要的。 保留消息虽然存储在服务端中,但它并不属于会话的一部分。也就是说,即便发布这个保留消息的会话终结,保留消息也不会被删除。删除保留消息只有两种方式: 客户端往某个主题发送一个 Payload 为空的保留消息,服务端就会删除这个主题下的保留消息。 如果包含保留消息的 PUBLISH 报文设置了消息过期间隔属性,那么保留消息在服务端存储超过过期时间后就会被删除。 消息过期间隔 PUBLISH 报文可以设置消息过期间隔这一属性,消息过期间隔是一个四字节的整数,表示应用消息的生命周期,单位是秒。 如果 PUBLISH 报文不设置消息过期间隔,那么应用消息不会过期。 如果 PUBLISH 报文设置了消息过期间隔,并且消息过期将已经过期,服务端还没开始向匹配的订阅者交付该消息,那么服务端必须删除该消息。 EMQ X MQTT 服务器的保留消息 EMQ X MQTT

MQTT X 使用指南

依然范特西╮ 提交于 2020-02-26 16:11:36
在介绍和使用前,读者可以访问我们 项目地址 或 官方网站 ,了解并获取到最新的版本信息,MQTT X 正在快速开发迭代阶段,使用最新版本有助于提高使用体验。 下载 请从 GitHub Releases 下载符合您的版本并安装使用。 如果出现网络原因,导致从 GitHub 下载中出现网速较慢或卡顿的情况时,也可以 前往 EMQ 官网 ,选择符合您的版本并安装使用。 MQTT Broker 准备 如果您没有本地部署的 MQTT Broker,那么可以使用由 EMQ X Cloud 提供的公共 MQTT 服务进行快速测试: Broker 地址: broker.emqx.io Broker TCP 端口: 1883 Broker SSL 端口: 8883 如果您打算本地部署 MQTT Broker,推荐您 下载 EMQ X 进行安装使用。EMQ X 是一款完全开源,高可用低时延的百万级分布式物联网 MQTT 5.0 消息服务器。 使用 Docker 快速安装 EMQ X: docker run -d --name emqx -p 1883:1883 -p 8083:8083 -p 8883:8883 -p 8084:8084 -p 18083:18083 emqx/emqx 连接配置 在准备好 MQTT Broker 后,进入到主程序页面,可点击左侧菜单栏中的 + 号,如果页面没有数据