<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于ZigBee技術(shù)的角度同步采集傳輸系統(tǒng)設(shè)計(jì)

          基于ZigBee技術(shù)的角度同步采集傳輸系統(tǒng)設(shè)計(jì)

          作者: 時(shí)間:2009-07-08 來源:網(wǎng)絡(luò) 收藏


          本文引用地址:http://www.ex-cimer.com/article/188842.htm


          前6個(gè)時(shí)隙內(nèi),主節(jié)點(diǎn)依次對各子節(jié)點(diǎn)進(jìn)行輪詢,獲取信息并對其進(jìn)行校驗(yàn)。后2個(gè)時(shí)隙用于重傳,當(dāng)1個(gè)或多個(gè)子節(jié)點(diǎn)的信息丟失或校驗(yàn)發(fā)生錯(cuò)誤時(shí),采取“先丟失/出錯(cuò),先重傳”的方式進(jìn)行重傳。
          每個(gè)時(shí)隙內(nèi),主節(jié)點(diǎn)發(fā)送“開始信息”的命令幀至指定子節(jié)點(diǎn),并啟動(dòng)時(shí)隙超時(shí)定時(shí)器。子節(jié)點(diǎn)在接收到該命令幀后,立刻將從編碼盤信息中提取出的有效信息封裝成幀,經(jīng)由射頻模塊發(fā)送給主節(jié)點(diǎn)。當(dāng)定時(shí)器超時(shí)時(shí),主節(jié)點(diǎn)若還未收到該子節(jié)點(diǎn)的角度信息幀,或收到角度信息幀但校驗(yàn)錯(cuò)誤,則記錄該子節(jié)點(diǎn)的編號(以便在重傳時(shí)隙內(nèi)令其重發(fā)),并轉(zhuǎn)入輪詢下一子節(jié)點(diǎn)。若接收到正確報(bào)文,則直接轉(zhuǎn)入下一子節(jié)點(diǎn)的輪詢。
          4.3子節(jié)點(diǎn)采集時(shí)刻同步
          組網(wǎng)完成之后,主節(jié)點(diǎn)無線發(fā)送角度采集廣播給各個(gè)子節(jié)點(diǎn),指示其以一定頻率采集編碼盤信息,提取并發(fā)送有效的角度信息。由于主節(jié)點(diǎn)以無線方式發(fā)送角度采集廣播,該廣播到達(dá)各個(gè)子節(jié)點(diǎn)的時(shí)間可能并不一致。若子節(jié)點(diǎn)在收到該廣播后立刻開始讀取編碼盤信息,子節(jié)點(diǎn)所讀到并提取的關(guān)節(jié)角度并不是同一時(shí)刻點(diǎn)的,導(dǎo)致測量機(jī)無法準(zhǔn)確工作,所以需要有“子節(jié)點(diǎn)采集時(shí)刻同步”的環(huán)節(jié)。
          我們采取的做法是:在組網(wǎng)完成之后,主節(jié)點(diǎn)發(fā)送角度采集廣播之前, 6個(gè)子節(jié)點(diǎn)逐一與主節(jié)點(diǎn)進(jìn)行信息交互,子節(jié)點(diǎn)求取出信息幀的空中時(shí)間ti(i為子節(jié)點(diǎn)的編號,i=1,2…6;)。當(dāng)所有子節(jié)點(diǎn)接收到主節(jié)點(diǎn)發(fā)送的角度采集廣播后,分別延遲(T C ti)時(shí)間再采集編碼盤信息,其中T為常數(shù),T>max[t1, t2, …t6]。那么,從主節(jié)點(diǎn)發(fā)送角度采集廣播的那一時(shí)刻開始,各子節(jié)點(diǎn)都經(jīng)過了[ti +(T C ti)] = T時(shí)間后讀取編碼盤信息,實(shí)現(xiàn)了子節(jié)點(diǎn)采集時(shí)刻同步。
          求取信息幀空中時(shí)間ti的具體過程如圖5所示。子節(jié)點(diǎn)i在Ti1時(shí)刻發(fā)送一個(gè)“請求時(shí)間校正幀”給主節(jié)點(diǎn),主節(jié)點(diǎn)在Ti2時(shí)刻收到該幀,并于Ti3時(shí)刻回復(fù)第一個(gè)應(yīng)答幀,應(yīng)答幀的內(nèi)容為時(shí)刻Ti2。子節(jié)點(diǎn)在Ti4時(shí)刻收到應(yīng)答幀,獲得時(shí)間Ti2。主節(jié)點(diǎn)在Ti3時(shí)刻后任意延遲一段時(shí)間發(fā)送第二個(gè)應(yīng)答幀,應(yīng)答幀的內(nèi)容為時(shí)刻Ti3,使子節(jié)點(diǎn)能在某時(shí)刻獲取時(shí)間Ti3。

          注:在此我們假定,信息幀由主節(jié)點(diǎn)發(fā)送至子節(jié)點(diǎn)需要的空中傳輸時(shí)間和信息幀由子節(jié)點(diǎn)發(fā)送至主節(jié)點(diǎn)需要的空中傳輸時(shí)間相同且穩(wěn)定。且信息幀長度等于主節(jié)點(diǎn)發(fā)送的“角度采集廣播幀”長度。
          假設(shè)主節(jié)點(diǎn)的時(shí)鐘超前子節(jié)點(diǎn)△Ti,信息幀的空中傳輸時(shí)間為ti,可得:
          Ti2 = Ti1 + △Ti + ti ①
          Ti4 = Ti3 - △Ti + ti ②
          由式①和②聯(lián)立可得:
          △Ti = (Ti2 - Ti1 - Ti4 + Ti3)/2
          ti = (Ti2 - Ti1 + Ti4 - Ti3)/2
          5.主節(jié)點(diǎn)和工控機(jī)的通信
          主節(jié)點(diǎn)和工控機(jī)采用RS-232 串行數(shù)據(jù)傳輸,串行口通信方式為異步串行通信,速率為19200bps,信息格式為1位開始位、8 位數(shù)據(jù)位、1個(gè)停止位、無奇偶校驗(yàn)位,采用中斷方式進(jìn)行數(shù)據(jù)傳輸。以下是串口初始化程序片斷:
          void ConsoleInit(void)
          {
          #if defined(USART_USE_BRGH_HIGH)
          TXSTA = 0x24;//設(shè)置串口發(fā)送狀態(tài)寄存器
          #else
          TXSTA = 0x20;
          #endif
          RCSTA = 0x90; //設(shè)置串口接收狀態(tài)寄存器
          // SPBRG_VAL = CLOCK_FREQ/BAUD_RATE/64 C 1,BAUD_RATE=19200bps
          SPBRG = SPBRG_VAL;
          TXIE = 1;//默認(rèn)情況下串口處于發(fā)送狀態(tài),使能發(fā)送中斷
          TXIP = 1;
          //RCIE = 1;//若需要執(zhí)行串口接收,使能發(fā)送中斷
          //RCIP = 1;
          }
          6.結(jié)論
          將信息傳輸無線化,可免去關(guān)節(jié)臂式測量機(jī)的臂內(nèi)電纜線,實(shí)現(xiàn)關(guān)節(jié)的無限旋轉(zhuǎn)。本文設(shè)計(jì)的“基于技術(shù)的角度傳輸系統(tǒng)”的無線硬件設(shè)計(jì)、軟件設(shè)計(jì)解決方案經(jīng)測試運(yùn)行穩(wěn)定,無線通信誤碼率低、可靠性高、安全性好。在室內(nèi)測試環(huán)境下,無線收發(fā)速率可以穩(wěn)定達(dá)到18kbps,重傳后誤碼率不高于10¬-5數(shù)量級.
          本文作者創(chuàng)新點(diǎn):將無線通信技術(shù)與機(jī)械測量相結(jié)合,設(shè)計(jì)了一套基于技術(shù)的角度傳輸系統(tǒng),應(yīng)用在關(guān)節(jié)臂式測量機(jī)上,實(shí)現(xiàn)了關(guān)節(jié)的無限旋轉(zhuǎn)。


          上一頁 1 2 下一頁

          關(guān)鍵詞: ZigBee 角度 傳輸 同步采集

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();