嵌入式系統(tǒng)在溫度控制中的應用_第1頁
嵌入式系統(tǒng)在溫度控制中的應用_第2頁
嵌入式系統(tǒng)在溫度控制中的應用_第3頁
嵌入式系統(tǒng)在溫度控制中的應用_第4頁
嵌入式系統(tǒng)在溫度控制中的應用_第5頁
已閱讀5頁,還剩21頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、嵌入式系統(tǒng)在溫度控制中的應用湖南文理學院芙蓉學院課程設計報告課程名稱: 嵌入式課程設計 專業(yè)班級: 通信1101班 學生姓名: 指導教師: 完成時間: 2014年 6月 5 日 報告成績: 評閱意見: 評閱教師 日期 第1章 概述 嵌入式系統(tǒng)被定義為:以應用為中心,以計算機技術為基礎,軟硬件可裁剪,適應應用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統(tǒng)。實際上嵌入式系統(tǒng)是計算機的一種應用形式,是將先進的計算機技術、半導體技術和電子技術與各個行業(yè)的具體應用相結合后的產物,具有軟件代碼小、高度自動化、響應速度快等特點。因此它是一個技術密集、資金密集、高度分散、不斷創(chuàng)新的知識集成系統(tǒng)。

2、特別適合于要求實時的和多任務的系統(tǒng)。 復雜的微機控制系統(tǒng)使用常規(guī)的順序程序設計方法加上中斷來實現(xiàn)功能是比較困難的,主要體現(xiàn)在以下幾個方面:(1).實時性差:由于計算機在處理中斷時,一般不允許響應低級和同級中斷,為了提高實時性,要求中斷處理程序盡量短。但是有許多實時操作的處理比較復雜,需要較長的CPU執(zhí)行時間。如果用中斷來完成這些處理,則在處理時,無法響應低級或同級中斷。如果采用中斷置標志的方法,讓主程序來進行處理,則一方面會增加程序的復雜性,另一方面也難以做到實時處理,因為主程序不可能在執(zhí)行其它程序時,隨時去檢查這些標志位而轉向不同的處理程序。(2).難以實現(xiàn)并行操作的相互通信:在功能較強的實

3、時系統(tǒng)中,除了主程序有時需要與中斷間進行信息交換外,各個并行操作之間有時也需相互通信。這些用常規(guī)方法是難以實現(xiàn)的。(3).結構復雜、移植性差、維護困難:單片微機功能的復雜化,使軟件越來越復雜,特別是為了實現(xiàn)并行操作,需使用大量的中斷和標志,使程序結構十分混亂,難以設計和調試。同時由于程序采用線性結構,使得程序難于修改或者移植,因此缺乏靈活性、通用性和可維護性。第二章 系統(tǒng)的設計與實現(xiàn)設計出一個實現(xiàn)對溫度進行測量和控制的嵌入式系統(tǒng)。系統(tǒng)具有對外界兩點溫度進行采集的能力,采集的模擬信號經A/D模塊轉換成相應的數(shù)字量,送入微處理器進行處理。采集到的每一路溫度都要與系統(tǒng)此路溫度設定值進行比較,然后根據(jù)

4、結果調用合適的控制算法,并通過控制相應的繼電器的占空比實現(xiàn)對溫度的控制、測量、運算處理、輸出控制、顯示、通信。為此引出串行通信設計利用RS-232串行通信,實現(xiàn)了與PC機進行通訊功能和遠程加載功能。考慮到實際的應用及成本等因素,選用的主要硬件器件有臺灣SynCMOS公司的生產的SM5964微控制器,數(shù)據(jù)采集部分選用了凌特公司(Linear Technology)推出的20位無延遲模數(shù)轉換器LTC2430,串行通訊部分使用MAX232芯片,液晶顯示屏選用了北京精電蓬遠顯示技術公司生產的MGLS-12864。嵌入式操作系統(tǒng)選用了源代碼公開的C/OS-II。選用的開發(fā)環(huán)境是:Windows 2000

