• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于ZigBee技術(shù)的無線評分系統(tǒng)設(shè)計與實現(xiàn)

    2020-06-30 10:15:22吳君勝許穎頻
    微型電腦應(yīng)用 2020年4期
    關(guān)鍵詞:物聯(lián)網(wǎng)

    吳君勝 許穎頻

    摘 要:針對目前各類競賽活動普遍存在計時和評分無法由多名裁判員直接主動實時處理并展示多組分?jǐn)?shù)的問題,提出了一套場地局限性小、高效率、低成本、低功耗的無線評分設(shè)計方案?;赯igBee技術(shù)實現(xiàn)自動組網(wǎng),采用C++設(shè)計并開發(fā)了無線評分系統(tǒng),并基于Web實現(xiàn)評分?jǐn)?shù)據(jù)發(fā)布。詳細(xì)描述了系統(tǒng)的軟硬件結(jié)構(gòu)和系統(tǒng)設(shè)計與實現(xiàn),通過對系統(tǒng)在實際競賽中的結(jié)果分析,新型的無線評分系統(tǒng)具有極高的應(yīng)用價值。

    關(guān)鍵詞:?物聯(lián)網(wǎng); Zigbee; CC2530; VC++; Web服務(wù)器

    中圖分類號: TP 311? ? ? 文獻(xiàn)標(biāo)志碼: A

    Design and Implementation of Wireless Scoring

    System Based on ZigBee Technology

    WU Junsheng,? XU Yingpin

    (College of Humanities and Engineering, Guangzhou Open University, Guangzhou, Guangdong 510091, China)

    Abstract:

    In view of the common problem of timing and scoring in all kinds of competition activities at present, it is impossible for multiple referees to directly take the initiative to deal with and display multiple sets of scores in real time. A wireless scoring design solution with small site limitation, high efficiency, low cost and low power consumption is proposed. The automatic network is realized based on ZigBee technology, the wireless scoring system is designed and developed by using C ++, and the scoring data release is realized based on Web. In this paper, the structure of software and hardware and the design and implementation of the system are described in detail. Through the analysis of the results of the system in the actual competition, the new wireless scoring system has a very high application value.

    Key words:

    internet of things;? ZigBee;? CC2530;? VC++;? Web server

    0 引言

    隨著物聯(lián)網(wǎng)變得越來越普遍,ZigBee無線通信技術(shù)以其易于部署、低復(fù)雜度、低成本、自組無線網(wǎng)路的特性被廣泛應(yīng)用于人們的生活。針對目前各類競賽活動普遍存在計時和評分無法由多名裁判員直接主動實時處理并展示多組分?jǐn)?shù)的問題,設(shè)計和開發(fā)出一套計時、計分兼顧投票需求的無線評分系統(tǒng),硬件設(shè)備便攜易用,軟件數(shù)據(jù)實時同步,有效提高比賽的公平、公正和公開。

    1 需求問題描述

    無線評分系統(tǒng)重點實現(xiàn)評分?jǐn)?shù)據(jù)的實時同步、遠(yuǎn)程顯示功能,軟硬件系統(tǒng)的設(shè)計原則是極簡操作和零布線,技術(shù)選型是軟件設(shè)計和硬件設(shè)計的主要考慮問題。

    硬件設(shè)計需要實現(xiàn)信號覆蓋廣、功耗低、便攜易用等功能。各類競賽活動的場地面積范圍各不相同,而ZigBee技術(shù)是一種低功耗的近距離無線組網(wǎng)通訊技術(shù),傳輸范圍在10~100 m,各類競賽活動場地的距離一般不會大于100 m,能滿足場地較小的活動需求。在增加發(fā)射功率后,亦可增加到1~3 km[2],能滿足場地較大的活動需求。ZigBee技術(shù)最大優(yōu)點是網(wǎng)絡(luò)容量,并且支持無限擴(kuò)展,在速率為非重要因素的情況下,可認(rèn)為ZigBee技術(shù)的場地局限性小。

    軟件設(shè)計需要實現(xiàn)實時投屏、自動排名、分組統(tǒng)分等功能。各類競賽活動的舉辦形式不同,評分顯示方式也會有不同的要求。一般可分為現(xiàn)場顯示和遠(yuǎn)程顯示,兩種顯示方式要實時同步需要數(shù)據(jù)庫技術(shù)支持,開發(fā)基于Web的應(yīng)用程序,以便適配PC端和智能設(shè)備終端的數(shù)據(jù)顯示。

    2 ZigBee無線通信模塊設(shè)計

    2.1 ZigBee無線通信技術(shù)

    ZigBee是一種介于無線標(biāo)間技術(shù)和藍(lán)牙之間的無線通信技術(shù),是基于IEEE802.15.4的無線個人區(qū)域網(wǎng)工作組的一項標(biāo)準(zhǔn)。ZigBee每個節(jié)點都可以進(jìn)行三種類型通信,分別是廣播、組播、點對點。每個節(jié)點都可以自行聲明組號,在組內(nèi)進(jìn)行組播。每個節(jié)點可以分為3種類型:協(xié)調(diào)器(Coordinator),路由(Router),傳輸終端(Endpoint)。每個網(wǎng)絡(luò)都需要一個協(xié)調(diào)器和多個路由,路由數(shù)量因不同的廠家而不同的限制。協(xié)調(diào)器負(fù)責(zé)組網(wǎng)和分配地址,組網(wǎng)后關(guān)閉,網(wǎng)絡(luò)能自己存在。路由可以和傳輸終端兩個融合在一起,它轉(zhuǎn)發(fā)通信內(nèi)容、負(fù)責(zé)維系周圍的路由。傳輸終端可以收發(fā)信息,但不轉(zhuǎn)發(fā)消息。本系統(tǒng)就是以一個協(xié)調(diào)器作為中心節(jié)點,并與PC通信,而其它終端兼具路由組網(wǎng)功能。

    2.2 ZigBee自動組網(wǎng)的實現(xiàn)

    當(dāng)協(xié)調(diào)器通電后,它將配置好一個網(wǎng)絡(luò)的panID,唯有panID相同的節(jié)點才會被認(rèn)作是同一網(wǎng)絡(luò)。同時它還設(shè)置了加入這個網(wǎng)絡(luò)的密碼。并且協(xié)調(diào)器還要定義通信的信道號,它自身的發(fā)射功率。這個網(wǎng)絡(luò)開始工作后,協(xié)調(diào)器還要負(fù)責(zé)給新加入的節(jié)點設(shè)定短地址。在正常工作時,除了網(wǎng)絡(luò)其它節(jié)點互相收發(fā)信息外,一般更多使用協(xié)調(diào)器作為星型網(wǎng)絡(luò)的中心點進(jìn)行通信。在本系統(tǒng)中,如果沒有協(xié)調(diào)器組網(wǎng),其它終端在等待組網(wǎng)時,通過自帶LED燈提示當(dāng)前的網(wǎng)絡(luò)是否連通。

    2.3 ZigBee自動路由的實現(xiàn)

    每個路由向周圍發(fā)送beacon信息,通過識別接收到的幀,建立路由表并進(jìn)行廣播。通過此機制,對收到的幀,自動轉(zhuǎn)發(fā)給相應(yīng)的節(jié)點,如圖1所示。C為協(xié)調(diào)器,R為路由,E為傳輸終端。

    當(dāng)無線路由發(fā)生移動,節(jié)點變化,ZigBee路由通過自動路由功能,重新建立路由表,保持新的路徑能到達(dá)目標(biāo)。因此,當(dāng)網(wǎng)絡(luò)拓?fù)渥兓匀豢梢赃M(jìn)行通信。ZigBee每個節(jié)點都有自己的唯一的MAC地址,但網(wǎng)絡(luò)中使用的通信地址是短地址。即便你知道對方的MAC? 地址,也需要先通過MAC查詢短地址,用短地址才能向?qū)Ψ桨l(fā)送消息。

    3 解決問題的系統(tǒng)設(shè)計

    整個系統(tǒng)分為上位機和下位機兩大部分,其中下位機部分分為兩個模塊,一個是連接在PC端,作為協(xié)調(diào)器,另一個是手持便攜式終端或顯示設(shè)備終端,配置為路由。上位機部分采用VC++編寫的系統(tǒng)管理軟件,負(fù)責(zé)比賽選手、裁判員、選手分組等信息的錄入和分組,以及歷史數(shù)據(jù)的管理,負(fù)責(zé)下位機數(shù)據(jù)的接收和處理[1],同時將數(shù)據(jù)同步到云主機的數(shù)據(jù)庫服務(wù)器中,通過云主機的Web服務(wù)發(fā)布,實現(xiàn)PC或智能設(shè)備的實時查詢,系統(tǒng)結(jié)構(gòu)圖如圖2所示。

    裁判員手上便攜式評分器終端設(shè)備的硬件采用的微控制單元(MCU)是STC公司的51內(nèi)核單片機STC15W4K16S4,內(nèi)置1T的51核,4個通用異步收發(fā)傳輸器(UART),內(nèi)置EEPROM,如圖3所示。

    節(jié)點采用E18-MS1-PCB,發(fā)射功率是4.5 dbm。每個手持便攜式終端內(nèi)含一塊STC15W4K16S單片機負(fù)責(zé)連接鍵盤、數(shù)碼管、蜂鳴器、指示燈和ZigBee模塊,可根據(jù)評分需要將數(shù)碼管升級為人機交互的液晶顯示屏。與PC端聯(lián)機的通信接收和控制模塊由無線收發(fā)模塊和USB設(shè)備控制單元組成,采用EBYTE公司的E18-MS1PA1-IPX的ZigBee模塊作為協(xié)調(diào)器,發(fā)射功率是20 dbm,協(xié)調(diào)器只連接電源、天線、USB轉(zhuǎn)232串口,如圖4所示。

    3.1 解決硬件設(shè)計問題

    考慮信號完整性問題,ZigBee模塊選用2.4 GHz自帶PCB天線的設(shè)計,而天線的匹配按照使用場景的環(huán)境狀況調(diào)整。ZigBee模塊設(shè)計位于PCB板的角落位置,并將天線部分下面的所有銅箔去掉,以免影響電容工作。當(dāng)整個PCBA裝入手持便攜式評分器外殼后,考慮介電常數(shù)的變化,會使得天線的中心頻點偏移,要解決這個問題需要調(diào)節(jié)PCB天線的附加電路。

    考慮電源的效率問題,采用9 V層疊電池供電,其放電特性是小電流時壽命長。而本設(shè)計實際需要3.3 V電壓,如果使用LDO設(shè)計,電流將會是持續(xù)大電流,使得電池壽命非常短。當(dāng)電源需要使用DC-DC開關(guān)電源,能量能有效率的傳遞,使得電池使用壽命成幾倍增加。

    3.2 解決軟件設(shè)計問題

    軟件設(shè)計部分由終端、PC端和云服務(wù)端三部分組成。

    1)終端設(shè)備軟件設(shè)計

    終端部分由于采用51內(nèi)核單片機,沒有使用操作系統(tǒng),直接使用keilC編寫單片機程序,整個程序結(jié)構(gòu)類似arduino IDE默認(rèn)的程序結(jié)構(gòu),主要工作需要在主循環(huán)內(nèi)完成,中斷使用信號通知,主循環(huán)接收信號處理中斷數(shù)據(jù),中斷處理主要是時鐘終端和串口終端,如圖5所示。

    鍵盤和數(shù)碼管是需要掃描的主要器件。為了不影響中斷響應(yīng)時間,限定主循環(huán)一次不能超過串口接收到一個字節(jié)的時間即大約為1/baudrate*11。鍵盤掃描程序的單次掃描雖不會超過這個時間限制,但按鍵消抖時間卻不足。因此,消抖操作需要多次循環(huán)來實現(xiàn)。每次記錄有效按鍵的掃描值,當(dāng)連續(xù)n次為同一個鍵則完成消抖。數(shù)碼管按照百分制三位顯示,顯示程序在單循環(huán)的時間內(nèi),如果完成所有的顯示,最后一個顯示位必定占最長的時間并且亮度高于其它各位。為避免因加延時而超出時間限制,程序增加計數(shù)器記錄循環(huán)第幾位,每次循環(huán)只顯示一位,確保各位亮度一致。

    每個ZigBee模塊都帶具有MAC地址,此地址要轉(zhuǎn)換為短地址進(jìn)行通信,每臺手持設(shè)備設(shè)置ID編號。本系統(tǒng)MCU帶有EEPROM,將ID編號存儲在EEPROM內(nèi),在初始化階段讀取ID編號完成每臺機器的識別。只需設(shè)置兩個字節(jié)長度的ID編號就足夠覆蓋整個網(wǎng)絡(luò)容量65535的需求。EEPROM寫入方式分為生產(chǎn)時燒寫EEPROM文件和利用程序在線寫入兩種方式,前者增加生產(chǎn)控制難度,后者需要自定義寫入的協(xié)議完成在線寫入。為避免在通信過程中誤擦除EEPROM,自定義協(xié)議要考慮與通信協(xié)議相區(qū)分,如表1所示。

    使用ZigBee模塊需要遵循其通信協(xié)議,主要涉及的通信協(xié)議列舉如表2所示。每個命令頭都帶有一組的命令,比如用作配置、讀取、發(fā)送,以發(fā)送命令為例說明。發(fā)送接收類協(xié)議分為組播、點播、廣播三種模式,本系統(tǒng)采用點播為主,即點對點通信,點播格式如表3所示。

    網(wǎng)絡(luò)通信期間還會收到一些網(wǎng)絡(luò)狀態(tài)轉(zhuǎn)換模塊會發(fā)出狀態(tài)轉(zhuǎn)換指示,如FFFF 是建立網(wǎng)絡(luò)、FFAA是加入網(wǎng)絡(luò)、FF00是失去網(wǎng)絡(luò)。這些要與收到的數(shù)據(jù)區(qū)分處理。

    接收方收到發(fā)送方的數(shù)據(jù)以及附加地址,需要區(qū)分短地址或MAC地址,在數(shù)據(jù)域內(nèi)自定義協(xié)議分辨每個命令及其長度,自定義的部分命令格式如表4所示。

    以下代碼節(jié)選自主循環(huán),主要舉例描述上述按鍵處理和自定義通信協(xié)議等部分

    while(1){

    showdigi();//數(shù)碼管顯示

    if (btickcle==1){

    ctemp=translate();//讀按鍵

    ......//按鍵消抖

    }

    if (sflag==1 && rflag1==0){

    if (curkey!=0xa){

    ......//*按鍵動作處理

    ......// 按鍵動作處理

    ......//數(shù)字按鍵動作處理

    }

    ......

    }

    if (rflag1==1){//串口1收到數(shù)據(jù)處理zigbee定義協(xié)議

    if (storetemp==0xff && rbuf1[ri1-1]==0x0){//失去網(wǎng)絡(luò)}

    if (storetemp==0xff && rbuf1[ri1-1]==0xAA){//加入網(wǎng)絡(luò)}

    if (storetemp==0xaa && rbuf1[ri1-1]==0x55){//設(shè)置成登陸模式}

    if (storetemp==0x46){//echo命令

    ......

    if (qid1==addr1 && qid2==addr2){//回答查詢

    rbuf1[0]=0xfc;rbuf1[1]=0x07;rbuf1[2]=0x03;rbuf1[3]=0x02;//addr地址

    rbuf1[4]=0x00;rbuf1[5]=0x00;//地址=00 00

    rbuf1[6]=0x46;rbuf1[7]=0x46;rbuf1[8]=0x44;.

    senddatas(rbuf1,9);

    }

    }

    if (storetemp=='x') {//寫eeprom地址1

    ......

    IapProgramByte(IAP_ADDRESS, rbuf1[ri1-1]);

    S1SendData('o');

    ......

    }

    if (storetemp=='w') {//寫eeprom地址2......}

    if (storetemp=='e') {//擦除eeprom地址2......}

    if (storetemp=='r') {//讀取eeprom地址2......}

    ......

    }

    }

    2)終端設(shè)備軟件設(shè)計

    PC端軟件開發(fā)采用VC++編寫,數(shù)據(jù)庫連接云主機的MS SQL Server2016。軟件程序提供硬件設(shè)置、開始工作、過程顯示、數(shù)據(jù)查詢以及分組顯示分?jǐn)?shù)等功能,頁面采用網(wǎng)頁格式,以便同時可在云主機的Web服務(wù)器中發(fā)布頁面。程序設(shè)計監(jiān)聽線程負(fù)責(zé)監(jiān)聽網(wǎng)絡(luò)、處理數(shù)據(jù)、寫入數(shù)據(jù)庫、觸發(fā)顯示的線程。監(jiān)聽線程不停輪詢串口數(shù)據(jù),根據(jù)上述自定義協(xié)議處理各種命令,流程圖如圖6所示。

    其中對每個不同的命令處理時,先驗證合法性,再寫入數(shù)據(jù)庫,觸發(fā)顯示窗口的WebBrowser控件刷新顯示。

    定時是由PC機完成的,終端只負(fù)責(zé)顯示定時器值,因此對每個接入的終端,保留一個數(shù)據(jù)結(jié)構(gòu),結(jié)構(gòu)內(nèi)保存它的ID和定時值等數(shù)據(jù)。將此數(shù)據(jù)結(jié)構(gòu)掛成一個鏈表。每秒鐘定時器處理函數(shù),對鏈表進(jìn)行遍歷,把定時值減少,并發(fā)出指令讓終端顯示定時值。若接收到終端停止信號,停止計時;否則在時間到時,讓終端蜂鳴器發(fā)出聲音,并停止計時,提醒裁判比賽結(jié)束。

    3)云服務(wù)端軟件設(shè)計

    云服務(wù)端軟件設(shè)計的開發(fā)工具使用Visual Studio 2017,在ASP.NET的開發(fā)框架下,采用C#語言編程[6],PC端軟件通過IP地址連接SQL Server 2016進(jìn)行數(shù)據(jù)庫讀寫,以網(wǎng)站形式部署在云服務(wù)器上,通過IIS發(fā)布網(wǎng)站[7],實現(xiàn)網(wǎng)頁瀏覽能自動適配PC或智能設(shè)備。

    4 技術(shù)效果分析

    下面以本系統(tǒng)在“2018年廣州市青少年計算機組裝及組網(wǎng)技能競賽”中的應(yīng)用為例,驗證系統(tǒng)開發(fā)的實效性。競賽場地位于廣州市廣播電視大學(xué)室內(nèi)羽毛球場,長度31米,寬度11米,場地信號測試正常,手持設(shè)備如圖7所示。

    參賽單位共31個,62名選手,每兩人一組,每輪7組同時進(jìn)行,5輪完賽,軟件實現(xiàn)按輪分組顯示和自動排名,系統(tǒng)界面顯示如圖8所示。

    競賽全程歷時5小時,手持便攜式評分器無需更換電池,能滿足競賽全程的電源供電,設(shè)備實物圖如圖所示。由于賽程時間較長的比賽,出現(xiàn)賽程隊伍晚到或提前離場的情況,遠(yuǎn)程Web查詢能有效為參賽隊伍、主辦單位、主管單位領(lǐng)導(dǎo)提供現(xiàn)場數(shù)據(jù)情況。

    5 總結(jié)

    基于ZigBee技術(shù)的無線評分系統(tǒng)是一套軟硬件整體開發(fā)的設(shè)計方案,低成本、低功耗的無線手持便攜式評分儀可以靈活應(yīng)用于各類的競賽活動,降低裁判員計時和評分的工作復(fù)雜度,實時顯示和統(tǒng)計數(shù)據(jù),在極大程度上提高比賽的公正性和公平性。本文重點闡述了技術(shù)實現(xiàn)的細(xì)節(jié),整套系統(tǒng)能滿足各類競賽的需求,無線通信技術(shù)實現(xiàn)零布線,但仍有改進(jìn)的 空間,例如接入競賽報名系統(tǒng)、微信實時推送競賽成績等引入智能設(shè)備的應(yīng)用,讓校園內(nèi)競賽數(shù)據(jù)納入智慧校園大數(shù)據(jù)中,這些都有待進(jìn)一步開發(fā)和完善。

    參考文獻(xiàn)

    [1] 戴延浩, 余先濤. Zigbee技術(shù)在便攜式打分儀中的應(yīng)用[J].武漢理工大學(xué)學(xué)報,2010(32):944-946.

    [2] 成都億佰特電子科技有限公司. E18系列通信協(xié)議說明書[EB/OL].[2018-07-22].http://www.cdebyte.com.

    [3] QST青軟實訓(xùn). ZigBee技術(shù)開發(fā)——CC2530單片機原理及應(yīng)用[J]. 北京:清華大學(xué)出版社,2015.

    [4] 深圳鼎泰克電子有限公司. CC2530F32,CC2530F64,CC2530F128,CC2530F256 Datasheet—Texas Instruments.[EB/OL]. [2018-07-22].www.dtkcn.com.

    [5] 深圳鼎泰克電子有限公司,CC2530 Software Examples UsersGuid—Texas Instruments,[EB/OL]. [2018-07-22].www.dtkcn.com.

    [6] 吳君勝,莫景彤. 基于微信公眾平臺的課程云簽到系統(tǒng)的設(shè)計與應(yīng)用[J],微型電腦應(yīng)用,2018,34(3):5-8.

    [7] 吳君勝. 基于虛擬機技術(shù)的遠(yuǎn)程訪問服務(wù)綜合性實驗教學(xué)的設(shè)計與應(yīng)用[J]. 微型電腦應(yīng)用,2016,32(1):30-31.

    [8] 王小強. ZigBee無線傳感器網(wǎng)絡(luò)設(shè)計與實現(xiàn)[M]. 北京:化學(xué)工業(yè)出版社,2012.

    (收稿日期: 2019.03.10)

    猜你喜歡
    物聯(lián)網(wǎng)
    基于物聯(lián)網(wǎng)的煤礦智能倉儲與物流運輸管理系統(tǒng)設(shè)計與應(yīng)用
    基于高職院校物聯(lián)網(wǎng)技術(shù)應(yīng)用人才培養(yǎng)的思考分析
    基于LABVIEW的溫室管理系統(tǒng)的研究與設(shè)計
    論智能油田的發(fā)展趨勢及必要性
    中國或成“物聯(lián)網(wǎng)”領(lǐng)軍者
    平山县| 桓台县| 丹棱县| 阿鲁科尔沁旗| 辛集市| 乐至县| 新和县| 五莲县| 桦南县| 旬邑县| 揭阳市| 和平区| 聂拉木县| 蓝山县| 新密市| 白玉县| 阳朔县| 临沧市| 义马市| 枝江市| 贵溪市| 木兰县| 静安区| 长沙市| 松阳县| 太原市| 句容市| 德保县| 陆丰市| 日土县| 永清县| 鱼台县| 辽中县| 赣榆县| 榆中县| 青田县| 阜新市| 仁寿县| 宽城| 云南省| 古田县|