一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种通过NFC配置mesh的方法与流程

2022-02-22 02:28:52 来源:中国专利 TAG:

一种通过nfc配置mesh的方法
技术领域
1.本发明涉及无线组网技术领域,更具体的说,它涉及一种通过nfc配置mesh的方法。


背景技术:

2.少儿编程是现阶段对少年儿童的智力开发和思维培养的很重要的一个方法,对少儿编程的方法和产品的研究也层出不穷。大多数的少儿编程教育是通过编程游戏启蒙、可视化图形编程等课程,来实现培养计算思维和创新解难能力的目的。对于生长发育期的少年儿童来说,通过可视化的图像等方式来进行编程,例如在电子产品上进行编程,需要长时间面对电子屏幕,对眼睛的伤害很大,而非可视化的编程通常又无法达到可视化编程的效果。因此,致力于非可视化编程教育的研究和产品也是少儿编程教育的重要发展方向。
3.现有技术中的非可视化编程产品由于技术上的局限性,存在编程方法简单,思路单一等问题,对于4周岁以上的思维训练无法达到良好的训练效果。而如何增加可玩性,提高操作兼容性成为市场需求,在这之中,进行高效组网,快速完成编程是其中重要的问题之一。


技术实现要素:

4.本发明克服了现有技术的不足,提供一种使用方便、便于组网,多模块灵活配置的一种通过nfc配置mesh的方法。
5.本发明的技术方案如下:
6.一种通过nfc配置mesh的方法,包括编程机和编程模块;编程模块上设置nfc标签,编程机上设置nfc读卡芯片;编程机可同时读取多个编程模块;编程机和编程模块加入mesh网络的步骤如下:
7.101)判断编程模块数量步骤:编程机通过nfc读卡芯片读取编程模块的mac地址和身份id,并向编程模块发送确认数据包;
8.当编程机仅读取到一个编程模块发出的设备mesh数据包时,则进行入网操作;当编程机读取到有两个及以上的编程模块发出的设备mesh数据包时,编程机记录编程模块的mac地址和身份id,再进行入网操作;
9.102)入网步骤:编程模块通过动态nfc标签读取编程机发出的确认数据包,并进行复位操作;编程机将包含编程机身份信息的数据包发送给编程模块,编程模块根据收到的编程机身份信息的数据包加入编程机所在的mesh网络中;
10.103)nfc判断入网步骤:编程机通过nfc读卡芯片读取所有编程模块联网信息,以此编程模块是否全部入网,如有部分未入网,重复步骤102)进行入网操作;
11.104)身份绑定步骤:编程机根据预设的身份信息的分类,将连入编程机所在mesh网络的编程模块进行关系绑定,完成组网配置。
12.进一步的,编程模块包括动作模块、参数模块、事件模块、运算模块、控制模块和自
定义模块。
13.进一步的,编程模块的主控芯片通过中断,来判断动态nfc标签是否被编程机上设置的nfc读卡芯片操作。
14.进一步的,在步骤102)中,编程机将通过蓝牙扫描编程模块和通过动态nfc标签读取的mac信息进行匹配,确认需要发送信息的编程模块。
15.进一步的,步骤104)中需要相互绑定的编程模块,由编程机发送相应信息给编程模块的主控芯片,并通过mesh网络实现编程模块之间的收发数据。
16.进一步的,编程模块的动态nfc标签存储的数据格式包括head、length、cid、fid、mac、pid、ver、checksum;
17.head为数据帧起始字节,占1字节;
18.length为数据长度,占2字节;
19.cid为厂商身份id,占3字节,自主分配给第三方;
20.fid为功能码,占2字节,用于表示当前这个nfc标签的所属对象;
21.mac为蓝牙设备mac地址,占6字节,其是唯一的设备地址;
22.pid为产品product id,占4字节,根据产品类型分配;
23.ver为产品版本号,占3字节;
24.checksum为校验码,占1字节,checksum=cid fid mac pid ver。
25.进一步的,编程机根据pid产品product id,判断多个编程模块的mesh节点之间是否需要数据交互,如果需要数据交互,则依次给每个编程模块发送数据包,编程模块的mesh节点收到数据包后,解析出数据包中的opd和uca信息,即可将相应数据发送给opd和uca对应的编程模块。
26.进一步的,编程机身份信息的数据包包括head、length、pid、opd、uca、checksum;
27.head为数据帧起始字节,占1字节;
28.length为数据长度,占2字节;
29.pid为产品product id,占4字节;
30.opd为对方编程模块的mesh节点操作码,占2字节;
31.uca为unicast address,对方编程模块的mesh节点的网络地址,占4字节;
32.checksum为校验码,checksum=pid opd uca。
33.本发明相比现有技术优点在于:
34.本发明提供一种使用方便、便于组网,多模块灵活配置大大提高可玩性。
35.本发明通过设置的nfc标签来存储特定数据,进行有效设备识别,辨别出相应编程模块的类别,并能有效加快mesh组网。相应编程模块加入编程机所在的mesh网络中,实现入网,并更具数据包进行关系绑定,完成组网配置。
附图说明
36.图1为本发明的流程示意图;
37.图2为本发明的mesh组网中编程模块之间数据交互的流程图。
具体实施方式
38.下面结合附图和具体实施方式对本发明进一步说明。
39.如图1至图2所示,一种通过nfc配置mesh的方法,其特征在于:包括编程机和编程模块;编程模块上设置nfc标签,编程机上设置nfc读卡芯片;编程机可同时读取多个编程模块;编程模块包括动作模块、参数模块、事件模块、运算模块、控制模块和自定义模块。具体的如编程机同时读取到一个传感器设备即控制模块和一个智能灯设备即动作模块,两者都需要入网,则判断为智能灯设备需要使用传感器设备的数据,在入网后,根据设备控制策略绑定两者关系。
40.具体的,编程机和编程模块加入mesh网络的步骤如下:
41.101)判断编程模块数量步骤:编程机通过nfc读卡芯片读取编程模块的mac地址和身份id,并向编程模块发送确认数据包;
42.当编程机仅读取到一个编程模块发出的设备mesh数据包时,则进行入网操作;当编程机读取到有两个及以上的编程模块发出的设备mesh数据包时,编程机记录编程模块的mac地址和身份id,再进行入网操作;
43.其中,编程模块的主控芯片通过中断,来判断动态nfc标签是否被编程机上设置的nfc读卡芯片进行了读取操作。
44.102)入网步骤:编程机将通过蓝牙扫描编程模块和通过动态nfc标签读取的mac信息进行匹配,确认需要发送信息的编程模块。而编程模块的动态nfc标签存储的数据格式包括head、length、cid、fid、mac、pid、ver、checksum;
45.head为数据帧起始字节,占1字节;
46.length为数据长度,占2字节;
47.cid为厂商身份id,占3字节,自主分配给第三方;即由主导公司分配给第三方,一般主导公司的cid为0x000001。
48.fid为功能码,占2字节,用于表示当前这个nfc标签的所属对象;如0x0001表示nfc标签的所属对象的编程模块,即将动态nfc标签与编程模块对应上。
49.mac为蓝牙设备mac地址,占6字节,其是唯一的设备地址;
50.pid为产品product id,占4字节,根据产品类型分配;
51.ver为产品版本号,占3字节;如0x01 0x00 0x05表示版本1.0.5。
52.checksum为校验码,占1字节,checksum=cid fid mac pid ver。
53.1octet2octet3octets2octets6octets4octets3octets1octetheadlengthcidfidmacpidverchecksum
54.表1
55.编程模块通过动态nfc标签读取编程机发出的确认数据包后,并进行复位操作;编程机将包含编程机身份信息的数据包发送给编程模块,编程模块根据收到的编程机身份信息的数据包加入编程机所在的mesh网络中。
56.103)nfc判断入网步骤:编程机通过nfc读卡芯片读取所有编程模块联网信息,以此编程模块是否全部入网,如有部分未入网,重复步骤102)进行入网操作;
57.104)身份绑定步骤:编程机根据预设的身份信息的分类,将连入编程机所在mesh网络的编程模块进行关系绑定,完成组网配置。这之中的数据自然是直接一开始就设定好
的。编程机根据pid产品product id,判断多个编程模块的mesh节点之间是否需要数据交互,如果需要数据交互,则依次给每个编程模块发送数据包,编程模块的mesh节点收到数据包后,解析出数据包中的opd和uca信息,即可将相应数据发送给opd和uca对应的编程模块。
58.具体的,编程机身份信息的数据包包括head、length、pid、opd、uca、checksum;
59.head为数据帧起始字节,占1字节;
60.length为数据长度,占2字节;
61.pid为产品product id,占4字节;
62.opd为对方编程模块的mesh节点操作码,占2字节;
63.uca为unicast address,对方编程模块的mesh节点的网络地址,占4字节;
64.checksum为校验码,checksum=pid opd uca。
[0065][0066]
表2
[0067]
在配置组网过程中主要包括读取方法nfcreadbledevdata()和入网回调函数ble_mesh_provisioning_callback()。
[0068]
读取方法nfcreadbledevdata()通过nfc读取蓝牙设备端身份信息,首先调用nfc_15693_poll函数进行防冲突寻卡,如果成功寻到卡,则调用readnfcblock读取nfc标签中的数据,对数据进行校验,如果校验正确,调用writenfcblock向nfc标签写入确认码。
[0069]
[0070][0071]
入网回调函数ble_mesh_provisioning_callback()用于设备扫描到未入网的ble mesh设备,会调用该函数,在该函数中,调用dev_need_prov函数判断扫描到的设备信息是否等于nfc读取到的设备信息,如果是,则发起入网邀请。在入网过程中,主机端会通过provisioner_prov_complete函数向设备端发送mesh网络信息,设备端收到信息后会假如主机端所在的mesh网络。最后,主机端会调佣provisioner_prov_link_close函数结束配网流程。
[0072]
[0073]
[0074]
[0075][0076]
[0077]
综上,本方案通过nfc进行mesh组网,并实现不同编程模块之间的配对使用。如前述编程机同时读取到一个传感器设备即控制模块和一个智能灯设备即动作模块,两者只要放上编程机,编程机上的nfc读卡芯片就能读取相应信息进行mesh组网。智能灯设备需要使用传感器设备的数据,在入网后,传感器设备就可控制智能灯设备,实现联动。这将增加了更多的可玩性,提高使用者的灵活运用能力,并大大增加了使用环境,能设计更多的游戏环境,提高趣味性,保持儿童的乐趣。
[0078]
以上所述仅是本发明的优选实施方式,未做详细说明的部分均可采用常规技术手段进行实现。自然应当指出,对于本技术领域的普通技术人员,在不脱离本发明构思的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献