5、 Server 開發(fā)工具:Keil C51 7.0、VC+ 6.0使用的語言是:匯編、C語言2.1 系統(tǒng)的硬件設計系統(tǒng)的原理圖如圖2-1所示。主要有鍵盤輸入、數(shù)據(jù)采集、輸出控制、LCD顯示、通信及電源模塊等組成。 圖2-1 系統(tǒng)原理框圖下面介紹一下主要部分的電路圖設計。1). 鍵盤輸入電路鍵盤是一組按鍵的組合,它是常用的輸入設備,可以通過鍵盤輸入數(shù)據(jù)或者命令,實現(xiàn)簡單的人機對話。鍵盤可分為獨立聯(lián)接式和行列式(矩陣式)兩類,每類按其譯碼方式又分為編碼式及非編碼式兩類。設計中使用的是獨立聯(lián)接非編碼式鍵盤。電路圖如圖2-2所示: 圖2-2 鍵盤原理圖每個按鍵使用的是一個瞬時接觸開關,這種聯(lián)接方式可以

6、容易被微處理器檢測,但由于按鍵會產生機械抖動,在按鍵被按下或者抬起的瞬間,一般持續(xù)515ms,因此設計中要去除鍵抖動??梢酝ㄟ^硬件雙穩(wěn)態(tài)電路或者軟件延時來實現(xiàn),設計中采用延時20ms實現(xiàn)的。對于串鍵,采用無限處理方法。同時為了防止按一次鍵而產生多次處理的情況(鍵掃描和鍵處理速度較快而此時鍵還沒釋放),在有鍵按下時,作一次鍵處理后還要檢測按下的鍵是否釋放。2). 數(shù)據(jù)采集電路本系統(tǒng)實現(xiàn)對兩路溫度信號的采集,為了節(jié)省硬件成本,在前向通道中采用了多路選擇開關,使用了兩個多路模擬開關器件CD4052,實現(xiàn)信號的差分輸入,完成對兩路溫度信號的輪流采樣,然后將信號送入一個公共的模數(shù)轉換器LTC2430,完

7、成模數(shù)轉換。由微處理器的P1.2、P1.3兩引腳實現(xiàn)信道的選擇。電路圖如圖2-3所示: 圖2-3 數(shù)據(jù)采集原理圖對溫度的測量使用鉑(Pt)熱敏電阻(100),使用橋式電路進行測量。鉑電阻是一種高性能的貴金屬熱電阻,具有精度高、穩(wěn)定性好、性能可靠等優(yōu)點,鉑電阻的溫度測量范圍在-200 到 +850 之間,在小于200時,非線性誤差小于0.3%,它的電阻值R和溫度t之間的關系可以近似地表示為:A,B為常數(shù),A為熱敏系數(shù)(R/)。測量時采用的是查表法來計算溫度值。對于模數(shù)轉換器LTC2430,設計中使其工作在外部時鐘驅動模式下,工作狀態(tài)分為轉換(Conversion)、休眠(Sleep)和數(shù)據(jù)輸出(

8、DataOutput)三個狀態(tài)。此時它的數(shù)據(jù)輸出波形圖如圖2-4所示: 圖2-4 LTC2430數(shù)據(jù)輸出波形圖3).通信電路本系統(tǒng)所進行的通信是實現(xiàn)與PC機的通信,選擇了RS232通信標準。這是因為RS232標準是使用最為廣泛的通信標準,幾乎每一臺PC機上都有兩個符合RS232標準的串行口,所以采用RS232標準有利于通用性。由于PC機使用的是RS232電平,而SM5964輸出是TTL電平,因此選用MAX232解決電平匹配的問題。電路圖如圖2-5所示: 圖2-5 通信電路原理圖SM5964的串行發(fā)送端口TXD和接收端口RXD經MAX232芯片進行電平轉換后,分別與PC機的數(shù)據(jù)接收端口RXD和數(shù)

9、據(jù)發(fā)送端口TXD相連接。SM5964串行通信的發(fā)送端TXD連接到的11引腳,發(fā)出的數(shù)據(jù)信號經過MAX232芯片轉換后,由05V的TTL電平變?yōu)?12+12V的RS232電平,從14引腳輸出到PC機串行口的第二引腳。按RS232通信協(xié)議規(guī)定,PC機串行口的第二引腳為數(shù)據(jù)輸入端,這樣,發(fā)出的數(shù)據(jù)就可被PC機接收到。由PC機串行口的發(fā)送端TXD(PC機串行口的第三引腳)傳輸來的數(shù)據(jù),作為RS232電平的信號輸入到MAX232芯片的第13引腳,經過MAX232芯片進行電平轉換后變?yōu)門TL電平,再由MAX232的12引腳輸出到SM5964串行口的接收端口RXD。從而完成數(shù)據(jù)的雙向傳輸。在設計中,使用了兩

