滑膜變結構控制方法的應用例程,爭對幾個典型系統提供滑膜控制MATLAB程序范例
標簽: 變結構控制
上傳時間: 2017-08-07
上傳用戶:zycidjl
pid控制原理及編程方法,詳細的參數說明和例程
上傳時間: 2013-04-24
上傳用戶:wangyi39
十多年來,隨著信息技術、電子技術和通訊技術的發展,嵌入式系統已經獲得了空前的應用和發展。隨著嵌入式應用系統功能復雜度的提高、對軟件產品的非功能約束的特別關注以及由于市場的激烈競爭導致嵌入式軟件推出周期的縮短,都使得嵌入式軟件開發人員面臨著嚴峻的危機和挑戰。傳統的結構化開發方法已經顯得力不從心,于是嵌入式軟件開發人員在軟件開發中引入了目前較為流行的“面向對象方法(OO)”,.但是目前對該方法的應用還只是停留在傳統的以編程為中心的嵌入式軟件開發方法上,不能很好地保證軟件復用和代碼的重用,因此難以滿足市場對嵌入式軟件開發效率和開發質量的要求。 本課題的研究內容是應用面向對象方法的框架技術,對嵌入式系統領域的專有結構組件進行封裝,創新性地提出了面向嵌入式系統領域的通用實時框架ARTIC(Abstract real-time contrO1)。ARTIC框架除了具有框架的共有優點一最大限度實現軟件重用外,最突出的是具備以下兩個特點: 1、功能和非功能的分離 在應用面向對象的技術時,傳統的嵌入式軟件開發方法關注的重點是軟件結構和功能分解,、忽略了嵌入式環境下特殊的非功能性要求。為了在實現系統功能需求的同時,保證軟件系統的非功能性需求的實現,ARTIC框架引入了面向方面的思想,、把系統的非功能性需求從功能模塊中分離出來,為它們單獨設計組件。開發人員在應用該框架進行嵌入式軟件設計時,只需要關注功能需求的實現,對于實時性、調度等非功能需求的實現可以通過調用ARTIC提供的時間管理模型和任務調度模型直接實現。 2、基于狀態機的主動對象設計模式 根據嵌入式系統通常由多個控制線程組成的特點,應用基于狀態機的主動對象設計模式,把嵌入式軟件系統構建成多個主動對象的緝合。相對于傳統的面向對象方法,本文提出的主動對象的最大特點在于:它提供對事件隊列、控制線程和表示主動對象動態行為狀態機等的封裝,并且該模式可以直接支持嵌入式系統的并行性。 ARTIC框架的應用能夠幫助嵌入式軟件的開發人員快速地開發出高質量的嵌入式軟件,除此之外,因為它包含了一個微小的實時操作系統(RTOS) 報包裝,在某些場合可以作為一個簡易的RTOS使用。為了驗證ARTIC的性能,本文將該框架應用于硬幣搬送實時控制系統的開發設計,從該系統的應用中充分體現了ARTIC框架的優點。
上傳時間: 2013-06-21
上傳用戶:cxl274287265
單片機接口技術(C51版)例程源代碼:文件名基本與教材中的例題序號一致,如"例3-2"的源程序為"Ch3-2"。有些程序在使用前請參閱程序開頭的注釋,這些注釋解釋了程序使用方法。歡迎到您提出寶貴意見,可到bbs.elecfans.com留言或就具體問題進行交流。
上傳時間: 2013-10-18
上傳用戶:huang111
單片機音樂中音調和節拍的確定方法:調號-音樂上指用以確定樂曲主音高度的符號。很明顯一個八度就有12個半音。A、B、C、D、E、F、G。經過聲學家的研究,全世界都用這些字母來表示固定的音高。比如,A這個音,標準的音高為每秒鐘振動440周。 升C調:1=#C,也就是降D調:1=BD;277(頻率)升D調:1=#D,也就是降E調:1=BE;311升F調:1=#F,也就是降G調:1=BG;369升G調:1=#G,也就是降A調:1=BA;415升A調:1=#A,也就是降B調:1=BB。466,C 262 #C277 D 294 #D(bE)311 E 330 F 349 #F369 G 392 #G415A 440. #A466 B 494 所謂1=A,就是說,這首歌曲的“導”要唱得同A一樣高,人們也把這首歌曲叫做A調歌曲,或叫“唱A調”。1=C,就是說,這首歌曲的“導”要唱得同C一樣高,或者說“這歌曲唱C調”。同樣是“導”,不同的調唱起來的高低是不一樣的。各調的對應的標準頻率為: 單片機演奏音樂時音調和節拍的確定方法 經常看到一些剛學單片機的朋友對單片機演奏音樂比較有興趣,本人也曾是這樣。在此,本人將就這方面的知識做一些簡介,但愿能對單片機演奏音樂比較有興趣而又不知其解的朋友能有所啟迪。 一般說來,單片機演奏音樂基本都是單音頻率,它不包含相應幅度的諧波頻率,也就是說不能象電子琴那樣能奏出多種音色的聲音。因此單片機奏樂只需弄清楚兩個概念即可,也就是“音調”和“節拍”。音調表示一個音符唱多高的頻率,節拍表示一個音符唱多長的時間。 在音樂中所謂“音調”,其實就是我們常說的“音高”。在音樂中常把中央C上方的A音定為標準音高,其頻率f=440Hz。當兩個聲音信號的頻率相差一倍時,也即f2=2f1時,則稱f2比f1高一個倍頻程, 在音樂中1(do)與 ,2(來)與 ……正好相差一個倍頻程,在音樂學中稱它相差一個八度音。在一個八度音內,有12個半音。以1—i八音區為例, 12個半音是:1—#1、#1—2、2—#2、#2—3、3—4、4—#4,#4—5、5一#5、#5—6、6—#6、#6—7、7—i。這12個音階的分度基本上是以對數關系來劃分的。如果我們只要知道了這十二個音符的音高,也就是其基本音調的頻率,我們就可根據倍頻程的關系得到其他音符基本音調的頻率。 知道了一個音符的頻率后,怎樣讓單片機發出相應頻率的聲音呢?一般說來,常采用的方法就是通過單片機的定時器定時中斷,將單片機上對應蜂鳴器的I/O口來回取反,或者說來回清零,置位,從而讓蜂鳴器發出聲音,為了讓單片機發出不同頻率的聲音,我們只需將定時器予置不同的定時值就可實現。那么怎樣確定一個頻率所對應的定時器的定時值呢?以標準音高A為例: A的頻率f = 440 Hz,其對應的周期為:T = 1/ f = 1/440 =2272μs 由上圖可知,單片機上對應蜂鳴器的I/O口來回取反的時間應為:t = T/2 = 2272/2 = 1136μs這個時間t也就是單片機上定時器應有的中斷觸發時間。一般情況下,單片機奏樂時,其定時器為工作方式1,它以振蕩器的十二分頻信號為計數脈沖。設振蕩器頻率為f0,則定時器的予置初值由下式來確定: t = 12 *(TALL – THL)/ f0 式中TALL = 216 = 65536,THL為定時器待確定的計數初值。因此定時器的高低計數器的初值為: TH = THL / 256 = ( TALL – t* f0/12) / 256 TL = THL % 256 = ( TALL – t* f0/12) %256 將t=1136μs代入上面兩式(注意:計算時應將時間和頻率的單位換算一致),即可求出標準音高A在單片機晶振頻率f0=12Mhz,定時器在工作方式1下的定時器高低計數器的予置初值為 : TH440Hz = (65536 – 1136 * 12/12) /256 = FBH TL440Hz = (65536 – 1136 * 12/12)%256 = 90H根據上面的求解方法,我們就可求出其他音調相應的計數器的予置初值。 音符的節拍我們可以舉例來說明。在一張樂譜中,我們經常會看到這樣的表達式,如1=C 、1=G …… 等等,這里1=C,1=G表示樂譜的曲調,和我們前面所談的音調有很大的關聯, 、 就是用來表示節拍的。以 為例加以說明,它表示樂譜中以四分音符為節拍,每一小結有三拍。比如: 其中1 、2 為一拍,3、4、5為一拍,6為一拍共三拍。1 、2的時長為四分音符的一半,即為八分音符長,3、4的時長為八分音符的一半,即為十六分音符長,5的時長為四分音符的一半,即為八分音符長,6的時長為四分音符長。那么一拍到底該唱多長呢?一般說來,如果樂曲沒有特殊說明,一拍的時長大約為400—500ms 。我們以一拍的時長為400ms為例,則當以四分音符為節拍時,四分音符的時長就為400ms,八分音符的時長就為200ms,十六分音符的時長就為100ms。可見,在單片機上控制一個音符唱多長可采用循環延時的方法來實現。首先,我們確定一個基本時長的延時程序,比如說以十六分音符的時長為基本延時時間,那么,對于一個音符,如果它為十六分音符,則只需調用一次延時程序,如果它為八分音符,則只需調用二次延時程序,如果它為四分音符,則只需調用四次延時程序,依次類推。通過上面關于一個音符音調和節拍的確定方法,我們就可以在單片機上實現演奏音樂了。具體的實現方法為:將樂譜中的每個音符的音調及節拍變換成相應的音調參數和節拍參數,將他們做成數據表格,存放在存儲器中,通過程序取出一個音符的相關參數,播放該音符,該音符唱完后,接著取出下一個音符的相關參數……,如此直到播放完畢最后一個音符,根據需要也可循環不停地播放整個樂曲。另外,對于樂曲中的休止符,一般將其音調參數設為FFH,FFH,其節拍參數與其他音符的節拍參數確定方法一致,樂曲結束用節拍參數為00H來表示。下面給出部分音符(三個八度音)的頻率以及以單片機晶振頻率f0=12Mhz,定時器在工作方式1下的定時器高低計數器的予置初值 : C調音符 頻率Hz 262 277 293 311 329 349 370 392 415 440 466 494TH/TL F88B F8F2 F95B F9B7 FA14 FA66 FAB9 FB03 FB4A FB8F FBCF FC0BC調音符 1 1# 2 2# 3 4 4# 5 5# 6 6# 7頻率Hz 523 553 586 621 658 697 739 783 830 879 931 987TH/TL FC43 FC78 FCAB FCDB FD08 FD33 FD5B FD81 FDA5 FDC7 FDE7 FE05C調音符 頻率Hz 1045 1106 1171 1241 1316 1393 1476 1563 1658 1755 1860 1971TH/TL FB21 FE3C FE55 FE6D FE84 FE99 FEAD FEC0 FE02 FEE3 FEF3 FF02
上傳時間: 2013-10-20
上傳用戶:哈哈haha
PLC 以 其 可靠性高、抗干擾能力強、配套齊全、功能完善、適應性強等特點,廣泛應用于各種控制領域。PLC作為通用工業控制計算機,是面向工礦企業的工控設備,使用梯形圖符號進行編程,與繼電器電路相當接近,被廣大工程技術人員接受。但是在實際應用中,如何編程能夠提高PLC程序運行速度是一個值得我們思考研究的問題。1 PLC工作原理PLC 與 計 算機的工作原理基本相同,即在系統程序的管理下,通過運行應用程序完成用戶任務。但兩者的工作方式有所不同。計算機一般采用等待命令的工作方式,而PLC在確定了工作任務并裝人了專用程序后成為一種專用機,它采用循環掃描工作方式,系統工作任務管理及應用程序執行都是用循環掃描方式完成的。PLC 有 兩 種基本的工作狀態,即運行(RUN)與停止(STOP)狀態。在這兩種狀態下,PLC的掃描過程及所要完成的任務是不盡相同的,如圖1所示。 PLC在RUN工作狀態時,執行一次掃描操作所的時間稱為掃描周期,其典型值通常為1一100nis,不同PLC廠家的產品則略有不同。掃描周期由內部處理時間、輸A/ 輸出處理執行時間、指令執行時間等三部分組成。通常在一個掃描過程中,執行指令的時間占了絕大部分,而執行指令的時間與用戶程序的長短有關。用戶 程 序 是根據控制要求由用戶編制,由許多條PLC指令所組成。不同的指令所對應的程序步不同,以三菱FX2N系列的PLC為例,PLC對每一個程序步操作處理時間為:基本指令占0.741s/步,功能指令占幾百微米/步。完成一個控制任務可以有多種編制程序的方法,因此,選擇合理、巧妙的編程方法既可以大大提高程序運行速度,又可以保證可靠性。 提高PLC程序運行速度的幾種編程方法2.1 用數據傳送給位元件組合的方法來控制輸出在 PL C應 用編程中,最后都會有一段輸出控制程序,一般都是用邏輯取及輸出指令來編寫,如圖2所示。在圖2所示的程序中,邏輯取的程序步為1,輸出的程序步為2,執行上述程序共需3個程序步。通常情況下,PLC要控制的輸出都不會是少量的,比如,有8個輸出,在條件滿足時要同時輸出。此時,執行圖2所示的程序共需17個程序步。若我們通過位元件的組合并采用數據傳送的方法來完成圖2所示的程序,就會大大減少程序步驟。在三 菱 PLC中,只處理ON/OFF狀態的元件(如X,Y,M和S),稱為位元件。但將位元件組合起來也可以處理數據。位元件組合由Kn加首元件號來表示。位元件每4bit為一組組合成單元。如KYO中的n是組數,當n=1時,K,Yo 對應的是Y3一Yo。當n二2時,KZYo對應的是Y7一Yo。通過位元件組合,就可以用處理數據的方式來處理位元件,圖2程序所示的功能可用圖3所示的傳送數據的方式來完成。
上傳時間: 2013-11-11
上傳用戶:幾何公差
1.1 問題產生的環境1.1.1 軟件環境1. PC機的系統為Microsoft Window XP Professional版本2002 Service Pack 2;2. Quartus II V7.0軟件,并安裝了MegaCore IP V7.0;3. NiosII IDE 7.0軟件。1.1.2 硬件環境核心板的芯片是EP2C35F672C8N的MagicSOPC實驗箱的硬件系統。硬件的工作環境是在普通的環境下。1.2 問題的現象在使用MagicSOPC實驗箱的光盤例程時,使用Quartus II編譯工程時出現編譯錯誤,錯誤提示信息如圖1.1、圖1.2所示。
上傳時間: 2013-11-18
上傳用戶:zhyiroy
1.1 問題產生的環境1.1.1 軟件環境1. PC機的系統為Microsoft Window XP Professional版本2002 Service Pack 2;2. Quartus II V7.0軟件,并安裝了MegaCore IP V7.0;3. NiosII IDE 7.0軟件。1.1.2 硬件環境核心板的芯片是EP2C35F672C8N的MagicSOPC實驗箱的硬件系統。硬件的工作環境是在普通的環境下。1.2 問題的現象在使用MagicSOPC實驗箱的光盤例程時,使用Quartus II編譯工程時出現編譯錯誤,錯誤提示信息如圖1.1、圖1.2所示。
上傳時間: 2013-11-23
上傳用戶:Alick
VC6 多線程的串口操作,有線程同步的解決方法(terminal)
上傳時間: 2013-12-16
上傳用戶:aig85
三種排序方法的動態演示,可以同時開啟多個線程,同時用不同的方法進行排序,直觀的判斷不同算法的排序效率。
上傳時間: 2014-08-22
上傳用戶:Zxcvbnm