打印
[活动]

【Nordic nRF7002开发板试用体验】数智平台原型开发的前奏

[复制链接]
643|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
【Nordic nRF7002开发板试用体验】数智平台原型开发的前奏
  短短地Nordic nRF7002DK开发板试用马上就结束了。nRF7002强大的性能,完善的开发环境为我的原型开发带来了可靠的支撑与极大的开发便利。加速了我的原型开发,节省了研发时间。现将本次对Nordic nRF7002DK开发套件的试用过程与试用感受分享给大家。
开箱试用
  通过试用名单后,恰逢北京突如奇来的暴雨洪灾,快递有所影响。正可谓“好事多磨”。在报名阶段,预习了不少nRF7002的资料,拿到手后,还是对Nordic的用料大发赞赏。


注意:这里开发板虽然较大,但其实际工作区仅有右侧两个硬币大小的区域。

  本次nRF7002DK开发板在物联网方面的应用上,不仅板载了WiFi与蓝牙,而且以扩展的方式集成了NFC功能,射频线圈以外置连接器的方式与开发板相连。如下图所示:
  Nordic在设计中,引入了Arduino的插针座,虽然软件上与Arduino无半点关系,但硬件外置模块连接起来也算方便吧,如下图所示:

  当然,nRF7002依然将引脚全部引出,只是未焊接插针插座,也方便试用者自行设计与部署。

  在调试器上面,Nordic按惯例板载集成了Segger公司的Jlink,并且版本较新,对我们调试nRF5340特别方便了。这里特别注意一下,我们在安装Nordic的nRFconnect工具集时,选择安装Jlink的高版本的驱动。
  Nordic nRF7002DK开发套件功能对于试用者的项目原型验证完全充足,无论是物联网听无线,近场通讯,还是IO控制,甚至其它模块的扩展功能实现均可有效、简单地实现,无需额外复杂的设计。对于板载Segger公司的Jlink又可以让我们使用到领先的在线调试器,而且还可以省下一笔正版授权费用。
开箱介绍就先到这里了,接下来我们通过LED灯Blink的实验来了解Nordic nRF7002DK的开发环境搭建。
LED闪烁与开发环境
  我们首先下载Nordic的nrfconnect软件,然后,在其安装向导中安装ToolChain Manager。其实,安装非常简单,简单地选择,之后,也是一路地“NEXT”步骤。
有一点,各位国内的DIYer试用者,因软件同步到Github网站,国内的速度较慢,时常出现断线的情况,这里,我们直接在国内下载对应的文件夹,再解压替换掉下载中断的固件即可。


  建议大家同步更新VScode代码编辑器,安装软件会提示我们安装nRFconnect SDK pack插件。一键安装,省心省时省力。
打开VScode后,我们需要在Nordic的nRFconnect插件中启动我们的项目。
  之后,在“欢迎”界面点击“open an existing application”选项中选择Zephyr文件夹中的Samples/blink文件夹即可。
  再点击“Build config”即可。

  稍等片刻,我们就可以看到编译结果了。

  连接开发板到我们的电脑(别忘记打开开发板的开关哟!),之后点击Flash命令即可下载hex文件到开发板了。
  在本例中,我将闪烁的间隔由1秒,缩短到了0.1秒,形成了快闪,嘿嘿!
  根据官方文档的说明,建议大家在官方示例的基础上面进行开发,这样节省我们自行搭建环境的时间。从本次blink示例中,我们几平不费吹灰之力即完成了项目环境的塔建,完成了开发板最基本功能的测试。
  VScode+插斗的方式听上去复杂,但实际操作下来相当简单,在国内网络下,下载固件库的时间发本会比较大。Workaround的方式也很多,比如在21ic论坛求助一下网友,即可轻松持定。
  综上所述,使用Nordic官方建议的VScode + NRFconnect插件方式的开发方案简单易学,便于上手。示例代码丰富,且贴近项目实践,虽然文件下载耗时较多,但变通的方案也不少。
  最后感谢一下乔老师,lulugl两位热心网友提供下载文件的国内中转服务与在线指导。
实验室数智化平台项目原型开发
  实验室数智化,简单讲 将现在的仪器、设备由单一的人员操作,人工管理,手工记录,升级为数智化平台集约管理,人员按需使用,自动化记录等。