10、個發(fā)光二極管D7和D8監(jiān)視通信的工作狀態(tài)。4). LCD顯示電路對于LCD MGLS-12864,內置HD61202圖形液晶顯示模塊,廠家為其設置了7條指令來完成對它的控制,有兩條指令用于顯示狀態(tài)的設置,其余指令用于數(shù)據(jù)讀/寫操作,在此不對其進行詳細的說明。MGLS-12864與微處理器的連接方式有兩種:一種是直接訪問方式,一種為間接控制方式。直接訪問方式就是將液晶顯示模塊的接口作為存儲器或者I/O設備直接掛在計算機總線上,計算機以訪問存儲器或者I/O設備的方式操作液晶顯示模塊的工作。而間接控制方式是計算機通過自身的或者系統(tǒng)中的并行口與液晶顯示模塊連接,通過對接口的操作達到對液晶顯示模塊的控制

11、。設計中我采用了間接控制方式,這種方式的特點是電路簡單,控制時序有軟件實現(xiàn),可以實現(xiàn)高速計算機與液晶顯示模塊的接口。電路圖如下圖所示,以 P2口作為數(shù)據(jù)口,P3.3為/CSA,P3.4為/CSB,實現(xiàn)左右兩區(qū)的顯示和切換。P3.5為D/I,P3.6為R/W,P3.7為E,三者產生控制LCD數(shù)據(jù)與狀態(tài)的讀寫等信號。電位器用于顯示對比度的調節(jié)。電路圖如圖2-6所示: 圖2-6 顯示電路原理圖5). 輸出控制及報警指示電路輸出控制電路采用12V直流繼電器對外電路進行控制,通過控制繼電器的吸合時間來實現(xiàn)對溫度的控制,繼電器是與強電控制電路(大電流、高電壓)聯(lián)系在一起,會對應用系統(tǒng)產生嚴重干擾,使系統(tǒng)不

12、能正常工作。為了消除干擾,在微機接口與繼電器之間分別加了光耦,使系統(tǒng)主機部分的地與強電控制電路的地隔開。當溫度超限或者系統(tǒng)出現(xiàn)致命錯誤時,系統(tǒng)會發(fā)出報警指示且實現(xiàn)在LCD上顯示。2.2系統(tǒng)的軟件設計與實現(xiàn)2.2.1 設計總述系統(tǒng)軟件是以RTOS為平臺的,RTOS作為一種專門為嵌入式微處理器設計的模塊化、高性能的實時操作系統(tǒng),提供了一種基于開放系統(tǒng)標準的完善的多任務環(huán)境。它作為嵌入式應用軟件的基礎和開發(fā)平臺,是一段嵌入在目標代碼中的軟件,在嵌入式系統(tǒng)啟動后首先執(zhí)行的背景程序,用戶的應用程序是運行于其上的各個任務,RTOS根據(jù)各個任務的要求進行資源管理、消息管理、任務調度、異常處理等工作。(圖2-

13、7 軟件體系結構)硬件抽象層內核其它API包網絡圖形I/O應用程序系統(tǒng)軟件的體系結構如圖2-7所示。硬件抽象層(HAL)把實時內核與硬件隔離開,實現(xiàn)了操作系統(tǒng)內核與設備無關,提高了應用系統(tǒng)的可靠性。內核層是一個是實時多任務操作系統(tǒng)(RTOS)內核。內核層上面是高層驅動和庫函數(shù),提供通用的API、I/O管理器。應用程序層是用戶的不同的任務。2.2.2 任務的劃分系統(tǒng)中每個任務均有以下三部分組成:應用程序、任務堆棧以及任務控制塊。其中只有應用程序被燒入ROM,而任務本身則被置于RAM,待系統(tǒng)運行時再予建立。任務堆棧用以存儲CPU的寄存器內容。當某任務由運行態(tài)變?yōu)槠渌鼱顟B(tài)時,CPU寄存器內容壓入相應

