<rp id="9e49j"></rp>

<th id="9e49j"><pre id="9e49j"></pre></th>
  • <dd id="9e49j"><track id="9e49j"></track></dd>
    1. <dd id="9e49j"></dd>

      <rp id="9e49j"></rp>

          <li id="9e49j"></li>
            服務熱線0535-6936196

            磁致伸縮位移傳感器中CPLD與單片機通信設計

            來源:拿度科技 瀏覽量: 時間:2021-08-09 15:11

              

                   在一些電子系統設計中,需要大量的數據運算又需要處理大量的時序邏輯,單獨使用單片機或CPLD來完成系統設計并不是一個好的選擇。單片機善于處理大量的數據,而CPLD內部有大量的門電路,組合邏輯的功能很強。在功能上單片機與CPLD具有很強的互補性,采用CPLD+單片機結構的系統能充分發揮2種處理器的優勢。采用該結構的系統實現的關鍵之一是解決CPLD與單片機之間的數據通信問題。CPLD與單片機之間的通信方式有2種:并行通信和串行通信。并行通信接口電路設計復雜、傳輸速率高;串行通信接口電路設計簡單、傳輸速率不高。目前,已有UART、I'C、SPI等串行通信規范可以實現兩者之間的通信,但這些接口作為單片機中應用廣泛的通信接口,往往會被其他應用所占用,且消耗外部硬件資源。同時 CPLD要實現以上的串行接口,其邏輯設計比較復雜。介紹了 一種采用CPLD+單片機結構的磁致伸縮位移傳感器系統,重點研究了該傳感器中CPLD與單片機通信系統的設計與實現,介紹了 一 種簡單、靈活的自定義串行通信方法,有效解決以上常規串行通信方式的問題。
            2、 位移傳感器系統及通信方案的設計
            2.1 位移傳感器系統的設計
                   磁致伸縮位移傳感器利用磁致伸縮效應將位移量轉化為時間間隔來實現位移測量。該傳感器采用CPLD+單片機結構,充分發揮CPLD快速準確測量時間、編程方便靈活和單片機數據運算快的優勢 。
                  核心測量系統主要由Altera公司的CPLD器件EPM570Tl0015和Silicon Labs公司的C8051F310單片機組成。CPLD主要功能是測量激勵脈沖的產生到感應脈沖的接受之間的時間間隔T, 并將數據傳送給單片機。CPLD首先將激勵脈沖與經過感應脈沖信號處理電路處理后的感應脈沖通過時間間隔獲取電路得到脈寬與時間間隔T相等的PWM信號。將PWM信號作為閘門信號控制計數器對高頻脈沖進行計數,產生16位計數值并通過計數數據處理電路消除隨機誤差。最終通過通信接口電路將處理后的16位計數值傳送給單片機。
                   C8051F310單片機主要把CPLD傳輸的計數值轉換為位移值,在LCD上顯示,同時發送到PC實時監控。磁致伸縮位移傳感器系統采用CPLD+單片機結構保證了測量結果的高準確度,但前提是必須具有高準確度的數據通信系統,來保證傳感器測量結果的準確性與可靠性。
             2.2 CPLD與單片機通信方案的分析與設計
                   在磁致伸縮位移傳感器測量系統中,其測量周期為18ms,CPLD對時間間隔T計數產生16位計數值。在每個測量周期結束之前,通過高電平為40 ns的清零信號將數據進行清零。由此可知在傳感器系統中需要傳輸的數據量不大,可選用串行通信傳輸且數 據 刷新周期為18ms,只要保證數據通信時間不超過18 ms即可實時顯示位移值,對數據傳輸的速率要求不高。該通信系統需要解決的是在計數結束之后,CPLD將有效的16位計數值傳輸給單片機進行處理??紤]到C8051F310單片機的1/0口個數的局限性,需減少數據線的個數,將16位數據轉換為2位數據串行輸出。結合傳感器產生的16位計數值的特性,采用自定義串行通信方式進行通信,以計數值為Ox03E9為例。在18 ms的測量周期里,首先CPLD從傳感然產生的16位計數值中提取有效的計數數據Ox03E!J。CPLD傳送握手信號通知單片機進行數據讀取,待計數結束之后16位計數數據穩定,單片機通過1/0口輸出3位控制信號給CPLD, 讀取2位串行數據進行處理。
            磁致伸縮位移傳感器
            3、自定義串行通信系統的設計與實現
            3.1自定義串行通信系統的總體設計
                    CPLD內部電路主要由時間間隔獲取電路、計數數據產生電路與通信接口電路組成。計數數據產生電路測量時間間隔T產生16位計數數據,為數據信號做準備;時間間隔獲取電路產生脈寬與時間間隔T相等的PWM信號,為握手信號做準備;通信接口電路實現數據、控制、握手信號的接口功能,與單片機建立通信。單片機主要由數據讀取模塊、數據處理模塊與UART模塊組成。其主要將CPLD中所測量的16位計數數據讀入并處理產生位移值,傳送給PC實時監控。單片機與PC之間采用RS485串行標準進行通信連接,實現遠程通信傳輸,滿足傳感器工業現場要求。
            3. 2 CPLD 部分關鍵通信電路設計與實現
                   通信接口電路是 CPLD 中關鍵的通信電路,其由并轉串電路延與時電路組成的,采用 V H D L 語言描述 ,并在軟件平臺 Q uartus II 上進行仿真,驗證系統功能。
                   并轉串電路提供2位數據信號輸出接口,從傳感器的數字信號中提取有效的 16 位計數數據,通過并轉串轉為 2位數據串行輸出;提供3位控制信號輸人接口,單片機輸人控制信號,讀取 CPLD 數據信號輸出的 2 位數據。從傳感器的數字信號中提取有效的 16 位計數數據是最為關鍵的。在每個 18 ms 測鼠周期中,計數結束后(PWM 信號變為低電平),有效的 16 位計數數據保持穩 定,但在最后40 ns內清零變為 0x0000。為了避免受 0x0000 的影響,故在捕捉到PWM 信號下降沿時,將輸入數據中有效的 16 位計數數據鎖存在寄存器中。然后單片機依次輸人 "000"到 "111"給控制信 號輸入接口,數據信號輸 出接 口依次輸 出寄存器中存儲的有效的16位計數數據的低2位到高2位。
                   延時電路提供握手信號輸出接口,將 PW M 信號的高電平延時一定的時問,傳送給單片機的1/0口進行查詢。為了保證計數結束后,有效的 16 位計數數據鎖存在寄存器中巳準備好進行傳輸,可設定延時 100s。CPLD頂層GDF輸入圖中pwmw電路為時間間隔獲取電路,模擬周期為18 ms, 高電平為20s的 PWM 信號。sensor_data 電路為計數數據產生電路,對 PW M信號數產生 16 位數字信號,提供給通信接口電路做處理,驗證通信接口電路的功能。 delay_ l00s電路 、Datal6to2 電路為延時電路 、并轉串電路。CPLD 通信功能仿真波形在 18 ms 的測扯周期中,需要傳輸的有效數據為 Ox03E9。當 握手信號handshake為低電平時,根據控制信 號 control的值,數據信號 Data_out依次輸出有效數據 Ox03E9 的低兩位到高兩位。由此可知, CPLD 電路能實現通信接 口的功能,給單片機提供穩定準確的數據,建立通信。
            3.3 單片機部分通信模塊設計
                   單片機部分通信模塊主要由數據讀取模塊與數據處理模塊組成。數據讀取模塊是整個單片機通估部分中關鍵的部分.根據時序圖進行軟件設計,單片機查詢CPLD輸出的握手信號所對應的I/0口是否為低電平,若為低屯平.則說明數據巳準備好;反之.說明未準備好,則繼續查詢I/0口。待數據準備好,單片機對應的1/0口依次寫"000"到"111 "輸入CPLD的控制接口。據此, CPLD的數據接口輸出兩位數據給汁片片機對應的I/0口讀取,并送入寄存器存儲,便千通信數據處理。
                   數據處理模塊主要實現將讀取的計數數據轉化為對應的位移值。首先將寄存器內存儲的2位數據進行移位操作,產生16位計數值。根據磁致伸縮位移傳感器的T作原理,位移=時間間隔TX磁致扭轉波的傳播速度,共中傳播速度為2 800 m/s'1。由16位計數值與CPLD品振可計算出相應的時間間隔T,從而可得相應的位移。
            4 通信系統性能比較及實驗驗證
            4. l 通信系統性能比較
                   C8051F310單片機現有資源: 29個I/0口、1個UART及1個SPI串行通信接口、無總線工作模式且其工作時鐘為24. 5 MHz。據此可知,CPLD與C8051F310單片機之間通信可以采用如下常用通信方式: UART方式、 SPI方式、I/0口模擬總線方式并行通信。自定義串行通信方式與以上3種常用的通估方式比較。
                   與常用的通信方式比較,自定義串行通信方式有如下優點:通信方式接口屯路簡單;在整個通估過程中,數據信號2個、控制信號3個、握手信號1個,占用C8051F310單片機6個I/0口;無需消耗單片機的外部硬件資源;單片機編程簡單;同時CPLD內部主要實現通估接口模塊,邏輯設計簡單,消耗的邏輯單元少。但自定義串行通信方式的通信速率相比較其他的3種方式,不夠快。該通信系統的數據批不大、對數據傳輸的速率要求不高,自定義串行通信方式可以滿足通信速率的要求。
            4.2 通信系統的實驗驗證
                   為了驗證CPLD與單片機通信系統的性能,需對所設計的通信系統進行測試。由于磁致伸縮位移傳感器所測獄結果的準礎度巾傳感器各組成部分所決定.所以通過傳感駢測扯的位移值不能直觀的休現通信系統的性能。故對單獨的通信系統進行實驗驗證。搭建CPLD與1y1片機通信電路.將頂層GDF輸入圖燒錄到CPLD中進行通信實驗驗證。將單片機讀入的計數值處理后傳送給PC, 通過串口調試助下觀測實驗結果。串口助手上循環顯示“s01001". 其中S為數據標志位,01001為計數值.采用十進制表示。該結果與CPLD模擬的16位計數值“0x03E9”相同.說明CPLD與單片機可建寬良好的通信.井且能保證數據的準確性、實時件.
            5、結論
                   提出了一種CPLD與單片機的自定義串行通信系統的實現方案.應用千磁致伸縮位移傳感器中。經實驗驗證,該通信系統硬件電路簡單,邏機設計簡巾,單片機通信程序可讀性好.保證了數據通信的準確性、可靠性。 這種通信方式能有效地應用于處理數據不大、傳輸速率要求不高的數據傳輸場合,具有較高的工程應用價值。該通信系統充分利用了CPLD與單片機的優點,選用晶振稍高的CPLD或單片機,可得到更高的處理速度和精度,提高通信系統的準確度,從而更好的滿足磁致伸縮位移傳感器高精度的需求。


            上一篇:磁致伸縮液位計的典型應用


            下一篇:磁致伸縮位移傳感器在焦爐現場的應用

            關閉
            磁致伸縮位移傳感器店鋪二維碼磁致伸縮液位傳感器店鋪二維碼
            磁致伸縮位移傳感器logo圖片
            山東省煙臺經濟技術開發區珠江路32號3號樓
            Copyright ? 2019 NADO | All right reserved. 魯ICP備16037561號
            網站地圖 

            掃碼關注拿度微信

            上海哪里妹子便宜又好