2102|2

75

帖子

2

TA的资源

一粒金砂(中级)

楼主
 

【NXP Rapid IoT评测】+ 评测总结 [复制链接]

本帖最后由 bjemt 于 2019-1-19 12:05 编辑

  申请评测的时候我想法是:希望通过SLN-RPK-NODE快速搭建一个远程数据采集单元,并与云服务建立安全连接,可以实时将采集到数据加密传输到云服务器上,同时学习和测试云服器的应用方式。
  想着使用Web Studio快速搭建起程序的架构,再通过MCUXpresso IDE进行功能扩展和调试。
  但是拿到模块后才发现KW64的4路差分ADC全都直接接地了,没有办未能引出来。而且从Web Studio上下载下来的原码导入MCUXpresso IDE调试时提示错误,两个平台的编译系统并不统一,不能联合开发。
  于是决定将原来的计划改变为基于Web Studio的应用设计:做一个恒温恒湿控制器,重点是学习和测评Web Studio的设计和编程方法。

【关于NXP Rapid IoT】

  NXP Rapid IoT是从Atmosphere的Hexiwear发展而来的,Hexiwear是Atmosphere推出的基于NXP芯片的可穿戴智能设备,论坛里的有个贴子对两者进行了祥细的对比:https://bbs.eeworld.com.cn/thread-1065366-1-1.html
  NXP Rapid IoT恩智浦给出的目标应用主要是“家庭与楼宇控制”和“消费电子”两大领域。对模拟信号的感知和处理前端控制器是非常重要的,而KW64也内置16位的差分ADC,NXP Rapid IoT的ARM4+BLE的组合非常适合做通用的前端数据采集监控显示报警设备。非常可惜的是NXP Rapid IoT主控器KW64的4路差分ADC输入引脚全都接地了,无法扩展使用。大大降低了NXP Rapid IoT对模拟信号的检测和监控能力。
  建议下一个版本的模块将KW64的4路差分ADC引出到扩展口。NXP Rapid IoT 20脚扩展口正好还空着8个引脚。

【关于NXP Rapid IoT Web Studio】

主要优点:
  1.上手快,编程简单,开发速度快,是一个基于已有组件快速开发快速布署NXP Rapid IoT的好平台。
  2.Web Studio非常稳定的,从来没有崩溃过,数据也没有丢失过,比起手机端的APP要强不少。
问题和改进建议:
  1.只提供编辑和编译功能,不能进行调试。对于相关复杂的程序来说,一但出现逻辑和函数调用上错误,编译器只提示编译失败,却不给具体的行号,查找问题非常不容易。
  2.只有新建和导入项目,不能对已有的项目改名称,也无法另存项目(只能下载),以保存项目阶段性成果。有时错误点击浏览器而跳转页面或关闭窗口都会造成已编辑未保存的项目内容丢失。
  3.蓝牙组件的通知和订阅功能因为APP端无法写代码,无法申请订阅,蓝牙的通知服务无法使用,APP端只能采用效率较低的定时查询方式。
  4.手机APP端还需要授权才能使用,不知以后是否会收费?
  5.程序和组件中使用到的数据结构、函数和常量找不到相关的定义文件,编辑器也没有自动提示的能力,在编写程序时,不知道预定义的数据结构里面都有什么参数,可以调用哪些函数。

【我的恒温恒湿控制器】

1.设计目标:
  利用NXP Rapid IoT设计制作一个恒温恒湿控制器,手机APP可以通过BLE与NXP Rapid IoT模块连接,并实现模块上的恒温恒湿显示和控制功能。
  当温度高于设定温度2度时,则蓝灯亮模拟起动制冷;当温度低于设定温度2度时,则红灯亮模拟起动制热;当温度处于设定温度正负2度以内时,关闭制热制冷。也可以人为关闭恒温控制。
  当湿度高于设定湿度10%时,则起动抽湿;当湿度低于设定湿度10%时,则起动加湿;当湿度处于设定湿度正负10%以内时,关闭加湿和抽湿。也可以人为关闭恒湿控制。