14、任務堆棧,反之則將相應任務堆棧內容置入CPU寄存器。作為系統(tǒng)中定義的一個數(shù)據(jù)結構,任務控制塊的內容包括任務堆棧的地址、任務當前狀態(tài)、任務優(yōu)先權等。操作系統(tǒng)通過查詢任務控制塊內容實現(xiàn)對任務的管理。在進行任務劃分設計時,要考慮以下問題:1).任務間的關系:這包括兩個方面,一方面是任務間的同步和通信,這可通過信號量、郵箱等通信方法實現(xiàn)。另一方面,資源共享,通過信號量或其它方法實現(xiàn)。我在系統(tǒng)設計中使用了信號量和中斷的開啟,實現(xiàn)上述功能。2). 定時或者延時:一個任務可能需要每隔一段時間執(zhí)行一次操作。如溫度采樣計算任務,在設計中每秒分別對各路溫度采樣一次,然后進行計算。這種定時操作可以而且必須使用操作系

15、統(tǒng)的定時系統(tǒng)來實現(xiàn)。3). 等待操作:在任務程序設計中,應盡量避免使用程序詢問方法,而用中斷方式來實現(xiàn)等待操作,除非程序執(zhí)行時間小于任務調度時間。另外為防止發(fā)生意外情況使等待事件不發(fā)生而引起任務無限等待的情況,都加了等待超時處理功能。 根據(jù)要實現(xiàn)的功能,我將系統(tǒng)劃分為如下6個任務:按鍵處理、LCD顯示、串行通信、輸出任務、控制運算、信號采集處理。從系統(tǒng)設計方面,可以劃分為人機交互模塊、串行通信模塊、溫度測量及控制模塊和遠程加載模塊。系統(tǒng)軟件結構圖如圖2-8所示。 圖2-8 系統(tǒng)軟件架構C/OS-II的任務調度是按優(yōu)先級進行的, 根據(jù)各任務的實時性要求及重要程度,分別置它們的優(yōu)先級為4、5、6、

16、7、8、9。其中0、1、2、3、OS_LOWEST_PRIO-3、OS_LOWEST_PRIO-2、OS_LOWEST_PRIO-1、OS_LOWEST_PRIO 這幾個優(yōu)先級保留以被系統(tǒng)使用。優(yōu)先級序號越低,任務的優(yōu)先級越高。任務間的通信和同步是利用信號量和開關中斷來實現(xiàn)的。下面對各任務作簡要的介紹。1 按鍵處理任務此任務主要完成鍵盤掃描工作。用戶可以通過鍵盤對系統(tǒng)進行控制,如改變運行狀態(tài)、修改相關的參數(shù)等,系統(tǒng)必須做出及時的處理,因此在系統(tǒng)中把它的優(yōu)先級設為最高,一旦有鍵被按下,系統(tǒng)就能夠作出響應完成相應的功能。2.LCD顯示任務此任務用于刷新LCD顯示的工作。系統(tǒng)的運行狀態(tài)、各路的溫度值

17、、PID相關參數(shù)大小、各繼電器的狀態(tài)、錯誤指示及其它各種信息需要及時的通知用戶,當有關的信息發(fā)生改變時,需要調用此任務更新顯示。3.串行通信任務在設計中,通信任務一方面接收PC發(fā)來讀寫命令幀,對其進行分析處理后,做出相應的響應,從而實現(xiàn)PC機對其進行控制;另一方面也要把相關信息按要求組成相應的幀,發(fā)送給PC機。4.輸出任務此任務完成對各路繼電器進行控制,從而實現(xiàn)溫度調節(jié)。根據(jù)控制運算任務決策結果,負責各繼電器占空比的調節(jié)。5.控制運算此任務是最重要的一環(huán),當任一路溫度轉換結束后,都會發(fā)信號給控制運算處理任務進行處理,控制運算處理任務接到信號后,對信號分析之后,對要處理的測量結果進行轉換查表等處

18、理,算出實際溫度值,一方面調用基于時間最優(yōu)的PID控制算法加以決策處理,發(fā)信號給輸出任務加以控制,另一方面也發(fā)信號給LCD顯示任務更新顯示。6.信號的采集處理此任務采用定時方式對各路溫度信號進行采集,負責通道的選擇,對LTC2430轉換結果進行讀取,根據(jù)設定,取轉換結果的前16位,用一個無符號整數(shù)進行保存,然后存于各路溫度存儲區(qū)。并發(fā)信號給控制運算任務進行轉換。2.2.3 人機交互模塊的詳細設計在實現(xiàn)中人機交互模塊包含兩部分:鍵盤輸入和LCD顯示。2.2.3.1 任務的實現(xiàn)鍵盤是最重要的一種輸入設備。一般在設計應用系統(tǒng)時,需要按鍵較少時采用獨立式按鍵鍵盤,而在需要按鍵較多時,采用行列式鍵盤。但

