1.背景
我以前在中石化工作,向乙方学了很多工业通讯的技术,慢慢就了解了在工业领域里的数据通讯是啥风格了:跟互联网领域神似而形不同。
16年离开中石化后,自己做公司,研发更轻的停车位状态检测器,用了3个月时间死磕ZigBee设备。等搞通了,也放弃了:我们小团队,支撑不起一个新设备流水线。但写C的过程,非常兴奋。后来只搞小程序地图了,纯互联网领域,跟串口和C暂时告别。
19年初,我同学唤醒了我的兴奋:一个新的法律要发布了,我在中石化时原有的一个设备问题,以前不算问题,但以后必须要搞定。这至少是千万级别的市场。
我和朋友们开始重新研究设备技术,在原有的DTU采集数据的基础上稍微采用了新协议,将数据采集频率从10秒/次,提升到了0.08秒/次。
但后来,发现这也解决不了问题:大量数据涌向云服务器,带宽、CPU和存储都会出问题。就重新扫描市场:现在有什么新技术了?
然后我就找到了边缘计算!高频率的数据采集+本地数据分析和存储+短暂断网仍续传+算法可以动态更新。所以,我开始了解阿里云和华为云的服务。
而腾讯习惯性迟到的服务,7月份有迹象了。经过2年的微信小程序开发,对腾讯的产品印象五谷杂陈,但考虑到客户的需求(以后大文娱和社区应用,很有可能是腾讯的优势领域),我们应该趁机让腾讯多培训我们!
申请了开发板进行测试,参加这次互动的技术升级,也是以后值得回味的记录。腾讯的同学很给力,马上就通过了申请,而且免费寄送开发设备!
-----------
虽然这开发板不是边缘设备,但我们可以趁机熟悉下腾讯物联网开发平台,后续用边缘设备时,可以很快上手云端部分。
-----------
2.开发过程
板子到了后,又看到了熟悉的串口转USB。不看文档的情况下,就接设备+通电=亮灯!
当天,完成了软件安装、demo工程写入开发板、开发云平台创建设备、云端查看设备状态+云端写入新状态!
成功得太快了!因为技术人员已经把所有的都准备好了,部署+上线即可。
可是,后来就出现了至今为止的最大问题:设备经常掉线!
因为使用的wifi模块,我默认配置的是办公区的wifi。技术支持的同学说换成手机热点试试:效果一样,几分钟就断。我改成了自己桌面的小米wifi路由器,仍然是这样。
给大家看看猴子跳舞的记录:
时间 | 动作 | 详细信息 |
---|---|---|
2019-08-15 08:58:34 | 下线 | Device disconnect,last avtive time:2019-08-15 08:58:31 |
2019-08-15 08:58:31 | 上线 | Device connect |
2019-08-14 11:53:30 | 下线 | Device disconnect |
2019-08-14 11:44:58 | 上线 | Device connect |
2019-08-14 11:43:20 | 下线 | Device disconnect,last avtive time:2019-08-14 11:43:18 |
2019-08-14 11:43:18 | 上线 | Device connect |
2019-08-14 11:24:58 | 下线 | Device disconnect,last avtive time:2019-08-14 11:24:54 |
2019-08-14 11:20:25 | 上线 | Device connect |
2019-08-14 11:16:29 | 下线 | Device disconnect,last avtive time:2019-08-14 11:16:15 |
2019-08-14 11:15:07 | 上线 | Device connect |
2019-08-14 11:14:54 | 下线 | Device disconnect,last avtive time:2019-08-14 11:14:49 |
2019-08-14 11:14:50 | 上线 | Device connect |
2019-08-14 11:14:34 | 下线 | Device disconnect,last avtive time:2019-08-14 11:14:27 |
2019-08-14 11:12:56 | 上线 | Device connect |
2019-08-14 11:12:30 | 下线 | Device disconnect,last avtive time:2019-08-14 11:12:24 |
2019-08-14 11:10:42 | 上线 | Device connect |
2019-08-14 11:10:01 | 下线 | Device keepalive timeout,last avtive time:2019-08-14 11:04:00 |
2019-08-14 11:03:48 | 上线 | Device connect |
2019-08-14 10:14:18 | 下线 | Device disconnect |
2019-08-14 10:09:50 | 上线 | Device connect |
2019-08-14 10:04:26 | 下线 | Device disconnect,last avtive time:2019-08-14 10:03:00 |
2019-08-14 10:00:15 | 上线 | Device connect |
2019-08-14 08:21:09 | 下线 | Device disconnect,last avtive time:2019-08-14 08:20:47 |
2019-08-14 08:17:52 | 上线 | Device connect |
2019-08-14 08:14:14 | 下线 | Device disconnect,last avtive time:2019-08-14 08:14:00 |
2019-08-14 08:13:30 | 上线 | Device connect |
2019-08-13 23:10:02 | 下线 | Device disconnect,last avtive time:2019-08-13 23:09:57 |
2019-08-13 23:08:01 | 上线 | Device connect |
2019-08-13 23:06:45 | 下线 | Device disconnect,last avtive time:2019-08-13 23:06:41 |
2019-08-13 23:04:07 | 上线 | Device connect |
2019-08-13 23:00:29 | 下线 | Device disconnect,last avtive time:2019-08-13 23:00:15 |
2019-08-13 22:59:19 | 上线 | Device connect |
2019-08-13 22:36:55 | 下线 | Device disconnect,last avtive time:2019-08-13 22:36:51 |
2019-08-13 22:30:32 | 上线 | Device connect |
2019-08-13 15:14:11 | 下线 | Device disconnect,last avtive time:2019-08-13 15:14:07 |
2019-08-13 15:13:28 | 上线 | Device connect |
2019-08-13 15:02:20 | 下线 | Device disconnect,last avtive time:2019-08-13 15:02:12 |
2019-08-13 14:59:22 | 上线 | Device connect |
2019-08-13 14:56:21 | 下线 | Device disconnect,last avtive time:2019-08-13 14:56:05 |
2019-08-13 14:54:54 | 上线 | Device connect |
2019-08-13 14:35:49 | 下线 | Device keepalive timeout,last avtive time:2019-08-13 14:29:48 |
2019-08-13 12:29:35 | 上线 | Device connect |
2019-08-13 12:25:24 | 下线 | Device disconnect,last avtive time:2019-08-13 12:25:19 |
2019-08-13 12:23:23 | 上线 | Device connect |
2019-08-13 12:21:28 | 下线 | Device disconnect,last avtive time:2019-08-13 12:21:27 |
2019-08-13 12:21:27 | 上线 | Device connect |
2019-08-13 11:40:52 | 下线 | Device disconnect |
2019-08-13 11:36:29 | 上线 | Device connect |
2019-08-13 11:25:32 | 下线 | Device disconnect,last avtive time:2019-08-13 11:23:41 |
2019-08-13 11:21:58 | 上线 | Device connect |
2019-08-13 11:19:39 | 下线 | Device disconnect,last avtive time:2019-08-13 11:19:35 |
2019-08-13 11:17:05 | 上线 | Device connect |
2019-08-13 11:00:36 | 下线 | Device disconnect,last avtive time:2019-08-13 10:58:36 |
2019-08-13 10:58:33 | 上线 | Device connect |
2019-08-13 10:58:33 | 下线 | Device kicked, connect time:2019-08-13 10:57:49 |
2019-08-13 10:57:50 | 上线 | Device connect |
2019-08-12 10:34:22 | 下线 | Device keepalive timeout,last avtive time:2019-08-12 10:28:21 |
2019-08-12 10:02:45 | 上线 | Device connect |
2019-08-12 10:01:52 | 下线 | Device disconnect,last avtive time:2019-08-12 09:58:40 |
2019-08-12 09:58:26 | 上线 | Device connect |
这不能当生意啊!技术支持同学让我再换一个wifi环境,可我全用完了啊。串口那接收的数据也显示wifi掉线,设备断网。
群里有热心同学提示:把设备自动重连的代码改一下。我实在看不懂哪段代码是自动重连的部分,向牛人请教,一直无回音。
这我理解,因为如果大量小白问你很简单的问题,反映了他连基本的原理和框架都不清楚,你帮他解决一个问题,后续还是会出现更多问题的。
所以,牛人不接茬,我这就暂停了设备端的调试。技术支持同学猜测这wifi模块可能有问题,让我寄回更换。可我那段时间需要跟准客户展示设备,暂时没寄回。今天写完作业,就可以厚脸皮找腾讯同学换一个试试了。
上面的问题,也反映了腾讯的技术文档的不足。当前只有那些已经有比较好的51、stm开发经验的工程师,可以快速上手腾讯的开发板。小白来这里,很难爬过这个断崖。我就挂这了。后续再补。
TinyOS的文档,是有断崖的:介绍了宏观的功能和优势,又介绍了具体的api,但缺少中间的部分:这些东西之间是怎样关联起来的。工程启动是从哪作为入口,经过哪个文件调用哪个功能,如何操作设备产生效果,如何获取设备的数据,如何与腾讯云进行通讯。这些腰部的知识,文档里是没有的。
我抽空去隔壁看了下,稍微清晰了一些,但毕竟不一样,所以,就暂停了参考。
希望后续的文档写得再全面些,把整个流程都要写出来。
回想微信小程序的文档,坑多得跟下过雨一样。。。。我是慢慢爬出来的。
所以,新技术出台,相关的服务也要跟上,尤其是这次公测结束后。
停止了设备端的研究,也赶上了TinyOS资料包的1.01版,里面就有了腾讯同学做好的小程序demo。这是我熟悉的部分了。配置到我自己的小程序名下、去公众平台增加了腾讯云的api网址,又在微信同学的支持下搞定了异步函数,快速完成了小程序的上线:
这是智能灯的demo,可以成功读取物联网云平台上的历史数据和当前数据,但无法再执行改写智能灯的状态,因为设备不在线!
3.计划
后续还是会关注腾讯物联网的技术更新,期待物联网设备供应商网络的发展,包括TinyOS模组和推荐的传感器厂商、边缘网关。
我这关注的市场需求会应用腾讯物联网:
(1)民宿酒店
这个领域,是腾讯文旅的优势地盘。公众号+小程序+物联网+民宿酒店,顺畅。
近期可以从智能家居的控制、节能领域,创建新的技术服务能力。因为民宿酒店老板对这2个方面的需求越来越成熟。
(2)停车
众多零散的停车场,数据都没有集中化显示到高德百度腾讯地图。和充电桩一样,这是个趋势。需要大量的物联网设备进入。
至少,可以将数据上线,显示到业主自己的公众号或者小程序。所以,腾讯物联网,看好你哦!
(3)工业
在智慧城市的上亿大合同下,应用腾讯物联网实现大企业的上云,掌握了这技术,就可以去当腾讯的分包啦!
4.小bug
TinyOS附带的文档中,“产品名称”应为“产品ID”:
下图中,“进入……”后面的路径有错误:
5.结语
这次是我们的战略式技术储备。看好腾讯物联网,加油!
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。