基于NFC智能手机的巡检系统应用研究
2018-01-24杨玉柱宋高雁
杨玉柱,宋高雁
YANG Yu-zhu, SONG Gao-yan
(中国联合网络通信有限公司济南市分公司)
(China United Network Communication Co., Ltd. Jinan Branch)
1 引言
近年来手机NFC模块逐渐成为智能手机的标配,NFC是由非接触式射频识别(RFID)技术演变而来的,但通信识别距离比RFID近,为保证数据传输的安全性,通常限制在10cm以内,因此NFC称为近距离无线通信(Near Field Communication)。NFC可进行双向通信,只要是支持NFC的标签卡,就可以读出或写入数据,常见的如身份证、公交卡、饭卡等其实都是NFC卡。手机NFC功能目前主要用于手机支付功能,需要到运营商营业厅办理SIMSWP卡并与银行卡绑定来实现数据加密、安全认证功能,手机是做为NFC数据的提供者。
随着移动互联网的发展,智能手机终端越来越多地在行业信息化系统中得到应用,其中利用手机的GPS定位、照片上传功能等可以实现对电力杆路、电信机房等巡检。但使用手机GPS定位的主要存在的问题是GPS定位的精度有一定差距,受天气等因素影响,相同的位置同一部手机每次定位的数据也不一致,存在漂移现象,而且在室内也无法使用GPS定位功能,无法精确定位到一个巡检点上。
2 研发NFC手机智能巡更巡检系统
2.1 NFC功能的反向应用研究
在通常的带有NFC功能的手机中,手机是作为数据提供方来使用的,同时还可以把手机作为一个读取设备将NFC标签卡中的数据读取出来。本文研究的功能就是利用手机读取NFC标签功能,实现了精准巡检的功能。NFC标签与二维码、蓝牙等等巡检点相比,具有经济适用、方便布署、不容易造假等优点,适合于不同的巡检环境,可广泛布放于电信杆路、数据机房、交换设备、化工罐体等不同的使用场景,在使用时只需打开手机APP后在标签卡上一放即可读取标签卡里的信息。由于标签卡每一张的tagID均不同,并且可以存写几百个字节的相关信息,通常将这个ID作为唯一标识,同时结合GPS定位、图片及内容上传等信息防止标签卡被移动或仿冒使用,保证整个巡检结果的真实性。通过实时上传巡检信息,管理人员可以在手机上实时查询所辖区域的巡检信息,及时对安全隐患进行处理,同时对巡检人员起到监督的作用。
2.2 基于Android系统的APP开发
目前Android4.0以上系统已经增加了对NFC功能的支持,Android SDK API主 要 支 持 NDEF(NFC Data Exchange Format,NFC数据交换格式),当手机读取NFC标签时会在0.1秒的时间之内建立与标签NFC连接,然后数据会自动从NFC标签卡内读取到手机APP中。
在Android系统中用于描述NDEF格式数据的主要有NdefMessage及NdefRecord两个核心类。NdefMessage用于描述NDEF格式的信息,在应用中可以通过手机APP或连接到PC电脑上的写卡器将巡检点信息写到标签卡中。NdefRecord是描述NDEF信息的信息段, 不同标准的标签卡中存储的数据容量是不同的,需要根据实现应用场景来确定。
在新建的Android APP工程中的manifest.xml文件中要注意增加相关NFC参数的设置,如minSdkVersion要求在14以上版本,android.permission.NFC、android.hardware.nfc、android.nfc.action.TECH_DISCOVERED等也要进行相应设置,否则将无法正常调用手机的NFC功能。
本系统主要实现手机对标签卡内信息的读取,包括标签卡的ID、内容等信息。标签卡ID是唯一的,在PC端巡检管理系统中将标签卡ID与巡检点信息一一对应设置,标签卡内的其它信息只是仅作为手机端APP显示内容的参考。读取标签卡信息的主要程序如下:
private String nfc_read(Tag nfc_tag)throws IOException, FormatException {
if (nfc_tag != null) {
//定义NDEF实例
Ndef nfc_ndef = Ndef.get(nfc_tag);
//打开NFC连接
nfc_ndef.connect();
//获取NDEF消息
NdefMessage nfc_message =nfc_ndef.getNdefMessage();
//将获取的NDEF消息转换成字节数组
byte[] ndef_data = nfc_message.toByteArray();
//将上面获取的字节数组转换成UTF-8字符串
String str_nfc = new String(ndef_data, Charset.forName("UTF-8"));
//获取NFC标签卡ID
S t r i n g m i d =bytesToHexString(tagFromIntent.getId());
//关闭连接ndef.close();
return mid + "|" + str;
} else {
Toast.makeText(NfcDemoActivity.this, "已连接断开...",
Toast.LENGTH_SHORT).show();}
return null;}
3 NFC手机巡更巡检系统优势
1)一部智能手机就可实现移动办公、问题上报、照片上传、位置信息、定点巡更、移动视频监控等多种应用。
2) NFC卡成本低,可靠性、保密性好,可根据需要随意设置巡更点。
3) NFC属于近距离通信,保证巡更点的准确到位。
4) 巡更信息实时上传,管理人员可通过手机、电脑及时查看巡更信息。
5) 通过随身携带的NFC卡可实现危险情况时实现手机自动拨打电话、发送短信等报警功能。
4 NFC手机巡更巡检系统应用前景
NFC手机巡更巡检不仅适用于商务楼、聚类市场、中高档小区物业管理,还适合于各行业用于巡检的业务,如石油、电力、铁路、电信、公安、军队、粮库、林业、矿业、医院、邮政、机场、学校等行业中。
5 NFC手机巡更巡检系统应用案例
目前山东铁塔公司已经使用该技术用于全省所有铁塔日常的巡检维护工作,同时该技术也在山东电力、中石化加油站、山东大化集团等得到了使用,通过NFC手机巡检系统的应用将进一步带动运营商移动业务在集团客户中的行业应用业务发展。
[1]周山.基于Andriod智能手机的测绘软件开发应用探讨[J]. 硅谷,2013(15):41+36.