19、行列式鍵盤不僅硬件接線復雜,鍵號的判斷和識別程序也較為繁瑣。在此介紹使用軟件將多個按鍵功能壓縮至3個按鍵上,該鍵盤在硬件上使用獨立式按鍵鍵盤的硬件結構,而在軟件上實現(xiàn)了使用矩陣式鍵盤的功能。該鍵盤不僅在硬件上接口簡單,軟件實現(xiàn)也非常容易。其實現(xiàn)原理是:對于矩陣式鍵盤,如果它有3行4列,則可以構成一個34 鍵盤,共有12個功能鍵。在設計的鍵盤中,行線使用一個按鍵實現(xiàn),行線數(shù)由該鍵的按鍵次數(shù)確定,列線則由其它幾個按鍵提供。假如一個鍵盤使用3個按鍵,3個按鍵中1個用于提供行線,設置其它2個鍵的功能,當該鍵按鍵次數(shù)為1時,其它2個鍵為P11、P12功能,而當該鍵按鍵次數(shù)為2時,其它2個鍵為P21、P2

20、2功能,當該鍵按鍵次數(shù)為3 時,其它2個鍵又為P31、P32功能,根據(jù)此原理,使用3個按鍵可以實現(xiàn)N行2列共N2個鍵的功能,這里的N為用做行線的鍵即功能設置鍵的按鍵次數(shù)。將該鍵的按鍵次數(shù)存于一內存單元(或寄存器)中,每按一次,該單元加1,讀出該單元內容,就可知道其它2個鍵處于何種功能。共定義了8個功能鍵:單選擇鍵,確認鍵,數(shù)值增加鍵,數(shù)值減少鍵,左移、右移、上移、下移鍵。程序流程圖如圖所示LCD顯示任務只是接收其它任務發(fā)來的信號量,經分析判斷后刷新相應的顯示區(qū)。其實現(xiàn)簡單在此不再敘述。2.3.3 串行通信模塊的詳細設計串行通信模塊是系統(tǒng)設計中的一個重要部分。它要實現(xiàn)與PC機通信,接收PC機發(fā)來

21、的命令幀,在確認正確后進行分析執(zhí)行,并向PC機發(fā)送相關信息和數(shù)據(jù)。通信協(xié)議的詳細規(guī)定見下一章。2.2.4.1 串口設備驅動程序設計1. 系統(tǒng)串行口工作方式和波特率的計算1).串行口的工作方式串行口的工作方式由串行口控制寄存器SCON來確定。特殊功能寄存器SCON字節(jié)地址為98H,可以位尋址。通過對SCON.7和SCON.6進行設置可以確定串行口的工作方式,它有四種工作方式,如表2 - 1所示。 表2 - 1 串行口工作方式SM0(SCON.7)SM1(SCON.6)方式 功能說明000移位寄存器方式(用于I/O口擴展)0118位UART,波特率可變(T1溢出率/N)1029位UART,波特率為

22、fosc/64或fosc/321139位UART,波特率可變(T1溢出率/N)SCON結構如圖2-9所示。 圖2-9串行口控制字寄存器SCON2).波特率的計算串行口工作在方式0和方式2時,其波特率為固定值。工作在方式1和方式3時波特率可變,與溢出率有關,設計中常用定時/計數(shù)器1作為波特率發(fā)生器。計數(shù)器的工作模式共有4種,模式0模式3,但是當串行口選擇工作模式1時,計數(shù)器必須工作在模式2,自動載入計數(shù)模式,在模式2的計時下,使用的計數(shù)器寄存器為推理,而TH1則是在做自動載入計時值的設定。波特率的計算公式為:波特率= (2-1)設計時我們是先定出波特率再求TH1的值,將上式加以整理可得:TH1=

