• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于MIT App Inventor的預(yù)付費(fèi)水表手機(jī)充值系統(tǒng)設(shè)計(jì)

      2018-05-31 09:05:32吳宇航謝少偉俞軻鑫黃恒英
      機(jī)電信息 2018年15期
      關(guān)鍵詞:程序代碼預(yù)付費(fèi)通信地址

      吳宇航 謝少偉 俞軻鑫 黃恒英

      (浙江水利水電學(xué)院,浙江杭州310018)

      0 引言

      隨著淡水資源日益短缺,用水管理逐漸加強(qiáng),供水企業(yè)管理的水表數(shù)急劇增加,為方便管理與提倡節(jié)約用水,很多地區(qū)尤其是一些缺水地區(qū),預(yù)付費(fèi)水表的應(yīng)用正在日益增加。目前預(yù)付費(fèi)水表主要有兩種形式:IC卡式[1]及代碼式[2]。這兩種形式主要存在以下問題[3]:IC卡預(yù)付費(fèi)水表,需要建立營(yíng)業(yè)廳,用戶到指定地進(jìn)行充值,易丟卡;代碼式預(yù)付費(fèi)水表,需要將代碼手動(dòng)輸入到水表,操作不便,并對(duì)安裝空間及位置要求較高。

      本文提出了一種基于MIT App Inventor設(shè)計(jì)的預(yù)付費(fèi)水表手機(jī)充值系統(tǒng),較好地解決了預(yù)付費(fèi)水表存在的上述問題。

      1 系統(tǒng)結(jié)構(gòu)

      圖1為預(yù)付費(fèi)水表手機(jī)充值系統(tǒng)框圖。代碼式預(yù)付費(fèi)水表通過增加內(nèi)置式“藍(lán)牙接口”單元,實(shí)現(xiàn)與手機(jī)終端的通信。手機(jī)通過第三方支付平臺(tái)完成預(yù)付費(fèi)后,獲取加密的預(yù)付費(fèi)代碼,預(yù)付費(fèi)代碼與水表身份(固化在水表中的身份識(shí)別號(hào))關(guān)聯(lián),無法在其他水表使用,具有唯一性,降低了移動(dòng)支付系統(tǒng)中代碼安全性要求。手機(jī)終端采用藍(lán)牙通信方式,通過App軟件將預(yù)付費(fèi)代碼發(fā)送至預(yù)付費(fèi)水表,實(shí)現(xiàn)預(yù)付費(fèi)充值、余額及用水量查詢等功能。

      圖1 系統(tǒng)框圖

      2 預(yù)付費(fèi)水表藍(lán)牙接口單元

      可采用串口透?jìng)魉{(lán)牙模塊,通過串口與預(yù)付費(fèi)水表進(jìn)行通信。本次設(shè)計(jì)采用HC-05模塊,該模塊基于英國(guó)CSR公司BlueCore4-Ext芯片,遵循V2.1+EDR藍(lán)牙規(guī)范,手機(jī)普及程度較高,但功耗相對(duì)較大,Page scan狀態(tài)時(shí)的平均功耗為0.42 mA,Standby Host connection狀態(tài)時(shí)的平均功耗為40 μA。對(duì)于預(yù)付費(fèi)充值來說,由于使用頻率很低,可以采用圖2所示的工作電源控制原理圖,通過控制圖2中的使能端EN,使HC-05藍(lán)牙模塊間隙式工作,間隙時(shí)間遠(yuǎn)大于工作時(shí)間,以降低功耗。圖2中Q1為P溝道MOS管,當(dāng)EN為低電平時(shí),Q1導(dǎo)通,輸出3.3 V工作電壓到HC-05藍(lán)牙模塊。

      圖2 工作電源控制原理圖

      3 預(yù)付費(fèi)充值手機(jī)App設(shè)計(jì)

      3.1 MIT App Inventor

      采用MIT App Inventor工具進(jìn)行設(shè)計(jì),MIT App Inventor是以可視化編程語言為基礎(chǔ)的Android應(yīng)用開發(fā)工具,它拋棄了復(fù)雜的程序代碼,事先將代碼全部編寫完畢,用戶只要根據(jù)自己的需求編寫簡(jiǎn)單的代碼拼裝程序,使用樂高積木式的堆棧法來完成Android程序設(shè)計(jì)[4]。

      3.2 通信協(xié)議

      主要包括充值及查詢兩個(gè)方面,查詢數(shù)據(jù)主要包括:余量查詢、累計(jì)購(gòu)買量查詢、累計(jì)使用量查詢等。以下為本次設(shè)計(jì)采用的預(yù)付費(fèi)水表通信協(xié)議:

      手機(jī)App發(fā)送的命令格式:前導(dǎo)字符+通信地址數(shù)據(jù)幀+命令代碼數(shù)據(jù)幀+CS校驗(yàn)碼+結(jié)束字符。

      水表返回的數(shù)據(jù)格式:前導(dǎo)字符+通信地址數(shù)據(jù)幀+返回?cái)?shù)據(jù)幀+CS校驗(yàn)碼+結(jié)束字符。

      相關(guān)說明:

      (1)通信地址:為6字節(jié),每個(gè)水表都有唯一的地址,需要在手機(jī)App中輸入并保存。

      (2)命令代碼:余量查詢?yōu)?2(5字節(jié),前4字節(jié)為00,下同);累計(jì)購(gòu)買量查詢?yōu)?7;累計(jì)使用量查詢?yōu)?1等。充值命令代碼:06(5字節(jié))+10字節(jié)加密的預(yù)付費(fèi)代碼。預(yù)付費(fèi)代碼需要在手機(jī)App中輸入。

      (3)CS檢驗(yàn)碼:為通信地址數(shù)據(jù)幀、命令代碼數(shù)據(jù)幀或返回?cái)?shù)據(jù)幀的所有字節(jié)的累加和,單字節(jié),不計(jì)溢出值。

      (4)返回?cái)?shù)據(jù)幀格式:數(shù)據(jù)長(zhǎng)度+狀態(tài)字+命令代碼+返回?cái)?shù)據(jù)。查詢時(shí)狀態(tài)字:00表示讀取數(shù)據(jù)成功,01表示讀取數(shù)據(jù)不成功,后面的返回?cái)?shù)據(jù)無效。查詢時(shí)返回?cái)?shù)據(jù)為5字節(jié)16進(jìn)制數(shù),轉(zhuǎn)換成10進(jìn)制后最后1位為小數(shù),水表及手機(jī)App上的顯示數(shù)據(jù)為6位,如:00000.6 m3。充值時(shí)狀態(tài)字:03表示充值成功,其他數(shù)據(jù)表示充值不成功,充值時(shí)狀態(tài)字及命令代碼后無返回?cái)?shù)據(jù)。

      3.3 App交互界面設(shè)計(jì)

      圖3為App交互界面。按照系統(tǒng)的功能需求,用組件設(shè)計(jì)器把開發(fā)軟件需要的設(shè)計(jì)功能組件擺放到手機(jī)設(shè)計(jì)界面上,本設(shè)計(jì)所需要的設(shè)計(jì)功能組件有按鈕(完成相應(yīng)功能的控制)、標(biāo)簽(用于提示以及顯示水表返回?cái)?shù)據(jù))、文本輸入框(用于輸入通信地址與預(yù)付費(fèi)代碼)、對(duì)話框(用于發(fā)送警告信息)、微數(shù)據(jù)庫1(用于存儲(chǔ)通信地址)、藍(lán)牙客戶端1(通過藍(lán)牙使手機(jī)與水表通信)、計(jì)時(shí)器1(用于接收水表返回值)等,各功能設(shè)計(jì)組件按照項(xiàng)目需求設(shè)置相應(yīng)的功能屬性和界面位置。

      3.4 主要功能實(shí)現(xiàn)

      3.4.1 通信地址輸入及保存

      通過邏輯設(shè)計(jì)器來組裝程序塊,首先將輸入的通信地址添入列表項(xiàng)保存。然后將列表保存入微數(shù)據(jù)庫,使通信地址保存在手機(jī)本地?cái)?shù)據(jù)庫中,如圖4所示。

      圖4 通信地址輸入及保存程序代碼

      3.4.2 預(yù)付費(fèi)代碼輸入

      首先對(duì)藍(lán)牙是否連接,通信地址與充值碼輸入框是否為空進(jìn)行判斷。然后將輸入框中的數(shù)據(jù)通過“提取文本字串”加入到“充值列表”,如圖5所示。最后通過藍(lán)牙發(fā)送列表并更新手機(jī)交互記錄,如圖6所示。

      圖5 文本字串的提取與充值列表的創(chuàng)建程序代碼

      圖3 手機(jī)App交互界面設(shè)計(jì)圖

      圖6 充值按鈕程序代碼

      3.4.3 CS檢驗(yàn)碼計(jì)算

      首先提取“通信地址輸入框”中的相應(yīng)字串,轉(zhuǎn)換為十進(jìn)制之后求和。然后將前一步驟所得的值與事先求得的固定值相加,并設(shè)定為局部變量“求和”。最后進(jìn)行溢出值判斷之后得出CS校驗(yàn)碼,如圖7所示。

      3.4.4 查詢數(shù)據(jù)轉(zhuǎn)換及顯示

      首先對(duì)收到的數(shù)據(jù)進(jìn)行判斷,確定為何種命令的返回?cái)?shù)據(jù),然后進(jìn)行校驗(yàn)碼CS判斷,最后將返回?cái)?shù)據(jù)中對(duì)應(yīng)位置的列表項(xiàng)提取出來,并運(yùn)用AI2自帶的“轉(zhuǎn)換字符塊”轉(zhuǎn)換為十六進(jìn)制數(shù),在合并字符串之后再轉(zhuǎn)回十進(jìn)制數(shù),并套用公式處理,形成所需值,進(jìn)行相應(yīng)的顯示,如圖8所示。

      4 結(jié)語

      基于藍(lán)牙通信,采用簡(jiǎn)單而能快速掌握的Android應(yīng)用開發(fā)工具M(jìn)IT App Inventor,完成了預(yù)付費(fèi)水表手機(jī)充值系統(tǒng)設(shè)計(jì),實(shí)現(xiàn)了預(yù)付費(fèi)水表充值及數(shù)據(jù)查詢相關(guān)功能,系統(tǒng)已經(jīng)實(shí)際使用,穩(wěn)定可靠。

      圖7 CS校驗(yàn)碼計(jì)算程序代碼

      圖8 查詢數(shù)據(jù)轉(zhuǎn)換及顯示程序代碼

      [1]龔靜雯,全書海.代碼式預(yù)付費(fèi)水表繳費(fèi)發(fā)行管理系統(tǒng)的設(shè)計(jì)[J].武漢理工大學(xué)學(xué)報(bào)(信息與管理工程版),2005,27(3):110-113.

      [2]澤越科技.各種預(yù)付費(fèi)水表的優(yōu)缺點(diǎn)[EB/OL].(2013-09-23)[2018-04-10]https://wenku.baidu.com/view/887607d37c1cfad6195fa7c1.html.

      [3]邢偉華.預(yù)付費(fèi)智能水表現(xiàn)狀調(diào)查:智能水表問題及解決[EB/OL].(2011-05-11)[2018-04-10]https://wenku.baidu.com/view/9b4a65 dbad51f01dc281f12a.html.

      [4]張居彥.移動(dòng)App設(shè)計(jì)工具Inventor[J].電子世界,2013(15):170-171.

      猜你喜歡
      程序代碼預(yù)付費(fèi)通信地址
      計(jì)算機(jī)網(wǎng)絡(luò)信息安全未來發(fā)展趨勢(shì)
      三相四線電子式預(yù)付費(fèi)電能表常見故障分析
      電子制作(2017年1期)2017-05-17 03:54:45
      基于圖元裝接模式由程序流程圖自動(dòng)生成源代碼
      軟件工程(2016年11期)2017-01-17 16:56:57
      基于層次分析法和專家經(jīng)驗(yàn)的預(yù)付費(fèi)電能表用戶欠費(fèi)風(fēng)險(xiǎn)評(píng)估策略
      廣西電力(2016年4期)2016-07-10 10:23:38
      一種基于電子車牌及預(yù)付費(fèi)的高速公路不停車收費(fèi)系統(tǒng)
      基于密鑰管理與安全認(rèn)證的預(yù)付費(fèi)電能表綜合管理系統(tǒng)研究
      參加《檢驗(yàn)醫(yī)學(xué)》“檢驗(yàn)醫(yī)學(xué)新技術(shù)”繼續(xù)教育的回執(zhí)(復(fù)印有效)
      聲 明
      聲明
      參加《檢驗(yàn)醫(yī)學(xué)》“檢驗(yàn)醫(yī)學(xué)新技術(shù)”繼續(xù)教育的回執(zhí)(復(fù)印有效)
      定边县| 绥中县| 海淀区| 荣昌县| 白朗县| 洪雅县| 桂平市| 乐山市| 色达县| 新干县| 襄城县| 长治县| 巧家县| 阿坝县| 滁州市| 景洪市| 百色市| 朝阳区| 龙川县| 南丹县| 洛扎县| 乌鲁木齐市| 汉沽区| 太康县| 韶山市| 蕲春县| 阳东县| 灵川县| 神农架林区| 丹巴县| 邢台县| 太仆寺旗| 晋城| 乐业县| 塔城市| 会同县| 龙南县| 张家川| 孝感市| 岢岚县| 新郑市|