花瓣小跑 发表于 2024-11-17 21:21:46

[阿里云]如何实现设备数据上报到RDS数据库

前言

这篇文章的重要内容包括,如何创建设备与产品,如何通过下位机发送数据到物理数据,如何创建RDS数据库,如何通过DATAHUB来毗连物理数据与RDS数据库。注意:想要实现全套流程的话,产品、DATAHUB、RDS数据库所在地区必须完全一样!!!
一、如何创建设备与产品

登录阿里云账号之后,以:产品→物联网→物联网平台为路径找到管理控制台
https://i-blog.csdnimg.cn/direct/27a855fca687441c8e79efd2ce899733.png
点击管理控制台之后,若想要试用公共实例的话,地区选择 华东2(上海),这里有一个可以免费试用的实例,其他地区似乎只能购买。
https://i-blog.csdnimg.cn/direct/a35c2b3270eb4b04a61a1c49ebd0b0e1.png
开通公共实例之后,可以在左侧导航栏中找到 设备管理→产品,点击之后会出现一个蓝色底纹的"创建产品"按钮,点击之后出现新建产品页面,产品名称按照项目名称来填写,剩下的可以以我的为例,对于数据格式方面,我是使用JSON格式上传数据,所以数据格式方面选用的是 "ICA尺度数据格式",创建完毕之后点击"确认",此时在产品页面就可以看见本身刚创建好的产品啦!
https://i-blog.csdnimg.cn/direct/82fd87a9e5c64cc3b62b4bb360ca53cc.pnghttps://i-blog.csdnimg.cn/direct/2a11ed5eeb114587bd5f0c54554f2b1d.png
产品创建完成,开始进行创建设备,同样在左侧导航栏中找到 设备管理→设备,进入设备页面以后,也会出现一个蓝色底纹的 "添加设备"按钮,填写本身的信息,完毕之后,设备页面会出现刚才创建的设备信息,表现未激活状态。
https://i-blog.csdnimg.cn/direct/b1148358ef5f46e19728ae4d051773f4.png  
https://i-blog.csdnimg.cn/direct/c06e4ce2c4c247fe8e42982970e7101b.png
激活设备的流程,我这里以我使用的4G模块为例,我使用的是正点原子开发的ATK-IDM750C 4G模块,模块自身配套了一款类似于串口助手的软件,可以帮助激活设备,将这些参数全部填写进该软件后,点击保存所有参数,此时就可以看到设备已经被乐成激活了!
https://i-blog.csdnimg.cn/direct/2e293ae6eb0c4e51941349919b51a009.png
https://i-blog.csdnimg.cn/direct/5937a3afdb5d41c5b6d8097de85833d8.png
下面说一下这里的参数都在那里找到,KEY、NAME、SECRET这三个参数点击 设备->查看 在设备名称下面可以 找到KEY和SECRET这两个参数,至于NAME就是所创建的设备名称。
订阅主题与发布主题,在 产品→Topic列表→物模子通讯Topic 中找到属性上报功能。操作权限为发布的,填写入发布主题;为订阅的,填写入订阅主题。
https://i-blog.csdnimg.cn/direct/09d62c1d054f436aa1cfc5e31b50572f.png
到了这里,第一步创建设备与产品算是完成了~
二、如何发送数据到物模子数据

