基于ARM的傳感器數據采集與網絡傳輸系統_第1頁
基于ARM的傳感器數據采集與網絡傳輸系統_第2頁
基于ARM的傳感器數據采集與網絡傳輸系統_第3頁
基于ARM的傳感器數據采集與網絡傳輸系統_第4頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、基于ARM的傳感器數據采集與網絡傳輸系統傳感器數據采集、傳輸因微處理器的不同而方式各異,微處理器之間可采用串口、總線、無線等方式實現數據傳輸但微處理器與上位機的數據傳輸方式單一,大部分采用串口與上位機通信,無法實現多遠程主機對同一檢測對象的訪問本文設計了基于ARM 的數據采集與網絡傳輸系統,以便多個主機訪問同一檢測對象,并實現多機遠程監控某鋼件的受力  1 采集平臺硬件設計    基于ARM920T的ARM 處理器將AD轉換結果網絡打包后通過CS8900傳遞到網絡上,網絡上的主機可接收傳感器結果并在此系統上實現遠程監控某鋼件所受力(圖1) &#

2、160; 11 微處理器    基于ARM920T內核的微處理器因微型化、多樣的外圍設備接El(如觸摸屏接口、LCD接口、IICISP、IIS、AD、USB),適合多傳感器檢測平臺架構,并可移植Linux、uclinux等操作系統和miniGUI、QT 應用程序基于ARM9體系的$3C2440、$3C2410是兩款1632位RISC嵌入式微處理器,芯片上集成了MPLL,使得微處理器工作頻率最高達到203 MHz這兩款微處理器有兩個8位的SPI串行接口,可工作在查詢、中斷、DMA 3種工作方式,通過設置適當的數據傳輸頻率和主從工作方式,可直接與外圍SPI器

3、件通信,需要注意的是每次讀取外部設備數據時必須向8位傳輸寄存器寫1  12 傳感器電路    圖2所示為測重傳感器變換電路Ll 利用金屬應變片單臂電橋檢測直徑為1 cm的鋼件所受壓力應變片靈敏度系數K為2,電橋的阻值為120 Q為提高傳感器的靈敏度,電橋由LM358構成的恒流源提供5 mA 電流,壓力信號經過電路處理后可放大2 178倍可以通過調節滑動變阻器RP 實現調零操作壓力檢測所用的AD芯片為MAX147,它是具有SPI接口的12位串行8通道模數轉換模塊,可以與ARM 的SPI接口相接通過軟件選擇所需通道為保證AD轉換模塊的工作精度,由L

4、M385為MAX147提供25 V的參考電壓可以與ARM 的SPI接口相接通過軟件選擇所需通道為保證AD轉換模塊的工作精度,由LM385為MAX147提供25 V的參考電壓  2 采集系統軟件設計    采集系統的軟件部分包括AD驅動部分和TCP程序部分ARM 平臺中位于用戶空間的TCP程序可調用AD驅動實現傳感器數據采集21 驅動程序設計    Linux設備驅動程序可分為字符流設備驅動程序,塊設備驅動程序和網絡設備驅動程序MAX147的采集結果為12位的字符流設備,為實現在Linux環境下訪問MAX147,需要

5、編寫字符流驅動函數以下是AD驅動的讀寫函數部分代碼AD芯片MAX147的寫參數函數為: static ssize t write(struct file *filp,const char_user*buffer,sizetcount,loff_t*offset)If(readb(rSPSTA)& C241o SPSTA_READY)copy_from_user(buff,buffer,1);writeb(buff,rSPTDAT);return count;) )讀函數為:static ssizet read(struct file * flip,char user * bu

6、ffer, sizetcount。lof_ t*offset) ;if(readb(rSPSTA)&$3C2410一 SPSTA_ READY)writeb(OxO0,rSPTDAT); if(readb(rSPSTA)&$3C2410一SPSTA_READY)from_buff=readb(rSPRDAT);copy_to_user(buffer,&from buff,count);return count;··;     在嵌入Linux系統的ARM 處理器中,用戶空間訪問的只能是虛擬地址,所以為訪問SPI

7、控制器,需要通過ioremap()函數將宏rSPTDAT映射為發送寄存器的虛擬地址,rSPTDAT iorema(0x59000010,1),參數0x59000010為發送寄存器的實際物理地址為實現軟件查詢的工作方式,需要利用函數write(readb(rSPCON)&$3C2410SPCON TAGD & $3C2410一SPCON CPH A 一FMTA & $3C2410一SPCON SM OD POLL&$3C2410一 SPCON CPOL_HIGH,rSPCON)向SPI控制器寫入$3C2410一SPC0NSM0DP0LL參數,讀寫函數中利用if(r

8、eadb(rSPST A)$3C2410一SPSTA READY)讀SPI狀態寄存器,判斷SPI模塊的工作狀態驅動模塊的讀寫函數分別使用函數copytOuser(buffer,&from buff,count),copyfrom user( buff,buffer,1)與用戶空間中應用程序的讀寫函數傳遞數據. 22 TCP程序設計    為實現多主機網絡共享傳感器數據,本文提出采用TCP方式 進行數據傳輸圖3是服務器端的程序流程圖,服務器通過Listen()函數監聽客戶端的連接請求客戶端無需監聽(1isten()和接受連接(accept()步驟,只需申請連接(connect()函數實現)即可獲得傳感器數據客戶端程序和服務器端程序可通過read()、write()函數實現通信此系統中ARM 平臺作為服務器為網絡上的多客戶端提供檢測數據    3 試驗結果 對壓力檢測平臺進行標定 ,得測力檢測系統的非線性校正方程如下: F一1695+2403261U一315U      將非線性校正方程

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論