楊玉柱,宋高雁
YANG Yu-zhu, SONG Gao-yan
(中國聯(lián)合網(wǎng)絡通信有限公司濟南市分公司)
(China United Network Communication Co., Ltd. Jinan Branch)
近年來手機NFC模塊逐漸成為智能手機的標配,NFC是由非接觸式射頻識別(RFID)技術演變而來的,但通信識別距離比RFID近,為保證數(shù)據(jù)傳輸?shù)陌踩?,通常限制?0cm以內(nèi),因此NFC稱為近距離無線通信(Near Field Communication)。NFC可進行雙向通信,只要是支持NFC的標簽卡,就可以讀出或?qū)懭霐?shù)據(jù),常見的如身份證、公交卡、飯卡等其實都是NFC卡。手機NFC功能目前主要用于手機支付功能,需要到運營商營業(yè)廳辦理SIMSWP卡并與銀行卡綁定來實現(xiàn)數(shù)據(jù)加密、安全認證功能,手機是做為NFC數(shù)據(jù)的提供者。
隨著移動互聯(lián)網(wǎng)的發(fā)展,智能手機終端越來越多地在行業(yè)信息化系統(tǒng)中得到應用,其中利用手機的GPS定位、照片上傳功能等可以實現(xiàn)對電力桿路、電信機房等巡檢。但使用手機GPS定位的主要存在的問題是GPS定位的精度有一定差距,受天氣等因素影響,相同的位置同一部手機每次定位的數(shù)據(jù)也不一致,存在漂移現(xiàn)象,而且在室內(nèi)也無法使用GPS定位功能,無法精確定位到一個巡檢點上。
在通常的帶有NFC功能的手機中,手機是作為數(shù)據(jù)提供方來使用的,同時還可以把手機作為一個讀取設備將NFC標簽卡中的數(shù)據(jù)讀取出來。本文研究的功能就是利用手機讀取NFC標簽功能,實現(xiàn)了精準巡檢的功能。NFC標簽與二維碼、藍牙等等巡檢點相比,具有經(jīng)濟適用、方便布署、不容易造假等優(yōu)點,適合于不同的巡檢環(huán)境,可廣泛布放于電信桿路、數(shù)據(jù)機房、交換設備、化工罐體等不同的使用場景,在使用時只需打開手機APP后在標簽卡上一放即可讀取標簽卡里的信息。由于標簽卡每一張的tagID均不同,并且可以存寫幾百個字節(jié)的相關信息,通常將這個ID作為唯一標識,同時結(jié)合GPS定位、圖片及內(nèi)容上傳等信息防止標簽卡被移動或仿冒使用,保證整個巡檢結(jié)果的真實性。通過實時上傳巡檢信息,管理人員可以在手機上實時查詢所轄區(qū)域的巡檢信息,及時對安全隱患進行處理,同時對巡檢人員起到監(jiān)督的作用。
2.2 基于Android系統(tǒng)的APP開發(fā)
目前Android4.0以上系統(tǒng)已經(jīng)增加了對NFC功能的支持,Android SDK API主 要 支 持 NDEF(NFC Data Exchange Format,NFC數(shù)據(jù)交換格式),當手機讀取NFC標簽時會在0.1秒的時間之內(nèi)建立與標簽NFC連接,然后數(shù)據(jù)會自動從NFC標簽卡內(nèi)讀取到手機APP中。
在Android系統(tǒng)中用于描述NDEF格式數(shù)據(jù)的主要有NdefMessage及NdefRecord兩個核心類。NdefMessage用于描述NDEF格式的信息,在應用中可以通過手機APP或連接到PC電腦上的寫卡器將巡檢點信息寫到標簽卡中。NdefRecord是描述NDEF信息的信息段, 不同標準的標簽卡中存儲的數(shù)據(jù)容量是不同的,需要根據(jù)實現(xiàn)應用場景來確定。
在新建的Android APP工程中的manifest.xml文件中要注意增加相關NFC參數(shù)的設置,如minSdkVersion要求在14以上版本,android.permission.NFC、android.hardware.nfc、android.nfc.action.TECH_DISCOVERED等也要進行相應設置,否則將無法正常調(diào)用手機的NFC功能。
本系統(tǒng)主要實現(xiàn)手機對標簽卡內(nèi)信息的讀取,包括標簽卡的ID、內(nèi)容等信息。標簽卡ID是唯一的,在PC端巡檢管理系統(tǒng)中將標簽卡ID與巡檢點信息一一對應設置,標簽卡內(nèi)的其它信息只是僅作為手機端APP顯示內(nèi)容的參考。讀取標簽卡信息的主要程序如下:
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消息轉(zhuǎn)換成字節(jié)數(shù)組
byte[] ndef_data = nfc_message.toByteArray();
//將上面獲取的字節(jié)數(shù)組轉(zhuǎn)換成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;}
1)一部智能手機就可實現(xiàn)移動辦公、問題上報、照片上傳、位置信息、定點巡更、移動視頻監(jiān)控等多種應用。
2) NFC卡成本低,可靠性、保密性好,可根據(jù)需要隨意設置巡更點。
3) NFC屬于近距離通信,保證巡更點的準確到位。
4) 巡更信息實時上傳,管理人員可通過手機、電腦及時查看巡更信息。
5) 通過隨身攜帶的NFC卡可實現(xiàn)危險情況時實現(xiàn)手機自動撥打電話、發(fā)送短信等報警功能。
4 NFC手機巡更巡檢系統(tǒng)應用前景
NFC手機巡更巡檢不僅適用于商務樓、聚類市場、中高檔小區(qū)物業(yè)管理,還適合于各行業(yè)用于巡檢的業(yè)務,如石油、電力、鐵路、電信、公安、軍隊、糧庫、林業(yè)、礦業(yè)、醫(yī)院、郵政、機場、學校等行業(yè)中。
目前山東鐵塔公司已經(jīng)使用該技術用于全省所有鐵塔日常的巡檢維護工作,同時該技術也在山東電力、中石化加油站、山東大化集團等得到了使用,通過NFC手機巡檢系統(tǒng)的應用將進一步帶動運營商移動業(yè)務在集團客戶中的行業(yè)應用業(yè)務發(fā)展。
[1]周山.基于Andriod智能手機的測繪軟件開發(fā)應用探討[J]. 硅谷,2013(15):41+36.