在产品页面中,点击功能界说,然后点击编辑草稿,在编辑草稿中,有添加尺度功能与添加自界说功能,可以都点进去看看,尺度功能是直接使用阿里云官方提前配置好的参数,自界说功能就是根据自身的需要去界说本身想要的数据范例。这里我选择添加自界说功能。
在编辑完草稿之后,不要忘了发布上线!!! 发布上线之后,编辑的草稿才有效
https://i-blog.csdnimg.cn/direct/6fe28ed832d243b18e481751a099ccea.png
https://i-blog.csdnimg.cn/direct/7c23eae994384923a7d59a7050c9709e.pnghttps://i-blog.csdnimg.cn/direct/52dce031ecba4aa09d1d5fb7ae63f62a.png
如果想要查看发送的数据,在设备→物模子数据中可以查看
https://i-blog.csdnimg.cn/direct/72977410b8134d6cab25e407422defdc.png
发送数据的具体格式需要联合自身所选择的数据格式,我这里选择的是ICA尺度数据格式,所以发送数据的格式如下,id和version貌似是自界说的,我是随便填写的,发现也可以发送乐成,剩下的params里就需要用到之前所强调的标识符了,标识符后面跟随着数据,如果有多个参数,需要用英文逗号去分隔开,例如{"CO2":123,"O2":456}。
{
    "id": "123",
    "version": "1.0",
    "params": {"CO2":123},
    "method": "thing.event.property.post"
} 这里我还是通过4G模块所带的软件模拟下位机发送数据,可以看到,物模子数据里添加了刚才的数据。
https://i-blog.csdnimg.cn/direct/f44b7ff4c57344fdb1a2971a7d0d23ae.pnghttps://i-blog.csdnimg.cn/direct/998350c1a2b34d71b71bb18725ba174b.png
三、创建RDS数据库

与创建设备与产品类似,下面是具体的操作图。
https://i-blog.csdnimg.cn/direct/d639f9c9e6fe4a8a994e019e7c981f12.png
第一次点击云数据库RDS应该会有一些试用的阿里云数据库,各位可以通过具体情况选择合适的数据库进行开通服务。但是如果要与物模子中的数据进行互通,那么地区一定要选择同一个!比如我创建的设备在华东2,那么创建的数据库也要在华东2。如果单纯创建数据库,并没有数据同步的需求的话,那么可以忽略地区这个题目。
那么开通完云数据库之后,可以在实例列表中看见正在运行的数据库。
https://i-blog.csdnimg.cn/direct/d337a032d6ef4e2ab043b867a084dba3.png
点击实例ID下的蓝色字段,会出现该实例的具体配置。
①创建账号,按照本身的需求创建即可,这里不过多叙述
https://i-blog.csdnimg.cn/direct/25c1fdecfceb40c89f974702b9accc7a.png
②创建数据库,要求同上,按照需求创建
https://i-blog.csdnimg.cn/direct/ed408830def04c52b5d5576e35810917.png
③白名单与安全组,这里请参照官方的文档去进行设置
设置RDS MySQL实例的IP白名单_云数据库 RDS(RDS)-阿里云帮助中心 (aliyun.com)
④数据库毗连,这里我是使用的外网地址去毗连阿里云的,需要点击开通外网地址
https://i-blog.csdnimg.cn/direct/31e8c12544fd4679ae7ce1e5d49999ee.png
⑤创建数据库表格,创建数据库表格我是使用的第三方软件Navicat进行的创建,在阿里云中,也可以使用查询语句去创建。如要使用阿里云自身去创建数据库表格,需要进行下图的操作。具体创建表格语句请自行上网学习,这里不过多叙述。
https://i-blog.csdnimg.cn/direct/5c6a65d09a984581b7d45d217d1004be.png
https://i-blog.csdnimg.cn/direct/e5cc92d5508540f8a7494aab743bd354.png
如果使用Navicat去毗连阿里云,首先根据自身创建的阿里云数据库进行选择,这里我使用的是MYSQL版本,所以我选择RDS MYSQL版。
https://i-blog.csdnimg.cn/direct/89b1d42f20f14c07a56a0ab8a79aec3e.png
选择完毕后,可以通过测试毗连来检测是否毗连乐成
https://i-blog.csdnimg.cn/direct/3232ca470ede4035a7bb22d35a78277f.pnghttps://i-blog.csdnimg.cn/direct/a77c043816404cd1803fbfa6c8ac75c4.png
然后就可以在Nvicat上面去操作阿里云数据库啦!到此为止,数据库也创建完成
四、使用DATAHUB来同步物模子数据到RDS数据库