23、256- (2-2) 在設計中,串行口(工作在)工作方式1且允許接收,通過語句SCON=0x50來實現(xiàn)。計數(shù)器工作在模式2能夠自動載入計數(shù)值,通過語句TMOD=TMOD|0x20來實現(xiàn)。為便于使用 ,我設計了初始化串行口函數(shù)void Uart_Init (INT16U mclk, INT16U baud),利用此函數(shù)可根據(jù)系統(tǒng)工作頻率和設定波特率完成串行口的初始化。2. 串行口輸入輸出驅動設計采用異步通信時,如波特率為1200,則每傳送一個字符約需10ms,所以串行口的接收和發(fā)送應采用中斷方式來實現(xiàn),否則會浪費大量的CPU時間。為了可靠的接收和發(fā)送數(shù)據(jù),專門設定了接收和發(fā)送緩沖區(qū),在具體實現(xiàn)時

24、,緩沖區(qū)采用環(huán)形緩沖區(qū),它的大小按照任務的執(zhí)行時間、通信速率和報文長短來定,一般為16至255字節(jié),在系統(tǒng)中其值設為30。 1).串行口輸入程序和串行口輸入中斷流程圖如圖2-10所示 圖2-10串行口輸入程序和串行口輸入中斷流程圖 2). 串行口輸出程序和串行口輸出中斷程序流程圖如圖2-11所示 圖2-11串行口輸出程序和串行口輸出中斷程序流程圖3.任務調用接口在應用程序設計中,只需分別調用函數(shù)Uart_Init()、Uart_SendStr()、Uart_Getch()、Uart_Sendch()等函數(shù)接口,即可完成對串口的操作,實現(xiàn)數(shù)據(jù)的輸入和輸出。4.3.4.2 串行通信應用程序的設計在

25、系統(tǒng)中串行通行程序是專門用于接收PC機發(fā)送來的讀寫命令,根據(jù)命令的不同,完成不同的操作,既可以對系統(tǒng)當前的運行狀態(tài)或參數(shù)進行改變,也可以把PC機需要的數(shù)據(jù)信息打包發(fā)送。在設計中,為簡單起見,系統(tǒng)作為從機,只能被動接收PC機發(fā)來命令,對命令幀分析處理之后執(zhí)行,可以改變系統(tǒng)當前的運行方式和參數(shù)。當需要向PC激發(fā)信息時,它要按要求把相關信息組幀發(fā)送,如當前繼電器狀態(tài)、第一路溫度值、第二路溫度值等。關于幀的類型和組幀格式,詳細內容在下一章中論述。它的流程圖如圖4-12所示。圖2-12 串行通信流程圖2.2.5 溫度測量及控制模塊詳細設計數(shù)據(jù)信號的采集處理是把實際過程中的模擬量、開關量以及其它信息量通過

26、相關的方式送入計算機,再由計算機進行存儲和進一步的處理(如計算、顯示、控制等)。模擬量的采集是將模擬量轉換成數(shù)字量并送入計算機。然后調用處理算法將這些數(shù)字量存儲并進行二次計算處理,一方面要輸出顯示便于觀察,另一方面調用相關的控制模塊,對被測對象進行控制??刂颇K通常采用合理的控制算法,對被控對象進行控制,使其滿足用戶的要求。此模塊完成對溫度信號的采集處理、控制運算和輸出控制功能,是最重要的一個模塊。系統(tǒng)要實現(xiàn)對兩路溫度進行采集控制,其電路圖見圖4-3。溫度信號經兩個模擬轉換開關CD4052之后,以差分式輸入模擬轉換器LTC2430的輸入端子,轉換后的數(shù)字量送入微控制器SM5964,從而完成信號

27、的采集。由于20位模數(shù)轉換器LTC2430采用了專有的無延遲Delta Sigma結構,消除了數(shù)字濾波器的接續(xù)時間,使每次轉換均有效,只要將其轉換結果進行正確的讀出即可。其數(shù)據(jù)輸出格式如圖4-4所示,當最高位EOC為低電平時,表示本次轉換完成可以讀取結果。對于溫度的計算,采用了查表法。獲得LTC2430轉換結果之后,通過線性插值及標度變換之后,可以計算出當前的實際溫度值。以上的采集處理過程相應容易實現(xiàn),在此模塊中,主要是控制部分軟件的設計,設計中采用了時間最優(yōu)控制和PID算法相結合的控制方法,取得很好的效果,其實現(xiàn)如下。1).控制算法在工業(yè)過程控制中,應用最廣泛的控制方法應該是PID控制,它是

