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

          新聞中心

          EEPW首頁 > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 通信技術(shù)在三坐標(biāo)測(cè)量系統(tǒng)中的應(yīng)用

          通信技術(shù)在三坐標(biāo)測(cè)量系統(tǒng)中的應(yīng)用

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

           ?、跧2C接收模塊[7]的FPGA實(shí)現(xiàn)

            接收模塊接收到總線監(jiān)視模塊發(fā)送來的起始位信號(hào)后,準(zhǔn)備接收總線上的數(shù)據(jù),接收到的地址后,判斷接收到的地址和電路板地址是否一致;當(dāng)兩者一致時(shí),向總線置應(yīng)答信號(hào)ACK,繼續(xù)接收下面的數(shù)據(jù),收到的數(shù)據(jù)置于接收FIFO中;如果地址不一致,則放棄總線。使用Modelsim對(duì)I2C接收模塊進(jìn)行仿真如圖4。


            I2CbusIsBusy:總線狀態(tài);I2C_start:起始信號(hào)

            myAddr:電路板的地址; rxBuf:接收寄存器

            rxFIFO_wr:接收FIFO的寫信號(hào)

            3、通訊協(xié)議

            上位機(jī)和橋接板之間采用RS232總線進(jìn)行數(shù)據(jù)傳輸,橋接卡和控制卡以及各個(gè)控制卡之間采用I2C總線進(jìn)行數(shù)據(jù)的傳輸,通訊采用主叫和應(yīng)答方式,數(shù)據(jù)傳輸中使用單片機(jī)進(jìn)行解碼[8]。

            主叫方發(fā)出指令后,等待對(duì)方響應(yīng),如果主叫方寫指令到被叫方,則被叫方收到指令執(zhí)行操作后返回確認(rèn)信號(hào);如果從主叫方讀指令,則被叫方在下一時(shí)刻占用總線后發(fā)送數(shù)據(jù)到主叫方,主叫方在0.5s內(nèi)沒有收到響應(yīng)包,表明傳輸失敗。若連續(xù)3次沒有響應(yīng),則與對(duì)方通信連接失敗。

            為了實(shí)現(xiàn)數(shù)據(jù)的一致性,RS-232和I2C總線采用相同的通信協(xié)議。

            數(shù)據(jù)傳輸時(shí)以“包”進(jìn)行封裝,中間加入長(zhǎng)度位和奇偶校驗(yàn)位。封裝格式:起始字符+長(zhǎng)度字符 +序列號(hào)+源地址+目的地址包類型+傳輸數(shù)據(jù)+包校驗(yàn)+結(jié)束字符;數(shù)據(jù)傳輸均采用ASCII碼。

            包的定義:起始位定義為‘#’,占用一個(gè)字節(jié),接收方接收到‘#’時(shí),表明數(shù)據(jù)開始傳輸;長(zhǎng)度字符定義為除起始字符、結(jié)束字符和校驗(yàn)字符的所有原始字符的長(zhǎng)度,占用一個(gè)字節(jié);源地址:發(fā)送方地址,占用一個(gè)字節(jié);目的地址:接收方地址,占用一個(gè)字節(jié),當(dāng)為‘00’時(shí),定義為廣播地址;包類型:占用一個(gè)字節(jié),表明數(shù)據(jù)的類型,接收方根據(jù)包類型執(zhí)行對(duì)應(yīng)操作;傳輸數(shù)據(jù):控制量的大小;包校驗(yàn):定義為長(zhǎng)度字符,源地址,目的地址,包類型和數(shù)據(jù)之和,占用兩個(gè)字節(jié);結(jié)束位:定義為‘~’,當(dāng)接收方接收到結(jié)束字符時(shí),表明本包傳輸結(jié)束,對(duì)數(shù)據(jù)包進(jìn)行處理,長(zhǎng)度位和校驗(yàn)位正確時(shí)執(zhí)行指令,否則,放棄改數(shù)據(jù)包。

            4、實(shí)驗(yàn)結(jié)果

            使用該通訊實(shí)現(xiàn)和四控制卡之間的通訊控制,使用串口助手進(jìn)行數(shù)據(jù)收發(fā),在發(fā)送數(shù)據(jù)間隔為5us的情況下對(duì)該通訊進(jìn)行測(cè)試,在進(jìn)行8小時(shí)的測(cè)試中,沒有出現(xiàn)數(shù)據(jù)丟失、錯(cuò)誤、死機(jī)現(xiàn)象;使用廣播地址進(jìn)行數(shù)據(jù)發(fā)送,返回信號(hào)正確,沒出現(xiàn)死機(jī)現(xiàn)象。

            使用該通訊系統(tǒng)對(duì)四個(gè)電機(jī)進(jìn)行控制,電機(jī)實(shí)際輸出情況如表1:

          實(shí)驗(yàn)結(jié)果
            本實(shí)驗(yàn)數(shù)據(jù)證明了該通訊系統(tǒng)的可用性及數(shù)據(jù)傳輸?shù)臏?zhǔn)確性。

            使用該系統(tǒng)采用廣播地址實(shí)現(xiàn)四個(gè)電機(jī)同步聯(lián)動(dòng),各個(gè)軸的運(yùn)動(dòng)情況如表2:

          實(shí)驗(yàn)結(jié)果
            本實(shí)驗(yàn)數(shù)據(jù)證明了各個(gè)電機(jī)實(shí)現(xiàn)了指定的轉(zhuǎn)動(dòng)角度;各個(gè)軸運(yùn)動(dòng)期間,電機(jī)的狀態(tài)經(jīng)過I2C總線[9]及RS-232總線通訊系統(tǒng)成功的發(fā)送到了上位機(jī),通訊系統(tǒng)沒有出現(xiàn)死機(jī)和數(shù)據(jù)丟失,經(jīng)過該實(shí)驗(yàn),證明了數(shù)據(jù)傳輸?shù)恼_性。

            4、結(jié)論

            本系統(tǒng)采用FPGA進(jìn)行通訊系統(tǒng)的設(shè)計(jì),提高了數(shù)據(jù)的傳輸率和準(zhǔn)確性,實(shí)現(xiàn)了對(duì)控制機(jī)構(gòu)及時(shí)、快速的控制,有效防止突發(fā)事件的處理,經(jīng)實(shí)驗(yàn)證明,本系統(tǒng)快速、準(zhǔn)確的實(shí)現(xiàn)了數(shù)據(jù)的傳輸,可以有效快速的實(shí)現(xiàn)對(duì)電機(jī)的速度、位置控制、準(zhǔn)確的讀取電機(jī)的編碼器信號(hào)。


          上一頁 1 2 下一頁

          評(píng)論


          相關(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); })();