CN101030906A - 一种无线近距离人群识别感应机及网上配套信息交流系统 - Google Patents
一种无线近距离人群识别感应机及网上配套信息交流系统 Download PDFInfo
- Publication number
- CN101030906A CN101030906A CN 200610123082 CN200610123082A CN101030906A CN 101030906 A CN101030906 A CN 101030906A CN 200610123082 CN200610123082 CN 200610123082 CN 200610123082 A CN200610123082 A CN 200610123082A CN 101030906 A CN101030906 A CN 101030906A
- Authority
- CN
- China
- Prior art keywords
- induction machine
- passive
- broadcast
- data
- request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种无线近距离人群识别感应机及网上配套信息交流系统,它属于无线通信技术领域。本感应机由计算控制模块、存储模块、按键、温度传感器、无线收发模块、USB总线接口、显示模块组成,网上配套信息交流系统由客户端和服务器端组成。每个感应机设一个唯一的数字编号,另外还有一个授权密码,机主通过该编号彼此区分,另用一个数字编码来区分不同的识别用途,只有同一编码的感应机(同类型感应机)才能彼此识别感应和接收保存对方机主资料。利用本发明可以不受地域和空间的限制,同类型感应机碰到一起就可以自动感应交流,为相互陌生的人之间提供了一种信息交流的方式和平台,增进人们交流交往,解决单身男女婚配难题,促进社会和谐。
Description
技术领域
本发明涉及无线通信技术领域,特别是涉及一种无线近距离人群自动识别感应的技术。
背景技术
当今无线通信技术发展非常迅速,如以话音业务为主的移动电信业务,从2G、2.5G、3G,不断向宽带移动数据通信发展,但技术复杂,成本高昂。而以计算机数据通信为主的无线网络,因为不需要高速移动,故多采用免申请牌照的频段,成本就低得多。在无线网络通信中,又以短距离无线通信使用较为广泛,包括蓝牙技术(Bluetooth)、超宽带(UWB)、IEEE 802.11X、ZigBee等等,其中ZigBee主要用在成本低、体积小、功耗小、传输速率低的场合,其物理层和MAC层协议采用IEEE802.15.4协议标准,网络层由ZigBee技术联盟制定,应用层则根据用户自己的需要进行开发。
识别感应机的应用场合与ZigBee类似,但又有自己的特殊性,主要是通信具有随机性偶发性爆发性,机器之间彼此对等不能分主次,因此不能采用ZigBee的协议。识别感应机只在物理层采用IEEE 802.15.4协议标准,MAC层则自己定义,并且不设置网络层。
目前大龄单身男女越来越多,人们要找到合意的对象似乎越来越困难。传统的婚介服务,每家人数都很有限,选择余地并不大,而且约人被约都要去婚介所,时间上不合算,几次下来就没心劲了。网络交友虽然发展很快,但现有的网络交友除了搜索这个寻人方法也别无良策,提供资料的担心隐私泄露太多因而不愿写多少,找人的看搜索出来的资料就非常空泛,搜来看去,依然是雾里看花,所以目前网络交友缺乏提供真实详细资料的吸引力,也就没有了去积极找人的驱动力。
其实人们每天在各种公共场合都会碰上形形色色的陌生人,或者因为来去匆匆,或者因为害羞,或者出于礼貌,相互之间很少有机会打声招呼,更不用说彼此自我介绍相互认识了。也有的虽然知道名字,可是因为没机会深入了解,而不知道他是否就是你寻找的那位,或者是否能成为你潜在的客户或者好朋友。但也许就在人们每天碰到的陌生甚至不太陌生的人当中,就有彼此都在苦苦追寻的很合意的男女对象,或者彼此都非常乐意交往的朋友,却轻易错过了。
识别感应机可以让任何公共场合都成为机主找对象交朋友的场所,完全不受地域和空间的限制,机主就是去完全陌生的城市都有机会在那里交到好运。识别感应机除了用在男女找对象和交朋友,也可用在民间组织成员之间的身份识别和交流当中。
识别感应机可以做成单独的产品形态,为使机主更乐意携带,还可增加时钟、日历、数字温度计等功能。也可以将人群识别感应功能结合进手机、PDA、MP3等随身携带的数码产品当中。
发明内容
本发明提出了一种无线近距离人群识别感应机及网上配套信息交流系统,感应机都设一个唯一的数字编号,机主通过该编号彼此区分,用一个数字编码来区分不同的识别用途,只有同一编码的感应机(同类型感应机)才能彼此识别感应和接收保存对方机主资料。
为了实现发明目的,采用的技术方案如下:
1、一种无线近距离人群识别感应机
1.1整体结构
它包括计算控制模块、存储模块、按键、温度传感器、无线收发模块、USB总线接口和显示模块:
计算控制模块用于对整个装置进行组合控制,一般用8位MCU;
存储模块用于存储信息,它包括程序存储器、资料存储器、特定信息存储器及接收缓存数据存储器;
按键用于感应机的交互操作,它包括“退出(取消)”、“选择(提交)”、“前移”、“主选择”、“后移”、“开关收发机”、“开关感应机”、“符号”、“0~9”、“A~M”和“N~Z”按钮;
温度传感器信号经过A/D转换器传入计算控制模块以检测温度;
无线收发模块用于感应机之间进行无线通信信号的发送和接收,可以用单独的无线收发芯片,也可以用集成了无线收发功能的单片机即射频SoC片上系统,需另接天线;
USB总线接口用于连接感应机和PC机,实现数据传输,为USB标准通信接口;
显示模块用于感应机的交互显示,可以用单色或者彩色LCD;
感应机的各种功能需要通过内部软件来实现。
1.2无线通信协议
物理层协议规范:以IEEE802.15.4标准物理层协议规范为基准,定义物理层协议数据单元(PPDU)数据帧的格式、数据发送和接收服务原型函数以及设置管理服务原型函数;
MAC层协议规范:主动广播和被动广播通信,时序状态和时序同步控制,MAC层服务规范,主动广播竞争算法和被动广播竞争算法,MAC帧结构,安全方案等等;
应用层协议规范:时序状态及定时管理、应用数据结构、接受信息缓存、日历时钟等。
2、无线近距离人群识别感应机网上配套信息交流系统
它包括客户端和服务器端,客户端用于机主注册、登陆、填写修改资料和查询机主信息等操作;服务器端用于储存机主资料以及登录、交往等备案信息,并根据机主的要求的操作要求提供响应服务。
本发明有益效果:
1)不受地域和空间的限制,同类型感应机碰到一起就可以自动识别感应交流,留下可以深入交往的线索。
2)为男女找对象交朋友提供一种方便的新的方式,增进人们交流交往,解决单身男女婚配难题,促进社会和谐。
附图说明
图1为识别感应机结构框架图;
图2为识别感应机整体功能框架图;
图3为识别感应机按键结构图;
图4为识别感应机无线通信协议示意图;
图5为MAC层时序状态转换图;
图6为感应机之间时序同步控制图;
图7为主动广播竞争算法流程图;
图8为被动广播竞争算法流程图;
图9为感应资料接收处理流程图;
图10为PC机与感应机USB通信操作示意图;
图11为识别感应功能加到手机中的实例图;
图12为识别感应功能加到PDA中的实例图;
图13为识别感应功能与MP3结合在一起的实例图;
图14为MCU和无线收发分开设计实例一图;
图15为MCU和无线收发分开设计实例二图;
图16为MCU和无线收发分开设计实例三图;
图17为MCU和无线收发分开设计实例四图;
图18为MCU和无线收发分开设计实例五图;
图19为MCU和无线收发分开设计实例六图;
图20为使用射频SoC设计实例一图;
图21为使用射频SoC设计实例二图;
图22为使用射频SoC设计实例三图;
图23为网上配套信息交流系统流程图。
具体实施方式
下面结合附图对本发明进行进一步阐述。
一、硬件设计说明
如图1所示为无线近距离人群识别感应机的整体结构图,它包括计算控制模块、存储模块、按键、温度传感器、无线收发模块、USB总线接口和显示模块。
1.1人群识别感应机做成独立的产品形态
根据当前相关硬件芯片技术的进展和特点,可对识别感应机功能需求做进一步概括和整合:如图2所示8位MCU;2.4G频段无线通信;程序存储和资料存储都用闪存,32KB以上;接收缓存和数据存储,6.5KB以上静态RAM;机器编号等特定信息存储用EEPROM,如果不包括显示字库(采用符合国家标准的汉字字库,直接与LCD显示及控制模块放一块,与MCU通过SPI或I2C串行总线连接)则需要64B,如果包括小部分显示字库(LCD显示及控制模块本身不带字库)则需要8KB;看门狗定时器;低功耗的模拟温度传感器;96×96像素LCD显示及控制,如果不另外提供显示字库则需带符合国家标准的汉字字库;11个按键,考虑直接连到MCU的I/O口上;如果要提供USB标准通信接口,可采用USB接口控制芯片以简化USB通信软件设计。具体说来,可以考虑以下方案:
1.1.1 MCU和无线收发分开用不同芯片
选用单片无线收发芯片解决物理层通信的基本问题,如NORDIC半导体公司的nRF24L01、nRF24AP1,CHIPCON的CC2400、CC2420,Freescale的MC13192等。
选用的MCU则应尽可能集中更多的其它功能需求,尤其是存储、通信接口、I/O口、定时器、ADC、看门狗等功能需求,能尽量集成在MCU当中,减少外围电路,降低功耗。
选用独立的A/D转换器组件价格比较贵(可了解一下低功耗串行单通道8位ADC MAX1115价格),但选用独立的串行总线Flash存储器和EEPROM存储器价格都可以接受。为了感应机维护和设置的灵活性,EEPROM可以与MCU分开,使用独立的组件,可以单独往里面写数据。如果要降低成本,可以不提供数字温度计功能,因此MCU可以不带A/D转换器,外面也不用温度传感器。
1.1.2使用集成了无线收发功能的单片机即射频SoC(片上系统)
射频SoC(片上系统)将无线通信高频部分电路全部集成到了组件内部,从无线单片机到天线之间,只需要连接几个普通零件,这样硬件设计工程师可以不需要太多高频方面的经验,而且在微控制器和高频线路间采用特殊设计,可将数字电路对高频通讯的影响减低到最小。随着芯片集成度的提高,将更多的硬件功能集中到一个芯片内,也能有效地降低总体功耗和总体成本,减少硬件所占用的空间,更有利于设计微型化的随身设备。
1.1.3按键
如图3所示,为了简化设计,识别感应机本身可以不直接支持中文输入方法。大概包括以下按键:
1)开机和关机——共用一个;
2)打开无线收发,键控主动广播,关闭无线收发——共用一个;
3)主选择按键,上下(或前后)移动——共三个;
4)选择(提交),退出(取消)——共两个;
5)0~9,a~m,n~z,标点符号——共四个。
总共需安排11个按键。可以直接与MCU的I/O口相连,通过程序消除抖动和进行扫描控制。如果选用的LCD控制模块本身还带有键盘扫描控制功能,就直接利用它操作键盘。1)类按键和2)类按键最好通过外部中断控制,3)、4)、5)类按键则在程序中直接通过查询进行扫描,开机和关机以及打开和关闭无线收发还应有一个较长的按键保持延迟时间以免误操作。
1.1.4数字温度计:温度传感器和模数转换器
温度传感器可以选用Maxim/Dallas的低电压模拟温度传感器MAX6607/MAX6608,电源电压1.8V-3.6V,温度范围-20℃-+85℃,负载电流8μA,+20℃到+50℃之间精度为±0.6℃,0℃到+70℃之间精度为±0.7℃。
可以选用带ADC功能的MCU对模拟输出温度进行模数转换,也可选用低端的独立模数转换器,如Maxim/Dallas的低功耗串行8位ADCMAX1115,电源电压2.7V-3.6V,100KHz采样速率,SPI/QSPI/MICROWIRE兼容串行接口,在100ksps时负载电流175μA,在+3V和10ksps时负载电流18μA,断电模式下1μA。
1.1.5无线收发模块
用成熟的商品化的单片无线收发芯片,2.4GHz ISM频段,收发一体,功耗低,外围电路简单,直接连接UART串口,接收灵敏度高,状态转换时间短,芯片本身最好对无线通信物理层协议提供方便直接的支持。
1.1.6 USB总线接口
选用USB总线接口芯片如CH372V,3.3V电源电压,工作状态电源电流最大15mA,低功耗状态电源电流一般为0.1mA,能通过其被动并行接口,很方便地挂接到各种单片机、DSP、MCU的系统总线上,并且可以与多个外围器件共存。
1.1.7显示模块
为了减少功耗,降低成本,用FSTN单色LCD显示,可以不带背光,分辨率大概定在96×96像素。控制芯片可自带汉字字库和ASCII字符集,也可以不带字库,而是利用EEPROM自定义有限的字库。与MCU之间可通过并行接口或SPI/I2C串行接口相连。如果MCU选用的是低功耗LCD微控制器,则只需加上LCD显示板及字库。批量生产时最好直接找厂商定做。
二、无线通信协议设计
人群识别感应机是一种比较特殊的无线通信应用,具有随机性偶发性爆发性,机器之间彼此对等不能分主次,现有的国际标准无线通信协议都不能很好地满足这种需要。为了简化功能,尽量节省软硬件资源,对其无线通信协议进行了特别的设计(如附图4所示)。
无线通信协议包括物理层、链路层(MAC层)和应用层,机器之间只通过广播进行通信,彼此不需要组成任何形式的网络结构,因此不设置网络层,大大简化了整个协议的功能。
2.1物理层协议规范
物理层协议包括无线通信规范、数据发送和接收服务、无线收发设备收发信道设置管理服务等方面的内容。无线通信规范包括频率范围、调制方式、信道分配、传输速率、发射功率、接收灵敏度、发射接收状态转换时间、差错向量、接收信号中心频率误差、发射功率和接收机最大输入电平、接收机能量检测、链路品质信息、信道检测评估等内容。数据发送和接收服务以特定的物理层协议数据单元帧结构完成比特字节流数据的发送和接收。设置管理服务包括设置无线收发机工作状态、能量检测、信道检测评估、读写物理层属性等内容。
2.1.1以IEEE 802.15.4标准物理层协议规范为基准
IEEE 802.15.4标准所使用的频率范围主要为868/915MHz和2.4GHz ISM频段,在中国大陆规定使用2.4GHz频段。2.4GHz频段定义了16个信道,数据传输速率为250kbps,采用16相位准正交调制技术,并使用O-QPSK的调制方法,接收机灵敏度要达到-85dBm或更高,接收机临近信道最小抗干扰电平为0dB,交替信道最小抗干扰电平为30dB。从发射到接收和从接收到发射状态转换时间应小于aTurnaroundTime,通常该值为12个符号周期,接收信号中心频率误差最大为±40ppm,最小发射功率为-3dBm,接收机最大输入电平应大于等于-20dBm。信道检测评估有3种方法可以选择,能量检测阈值最多超出协议标准接收机灵敏度的10dB,评估检测时间等于8个符号周期。
2.1.2物理层采用非标准通信协议
一般直接使用商品化单片无线收发芯片进行设计开发,这类芯片供应商本身都有非常丰富的无线通信经验,其提供的芯片在无线通信传输方面会有自己的一些考虑,不一定完全遵照标准通信协议的规范,芯片集成的功能也不一定完全一致。
因此物理层协议应该首先充分考虑所选用无线收发芯片的自身功能,在此基础上再定义数据发送和数据接收服务、设置管理服务等。
无线频率还是选用2.4GHz ISM频段,特定频率的无线收发芯片在无线通信规范、底层数据发送和接收、收发设备收发信道设置管理等方面都会有比较妥善的考虑。在此基础上,可参照IEEE 802.15.4标准通信协议,定义物理层协议数据单元(PPDU)数据帧的格式、数据发送和接收服务原型函数以及设置管理服务原型函数。
2.2 MAC层(链路层)协议规范
人群识别感应机之间只通过广播进行通信,因此广播数据帧的结构、出错校验和安全,广播时序控制,感应机之间广播通信的同步等是MAC层协议规范的主要内容。
2.2.1广播(BroadCast)分类
广播通信包括主动广播和被动广播两大类,主动广播又分键控主动广播和定时主动广播。人群识别感应机碰一块是随机的偶然的,在某一个区域空间内又可能是爆发性的,彼此之间完全对等不能分主次,因此通过定时主动广播来自动启动一轮通信,每台机器的主动广播竞争周期(ActiveBCCompetitivePhase)在主动广播定时下限(aMinActiveBCTime)和主动广播定时上限(aMaxActiveBCTime)之间随机选择,因此不同感应机碰一块时,发起定时主动广播的机器也是随机的。当然,机主认为需要时也可以随时发起主动广播,此称之为键控主动广播。在某一个空间范围内,当感应机收到别的机器的主动广播之后,就终止自己的主动广播竞争周期而启动被动广播竞争周期(PassiveBCCompetitivePhase),在等到空闲信道后进行被动广播。
2.2.2时序状态和时序同步控制
MAC层通过时序状态进行控制和管理(如图5所示时序状态转换图),感应机时序状态包括:
1.收发机关闭状态(TRXClosedPhase)
收发机处于关闭状态,不发送和接收任何信息。
2.主动广播竞争周期(ActiveBCCompetitivePhase)
收发机开启复位时或者被动广播竞争周期结束时都将进入主动广播竞争周期。在该周期内可接收信息,期间如果收到别的机器的主动广播,将终止自己的主动广播竞争周期而启动被动广播竞争周期。期间如果未收到别的机器的主动广播,周期结束时启动本机定时主动广播,主动广播发送成功后也进入被动广播竞争周期。
3.主动广播发送周期(ActiveBroadCastPhase)
机主启动键控主动广播或机器启动定时主动广播后进入主动广播发送周期,期间通过退避算法等到空闲信道后立即发送主动广播信息,然后进入被动广播竞争周期。
4.被动广播竞争周期(PassiveBCCompetitivePhase)
机器在发送主动广播或者在主动广播竞争周期内收到了别的机器的主动广播之后,将进入被动广播竞争周期,期间通过退避算法等到空闲信道后进行一次被动广播发送。等待期间能有效接收其它机器的信息。
5.被动广播发送(PassiveBroadCastPhase)
在被动广播竞争周期之内,通过退避算法等到空闲信道后发送,每台机器在一个被动广播竞争周期内只进行一次广播。如果当时接收的主动广播在机器的接收缓存中还有保留,虽然也转入被动广播竞争周期,但本机将不再进行被动广播发送。
感应机除了在关闭状态、主动广播发送状态、被动广播发送状态不能接收其它感应机的信息,在其它状态其它周期内都能有效接收信息。
感应机之间时序同步控制如图6所示。
2.2.3 MAC层服务规范
MAC层服务包括状态转换管理,周期定时管理,广播数据发送和接收,广播竞争等服务。MAC层服务的原型函数如下:
1.收发机开启请求ML-TRX-START.request
应用层通过它请求MAC层开启收发机。
2.收发机开启确认ML-TRX-START.confirm
MAC层通过它向应用层报告开启收发机请求执行结果,具体定义为ML-TRX-START.confirm(status),其中参数status为枚举类型(SUCCESS,ISOPEN),如果开启成功,接下来则应启动主动广播竞争周期。
3.收发机关闭请求ML-TRX-CLOSE.request
应用层通过它请求MAC层关闭收发机。
4.收发机关闭确认ML-TRX-CLOSE.confirm
MAC层通过它向应用层报告关闭收发机请求执行结果,具体定义为ML-TRX-CLOSE.confirm(status),其中参数status为枚举类型(SUCCESS,ISCLOSED),如果关闭成功,时序状态将转为收发机关闭状态。
5.启动主动广播竞争周期请求ML-ACTIVE-BCC-START.request
应用层通过它请求MAC层启动主动广播竞争周期,将设置时序状态为主动广播竞争周期,并在主动广播定时下限和主动广播定时上限之间随机选择一个时间作为周期长度,然后将收发机设置为接收状态。
6.启动主动广播竞争周期确认ML-ACTIVE-BCC-START.confirm
MAC层通过它向应用层报告启动主动广播竞争周期的执行结果,具体定义为ML-ACTIVE-BCC-START.confirm(status,PhaseDuration),其中参数status为枚举类型(SUCCESS,TX-ON),参数PhaseDuration为此次主动广播竞争周期的定时时间。
7.启动被动广播竞争周期请求ML-PASSIVE-BCC-START.request
应用层通过它请求MAC层启动被动广播竞争周期,具体定义为ML-PASSIVE-BCC-START.request(state),参数state(本机广播情况)为枚举类型(HASDONE已广播,NOTNEED不需要,WAITTODO等待广播,RESERVED保持原先状态),决定进入被动广播竞争周期后还要不要进行被动广播。时序状态将设置为被动广播竞争周期,其周期长度将设置为被动广播定时时间(aPassiveBCTime)。收发机将设置为接收状态,如果需要进行被动广播,还将启动被动广播竞争算法。
8.启动被动广播竞争周期确认ML-PASSIVE-BCC-START.confirm
MAC层通过它向应用层报告启动被动广播竞争周期的执行结果,具体定义为ML-PASSIVE-BCC-START.confirm(stams,PhaseDuration),其中参数status为枚举类型(SUCCESS,TRX-OFF,TX-ON),参数PhaseDuration为被动广播竞争周期的定时时间。
9.主动广播请求ML-ACTIVE-BROADCAST.request
应用层通过它请求MAC层进行主动广播,具体定义为ML-ACTIVE-BROADCAST.request(type,msduLength,msdu),其中参数type为枚举类型(KEYCONTROL,TIMING),表示主动广播启动类型(键控还是定时)。如果是键控启动,将首先检查收发机状态,如果是关闭状态,则先开启。然后使用主动广播退避算法等到空闲信道后再将MAC层服务数据单元(MSDU)广播发送出去(除非出错不能发送)。
10.主动广播确认ML-ACTIVE-BROADCAST.confirm
MAC层通过它向应用层报告主动广播请求的执行结果,具体定义为ML-ACTIVE-BROADCAST.confirm(status),其中参数status为枚举类型(SUCCESS,TIMEOUT,FRAME-TOO-LONG)。
11.被动广播竞争请求ML-PASSIVE-BC-COMPETE.request
在启动被动广播竞争周期后,如果本机还需要进行被动广播,则通过它请求MAC层参与被动广播竞争,期间应用退避算法查询等待空闲信道。
12.被动广播竞争确认ML-PASSIVE-BC-COMPETE.confirm
MAC层通过它向应用层报告被动广播竞争结果,具体定义为ML-PASSIVE-BC-COMPETE.confirm(status),参数status为枚举类型(SUCCESS,TIMEOUT)。
13.被动广播请求ML-PASSIVE-BROADCAST.request
应用层通过它请求MAC层进行被动广播,具体定义为ML-PASSIVE-BROADCAST.request(msduLength,msdu)。广播发送完再将收发机设置为接收状态。
14.被动广播确认ML-PASSIVE-BROADCAST.confirm
MAC层通过它向应用层报告被动广播请求的执行结果,具体定义为ML-PASSIVE-BROADCAST.confirm(status),其中参数status为枚举类型(SUCCESS,TIMEOUT,FRAME-TOO-LONG)。
15.广播数据接收指示ML-BROADCAST.indication
MAC层成功地接收到其它感应机的广播数据后,通过它向应用层进行报告,具体定义为ML-BROADCAST.indication(msduLength,msdu,msduLinkQuality)。
16.MAC层可读属性读取请求ML-ATTR-GET.request
应用层通过它读取MAC层属性值,具体定义为ML-ATTR-GET.request(Attribute),其中参数Attribute为MAC层属性标识符。
17.MAC层可读属性读取确认ML-ATTR-GET.confirm
MAC层通过它返回MAC层属性值,具体定义为ML-ATTR-GET.confirm(status,Attribute,AttributeValue),参数status为枚举类型(SUCCESS,UNSUPPORTED-ATTRIBUTE,INVALID-PARAMETER),Attribute为MAC层属性标识符,AttributeValue为返回的属性值。
18.MAC层可写属性设置请求ML-ATTR-SET.request
应用层通过它设置MAC层属性值,具体定义为ML-ATTR-SET.request(Attribute,AttributeValue),其中参数Attribute为MAC层属性标识符,AttributeValue为设置的属性值。
19.MAC层可写属性设置确认ML-ATTR-SET.confirm
MAC层通过它报告属性设置执行结果,具体定义为ML-ATTR-SET.confirm(status,Attribute),参数status为枚举类型(SUCCESS,UNSUPPORTED-ATTRIBUTE,INVALID-PARAMETER),Attribute为MAC层属性标识符。
2.2.4主动广播竞争算法和被动广播竞争算法
主动广播竞争(ActiveBCCompete)在进行主动广播发送前进行,如果没有空闲信道,则延迟一个退避周期(aUnitBackoffPeriod)再对信道进行检测评估,如果为空,则成功退出;如果不为空,则继续延迟,直至达到主动广播最大退避周期数(aMaxActiveBCBackoff)后超时退出。退避周期应根据具体应用的平均广播发送接收处理时间(aBCTXRXHandleTime)确定,主动广播最大退避周期数则可参照最大人群指数(aMaxPE)确定。主动广播竞争算法流程如图7所示。
启动被动广播竞争周期时,如果本机还需要进行被动广播则启动被动广播竞争(PassiveBCCompete)。以人群指数(macPE)来描述某时刻某空间内的人数(2macPE-1),则使用最小人群指数(aMinPE)和最大人群指数(aMaxPE)来大致界定某种具体应用的通信规模。被动广播竞争退避指数(BE)的初始值也设为aMinPE,则先在(2BE-1)范围内随机延迟一个退避周期(以aUnitBackoffPeriod为单位),然后对信道进行检测评估,如果空闲,则成功退出;如果不为空,则递增BE(直至aMaxPE)继续延迟退避,直到退避次数达到被动广播最大退避次数(aMaxPassiveBCBackoff)后超时退出。aMinPE和aMaxPE应根据具体应用及经验估算确定,最大退避次数则应根据被动广播定时时间(aPassiveBCTime)来确定,被动广播竞争应该在被动广播竞争周期结束前终止,而aPassiveBCTime则依据aMaxPE和平均广播发送接收处理时间确定,以保证所有感应机都能广播一次。被动广播竞争算法流程如图8所示。
2.2.5MAC帧结构
MAC帧(即MAC层协议数据单元)的格式如表1所示,每个MAC帧包括以下几个基本部分:①MAC帧头,包括帧控制;②MAC帧载荷,放置具体的信息,长度可变;③MAC帧尾,包括帧校验序列(FCS)。
MAC帧传输顺序是从左到右,从低到高。在多个字节的字段中,优先发送和接收最低有效字节,而在每个字节中优先发送最低有效位(LSB)。
表1MAC层帧的结构 表2MAC帧控制域格式 表3MAC帧类型
2字节 | 可变 | 2字节 |
帧控制 | 帧载荷 | FCS |
MHR | payload | MFR |
位:0-1 | 2-3 | 4-15 |
帧类型 | 保留 | 识别用途 |
00键控主动广播 | 10被动广播 |
01定时主动广播 | 11保留 |
1.帧控制子域
MAC帧控制域格式如表2所示,包括帧类型和识别用途分类编码。MAC帧类型如表3所示,人群识别感应机之间只通过广播进行通信,因此定义了几种不同的广播类型。识别用途用来对不同类型的感应机进行区分,12位则可定义4096种用途的感应机。
2.帧载荷子域
放置具体的广播信息,长度是可变的。机器编号和授权密码也包括在其中。
3.帧校验序列子域(FCS)
帧校验序列子域包含16位的ITU-T CRC码,由MAC帧头和MAC帧载荷计算得到。16次方CRC生成多项式为:G16(X)=X16+X12+X5+1,生成算法如下:
(1)设M(x)=b0xk-1+b1xk-2+...+bk-2x+bk-1表示待计算校验和的序列;
(2)M(x)乘上x16,得到多项式x16M(x);
(3)对多项式x16M(x)进行模2除以(x16+x12+x5+1)运算,得余式R(x);
(4)余式R(x)的系数就是FCS域的值。
2.2.6MAC枚举值说明
MAC枚举类型定义和取值如表4所示。
表4MAC枚举值说明
枚举类型定义 | 枚举值 | 说明 |
SUCCESS | 0x00 | 表示请求操作成功完成。 |
- | 0x01~0xDF | 保留 |
TRXClosedPhase | 0xE0 | 收发机关闭状态 |
ActiveBCCompetitivePhase | 0xE1 | 主动广播竞争周期 |
ActiveBroadCastPhase | 0xE2 | 主动广播发送周期 |
PassiveBCCompetitivePhase | 0xE3 | 被动广播竞争周期 |
PassiveBroadCastPhase | 0xE4 | 被动广播发送周期 |
ISOPEN | 0xE5 | 无线收发机已经开启 |
ISCLOSED | 0xE6 | 无线收发机已经关闭 |
TX-ON | 0xE7 | 无线收发机正在发射状态 |
TRX-OFF | 0xE8 | 无线收发机处在关闭状态 |
HASDONE | 0xE9 | 启动被动广播竞争周期时本机已广播 |
NOTNEED | 0xEA | 启动被动广播竞争周期时本机不需要广播 |
WAITTODO | 0xEB | 启动被动广播竞争周期时本机等待广播 |
RESERVED | 0xEC | 启动被动广播竞争周期时本机保持原先状态 |
KEYCONTROL | 0xED | 键控启动主动广播请求 |
TIMING | 0xEE | 定时启动主动广播请求 |
TIMEOUT | 0xEF | 广播或广播竞争超时 |
FRAME-TOO-LONG | 0xF0 | 帧长度超长 |
UNSUPPORTED-ATTRIBUTE | 0xF1 | 不支持的属性 |
INVALID-PARAMETER | 0xF2 | 无效参数 |
- | 0xF3~0xFF | 保留 |
2.2.7MAC常量
表5MAC层常量
常量 | 说明 | 值 |
aBCTXRXHandleTime | 平均广播发送接处理时间 | 根据实际硬件及广播数据测试确定 |
aMinPE | 最小人群指数 | 可设为2,此时人数为3 |
aMaxPE | 最大人群指数 | 根据经验确定,如设为7,此时人数为127 |
aMinActiveBCTime | 主动广播定时下限 | 根据经验确定,如设为1s |
aMaxActiveBCTime | 主动广播定时上限 | 根据经验确定,如设为60s |
aPassiveBCTime | 被动广播定时时间 | 根据aBCTXRXHandleTime和aMaxPE确定 |
aUnitBackoffPeriod | 竞争算法退避周期基本时间 | 根据aBCTXRXHandleTime确定 |
aMaxActiveBCBackoff | 主动广播最大退避次数 | 根据经验确定,如设为5 |
aMaxPassiveBCBackoff | 被动广播最大退避次数 | 根据经验确定,如设为7 |
aMaxPassiveBCBackoff | 被动广播最大退避次数 | 根据经验确定,如设为7 |
2.2.8MAC属性
MAC属性记录MAC当前时序状态、当前周期宽度(定时时间)、当前周期计时器、被动广播竞争周期内广播发送情况等内容,如表6所示。
表6MAC属性
属性 | 标识符 | 类型 | 范围 | 描述 | 缺省值 |
macTimingPhase | 0x40 | 枚举 | TRXClosedPhase,ActiveBCCompetitivePhase,ActiveBroadCastPhase,PassiveBCCompetitivePhase,PassiveBroadCastPhase | 当前时序状态 | TRXClosedPhase |
MacPhaseDuration | 0x41 | 整型 | 主动广播竞争周期介于aMinActiveBCTime和aMaxActiveBCTime之间,被动广播竞争周期为aPassiveBCTime | 当前周期宽度(定时时间) | 主动广播竞争周期是随机选 |
macPhaseTimer | 0x42 | 整型 | 由时序状态确定 | 当前周期计时器 | 0 |
macPassiveBCState | 0x43 | 枚举 | HASDONE,NOTNEED,WAITTODO,RESERVED | 当前被动广播发送情况 | RESERVED |
2.2.9安全方案
人群识别感应机安全方面的要求不需要很苛刻,但在无线发送传输过程中信息很容易被监测监听,为了防止有人恶意窃取信息,可对无线传输的信息进行加密处理。数据在广播发送之前,选择一种AES加密算法对MAC帧载荷数据进行加密,收到广播信息后,再用同样AES算法进行解密。只对MAC帧载荷数据进行加密,MAC帧头即帧控制子域不加密,进行CRC帧校验序列计算时,是使用MAC帧头和加密后的MAC帧载荷数据计算得到FCS。
其实要上网查看他人的详细资料,有两重限制:一是自己必须有唯一的机器编号和系统登录密码,否则根本上不去;二是知道他人的机器编号和授权密码。
为了防止他人制造假冒的人群识别感应机,可采取以下安全方案:每台机器都有一个唯一的机器编号(4字节)、一个识别用途分类编码(2字节)和软件系统版本定义标记(3字节),另外再为每个生产厂家确定一个编码,每次订货生产时还得指定一个产品批次编号,然后使用上述AES加密算法对它们进行加密计算,生成内部验证码,并与机器编号等特定信息一起存放在机器当中(通常用EEPROM)。以后感应机开启复位时,用同样AES加密算法对机器编号等特定信息进行加密计算,并将计算结果与内部验证码进行比较,如果不一致则认为是仿冒,拒绝提供任何服务。
2.3应用层协议
人群识别感应机时序状态及定时管理,应用数据结构,接收信息缓存,日历时钟等内容将在应用软件设计中进行介绍。
三、软件设计
在人群识别感应机的软件设计当中,内部字符编码、计时方法、资料定义及存储数据结构、机器编号缓存处理、感应资料接收处理、时序状态和定时管理、安全管理、按键处理等方面有一些特别技巧或方法需要介绍。
3.1字符编码
人群识别感应机之间资料的发送和接收只是在感应机之间,只要彼此约定一致,感应机内部和通信时采用任何编码应该都没什么问题。但考虑到感应机要能显示汉字,而且希望感应机能通过USB接口与PC机通信,在PC机上直接对感应机资料进行读和写,因此感应机内部还是应采用符合国家标准的编码方法。因感应机没必要进行复杂的文字处理,为了节约资源提高效率,可采用早期用于简体中文的GB2312或用于繁体中文的big5。标记无线收发机状态、无线信号能量、电池电量等还需用到少量特殊图形符号,在GB2312中可能找不到合适的,则需借用其中不会用到的其它符号编码来定义。
3.2计时、时钟和日历
时钟日历处理可以用专门的时钟芯片,如Philips的PCF8563、Intersil的ISL1219/21、Maxim/Dallas的DS 1302等等,一般通过I2C串行总线与MCU连接,功耗也相当低。但为了降低硬件成本,也可以直接用MCU内部的定时器计时,方案如下:
选定一个起始时刻作为参考,如2000-01-01 00:00:00 000星期六,并将参考时刻与机器编号一道存放在EEPROM中(年[2字节整数]月[1字节整数]日[1字节整数]星期[1字节整数]时分秒毫秒都默认为0)。内部以ms为单位进行计时,记录的是当前与参考时刻之间的时间差(以ms为单位),为6字节整数,可根据该时间差和参考时刻计算当前的日历时钟。
1天=24*60*60*1000=86400000ms,时间差÷86400000,商为间隔天数,余数为当天时钟。根据间隔天数和参考年月日星期可确定日历,根据当天时钟可确定时分秒毫秒。
3.3资料定义
资料定义要根据人群识别感应机的具体用途来确定,以用于征婚交友为例,可包括:
■机主个人资料
机器编号:4个字节,内部以无符号整数形式
授权密码:6个字符(字母和数字混合)
意愿:找对象[1],交朋友[2],其他[3],一个字符(数字)
性别:男[1],女[2],一个字符(数字)
年龄:一字节整数(16~120之间)
学历:初中[1],高中[2],中专[3],大专[4],本科[5],硕士[6],博士[7],一个字符(数字)
经济:一般[1],小康[2],中产[3],富豪[4],一个字符(数字)
联系:可变长度字符串(包括汉字和符号),可设定一最大长度(如30个字符)
招呼:可变长度字符串(包括汉字和符号),可设定一最大长度(如30个字符)
■识别感应条件
意愿:找对象[1],交朋友[2],其他[3],一个字符(数字)
性别:不限[0],男[1],女[2],一个字符(数字)
年龄下限:一字节整数(16~120之间)
年龄上限:一字节整数(16~120之间)
学历:不限[0],初中[1],高中[2],中专[3],大专[4],本科[5],硕士[6],博士[7],一个字符(数字)
经济:不限[0],一般[1],小康[2],中产[3],富豪[4],一个字符(数字)
3.4资料数据存储结构
可以看出,资料包括固定长度和可变长度两种类型,以固定长度为主。固定长度包括整数类型,定长字符串,枚举类型(为了简化,基本都用一位数字字符);可变长度类型只有可变长度字符串。
感应机中要存放机主自己的个人资料和感应条件,还要能存放足够数量的感应接收到的别的机主的资料,具体可以如下考虑:
1)根据硬件存储空间实际情况为机主个人资料、识别感应条件和感应接收资料分别定义一个起始存放地址,机主个人资料和识别感应条件都为结构类型(本机机器编号为只读,一般存放在EEPROM中,不包括在机主个人资料结构当中),感应接收资料为结构数组;
2)定长资料以确定顺序放在结构类型前面,变长资料以确定顺序放在结构类型后面;
3)对每种定长资料都能累加前面资料的字节长度确定一个地址偏移值,并根据结构起始存放地址和地址偏移值进行寻址;
4)用一字节整数对个人资料和感应条件统一编号,其中特别用ASCII码中0x01-0x09(整数1~9)作可变长度资料的开始标记,如机主联系资料可标记为0x01,招呼用语可标记为0x02,因此可在定长资料后面通过搜索标记码对可变长度资料进行定位;
5)用ASCII码中0x00(NULL)标记可变长度资料结束,因此可根据变长资料开始标记和结束标记确切地找出结构当中某个可变长度资料;
6)机主个人资料和识别感应条件结构中的每一项都可以修改,修改其中某个定长资料值时不需考虑其它资料,修改变长资料值时则需要整体移动后面所有的变长资料;
7)感应接收资料为结构数组,需要存放上百条以上,其中每条内部存储都遵照②到⑤的规则,但每条开始用符号<(0x3C)标记,接下来是机器编号和其它内容,结尾时先是感应接收时间,然后再用符号>(0x3E)标记结束;
8)感应接收资料的接收时间以秒为单位用四字节整数形式存储,计算方法是用接收时刻6字节整数(毫秒计时)除以1000,得到以秒为单位的时间差;
9)机主个人资料中如果有变长资料,则以两个0x00(NULL)字节作为整个结构结束标记;
10)感应接收资料结构数组先用2字节整数记录资料条数,接收资料允许按条读取和按条删除,读寻址通过<标记、机器编号和>标记,而删除中间某条时,后面的需整体前移。
3.5感应接收机器编号缓存
在某个空域内,如公交车上,有相当多的人会在一起呆较长一段时间,如果大家都有相同用途的人群识别感应机,就会反反复复广播发送和接收,未免烦琐和浪费电池。因此要将感应接收到的机器编号缓存一段时间,如果新接收到的资料其机器编号在缓存中还有,将放弃处理。
感应接收机器编号以队列方式缓存,可预先确定一个最大长度(如1000条)和最长缓存时限(如两小时)。机器编号是4字节整数,再用2字节整数表示缓存接收时间,因此每条共6个字节。缓存接收时间这样计算:感应接收时间差÷86400000,余数为当天时钟,余数再除以60000,商即为分钟计时的缓存接收时间。因此缓存接收时间的单位是分,范围介于0~1440之间。感应机将定期删除超过缓存时限的机器编号,方法是:先计算当前的分钟计时,然后用当前分钟计时减缓存时限,如果差为正数,直接用它作判断标准,如果差为负数,则再加上1440作为判断标准,然后从缓存队列头部开始搜索,找到小于并且最接近判断标准的感应条目,将它及队列中它前面的所有感应条目都删除。如果某段时间感应接收资料密集,缓存队列已满(达到最大队列长度),再接收新资料时则需将旧资料移出(按先进先出队列方式)。
可在机器编号缓存队列前面用2字节整数记录当前缓存队列长度,或者另外定义一个2字节整数变量来记录缓存队列长度。
3.6感应资料接收处理
人群识别感应机除了在关闭状态、主动广播发送状态、被动广播发送状态不能接收其它感应机的信息,在主动广播竞争周期和被动广播竞争周期内都能有效接收信息。当查询到MAC层成功地接收到其它感应机的广播资料后,将按图9所示流程对感应资料进行接收处理。可在应用层对「匹配感应条件」进行屏蔽或使能,当设置为使能状态时,只保存符合感应条件的接收资料;当设置为屏蔽状态时,则毋需匹配直接保存(如用于两人无条件直接交换资料)。需要在感应接收资料结构数组(队列)中保存接收资料时,应在前面加上<标记,结尾处先加上以秒为单位的接收时刻(四字节整数),然后再加上>标记。
3.7机主资料广播发送
当感应机通过键控或者在主动广播竞争周期结束后竞争到主动广播发送资格,将向MAC层请求进行主动广播;当感应机在被动广播竞争周期内通过被动广播竞争获得被动广播发送资格,将向MAC层请求进行被动广播。主动广播和被动广播都是将机主个人资料连同本机机器编号提交给MAC层,将保持原来的存储结构,只是在最前面加上机器编号。
3.8资料项目、枚举类型和枚举词典定义
用一字节整数对机主个人资料和识别感应条件中的所有资料项目统一进行编号,可约定个人资料在前,感应条件在后,并且感应条件是从某个整数开始(如50,0x32)。用表7所示结构对资料项目进行定义,所有资料项目的定义组成一个结构数组。资料项目结构数组先用一字节整数记录资料项目总数(即数组大小),最后再以两个0x00(NULL)字节作为结束标记。
用表8所示结构对枚举词典进行定义,所有枚举类型的枚举值组成一个结构数组。枚举值定义结构数组先用一字节整数记录枚举值总数(即数组大小),最后再以两个0x00(NULL)字节作为结束标记。
表7资料项目定义结构
1字节 | 1字节 | 1字节 | 变长 |
资料项目 | 资料类型 | 资料长度 | 资料名称 |
统一编号,可变长度用0x01-0x09 | 包括整数、枚举类型、定长字符、变长字符等,不同枚举类型分开定义,如征婚交友之意愿、性别、学历、经济状况 | 以字节为单位的资料长度,可变长度资料用其允许的最大长度值 | 可变长度字符串,用0x00(NULL)作为结束标记 |
表8枚举词典定义结构
1字节 | 1字节 | 变长 |
枚举类型 | 枚举值 | 枚举值名称 |
与其它资料类型统一编号,征婚交友应用中包括意愿、性别、学历、经济状况等枚举类型 | 用一位数字字符,数字0通常表示条件枚举值「不限」 | 可变长度字符串,用0x00(NULL)作为结束标记 |
3.9时序状态和定时管理
应用层通过读取MAC层时序状态属性来判断当前时序状态。感应机定时功能也放在应用层,启动某个时序周期后(包括主动广播竞争周期和被动广播竞争周期)将返回当前周期宽度,然后应用层以该周期宽度作为定时时间开启定时器。
3.10安全管理
识别感应机需要在EEPROM中存储的特定信息首先包括:机器编号(4字节),识别用途(2字节),缺省授权密码(6字节),日历时钟参照起始时刻(5字节),软件系统版本(3字节),生产厂家和产品批次(二者字节长度要根据实际的编码方案来定)。然后采用对MAC帧载荷数据进行加密的相同AES加密算法对这些特定信息进行加密计算,并将计算结果作为识别感应机内部验证码附加到上述特定信息之后也存储在EEPROM当中。以后感应机每次开启复位时,用同样AES加密算法对机器编号等特定信息进行加密计算,并将计算结果与内部验证码进行比较,如果不一致则认为是仿冒,拒绝提供任何服务。
3.11按键处理
按键可分成控制键和输入键两大类,控制键通过外部中断进行处理,输入键则可在软件中通过查询进行扫描处理。开机和关机以及打开和关闭无线收发应有一个较长的按键保持延迟时间以免误操作。输入主要采用候选值枚举→前后移动→选择确认的方式,不仅枚举类型通过这种方式选择枚举值,数字、字母和标点符号也是这样输入。为了简化设计,感应机本身不直接支持中文输入方法。
3.12应用功能模块
识别感应机主要包括以下应用功能模块:
1.读取本机特定信息
包括本机机器编号、识别用途、软件系统版本、生产厂家、产品批次等等。
2.设置日期时间
设置本机时钟日历为当前标准时间。
3.机主个人资料管理
先以名称列表形式显示出所有资料项目,然后可通过前后移动选择具体资料项目进行查看或者修改,在查看资料项目时还可提供修改操作。如果感应机包括USB接口,则可将感应机与PC机通过USB接口相连,并在PC机上读取和修改机主个人资料。
4.识别感应条件管理
先为是否匹配感应条件定义一状态变量,该变量可以是使能状态或者屏蔽状态。识别感应条件管理中首先要提供的就是设置「匹配感应条件」状态,可设置为使能状态或屏蔽状态。
以名称列表形式显示出所有感应条件条目,然后可通过前后移动选择具体条目进行查看或者修改,在查看条目时还可提供修改操作。如果感应机包括USB接口,则可将感应机与PC机通过USB接口相连,并在PC机上读取和修改识别感应条件。
5.感应接收资料管理
以摘要形式列出所有感应接收资料,摘要中包括机器编号、授权密码、感应接收时刻等内容,按接收时刻逆序排列(最新接收资料排在最前面)。然后可通过前后移动选择具体的资料进行查看或者删除,在查看资料时还可提供删除操作。如果感应机包括USB接口,则可将感应机与PC机通过USB接口相连,并在PC机上读出所有感应接收资料进行备份。
6.感应机显示
用图形符号显示无线收发机开关状态,信号能量,电池电量,接收到新资料提示等状态信息。另外要显示时钟日期,温度等信息。
四、USB通信软件设计(如附图10)
五、人群识别感应机的结构选择和结合进手机等其它数码产品当中
现在人们随身携带的数码产品已经很多,人们如果随身带的东西太多也确实不太方便,因此可以将人群识别感应功能结合进手机、PDA、MP3等随身携带的数码产品当中。
5.1人群识别感应功能加到手机当中
现在手机的硬件功能已非常强,本身还带有非常成熟的嵌入式操作系统,如果是中文手机,一般还有多种相当方便的汉字输入方法,因此在手机上增加人群识别感应功能是很方便的,只需增加很少的额外成本。在硬件上,只需要增加2.4GHz无线收发芯片,做成所谓双模手机。在软件上,在手机已有的嵌入式操作系统基础上进行通信协议开发和应用开发也比直接在单片机汇编语言基础上开发要方便一些(如图11所示)。
5.2人群识别感应功能加到PDA当中
PDA运算、显示、按键、通信等硬件功能也很强,一般也带有成熟的嵌入式操作系统,有各种输入方法和应用软件,因此在PDA中增加人群识别感应功能也很方便。硬件上需增加2.4GHz无线收发芯片,可能还需要增加存储机器编号等特定信息用的EEPROM。软件上则是在PDA操作系统基础上进行通信协议开发和应用开发(如图12所示)。
5.3人群识别感应功能与MP3结合在一起
可选用功能比较强的单片MP3解码芯片作为构造整个硬件系统的基础,如Atmel公司的单片闪存MP3解码芯片AT89C51SND2C,带8位C51 MCU内核(最大时钟频率20MHz),64KB闪存,4KB EEPROM,2.3KB RAM,电源电压2.7V-3.3V,支持MultiMediaCardTM、DataFlash、SmartMediaTM、CompactFlashTM和IDE接口,支持UART、SPI和Two-wire Interface(TWI,I2C),USB 1.1,20位立体声DAC,500mW功率放大器,可通过USB或UART进行系统编程,2通道10位ADC,电池电压监控,多达32个通用I/O口,4位可中断的键盘口(可组成4*n矩阵键盘),两个16位定时器,硬件看门狗,工作温度范围-40℃-+85℃,典型操作状态下电流负载为25mA。对照人群识别感应机的硬件功能需求,只是RAM容量偏少,另外还需增加单片无线收发芯片。要做MP3则需增加足够容量的NAND闪存。芯片本身已直接支持USB 1.1通信功能,而LCD显示及控制、按键等等硬件功能,则是识别感应机和MP3都需要的,可统筹考虑(如图13所示)。
5.4结构选择
因识别感应机一旦批量生产投放市场,其数量会很大,因此也可以考虑采用手机常用的存储器MCP(多芯片封装)技术,将SRAM、闪存等存储芯片,甚至还可包括EEPROM,通过堆叠封装集成在一起,做成识别感应机专用的存储器MCP,而且从成本性能上考虑,其中每种存储器的容量都可在满足上述功能需求的基础上适当扩大。
5.4.1MCU和无线收发分开使用不同芯片的硬件设计方案可以如下考虑:
1)选用单片无线收发芯片,而闪存、SRAM、EEPROM、定时器、UART、ADC、WDT、SPI或I2C、I/O口等功能需求都集中到MCU中(如图14所示);
2)选用单片无线收发芯片,闪存、SRAM、EEPROM、定时器、UART、WDT、SPI或I2C、I/O口等集中于MCU中,外连单独A/D转换器组件(如图15所示);
3)选用单片无线收发芯片,闪存、SRAM、定时器、UART、ADC、WDT、SPI或I2C、I/O口等集中于MCU中,EEPROM使用独立组件,ADC也可分离出来(如图16所示);
4)选用单片无线收发芯片,定时器、UART、ADC、WDT、SPI或I2C、I/O口等集中于MCU中,程序存储器如果用EPROM则集成在MCU中,如果用闪存(与资料存储合一块)则既可包含在MCU中也可用独立芯片,SRAM选用独立芯片,ADC也可分离出来(如图17所示);
5)选用单片无线收发芯片,定时器、UART、ADC、WDT、SPI或I2C、I/O口等集中于MCU中,闪存、SRAM、EEPROM采用多芯片封装技术做成专用的存储器MCP,EEPROM封装在存储器MCP中或者用独立组件,ADC也可分离出来(如图18所示);
6)选用单片无线收发芯片,MCU则选用低功耗LCD微控制器,以此为基础再补足其它硬件功能需求,如EEPROM、SRAM、ADC等(如图19所示)。
5.4.2当使用射频SoC(片上系统)时,有以下几种选择:
1)CHIPCON公司(现被TI收购)的CC2430。(如图20所示)。
2)NORDIC半导体公司的nRF24E1。(如图21所示)。
3)Freescale公司的MC13212。(如图22所示)。
六、网上配套信息交流系统设计(如图23所示)
识别感应机要随身携带,不可能做得很复杂,成本也不可能太高,因此只能存放机主的简要资料,机主的详细资料就放到一个网上配套信息交流系统上。机主通过自己机器的数字编号和一个系统登录密码就可以登录系统,登录后就可在系统上提交自己更详细的个人资料。
每台机器除了一个唯一的数字编号,另外还有一个授权密码,该密码机主可以随时改动。当机器感应通讯时,机器编号和授权密码会随机主资料一块传过去,并随机主资料一块被保存。机主在配套信息交流系统上设置个人资料时,应将系统上的授权密码与自己机器的授权密码设置成一样的。
当机主机器感应到合适的对象时会将对方资料保存下来。机主如果想进一步了解对方,则可登录系统,登录后可通过对方的机器编号和授权密码查看对方的详细资料,并可通过系统进行更多的交流和交往。
每个机主的系统登录情况,个人资料被别的机主查看的情况,查看别的机主资料的情况,在系统上都详细进行备案,这样万一出现意外时,可以协助调查。如果某个机主不愿意与另外一个机主交往,不想让对方再查看自己的个人资料,则可将对方置入黑名单当中。
6.1初始系统登录密码和初始授权密码
每台感应机分配有一个自己的数字编号,还有一个标记识别用途的分类编码,另外再选择三个内部密码字符串,总共是5个字符串。将5个字符串按一定顺序排列组合连成一长字符串,然后对此长字符串进行MD5加密计算,计算结果以字符方式给出,是32个字符。从其中选出15个字符作为初始系统登录密码,选出6个字符作为初始授权密码。
机器编号分配出去之后,机器编号、初始系统登录密码和初始授权密码存放在系统上一待机主认证的表格中。感应机交付给机主的同时会附上一张用户卡片,上面印上感应机数字编号及其条形码,另外再印上初始系统登录密码并用不透明膜覆盖掉(需刮掉膜才能看到)。机主拿到用户卡片后进入卡片上所标明的网址,输入卡片上所示感应机编号和登录密码即可登录系统,第一次登录后即自动完成该编号的机主认证,并在机主资料表中为该编号机主增加一条记录,以后机主再登录系统时则直接搜索机主资料表。完成机主认证后即可随意修改机主自己的资料,并通过机器编号和授权密码查看别的机主的资料。
感应机交付给用户前得设定好机器编号,通常把分配的机器编号和识别用途分类编码,计算得到的初始授权密码,连同其它固定信息都写入感应机的EEPROM当中。
6.2修改系统登录密码和授权密码
机主登录后可修改自己的系统登录密码。感应机的缺省授权密码为初始授权密码,但机主可以随时改动,改动后机主还需同步修改系统上自己的授权密码,以保证感应机中的授权密码和系统上的授权密码保持一致,让感应接收到自己资料的人还能上网查看自己的详细资料。
6.3维护机主网上资料
感应机上只存放机主的简要资料,更详细的资料则通过系统提供,包括照片、自我介绍等等。机主可随时登录系统修改自己的网上资料。
6.4系统登录及操作备案
机主每次登录系统时都要进行内部登记,包括登录时间、IP地址等信息。机主登录后可通过机器编号和授权密码查看其他机主的网上资料,并将该机主加入到自己主动交往名单中(同时登记加入时间),以后则可通过主动交往名单直接查看机主资料。机主若被其他机主查看过网上资料并被加入到其主动交往名单中,从机主的角度看就是被动交往,机主登录后可通过被动交往名单了解到哪些机主看过自己的网上资料,并可通过被动交往名单直接回访对方网上资料(不需要知道对方授权密码,需进行回访登记)。
6.5其它系统信息交流方式
机主登录系统后可给自己主动交往名单或被动交往名单中的其他机主留言,或者跟对方在网上进行即时通信,或者其它更独特的网上交流方式。
6.6黑名单管理
如果机主不愿意与自己主动交往名单或被动交往名单中的某位机主继续交往,不想让对方再查看自己的个人资料,则可将对方置入自己名下的黑名单当中。
Claims (10)
1、一种无线近距离人群识别感应机,它包括计算控制模块、存储模块、按键、温度传感器、无线收发模块、USB总线接口、显示模块:
计算控制模块用于对整个装置进行组合控制,一般用8位MCU;
存储模块用于存储信息,它包括程序存储器、资料存储器、特定信息存储器及接收缓存数据存储器;
按键用于感应机的交互操作,它包括“退出(取消)”、“选择(提交)”、“前移”、“主选择”、“后移”、“开关收发机”、“开关感应机”、“符号”、“0~9”、“A~M”和“N~Z”按钮;
温度传感器信号经过A/D转换器传入计算控制模块以检测温度;
无线收发模块用于感应机之间进行无线通信信号的发送和接收,可以用单独的无线收发芯片,也可以用集成了无线收发功能的单片机即射频SoC片上系统,需另接天线;
USB总线接口用于连接感应机和PC机,实现数据传输,为USB标准通信接口;
显示模块用于感应机的交互显示,可以用单色或者彩色LCD。
2、根据权利要求1所述的无线近距离人群识别感应机,其特征在于,所述感应机都设一个唯一的数字编号,机主通过该编号彼此区分,用一个数字编码来区分不同的识别用途,只有同一编码的感应机(同类型感应机)才能彼此识别感应和接收保存对方机主资料。
3、根据权利要求1所述的无线近距离人群识别感应机,其特征在于,所述感应机的无线通信协议为:
物理层协议规范:以IEEE802.15.4标准物理层协议规范为基准,定义物理层协议数据单元(PPDU)数据帧的格式、数据发送和接收服务原型函数以及设置管理服务原型函数;
MAC层协议规范:主动广播和被动广播通信,时序状态和时序同步控制,MAC层服务规范,主动广播竞争算法和被动广播竞争算法,MAC帧结构,安全方案等等;
应用层协议规范:时序状态及定时管理、应用数据结构、接收信息缓存、日历时钟等。
4、根据权利要求3所述的无线近距离人群识别感应机,其特征在于,所述感应机时序状态包括:收发机关闭状态(TRXClosedPhase)、主动广播竞争周期(ActiveBCCompetitivePhase)、主动广播发送周期(ActiveBroadCastPhase)、被动广播竞争周期(PassiveBCCompetitivePhase)和被动广播发送(PassiveBroadCastPhase)。
5、根据权利要求3所述的无线近距离人群识别感应机,其特征在于,所述MAC层服务包括状态转换管理,周期定时管理,广播数据发送和接收,广播竞争等服务,MAC层服务所定义的原型函数包括:收发机开启请求ML-TRX-START.request、收发机开启确认ML-TRX-START.confirm、收发机关闭请求ML-TRX-CLOSE.request、收发机关闭确认ML-TRX-CLOSE.confirm、启动主动广播竞争周期请求ML-ACTIVE-BCC-START.request、启动主动广播竞争周期确认ML-ACTIVE-BCC-START.confirm、启动被动广播竞争周期请求ML-PASSIVE-BCC-START.request、启动被动广播竞争周期确认ML-PASSIVE-BCC-START.confirm、主动广播请求ML-ACTIVE-BROADCAST.request、主动广播确认ML-ACTIVE-BROADCAST.confirm、被动广播竞争请求ML-PASSIVE-BC-COMPETE.request、被动广播竞争确认ML-PASSIVE-BC-COMPETE.confirm、被动广播请求ML-PASSIVE-BROADCAST.request、被动广播确认ML-PASSIVE-BROADCAST.confirm、广播数据接收指示ML-BROADCAST.indication、MAC层可读属性读取请求ML-ATTR-GET.request、MAC层可读属性读取确认ML-ATTR-GET.confirm、MAC层可写属性设置请求ML-ATTR-SET.request、MAC层可写属性设置确认ML-ATTR-SET.confirm。
6、根据权利要求3所述的无线近距离人群识别感应机,其特征在于,所述MAC帧结构包括以下几个基本部分:①MAC帧头,包括帧控制;②MAC帧载荷,放置具体的信息,长度可变;③MAC帧尾,包括帧校验序列(FCS)。
7、根据权利要求3所述的无线近距离人群识别感应机,其特征在于,所述安全方案是在发送和接收时采用AES算法对MAC帧载荷数据进行加密和解密。
8、根据权利要求1所述的无线近距离人群识别感应机,其特征在于,所述应用数据结构中特别给出了征婚交友应用中的机主个人资料和识别感应条件定义:
机器编号:4个字节,内部以无符号整数形式
授权密码:6个字符(字母和数字混合)
意愿:找对象[1],交朋友[2],其他[3],一个字符(数字)
性别:男[1],女[2],一个字符(数字)
年龄:一字节整数(16~120之间)
学历:初中[1],高中[2],中专[3],大专[4],本科[5],硕士[6],博士[7],一个字符(数字)
经济:一般[1],小康[2],中产[3],富豪[4],一个字符(数字)
联系:可变长度字符串(包括汉字和符号),可设定一最大长度(如30个字符)
招呼:可变长度字符串(包括汉字和符号),可设定一最大长度(如30个字符)。
9、根据权利要求1所述的无线近距离人群识别感应机,其特征在于,所述感应机可做成独立的产品形态,并增加时钟、日历、数字温度计等功能,也可将识别感应功能结合进手机、PDA、MP3等其它随身携带的数码产品当中。
10、一种无线近距离人群识别感应机网上配套信息交流系统,它包括客户端和服务器端:
客户端用于机主注册、登录、填写修改资料和查询机主信息等操作;
服务器端用于储存机主资料以及登录、交往等备案信息,并根据机主的操作要求提供响应服务;
机主要经过机器编号和登录密码验证才能进入系统,进入系统后可查看别的机主的资料,但需知道对方的机器编号和授权密码;
每台感应机机主可设一个授权密码,感应接收到机主资料时就能同时获取其机器编号和授权密码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2006101230824A CN101030906B (zh) | 2006-10-30 | 2006-10-30 | 一种无线近距离人群识别感应机及网上配套信息交流系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2006101230824A CN101030906B (zh) | 2006-10-30 | 2006-10-30 | 一种无线近距离人群识别感应机及网上配套信息交流系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101030906A true CN101030906A (zh) | 2007-09-05 |
CN101030906B CN101030906B (zh) | 2010-09-29 |
Family
ID=38715999
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006101230824A Expired - Fee Related CN101030906B (zh) | 2006-10-30 | 2006-10-30 | 一种无线近距离人群识别感应机及网上配套信息交流系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101030906B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102289143A (zh) * | 2010-06-18 | 2011-12-21 | 上海三旗通信科技有限公司 | 低端手机平台可以挂载高像素摄像头的实现方法 |
CN102891114A (zh) * | 2012-10-24 | 2013-01-23 | 上海新储集成电路有限公司 | 一种上下堆叠的片上系统芯片的制作方法 |
WO2015000305A1 (zh) * | 2013-07-05 | 2015-01-08 | 华为技术有限公司 | 一种降低LowMAC层功耗的方法、装置和终端 |
CN104359201A (zh) * | 2014-11-11 | 2015-02-18 | 广东好帮手电子科技股份有限公司 | 带有usb接口及无线通信模块的车载净化器 |
CN104601455A (zh) * | 2015-03-04 | 2015-05-06 | 北京深思数盾科技有限公司 | 一种用于即时通讯软件的信息互动方法及系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1082785A (zh) * | 1992-08-06 | 1994-02-23 | 冯成 | 带有分机锁码号的无线寻呼机 |
CN2529319Y (zh) * | 2002-03-07 | 2003-01-01 | 中国石油天然气股份有限公司 | 天然气自动计量系统计量模块 |
CN2728126Y (zh) * | 2004-09-14 | 2005-09-21 | 北京艾迪新世纪科技有限公司 | 无线数据传输终端设备 |
-
2006
- 2006-10-30 CN CN2006101230824A patent/CN101030906B/zh not_active Expired - Fee Related
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102289143A (zh) * | 2010-06-18 | 2011-12-21 | 上海三旗通信科技有限公司 | 低端手机平台可以挂载高像素摄像头的实现方法 |
CN102891114A (zh) * | 2012-10-24 | 2013-01-23 | 上海新储集成电路有限公司 | 一种上下堆叠的片上系统芯片的制作方法 |
CN102891114B (zh) * | 2012-10-24 | 2015-01-28 | 上海新储集成电路有限公司 | 一种上下堆叠的片上系统芯片的制作方法 |
WO2015000305A1 (zh) * | 2013-07-05 | 2015-01-08 | 华为技术有限公司 | 一种降低LowMAC层功耗的方法、装置和终端 |
CN104284401A (zh) * | 2013-07-05 | 2015-01-14 | 华为技术有限公司 | 一种降低LowMAC层功耗的方法、装置和终端 |
CN104359201A (zh) * | 2014-11-11 | 2015-02-18 | 广东好帮手电子科技股份有限公司 | 带有usb接口及无线通信模块的车载净化器 |
CN104601455A (zh) * | 2015-03-04 | 2015-05-06 | 北京深思数盾科技有限公司 | 一种用于即时通讯软件的信息互动方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN101030906B (zh) | 2010-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1294775C (zh) | 信息提供系统、无线接入点、收费服务器和信息提供方法 | |
CN1265588C (zh) | 通信装置和方法 | |
CN1223157C (zh) | 接收设备和方法、发送设备和方法及通信系统 | |
CN1311399C (zh) | 集成电路卡及信息处理终端、三方数据通信系统及方法 | |
CN1543732A (zh) | 通信系统和方法 | |
CN101030906A (zh) | 一种无线近距离人群识别感应机及网上配套信息交流系统 | |
CN1759414A (zh) | 便携式终端装置及提供服务器装置 | |
CN1259249A (zh) | 能力可访问网络中的装置之间的连接授权方法 | |
CN1394312A (zh) | 鉴别系统、鉴别承担装置和终端装置 | |
CN1507238A (zh) | 信息处理设备 | |
CN1550086A (zh) | 通信系统和通信方法 | |
CN1367975A (zh) | 信息传送系统和服务器 | |
CN1947372A (zh) | 个人信息管理装置、分散密钥存储装置、个人信息管理系统 | |
CN1209934C (zh) | 数据库系统和获得信息的方法 | |
CN1738219A (zh) | 发送接收装置、数据传送系统、发送接收方法及程序 | |
CN1379358A (zh) | 信息处理设备和方法、记录媒体及程序 | |
CN1663181A (zh) | 通信系统、信息处理装置与方法 | |
CN1682473A (zh) | 电子通信系统、装置和电极铺设方法 | |
CN1436333A (zh) | 支持无线手持多媒体设备的集成处理器平台 | |
CN1363071A (zh) | 信息分发系统 | |
CN1428033A (zh) | 语义信息网络 | |
CN1825994A (zh) | 移动无线终端 | |
CN1890672A (zh) | 移动药物治疗历史管理装置、存储卡以及管理方法 | |
CN1377157A (zh) | 信息处理设备和方法、信息交换方法、记录介质和程序 | |
CN1319209A (zh) | 数字通信处理器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100929 Termination date: 20121030 |