28、按偏差的比例(P)、積分(I)和微分(D)組合而成的控制規(guī)律。比例控制簡單易行,積分的加入能消除靜差,微分能提高,改善系統(tǒng)的動態(tài)性能。采用了數(shù)字PID的方式進行調節(jié),其框圖如圖4-13所示。圖4-13 PID控制框圖下面是增量式PID控制算法公式。為了抑制飽和效應的發(fā)生,控制系統(tǒng)采用了積分分離式的PID控制算法。 (4-3)即: (4-4)在上式中,為系統(tǒng)采樣周期,為積分時間常數(shù),為微分時間常數(shù),為比例系數(shù),為積分系數(shù),為微分系數(shù)。溫度變化是個慢過程,如單純采用PID控制,當有較大擾動或大幅度改變給定值時,會產生較大的偏差,此時在積分項的作用下,往往會產生較大的超調和長時間的波動。因此在系統(tǒng)中

29、又采用了PID算法與時間最優(yōu)控制相結合的控制方式。時間最優(yōu)控制是Pontryagin于1956年提出的一種最優(yōu)控制方法。它是研究滿足約束條件下獲得允許控制的方法,也叫最大值原理。用最大值原理可以設計出控制變量只在|u(t)|1范圍內取值的時間最優(yōu)控制系統(tǒng)。而在工程上控制變量只取±1兩個狀態(tài),而且依照一定的法則加以切換,使系統(tǒng)從一個初始狀態(tài)轉到另一個狀態(tài)所經歷的過渡時間最短,這種類型的最優(yōu)切換系統(tǒng),稱為開關控制(Bang-Bang)系統(tǒng),即: 當時,。當時,。 為tkT時控制器的輸出,為系統(tǒng)的最大輸出,e(k)為溫度測量值與給定值之差,當偏差大于零時,控制器輸出最大值,控制對象加熱當偏

30、差小于等于零時,控制器輸出0,停止加熱這種算法具有控制簡單、實現(xiàn)方便等優(yōu)點,但當偏差接近零時,系統(tǒng)容易發(fā)生振蕩因此,采用PID算法與時間最優(yōu)控制相結合的雙??刂品绞剑刂埔?guī)律為: 時,采用時間最優(yōu)控制 時,采用PID控制 規(guī)定一閾值(偏差區(qū)域),當偏差大于時,實行時間最優(yōu)控制,即BangBang控制;而在閾值以內,實行PID控制這樣,既可以發(fā)揮BangBang控制快速消除大偏差的優(yōu)點,又能發(fā)揮PID控制精度高,超調小的優(yōu)點,從而使靜態(tài)、動態(tài)性能指標較為理想 2).參數(shù)的整定數(shù)字PID調節(jié)器參數(shù)的整定是根據(jù)控制對象對控制性能的要求,調整調節(jié)器的參數(shù),使控制過程滿足要求。在系統(tǒng)采樣周期確定的情況下

31、,需要調整的參數(shù)有比例系數(shù)Kp、積分時間常數(shù)Ti和微分時間常數(shù)Td。它們分別對控制性能的影響如下:² 比例系數(shù)Kp:它控制著系統(tǒng)調整的反應速度,減少靜差,如Kp太小,系統(tǒng)動作緩慢,Kp加大,可以使系統(tǒng)動作靈敏,調節(jié)速度加快。但Kp偏大,可能使系統(tǒng)震蕩次數(shù)增多,調節(jié)時間加長。Kp過大,可使系統(tǒng)不穩(wěn)定。² 積分時間常數(shù)Ti: PID調節(jié)中的的積分項主要作用是消除靜差。Ti減少時,積分項作用增大,系統(tǒng)調節(jié)速度加快,但易使系統(tǒng)趨于不穩(wěn)定,震蕩次數(shù)較多。Ti增大,積分項對系統(tǒng)性能的影響減少,跟蹤速度減慢。當Ti合適時,過渡度特性比較理想。² 微分時間常數(shù)Td: 微分控制可以