对上述数智化功能实现,我们首先看人员权鉴需求功能。我们的试验环境为仪器设备,比如用于实验样品分析的光谱仪。在实验室我们仅允许中级技术人员以上技术水平的人员授权操作使用,其他人员无法操作。
  我们通过开发板的GPIO引脚控制电磁继电器对光谱仪的电源进行通断控制。当NFC 读卡器读取到人员IC卡的ID后,与后台数据库中数据联网比较,当符合授权条件后,打开电源,启动光谱仪。人员可进行余下操作实验步骤,否则,记录扫描人员的工卡ID号,红色指示灯点亮示意。
  有了项目需求,我们就通过nRF7002DK开发板实现它们吧!我们以官方NFC示例为模板,导入项目工程文件夹。

  通过日志消息,我们可以正确读取IC卡的卡号。那么,后期我们可将其通过板载的WiFi功能上传到我们Hub或者服务器,并根据服务器的返回结果对执行器进行控制。
  对人员进行权鉴,在本nRF7002DK开发套件来说,相对Easy,重点戏,其实是我们WiFi功能与蓝牙功能的双璧合一。
在我们的工作中,实验室的网络环境多种多样,有网线直连的,有2.4G的WiFi网络,有5G的WiFi网络,也有2.4G/5G的WiFi网络共生的。未来新建实验室,肯定也有招标要使用WiFi6的网络。因此,不同WiFi网络环境下,对我们数智化平台与模块的兼容性就提出来较高要求:必须向下兼容WiFi 2.4G,向上支持下一代WiFi6。巧了不!Nordic nRF7002DK正好满足这样的需求!(好吧,我应该承认是Nordic先提炼出来的需求,并以此设计的nRF7002)
  我们导入官方示例WiFi Scan,进行编译。

  通过上述编译结果,我们可以看到WiFi部署完成后,Flash与RAM还剩余超过80%的余量,完成可以满足我们的App的代码编写的空间需求。
  查看一下nRF7002是否可以扫描出来全部的WiFi连接。我们仍然通过串口日志打印输出查看连接成功的结果。

  在上图的扫描结果里面,hengheng是我家的2.4G/5GWiFi热点,家庭路由根据连接情况自动选择2.4G模式或5G模式。CU_Z3at是我家光猫自带的2.4G的WiFi热点,CU_Z3at_5G是我家光猫自带的5G的WiFi热点。
  对于数智化的原型开发,上述实验足以证明Nordic nRF7002符合我们的项目选型、设计需求。在未来的项目部署实施过程中,对服务器的通讯数据将使用JSON-RPC格式的封装,并经过WiFi发送出去。蓝牙的配置方便,一方面简化我们人员操作步骤,另一方面,仅需要一台安卓手机即可完成配置,又降低了我们现场安装人员的技术门槛。
  如此快速与便捷的原型开发实现,还是源于Nordic对于WiFi与蓝牙的强大技术实力。NCS平台的设计与实现,对软件、文件与项目的管理,均站在开发人员角度,省去了不少项目维护时间。
  又比如NCS套件中的Program Tools工具,以GUI界面的方式显示芯片Flash的状态,并在右侧侧边栏提示,并引导我进行下一步操作。我完全没有阅读PDF文档的学习成本,回事了我项目的开发,有效减少了开发项目的周期。当然,开发体验更是愉快了许多。
试用感受
  本次试用的Nordic nRF7002DK开发套件完全适合我负责的实验室数智化平台的需求。通过本次试用亦有机会了解到Nordic的最新产品,更可以亲手实践。在前期的投入成本降了又降。
  Nordic的官方文档撰写的非常全面,各个步骤标识清楚,官方提供的插件几乎完成了所有必要的参数配置,鼠标点击几下,一个基础版的应用项目就完成了。方便的不能再方便了。
  官方还提供了Nordic DevAcademy学院,按开发过程编写,不断进行进阶讲解。课后还有练习题,以提示本章的重点——全是在实际工作项目开发中经常遇到的关键技术点。

  官方文档的词藻并不晦涩,英语水平欠佳的网友们直接网页翻译即可,So Easy!
  对于WiFi与蓝牙两种复杂的无线通讯,Nordic提供多种GUI工具,清晰,明了,简单可靠,学习与调试过程得心应手。
随着边缘计算,安全加密应用项目需求提出。在GUI工具集中,安全性配置工具的集成也就有了需求,还望Nordic考虑。
总体而言,Nordic的产品仍然保持着领先,用Nordic来玩WiFi,玩WiFi,对Zephyr实时操作系统也要有一定了解。
  本次试用报告就到这里吧!谢谢Nordic,谢谢21ic论坛,谢谢乔老师,谢谢lulugl,谢谢其他在微信群中帮助过我的网友们。

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:嵌入式技术专家
简介:热爱开源,乐于分享。在嵌入式技术领域里面,主攻通讯协议,Modbus,TCP/IP以及虚拟化和RTOS

16

主题

373

帖子

2

粉丝