




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、嵌入式實驗報告基于S3C2410的AD轉換與電機控制系統(tǒng)院 (系) 計算機與信息工程學院 專 業(yè) 控制工程 學生姓名 成 績 指導教師 2015年5月摘要:本設計是基于嵌入式技術作為主處理器的AD采集與電機控制系統(tǒng),利用S3C2410 ARM微處理器作為主控CPU,輔以LINUX操作系統(tǒng)和Qt界面系統(tǒng),實現(xiàn)了智能化的將AD采集的數(shù)據(jù)通過Qt界面形式展現(xiàn)出來,同時根據(jù)AD值的不同改變PWM的參數(shù)值,從而控制電機的方向和轉速等功能,并討論了如何提高系統(tǒng)的速度、可靠性和可擴展性。并解決了傳統(tǒng)的數(shù)據(jù)采集系統(tǒng)由于存在響應慢、精度低、可靠性差、效率低、操作繁瑣等弊端,能夠完全適應現(xiàn)代化工業(yè)的高速發(fā)展。關鍵
2、詞:嵌入式系統(tǒng) ARM S3C2410 Qt AD采集 PWM 直流電機目錄一設計背景51.1設計目的51.2設計要求51.3設計意義5二、系統(tǒng)開發(fā)環(huán)境72.1 Qt/Embedded簡介72.2 ARM-Linux簡介72.3 Qt/Embedded進行應用開發(fā)的流程72.4 交叉編譯環(huán)境的介紹與構建8三、系統(tǒng)設計83.1 設計思路83.2系統(tǒng)硬件電路設計93.3系統(tǒng)軟件設計11四、測試結果12五、總結13參考文獻14一設計背景1.1設計目的1、注重培養(yǎng)綜合運用所學知識、獨立分析和解決實際問題的能力,培養(yǎng)創(chuàng)新意識和創(chuàng)新能力,并獲得科學研究的基礎訓練。2、了解所選擇的ARM芯片各個引腳功能,工
3、作方式,計數(shù)/定時,I/O口,AD,PWM等的相關原理,并鞏固學習嵌入式的相關內容知識。3、通過軟硬件設計實現(xiàn)利用ARM芯片對AD信號的采集與PWM電機控制及QT界面顯示。1.2設計要求以UP-NetARM2410-S實驗箱及Linux操作系統(tǒng)為平臺,設計一個基于Qt的圖形化應用程序,實現(xiàn)AD轉換和轉換結果的圖形顯示以及控制直流電機的正反轉和轉速的圖形化顯示。1、在桌面Linux系統(tǒng)(虛擬機)中建立Qt開發(fā)環(huán)境和虛擬運行平臺。2、將Qt移植到目標Linux系統(tǒng)(實驗箱)中,建立實際運行環(huán)境。3、設計一個基于Qt的圖形化應用程序:(1)實現(xiàn)對AD進行轉換,并將轉換結果使用文本框控件、進度條控件、
4、轉速表控件等圖形化方式進行顯示。(2) 使用按鈕控件控制直流電機的旋轉方向,使用滑塊控件控制直流電機的轉速。4、在桌面Linux中編寫和編譯程序,然后下載到實驗箱上運行。1.3設計意義嵌入式系統(tǒng)是以應用為中心,以計算機技術為基礎,且軟硬件可裁剪,適應應用系統(tǒng)對功能、可靠性、成本、體積、功耗有嚴格要求的專用計算機系統(tǒng)。它一般由以下幾部分組成:嵌入式微處理器、外圍硬件設備、嵌入式操作系統(tǒng)。嵌入式系統(tǒng)是面向用戶、面向產品、面向應用的,它必須與具體應用相結合才會具有生命力、才更具有優(yōu)勢。因此嵌入式系統(tǒng)是與應用緊密結合的,它具有很強的專用性,必須結合實際系統(tǒng)需求進行合理的裁減利用。嵌入式系統(tǒng)是將先進的計
5、算機技術、半導體技術和電子技術和各個行業(yè)的具體應用相結合后的產物,這一點就決定了它必然是一個技術密集、資金密集、高度分散、不斷創(chuàng)新的知識集成系統(tǒng)。嵌入式系統(tǒng)必須根據(jù)應用需求對軟硬件進行裁剪,滿足應用系統(tǒng)的功能、可靠性、成本、體積等要求。所以,如果能建立相對通用的軟硬件基礎,然后在其上開發(fā)出適應各種需要的系統(tǒng),是一個比較好的發(fā)展模式。目前的嵌入式系統(tǒng)的核心往往是一個只有幾K到幾十K微內核,需要根據(jù)實際的使用進行功能擴展或者裁減,但是由于微內核的存在,使得這種擴展能夠非常順利的進行。嵌入式系統(tǒng)是面向應用的專用計算機系統(tǒng)。嵌入式系統(tǒng)最典型的特點是與人們的日常生活緊密相關,現(xiàn)在每一個人都擁有形形色色運
6、用了嵌入式技術的電子產品,小到MP3、PDA等衛(wèi)星數(shù)字化設備,達到信息家電、智能電器、車載GIS等,各種新型嵌入式設備在數(shù)量上已經(jīng)遠遠超過了通用計算機。 1.嵌入式系統(tǒng)通常是面向特定應用的軟硬件結合體。 嵌入式系統(tǒng)一般用于特定的場合,其硬件和軟件都務須高效,量體裁衣,去除冗余;而計算機則是一個通用的計算機平臺。 2.系統(tǒng)精簡,關注成本。 嵌入式系統(tǒng)一般沒有系統(tǒng)軟件和應用軟件的明顯區(qū)分,不要求其功能設計及實現(xiàn)上過于復雜,這樣一方面有利于控制系統(tǒng)成本,同時也有利于實現(xiàn)系統(tǒng)安全。 3.嵌入式系統(tǒng)有實時性和可靠性的要求。 高實時性的操作系統(tǒng)軟件是嵌入式區(qū)按鍵的基本要求,而且軟件要求固態(tài)存儲,以提高速度
7、。軟件代碼要求高可靠性和實時性。在多任務嵌入式系統(tǒng)中,對重要性各不相同的任務進行統(tǒng)籌兼顧的合理調度是保證每個任務及時執(zhí)行的關鍵,單純通過提高處理器速度是無法完成和沒有效率的,因此系統(tǒng)漸漸地高實時性是基本要求。 4.產品升級換代和具體產品同步,具有較長的生命周期。嵌入式系統(tǒng)和具體應用有機地結合在一起,他的升級換代也和具體產品同步進行,因此嵌入式系統(tǒng)產品一點進入市場,便具有較長的生命周期。 5.嵌入式軟件開發(fā)走向標準化,必須使用多任務的操作系統(tǒng)。 嵌入式系統(tǒng)的應用程序可以在沒有操作系統(tǒng)的情況下,直接在芯片上運行。單位了合理的調度多任務,利用系統(tǒng)資源、系統(tǒng)函數(shù)以及和專家?guī)旌瘮?shù)接口,必須使用RTOS(
8、Real-Time Operating System)系統(tǒng)平臺,這樣才能保證程序執(zhí)行的實時性、可靠性,并減少開發(fā)時間,保障軟件質量。二、系統(tǒng)開發(fā)環(huán)境2.1 Qt/Embedded簡介Qt是一個1991年由奇趣科技開發(fā)的跨平臺C+圖形用戶界面應用程序開發(fā)框架。它既可以開發(fā)GUI程序,也可用于開發(fā)非GUI程序,比如控制臺工具和服務器。Qt是面向對象的框架,使用特殊的代碼生成擴展(稱為元對象編譯器(Meta Object Compiler, moc))以及一些宏,易于擴展,允許組件編程。2008年,奇趣科技被諾基亞公司收購,QT也因此成為諾基亞旗下的編程語言工具Qt優(yōu)良的跨平臺特性。Qt/Embed
9、ded是一個為嵌入式設備上的圖形用戶接口和應用開發(fā)而定制的C+工具開發(fā)包,如果有嵌入式linux操作系統(tǒng)支持,它可以運行在多種不同的處理器體系上,例如:IntelX86、ARM、MIPS、PowerPC等。它為在嵌入式設備上開發(fā)應用程序提供了標準的API函數(shù),而且這些API函數(shù)都是單一的,在不同平臺下都是用相同API函數(shù),方便在不同體系結構下進行代碼移植。Qt/Embedded通常為小型化,低功耗,便攜式的設備開發(fā)帶有圖形化界面的應用程序。2.2 ARM-Linux簡介Linux原本被設計為桌面系統(tǒng),現(xiàn)在廣泛應用于服務器領域,而更大的影響在于它正逐漸應用于嵌入式設備。最大的優(yōu)勢在于開發(fā)源代碼,
10、任何人都可以對源碼進行修改和剪裁以適應自己特定的應用,所以出現(xiàn)了很多種面向嵌入式應用的Linux,有RTLinux,UCLinux,還有目前可以支持面向ARM核的Linux操作系統(tǒng)ARM Linux。ARM Linux支持多種ARM芯片,帶有大部分通用設備的驅動,比如鍵盤、鼠標、USB接口等,開發(fā)者只需專注于開發(fā)自己系統(tǒng)特定驅動,即可使整個系統(tǒng)正常運行,大大縮短了開發(fā)周期,降低了開發(fā)的復雜度。2.3 Qt/Embedded進行應用開發(fā)的流程在一個嵌入式系統(tǒng)上發(fā)布一個Qt/Embedded應用一般要經(jīng)過在主機上調試應用程序,編譯Qt/Embedded庫文件以適應硬件平臺,直到Qt/Embedde
11、d應用發(fā)布到設備上并且可靠運行后才算開發(fā)完成。2.4 交叉編譯環(huán)境的介紹與構建交叉編譯就是在主機平臺上生成目標機器的可執(zhí)行代碼,在這里主機就是裝有Linux操作系統(tǒng)的機器,上面安裝有交叉編譯環(huán)境,我們在主機上進行應用軟件的開發(fā)和編譯。目標機是經(jīng)過剪裁了的計算機系統(tǒng)(這里特指ARM平臺),上面具有引導程序(bootloader)、操作系統(tǒng)內核、根文件系統(tǒng),它們都被燒寫進ARM平臺的flash中。目標板與主機通過網(wǎng)線和串口線相連,最終在主機上把應用程序編譯成ARM格式的二進制文件通過網(wǎng)線或串口傳輸?shù)侥繕税迳线\行。主機與目標板的連接圖如圖2所示。開發(fā)環(huán)境構建所需軟件開發(fā)包有:linux內核,linu
12、x-2.4.21 -crus -1 -4 -3.tar;ARM交叉編譯器,3.3.2.tar;Qt系列軟件包,Qt-embedded -2.3.7.tar,Qt-x11 -2.3.2.tar,Qt-x11 -free -3.1.2.tar;編譯鏈接工具,tmake -1.13.tar等。這些工具均可從網(wǎng)上下載。把這些軟件包解壓安裝,在安裝時,應配置兩套開發(fā)環(huán)境,一種是ARM體系的,另一種是X86體系的,這通過設置configure后的參數(shù)完成。注意在安裝時要設定環(huán)境變量,可通過在/usr/local/etc中將環(huán)境變量寫入文件,這里建立Qte.sh(ARM體系)和Qtx86.sh(X86體系)
13、,在/root/bashrc文件中設定別名,用source命令應用這些環(huán)境變量即可。以后直接在終端輸入別名加載這些環(huán)境變量。在搭建開發(fā)環(huán)境時,為了方便使用,采用寫腳本文件的方式,創(chuàng)建了三個腳本文件,tmake.sh,qt1.sh,qt2.sh這樣就能夠保證,一次寫入的命令多次使用,在使用腳本文件時要使用source命令。三、系統(tǒng)設計3.1 設計思路 應用跨平臺的Qt圖形用戶界面應用程序開發(fā)框架設計圖形界面,將實驗箱上的電位器作為信號輸入器件,電位器的值可以通過AD模塊轉換成數(shù)字值,將采集來的電位器值經(jīng)算法濾波處理后用于電機調速,控制直流電機的運轉方向和運轉速度,這樣就實現(xiàn)了通過電位器控制電機轉
14、速和方向。電位器處于中間值時,電機停止不轉,電位器順時針調大時電機順時針旋轉,且速度隨著電位器的旋轉而增加。電位器向逆時針轉動調小時,電機逆時針旋轉,且速度隨著電位器旋轉的角度增加。電位器轉到最大或最小值時,電機的速度應該達到最高速度。電位器在中間位置時,電機不應該出現(xiàn)抖動情況。圖3.1 系統(tǒng)整體結構圖3.2系統(tǒng)硬件電路設計 對直流電機進行調速和控制,需經(jīng)過AD模塊,在linux操作系統(tǒng)中,在電機中加載AD程序后,掛載到實驗箱程序。電腦通過串口把執(zhí)行的程序命令發(fā)給S3C44B0X01處理器,在處理器中通過分析數(shù)據(jù)。手動調節(jié)AD模塊中電位器后,處理器收到相應信號,并發(fā)命令給電機,使電機
15、的轉動做出相應的調整。(1)復位電路: 在系統(tǒng)中,復位電路主要完成系統(tǒng)的上電復位和系統(tǒng)在運行時用戶的按鍵復位功能。復位電路可由簡單的RC電路構成,也可以使用其他的相對較復雜但功能更完善的電路。經(jīng)使用證明RC復位電路復位邏輯是可靠的。工作原理如下:在系統(tǒng)上電時,通過電阻R1向電容C1充電,當C1兩端的電壓未達到高電平的門限電壓時,RESET端輸出為高電平,系統(tǒng)處于復位狀態(tài);當C1兩端的電壓未達到高電平的門限電壓時,RESET端輸出為低電平,系統(tǒng)進入正常工作狀態(tài)。如圖7所示。 圖3.2 系統(tǒng)的復位電路(2)時鐘電路: 在S3C2410中的時鐘控制
16、邏輯能夠產生CPU所需的FCLK時鐘信號、AHB總線外圍設備所需的HCLK時鐘信號,以及APB總線外圍設備所需的PCLK時鐘信號。S3C2410有兩個鎖相環(huán)(Phase Locked Loops, PLL),一個用于FCLK、HCLK和PCLK,另一個專門用于USB模塊(48MHz)。時鐘控制邏輯可以再不需要PLL的情況下產生慢速時鐘,并且可以通過軟件來控制時鐘與每個外圍模塊是連接還是斷開,從而降低功耗。 圖3.3 (a)RTC外部時鐘電路 (b)RL
17、L外部時鐘電路5)電機驅動電路: 電機驅動電路采用L9110來對電機進行驅動,只要在L9110的端口6、7(IA、IB)輸入PWM信號,則在L9110的端口1、4(OA、OB)輸出較大的驅動電流對電機進行驅動。本次設計中采用TOUT0輸入PWM波,GPB1輸入低電平,兩個輸出引腳構成PWM波,如果需要進行電機的反轉,則使TOUT0反相,然后是GPB1輸出高電平即可實現(xiàn)。電機驅動電路如下圖所示。圖3.4 電機驅動電路3.3系統(tǒng)軟件設計圖形界面的設計主要應用到QWidget類、QDial類,QPushButton類、QLabel、QTimer類等。前面幾個類都是圖形設計用到的類,QTim
18、er類是一個與硬件相關的類,在本設計中沒有采用多另加一個線程的方法,而是通過QTimer類實現(xiàn)對AD值的實時讀取和電機控制,這樣程序設計更簡潔,同時不影響數(shù)據(jù)的讀取和PWM的控制。圖形界面和硬件同時工作時應用到定時器類QTimer,它提供當定時器觸發(fā)的時候發(fā)射一個信號的定時器,他提供只觸發(fā)一次的超時事件,QTimer類提供了定時器信號和單觸發(fā)定時器。它在內部使用定時器事件來提供更通用的定時器。QTimer很容易使用:創(chuàng)建一個QTimer,使用start()來開始并且把它的timeout()連接到適當?shù)牟邸.斶@段時間過去了,它將會發(fā)射timeout()信號。注意當QTimer的父對象被銷毀時,它
19、也會被自動銷毀你也可以使用靜態(tài)的singleShot()函數(shù)來創(chuàng)建單觸發(fā)定時器。作為一個特殊情況,一旦窗口系統(tǒng)事件隊列中的所有事件都已經(jīng)被處理完,一個定時為0的QTimer就會到時間了。這也可以用來當提供迅速的用戶界面時來做比較繁重的工作。將會被重復調用并且應該很快返回(通常在處理一個數(shù)據(jù)項之后),這樣Qt可以把事件傳送給窗口部件并且一旦它完成這個工作就停止這個定時器。這是在圖形用戶界面應用程序中實現(xiàn)繁重的工作的一個典型方法,現(xiàn)在多線程可以在越來越多的平臺上使用,并且我們希望無效事件最終被線程替代。QTimer的精確度依賴于底下的操作系統(tǒng)和硬件。絕大多數(shù)平臺支持20毫秒的精確度,一些平臺可以提
20、供更高的。如果Qt不能傳送定時器觸發(fā)所要求的數(shù)量,它將會默默地拋棄一些。另一個使用QTimer的方法是為你的對象調用QObject:startTimer()和在你的類中(當然必須繼承QObject)重新實現(xiàn)QObject:timerEvent()事件處理器。缺點是timerEvent()不支持像單觸發(fā)定時器或信號那樣的高級水平。一些操作系統(tǒng)限制可能用到的定時器的數(shù)量,Qt會盡力在限制范圍內工作。圖3.5 系統(tǒng)軟件流程圖四、測試結果 將程序掛載后運行dcm_main.c,手動轉動實驗箱上AD模塊的電位器k1,直流電機會做出相應的變動,處理器將電位器轉動對應的電壓值和直流電機轉動對應的pwm值通過實驗箱的串口發(fā)回到電腦的linux的minicom運行環(huán)境中。 電位器調到其對應的AD值為512時,直流電機停止轉動,當電位器順時針調動時AD值大于電機正傳且調動越多電機轉速越快,當電位器順時針調動時AD值小于電機反傳且調動越多電機轉速越快,電機速度隨著電位器的旋轉而增加。電位器轉到最大時,電機的速度達到最高速度。圖 4.1 系統(tǒng)測試圖五、總結 一個學期嵌入式的嵌入式課程結束了,在這個學期里學到了很多知識,嵌入式知識的學習是一個復雜的過程,經(jīng)過這樣一個系統(tǒng)的學習讓我對這門學科有了更深刻的認識,要掌握這門課程是需要花大量的時間的,我本
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 溫室施工方案
- 現(xiàn)場實行豬舍施工方案
- 明渠導流施工方案
- 機場塔臺結構施工方案
- 斜槽帆布更換施工方案
- 2025年度特色輔導班家長責任協(xié)議
- 二零二五年度歷年合同法司考備考資料定制合同
- 2025年度車輛抵押消費貸款合同范本
- 2025年度租賃合同解除與合同解除解除爭議訴訟起訴狀
- 二零二五年度農家樂房屋租賃與鄉(xiāng)村旅游生態(tài)保護合同
- 港珠澳大橋及背后的故事中國建造課程組30課件講解
- 2025年吉林長白朝鮮族自治縣事業(yè)單位招聘16人歷年高頻重點提升(共500題)附帶答案詳解
- 初中歷史七年級上冊第8課 百家爭鳴
- 中國教育史課件
- 第18課排序計算有方法(教案)四年級全一冊信息技術人教版
- 規(guī)?;i場生物安全
- 2025年春節(jié)后復產復工方案及安全技術措施
- 維修基金使用合同范例
- 幼兒園小班美術欣賞《漂亮的糖紙》課件
- 互聯(lián)網(wǎng)接入服務提供商服務承諾
- 解除凍結及撤銷納入失信和限高令申請書(文本)
評論
0/150
提交評論