HiHope开发者社区
直播中

jf_73813179

3年用户 197经验值
擅长:鸿蒙
私信 关注
[经验]

转发:基于3861WIFI IOT搭建可视化IOT平台并部署智能家居 教程1-搭建MQTT服务器平台

现在物联网平台非常多,百度、腾讯、阿里、京东、等,这些物联网平台都各具特色,但毕竟是别人的,我们自己能否搭建属于自己的物联网平台呢?
答案是可以的,我们只需要一个服务器,在服务器上搭建IOT平台,然后再让设备连接上,就可以了
本篇文章是使用 ubuntu + emqx + nodered 方式搭建属于自己的IOT平台,并在平台监控Hi3861上的数据,然后通过手机app同步hi3861的数据。
文章涉及篇幅较多,故打算用多篇文章来讲解,这是第一章,搭建EMQX服务器。
如何搭建EMQX服务器:
1.前面说到,搭建一个IOT平台需要一个服务器 ,我个人建议使用云服务器来搭建,一来是可以直接外网连接,二来是我们的代码可以直接放在服务器上,在不同的地方只需要连接服务器就可以开发,当然,最好还是配合github或者gitee来进行代码管理。

2.如果是使用虚拟机的,那么你需要多做一个步骤就是,内网映射,把虚拟机服务器的IP地址映射到公网,这个我之前也弄过,是使用花生壳内网映射,把内网映射出去,不过这个弄起来稍微复杂一点,所以还是不推荐用虚拟机,加上平台是24小时运行,所以还是弄一个云服务器香,如果你是学生的话,几十块钱就可以买一年的服务器了。
接下来的步骤在虚拟机或者云服务皆可以实现,操作步骤都一样

安装emqx服务器步骤很简单
先去官网找到对应你的ubuntu版本的安装包
https://www.emqx.io/cn/downloads  我的是20.04



然后远程连接你的服务器输入指令
wget https://www.emqx.io/cn/downloads/enterprise/v4.2.1/emqx-ee-ubuntu20.04-4.2.1-x86_64.deb

等待下载完毕再执行
sudo dpkg -i emqx-ee-ubuntu20.04-4.2.1-x86_64.deb

安装好之后再输入
sudo emqx start
如果出现
EMQ X Broker 4.2.2 is started successfully!
证明EMQ服务器已经部署完毕


图上为虚拟机的

图上为我的云服务器的安装成功图示

证明服务器启动成功,因为我的云服务器是24小时运行的,所以可以不加入开机启动
然后就可以在浏览器中打开了 地址为 你的服务器ip地址:18083,如:192.168.31.205:18083
打开后是这样子,默认的账号是admin,密码是public

这是我云服务器打开后的样子


这是我本地虚拟机打开的,


这两个页面的UI不一样,可能是因为安装的版本不一样导致,这不影响下面的操作
注意:本地虚拟机搭建的EMQX服务器,运行的话可以不用在虚拟机里面打开浏览器,直接在主机打开浏览器输入ip:18083即可打开!
如果是云服务器,搭建之后,在公网打开的时候有可能遇到打不开的情况,这是因为你的端口没有打开,你需要在你的云服务器控制台的安全组里面添加EMQX的端口 18083,这样就可以在公网打开了!

在下一步验证服务器之前,需要打开EMQX的一个客户端,用来发布和订阅消息
在 工具->Websocket 中点击连接

然后就可以先进性下一步验证了,云服务器和本地搭建均一样,下面直接以本地搭建做教程。
这里先设置一下订阅和发布的主题,设备和服务器是如何进行消息传输的呢?就是通过订阅和发布,如下图的订阅框内的testsubscrib这个主题,就是服务器订阅的主题,当设备连上服务器之后,发布数据经过这个主题,那么服务器就会收到数据,反之一样
服务器订阅的主题  <==>  设备端发布的主题
服务器发布的主题  <==>  设备端订阅的主题

服务器端搭建完毕,接下来就是验证MQTT服务器

测试连接服务器

我们需要一个软件来连接到emqx服务器,这个软件是MQTT.FX
下载地址是 http://www.jensd.de/apps/mqttfx/
下载了直接安装在Windows下,然后打开后设置相关属性

点OK后返回主页面,然后点击Connect,如果右边的指示灯变绿证明已经连接上服务器


然后就可以填入发布的主题了,前面在服务器端设置了订阅的主题叫testsubscrib,我们填进去之后,在下面的输入框内输入想发布的数据,然后点Publish

然后在服务器端就可以接收到数据了

接下来测试设备端接受服务器端发布的消息,在MQTT.fx主页面选择Subscribe,然后填入服务器定义的发布的主题 testpublic,点Subscribe

然后在服务器端点发布


然后就可以收到消息了


至此,搭建自己的IOT平台第一步完成。

第二篇: 3861链接服务器并传输数据
https://developer.huawei.com/consumer/cn/forum/topic/0204421565601580598?fid=0101303901040230869
第三篇: 搭建可视化IOT平台
https://developer.huawei.com/consumer/cn/forum/topic/0201422480515480599?fid=0101303901040230869
第四篇:IOT平台传输并控制设备
https://developer.huawei.com/consumer/cn/forum/topic/0204424147274360673?fid=0101303901040230869
第五篇:成果展示
https://developer.huawei.com/consumer/cn/forum/topic/0204425645447830696?fid=0101303901040230869

作者:Gray


更多回帖

发帖
×
20
完善资料,
赚取积分