基于Linux的嵌入式測控系統(tǒng)設計_第1頁
基于Linux的嵌入式測控系統(tǒng)設計_第2頁
基于Linux的嵌入式測控系統(tǒng)設計_第3頁
全文預覽已結(jié)束

付費下載

下載本文檔

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

文檔簡介

基于Linux的嵌入式測控系統(tǒng)設計

0引言當前,在工業(yè)控制領域,網(wǎng)絡控制技術(shù)快速發(fā)展。網(wǎng)絡控制要求測控系統(tǒng)必須具備兩方面的功能:一方面要在現(xiàn)場完成復雜的測控任務,通常一些任務具有一定的實時性的要求;另一方面要求測控系統(tǒng)能夠與某一類型的控制網(wǎng)相連,實現(xiàn)遠程監(jiān)控。而在目前應用的大多數(shù)測控系統(tǒng)中,嵌入式系統(tǒng)的硬件采用8/16位的單片機;軟件多采用匯編語言編程,僅包含一個簡單的循環(huán)處理的控制流程;單片機與單片機或上位機之間通信通過RS232、RS485來組網(wǎng)。這些網(wǎng)絡存在通信速度慢、聯(lián)網(wǎng)功能差、開發(fā)困難的問題。而工業(yè)以太網(wǎng)已逐步完善,在工業(yè)控制領域獲得越來越多的應用。工業(yè)以太網(wǎng)使用了TCP/IP協(xié)議,便于聯(lián)網(wǎng),并具有高速控制網(wǎng)絡的優(yōu)點?,F(xiàn)在,32位嵌入式CPU價格的下降,性能指標的提高,為嵌入式系統(tǒng)的廣泛應用提供了可能性?;谏鲜銮闆r,我們將嵌入式系統(tǒng)應用于測控系統(tǒng),可大大提高測控系統(tǒng)的性能,嵌入式系統(tǒng)一般應用嵌入式操作系統(tǒng)來開發(fā)。在嵌入式操作系統(tǒng)的選擇上,由于Linux有完整開放的源代碼,可針對具體應用修改和優(yōu)化系統(tǒng),內(nèi)核穩(wěn)定,適用于多種CPU和多種硬件平臺,支持網(wǎng)絡等特點,因而選擇Linux作為嵌入式操作系統(tǒng)。1測控系統(tǒng)總體設計1.1設計目標測控系統(tǒng)以基于Linux的嵌入式系統(tǒng)為核心,設計目標歸納起來主要有以下幾點:(1)測控任務在現(xiàn)場完成。測控系統(tǒng)采用分散的控制策略,系統(tǒng)正常運行時上位機只起到狀態(tài)監(jiān)控的作用。在工業(yè)現(xiàn)場完成數(shù)據(jù)測量、數(shù)據(jù)處理、過程控制等多種任務,能確保一些任務完成的實時性。(2)具有一定的自診斷、自校正的功能,將故障情況上傳給上位機,便于維護人員查錯、排錯。具有動態(tài)顯示和數(shù)據(jù)存儲能力。(3)測控系統(tǒng)可連到工業(yè)以太網(wǎng),通過工業(yè)以太網(wǎng)實現(xiàn)遠程監(jiān)控。1.2技術(shù)路線嵌入式系統(tǒng)以嵌入式微處理器為核心,運行嵌入式Linux操作系統(tǒng)。應用程序可通過網(wǎng)絡進行更新;通過鍵盤進行人機對話;數(shù)據(jù)可通過LCD現(xiàn)場顯示;重要數(shù)據(jù)可以文件形式保存在Flash存儲器中;數(shù)據(jù)和報警信息可通過串口向上位機傳輸,也可通過以太網(wǎng)口向工業(yè)以太網(wǎng)或Inernet發(fā)布信息,用戶通過顯示界面查看設備狀態(tài),設置設備參數(shù),實現(xiàn)遠程監(jiān)控、遠程維護。1.3總體框圖

圖1系統(tǒng)框圖2基于Linux的嵌入式系統(tǒng)的設計2.1硬件設計考慮一般測控系統(tǒng)對嵌入式系統(tǒng)要求比較多的功能有:鍵盤接口、顯示接口、A/D(或D/A)轉(zhuǎn)換單元、可擴展的I/O接口、打印機接口、與PC機通信的串行接口、以太網(wǎng)口等。實現(xiàn)的嵌入式系統(tǒng)硬件框圖如下:

圖2硬件框圖針對測控系統(tǒng)的應用,選擇Motorola的Coldfire系列的MCF5307.MCF5307是一款高性能、低價位、高集成度的微處理器,為嵌入式控制應用而設計。MCF5307的處理能力達70MIPS,工作頻率88.47MHz,總線頻率44.236MHz,為運行Linux提供硬件上的支持,在開發(fā)板上還集成有16M的SDRAM、2M的FLASH、10baseT以太網(wǎng)接口、RS232/RS485串口、I/O接口等。2.2軟件設計嵌入式操作系統(tǒng)是整個嵌入式系統(tǒng)的核心。我們選擇Linux,但典型的Linux是為桌面配置的,內(nèi)核十分龐大,而嵌入式系統(tǒng)的RAM存儲容量很小,因此,要把Linux操作系統(tǒng)裝入有限的內(nèi)存,就要對它進行裁剪,在裁剪過程中涉及的主要技術(shù)有:(1)內(nèi)核的精簡。標準Linux是面向PC的,集成了許多PC需要而嵌入式系統(tǒng)并不需要的功能。對一些可獨立加上或卸下的功能塊,可在編譯內(nèi)核時,僅保留嵌入式系統(tǒng)所需的功能支持模塊,刪除不需要的功能。例如,測控系統(tǒng)要連入以太網(wǎng),就要提供對TCP/IP的支持,編譯時加上TCP/IP棧;而SCSI、Floppy之類的外設在我們的嵌入式系統(tǒng)中完全沒有必要,編譯時可去掉。這樣,重新編譯過的內(nèi)核顯著減小。(2)虛擬內(nèi)存機制的屏蔽。經(jīng)過分析發(fā)現(xiàn),虛擬內(nèi)存是導致Linux實時性不強的原因之一。在工業(yè)控制中一些任務要滿足一定的實時性的要求,屏蔽內(nèi)核的虛擬內(nèi)存管理機制可以增強Linux的實時性。當要更改內(nèi)核的某項機制時,一般不必大規(guī)模的改寫代碼,可采用條件編譯的方法。思路是用#ifdef或#ifndef屏蔽現(xiàn)有語句,在#else宏編譯語句中包括自己編寫的代碼。實現(xiàn)虛擬內(nèi)存的機制有:地址映射機制、內(nèi)存分配和回收機制,緩存和刷新機制、請頁機制、交換機制、內(nèi)存共享機制,將實現(xiàn)這些機制的數(shù)據(jù)結(jié)構(gòu)和函數(shù)屏蔽或修改,還要修改與之相關(guān)的文件。需要改動的文件主要在/include/linux、/mm、/drivers/char、/fs、/ipc/kernel、/init目錄下。主要的改動如下:與虛存有關(guān)的主要的數(shù)據(jù)結(jié)構(gòu)是vm_area_struct,將進程的mm_struct結(jié)構(gòu)中的vm_area_struct去掉,vm_area_struct利用了vm_o

溫馨提示

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

評論

0/150

提交評論