32、改善調節(jié)的動態(tài)特性,如減少超調量,縮短調節(jié)時間。當Td偏大或者偏小時,超調量和調節(jié)時間都會增大,只有當Td合適時,才能得到比較滿意的結果。在做PID參數(shù)整定時,首先根據(jù)系統(tǒng)要求應選擇合適的采樣周期,采樣周期確定之后,比例系數(shù)Kp、積分時間常數(shù)Ti和微分時間常數(shù)Td的整定可以根據(jù)一定的算法,比如擴充臨界比例系數(shù)法、擴充響應曲線法以及PID歸一化參數(shù)整定法來設定。但是在現(xiàn)場系統(tǒng)不允許振蕩或外加擾動信號,以上方法在現(xiàn)場不能使用。實際上在現(xiàn)場主要根據(jù)經驗整定參數(shù),應遵循以下規(guī)則:² 在進行PID參數(shù)調節(jié)時,調節(jié)幅度要??;² 在調節(jié)時,需要各參數(shù)協(xié)同調節(jié);² 系統(tǒng)反映(溫度

33、變化)速度慢,可調大比例系數(shù)Kp,增大微分時間常數(shù)Td,減少積分時間常數(shù)Ti;² 有振蕩現(xiàn)象時,可減少比例系數(shù)Kp,減少微分時間常數(shù)Td。對于的確定,可根據(jù)具體情況來確定。3).程序流程圖在設計中,為2。程序流程圖如圖4-14所示 圖2-14 溫度控制流程圖2.2.6 遠程加載程序的設計此功能模塊就是利用“在系統(tǒng)編程” (In-System Programming,簡稱ISP)技術,可以實現(xiàn)對系統(tǒng)進行在線升級。所謂“在系統(tǒng)編程”技術是指在用戶設計的微控制器系統(tǒng)中為配置新的系統(tǒng)功能而對器件進行重新編程,并在線地將程序代碼(固件)下載到程序存儲器中的一種編程技術。它的出現(xiàn)是對傳統(tǒng)編程方法

34、的重大突破。在設計中,PC機利用串口向系統(tǒng)發(fā)送各種命令,如片擦除、頁擦除、編程等命令,系統(tǒng)正確接收之后分析執(zhí)行,從而完成加載升級功能。其詳細設計如下。1).相關寄存器簡介本設計中選用了SynCMOS公司的SM5964作為主控制器,利用串口即可方便地實現(xiàn)ISP功能,SM5964處理器是以80C52為內核,芯片有64KB Flash 存儲器,其中可用于實現(xiàn)ISP功能的程序空間為N512 字節(jié)(N= 0,1,8 ),為實現(xiàn)ISP功能,專門設計了5個專用特殊功能寄存器。分別如下: 系統(tǒng)控制寄存器(SCONF,BFH)WDRRRRRISPEOMEALE1SCONF的位2(ISPE)是ISP功能的使能位,

35、該位置置1使能ISP功能,置0禁止ISP功能。這可以防止由于軟件設計失誤而造成的芯片擦除操作。 FLASH控制寄存器(FCR,F7H)STARTRRRRRF1F0START:ISP功能起始位,置1時,執(zhí)行由位1、位0(F1、F0)所制定的ISP功能。置0時,空操作。START位被置1后,SM5964內部硬件電路會鎖存地址和數(shù)據(jù)總線,并保持住PC指針直到START位置0。不必對此位的狀態(tài)進行查詢。位F1、F0:ISP功能選擇位如下所示 F 1:0 ISP功能 00 字節(jié)編程 01 片保護 10 頁擦除 11 片擦除 FLASH 高位地址寄存器(FAH ,F4H)和低位地址寄存器(FAL, F5H

36、) FAH & FAL為ISP功能提供16位的FLASH地址。 FLASH數(shù)據(jù)寄存器(FDAT, F6H) FDAT寄存器為ISP功能提供8位數(shù)據(jù)。2).協(xié)議的約定PC機側的詳細情況見下一章。在實現(xiàn)中,系統(tǒng)只是根據(jù)PC機發(fā)來命令執(zhí)行相應的功能,根據(jù)命令執(zhí)行情況向PC機返回執(zhí)行結果(執(zhí)行成功還是失?。攬?zhí)行成功時向PC機發(fā)送AAH命令,當執(zhí)行失敗時,向PC機發(fā)送55H,通知PC機重新執(zhí)行。 功能 命令 校驗和 命令執(zhí)行成功 AAH 56H 執(zhí)行命令失敗 55H ABH 3).程序設計系統(tǒng)工作轉到ISP功能狀態(tài)時,首先對串口進行初始化,然后接收PC機發(fā)來的命令幀(有的包含數(shù)據(jù)),確認正確接收之后,分析執(zhí)行。

溫馨提示

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

評論

0/150

提交評論