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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于MSP430F的車體調(diào)平裝置的設(shè)計與實現(xiàn)

          基于MSP430F的車體調(diào)平裝置的設(shè)計與實現(xiàn)

          作者: 時間:2012-05-17 來源:網(wǎng)絡(luò) 收藏

          2 接受命令格式定義

          讀角度命令格式如圖2所示。該命令僅在應(yīng)答工作模式下有效。每個傳感器都有固定ID字(FFFF)和用戶ID字(用戶可設(shè)定,初始為0000),2個ID字都可讀角度。

          圖2 讀角度命令格式

          數(shù)據(jù)處理與無線數(shù)傳電路設(shè)計

          無線數(shù)傳系統(tǒng)是無線數(shù)字傳輸系統(tǒng)的簡稱,該系統(tǒng)以無線數(shù)傳模塊為平臺,在不影響裝備功能情況下,實現(xiàn)數(shù)字終端之間數(shù)字信息的無線傳輸。數(shù)據(jù)處理與無線數(shù)傳的主要任務(wù)是接收傾角傳感器的數(shù)據(jù)輸出,計算每個千斤頂相對車體水平面所要調(diào)整的角度,并通過無線數(shù)傳模塊傳輸給操縱指示器。

          F149單片機簡介

          單片機具有可靠性高、功耗低、擴展靈活、體積小、價格低和使用方便等優(yōu)點,廣泛應(yīng)用于儀器儀表、專用設(shè)備智能化管理及過程控制等領(lǐng)域,有效地提高了控制質(zhì)量與經(jīng)濟效益。本設(shè)計選用TI公司的16位超低功耗混合型微處理器F149(見圖3)作為核心控制器,它的主要特點是:

          (1)低電壓、超低功耗

          該單片機的電源電壓采用1.8V~3.6V低電壓,RAM數(shù)據(jù)保持方式下耗電僅0.1μA,在2.2V、1MHz主頻的活動模式時工作電流為280μA,I/O輸入端口的漏電流最大僅50nA。

          (2)強大的處理能力

          該單片機為16位的精簡指令集(RISC)結(jié)構(gòu),具有豐富的尋址方式(7種源操作數(shù)尋址、4種目的操作數(shù)尋址)、簡潔的27條內(nèi)核指令以及大量的模擬指令;大量的寄存器以及片內(nèi)數(shù)據(jù)存儲器都可參加多種運算,還有高效的查表處理方法及較高的處理速度,一個時鐘周期可以執(zhí)行一條指令,使單片機在8MHz晶振工作時,指令速度可達(dá)8MIPS。

          (3)豐富的片上外圍模塊

          該單片機集成了較豐富的片內(nèi)外設(shè):模擬比較器A、定時器A、定時器B、串行通信接口USART0和USART1、硬件乘法器、12位ADC、端口1~6、看門狗等。

          (4)系統(tǒng)工作穩(wěn)定

          該單片機在上電復(fù)位后,首先由DCOCLK啟動CPU,保證程序從正確的位置開始執(zhí)行,同時也保證了晶體振蕩器有足夠的起振和穩(wěn)定時間;之后通過軟件可設(shè)置適當(dāng)?shù)募拇嫫鞯目刂莆粊泶_定最后的系統(tǒng)時鐘頻率。在CPU運行中,如果MCLK發(fā)生故障,DCO會自動啟動,以確保系統(tǒng)正常工作。如果程序跑飛,可以用看門狗將其復(fù)位。

          (5)方便高效的開發(fā)環(huán)境

          F149片內(nèi)有JTAG調(diào)試接口,還有可電擦寫的FLASH存儲器,因此采用先通過JTAG接口下載程序到FLASH內(nèi),再由JTAG接口控制程序運行、讀取片內(nèi)CPU狀態(tài),以及存儲器內(nèi)容等信息供設(shè)計者調(diào)試。由于單片機可支持串行在線編程,使開發(fā)變得更加簡便,并且開發(fā)的仿真器價格低廉,不需要昂貴的編程器。

          無線數(shù)傳電路的設(shè)計

          數(shù)據(jù)處理與無線數(shù)傳電路設(shè)計主要包括主控制器電路、傾角傳感器接口電路、無線數(shù)傳模塊接口電路、電源電路等?;竟ぷ髟硎牵合到y(tǒng)通上電后,主控制器控制傾角傳感器按固定間隔檢測火箭炮車體姿態(tài),將接收到的檢測結(jié)果運算處理,計算每個千斤頂?shù)恼{(diào)整量,再通過無線數(shù)傳模塊發(fā)送給操縱指示器。

          (1)主控制器及接口電路設(shè)計

          主控器采用MSP430F149單片機,串口1經(jīng)TTL-RS232電平轉(zhuǎn)換接傾角傳感器,用于接收傳感器輸出數(shù)據(jù),串口2 TTL電平接無線數(shù)傳模塊,發(fā)送車體縱橫向傾斜角度和調(diào)整角度至操縱指示器。主控制器及接口電路如圖3所示。

          圖3 主控器及接口電路圖

          (2)電源電路設(shè)計

          電源采用12V/1000mAh的鋰電池,直接為傾角傳感器供電,再經(jīng)兩路DC-DC轉(zhuǎn)換,分別轉(zhuǎn)換至9V和3.3V,9V電源為無線數(shù)傳模塊供電,3.3V為主控制器及接口電路供電,充電電路采用LM317芯片,恒流方式充電。電源電路見圖4所示。

          (3)無線數(shù)傳模塊的選用

          在一些多測試點的系統(tǒng)中,伴隨傳感器而來的是大量數(shù)據(jù)線纜。眾多的線纜不僅帶來布線的復(fù)雜不便,而且存在著短路、短線隱患,成本高,易老化,還給系統(tǒng)的調(diào)試和維護(hù)增加了難度。另外,在一些特殊的應(yīng)用場合,需要將傳感器放置在有危險的封閉環(huán)境中進(jìn)行工作,試圖通過連線的方法得到傳感器的信號顯然是有一定難度的。而采用無線方式來實現(xiàn)信號的傳送,可以解決這一問題。相比有線傳輸,無線傳輸具有不占據(jù)空間、沒有布線要求、成本低、可靠性高、維護(hù)方便及傳輸中的干擾較少等優(yōu)點,這也在一定程度上提高了傳輸?shù)目煽啃浴?BR>
          圖4 電源電路圖

          根據(jù)實際情況,本文采用ZT-TR43F無線數(shù)傳模塊,它是一款無線收發(fā)一體的低功耗通信模塊。該模塊的技術(shù)指標(biāo)如下:①載波頻率為433MHz,工作頻率為428MHz~435MHz;②最大發(fā)射功率5mW,接收靈敏度﹣105dBm;③采用FSK調(diào)制,采用前向信道糾錯編碼,抗干擾能力強;④有八個工作信道可供選擇;⑤傳輸速率9.6kbps;⑥降低噪聲放大器LNA、功率放大器PA、壓空振蕩器VCO等大部分功能集成在芯片內(nèi),外圍電路簡單易于開發(fā)。采用該無線數(shù)傳模塊,可以使車體滿足某型火箭炮調(diào)平時的無線數(shù)傳要求:①適當(dāng)?shù)耐ㄐ啪嚯x,一般以不超過30m為宜,通信功率過大使通信距離過遠(yuǎn),會造成炮與炮之間相互干擾;②較強的抗干擾能力,系統(tǒng)在較強的外界干擾中也能正常工作;③較低的功耗,該裝置野外應(yīng)用,無固定供電電源,只能靠電池維持系統(tǒng)運行。

          無線模塊ZT-TR43F與單片機接口提供了RS232/TTL/RS485三種接口方式,本系統(tǒng)采用TTL接口方式,方便與MSP430F149單片機的接口。其中MSP430單片機的RXD、TXD口分別與無線模塊的TXD、RXD口相接,地線與地線相接。

          考慮到多門火箭炮同時調(diào)平時,有多個同時工作,為防止之間相互干擾,采取不同的通信信道或不同編碼方式識別,每個裝置上帶有撥碼盤,通過撥碼盤設(shè)置各自的通信信道或識別碼。



          評論


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