物联网软件设计-2-IOT感知层软件设计实例_第1页
物联网软件设计-2-IOT感知层软件设计实例_第2页
物联网软件设计-2-IOT感知层软件设计实例_第3页
物联网软件设计-2-IOT感知层软件设计实例_第4页
物联网软件设计-2-IOT感知层软件设计实例_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

物联网软件设计

TheSoftwareArchitecture,DesignandImplementationofInternetOfThingsBy:陆寅luyin@第二章感知层核心技术与软件设计感知层的主要功能实现对物理设备的访问与控制完成物理对象的识别物品编码的采集与数字化编码校对、数据过滤和完整性检查对象识别与参数查询完成情境参数的测量将物理与化学参量转换为电信号连续的模拟电信号离散化,生成计算机可以识别的数字参量整合环境参量,生成具有实际意义的时空矢量[t,s,v]RFID应用案例分析—移库点仓应用系统 某超市仓库货品采用RFID标签记录商品信息。现需为已有的进销存系统补充开发一套移库点仓应用,在移库过程中自动识别商品名称,检测临近保质期商品,并核对商品库存。 RFID标签贴在商品包装箱侧面,标签型号为PhillipMifareOne型,编码信息记录在1#扇区无加密,数量信息和出厂日期记录在2#扇区有加密。析:

方案设计RFID卡为标准MifareOne卡,可以采用市售读卡器读取;RFID卡贴在包装箱外侧,可以在仓库通道上设置读写器天线进行读取,在移库过程中完成盘点;商品信息需要通过EPCIS效劳查询,箱内商品总量、出厂日期需要通过RFID卡字段获取;系统具备数据库接口,与现有进销存系统合并,核对库存;软件流程查询商品信息:通过互联网查询商品EPC编码;消减库存:调用进销存系统的数据库存储过程;更改库存位置:调用进销存系统的数据库存储过程;技术要点解析1:RFID卡信息读取技术要点解析1MF1卡分为16个扇区,每区有4块〔块0~块3〕共64块,按块号绝对地址编号为0~63。第0扇区的块0〔即绝对地址块0〕用于存放芯片商、卡商相关代码,已经固化不可更改。其他各扇区的块0、块1、块2为数据块,用于存贮用户数据;块3为各扇区控制块,用于存放密码A、存取控制条件设置、密码B。技术要点解析1RFID卡读取流程首先探测读写器天线感知范围内是否有卡其次根据卡片本身的序列号选定读写对象然后读取指定数据块加密块首先需要进行秘钥验证秘钥验证在卡内进行待验秘钥需传入卡内技术要点解析1SDK函数〔C语言版〕YLE280_Request寻卡YLE280_GetSerialNo取得当前M1卡的序列号YLE280_SelectCard选择指定序列号的卡片YLE280_TransKey向卡传送密钥YLE280_Authentication卡验证YLE280_ReadBlock读取指定块数据YLE280_WriteBlock写入指定块数据技术要点解析2使用ONS效劳复习:ONS解析流程技术要点解析2ONS解析操作Step1:获取EPC编码如 〔0100000000000000000001100000000001000011000000000000000100011100〕=84Step2:将EPC编码转换成ONS效劳请求URI格式〔参加urn:epc:头〕; 84urn:epc:84Step3:本地ONS解算器将此URI转换为域名形式,并发出对这个域名的NAPTR〔名称权威指针〕查询; urn:epc:8467.3.1.onsrootStep4:ONS效劳器返回一个应答列表,包含一个或多个相关效劳的URI,如: (00uEPC+pml!^.*$!://pmlexample/pml.xml!.); (00uEPC+html!^.*$!://pmlexample/good.asp!.);Step5:本地ONS解算器从返回的NAPTR记录中提取需要的EPCIS效劳器〔PML效劳器〕URI,返回给本地效劳器, 〔://pmlexample/pml.xml〕Step6:本地效劳器获取对应的pml.xml文件,启用XML工具包进行解析,提取所需信息。技术要点解析2ONS数据格式和操作算法目前的ONS标准中还不是把整个EPC作为查询条件它停止在对象分类编码级别上也就是将EPC中的版本号、域名管理者、和对象分类这三个局部作为查询条件。ONS查询格式〔将EPC编码转换为ONS查询请求字符串〕:将EPC字段转化为IP地址格式字符串,如:84在串的头部加上URI协议头“urn:epc:〞,如:urn:epc:84本地ONS解算器将ONS的URI转换为域名形式,通过DNS协议提交查询请求去除协议头,如:84去除序列号字段,仅保存版本号、域名管理者和对象分类字段:如1.3.67逆序,生成域名头,如:67.3.1在底层域名后加上ONS根域名,如67.3.1.onsroot通过标准DNS效劳,进行NAPTR查询技术要点解析2ONS应答格式: ONS的查询答复是一个或者多个NAPTR记录,典型的字段格式如下表所示顺序优先级标记服务正则表达式代替者00uEPC+pml!^.*$!http://www.pmlexample.cn/pml.xml!.00uEPC+html!^.*$!http://www.pmlexample.cn/good.asp!.技术要点解析2///////////////////////////////////////////////////////////ONS查询发送函数importjavax.naming.*;publicStringLookupONS(StringDomainInput)throwsNamingException{ Stringresult=""; DomainInput="67.3.1.onsroot"; Hashtableenv=newHashtable(); env.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.dns.DnsContextFactory"); env.put(Context.PROVIDER_RUL,"dns://21:53"); //注意区域ONS效劳器布设在21:53 DirContextdirContext=newInitialDirContext(env); Attributesattrs=dirContext.getAttributes(DomainInput,newString[]{"NAPTR"}); for(NamingEnumerationae=attrs.getAll();ae!=null&&ae.hasMoreElements();){ Attributeattr=(Attribute)ae.next(); NamingEnumeeratione=attr.getAll(); while(e.hasMoreElements()){ Stringelement=e.nextElement().toString(); result+=element; } } returnresult;}技术要点解析3与现有系统接口新增的移库点仓应用需要访问已有的进销存系统的数据库。接口形式与进销存系统的规模与实现模式有关。在系统规模较小时,数据库通常以关系数据库的形式构建。可以使用ADO技术,以client/server形式直接进行操作。建议使用数据库内建存储过程完成数据更改和插入,以保证数据库完整性和数据正确性;在系统规模较大时,数据库往往以网络数据库的形式发布访问接口。此时需要通过CGI接口完成数据库操作。技术要点解析4多平台编程数据交换Question:读写器只提供了C语言动态链接库,Java提供完备的网络Beans、并可增补ONS效劳Beans.如何将读取到的EPC编码传递给Java语言实现的ONS查询效劳?Answer:异构进程间通信与数据共享“命名管道〞通信操作系统需要支持管道效劳;需要解决数据格式问题;技术要点解析4网络通信数据共享通过简单的Socket编程,完成数据传递Java语言Socket编程;建立SocketServer;C语言Socket编程;在读取EPC编码后启动SocketClient,向ONS查询进程传递EPC编码;可以直接查询IP地址格式的字符串;传递的字符串需要组织成自定义的Socket消息格式:消息头分割符消息数据(cmd):(data)技术要点解析4本地键盘缓冲区数据传递技术要点解析4可用FindWindow()函数找到ONS查询效劳程序窗口在查询窗口中设置EDIT组件,用于接收发送来的字符EDIT组件响应“On-RETURN〞按键事件;技术要点解析4#include<WinUser.h>#include<Windows.h>voidmain(){ Sleep(3000); keybd_e

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论