2.第一次设计
  为了节约时间,我基于Rapid IoT Kit Out Of Box Demo删除了不需要组件,修改增加了一些组件,开始还比较顺利,但是有一些修改的内容比较多,不知到哪里出现了逻辑错误,下载模块中的程序总是不停的重启。又没有办法跟踪调试,不知道哪里出现死循环。最后实在是没有办法,只好放弃重新设计。

3.第二次设计
  第二次设计学会了每次只改一点点,仅编译通过还不行,必须下载的模块能正常运行才算过。恒温控制器功能全完成了,可以通过模块的4个按键和手机APP设置温度、湿度、打开或关机恒温控制,APP的面板也基本设计完成了。



  本来以为只要将对应的处理代码对应添加到恒湿控制器就可以了,当我把所有该写的代码都添加完时,出现了前所未见的编译失败错误!

  而且不提示哪行出的错误,我已经添加不少代码,我不知道是代码问题还事件调用的问题?是设备端的问题还APP端的问题?我注释掉可能会出错误的代码,删除可能有问题的事件,最后变成下图那个样子,才发现是因为函数名称错误引起的。

     设计完成时的样子    




  为了找问题删除组件和函数后的样子

  但是程序已经被我删除了差不多了。删除之前我特别希望有一个项目“另存为”的按扭,可以将之前已经调试好的设计保存下载,不至于每次删除后都从新添加。
4.第三次设计
  第三次把所有删除的部分从新添加上去,编译通过,下载模块运行正常,模块显示和各项控制也都正常,万没想到连接手机APP时又出现了新情况:

  手机的APP在注册设备时提示“Unable to authenticate device's hardware credentials”。


  “无法验证设备的硬件凭据”是模块出了问题?
  从新调用了一下NXP原版没有任何修改 Rapid IoT Kit Out Of Box Demo,编译下载的模块中,手机的APP又可以正常注册和连接模块,APP也能正常显示蓝牙的数据,说明模块本身没有问题。
  但是软件在编译时提示成功,并没有报告任何错误呀?
  在查看手机APP信息时,在integrations下看到了AUTHENTICATION TOKENS (身份验证令牌) ,黄色的字显示一般API令牌。


  也就是说手机APP应用是有授权管理的,当前授权的一般APP。我生成的手机APP之所以不能与模块正常连接,应该是受到了授权的限制。设备的硬件凭据应该就是软件的受权信息,但是不知道设备的硬件凭据保存在哪里?

  我使用的都是web上的组件,Demo中出现过的函数,怎么会超出限?

  我把能想到的可能引起问题的代码都注释了,但是APP连接查模块时还是提示同样的错误,实在是不想再从来一遍了(担心从来也解决不了问题),把项目上传到论坛交作业了,请NXP的专家看看是啥问题吧。


     APP的设计图          第2次设计时运行起来的APP手机截图

【NXP Rapid IoT评测】恒温恒湿控制器项目文件 Thermostat & Humidistat.rar (74.8 KB, 下载次数: 2)


最后想说:不带调试功能的IDE不是一个好的IDE!


此内容由EEWORLD论坛网友bjemt原创,如需转载或用于商业用途需征得作者同意并注明出处



微信图片_20190118161753.jpg (108.25 KB, 下载次数: 0)

微信图片_20190118161753.jpg
此帖出自RF/无线论坛

最新回复

玩得遛!  详情 回复 发表于 2019-1-19 10:51
点赞 关注(1)
 

回复
举报

174

帖子

1

TA的资源

一粒金砂(高级)

沙发
 
大赞!
此帖出自RF/无线论坛
 
 

回复

1372

帖子

2

TA的资源

五彩晶圆(初级)

板凳
 
玩得遛!
此帖出自RF/无线论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
快速回复 返回顶部 返回列表