最开始我是参照这篇文章来进行设置的,如果这部门写的看不懂,也可以去看看这位大佬的文章
物联网平台设备数据同步到RDS & MySQL数据库(保姆级教学)_硬件的数据怎么及时更新到数据库-CSDN博客
那么接下来正式开始,DATAHUB的具体位置如下图。同样再次强调,如要使用数据同步服务,所在地区必须雷同!DATAHUB在某年之后开始收费,不过每个月似乎有1G的免费流量,所以想要试用也可以购买,只要不超过1G流量就都是免费的哈
https://i-blog.csdnimg.cn/direct/66c232f5ccc4454db7bda692de66432a.png
①开通后,在项目管理中找到新建项目,按照具体要求创建名称与形貌
https://i-blog.csdnimg.cn/direct/79a4fa374fa64c63ada9be0a703fccab.png
②创建完项目之后,再去新建Topic,点击项目列表中的查看操作,然后在弹出的页面点击 新建Topic
https://i-blog.csdnimg.cn/direct/554fbc81f8944c2781ca10c6da1a8d41.png

https://i-blog.csdnimg.cn/direct/cb771b6f37624817a31dba364673c348.png

填写完毕后,点击创建。
https://i-blog.csdnimg.cn/direct/a119269feace4b0c8c779947b06f8a6b.png   
下图是字段名与Topic名称的对比,必须完全雷同。
https://i-blog.csdnimg.cn/direct/7770e66cc47f41fbbf072420e3450155.png
③创建完Topic之后,点击Topic中的查看,再点击同步
https://i-blog.csdnimg.cn/direct/4f9e239857c4477da3a52959e4169afb.png
选择RDS&MYSQL
https://i-blog.csdnimg.cn/direct/4804267125604f1daec1dd67c2cc8f07.png
然后就到了最关键的一步,也是最容易出错的一步。
https://i-blog.csdnimg.cn/direct/87530ebee9174206aa8812535c3de2f4.png
最开始上面的步调马马虎虎就填写完了,但是到了VPC和实例ID的时候可是犯了难,因为单纯填写VPC ID和实例ID总是报错,如下,VPC ID各人可以安心填写,但是实例ID需要从别的地方去找
https://i-blog.csdnimg.cn/direct/5e6fc44652774aff85b38c1952f5cea4.png
实例ID需要从API调试中去获取,填完下面的参数点击发起调用
DescribeDBInstanceAttribute_云数据库 RDS_API调试-阿里云OpenAPI开发者流派
https://i-blog.csdnimg.cn/direct/f8948024628b46df8911deeb840a7ffb.png
在调用结果中可以找到VPC CLOUD INSTANCE ID,后面所对应的才是真正的实例ID,泪目,当时找到这个可费了我好大劲.....
https://i-blog.csdnimg.cn/direct/5ca1af1f2e7f4b77868622218ceae6f8.png
然后点击创建,就可以创建乐成啦!!!!
④返回公共实例中,也就是我们创建玩的设备与产品那里,按下图步调点击。
https://i-blog.csdnimg.cn/direct/4bb3924440f142d5967f5eef173043e5.png
创建规则,按照本身的情况去填写。
https://i-blog.csdnimg.cn/direct/3c8128c021584e2ca93e220607e9488e.png
确认之后,在规则名称中点击查看,并点击 编写SQL
https://i-blog.csdnimg.cn/direct/8672058a97f24455b89f8ee5653c2347.png
https://i-blog.csdnimg.cn/direct/e28bf3c728a7490285f5c896f9a914a2.png
上面的timestamp还需要加(),一时疏忽。填写完毕后,选择确认,并点击转发数据中的 添加操作
https://i-blog.csdnimg.cn/direct/aebf0340bc464f71a923d9ed2ceef209.png
https://i-blog.csdnimg.cn/direct/a816d9ee09394748a336dd99ecc8eab8.png
注意:${key},key就是编写SQL时,所对应的字段名称,比如time的值也就是${TIME}
随后点击确认,最后,返回云产品流转,点击启动就大工告成了!!
https://i-blog.csdnimg.cn/direct/8dfa5683a26a4410bc9a5c4f6d144777.png




免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: [阿里云]如何实现设备数据上报到RDS数据库